“We shape our tools and then our tools shape us.”
– Marshall McLuhan
Until starting this challenge, I hadn’t programmed in almost seven years. As should be expected, I had no idea where to start from. Most of my old programing software was either outdated, or missing (when I was 14, my family moved. During that time a lot of my stuff got lost.). Not wanting to spend a small fortune on unreadable coding books, I decided to seek out free online resources. What I found were some fantastic and highly engaging materials. If you have any interest in learning how to code, check out these programs:
While browsing Reddit, I found a thread recommending Invent with Python. This book is geared towards children, making it a perfect introduction to programing. The book’s chapters are easy to work through and do a fine job getting you antiquated with the basics of Python. For the complete beginner, this is your book.
Difficulty level – If you can read, you should be able to comprehend the book.
After a reader told me about this book I decided to check it out. Learn Python The Hard Way is an incredibly thorough introduction to the Python language. While the book does have a slightly steeper learning curve than Invent with Python, it’s still easy to understand and written in a very digestible manner.
Difficulty level – If you’re at all familiar with programing, Learn Python The Hard Way should be easy to follow. If not, complete Invent with Python fist; and then start reading this.
Codecademy is by far my favorite online resource. Unlike the other materials on this list, Codecademy is an interactive website that teaches programing in real time. It’s simple to use, has a sleek interface, and offers tons of outstanding tutorials for a wide variety of languages. And, while it may sound a bit cheesy, I really enjoyed Codecademy’s achievement system. The presents of medals and a progress bar made writing code feel like playing an old school RPG.
Difficulty level – Anyone who’s ever played a 90’s computer game could probably get through most of lessons without much trouble.
What I’ve listed is only a small sample of the many programming resources available. If you have a favorite book or site that you want to suggest, feel free to sound off in the comments.