Newbie programmers find it hard to learn programming – more so if they are economically constrained. The good news is: Internet today is so resourceful, that you can almost graduate for Computer Science for free…(including the hardware, sometimes). Here, we will summarize tips (and also guts) to learn programming for free, which is also the most effective way that can stabilize and grow your tech career.
Get a good Programming eBook online
Programming books teach you programming concepts well. They are not meant for every programming language that your career requires you to learn.
Buying a programming book when you are budget-constrained is a foolish choice when there is so much available for free. Yet, here are some suggestions surrounding a programming language, but the concepts are globally relevant for any programming language you are trying to learn.
- Design Patterns: Elements of Reusable Object-Oriented Software – authored by four Computer scientists Popularly known as Gang of Four
- Introduction to Algorithms – by Charles E. Leiserson, Clifford Stein, Ronald Rivest, and Thomas H. Cormen
- Thinking in C++ by Bruce Eckel
- Thinking in Java by Bruce Eckel
How to learn Programming for free – from experts
In the last decade, MOOCs have exploded. And while many are making money off of newbie programmers, benevolent institutes and experts have given away their knowledge, for free.
Here are links to the best programming classes by world-class universities.
- MIT open courseware – Algorithms and Data Structures
- Stanford – Programming Methodology
- Stanford – Programming Abstractions
Next time you regret about not making it Stanford or MIT, just don’t! Instead, watch them. They are universal answers to the eternal question of how to learn programming for free.
And there is guarantee: you won’t have to learn anything in programming past that.
How to learn Programming for free – from eLearning websites
At the time of writing this post, Udemy.com has 1200+ Free Programming courses available. They are completely FREE with no obligation.
Other sites such as Coursera.com has free and paid courses with longer duration, rigorous assignments that keep you engaged and committed.
While eLearning websites offer great flexibility and pricing advantage (in case of free courses) – there is one thing to consider: unlike MOOCs which are best to teach you programming concepts (just like books), eLearning websites are focused on real world applications. They are aimed at getting you through a specific project (example: make a chat mobile app), or training you better at specific tool (example: Microsoft Visual Studio). Unless you are armed with core programming concepts already, you may find it challenging following through an eLearning course, or conquer your next job interview. Also, make sure you follow certain caveats in choosing the right online course.
How to get Programming Hardware – for free
A decade ago, many programmers abandoned a certain programming career choice simply because they could not afford the hardware. While this problem still persist up to some extent, many online tools have to the newbie learners’ rescue.
Here are some tips to practice your programming skills without your own hardware:
- Go to an Internet access point
- Browse to Codechef.com
- Select your favorite programming language – be it Ruby, C#, Python or C++)
- Start Coding
Codechef is not alone. Here are a few more candidates.
- Repl.It is an online IDE supporting complete web stack (PHP, DJango, HTML, CSS…the list goes on)
- For web developers, there is a nice online simulator called jsfiddle.net.
- Pythontutor.com is a visualizer tool for C++, Ruby, and Python.
If you are crazy about Apple (iOS / mac) development, and since it is next to impossible to publish a legitimate app without Apple hardware, there are cloud solutions available that can be easy on your pocket. Popular examples include macincloud.com. You can also host mac VM on your windows machine.
But why would you want to learn programming for free?
Tech career is a complex labyrinth. There are times things suck. You may desperately want to alter your choices – either due to no job, bad boss, wrong college degree, or better payout. When you are not heavily invested in your career choice, it becomes way lot easier making course corrections, jumping up the queues, or simply abandon the slow-moving queue.
When you need to grow guts to make that proverbial dropout, those tips will come handy.