fak10

Devlog · Published 28 Sep 2026 · Updated 1 Nov 2026

“Computer, do it.”

fak10 is the fourth attempt to build the assistant I first imagined in 1996. Anna keeps facts, their sources and dates on your iPhone, connects what you tell her, and helps with everyday paperwork. This article traces the Excel prototype, my diploma work, your-life and the current app, including what Anna still cannot do.

As a teenager I had a lot of time to think, and I liked using it. I could lose myself in a train of thought for hours. On top of that came a fascination with technology, with computers, and with anything where one action sets off the next. A marble run where one ball nudges something that triggers something else: I could watch that forever.

At my business-focused high school something new was added. I learned how rationally people act to meet their needs. And the longer I looked, the clearer it became: this can be modelled. If you know a person’s needs, a computer can work out what someone actually wants. And then you would no longer have to wrestle with the machine the way we all did back then.

I was a science-fiction fan. I wanted the computer from the films, the one you just say “Computer, …” to, and it takes care of it. Not only out of convenience: I consider laziness one of the fundamental principles of the universe. It makes sure the most efficient solution wins.

Excel, Java, a thesis

I couldn’t program yet. So I used what I had: Excel. I started at sixteen, in 1996. The oldest version I still have is from 1999, a file called An@lyse.xls. One sheet held my needs as a tree, each with a value (how well it is met right now) and a priority (how much it matters to me). A cell comment holds the sentence everything revolved around:

But An@lyse was more than a name hidden in a filename. The workbook already had a separate table for each type of word. A full-text search across those tables could return the metadata needed to account for a word’s grammatical role. That was the foundation for the grammar based micro-AI I wanted Anna to become.

Open the An@lyse Excel workbook preview
The original workbook view (without VBA macros), with its grammar categories and word type tables, can be downloaded here.

“Actions should be chosen so that the highest possible level of satisfaction can be expected in the short, medium and long term.”

And elsewhere, already back then, the limit of the whole idea:

“While Mozart was alive, a war broke out ⇒ two true statements that extensional logic cannot capture.”

A life doesn’t fit into a spreadsheet, because things are true at a time, under a condition, from a point of view.

In the summer of 2009 came the second attempt, now in Java. The project was called Annalyse, and for the first time it contained a class named Anna. She was meant to understand German (and Polish), with a grammar of case, gender, tense and mood, a word net, and a reasoner drawing conclusions from what she understood. Her goal, as the description still says: take a sentence apart and work out what job each word does in it. The grammar based idea was already taking shape in the tables of An@lyse; the Java version was where I began turning it into a program. You can see the public source code for this early Anna project on GitHub. And because I knew a few Annas, the name came naturally. So Anna is thirty years old.

At the time I was studying business informatics in Siegen, and there I met what dominated artificial intelligence back then: ontologies and reasoning, knowledge as a web of statements from which a program draws conclusions by fixed rules. My diploma thesis (2010) designed a method to compare complex data for similarity, by content and by structure. The thesis is published on GRIN. For a primary reference on ontologies and rule-based reasoning, see the W3C OWL 2 Primer. I opened the thesis with a quote by Fritz Mauthner:

“All classifying, all language, is built on similarity, not on sameness.”

fak10 still wrestles with exactly this: when are two entries the same person, and when are they merely alike?

In 2017 I brought Anna back: your-life, a web app with Anna as a module of her own. She got intents, statements and sentence analysis, hooks for Alexa, Siri and Messenger, and a collection of quotes from Marvin, the depressed robot. You can also browse the public your-life source code on GitHub. After two months, work needed me again.

The fourth attempt, and why it holds this time

In 2021 I tried again, and this time the project was called fak10. I had a few months, then work needed all of me again. Anyone with a passion project next to a day job knows the feeling.

By the time I joined Suena, fak10 was already about 70–80% of the app it is today. My CV and LinkedIn show that I had been working on it for months before then. Vibe coding didn’t replace the architecture; it helped me get through the remaining implementation grind without changing it. That’s what “Computer, do it” means to me: let the computer handle the tedious work while the idea and architecture remain mine.

What has changed since is, of all things, AI. With its help the work has become so much easier that I can finally finish the original approach. I’m using the big AI to build the small one I always wanted to build.

Why not just use the big AI?

Because I still see the advantage of the other path.

Large language models are impressive, but they can give wrong answers and sound certain even when they aren’t. You can’t always see where an answer comes from. They forget, or they remember information on a server you don’t know. A request to a cloud model is processed on remote infrastructure; the IEA's Energy and AI report examines data-centre electricity use at sector scale, not the energy used by one answer.

That’s why fak10 has a companion, Anna, who works differently: deterministically. She runs on the phone, offline. She understands language through a grammar, rule by rule: part of speech, case, tense, negation, in German and in English. From a sentence she makes a statement with a source and a date, and you can trace why she decided the way she did. She doesn’t guess. When she doesn’t understand something, she asks. And as long as such an approach does the job, it uses far less energy than a language model.

Anna is still learning. On 7 October 2026, she handled 15 of 17 expectations with no false entries. Claude Opus 5 had 11 correct among the 15 expectations it had been tested on, with one false entry; the two new expectations had not yet been tested on Claude. The public test bench lists the inputs and explains why those scores are not a like-for-like comparison. The tested gap is specific: Anna now reads “Miriam gibt Clara ein Buch” (“Miriam gives Clara a book”), while the test still records other expectations she has not met. Anthropic's Claude Opus 5 system card documents the model and its own evaluations; it does not validate this small, separate test.

What fak10 is meant to be

Above everything stands a line I once wrote down: experience over outcome. It’s not about optimising a life like a metric, but about choosing good experiences, weighing things wisely and being able to handle obstacles.

For that, fak10 is the diary of your time. One that thinks along:

And it belongs to you. No account, no cloud for your data. If a document does need the big AI, you call it in, and you see what leaves your phone.

Why I’m telling this in public

Because a project that started in Excel at sixteen deserves a few readers. From now on I’ll write here regularly: how Anna learns language, why word order in German lies, what separates a need from a goal, and what goes wrong.

If you’d like to be there when fak10 comes out: Join the waitlist

— Maciek Niemczyk