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.
As a self-taught programmer, you might also benefit from books that offer broader advice on the profession. You’ll improve your thinking and habits, traits you can apply to any language you decide to learn. Steve McConnell’s 900-page Code Complete: A Practical Handbook of Software Construction (2nd Edition) is considered the definitive guide for best practices, with data-backed advice on everything from project design to debugging code.
Learn using videos, interactive exercises, and in-depth articles in math (arithmetic, pre-algebra, algebra, geometry, trigonometry, statistics, calculus, linear algebra), science (biology, chemistry, physics), economics (microeconomics, macroeconomics), humanities (art history, civics, finance, US history, US government and politics, world history), and more (including computer science principles)!
You should do your touch typing lessons as often as you are capable of without hurting your fingers! As with everything else, regular training gives the best result. Most people will probably get the best result by distributing the lessons to several days in the week rather the doing a lot of exercises in one day. It is a good idea to put your touch type training into a calendar to be sure to remember to do them. If you don't have a calendar you can use the Google calendar which is free and easy to use. In this way it is easier to remember to do your exercises.
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:
Here you’ll learn HTML5, CSS3, JavaScript, Databases, React.js, Node.js, and others by networking and joining this nonprofit's community of professionals and students. You’ll even work together on your coding skills so that you can build apps for free. Here’s the catch: You’re learning those skills and building helps to help solve real-world problems. Code is available to nonprofits.
Skyship Entertainment™ is the creator of the beloved children’s brand, Super Simple™. Their award-winning Super Simple Songs® combines delightful animation and puppetry with original and classic kids’ songs to help make learning simple and fun. With over 10 billion views and 10 million subscribers on YouTube, their songs and videos are favorites with parents, teachers, and kids around the globe.
Start small, but think big. Your project should involve skills you currently have in your toolbox, but you should also have a plan for future features and skills you’d need to turn that vision into reality. Without applying your coding skills in a few projects, you wouldn’t even be considered for professional coding gigs—so start planning and practicing. (Our advice? Use your coding chops to build an amazing setup for game night.)
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?