Five Lessons From a New Programmer For a New Programmer
up:: Blog
Date: Aug 28, 2021 About a year or so ago I got into programming. It is amazing to harness the power of your laptop but also frustrating to get started, daunting even. Here are the five things I wish I knew when I started coding.
Learn things properly
When you’re just getting started, there is an ocean of unknowns. My initial strategy was to navigate as I usually do on the internet: Googling everything. Copying code snippets from StackOverflow. Reading obscure blog posts on “how to do x”. That solves your problem for the short-term, but what you want to do instead is to get a proper map of your terrain.
That’s where courses come in. They get you the foundations in a way that makes sense. I can’t believe how long it took me to understand simple concepts like dot and bracket notation when learning JavaScript. Once I understood the basics, a whole world unlocked for me: Instead of scrambling on Google, once I understood the foundations I wrote my own code instead of trying to understand other’s.
And the best thing: there are dozens of good, free ones. I have made good experiences with Free CodeCamp.
Master your tools
Your Text Editor is your workbench. If you haven’t yet picked one, VS Code is a good choice. Text editors are build to be efficient: By knowing a handful of hotkeys, you become a keyboard ninja in no time.
Here are some common tasks you can learn to do with keyboard hotkeys1 :
- Move lines up and down,
- duplicate lines,
- open (fuzzy find) and save files,
- reformat indentation on a file,
- find and replace across files using Regex.
These simple hotkeys will save you significant time in the long-term.
GitHub
Coming into programming, GitHub blew my mind. A place where you can store all your code, jump back in time and share it – and all for free!
Keeping your code in sync with git will have you pick up good habits. These three skills will get you started:
- Know how to initialise a repository,
- know how to use branches,
- know how to push and pull. (You can see some snippets at Git)
GitHub saved my code from disaster more than once. That’s a handy segue into:
Back up your stuff
Your code is your gold. You want it to be as safe as in Fort Knox.
It can happen easily: Coffee break in the office. One clumsy arm movement of mine. My whole laptop is covered in liquid. Instead of freaking out about hours of work lost, I knew all my code sat securely on a USB stick.2
Save your work against coding or coffee accidents by backing it up
- locally (on a hard drive or USB stick),
- remotely (on Git) and
- in a drive (like Dropbox).
The serenity of having secure backups will allow you to be adventurous and caffeine-fulled in your coding!
Keep a snippet library
When getting into coding, you will find that there are certain things you keep writing again and again.
In my early days of AppleScript automation, I would google the syntax for a dialogue pop-up every time. Don’t make the same mistake but instead keep your own snippet library.
Copy the code you keep re-using and save it in your notes. I love Obsidian for that matter and have a page for each language I work on (See: Programming ⚐). Not only do I find the code in my personal library but I also see my progress!
Beware the rabbit holes
Coding can be frustrating. You need a certain resilience against frustration and a passion for problem-solving. However that passion can give you tunnel vision sometimes.
I was working on a personal project to import books into Obsidian. I coded a template that would fetch the data of a book from the Google Books API. Then it would create a new note. However, for the life of me I couldn’t figue out how to get a high quality thumbnail link. I sunk hours and hours into this problem. Finally I asked someone on the Obsidian Discord how they did it. “I just copy the image link from Google” was the answer. Sometimes simple suffices.
When you’re stuck for hours on a problem, walk away. Look at the bigger picture. Ask others. Then come back and solve it simply.
Keep coding, keep creating
Thank you for reading! This is the advice I wish I had when starting my coding journey.
If you have feedback, no matter if you’re a novice or seasoned, simply get in touch!
Footnotes
-
Inspired by Evan Travers’ Five Things I Tell Every New Developer to Learn. ↩
-
Luckily the laptop survived as well. I am writing this post on it now! ↩