How I learned coding in 6 months
There are two kind of tech company CEO’s:
- CEO’s who rely on their CTO to provide expertise and who themselves focus on the commercial side
- Control freaks who want to keep an eye on everything happening on both the commercial and the technical level.
I belong to the second kind.
So when I started running WalktheChat, I had to teach myself programming (of which I had a rather limited knowledge). Today I can deliver quality pieces of code for our company or for clients, and more importantly oversee the work of our programmers and drive product development.
Here are 4 tricks to get there.
Trick 1: sell your first project right away
If you DON’T want to ever learn how to code, there is a simple way to do it: go on Code Academy and try to take the classes from A to Z.
Within 2 weeks, you’ll have given up and moved on to something else.
The truth is: very few people have the discipline to stick to a learning schedule by themselves and with no clear target (and I certainly don’t).
When I started learning to program, I started committing to deliver simple projects either to business partners (as part of entrepreneurship projects) or to clients (for modest sums of money)
There are several services you can sell with little or no experience:
- Support in setting-up a simple website with an off-the-shelf CMS (SquareSpace has quite a steep learning curve, and many people might be interested in having you do it for them for a small fee)
- Building a basic website using a CMS such as WordPress
- Tweaking a WordPress template or plugin in order to meet specific needs of a client
In order to pull it off, you have to combine two apparently contradictory traits:
- Be honest: lying about your current capabilities will do you no good when your client realises you can’t pull-off what you promised
- Be bold: set yourself a target which will stretch your learning curve. You might very well spend sleepless nights delivering your first WordPress website to your first client, but it is worth it.
Trick 2: take it step by step
Don’t jump directly to your final goal. You want to design a sleak iOS APP, but you have no knowledge of programming whatsoever? There are intermediary steps for you on the way.
When I started learning programming, here are the steps I took:
- Step 1: Designed a super-simple website with “drag-and-drop” tools from Weebly and GoDaddy (got familiar with the concepts of hosting, DNS, etc…)
- Step 2: Built my first WordPress website (learned about FTP and basic WordPress structure)
- Step 3: Built an updated version of my website by modifying template and plugins
- Step 4: Moved forward to creating completely customised PHP plugins for myself and for clients
- Step 5: Built complex applications in PHP
- Step 6: Learned Django Python
- Step 7: Started building and managing product development in Django Python
My next steps are:
- Learn more about node.js, io.js and isomorphic design
- Educate myself about noSQL databases
- Get profficient in the MEAN stack
By setting simple, achievable next steps, I managed (and still manage) to keep myself motivated through the learning process
Trick 3: Lynda.com
There is one website which helped me more than any others in my learning: lynda.com
The classes are very clear and practical. They usually focus on building a small piece of software while adding theoretical context. Each course is broken down in short videos of 1 to 5 minutes, making it very easy to take it step-by-step and pause between videos to execute each step on your side.
My strategy was simple: find a problem to solve (ex: small project sold to a client) and then find the most elegant way to solve this problem via Lynda. Take the Lynda.com class and apply the learning to my concrete, real-life problem.
It worked like a charm.
Trick 4: find mentors
After a while, Lynda.com could not satisfy my need for growth, so I had to look outside for mentors, both within my company (partners and employees) and outside of it (because you can’t possibly hire people experts in all the diversity of topics you want to learn about).
The great thing I figured is: programmers LOVE to talk about what they do. They are problem-solvers at heart and are ecstatic about sharing their knowledge. I had many coffees with brilliant coders who took the time to share their expertise with me, and spent many hours in office having the people around me educate me about what they knew best.
I am forever grateful for that, and this was a key aspect of my learning. So if you can: reach out to people around you, chance is they will take the time to share a piece of advice!
The biggest risk: boredom
Is the path above the fastest way to learn programming language? Certainly not. But it’s the safest.
So many people want to learn how to code, but so few of them do. Why? We get busy, we are distracted by our other responsibilities and we end up giving up on this ambitious task.
The outline above is not meant to be the fastest way to get there, but it’s a safe way to get you on track. After 6 months, you will likely not be a star programmer just yet, but you will have created valuable pieces of code, worked with clients and learned several approaches and languages.
You’ll be motivated.
You'll be moving forward.
You’ll be unstoppable.
And if you want to learn more about WeChat... follow WalktheChat's LinkedIn
Consultant at Airandé - Superior Disinfection Solutions
9 年Very well done Thomas!
Supply Chain Director
9 年Is coding the new literacy ?
Founder and MD, Influence Matters. China. Indonesia. APAC.
9 年Brilliant read! I made it to 2.2&1/2 so far + some python and some C. Love Coursera for learning concrete applications, though it takes longer than Lydia classes. And I just registered for an HTML5 course on Edx... Jiayou!
?? I build in web3 by focusing on tech and liquidity infrastructure. Ex-Huobi VC advisor. Angel investor with daoventures.co. Alumni @Techstars. Fellow @OutlierVentures @launchhouse.
9 年Jiayou Thomas!