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.
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.
If you don’t know how to touch type, this is where you need to start. Having the ability to type without looking at the keyboard is the most important factor in achieving a fast typing speed. Even if you have memorized many of the keys, unfamiliar keys will slow you down just like speed bumps on the freeway. Taking your eyes off the screen to peek at the keyboard disrupts your focus and costs you time. You want to be able to keep your eyes on the screen and your fingers moving to the correct keys without thinking. Achieving this kind of flow takes practice. The better you can do it, the faster you will be. Read on to learn how.
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?