matt@mbrookson:~$ ls ./writing
Notes from the workbench.
Software design, teams, developer experience and the occasional useful detour.
macOS missing xcrun after upgrade
How to resolve the infamous missing xcrun error
Pagination Pitfalls: Preventing Data Loss
Learn how to prevent missing rows in paginated database queries.
The most productive tech-stack I've ever used
A modern tech-stack for rapid software prototyping and development.
Is fragile software harming your user retention?
The importance of resilient software in relation to user experience and retention
Designing resilient software architecture with the Transactional Outbox Pattern
Supercharge your software's resiliency with this powerful design pattern
Language matters: The power of ubiquitous language
How ubiquitous language can improve your software development experience
The secret to writing code that speaks for itself
Discover the benefits of well-written, self-documenting code and how it can make your development process smoother and more efficient.
The value of value objects
How value objects can take you beyond primitive types, adding meaning to your code and reducing bugs
What is domain-driven design?
Complex software, simplified
Tell, don't ask
An approach to domain-driven code refactoring
Life at Artlist - 6 month retrospective
What is it like to work at Artlist and what have I learned in my first 6 months?
Set your engineering team up for success
Ensure your engineering team has the tools and processes to achieve their potential.
An unexpected turn of events
How I dealt with redundancy and focused on the future
Level up your terminal
How to add useful plugins to your zsh terminal to improve your setup.
2021 MacBook Pro - Initial Thoughts
My initial thoughts on the new MacBook Pro with the M1 Pro chip.
Is the M1 MacBook Air suitable for software development?
My review of how well the M1 MacBook Air performs as a daily driver for software development.
Are your tests valuable?
A look into how to write valuable tests in your projects.
Getting into a software career
Tips for learning to code and beginning a career in software.
Working from home
Successfully work from home while maintaining a good work/home life balance.