Friday marked the graduation date for the Northcoders 2024-sep-02-js cohort.
After an intensive 13-week deep dive into the JavaScript ecosystem, I get to say I’m a graduate and got a hoodie I am currently wearing as I type this. I got to spend this time working with some genuinely cool people, building everything from RESTful APIs to full-stack applications like NC News.
I had been eyeing these bootcamps for years but could never justify the cost, especially since I had already held tech-adjacent jobs that kept me sufficiently busy. So when the opportunity of a funded place came up after I left my last job, it was a no-brainer. What I didn’t expect was how much this would change my approach to learning tech.
The biggest takeaway? I can find quite literally everything I need to build whatever I want (within reason) in the documentation, without necessarily needing tutorials or bootcamps. Which is both liberating and slightly ironic given I’m writing this after completing a bootcamp. I spent years thinking, “I just need to do xyz course, and then I’ll know enough to build XYZ”. I now realise how futile an endeavor it is trying to fully understand every minutia of a framework, language, or tool before attempting to build something with it. Especially in the modern tech landscape, this approach is actually detrimental to building anything in my experience.
I should be careful to make the distinction here - I am not advocating for a gung-ho, rushed approach without any understanding of the tools you are working with, but it’s important to keep in mind that: 1. this is a marathon and not a sprint, and 2. you need to build projects. So learn enough to get started, then just start and do.
Of course I’m not suggesting there’s no value in bootcamps - quite the contrary. Over these 13 weeks, I’ve gone from writing basic JavaScript to building full-stack applications using React, Express, and PostgreSQL. I’ve learned about backend architecture methods such as MVC, and how to deploy applications that actually work in the real world.
Perhaps most importantly, I learned some fundamental skills that I wouldn’t have paid attention to otherwise. Pair programming and Test Driven Development (TDD) were heavily stressed and implemented throughout the bootcamp. I can honestly say these aren’t skills I would have sought to improve previously, but now I understand their importance in context. It’s one thing to be a one-man island and develop TempleOS (RIP Terry Davis), but usually, in the real working world, you’re going to have to work with groups of people. You’ll need to communicate your vision, guide others if you notice they’re going off course, and work in ways you might not be comfortable with.
The technical skills are crucial and non-negotiable - knowing how to structure software properly, but technical skills combined with collaborative abilities is what we should be aiming for.
I imagine software, hardware and their interactions will be a lifelong endeavor for me, but Northcoders has helped me validate my existing experience, build on it, and given me the official “start” I had longed for all these years.
Now to actually build something useful.