Posts

Showing posts from October, 2025

My 4th book is out: Diego Pacheco's Software Architecture Library (SAL)

Image
I wrote my 4th book! Diego Pacheco's Software Architecture Library (SAL). This book is free; it's me giving back. I hope you like it. It's my first git book. Architecture is one of my passions; this book will help you in your journey. If you are not an architect, this could be a good starting point. If you are already an architect, it could be a chance to learn something new. You don't need to be an architect in order to do architecture. So even if you are an engineer or an engineering manager, this book might give you food for thought. This book is Free.

Testing Mocks

Image
One common mistake engineers make is to test mocks. However, would you know what the right principles are and how to spot good or bad tests according to these principles?  IF you don't have first principles, you are very likely shooting into the dark.  In Brazil, we have this metaphor that if you play chess with a pigeon (I will use a chicken in this post), you will very likely lose because the pigeon does not know what it is doing and probably will be upset with you for whatever you say. People say if you truly know, you know how to explain. Well, I will go further and say IF you truly know you extract first principles and explain with those principles, so your explanation is short, concise, and direct. Otherwise, you are a chicken on a chessboard just doing random things you don't fully understand.

It's All About Attention

Image
No. This is not a blog post about AI. However, this title could be easily confused with a famous AI paper about transformers, Attention is All You Need ( https://arxiv.org/abs/1706.03762 ). Perhaps the machines know something we dont. In all seriousness, attention or focus is really a prerequisite for engineers. In order to understand complex tasks, make sense of complicated systems full of technical debt and anti-patterns, and reason on vague Jira tickets, engineers need focus. Without focus, basically, it's impossible to do engineering. Time drags you down, and what should be 1-2 days turns into weeks or even months. It's possible to get things done without really understanding what's going on. Software is about layers and layers of abstraction; nobody understands all the things in the universe. However, engineers think it's fine to move forward without solid foundations, and that's a huge mistake. IMHO, it's an attention issue. Imagine you are driving, you d...