EdX is another leading online-learning platform that is open source instead of for-profit. It was founded by Harvard University and MIT in 2012, so you know that you’ll learn about cutting-edge technologies and theories. Today, edX includes 53 schools. You probably can’t go wrong with the free Introduction to Computer Science from Harvard University.
Third, Keybr.com lets you introduce as few keys as possible to the lesson, adding more keys automatically when it decides that you are proficient at the current level. When you only start learning it generates lessons with words from a very small alphabet of the most frequent letters. When your typing speed for every key in that alphabet reaches certain threshold, the algorithm adds the next most frequent letter to the alphabet. And so on, until the next letter. This way you will learn the most frequent letters first, and the least frequent ones later.
The programming community is full of people who are willing to help the next generation of programmers. GitHub, the online hangout for developers who use Git to manage their coding projects, is designed for online collaboration. Not only do developers host and share their projects with their peers, they also provide code feedback and general advice to the community.
Once you figure out why you want to code, you can more easily pinpoint which programming language you should tackle. While there is no single “best” programming language to learn, some languages are more user-friendly than others. HTML and CSS are considered the easiest entry points into the coding world, but they are only really useful for developing basic websites.
Founded in 2012, Coursera has grown into a major for-profit educational-technology company that has offered more than 1,000 courses from 119 institutions. While you can pay for certain programs to receive a certificate, there are a number of free introductory programming courses in various specializations from universities such as the University of Washington, Stanford, the University of Toronto and Vanderbilt.
When you reverse-engineer someone else’s code, testing each line to see how it works, you get a better understanding of the big picture. Thanks to the tons and tons of open-source code that’s out there, you can learn just about anything by examining someone else’s (flawless) work. Just remember to share your code back with the community if inspiration strikes and you improve a part of the program you were fiddling with.
What an incredible app. I’m so impressed. This company deserves loads of money to be thrown at it for making it free. My son has just switched from a Cambridge school to an American School and missed a lot of work. I think we were both about to give up. I didn’t know where to start to help him and being his new school is completely iPad based we felt deep despair at just the thought of trying to navigate through classrooms codes and half working text book apps. Now it’s all here in one place! Simple well explained and the practice really gets your confidence going. He had some maths homework and instead of the total melt down we both would have had trying to work out what was going on we flew through it!! THANK YOU! I love the fact that all the grades are here too so if there is a concept he is struggling with we can go back in the grades to see where that was introduced and work through it! We have been struggling for months trying to find the answer on line. It was only due to the fact that Khan kept coming up that I googled it and found the app. I truly pray this company gets loads of financial support to keep this app going! THANK YOU THANK YOU THANK YOU!!

Sometimes, it’s just easier to watch someone show you how it’s done. You can find all kinds of educational videos about nearly any coding-related topic nowadays: ex-Googlers sharing solutions on coding interviews, YouTubers livestreaming their coding marathons, and even programming veterans showing you how to troubleshoot a specific error in any language you want.
Take a few minutes (or a day) to think about the reasons—the real reasons—why you want to learn a programming language. Be honest with yourself. Are you trying to learn the barest minimum to score a promotion? Are you looking to make a big career change? Do you want to create the next greatest app? Thrill your roommates by programming your various smart devices to do something awesome?
×