5 Best Programming Websites (Resources) - How to Become a Software Developer

2020, Oct 27  — 7 minute read

Have you ever been overwhelmed by the number of technologies you are expected to learn to get a job as a software developer? In this article, I will teach you exactly where to go to learn how to code for free (mostly).

Whenever you were learning how to read, it’s unlikely that you just opened a random book and started reading. Most likely you were learning the alphabet and how each letter is written and pronounced. You may have also learned that depending on how different letters are put together, they may be pronounced differently. This is what I would call the fundamentals of reading.

Let me suggest that you may want to keep the same approach to learning how to code. That means starting with the fundamentals. With reading, you didn’t start practicing by reading the War and Peace. In fact, you didn’t know what kind of books you like yet because you’ve never read one.

CS50 by Harvard University



Regardless of what type of software you want to write, my recommendation for the first course that you take will be the CS50 from Harvard. It’s available for free on Edx.Org and on the Harvard website itself.

Yes, the lectures are long and the assignments can be challenging at times. But in my opinion, David Malan is the best professor ever and I would have loved it if all college professors taught with such passion and were able to present hard topics of computer science in simple ways.

This course will teach you the basics in a low-level language also known as C, introducing you to Python and Javascript later in the course.

And here’s the fun part: somewhat recently, they made a change to the course where after 8 weeks, you can actually choose a path you want to continue on. And the paths are web development, game development, and mobile development.

In fact, the course is free and pretty much never ends (it just restarts each year where they upload updated lectures). So there’s nothing stopping you from trying all the paths and deciding which one you like most!

For someone who’s never coded before or someone who is still struggling with fundamentals, this would be my first recommendation.



Unless you know for a fact you never want to do any UI work, like working on websites or mobile apps, it never hurts to learn at least the basics of HTML, CSS, and Javascript. At most jobs, you’ll be expected to at least understand how to navigate through that code and possibly fix bugs or add features. Here’s where the FreeCodeCamp website comes to the rescue. I had spent days on this website going through the lessons. And the lessons are structured very well where they are teaching you some basics, and then build on top of that. It all ends with you having to create your own projects because coding is not just following a tutorial or typing the correct answers into the boxes. Save that for some Trivia crap. So FreeCodeCamp would definitely be on my list of top choices for learning web development.



Still want more options? Udacity.com is my answer! They have a lot of courses built with companies like Google that are totally free. Want to learn AI and learn how to write software for self-driving cars? Or maybe you just want to build mobile apps and learn how to monetize them? Or maybe you’re not interested in the actual coding part but want to be a product manager or UX designer? You can find it all here! Including a course about how to prepare for an interview!

I also like that each video in all the courses is between a few seconds and a couple of minutes long. That way you don’t get tired of watching something and they put quizzes between some videos so you don’t fall asleep and actually pay attention.

And if you want some guided support, they have what’s called nano-degrees. It’s courses with more lessons, mentors who will check your assignments and answer questions, and they will also help you get your resume into the right state and prepare for the interviews.

This is definitely one of my top choices for programming websites and has been for the last couple of years.



This is a paid resource and I was lucky enough to have my employer pay for it, so check with yours if they will do it for you, but I do enjoy the quality of their content and that I can find resources on almost all the topics. A lot of people known in the software development world have their courses on this platform and I spent countless hours when I was just learning how to program watching courses about all things C#. Eventually, I got a job and was able to actually keep it, and then get a new one, so I’d say it’s a success. It also has tests where it evaluates how well you already know something and suggests courses based on your gaps in knowledge. And in addition to that, it has what’s called “Paths”, where it provides you with a plan to learn a new language or a new framework from the beginning to advanced level. As I said though, it is a paid resource and might be a little pricey for some people. But check if your employer already has a subscription or if your manager will pay for it.



Youtube is the biggest resource of video content on the planet. I haven’t verified this information but I don’t know what other resources would even come close. What’s cool about Youtube is that most likely you will find someone whose teaching style you enjoy, or who talks in the way you like and understand. And if English is not your first or even second language, it’s likely you will find content-makers in the language that you speak. Though a lot of courses have subtitles in different languages as well, so it shouldn’t be an issue. But with youtube, all the possibilities are open and there are plenty of people who can teach you stuff.

Realistically though, one biggest mistake I had made was that I kept watching courses, jumping from one to another, instead of building stuff. You don’t need a course to start doing that once you have the fundamentals down. There’s documentation available for free on the internet if you want to learn how a certain feature of the language or the framework works. It doesn’t matter which programming language you pick either. It’s just that certain languages are easier for certain tasks.

On this note, enough reading and go start building stuff!

Subscribe to be notified of future posts!