Best Advice for a New Programmer
Tags: javascript, beginners, programming, webdev
Published: 2022-09-30 08:43:42

When I first started programming, I felt like I had to constantly prove to people that I was good at it. This put unnecessary stress on me and caused me to revert back to behaviors from my teenage years of floundering at math, science and English (“I know I failed all those classes, but at least I tried!”). 

Talk to any developer who's been in the game for a while, and they'll tell you how much the field has changed over the years. 

### Programming is no longer just about the code — 
now it's about our ability to communicate with stakeholders, co-workers, and clients. 

Thankfully, most of us are good at talking to other programmers, but when we start dealing with a less technical audience, things get a little trickier.

Here's what advice I wish someone gave me when I started programming:


## 1. Have your reason, and remember it

If you want to start programming, there has to be a reason for that. Whether its that you love writing code, you want to have a more lucrative career, or that you are doing a bunch of Excel work and you want to make that more efficient. Keep track of that reason; programming is hard, and you will get frustrated sometimes.


## 2. Build a solid foundation

This may be a unique piece of advice, but I think its really helpful. Before you start writing code, if you haven't looked at math in a while, I would revisit the concepts from Algebra 1. Most of programming is built on algebra 1 math -- i.e., functions and variables. Understanding these concepts outside of programming will be super valuable in the future.


## 3. Find a community

Another thing that will be really helpful is finding a community to support you as you start writing code. This community will be valuable because other people will be in the same place as you, offer resources that helped them, and offer encouragement. I would suggest finding a meetup in your area as the top solution here, even small cities tend to have a group somewhat nearby.


## 4. Break down problems into smaller ones

One of the most important parts of programming is taking a large problem and breaking it into smaller and smaller pieces until those pieces are solvable. If you are looking at a blank text editor not knowing where to start, it may be because you haven't broken down the problem enough!


## 5. Pseudocode

Related to the previous point, a lot of times it is beneficial to write down in detail what you are trying to do in plain words before even trying to write code. This process is called pseudocoding, and it can take whatever form you want it to.


## 6. Embrace the cycle of learning

If you're learning to code as a second career, especially if you've been away from the classroom for a while, learning how to learn is going to be a big part of your process. There are lots of ups and downs involved, which is very natural!


## 7. Start with free resources

There are a million and one resources for learning how to code. Some are free, and some are paid. I would start with the free resources, make sure you like writing code, and then after that, you could think about moving onto paid resources or even a bootcamp.


## 8. Find your niche

There are a lot of worlds within programming, find one world that you love and focus on that. Instead of trying to learn 8 programming languages, frontend and backend, compiled and interpreted languages, all the text editors and developer tools, etc. Find a few things you are really interested in and get good at them.


## 9. Get good at pattern recognition

Recognizing patterns in code is one of the most important skills you can have. When people talk about writing "DRY" code (i.e., Don't Repeat Yourself) they are talking about reducing the patterns in your code.


## 10. Make good habits early

It will be easier to write clean code in the future if you get into the habit early. Bad habits can be hard to break. Here are my tips for writing cleaner code. If you are doing web development, running HTML and CSS validators on your code can tell you exactly what to fix!


### To sum it up

Like it or not, there is only one way to describe becoming a software developer: hard work. 

You're going to spend countless hours in school if you attend, and even more sitting at home typing away at your computer screen if you do it all on your own. 

Sure, there will be moments where everything just clicks, and suddenly your world makes sense. You'll feel inspired and motivated, knowing that you've found what you were looking for.

But in the end it's still going to be hard work. I'm not trying to discourage you from learning how to code –quite the opposite. 

What I'm saying instead is that you should expect this journey to be difficult . If it wasn't hard, everyone would be doing it.

______________________________

I love jotting down my thoughts on my blog [Sleepless Yogi](https://www.sleeplessyogi.com/).

Follow me on Twitter [@sleeplessyogi]