by Ronie Vincent Horca
(Professional Self-taught Web Developer)
Learning is not attained by chance, it must be sought for with ardor and diligence.
~ Abigail Adams
Learning new things like programming is exciting and pleasurable, but the process of studying is not. It is a personal decision that takes hardwork, dedication, and patience. There is no shortcut in learning, but there are effective ways or techniques on how we can learn programming:
Have a Goal Product
By product, meaning an application you would like to build; say you want to be the next Mark Zuckerburg and build the next Social Media Craze, or maybe the next Bill Gates and invent a whole new Operating System, or just be you and create a friend of Ultron who will help the Avengers in Infinity Wars.
Studying is hard so it requires self-drive; and having a “WHY” or a goal can help you thrive in this situation.
Choose a Language
In order to create such dream application, you need to know which programming language(s) you’d need to use and learn. It’s really important to choose a language that you’ll truly need in the moment, then expand when your application needs another language.
It’s never a good idea to learn everything at once. Choose a single language that you would aim to be proficient with and would use for a long time. Personally, since I wanted to create web applications such as E-commerce sites, I preferred to learn PHP and then MySQL since it’s also needed. The purpose is to build a solid skill foundation first before expanding your toolset.
Select your Studying Tool(s)
Everyone is unique. Each of us has a different approach to learning; and one way might be convenient for others but a nightmare for you.
By learning tool it can be a book, Udemy videos or other online courses, or documentations. Note that you’re not limited to a single material, a lot of successful self-taught programmers learned from a variety of sources and tools.
Studying a single programming language might take a month or a couple of months depending on its complexity or how deep you want to learn it.
Therefore, using a convenient tool is beneficial so you won’t be disheartened during the long turbulent process.
PS: I used to hate reading books especially from cover to cover (so boring!!!) but it’s my pleasure to recommend this series of books that changed my life and impression to books forever. Check the Head First Books (http://headfirstlabs.com/): these are scientifically designed to make you enjoy reading and learning; if you love reading Comics, Manga, or Story Books, then these books are for you.
Manage to Study Everyday
I know what you’re thinking, studying everyday is a bummer. Honestly, it mostly is. Studying is similar to jogging. If you made “jogging everyday ” as your New Year’s Resolution, you’ll understand how tough to pursue that promise. This is where the “no shortcut” and “personal decision” phrases I mentioned earlier make sense.
In jogging, your goal for the first day must not be as tough as the second day. Starting from 1km, then add 0.5km each day. If you tried jogging 10km on your first day, you might get over-fatigued then quit immediately. So it’s a lot smarter to take it really slow until it becomes a habit. Giving yourself a little more challenge each day makes you stronger everyday.
Same goes with studying. You may choose to study 5 pages of a book, or one video tutorial for the first day then slowly increase the number per day. Say, study 6 pages for the second day or one video and half of the next video; and so on. It doesn’t really matter how little your daily progress is, as long as you’re moving forward.
“Knowledge without application is a waste. Those who just know will always come second to those who do. Put what you know in motion… apply what you’ve learned.”
~ Rob Hill Sr.
Apply What You Learn
One of the simplest and most effective advices I give to people who wanna learn something is ‘If you wanna learn to code, then code’, ‘If you wanna learn to swim, then swim’, ‘If you wanna learn to twerk, then twerk (just be conservartive a little)’.
There is no better teacher than experience, create an application from scratch. Don’t think much about the specifications, the right thing to do since you’re just starting to learn is just do it. The advantage of creating your own application is it will serve as your personal portfolio for job applications or even freelancing bids. So build as many as you can. It doesn’t have to be complex as long as you’re applying what you learn.
Don’t be afraid to make mistakes, actually mistake is an essential part of learning and where fun mostly exists. Those who never made a mistake, never learned anything.
“Surround yourself with smart, dedicated people – to build something isn’t a one-man show. It’s more important to have smart people who really believe in what you’re doing than really experienced people who may not share your dream.”
~ Niklas Zennstrom
Join a Community
Search for a community of programmers online whom you can speak with, ask questions, share your problems, your life story, your food (just kidding). The best part is you can even get motivation from these people. It’s really amazing to be part of a group of people who share similar dream(s) as you. Believe me I know. I personally would love to suggest the Gitter Community and Free Code Camp, they are supportive, friendly, and funny.
* Enjoy Learning!*