How To Become The BEST Developer!
Tags: programming, tutorial, beginners, computerscience
Published: 2022-09-22 07:15:41

###### Table Of Contents
* [Intro](#intro)
* [Learn Concepts](#1-learn-concepts)
* [Use Comments And Write Clean Code](#2-use-comments-amp-write-clean-code)
* [Build Good Principles](#3-build-good-principles)
* [If There's A Bug The User Will Find It](#4-if-theres-a-bug-the-user-will-find-it)
* [Finish Projects Don't Start New Ones](#5-finish-projects-dont-start-new-ones)
* [Follow A Structure](#6-follow-a-structure)

### Intro
I've been coding for about 4 years now. And I would definitely say that I learned a thing or two( especially from all the dumb mistakes I made). So I thought I'd share my knowledge here.

Here are the tips & tricks you can use to become the best **developer** possible.

There's a video version of this blog, you can see it [here](https://www.youtube.com/watch?v=KDiVbZG7FjU).

---

### 1. Learn Concepts
Don't try to remember **syntax**. It's **_impossible_** to remember everything. 

And don't be ashamed if you're 5 years in googling `how to center a div`( if I'm going to be completely honest, I'm 4 years in, and I google JavaScript loops, ik). 

**There's just too much code to memorize.**

Instead, **learn concepts**. Learn theory, learn how and why something works the way it does. This way you have longevity. This way you can make projects that count!

Here's a list of concepts you should learn:
* OOP( Data Structures & Algorithms)
* System Design( UI Design If you're a frontend dev)
* Sync Vs. Async
* Version Control
* etc.

---

### 2. Use Comments & Write Clean Code

Remember This Quote:

> Code that's hard to **understand**, is hard to **maintain**.
>
> Code that's hard to **maintain**, is **useless**.

Writing clean code goes a long way. At first, you might think it's a waste of time. But in reality, it's the best long-term thing you can do as a coder( coding a project).

If you understand what's going on in your code( which is already hard to do) or at least have a general idea, then you can maintain that code.

If you don't know what's going on, you don't know how to fix your problems.

With clean code, you can pinpoint where a bug is **10x faster** than with bad code.

---

### 3. Build Good Principles

Similar to **Writing Clean Code**, building good principles is what can save you from a ton of unnecessary work.

Good principles give you longevity and make you good at your job.

This goes a long way, but here are some principles you **need** to follow:
* K.I.S.S. ( Keep It Simple Stupid)
* D.R.Y. ( Don't Repeat Yourself)
* Ask Questions
* **Don't** Hard Code
* **Don't** Use Magic Numbers

---

### 4. If There's A Bug The User Will Find It

I'll keep this one quick and simple.

**Test Everything**.
**Debug Everything**

That's the name of the game. If a User finds a bug( which they will, if there is one), it could lead to a chain of events you wouldn't like.

You could maybe lose users. God Forbid, that their Credit Card info gets leaked. I can go on and on.

---

### 5. Finish Projects. Don't Start New Ones.

Every programmer has done this at least once. Starting a new project, mid other project is our specialty. 

But that's very destructive. For one, you're building bad principles( rule no. 3). And you're missing the whole point of being a developer. Finishing your work.

> **Remember**: People hire you to finish projects!

No one wants you to start( well they do), they want you to **finish** projects.

**That's why you get hired.** That's the whole point.

At the same time, you learn way more from finishing projects than from starting new ones.

> You might be the best at starting them. But no one cares if you can't finish them!

---

### 6. Follow A Structure
I was originally going to have 5 tips here, but here's an honorable mention.

Following a structure ( I've said this a million times now) goes a long way.

This can save you a ton of time.

The best devs, think 5 moves ahead, they have an idea of how things will go.

If you're a beginner, it's going to be hard to do this. It's ok, you'll learn with time.

However, it's important you follow a plan!