catalins.tech with Gatsby

Programming tutorials – Free or paid?

2020 Jan 24th

There are people claiming that you do not have to pay for tutorials/courses/resources when learning to code. Why would pay when there are so many of them for free online? On the other hand, some people claim that paid courses are better. I am one of those people that prefer paid courses. That is not to say free resources are wrong; there are some great free resources, especially when you are just starting. 

So, where is the truth then? The truth lies somewhere in between. My opinion is that most of the free resources are great when you are beginning your career as a programmer. In fact, most of them are targeted to beginners. As an exercise, go to YouTube and search for “node tutorial“. Count how many times you see the word ‘beginner’ in the title. In most of the free tutorials, you learn basic stuff, and you build basic applications. But hey, we all need to start somewhere, and this is not a bad thing. And of course, there are online resources that teach advanced concepts for no fee. The main reason why I am not a fan of free tutorials is that most of the people creating these resources have never been professional developers. For basic concepts, it might be fine. However, for advanced concepts, it is a big no for me. What do they know about code readability, best practices, tips & tricks, scalability, maintainability, and so on? Some things can only be learnt by proper experience. And that is hard to get by building simple CRUD applications used by nobody. This post is not to bash anyone; it is just the truth. 

Not all paid resources are excellent. Like not all free resources are bad or teaching basic stuff, not all paid resources are excellent. There are lots of people trying to scam or take advantage of beginners, or the courses are not good enough. Why am I advocating for paid resources? First of all, I do not get any commissions, and I do not plan on selling resources. The main reason why I am a big fan of paid resources is that they are taught by professional developers. The paid resources also tend to go into more intermediate/advanced stuff which you cannot easily find on the internet. Besides that, you also learn priceless stuff such as best practices, scalability, maintainability, Computer Science concepts, and so on. I am more inclined to follow a course taught by a person that works at Netflix than following a class taught by a programmer with no commercial experience.  

What resources should I use then? My opinion is that these resources complement each other, and they can be used in tandem. A concrete example would be using FreeCodeCamp to learn the basics and then buying a subscription on the FrontEndMasters platform to learn more advanced concepts. This way, you build a rock-solid foundation, and you also learn many things that are used in professional environments. 

What are your thoughts? Let me know in the comments!