It's easy to see all the amazing pictures of developer setups on Instagram and the beautiful backdrops that YouTube streamers and Udemy instructors have and feel like you need all that to be a real developer as well. It’s also easy to hear about what people learned on their computer science degree and feel like you’ve missed the boat or that your career as a marketing lead or firefighter leaves you short of the technical creds needed to be a developer.
The truth is you need very little to start learning to code and become a developer, it is potentially the most accessible well paying career in history. Before we cover off the things you do need, let's look at the things you definitely don't need.
A degree. You thought this was just going to a be a silly list of gadgets didn't you? Nope, we are tackling the big stuff here. You really don't need a degree to learn to code, the demand for developers is so high at the moment that anyone from any background can learn to code and get a developer job if they have the right skills. Need proof? Just listen to every episode of the Career Switch To Coding podcast to hear people say that demand is sky high!
Lots of money. With the obvious exception of having access to a computer and the internet you don't need much else. Enough money to be able to get by day to day and have food, shelter and power and you're good to go. Sadly this isn't a given for all of the world but, if you are here reading this then you probably pass the bar.
Lots of time. Eventually you are going to need a decent chunk of time to learn to code but, to get started and make significant gains you only need 15-30 minutes a day. Doesn't sound like much does it? I know, but if you multiply that out across a full year that is 91 to 182 hours. Imagine how much you can learn in that time. YouTube videos while the kettle boils, blog article when waiting for the bus, 10 minutes on CodeCademy at the end of the day. It all adds up!
To be good at maths. I'm not terrible at maths but I'm also not all that good at it, I can get by. Most programming tasks can be accomplished with simple arithmetic and decent logical thinking, it’s more important you can imagine a process or flow of information than it is that you can do partial differential equations (I certainly can't!)
Gadgets. Tech Instagram and YouTube is full of LEDs, mechanical keyboards, fancy mice, Apple stuff and fancy chairs. You don't need any of it to learn to code and change your life, all of that is a distraction to gain more attention on social media.
- A modern-ish computer. You don't need a top of the line MacBook or Razer gaming machine, you need something with 4 or 8GB of RAM, a sensible storage drive (100GB+) and a processor released sometime in the last 5 years. If you are really tight on money then speak to your local repair shop, they might be able to put something together for you from spares. It doesn't need to be a laptop, if you go for a desktop then you will also need to factor in a monitor so don’t get fooled by the cheaper price.
- An internet connection. You will need access to the internet to realistically learn to code. This wasn't the case in the past, and some purists may still argue this with me. Even if you can learn everything with sporadic internet access and books, you will still need to develop the skill of "Googling" at some point because it is key to a developers problem solving tool box.
- A basic grasp of English. I have the huge privilege of being a native English speaker so I can't exactly say to what level you will need but, given the world’s most common programming languages use English based keywords it's a given you will need to know the meaning of at least those words.
That's it, everything else is a nice to have. I didn't even use a desk when I learned to code. I sat on a second hand sofa in a house that I couldn't afford to run the heating in, wrapped in two blankets on a 5 year old computer.