I’ve said this to my non-techie friends countless times. It’s no secret that being able to code makes you a better job applicant, and a better entrepreneur. Hell, one techie taught a homeless man to code and now that man is making his first mobile application.
Learning to code elevates your professional life, and makes you more knowledgeable about the massive changes taking place in the technology sector that are poised to have an immense influence on human life.
(note: yes I realize that 3/5 of those links were Google projects)
But most folks are intimidated by coding. And it does seem intimidating at first. But peel away the obscurity and the difficulty, and you start to learn that coding, at least at its basic level, is a very manageable, learnable skill.
There are a lot of resources out there to teach you. I’ve found a couple to be particularly successful. Here’s my list of resources for learning to code, sorted by difficulty:
Novice
Never written a line of code before? No worries. Just visit one of these fine resources and follow their high-level tutorials. You won’t get into the nitty-gritty, but don’t worry about it for now:
Dash - by General Assembly
CodeAcademy
w3 Tutorials (start at HTML on the left sidebar and work your way down)
Intermediate
Now that you’ve gone through a handful of basic tutorials, it’s time to learn the fundamentals of actual, real-life coding problems. I’ve found these resources to be solid:
Khan Academy
CodeAcademy - Ruby, Python, PHP
Difficult
If you’re here, you’re capable of building things. You know the primitives. You know the logic control statements. You’re ready to start making real stuff take shape. Here are some different types of resources to turn you from someone who knows how to code, into a full-fledged programmer.
Programming problems
Sometimes, the challenges in programming aren’t how to make a language do a task, but just how to do the task in general. Like how to find an item in a very large, sorted list, without checking each element. Here are some resources for those types of problems
Talentbuddy
TopCoder
Web Applications
If you learned Python, Django is an amazing platform for creating quick-and-easy web applications. I’d highly suggest the tutorial - it’s one of the best I’ve ever used, and you have a web app up and running in less than an hour.
Django Tutorial
I’ve never used Rails, but it’s a very popular and powerful framework for creating web applications using Ruby. I’d suggest going through their guide to start getting down-and-dirty with Rails development.
Rails Guide
If you know PHP, there’s an ocean of good stuff out there for you to learn how to make a full-fledged web application. Frameworks do a lot of work for you, and provide quick and easy guides to get up and running. I’d suggest the following:
Cake PHP Book
Symfony 2 - Get Started
Yii PHP - The Comprehensive Guide
Conclusion
If there’s one point I wanted to get across, it’s that it is easier than ever to learn to code. There are resources on every corner of the internet for potential programmers, and the benefits of learning even just the basics are monumental.
If you know of any additional, great resources that aren’t listed here, please feel free to tweet them to me @boomeyer.
Best of luck!
I wanted to put together a few resources I found for people who might be planning to make games, or might be looking to learn coding!
The first resource is for anyone looking to learn how to code, build a portfolio, and get Certifications:
This is something I've recently been using myself and I can attest that it is an excellent resource!! They have many different paths you can learn, and right now I’m on the Responsive Web Design Certification. You can learn HTML and CSS, in order to create responsive pages. It teaches you through projects, where it breaks down different parts of the coding language and shows you how to use it. Some projects are optional, and some you have to complete in order to earn your certification. Certification projects don’t have instructions, only a rubric of what the project needs to be able to do, but you can learn all those skills in the optional projects! They also have Javascript, Frontend Development, Information Security… the list goes on! The website is run by a really cool non profit. I definitely recommend giving it a try!!
2. The second is for game developers who are looking for background music:
@/茶葉のぎか (Nogika Chaba on twitter) makes some really awesome 8bit-sounding BGM! And a lot of it is free for commercial/non commercial use!!
Make sure to check the description (you can translate to your language) for their policies. Many of their videos are tagged #freeBGM, which if you check their Pixiv Fanbox terms of service (in the desc of each video, please do check it before you use it) states that you are able to use the music in commercial/non commercial works:
2. The third resource is for students:
Whether you're a university student, college, high school, or elementary, Github gives you free Github pro, as well as a curation of free offers! You do need a piece of student ID (proof that you indeed belong to an institution, eg. report card, student card, etc), but it has a host of offers. Microsoft offers free cloud training through this, there are multiple offers for learning a new coding language for free (eg. Codedex free 6-month subscription, which will also give you certificates once completed), you can get free domain names, the list goes on! If you are a student, I highly recommend that you give it a try, since it's 100% free!