Skip to content

Why I built this site from scratch and started writing about the decisions, bugs, and mistakes behind my projects.

1 min read

meta · nextjs · writing

console.log("Hello, world");

The site has been up for a while. The blog has not, mostly because I kept deciding I had nothing finished enough to write about.

This runs on Next.js, TypeScript and Tailwind. Posts are markdown files in a folder, which is enough for this small blog. I would rather add a CMS or database when maintaining the files becomes a problem. Everything renders to static HTML at build time.

I wrote it from scratch instead of starting from a template, which cost me a weekend I could have skipped. Worth it anyway. A portfolio claiming I write software should be software I wrote.

Some context on who is typing

I ran Duonorth from 2017 to 2025. It began as a business intelligence consultancy, expanded into digital strategy and marketing around 2020, and focused on websites and software from 2023. In July 2025, software product development became my main occupation.

Current projects include Turistar, an open-source planner for my own trips; create-mvp, a CLI on npm for the project setup I got tired of assembling by hand; and client work in production.

Each project leaves me with decisions I want to revisit. Some are wrong, and I would like them written down somewhere they can be argued with.

What goes here

I want to write about things I built and how they broke, including choices I later undid and the bug that ate an afternoon when it should have taken ten minutes. Some of those will only need a short note.

Two are up already: what changes when AI writes most of your code, and the work that led me here.

Code for this site is on GitHub. If I got something wrong, tell me.