Developer Tools
Pydantic Settings: A Safer Config Option for your Python Apps
Environment variables are the default way many Python apps handle configuration. They are simple, portable, and work in every deployment environment. But as soon as you add more than a handful of settings, raw env vars become fragile and hard to reason about.
Pydantic used to solve this with …
Migrating from Poetry to UV in a Python Project
This is a very short post about our move from Poetry to UV in the Sudoku Solver we’re building in Python. I don’t have a definitive reason for switching, but I’ve been experimenting with UV recently and I’m starting to prefer it over Poetry. In this post, we’ll outline the goals of the …
Lazygit Series: The Commits Panel
This is the fifth post in the Lazygit series. You can see a list of all of the posts in this series by visiting the Lazygit Series tag. This week, we’ll look at how to best use the commits panel.
Lazygit’s commits panel allows you to track the hierarchy of commits in your …
Lazygit Series: The Branches Panel
This is the fourth post in the Lazygit series. You can see a list of all of the posts in this series by visiting the Lazygit Series tag. This week, we’ll look at how to best use the branches panel.
Lazygit’s branches panel allows you to manage the branching strategy for your project. You …
Lazygit Series: The Files Panel
This is the third post in the Lazygit series. You can see a list of all of the posts in this series by visiting the Lazygit Series tag. This week, we’ll look at how to best use the files panel.
Lazygit’s files panel offers a useful view of the state of the files in your repository, including …
Lazygit Series: The Status Panel
This is the second post in the Lazygit series. You can see a list of all of the posts in this series by visiting the Lazygit Series tag. This week we look at how to best use the status panel.
Lazygit’s status panel offers a concise snapshot of your repository’s current state, showing essential …
Managing Git Repositories with Lazygit: The Terminal UI Powerhouse
This is the first post in a new series about the Git GUI tool that works directly in your terminal: Lazygit. You can see a list of all of the posts in this series by visiting the Lazygit Series tag.
Let’s face it: managing Git repositories via command-line commands can sometimes feel cumbersome and …
A review of Python package managers in 2025
This is an overview of the current state of Python package management in 2025. You can find this and other posts by browsing the Python tag.
Package management is a critical part of modern software engineering. It allows developers to declare, install, and isolate project dependencies in a reliable …
How to use GitHub Copilot Free in Visual Studio Code
Microsoft announced on 18th December 2024 that they were introducing a free tier for GitHub Copilot. So what does this mean, how do you set it up and how can you use it? This post focusses specifically on the integration with Visual Studio Code, but you can use GitHub Copilot with any supported IDE. …
How I built my website and host it for free on GitHub Pages
There’s that now old adage that if you’re not online, you’re no-one. Perhaps that’s a bit harsh when it comes to a personal presence on the world wide web, but it certainly applies to businesses. In any case, I decided I wanted to get my own site up as it’s about time I …









