All Posts

The Era of Specification-Driven Development

Posted on June 25, 2026 in Verification

People tend to say that AI is bringing programming to a higher layer of abstraction: the human language. However, there's a big elephant in the room. Any human language is vague. I argue here that the next layer of abstraction might as well be formal specifications grounded in logic. We can build apps around specifications and let AI agents generate code that satisfy our specifications. Our specifications also determine what kinds of decisions about code we delegate to the agents. This is why specification-driven development is more relevant now than ever. .. Read more.

Why Hakyll Is Not Yet Ready for Your Blog

Posted on June 3, 2020 in Opinion

I never believed I would be writing this. Don't get me wrong. I love both Haskell and Hakyll, which builds upon using one of the strongest conversion tools for markup the world has known: Pandoc. Needless to say that this very blog runs on Hakyll. However, nothing can advance without somebody laying out loud the things that don't work. And with Hakyll it seems like such a list is long overdue... Read more.

Pure ES6 Modules in Action

Posted on February 24, 2020 in Programming

In an earlier post I wrote about what I imagine under pure ES6 modules and listed reasons why one should write as much JS code as possible in this paradigm. Then I described some techniques how to get around potential pitfalls. One thing is theory, another is practice. Let's look at one particular example of using pure modules to demonstrate their feasibility and advantages... Read more.

Go up