If you want to learn how to code, taking your first steps into this huge universe might seem like a daunting, if not intimidating task. Here’s the big secret: There are plenty of free (and inexpensive) resources you can use to give yourself all the help you need, teach yourself new techniques, and make this learning process fun and exciting—as exciting as coding can get, at least.
I recommend checking out CS Dojo, TheNetNinja, and Harvard’s CS50 YouTube channel. If you don’t have time to search for a perfect coding video or channel, you can also check out LinkedIn Learning’s vast video library for vetted and professional-looking tutorials. While the service’s $30/month subscription fee is nothing to sneeze at, you can binge-watch an unlimited amount of content and topics—making LinkedIn Learning a better deal than other on-demand online classes that come with annoying restrictions. 

On the other hand, if you’re a mid-career professional looking to transition into a tech career, a short-term coding bootcamp might make more sense than going into debt for a second degree. If all you want to do is build websites or push your Raspberry Pi to its limits, a combination of interactive tutorials and free online courses might be enough to get you going.
Created in 2006 by educator Salman Khan, Khan Academy is one of the original free online-learning institutions. With step-by-step video tutorials, you can  learn how to program drawings, animations and games using JavaScript and ProcessingJS, or learn how to create webpages with HTML and CSS. See, especially, Khan's "Hour of Code," designed to introduce students to one hour of computer science and computer programming.

If you want to better understand the relationship between hardware and software, then you’d enjoy the Piper Computer Kit 2, which has you building a Raspberry Pi-powered computer. Using this DIY laptop, you can learn to code through its custom Minecraft Story Mode challenges, use the drag-and-drop Blockly language to learn physical computing, or just pick up some basic Python from the pre-installed lessons.
Your answer can help determine which programming language(s) you should master, as well as what sort of commitment (in time and money) your goal may require. For example, if your dream is to create the next great operating system or a killer alternative to PhotoShop , you would benefit from a formal computer science education that teaches you C++, as well as more complex topics like data structure, algorithms and memory allocation.
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. 

On the other hand, if you’re a mid-career professional looking to transition into a tech career, a short-term coding bootcamp might make more sense than going into debt for a second degree. If all you want to do is build websites or push your Raspberry Pi to its limits, a combination of interactive tutorials and free online courses might be enough to get you going.
I can’t recommend Harvard’s CS50x Introduction to Computer Science enough. You can audit the course for free via edX and earn a certificate by completing all the assignments, or you can go at your own pace and watch all the lectures posted on Youtube. You can build your own DIY college-level computer science program with this selection of fifteen online courses (many of which are also listed in our Lifehacker U series).
Instead of hyper-focusing on learning a specific programming language, you can also learn to problem solve in a way that a computer will understand. In other words, improve your skills at concepts like pattern recognition, algorithms, and abstractions. There’s also lingo, like loops, which are bound to pop up in any language you use. The better you understand these principles, the easier it will be to learn the next language (and design better products or projects as a result).
It is more important to have a low error percentage than a higher speed. The low error percentage will be your best guarantee for success in the following lessons. You can follow your progress at the statistics page (just press the button 'Statistics' at the upper right corner) You should strive to do all lessons flawless (or at least with max two percent error) before you go on to the next lesson. If you learn to type flawless a high typing speed will automatically ensue. By the way, the error statistics will only save your best results.
It is more important to have a low error percentage than a higher speed. The low error percentage will be your best guarantee for success in the following lessons. You can follow your progress at the statistics page (just press the button 'Statistics' at the upper right corner) You should strive to do all lessons flawless (or at least with max two percent error) before you go on to the next lesson. If you learn to type flawless a high typing speed will automatically ensue. By the way, the error statistics will only save your best results.
Codewars adds some quirk to the proceedings by offering free coding classes with a martial arts theme. Solving specific coding “katas” (a term for training exercises in karate) will earn you ranks and honors as you move your way to becoming a bonafide coder. Who said learning to code online couldn’t be fun? Codewars also offers one of the more diverse lists of programming languages. Choose free coding classes on:

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.


With your index fingers you can feel a bump on the keys 'F' and 'J'. When you type you must get back to these two keys as soon as a key has been pressed on the keyboard so that you know all the time where you are on the keyboard. If you don't find the keys 'F' and 'J' again you will get lost and make a lot of mistakes. For the same reasons the first lessons are done without ever moving your fingers from these two keys.
No matter how many certificates and coding workshops you complete, or how many programming languages you learn, the proof of your coding skills will be in your programming project. While your personal project doesn’t have to be as ambitious as creating the next Google Maps, it should be something you’d want to work on 24/7 to constantly improve and expand its scope.
Those who use only two fingers often type as slow as 10 words per minute although some are capable of surprising fast speed with this primitive technique. After these lessons you should be able to type at least 35 to 45 words per minute. After some months of experience and regular typing you can reach 90 words per minute or even higher. As with everything else practice makes perfect. You can follow your own progress by pressing the button 'Statistics' in the top right corner, you will be able to follow your progress online after each lesson.  
×