Around this time last year I started learning the basics of code in my spare time, and sure enough found myself working as a professional developer just 7 months later – with no CS degree, no bootcamp, and no clue.
So if you’re reading this you’re probably thinking: how on earth did that happen?
Well, my thoughts exactly.
In this article I’ll share what I did in those initial 7 months leading up to my first ever dev job. I’ll also include lots of resources I found helpful along the way, and bits of advice that I wish I had taken on sooner.
If you’re a fellow coding beginner aiming to make a similar career change into web development, my hope is that this article offers you some guidance…
(If you haven’t started coding yet but want to find ways to begin, you might find my previous article a little more helpful, which includes lots of insights on how to take that first step towards learning to code.)
So, lesson number 1:
🐣 Share your interest early.
When I seriously started thinking about programming, the first thing I did was talk about it.
I asked my friends and family if anyone knew any developers who’d be willing to chat about their jobs, and ended up meeting so many smart and creative people who gave genuine, practical and (most importantly) varying insights.
The key here is to try and meet as many different kinds of developers as possible. If you can, speak to people with all sorts of interests and specialties at various stages in their careers. This kind of access can unveil the variety involved in programming, and you can use it to demystify the idea of coding as this big, scary thing.
Another good habit to pick up early is to constantly:
I asked developers some of the most basic things like:
- What the hell is GitHub?
- Do you really not need a computer science degree?
- Why is everyone always talking about React?
- What kind of tech jobs do you think there’ll be in 10 years time?
👋 And go to meetups.
If you’re lucky enough to live in a place like London where there are plenty of meetups happening – go!
This is great practice early on not only because you might get to have human beings guide you through coding problems, but because it lets you meet with organisers, coaches, bootcamp students, etc. etc.
By going to meetups you can also build up your network in the industry and hear about potential job opportunities suited to your skill level.
Some of my favourite beginner-friendly and inclusive meetups include:
- Codebar. This is an amazing weekly meetup with over 20 chapters worldwide, where you can work with coaches and really get stuck into your code (they also run virtual meetups for those who can’t make it to events).
- Ada’s List. This organisation runs friendly monthly meetups in London alongside a virtual community online, offering women a great way to meet other women in tech (and not just coders).
- 24 Pull Requests. This annual event (also in London) is a lovely place to contribute to open source projects, and includes an introduction to Github – very handy for beginners.
🏃♀️ Next: Play the field.
For ages, I thought the first thing I had to know about code was what language I wanted to learn. But not only is it ok not to know where to start, I actually think it’s a huge advantage.
There are so many languages and topics out there, and while this can definitely be overwhelming as a beginner, you can also make the most of your naivete and just try it all out without getting too preoccupied with all the surrounding jargon (for instance, you don’t need to know the entire history of CSS to just play around with it) – which leads me to my favourite bit of advice from those initial 7 months...
😈 Be bad.
When I first started I was so scared of how bad I was going to be. And one of my biggest revelations since then was: nobody cares.
Of course you’re going to be bad at it! You’ll be terrible. But, having a beginner status gives you license to suck at everything, so use it while the stakes are low. Enjoy being terrible – it’s fun, and freeing.
👩💻 Do the tutorials.
When you’re trying to level up from total beginner, tutorials are great because their format eliminates the problem of having to figure out what you want to learn and how you want to learn it (while you’re actually just trying to learn it).
Some of my favourites include:
- Any of the Codebar tutorials (great for learning different languages from scratch)
- Rachel Andrew’s video tutorials (awesome for learning CSS grid)
When it comes to tutorials though, try and understand how you learn best and don’t get bogged down in one method or approach just because it’s the most popular or it was suggested to you.
You might not know much about coding at this stage, but what you do know is how you learn best. So trust your own judgement here.
Here are some different learning methods that have worked well for me:
- freeCodeCamp curriculum. Byte sized exercises for different languages, great for when you need a break from heavy tutorials and want to play around with something a little lighter.
- CSS Diner & Flexbox Froggy. Two fun games that are great for helping you get to grips with CSS selectors and practicing flexbox layouts.
- Codepen. A coding playground where you can look at people’s projects alongside their code, letting you to connect the dots between the two.
👀 Be a copycat.
Soon enough, you’ll feel like it’s time to build something a bit more substantial. And a really fun way to do this without feeling overwhelmed is by trying to replicate cool stuff you’ve already seen (you can browse some cool looking website here). And as you do this:
🤔 Know why.
If you’re building your first ever website, before you even get to writing any code remember to ask yourself why. Are you doing it to:
- Just fill up your portfolio?
- Learn a particular language?
- Try out different hacks you’ve heard about?
As a beginner, your main reason for building something is probably to learn by doing so your website or app is just a means to an end. It’s the byproduct, not the goal. Remember that.
Knowing this distinction is crucial to learning effectively, especially if you’re teaching yourself because as you’ll quickly learn: everyone’s got their own way of doing things. For instance if you’re building a website as a way to learn flexbox, then don’t let someone talk you into using Bootstrap.
If someone tells you there’s a quicker way to achieve a goal they may be right, but they might not have clarity on what the real aim is.
🗣 So articulate it.
First to yourself, then to others, and then make your own decision about how you want to go about it. This part might seem super obvious, but in the midst of soaking up all that information, it’s all too easy to forget.
💆 Then chill.
The great thing about self-directed learning is that you decide the whats and the hows right? Well, another great thing is that your deadlines are made up by you, and if you don’t meet them, nobody cares. So give yourself a break!
⚡️ Stay inspired.
This learning process is twofold: on one hand you need to spend time figuring out the technical minutiae in your code, and on the other you need to look around every now and again and see what other people are doing.
Blending these two approaches gives a great holistic perspective on your learning, and helps mitigate the stress of getting caught up in all the details. Here are some tips I found useful in my first 7 months:
🎤 Go to conferences.
- You Got This. This is a UK-based event specifically for developers in the early stages of their careers. I went to it without ever having worked as a developer, felt totally comfortable there and left ready to get stuck into some code.
- New Adventures. This Nottingham-based conference provides a less technical, more meta approach to tech and where it fits into the world these days. With varied speakers and far-reaching topics, it’s super inspiring.
📚 Read up.
- freeCodeCamp (of course)
- Codebar (they run a great series of interviews with self-taught developers)
- A List Apart (publishes a huge range of topics from design to coding to career progression)
- Smashing Magazine (features articles, books, events, jobs – you name it)
👣 Follow people.
- Mandy Michael – has a lot of seriously cool stuff on Copeden.
- Rachel Andrew – gives loads of inspiring and practical talks, many of which you can find online.
- Jen Simmons – has a rich Youtube channel full of insights on design and developing.
- Saron Yitbarek – founder & CEO of CodeNewbie – total boss.
And that’s essentially it. Looking back over the last year, I’ve come to realise that these core lessons were what sustained me as I went from being a copywriter who had never looked at a single line of code, to working as a full time developer.
So if you’re thinking about switching careers but are worried about committing to such a big change, try breaking it down into these smaller goals and challenges.
If it can work for a woman who had absolutely no clue what she was doing at the time, it can surely work for you. So please: use these lessons learned, tailor them to your own learning style, and get after it.
If you want to get in touch or keep up to date on future articles, talks and events, you can follow me on twitter here: https://twitter.com/niamhmccoo