Journal
A running log, not a publication
Short, dated notes from building things - experiments, failures, and the occasional thing worth remembering.
Team / leadership
Disagree while it’s cheap
Please question the plan while it’s still a sketch. With AI, we can get attached to a whole implementation remarkably quickly. I’d like the team to disagree before we’ve generated supporting evidence for my opinion.
Things worth a look
Finally, BullshitBench
BullshitBench checks whether an AI calls out a nonsense question or enthusiastically answers it. A benchmark named with the restraint the subject deserves.
We do need this. I’d like my assistants to notice a broken premise before turning it into a roadmap, three services, and a monthly cloud bill.
But please leave room for deliberate nonsense. If I ask for a business plan for a submarine bakery, maybe I’m having fun. Ask about the croissants before staging an intervention.
Things worth a look
They put the model WHERE?
Taalas hardwired a Llama model into a chip. Actual silicon. Their reported speed is ridiculous, but I keep thinking about committing to one model that hard. I hesitate before pinning a dependency version. These people manufactured a board.
Things worth a look
Rotate the landscape
A search for the longest line of sight on Earth led to a lovely trick: rotate the elevation grid so the calculations can share work and read memory sequentially. You arrive for mountains and end up thinking about CPU caches. Very much my kind of detour.
Room design
Tap the room to shop it
The redesigned room became directly explorable: tap a piece of furniture and see the catalogue product behind it. That connected the uploaded photo, the generated design and the shopping step in one flow.
Things worth a look
I still want to open the door
Okay. You describe a world, then walk around inside it while the model generates what comes next. Project Genie. This gets me.
I grew up with games where a few pixels were enough to convince us we were somewhere else. Now I’m looking at this and immediately wanting a ridiculous castle, a football pitch on the roof, and a door that absolutely shouldn’t be opened. Obviously I want to open it.
The builder in me has questions. Will the door still be there when I come back? Can I make a puzzle with rules that survive more than one attempt? The prototype has short sessions and control issues, so there’s plenty of distance between this and building a proper game.
But wow. I want to mess with this. No product idea required for once.
Team / leadership
The customer bought a room
On a room-design project, the AI, catalogue, backend and app all have their own jobs. The customer wants a room they like. They’re unlikely to celebrate that four out of five parts worked beautifully.
Things worth a look
Letters aren't pixels
Found an ASCII renderer that matches the shape of characters to the image, rather than just picking darker letters for darker areas. A slash can follow an edge. An underscore belongs near the bottom. Quite a lot of mathematics to let punctuation do what it was already shaped to do. Could be fun on the website.
Room design
A fallback for vision
The vision pipeline used Gemini first, with retries and OpenAI as a fallback. A provider failure had another route through the system before it became a failed redesign for the user.
Team / leadership
Let them finish
Someone starts explaining their approach and I already have a suggestion. Trying to let them finish first. Occasionally the next sentence contains the answer. Annoying, but useful.
Team / leadership
Hands off the keyboard
During live-coding and mentoring on the volunteer app, I want developers to work through the problem, including when to ask AI for help and how to check its answer. I could take over the keyboard. That would be a lovely demonstration of me knowing the answer.
Team / leadership
Take the whole feature
On the volunteer app, junior developers got independent features, with Trello and Discord keeping the work connected. I want them thinking about how their part fits the product and making decisions along the way. Otherwise I’m just outsourcing typing.
Team / leadership
Volunteer hours are real hours
For the volunteer app, the roadmap has to fit around the time developers can actually give. I want features small enough for someone to own and finish alongside the rest of their life. “We’ll squeeze it in” is a charming way to spend somebody else’s weekend.
Team / leadership
Tell us before the customer does
Failures in the room-generation pipeline go to Discord so the team can see when a redesign breaks. Much easier to start investigating while we have the job to inspect. I’d prefer the customer didn’t have to apply for the unpaid QA position.
Team / leadership
Leave a note for future me
Keeping architecture decisions alongside the code helps the next developer or AI session understand why we chose this route. Helps me too. Without the note, I’ll arrive full of confidence and suggest the exact thing we already ruled out.
AI development
Something for the next session
Putting decisions, plans, architecture notes and reports in the repo is helping the next AI session pick things up. Less explaining the entire project again. Even artificial colleagues benefit from somebody writing things down.
Team / leadership
Follow it to the screen
With a notification feature, I want us to check that the message arrives, opens the right screen and shows the right state. Backend and frontend need to walk through it together. The API returning 200 is encouraging news for the API.
Team / leadership
What’s actually stuck?
Picking up stalled project-status and notification work reminded me to check where the handoff broke. Is the backend sending the right state? Does the screen know what to do with it? Before adding more code, I want to find the question we haven’t answered.
Things worth a look
“I don’t know” passes
A benchmark that lets AI say “I don’t know” without losing points. Good. A support bot inventing our refund policy is being a little too creative with the company budget.
Product development
Getting the stalled work finished
Picked up stalled frontend and backend work around project statuses and notifications. AI helped get through the implementation. Good to move these from “still working on it” to something the team can actually use.
Room design
The spinner doesn't own the job
Persisted the redesign's project status. The job can outlive the request, the screen and the app session. The spinner has been relieved of management duties.
Team / leadership
Nobody should memorise the release
The mobile release goes through EAS builds, TestFlight, Google Play, uploads and release notes. Bringing those steps into one workflow means the team can repeat it without borrowing somebody’s memory. Our most experienced developer has other uses.
Things worth a look
We trained the hesitation out
Interesting paper: sample a model’s answers, group them by meaning, and you can get a useful picture of its uncertainty. In their experiments, further training could mess that up. Great. Even our software can become more presentable and less aware of when it’s talking nonsense. Something I want to check with the TipMaster assistant before mistaking good manners for good answers.
Room design
Your room is ready
“Your room is ready.” Push notification, straight back to the finished result. A nicer end to background generation than hoping someone remembers to check.
Things worth a look
We gave the agents meetings
Researchers are getting models to share internal KV caches through a learned translation, instead of passing everything as text. Still experimental, but yes, please. We invented machines that can communicate at ridiculous speeds and made them write handover summaries. Somewhere, an agent is preparing the pre-read.
Things worth a look
Who put that thought there?
Okay, this one is weird. Anthropic injected concepts into a model’s internal activity, and sometimes it noticed something had been put there. Before saying it out loud. It also failed plenty of times, so let’s leave consciousness out of this for a minute. I’m still stuck on the experiment itself. How the hell do you even think of testing that?
Things worth a look
Let it break something
On-policy distillation. The student model tries, gets into trouble, and learns from the teacher’s feedback right there. Yeah, that makes sense. Same reason I wanted Noga learning programming by building games. Eventually something falls through the floor and you have an actual reason to learn what a collision is.
Team / leadership
Open the same example
On the room-design project, I want the team looking at the same original photo, generated room and catalogue matches when we review a bad result. Did we detect the wrong object, find the wrong product, or generate something else entirely? “The AI is weird” is a start. A fairly large start.
Room design
The room had to be shoppable
The generated room looks convincing. Now we need real products, replaceable pieces and alternatives. I keep coming back to what happens after someone likes the picture.
Room design
Nobody needs to watch the spinner
The redesign takes a minute or more. Go do something else. Nobody should need to supervise a spinner.
Room design
Please find a chair
If the catalogue can't produce the ideal match, relax the constraints in stages. Eventually, please find a chair. Preferably still a chair.
Room design
Six very expensive accessories
A $3,000 room budget divided by six objects gives you six $500 objects. Excellent arithmetic. Odd room. The sofa probably deserves more of it than an accessory.
Team / leadership
Agree before going faster
Working through service code that had drifted from the Prisma database schema. Before dividing the fixes between developers and AI tools, we need to agree on which version is right. Otherwise we can make the disagreement run much faster.
Room design
Can you actually buy that sofa?
Beautiful room. Love the sofa. Where can I buy it? Nowhere, apparently; the model invented it. Real catalogue products have to be part of this from the beginning. Otherwise we're offering furniture-themed disappointment.
Room design
Photograph your room, get another room
Upload your room, choose a style and budget, get a redesign. Lovely short product description. Then add “and buy the furniture you see.” Ah. There's the rest of the project.
Team / leadership
Before we notify anyone
For TipMaster notifications, I want us to start with the person receiving them. Is a match starting? Did a result settle? Is there anything they need to do? We can discuss the button colour after establishing a reason to bother somebody.
Team / leadership
Fresh eyes
I like separating building from reviewing, including when AI is doing the building. A fresh reviewer can ask the obvious question we’ve spent three hours becoming unable to see.
Team / leadership
Everyone finished. Nothing works.
At TipMaster, buying a prediction touches payments, wallet credits, seller earnings and access to the tip. Each part can pass its own checks while the customer still ends up locked out. I want the team to follow one purchase all the way through before everyone declares their bit finished.
TipMaster / Guilds
Then the tipsters formed groups
Then the tipsters formed groups. Shared identity, shared feed, shared subscription. Nice. Also shared earnings, content ownership and all the questions that arrive when several people share something worth money.
TipMaster / Hall of Fame
Three good picks can look very impressive
Three excellent picks can produce a spectacular return. Years of steady results can look less exciting next to it. Both numbers can be correct. I'd still like to know how many attempts went into the miracle.
TipMaster / Hall of Fame
What does the leaderboard reward?
Who belongs at the top of the Hall of Fame? Best win rate? Best return? Best recent run? Longest decent record? Somebody has to choose what “best” means before we make the leaderboard look objective.
TipMaster / Tip Finder
A few questions before the marketplace
Tip Finder gives someone a few questions before dropping them into a marketplace full of experts. Seems fair. If you knew which expert you wanted, you probably wouldn't need the finder.
TipMaster / discovery
The feed has a deadline
A popular prediction for next week can wait. A useful one for a match starting in ten minutes probably shouldn't. “Newest first” is a lovely solution to a slightly different problem.
TipMaster / marketplace
Selling something you can't show
A marketplace where showing the product can remove the reason to buy it. Okay. Now keep that secret through the feed, search, caches, API responses and share images. The purchase screen is almost the relaxing part.
TipMaster / TipForms
A football pick has a lifecycle
Draft, published, upcoming, live, won, lost, void. Having an opinion about football turns out to require a state machine. Especially once that opinion has purchases, refunds and notifications attached to it.
TipMaster / marketplace
One link, several views
Same parlay, same URL. The seller sees everything, a visitor gets a teaser, a subscriber might already have access. Settle the result and the rules change again. “What does this page show?” needs a few follow-up questions.
TipMaster / marketplace
How much of a secret can you show?
Show enough of a prediction to make someone interested. Don't show the prediction. A slightly awkward brief for a product page. And the secret has to stay out of the API response too; blurring the box is mostly theatre if the answer is sitting behind it.
TipMaster / TipForms
A tip has a short shelf life
Before kickoff, a tip is something you can sell. During the match, people follow it. Afterwards, it becomes evidence of whether you knew what you were talking about. Same database record. Quite a career.