Claude Won't Be There
Why you can't rely on AI to handle security - when things go wrong, you'll be in the incident call alone.
Harry's code, bugs and quick hacks - A developer's journey through JavaScript, TypeScript, React, and modern web development
Why you can't rely on AI to handle security - when things go wrong, you'll be in the incident call alone.
A reflection on finding happiness in the present moment and making conscious choices about how to live life. Why these are the good old days.
Talking about goals isn't enough: you need to actually do the work.
The current AI revolution isn't the endgame for software developers: it's actually a force multiplier that makes us more effective.
How a team of students with zero degrees and spaghetti code outperformed lecturers in Google Hashcode. A lesson in valuing outcomes over perfection.
Reflecting on the redundancies at RS Group—how leadership failed during a tough time, the impact on friendships and teams, and a tribute to the brilliant engineers I was lucky enough to work with. A sincere look at lessons learned and the sadness of seeing it all change.
Remote code reviews bring a unique challenge: how to deliver feedback that’s constructive without losing warmth. This post explores an approach that combines clarity and empathy to make code reviews feel supportive, not critical.
I never wanted to be “another engineer”, but that’s exactly my title. Work is better than ever. Although the journey looks like junior, senior, principal/manager, it’s so much broader than that.
Software versioning isn't just an increasing number. I've put together some notes and thoughts on how we can track changes and releases usefully.
Reading large files from S3 can be a challenge, especially when you're constrained to a platform like AWS Lambda, and your language is Node. This post shows how you can overcome memory limitations and efficiently process data using streaming techniques.
How do seasoned engineers shape organizational standards and principles? Is a Principal Engineer just another level above a senior engineer? What makes them so different?
Nest is an excellent, stable API framework for Node. Designed for general backends, it can be a challenge cramming everything in to a Lambda.
The tools I use to get my jobs done in the way that I find efficient. It’s time for a better approach than /uses
It's a bit of a hot take, but you'll find there's a nice citrus undertone that tickles your keyboard
The AWS of pharmacy has just shut down it's UK operations. I've handed in my notice.
Typed errors can be a pain in TypeScript. We can draw a bit of inspiration from Rust (and not Java!) to make expected errors easier to work with.
Github actions have a 'local' option with plenty of potential. This post illustrates how I added them to a monorepo
Too much content! Gatsby doesn't easily let you paginate given it's build process, but you can hack it out with the right pointers
Some of the things that we can do with AI is awesome, and scary. I had 0 experience with AI - let's figure it out together.
I used WebRTC (Peer.js) to develop a small, distributed alternative to Zoom (for two participants). We can call, video chat and share screens.
How to locally develop netlify serverless functions - with Gatsby!
You can game the system: Measure how much fuel you need in a day and stick to that.
Hacking together my own Spotify Wrapped via their APIs. I love OAuth - the implicit grant lets you throw something together pretty quickly.
I built this web sight all by myself. Welcome!
I wrote a node program that took >100GB of memory. It didn't even use Electron.
I went offline. Unplugged. Ghosted. It was a terrible experience and I'd totally do it again.
How I (and why) migrated this mighty Gatsby site from Stateful Components to Functional Components.
How to implement a functional progress bar in any React/Preact website - like this one here!