Living and learning together
I’m Michael Nelson, I write software, fly planes, explore science and love learning new things with people.
Short thoughts and updates
Longer-form learning when I have the time

As 2025 comes to an end, I’ve been thinking about my own journey to gaining my commercial pilot licence and multi-engine instrument rating. With all my (in)experience of 300 hours total time flying aeroplanes, below are my thoughts and tips for getting your commercial pilot licence. Your mileage may vary.
But first (and I will come back to this point throughout), if your goal is to fly aeroplanes and potentially earn money flying aeroplanes, then you have a long-term goal that will require a significant short-to-medium-term investment in terms of both time and money. This time and financial investment has to be sustainable - not just for you, but potentially for your support network as well.

I’ve been working in software development for a whilie now and have consistently chosen to stay in an individual contributer role because, among other reasons, I love working and learning together in a team solving problems with code.
So when I say, with complete honesty, that I have never enjoyed developing software more than the last six months or so while developing together with large language model agents, it’s not because I haven’t enjoyed software development in the past. I think it’s mostly because having an incredibly fast and knowledgeable coding assistant allows me to stay in the flow of the actual creative process (yes, for those unfamiliar with writing software, it can be very creative and fun!) - designing, learning and architecting the solution - rather than constantly deep-diving into the depths of some library or framework to solve some small blocker.
But the benefit of having an incredibly knowledgable, if some-what over eager, coding assistant comes with a lot of dangers and pitfalls as well. The same capabilities that make these tools powerful - their speed and broad knowledge - can tempt us to skip the learning process and generate code that we don’t fully understand, creating downstream issues for review and maintenance.
In this post, I want to highlight the benefits as well as the strategies to avoid the pitfalls, in a top-10 tips format. Hopefully it’s helpful whether you’ve thirty years experience or three.
Kubernetes, Rust, Python, Go, and cloud-native technologies. Building scalable systems and contributing to open source.
Commercial pilot, glider and paragliding enthusiast. Exploring the physics of flight and enjoying the freedom of moving in three dimensions.
Understanding quantum mechanics and the simulation of quantum computation on traditional computers.
Find me on these platforms or get in touch via email.