Daniel Antos profile picture

SOFTWARE DEVELOPMENT / ARCHITECTURE / TEAM

Driven by a deep passion for solving users’ problems while upholding technical excellence. I thrive on the collaborative spirit of programming, viewing it as a continuous team effort and an endless journey of improvement.

Comic: A person is paying attention to the meeting until they get interrupted by a phone notification.

Don't Put Your Phone on the Work Desk

My phone is the most distracting piece of equipment I have. In the pursuit of focus time at work, I started hiding and silencing it. This experiment has dramatically improved my productivity: I’m less distracted, I’m in the zone longer, and I have more motivation. I lost track of how many times I grabbed my phone to check something, only to find myself lost somewhere on Reddit. Receiving a funny meme during a meeting?...

September 26, 2024 · 3 min
Terminal window asking if user wants to commit vendor folder.

Maybe You Should Commit Everything You Need to Run Your Code

I’ve been committing generated code and vendor folders for over a year. I am delighted with the overall simplification of continuous integration, building, and deploying flows. They all complete faster and more reliably. Teams are happier and more productive with these changes. Let me convince you to give it a try! If you had asked me a couple of years ago what I think about committing generated code or third-party dependencies, I would probably have hit you with a stick....

September 1, 2024 · 5 min
List of decision records.

Fostering Collaborative Architecture: Decision Records

Collaboration is the most essential part of the architecture. More people in the room will produce more alternatives, challenge each other, and end up with better results in the long run. It also doesn’t matter if we get it right when there is not enough buy-in. A collaborative nature should intertwine all stages: thinking, feedback, implementation, documentation, and reflection (which could lead to revision). Decision records helped me improve teamwork and transparency in these areas over the years....

March 14, 2024 · 9 min
Diagram: Employee module exposes salary to payroll and salary benchmarking modules.

Navigating Domain Corruption, Dependencies and Simplicity

Assuming we and our teams bought into domain-driven design, the next question is, how do we interact between modules? Giving access to domain entities sounds like a great idea, but it carries consequences. There is a good argument to be had for exposing entities. After all, we spend a lot of effort ensuring our code expresses our domain well. On top of that, we ensure data can’t get into an invalid state, and trying to do so returns a descriptive error....

February 25, 2024 · 6 min
Daniel finish his talk at GoLab

GoLab - Generating code in Go

November 20, 2023 · 1 min
Daniel with slides in the background

Goat Poznań - Beyond Unit Tests

October 5, 2023 · 1 min
Daniel with slides in the background

Goat Poznań - Generating code in Go

April 19, 2023 · 1 min