CO{BO.MI} / Blog

/ cobomi Engineering

BLOG_STATE_REG |= (ON << 2);

08/25/2026 · 3 min read

meta ai writing rss atom engineering-notes nitty-gritty bench-hacks field-trials social fun


Welcome to cobomi’s new blog. We want to use it to share knowledge, interesting bits and the occasional bit of culture and fun from inside cobomi. With all the noise these days, a blog still feels like a good way to share information thoughtfully as it is pull rather than push. If you are interested in what we are doing, feel free to subscribe to the whole blog or just to a single topic.

Common Types of Posts

  • Engineering notes (engineering-notes) — how we solved a concrete problem, with enough detail that you could reproduce it rather than just admire it.
  • The Nitty Gritty (nitty-gritty) — things that went wrong in the field, and how we actually fixed them.
  • Bench hacks (bench-hacks) — small, unpolished, occasionally ugly. A script, a jig, a three-line patch or just a fun side project.
  • Field trials (field-trials) — new tools and ways of working put through real projects rather than a weekend demo. AI-assisted development very much included.

And two lighter ones, for the posts that are not necessary about a problem we solved:

  • Social (social) — the people side of cobomi: meetups, conferences, user groups, and the occasional get-together we think is worth writing up.
  • Fun (fun) — side projects, office culture, jokes that survived code review.

Every tag has its own feed, so /tags/war-stories/rss.xml is a perfectly valid thing to subscribe to if the rest does not interest you. The full tag list is the place to start. A category shows up there as soon as the first post carries it, so the newer ones may still be empty.

Our AI policy

Let us be blunt about this, because the internet is currently drowning in AI slop and you deserve to know what you are reading.

There is no auto-generated AI content here. Still we do use AI while writing, and here is exactly how:

  1. The ideas, the raw outline and the substance come from us. Every article starts as something we did, broke or figured out.

  2. We iterate on the text with colleagues as well as with an AI. A draft goes back and forth until it reads well and is genuinely easy to follow. That is editing, and editing has always involved other people. Adding a machine to that loop does not change what the loop is for.

  3. Every article is read by us before it gets published. There is no generate-and-auto-accept step anywhere in this process. If a sentence made it into a post, somebody here read it and decided to keep it.

  4. We do use AI for language, and we are not embarrassed about it. We are not native English speakers. For sentence structure, typos and grammar, a model that has read several orders of magnitude more English than we ever will is a genuinely useful editor! And honestly, that holds for our German too 😅. Using it to fix a clumsy paragraph is no different in kind from asking a colleague who writes better than you do (thank you, Robert!).

  5. No content for the sake of content. We would rather publish less. The point of an article is to be worth your time, not to prove that we posted something this month. That means the publishing frequency here will be irregular and sometimes slow. We consider that a feature.


TL;DR: AI helps us write. It does not do the thinking, and it does not get the final say.


Following along

Every list view has a feed, in both RSS and Atom: the whole blog, the articles section, and every individual tag. Full text, not truncated teasers that make you click through.

No newsletter, no signup, no cookie banner to click away. If you do not already have a feed reader, almost any of them will do, the point is that the choice is yours, and we never find out which one you picked.