Execute Program: My Favorite Website For Learning To Code
December 29, 2020
Lately I have been spending a lot of time on a website that I love, Execute Program. This is a site that helps you learn and practice programming (mostly JavaScript) in a way that I have not seen any other "learn to code" site attempt. I find the approach to be very unique and refreshing, and I hope to see more of it by websites that teach you to code.
Learn, Practice, Wait, Review
Execute Program courses start, much like any course, with a lesson. Lessons are divided up into smaller segments where you read some text explaining a concept, read some code, and see the output of the code when it runs. Often you will be prompted to type in what you expect the code output to be. Lessons usually take 5-10 minutes to complete.
When you finish lessons you unlock reviews and exercises that let you practice what you have learned. These typically involve reading some code and typing in what the output of the code will be. Sometimes you have to write code that fulfills a certain set of requirements in order to proceed.
It's a very interactive process where you take in some information and then do an exercise to show that you understand. If you are like me and struggle to pay attention to videos because that style of learning is so passive, you will probably enjoy this.
Before you get far into a course, you will reach a point where the site has no new tasks for you to complete. In a day or so more will unlock and you can continue your progress, but you will usually have to wait before you can do more.
When you complete lessons, Execute Program will make reviews available so that you can go back and practice. This happens periodically from days to weeks after you completed a lesson and it's really helpful for reinforcing what you have learned so that you don't forget it.
My Type of Learning
This approach to learning is not very traditional compared to most of the resources that I have seen. I find it to be very a thoughtful and intelligent way of teaching people how to code. I personally have struggled to learn by watching videos. I can watch some of the best coding videos out there but draw a complete blank when I attempt to do what's in the video myself. I have found that I learn so much more effectively when I'm actually doing the thing that I'm trying to learn.
One great thing about Execute Program is that you do write code to complete the lessons. Your code will be executed and the site will check your work to make sure what you did is correct. Most of the time it's not a lot of code, but it is very effective in making sure you understand the concepts in each lesson.
Learning To Read Code
Unexpectedly, my ability to read code improved a lot since I started Execute Program. This is an underrated skill and I was surprised at how improving my ability to read and quickly comprehend code improved my whole development experience.
In these courses you do quite a bit of reading but everything is split up to make it easily digestible. As I've mentioned, often the lessons and reviews require you to read code and type in what the output should be. You get a lot of practice digesting and understanding code that you didn't write. I didn't realize how much I could improve in this area until I started taking these courses.
I also suggest that you talk yourself through these exercises and explain out loud what the code is doing, what the output should be, and why. This really solidifies your understanding of what you learn and helps you practice explaining code, which will be helpful in job interviews, pair programming, and discussions with developers on your team.
Pacing Yourself
It's common for people in this industry to try to learn as much as they can as fast as they can. This is understandable, people want to get hired quickly. It's attractive to think that you can cram a ton of knowledge in your head in a short time period and be hireable. But people are only capable of learning so much at a time. When they rush through courses like bingeing a series on Netflix a lot of knowledge will not be retained.
Execute Program forces you to wait for new lessons so you can take some time and digest what you have learned. This takes away the temptation to rush through courses without actually learning anything. It's a system where you learn some stuff, walk away, wait, and then come back to review what you learned earlier. Then you learn new stuff. It's a steady, slower way of absorbing knowledge but I find it to be very effective.
I could go on for a long time because I have found a lot to like about Execute Program. I encourage any JavaScript developers of any skill level to give it a try. It's free to start a course and see what it's all about. Right now a subscription is $19 per month.