How to Learn to Code: A Guide for Complete Beginners
“I think everybody in this country should learn how to program a computer, should learn a computer language, because it teaches you how to think.” said Steve Jobs in one of his famous interviews.
It’s not a coincidence that 7 of the top 10 richest people in the world used programming to get there. Many of them have openly said that learning to code has literally changed their life and has helped them touch the lives of billions of people around the world.
Naval Ravikant, Angel Investor and Founder of Angellist has famously said, “The best form of leverage is technology and software. It costs almost 0 to add new users and it benefits from the Network Effect and hence, everyone should learn to code and use this leverage to make an impact.”
Basically, you need to learn to code, or at least try to.
The question then arises, how should I start?
Here’s a step by step guide for how you can start coding and begin your career in software development.
In the hyper connected internet that we live in right now, there’s a problem of abundance, not scarcity. There are too many shows to binge, too many books to read, too many videos to watch, too much news to consume, and an overdose of information.
Therefore, you need a roadmap, a guide that you can follow and avoid the noise.
Step 1: Select a Language to Learn
Just as in the real world we have English, French, Hindi, German, etc. there are many programming languages that you can learn to build software. Some are easier to learn than the other, and each has its own purpose.
If you have no prior experience with coding, you should start with web development. This is a field that’s very much accessible to everyone and requires minimal setup.
In order to create websites, there are two important components:
The frontend is how the website looks visually. The visual hierarchy, the muscles and bones of the website. Similarly, the backend is where the data is stored and is processed.
A developer that learns both frontend and backend development is called a Full Stack Developer. Full Stack Developers get paid 2.5X more than frontend and backend developers.
Let’s breakdown both Frontend and Backend and dig deeper:
You need to first learn HTML5 and CSS3. HTML5(Hyper Text Markup Language) is the bones of the website. It gives structure to the page and you can create paragraphs, heading, forms, tables, links, images, etc using HTML tags.
Learning HTML is quite simple. Once you are done with it, next is CSS3. CSS stands for Cascading Style Sheets. As the name suggests, it’s how you style your website. Styling involves giving the website and it’s elements color, animation, borders, padding, and tons of other formatting capabilities.
Also, checkout some popular CSS frameworks like Bootstrap, Tailwind and Bulma. Framework is basically pre written CSS code that you can use to create elements of the website really quickly. The most popular among these is Bootstrap.
This is the time for you to start creating projects. You have all the knowledge required to create frontends of any website you want to. Sounds amazing right?
Projects can include games like Dino Game, Flappy Bird, Tic Tac Toe, etc. and clones of Amazon, YouTube, Microsoft or Apple websites.
These include React, Vue JS, and Angular.
I would recommend you to start with React since it’s the most popular framework and is quite robust to use.
Once you have learned about React and Redux and it’s concepts, you can finally call yourself a Frontend Developer.
You can now use the framework that you’ve chosen to make the same projects you did in Plain JS, now using React(for example).
This is where the data gets stored.
On top of NodeJS, you need to learn Express, which is a backend web application framework used to make custom APIs to communicate with the database.
Next, you’ll need to learn to use a Database, a place for you to store data. There are a host of options available for you to choose from like SQL, PostgreSQL, etc.
I would recommend you to learn MongoDB since it’s easy to learn and is classified as a NOSQL Database.
Then you need to make projects. Considering you have already learned frontend, you can start building full fledged websites with login authentication, CRUD functionality and payment functionality.
Think about the functionality that you’ve always wanted to have and use. Then try to make it yourself.
Once you’ve learned both Frontend, and Backend, you’ve now become a Full Stack Developer.
Which is the best resource to learn?
There are tons of courses and videos you can watch on YouTube and elsewhere. But it can lead to confusion. Hence, my friend and I have created codedamn, a platform for you to start your web development journey with the help of guided roadmaps called Learning Paths.
What’s amazing is that you can apply what all you’ve learnt by creating projects on the site itself! There’s no need to install code editors and come up with project ideas. We provide a curated list of projects that you can start building today and share it with the world.
We have a community of over 24K people learning to code using codedamn.
You can start learning for free and to access the complete features, we have a Black Friday Sale going on with which you can get it all for just Rs.199!
The platform has been made by Mehul Mohan, who started learning web development 5 years ago and has a YouTube Channel with 136K subscribers and 19M views.
A big part of coding is solving errors, finding bugs and debugging your code. Hence, it’s important that you learn to look it up on google. You should get into the habit of reading documentation, stack overflow and other blogs like dev.to and Medium.
At the end, it’s important for you to have fun along the way. Only pursue coding if you enjoy building something that can impact people and make a difference. Getting into it just because it’s the hot job right now and pays more won’t last long and might lead to unhappiness.
At the end, I’d like to quote Steve Jobs, “Stay Hungry Stay Foolish”.
For more clarity , I recommend watching this video - Link
If you liked this post don't forget to subscribe before you go!