Lesson 1 · Getting started with R for busy people
- What the general philosophy of the course is
To make sure you have a good understanding of what this course is, I would like to take a few minutes to explain its philosophy. As an independent economist, my goal is not to sell as many courses as I can. My goal is to make sure the people who buy the course get the most out of it.
The course is an introductory course. You do not need to have any prior knowledge of R. You also do not need to have any experience with writing code either. This course is for everyone who wants to get started with R.
The course is made with busy people in mind. My goal is to give you everything you need to start working right away on your data safely and productively. No more, no less. Introductory courses are often too long, focused on unnecessary technical details, and fail to teach how to write code productively. I am not dunking on any introductory course here. I know how hard it is to write a course. I am just saying that my course is built with different goals in mind.
While being an introductory course for busy the people, the course is definitely not a crash course. This is by design. If you are busy today, there is a good chance you will also be busy tomorrow—and the day after tomorrow. My goal is not just to teach you the basics of R. My goal is to teach you the basics of R, and how to avoid or rapidly overcome many of the real-life issues beginners usually face. Many of these issues are avoidable at a minimal cost. But if you do not know where to look at, this minimal cost can turn into months, if not years, of wasted productive work. Busy people do not only need to learn R quickly, they also need to work productively.
As with any other course, I made some editorial choices. Some of them are unusual. These choices are in part why the course is so unique.
- You will learn straight away to work with RStudio and the Tidyverse. Both will massively increase your productivity. I do not claim they are perfect. What I claim is that they make a great foundation for beginners. Once you get more experienced with R, feel free to experiment with other tools.
- I follow a coding philosophy called Don’t Repeat Yourself, or DRY. DRY makes debugging code easier and faster (more on debugging in lesson 2).
The course is built upon my personal knowledge and experience. I wrote my first line of R code in 2014. I learned everything I know about R by myself. Since then, I used R almost on a daily basis. For my PhD thesis. To produce online content such as articles for L’Économiste Sceptique, my French-speaking newsletter. To help clients answer their questions. To publish a public dashboard on the COVID pandemic in my home region of Lorraine, in France. And, incidentally, to write a certain introductory course (yes, I wrote this course with R and RStudio!).
I am not telling you this to brag. I am telling you this so that you understand that my goal is to pass as much of the relevant knowledge I accumulated as I can. In particular, the things I wish I knew when I got started in 2014. It took me years to learn some of the things you will learn in this course. When you are a busy person, you do not have the luxury to spend years learning by trial-and-error.
The course teaches you how to use R in real life. In real life, datasets are messy. We make stupid mistakes. We write erroneous syntax. What is the point of an introductory course if you only learn what do when everything goes according to plan? In my opinion, a good introductory course is a course that teaches how to recover quickly when something does not go according to plan. Hence why I wrote a practical course. Sure, you will not turn into an R specialist. But you do not need to turn into an R specialist to work productively on your data.
The course is made of seventeen lessons. Some are short, some are a bit longer. None are really long. This is also why the course is different from a crash course: crash course cut corners. The course does not. The price to pay for that is a longer, and denser, course. But in the long run, the extra time spent at the beginning will pay for itself thanks to your increased productivity.
The course is built so that you can easily get back to it post-completion. Use it as a reference point. Many lessons have annotated screenshots so that you immediately know or remember what to do. Lessons do not have an equal length because I organized them thematically, which make them easier to navigate post-completion. And if you do not remember where a specific piece of information is, the course is searchable. This is why the course is text-based and has no videos: videos are great, but they are not searchable.
Last but not least, I want the course to be enjoyable. I derive a lot of joy writing code in general, and writing R code in particular. I want to share this joy with you. This is why in the next lesson (lesson 2), we will debunk a bunch of toxic misconception related to writing code. For writing code to be enjoyable, you need first to establish a healthy and realistic relationship with this activity. Reducing writing code to just, well, code is a mistake. Writing code is more than that, and I hope for the course to show that to you.
If you think this course can be for you, let’s continue to the second free lesson: lesson 2.