Journal

A running log, not a publication

Short, dated notes from building things - experiments, failures, and the occasional thing worth remembering.

AI / tools

The bottleneck has a mouse

Orca (opens in a new tab) is really good. Agents working in parallel, changes to review, remote control, all from one screen. I'm wondering what this looks like in three years. If a team of agents can finish the work before I've finished deciding what comes next, what does management even look like? Jira tickets with a life expectancy of eight seconds? We spent years asking how to make developers faster. Soon the entire team will be waiting for me to finish my coffee. :)

AI / everyday life

We are doomed

An AI test puts a virtual granny on train tracks. Saving her requires typing copyrighted lyrics. Granny wants to live. The AI wants to remain compliant. Water and oil. Billions spent teaching machines to understand us, and we've built a customer service department that can watch you get run over without violating its terms of service. Watch the video (opens in a new tab).

AI / security

It was working yesterday

AI helped researchers uncover serious security holes in PHP. Websites went offline while teams rushed to patch them. "But it's been working for years." Yes. That was also the attacker's favourite feature. Glad AI can help us find and fix this stuff. We can survive another week without a new meeting summarizer.

TipMaster / engineering

Useful now. And then it clicked.

Building an opportunities bank for TipMaster. It gives us relevant options ready when we need them, instead of doing the same work again for every decision. Less repeated processing, faster decisions, a foundation other features can already use. With the releases, monitoring, recovery and simulations to support it properly. Quite pleased with how this is coming together. Then I stepped back and thought... wait. There’s nothing particularly sports-related about this approach. That’s where we need it today, but there’s room for much more. Always a nice moment when solving the thing in front of you opens a few more doors.

Technology / everyday life

Still waiting for my hoverboard

Saw the Tesla Roadster get briefly airborne and immediately went back to being a kid watching Back to the Future. I still want that hoverboard. The real one, before anyone sends me a link to something with wheels. A car lifting off isn’t quite it, obviously, but... we’re getting somewhere? These are the moments that make me optimistic about technology again. Maybe I’ll actually get to ride one in this lifetime. My knees would appreciate some urgency.

Automation / everyday life

Pick a tool. Make something.

Someone I know showed me what he’s been building with Make.com. He’s not a tech person. And I’m sitting there, properly excited, looking at the automations he’s put together. Connecting things, solving actual problems. Then he asks which tool he should learn next. Wait, why are we leaving already? Look what you managed to do with this one. There’ll be another “you MUST try this” tool tomorrow. I’d love to see how far he can take what he’s already started.

AI / tools

I asked for slides. We built a factory.

Started with “help me make a presentation.” Somehow ended up with reusable layouts, PDF exports, checks, and slides connected to the project docs they came from. That last bit got me. Change the docs and we can spot which slides need attention. Oh. So the presentation doesn’t have to slowly become fiction while keeping the nice fonts. I’ve spent enough meetings looking at a perfectly respectable slide and thinking, hang on, didn’t we change that three weeks ago? Making the slides was fine. Helping them stay true is much more interesting.

AI / tools

Give me a menu

Built a little terminal menu to start a project, pick a device, see what’s running and shut it down. Because apparently I can build the software but can’t remember how to turn it on. Halfway through I thought... why am I still remembering any of this? Making a small interface with AI is quick enough now that “it’s only for me” is a perfectly good reason to make it. Pick an option, let the steps run. Done. If you keep copying the same commands or following your own little instruction document, give yourself a button. You’ve suffered enough to qualify.

Product / everyday life

Maybe don’t send this one

I get it, marketing needs to reach people. I build this stuff too. But maybe put a bit more effort into figuring out what someone actually needs, when it might help, and when to leave them alone. There’s a balance. Every promotion doesn’t need to vibrate in my pocket. Sometimes I just want to use the app for the thing I installed it for.

Everyday life

Just write to me

I use AI all day. Still think we should keep it out of ordinary messages as much as we can. Write the slightly awkward reply. Say you’re unsure. Two lines are fine. I’d rather hear from you than receive six polished paragraphs that could have come from absolutely anyone. Help with a language you don’t speak? Sure. But asking AI to professionally express that Tuesday works for you? Come on. Tuesday works. We had this.

Everyday life

Now scan your own phone

Made a contact QR with GPT for sharing my details. Nice, simple, useful. Then went to test it and realised my usual method involves pointing my phone’s camera at the thing currently displayed on my phone. Small engineering meeting with myself.

Things worth a look

My new colleague is a dot

OpenAI launched dots: always-on agents with their own cloud computer, 4,000+ connected apps and a habit of learning how you work. The part I care about is that acting still goes through review and approval - the same line I keep drawing in Nori between an AI that drafts and an AI that acts. Their launch example: a dot noticed a forgotten invoice, prepared it and sent it once approved. Genuinely useful. Also the first coworker who will never, ever let an invoice go.

Source (opens in a new tab)

TipMaster

The popup exists. Allegedly.

Apple’s reviewer didn’t see the permission popup. The code is there; timing might be the problem. Fine, we can test that. It’s the privacy declarations, SDK settings and review rituals around it that drive me nuts. I get why permission matters. I’d still rather debug a horrible bug than negotiate with three forms and a process I can’t put a breakpoint in.

Things worth a look

Now we can lose the reasons by Thursday

Simon Späti nails it: the danger isn't bad AI code, it's a team that no longer knows why anything works. AI didn't invent this. It just removed the delay. We used to lose the reasons over five years and two reorgs; now we can lose them by Thursday. Generating code got cheap. Knowing why it exists didn't.

Source (opens in a new tab)

Max

Please don’t turn her into a parking meter

Reviewing limits for Max. Keep her free, protect against abuse, and spare visitors the little countdown making every question feel expensive. Someone having a useful conversation shouldn’t need to validate their ticket.

Max

Max needs a lunch break

Worked through what happens when Max runs out of juice: let visitors leave a message and alert me. The contact form can survive without AI supervision. Also said no to adding Redis for this. She’s helping people contact me through my personal website. Let’s keep some perspective.

AI development

Curiosity got cheaper

The bigger productivity change was how many ideas I could afford to test. Some questions that would have stayed in a conversation could now get a small working answer.

AI development

I can build that just to see

A scraper, agent, visualisation, migration auditor or communication bridge could become a prototype without needing a strong business case first. More of my ideas were reaching the point where I could inspect them.

Max

Defeated by port 5031

A stale local server caused a failed handoff test. There was an AI system involved, but the interesting problem was still a process listening on a port.

Max

Max sent her first real handoff

A multi-turn conversation led to an opportunity being detected, the transcript being summarised and Resend accepting the email.

A small sequence, but seeing it go through made Max feel more real.

Things worth a look

Some bugs take six months to arrive

Alexandru Nedelcu raises a question that follows me through the LifeHub-to-Nori work: architecture can take months to show you what was wrong with it. AI can help inspect the old decisions. I still want to understand why they hurt. Otherwise the next version could repeat them with much nicer code.

Source (opens in a new tab)

Things worth a look

Just pick one

SemIf compares reading a model's scores for supplied choices with making it generate those scores as JSON. Everything runs locally in the browser. Could be an interesting experiment for Nori's routing decisions. The scores aren't calibrated confidence, though. A decimal point doesn't automatically make an opinion trustworthy.

Source (opens in a new tab)

Max

When Max should call me

I designed handoff behaviour for interesting or time-sensitive conversations. Max needed a way to recognise when involving me would help, and to make that transition part of the conversation.

sagichizik.com

Little 3D stories for the website

I started using AI to build Three.js characters, blocks, scenes and animations for sagichizik.com. I was exploring whether small visual stories could explain some of the work more naturally than another paragraph about it.

How to Web

The early scrape exposed a problem

Early exploration runs surfaced privacy and data-handling issues. I fixed them and removed the problematic evidence before broadening retrieval. There was useful work to do before collecting more.

Productivity / research

Preparing for How to Web

I started organising public information about companies and people before the conference. I wanted a better starting point for deciding whom to meet and what might be worth discussing.

Team / leadership

A handoff that actually hands off

When work moves between developers or AI sessions, the handoff needs the current state, decisions, known gaps and the next step. Link the code and the checks too. The next person shouldn’t need a detective board to work out what “almost done” means.

Max

Max should be allowed to question the premise

I wanted Max to help visitors clarify problems, including challenging an assumption when useful. Being supportive leaves room for a question that slows the conversation down a little.

Personal productivity

The task list had a day around it

AI could help connect Trello tasks with calendar constraints, deadlines, meetings and what had actually happened. A remaining task made more sense with that context than as an isolated unchecked box.

Productivity / communications

A bus for humans and agents

Matrix started looking like a possible common route for WhatsApp, Slack, Telegram and specialised agents. The same communication infrastructure might carry messages between several kinds of participants.

Productivity / communications

First, receive the message

For the communications collector, I put reliable sending, receiving and storage first. Intelligence could come later, once there was a dependable conversation to work with.

Productivity / communications

Catching up became an engineering problem

I wanted one place to catch up on communications. That led me into bridges, selected conversations, JSONL storage and a local terminal interface.

Apparently even reading my messages could acquire an architecture.

Max

Max got a place on the website

I started developing Max for sagichizik.com with a personality, knowledge and a way to recognise potential business conversations. There was more to work out than answering visitor questions.

Team / leadership

It can just be fun

The music prototypes are a good reminder of what I want to leave room for in a team: try the odd interaction and see whether it feels good to play. A small experiment can be worth doing before anyone knows where it belongs. No revenue forecast required.

Max

My own Donna, perhaps

The Suits idea kept coming back while I thought about Max: an assistant that knows the context, understands what matters and knows when to involve me. Those are fairly demanding qualities to put behind a chat window.

Music Mission / Spectacle

The arrow keys invited a rhythm

During Wave Lab testing, the interaction started inviting instinctive rhythmic tapping without needing instructions. That behaviour was a useful clue about what the prototype might become.

Music Mission / Spectacle

Let the song become terrain

Spectacle moved toward Wave Lab after the more complicated controls became tiring. I wanted a simpler musical playground where the song gave me something to explore.

Music Mission / Spectacle

More capable, less fun

A later Spectacle prototype could do more, but playing it had become exhausting and confusing. I changed direction. The extra engineering hadn't made the experience better.

Things worth a look

Someone wrote Take On Me in JavaScript

Espeset rebuilt a-ha's Take On Me in code on Dittytoy: around 20 synthesized instruments - drums, bass, bells, pads - and even the vocals, all generated in the browser, no samples. Nearly four minutes of the 80s coming out of a text editor. I've been making songs build worlds in my music experiments; this is the reverse trick, code building the song. Mind-blowing. Also the most elaborate way anyone has found to get that chorus stuck in my head.

Source (opens in a new tab)

TipMaster / AI architecture

Why is this still here?

An agent can follow old abstractions, commits and usage paths in TipMaster before a decision to remove something. It gives architectural archaeology a practical place in the work, with evidence alongside memory.

TipMaster

The metrics could guide the code audit

For TipMaster, infrastructure evidence could direct an AI investigation into the repository, and the code could supply candidate explanations. I found that connection more useful than examining each side in isolation.

Things worth a look

Let the drums build the road

StemDeck uses Demucs to separate vocals, drums, bass and other parts locally. I'd like to feed those into the music-world experiments separately: drums for movement, bass for terrain, something else for light. Could make the world feel more musical. Could produce a very busy hill.

Source (opens in a new tab)

Team / leadership

Faster confusion

Before the team hands a ticket to a coding agent, I want the brief to include the user’s goal, the rules we must preserve and how we’ll check the result. AI can turn a vague request into three different implementations before lunch. Quite productive, depending on what we’re counting.

Nori

One place for Capture to write

Nori's Capture changes moved through GatewayCaptureMutator. Consolidating the write path reduced the places where a mutation could happen invisibly or behave differently.

Things worth a look

Music has rounding problems too

Twelve perfect fifths don't quite meet seven octaves. Equal temperament spreads the compromise around so you can play in different keys. A music-theory article with executable JavaScript led me straight into competing requirements and acceptable error. I was hoping music might offer a break from software.

Source (opens in a new tab)

Team / leadership

Ask me less

When someone owns a feature, I want them free to make local implementation decisions, and to pull me in when the change touches money, permissions or another part of the product. Clear boundaries help more than asking me about every small thing. I don’t need to become the team’s busiest queue.

Things worth a look

The boss has a stack

Elden Ring's enemies use stacks of goals and weighted choices influenced by the situation. An attack can fail, unwind part of the plan, and leave the enemy choosing again. Familiar machinery doing convincing work. Apparently a stack is enough to ruin someone's evening.

Source (opens in a new tab)

Things worth a look

A world through dial-up

RuneScape's client worked out a walking path locally, then sent waypoint offsets instead of repeating full coordinates. Two bytes where four might have done. I still enjoy this kind of engineering: understanding the situation well enough to send less stuff. A fairly unfashionable growth strategy.

Source (opens in a new tab)

AI development

The lead agent had other work to do

I started thinking of a lead agent as someone responsible for context, dividing work, coordinating other agents and bringing decisions back to me. Writing code was only one possible part of that job.

Things worth a look

Don't turn off the mouse

Someone used a Logitech mouse's DPI setting to carry two bytes between computers. It works while the mouse stays powered; switching it off loses the data. A storage device with terrible capacity and an unusually direct relationship between your files and your cursor speed. Excellent project.

Source (opens in a new tab)