I have been building software for more than twenty years and the part that still gets me is not the framework, the launch post or the architecture diagram.

It is the moment a vague annoyance turns into a working thing.

Someone says, โ€œwhy is this still difficult?โ€ You sketch a system. A few hours later there is an interface. A few days later there is data moving through it. Eventually it becomes something another person can rely on.

That transformation still feels slightly ridiculous.

Useful beats impressive

I like ambitious technology, but I have become increasingly suspicious of software that exists mainly to demonstrate how sophisticated its builders are.

The best products often feel obvious after they exist. They remove a decision, collapse five steps into one, surface an answer quickly or make an awkward process disappear.

That usually demands more judgement, not less engineering.

I like the zero-to-one mess

There is a particular stage of a product where everything is still negotiable. The domain model is not settled. The interface is half instinct and half evidence. The architecture has to support a future that nobody can quite see yet.

That is where I am happiest.

I like deciding what not to build, finding the hard constraint hiding inside the idea, choosing technology that will not become a tax later, and getting the first serious version into the hands of real people.

The stack matters less than the shape of the problem

I use .NET, Vue, Astro, Flutter, SQL and a growing pile of AI tooling because they are productive tools for the kinds of systems I build.

But technology choice should be subordinate to the product. Sometimes the right architecture is distributed and event-driven. Sometimes it is a web app, SQLite and a background worker.

Complexity should earn its place.

Keep shipping

The internet is full of abandoned cleverness. Shipping creates the feedback that thinking cannot.

So I keep a workshop of products, experiments and protocols in motion. Some become businesses. Some become tools. Some answer a question and get archived.

All of them teach me something I can use in the next build.