Skip to main content

Command Palette

Search for a command to run...

My fiftieth post, welcome back my robot friend and merge conflict hell

Weekly roundup for the 24th of April 2026

Published
5 min read
My fiftieth post, welcome back my robot friend and merge conflict hell
D
I'm a Senior Engineer working at Octopus Energy. I love diving deep into big problems and surfacing with a workable solution. I also love making my own garments, cooking, crafting and gardening.

This week finds me feeling tired but satisfied - the migration I've been working on this week and last is going as well as can be expected and I'm feeling fairly optimistic about it. With that being said, we've still got a lot of work ahead of us, so we're not out of the woods just yet. I'll be making sure to relax this weekend to properly recharge - it's looking like it's going to be a nice one so you'll probably find me in the garden! Anyway, let's get this roundup done so I can enjoy the remnants of sunshine this evening.

This is my fiftieth post

I've surprised myself by managing to post fifty times on this blog - it started off such an intermittent thing that I never would have thought I'd get there. I'm enjoying writing out my thoughts about tech, writing the odd book review and occasionally doing a deep dive article on a specific topic. I'd quite like to do more technical deep dives, but these require a bit more planning and I've really just been writing when the inspiration strikes, so I'll have to think about how I can make that happen. I've got drafts started on Panda CSS, Tanstack Start, Next.js app router and more, so fingers crossed I'll get to them eventually! It's good to have a weekly cycle - it forces me to write about something and it's also stopped me being quite so perfectionistic about my posts. Crafting a long technical deep dive that leaves no room for confusion and teaches everything in an accessible way is hard work and while I enjoy it, I also just enjoy putting my thoughts on the page as I go. Hopefully you've all learned something from my weekly posts too, even if it's just a bit of an insight into my week as a software engineer. Here's to fifty more posts I guess!

I love you Claude 💜

Okay, that might be a bit extreme, but I've been forced to use Copilot for a while and let me tell you, it has been painful. I finally got Claude Code back on my machine yesterday and oh my gosh it has made such a difference. I like Copilot as a PR review buddy, but as an agent, it just isn't all that. In fact, it was getting on my nerves something chronic - Copilot was a lot slower at getting to solutions and would need significantly more prompting than Claude. It also seemed to get stuck in loops much more easily and repeatedly suggest solutions we'd already discounted. So yes, I am extremely grateful to have Claude Code back in my life and no, I never thought I would be saying that. One of the things it did that I was most impressed by was diagnose an issue we had with our styled-components library, whereby we had several different versions installed that needed de-duping - this was causing an issue on the server but was running fine locally, so I was not expecting Claude's solution to work first time, but it did! Welcome back, my robot friend.

How to handle merge conflict hell

This week we spent most of our time trying to get our codebase in a place where it could be deployed to an environment for testing and it's been a tough one. We've been dealing with a fair few merge conflicts. One of them took us over an hour to resolve, at which point we called for a soft code freeze - anything that is not immediately required to be out on Production had to be held off because the context switch of a merge conflict was slowing us down significantly. Saying that, I feel like they are getting easier the more we do them and I've certainly found some new tips to share. One setting I'd recommend enabling in git is the diff3 conflict style, which you can enable using this command in your terminal:

git config --global merge.conflictStyle diff3

Initially I found it extremely confusing because it adds a third section in the middle of a merge conflict called "parent", which shows what the code snippet looks like on the parent branch (this would usually be main). Another tip is to ask the person whose work you're merging in to join you on a call and just walk through what you are doing with them, to make sure that you're not missing anything important. However, I think the main key to merge conflicts is not to panic - they can look incredibly complicated, but really you are just aiming to get to a point where your changes have been applied to the new work that is coming in and while this can be tricky, it's usually not as bad as you think.

Weekly roundups

Part 1 of 14

All my weekly roundup posts in which I talk about the things I've learned in a particular week.

Up next

Tips for big migrations, pairing effectively and are we forgetting how to CSS?

Weekly roundup for the 17th of April 2026