I will share you about 4 strategies on how to learn code as fast as possible that I personally use in my daily life 5 years ago without burning any money. I’m from the background of computer science love to explore from basic to endless subtopics like programming concepts to machine learning. There are 4 things how to learn code fast:
- Find a reason to learn
- If you can’t explain it simply, you don’t understand it well enough
- Create a set of milestones
Find a reason to learn
Before you start, you have to find what kind of motivation that drives to learn code. Is it because you love and passion? Switch another job that offers a higher salary? Or you want to change the world, be a tech startup co-founder? Trend or hype? You need to determine first your reason why you want to learn code, if not it will be waste your time. Based on my experience, why I want to learn code in the first place during 2006 because at that time I need to customize my “Myspace” profile with CSS knowledge.
I become envy with other friends, their profiles look astonishing and incredible compare mine. In 2007, Myspace became obsolete since Facebook starting become popular during my diploma days. Then I start learning C++ and JAVA programming languages from my ex-lecturer, En Mazlan as a senior lecturer UiTM at Alor Gajah, Melaka. Also during that time, Mr. Azmi also teaches me C# for web development subject. After that, in 2010 I learn about data mining using Weka. On that day I starting love to learn machine learning using python. Before I graduated, I study some mobile technology which is Objective-C (Swift on that time not existed yet in early 2013) and JAVA (for Android platform) to make sure I secure a mobile developer job position.
Lucky me, I got an offer from a fintech company at Mont Kiara. My learning process did not stop there, I continuing my study in Swift programming language and IBM Worklight (currently as IBM MobileFirst). Not forget I also learn XML scripting as a web standard and basic machine learning such as image processing, Natural Language Processing during my Master days. At the end of December 2015, I decided to build an AI startup focusing on recruitment. Even until now, I’m still learning something new related to AI.
Do what you believe because it is the most important giving yourself the space to reflect on yourself and your life. There are a lot of online learning portals you can refer such as Udacity, Khan Academy and EDX. One of my advice is if you are a job seeker, this is an opportunity to learn more about the technology in order to get a higher salary in the future (if you are money-oriented). If you a tech startup co-founder, learn this to achieve more success faster in the future (DON’T chase money, chase excellence because money will follow, be a result-oriented).
If you can’t explain it simply, you don’t understand it well enough
Let’s say you have a bunch of possible learning options, you don’t know where to want to start, start with the simplest one first. DON’T ever to start with the hardest thing first, it will get so much easier to get demotivated. You need to have a basic understanding of concept and protocol of programming languages such as variable, syntax, control structure or data structure. If you already understand these concepts, can proceed to the complex level such as interpretation, compilation, type checking, and type inference, abstract machines, and garbage collection.
Without knowing this concept, you can’t simply implement a simple program. You need to have some basic idea from a few of sources like I mention previously or referrals from those people already gone through all the SDLC (software development life cycle) processes or we call it like an expert. Get some of the source codes or simple projects from Github or Stackoverflow and learn how it works. Analyze the architecture and then move to more detailed implementation. After that, try to teach other people what you learn in order to master it with a simple explanation. Represent again and again your works until you master it.
Create a set of milestones
Like I mention before, DON’T ever to start with the hardest thing first, it will get so much easier to get demotivated. Create a set of small achievable goals in your journey. Whenever we begin the learning process, we go through an exciting journey where we experience happiness as we face novel and new concepts but there is always an obstacle in excitement a period when our learning progress slows and we get frustrated and give up. Many people end their journey because of a lack of perseverance.
Besides that, don’t forget to set datelines for each goal according to research by breaking up your larger learning goal into smaller ones will help keep you motivated. Celebrate your small reward each time you have learned some small part of a larger concept. Also, keep learning the interesting part which allows you to maintain a flow state of maximum concentration. But remember, 10% just theoretical, another 90% is practical. Make sure to do a lot of practicals instead of researching.
Think outside of the box and take time to write down burning questions that drive your curiosity to the learning path.