Sitemap

How I learned to code in under a year + recommended resources

5 min readAug 6, 2018

Last August, after a busy day of watching YouTube videos and browsing through graduate opportunities online, my laptop unexpectedly broke down. Since I had a lot of free time on my hands (and because my finances weren’t looking great), I decided to buy a replacement battery and make a project out of fixing the machine myself.

A few days later, my laptop was fixed. While reflecting on the experience, I remember realizing how much I had enjoyed tinkering with the device’s hardware and upgrading its software. That was when I began considering a career in Tech.

Soon after, I read Swipe to Unlock: The Non-Coder’s Guide to Tech and Business Strategy. The book detailed the innovation happening throughout the tech industry and how it was positively impacting the lives of millions of people. By the time I finished the book I was set on 2 things:

  1. I wanted to be a part of that innovation.
  2. I wanted to try my hand at coding.

I decided to defer from applying for graduate roles for one year so that I could learn as much about software development as possible, in hope of qualifying for a job as a Front-End Developer.

(Below I’ve listed out my recommended resources for those looking to get into web development.)

1) Getting Started: freeCodeCamp

This first one isn’t the fairest categorization, as freeCodeCamp could have easily been placed in either of the following two sections. However, the reason I’m placing freeCodeCamp as the perfect place to get started is because of its great community and wide range of supplementary resources.

My favourite aspect of freeCodeCamp is, by a long shot, the forum. Responses are typically given within a few hours which is super reassuring for anyone studying web development independently. Whenever I’ve found myself stuck on a difficult problem set or needing answers to career-related questions, I’ve turned to the forum and received multiple responses. It’s helped me throughout many critical points in my learning.

2) Tutorials: MDN Web Docs, Codecademy

MDN are great. They’re well known for their comprehensive documentation on web technologies but less known for their in-depth tutorials for beginners. The tutorials are well-structured, clearly explain the subject matter and can take a reader from not knowing how to use an img tag all the way up to marking up their own SVGs and more.

The JavaScript section is OK but as a language, I feel that something more interactive (like Codecademy’s introduction to JS track) lends itself better to teaching the basics of JavaScript.

3) Exercises: W3 Resource, CodeWars

I picked these two out of personal preference but there are many similar resources online which are just as good. The important thing is to find a catalogue of problem sets which you can go through and then compare your solutions with those of others.

CodeWars have a system where each kata (challenge) is assigned a difficulty rating that’s modelled on the belting system in Japanese martial arts and allows users to improve their ranking through solving more difficult kata. It’s a small touch, but if you’re a geek like me, you’ll get completely sucked in.

4) Books: Eloquent JavaScript, You Don’t Know JS

When learning to code, it’s a given that questions will arise, and it’s often the case that the answers to those questions require the reader to seek a deeper level of understanding in order to be fully comprehended.

Enter programming books.

To start off, I recommend Marijn Haverbeke’s Eloquent JavaScript. The author has a special way of presenting programming as an art form as opposed to a science and going through the book’s chapters will seriously ramp up a beginner’s skill level.

Questions breed more questions, so to dig a level deeper I recommend Kyle Simpson’s six-part book series You Don’t Know JS. The third book sheds a lot of light on the problems surrounding OOP in JavaScript and the fifth book gives one of the best explanations on the different abstractions used in JS to write asynchronous code.

“it’s impossible to effectively use any abstraction if you don’t understand what it’s abstracting, and why.” — Kyle Simpson

Expect to spend many hours contemplating concepts with these resources and hopefully, many ‘a-ha!’ moments too.

5) YouTube Channels: Traversy Media, Fun Fun Function

You don’t have to go out of your way to learn how to code. (Photo by Raj Eiamworakul on Unsplash)

Once you’ve reached this point you should have a pretty solid grasp over the basics - now it’s time to learn from the pros. There are plenty of YouTube channels dedicated to teaching web development through code-alongs but I found these two to be the most consistent in delivering high-quality content on a regular basis.

There are also some really insightful/funny software engineering vloggers on YouTube like Jarvis Johnson and Mayuko, but I’ll leave it to you to explore and find some channels you can relate with.

Thanks for reading

There’s always going to be more to learn in software development, so remember to take things at your own pace and enjoy the process.

Want to get in touch? Let’s connect on LinkedIn. You can also check out my portfolio to see my best work 👍.

More where this came from

This story is published in Noteworthy, where thousands come every day to learn about the people & ideas shaping the products we love.

Follow our publication to see more product & design stories featured by the Journal team.

--

--

Ahmed Gadir
Ahmed Gadir

Written by Ahmed Gadir

Software Developer, Arabic Language Enthusiast.

Responses (1)