7 things I wish I knew when I started programming
Tags: programming, beginners, career, codenewbie
Published: 2021-06-04 14:24:32

## Introduction

My first contact with programming came at about the turn of the new millenium. Visual Basic 6.0 had a fancy user interface designer where you could just drag and drop buttons and stuff and it would create them for you. Double clicking an element took you to a white screen where you could write code which would be executed when you clicked that button.

I was mesmerised.

Since then I've completed my degree in Computer Science and have worked professionally ever since. At the beginning of my career, some of the things I expected from it proved me wrong. Here are 7 of these things.

## 1. There’s so much more to software development than staring at a screen all day

When I heard the terms "programmer" or "software developer", one thing came to mind. Someone who sits at a desk from morning till midnight, staring at a piece of code and trying to make it work. And while it is a large part of a developer's life, there is *much* more to be being a software developer than that. This includes:

* Learning new things
* Mentoring other members of your team on technologies you are more knowledgeable about
* Team activities and ceremonies (stand ups, retrospectives, sprint reviews etc...)

## 2. It’s physically impossible to know everything. Google is your friend

Did it ever occur to you that you didn't know something but you felt bad looking it up on Google? Happens to all of us. But, picture this: Think of every single programming language in existence (old and new), and all its libraries, frameworks and APIs. How possible is it that you'll know *everything*? Impossible! You're not expected to know everything no matter what you've been told. Google is not only OK to use, it's your gateway to all this knowledge! It's an indispensable tool you are *expected* to take advantage of!

## 3. There are more languages out there than the ones you started with.

Just because you learned one language and focused on that one during your degree or bootcamp, doesn’t mean you’re doomed to only know that one for the rest of your career. Broaden your horizons, it’s easier than you think.

## 4. You’ll be working on legacy code more than you’ll start new projects

You’re probably used to starting from scratch for each assignment you’ve been given. The reality is that in the real world, you’ll mostly be fixing code someone else has written. Get used to it.

## 5. Write code that will be read by others

On a similar note, code that you write will be used and expanded on by other developers, and you won’t always be there to explain it to them. Write good code, test your code, make it readable for others.

## 6. Burnout is a thing and taking a break will be the best thing you can do for your career 

Burnout is something more or less every software developer will face at some point in their lives. The healthiest thing to do in this case is to take a break. Your health (physical and mental) is important. Take care of it!

## 7. The things you build will be used by humans. So keep the person who is going to be using your product in mind in everything you create!

We often think of programming as the relationship between a human and a machine. We give instructions to machines and they execute them. At the end of the day, however, it's humans that will be using your product. It's humans that will be looking at your code and maintaining it. So don't code for machines, *code for humans*:

* Create accessible products
* Write clean code
* Write tests
* Design easy to use products!