Dos and Don’ts for a Code Newbie
I recently attended a coding workshop hosted by the wonderful Node Girls in London where I was asked to give a talk about my journey into the technology industry.
I gave a fairly honest and humorous (or so I’m told!) account of how I started learning to code, things I struggled with and a few tips and tricks that worked for me.
After I got over my I-didn’t-do-Computer-Science-at-uni-so-I-will-never-become-a-developer phase, I finally took the plunge and started learning how to programme. This was almost a year ago and overall this experience has been extremely rewarding and simultaneously, a huge learning curve.
I have gone from almost quitting after multiple failed attempts to change directory as my slashes were messed up to feeling remarkably pleased with myself for remembering how to create a superuser in Django without having to look it up (it’s ‘createsuperuser’ so it’s not exactly rocket science but please don’t take this away from me).
Given the positive response from everyone following my talk, I decided to put together a quick blog post about what I shared on the day and a list of some Dos and Don’ts I stand by, which hopefully will be helpful for people new to coding and programming.
Dos and Don’ts
Do research beforehand.
Don’t blindly start following the first tutorial you come across on the internet, only to realise after a good few hours that it was written more than ten years ago and is full of deprecated commands (something which I may or may not have done). If solo learning isn’t your thing then find local meetups or coding courses near you. Surround yourself with like-minded people. This will give you that final nudge you need to start learning properly.
Do keep the big picture in mind.
Don’t get so caught up in the low-level detail that you are blindly running commands without understanding what you are trying to achieve. If you come across terms you don’t understand and don’t want to look up immediately, then make a note of them and do a quick Google search when you get a spare minute.
Do break things down.
Don’t go in all guns blazing aiming to create a complicated web application in a new language from scratch and deploy it all at once. Take a step back and start off with making a very basic application, making sure you are comfortable with the ins and outs before moving onto the more advanced stuff.
Do ask for help.
Don’t be discouraged by errors and blockers. If you are seeing it, the chances are someone before you would have seen it. Google and Stack Overflow can be massively helpful if you search for the issue you are facing.
Do read the console.
Don’t be put off by what appears to be a mystifying monochromatic muddle aka the console. More often than not, the console will not only state the type of error being thrown but also suggest potential fixes you could try.
Do use version control.
Don’t have a folder entitled ‘Backups’ on your desktop and paste some files in there once in a blue moon. Use a Version Control System like Mercurial or Git (Question: Did I add this partially so I could plug my blog post about Git? Answer: A strong maybe).
Do things at your own pace.
Don’t compare yourself to others and especially don’t be discouraged if it took you a week to follow a ‘simple tutorial’. That’s how you learn. Instead, focus on the fact that you have learnt something you previously did not know and that you have created a fully functioning application from scratch.
Do make time to code every week.
Don’t take a long hiatus — you will forget what you learned. Just like any other language, coding languages are easy to forget if you are not using them regularly. Set aside an hour or two each week. Make it a priority.
Your non-techie friends will initially hate you when you bail on nights out last-minute because you can’t go out as you are ‘trying to run a Kubernetes cluster’ at the weekend but who needs friends when you have XKCD comics for procrastination purposes, am I right?!
(Disclaimer: That is an attempt at a joke. Be nice to your friends, they will bring you food after you have been chained to your desk all day, drowning in Java exceptions). But soon, they will understand, coding is a priority for you and who knows if you are lucky, they might even muster a feeble smile at your cleverly crafted tech jokes (mine don’t, just FYI, but a girl can dream eh).
Finally, if you are thinking about learning how to code, I cannot stress enough how satisfying it is when you write a piece of code that works. Whether it is a simple Hello World app or a fully functioning blogging system, the key thing to take away is that it’s yours… you made it work! And that fact alone more than makes up for all those times fixing broken code was prioritised over Saturday night dinner and drinks.
Happy coding everyone!