How did I learn to code?
Tags: beginners, discuss
Published: 2022-04-07 12:17:30


A very common question for beginners is always, “Where to start” and “How are you a self-taught developer at 16 years of age”. I got the same question for the third time a week, and all beginners go through this. 

Share your own experience down in the comments! I’d love to hear them! 💬 

## How to start?

*Do not worry about programming languages. Pick one, and learn it.* You’ll likely not learn only one programming language in your life, but yes, you’ll probably be the best at the first one you choose. For people who want to do web development, I recommend Javascript, ofcourse

But for people who know nothing at all about programming, start with Python. (I know, many will disagree. Leave your points in the comments lol)

My journey started with Python, because it’s soo easy and I didn’t want to do *only* web development, so Python was the best choice for me. After about 1 year of doing python, I dived into Javascript through an educative course. Now I am trying for new low level languages

## What resources and tools should I use?

*Do not worry about tools.* Well, my point is, don’t get stuck just deciding what to use etc.  For code editor, just use VScode. You’ll figure it out as you learn more stuff, but VScode has everything you need. Then you can discover and switch to whatever you prefer.

Resources, though, are important. Here’s what I used: 

- Start with Youtube. Recommended for absolute beginners, but after you know the syntax, and the basic concepts, move on to guides and text-based. Use Youtube on a *need-only* basis. Youtube tutorials take too much time...
- Guide-Based and Interactive websites  - [Educative.io](https://educative.io), [Scrimba](https://scrimba.com) educative worked the best for me. I got the Educative student pack (from [https://education.github.com/pack](https://education.github.com/pack), so I learnt a lot from there for free)
- Reading blogs and tutorial websites on a need basis - If you want to center a div, search it up. In many cases, you’ll get links from [geeksforgeeks.org](https://geeksforgeeks.org), [w3schools.com](https://www.w3schools.com/), [freecodecamp](https://freecodecamp.org/) or towardsdatascience. Just read their guides to get your problems solved

## What you should NOT do

### Self taught programming is hard.

Watch this video. It has a lot of DOs and Donts on self taught programming. 
{% youtube https://www.youtube.com/watch?v=rBRqYgdL1qo %}

### The tutorial HELL

I once found myself in “Tutorial hell” – I was just following tutorials instead of learning stuff. After the tutorial was complete, I didn’t know how exactly I made the project. To escape this, I asked myself-

- is it possible for me to make the thing in the tutorial myself?
- Does the tutorial show every line of code (to me, good tutorials should offer a challenge. Show the template of how its done and we have to do it ourselves.)
- is the tutorial unnecessarily long?

Don’t get me wrong - watching tutorials is *FINE! Just make sure you’re learning stuff from it, without wasting unnecessarily long amounts of time.*

There are some youtubers, who really helped me escape the tutorial hell – mainly fireship with their short and concise videos [https://youtube.com/fireship](https://youtube.com/fireship). For React, NodeJS and other js related tutorials I think he’s perfect.  **

### Take breaks.

There are some mistakes I did, like coding too much sometimes- and ending up in a burnout, Not completing many of my projects because of procrastination and just … having too many projects

### DO MANY PROJECTS!

At some point, I almost gave up on programming because I didn’t have anything to code. I thought I’m already good at it, but had no projects. I started making a discord bot, which was a HUGE project for me, as I learnt about APIs, async programming, and so, so much more. Luckily for me, Spacebot blew up (well, kinda. for someone who’s just started to code, it was a milestone).

This also motivated me to make my own APIs - so basically a chain reaction.

## And finally, READ and WRITE!

Read blogs, and document your journey. 

I benefited a lot from reading blogs here on dev.to. They motivate me, and make me aware of what’s going on. I also benefited a LOT from getting the [daily.dev](http://daily.dev) extension.

I think I started documenting my stuff pretty late, but I’m glad I did. Write here on dev.to. And then make your own blog as a side-project. [Here’s a post I wrote that will help you get started](https://dev.to/dhravya/how-i-got-100-followers-on-devto-in-10-days-and-why-you-should-start-blogging-now-362b). One day, one of your blogs will randomly get into the algorithm, but don’t write for the numbers, write for yourself.

Write tutorials, write about stuff you made. Just write, every week.

Don’t stress it out. Programming is both, the easiest and hardest things to do at the same time. 

## You will never learn it all

One common thing that I think all developers face is that “I need to learn it all”. “OMG I have so much to learn!”. But the sad truth is, *You will never learn it all*. You’ll always get the imposter syndrome, it’s fine. Happens to the best of us. 

Disclaimer: Note that its meant for beginners and many of them get stuck just choosing stuff. I’ve just helped them decide faster. Also, none of the links are affiliated and all are just recommended because I learnt through them.

If you liked this blog post, make sure to 💖 it. This will help push it into the algorithm. If you liked it A LOT, [Follow me on Dev.to](https://dev.to/dhravya). Helps a LOT.

Connect with me on twitter: [Twitter.com/DhravyaShah](https://twitter.com/dhravyashah). I’m trying to reach 100 followers to get some motivation... (im dumb to think that no one reads my tweets so why write them oof)