Several times people have asked me: Hey, if I want to become a software developer, where should I start?
If the person was a kid, I would say Start from Scratch 🙂
For a grownup, the path is probably similar…
Why is Software Development Important
It takes time to learn any new skill. Same is for software development. So, if you are going to invest time and energy, it is important to know why you are doing it. Why is software development important?
Mitchel Resnick from Massachusetts Institute of Technology has expanded it much better than I could:
Mitch Resnick: Let’s teach kids to code | TED Talk
Where to Start
There are a lot of programming for beginners books, and if you take any of them, you will probably do good. And besides programming books, there are may other online sources. Majority of them is great, and if you have found the one you enjoy, keep going, it will be good.
But if you haven’t found what you are looking for (and probably, that is why you are here 🙂 ), you can try this:
Two years ago, a friend of mine pointed me to Harward University, and their CS50’s Introduction to Computer Science course. I was caught by a surprise a bit here.
1. The content is great (I mean, it is Harward 🙂 that one was expected)
2. All is recorder and available online.
3. It is free :O
It is great, it is self-paced, and it is free. I think this is very good for a start 🙂
CS50’s Introduction to Computer Science | edX
CS50x 2022 – YouTube
There are other years also CS50 2020 , 2019 … Probably the latest one is the best :). By the time you read this, 2022 might be the old one already.
(edX version is preferred over plain YouTube, because you will have access to additional content and exercises that come after each lecture)