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?

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).
The free typing lessons supply the complete "How to type" package. Animated keyboard layout and the typing tutor graphic hands are used to correct mis-typing by showing the right way to type for your learning and practice experience. Lessons' difficulty gradually raises as it starts from only 2 characters and ends with the entire keyboard. When the lesson ends, you can learn a lot from the practice trends: WPM, accuracy and errors distribution.
Instead, Keybr.com generates random, but readable and pronounceable words using the phonetic rules of your native language. These words look almost natural, and often they really are. Typing sensible text is much easier than repeating random letters, and it helps you to remember frequent key combinations. The latest point is very important. For example, it’s almost impossible for the letter ‘W’ to follow the ‘Z’ in English, and you will never type this combination in Keybr.com. Instead, you will type more common words, such as «the,» «that,» «with,» and so on. And soon you will learn how to type the «th» combo really fast.
Do you have a smarthome device like the Amazon Echo? You can put your coding skills to the test by creating customized mini-programs to get more functionality out of your devices’ digital assistants. Amazon’s Alexa may already know many basic voice-command “skills,” like reading the latest news headlines, but you can teach her more complicated tasks by coding in Node.js, Java, Python, C#, or Go. (Or, if you want to start with something easier, try the simpler Alexa skill blueprints site.)
You may have enough experience typing to know most of the common keys - the letters, the space bar, enter, and I’ll bet you know that backspace! But you might be uncomfortable with some of the keys you don’t use as frequently. Do you have to slow down and look at the keyboard to type a number or symbol? If you program or work with spreadsheets you will use the symbol keys frequently. If you are a gamer there are probably CTRL, ALT and function keys that you fumble for in the heat of the battle. In fact, most all programs can be used more productively when you know the key combo shortcuts for doing common tasks. Hitting these awkward keys and combos accurately allows you to maintain focus on what you are doing, so make sure you include them in your typing practice.
Khan Academy allows you to learn almost anything for free. Our Xbox app is the best way to view Khan Academy’s complete library of over 5,000 videos. We cover a massive number of topics, including K-12 math, science topics such as biology, chemistry, and physics, and even the humanities with playlists on art history, civics, and finance. Spend an afternoon brushing up on statistics. Discover how the Krebs cycle works. Learn about the fundamentals of computer science. Prepare for the upcoming SAT. Or, if you’re feeling particularly adventurous, learn how fire stick farming changed the landscape of Australia. Included in our Xbox app: - Watch all of our 5,000+ videos - Track your progress: Log in with your Khan Academy user account to get credit for watching videos, and see your achievements It doesn't matter if you are a student, teacher, home-schooler, principal, adult returning to the classroom after 20 years, or a friendly alien just trying to get a leg up in earthly biology; Khan Academy's materials and resources are available to you completely free of charge.
Also, something that I've found is that if you go wrong somewhere instead of mindlessly searching for the error (assuming there are multiple or you don't know the error's location) just start from the beginning and go down seeing that if this works. If you see a break and something disconnects, in all probability that's where the error is. It's all logic.
That's a great list, Kevin. However, nearly all above-mentioned course/tutorial providers provide content for nearly all programming languages/frameworks. Hence a newbie learner would be confused which learning platform to choose out of the lot. For ex. if one is interested in learning Python, all the above-mentioned platforms provide Python courses/tutorials. To solve this dilemma, Hackr.io (https://hackr.io) is the programming community where learners can find the best online programming courses and tutorials recommended by the community. PS: Sorry for the self-promotion ( Am Hackr co-founder) but I thought of informing the readers about the possible solution.
Second, Keybr.com measures your keystroke dynamics and collects comprehensive typing statistics. For example, it measures your typing speed for each individual key, and uses this data to generate random words putting emphasis on the weakest key. The more troubles you have with a particular key, the more you will be  typing it. It means, the generating algorithm will put that letter in every word in the next generated lesson. Your typing skills are re-evaluated after every completed lesson, and the next lesson will be adjusted accordingly.
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.
[lead]High-end cycling bib shorts, complementing the Club Range. Designed and produced in Europe. The Club Bib Shorts are the epitome of classic cool.[/lead] The Club Bib Shorts have been put through extensive testing, with feedback that has helped develop them into some of the most comfortable shorts around. Using high quality matte black Italian compression lycra and a 45mm gripper tape it guarantees performance on even most demanding rides. Minimal and long-lasting silicone Podia mountain logos as well as subtle woven labels bearing the Podia tri-colours match them perfectly to the Club Range jerseys. The pad features 80kg/m2 high density foam for a comfortable and unrestrictive fit. It has an anatomical bi-stretch fabric which helps to adapt to the riders body. A hydrophilic surface allows the pad to breath while a bacteriostatic treatment keeps it fresher for longer. SIZE CHART
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.
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.
Whether you’re an adult looking to transition into the tech industry, a student looking to learn the latest language, or a hobbyist who just wants to understand how software and services work, all you need is a computer and internet access to start your programming journey. But before you take a flying leap into The Matrix, here are our best tips and resources to set you off on the right foot.