Kevin Michels-Kim

Journal

What I'm reading and what I make of it, plus the occasional thing I built. Newest first.

An old algorithm got faster. Speed was never my problem.

alphaXiv's X post announcing e-means, a faster version of the k-means clustering algorithm from researchers at Meta
Source: Meta researchers (arXiv), via alphaXiv

Researchers at Meta published e-means this month, a faster version of k-means, the standard method for sorting data into groups. Classic k-means rereads the whole dataset about 25 times. The new one gets a slightly better result in about 2 passes, which makes it 10 to 45 times faster on graphics chips. Their showcase sorts 10 billion images into 16 million groups.

alphaXiv, where I saw it, called it a major upgrade after nearly 70 years. That is true if you have 10 billion of anything. Faster small-batch versions have also been around since 2010, so this is a better-tuned method, not a new idea.

I used k-means years ago to turn social media data into personas. The computer was never the slow part. The slow part was me, deciding how many groups there should be and then reading each one to work out who was in it. The paper does not touch that part. Language models do: they can read a group of posts and say what the people in it have in common.

When a breakthrough makes the news, I now ask whether it speeds up the part of the job that was slow for me.

A ten-person company wrote down its founder's judgment

Simon Willison's X post sharing Jacob Sansbury's article on how Spawn runs on AI agents
Source: Jacob Sansbury (Spawn), via Simon Willison

Spawn, a ten-person game startup, published an account of how it runs. Permanent AI agents own the engine, finance, bug triage and deploys. Last month they shipped 77,000 changes and spent $3.1 million on AI tokens, about 30 times payroll.

The interesting part is what broke. By October the agents were waiting on one person, the founder, who woke up to 700 questions about taste. So the team turned two years of recorded conversations into AI judges that answer the way he already had. In eight days the judges settled about 7,300 questions. He answered 27. The bottleneck in an AI company is the founder’s judgment, and most of it can be written down.

Simon Willison, who shared the piece, points out that Spawn has no revenue yet. A game is also a forgiving place to ship this fast.

As a small business entrepreneur, I see the same bottleneck: the work waits on my judgment, not on anyone’s hands. I switched on a small version of the same idea this week: a nightly agent that makes my routine calls and leaves me a list to undo. The judge is the part worth copying, and the speed only works where a mistake is cheap.

Synthetic shoppers do their homework. Real people don't.

TheySaid case study page: Can Synthetic Testers Think Like Real Shoppers?
Source: TheySaid

TheySaid, a user-testing startup, published a useful study this month. It recorded 25 real shoppers choosing between a Dyson and a Shark vacuum on Amazon, built one AI shopper from each person’s session, and ran the same task again.

The AI shoppers picked the same brand as their human in 21 of 25 pairs. They reproduced half of the humans’ main findings outright, and 70 percent counting partial matches.

The bigger gap was behavior. The synthetic shoppers did their homework. The humans didn’t. The AI compared twice as many products, read every review and took twice as long. People stopped at good enough, went with habit, and worried about the money.

Two caveats. Each AI shopper was scored against the person it was built from, which tests copying more than prediction. And the vendor graded its own product.

Why does a vacuum study matter to me? My company, Merakoi, runs research with real patients for pharma teams, and those same teams are now being offered synthetic patients. Patients don’t drop out of trials because they misread the protocol, they drop out because they are tired, so I expect a synthetic patient to make every study look easier than it is.

An AI lab just became a drug company. The patients are still offstage.

Anthropic research page headline: Early progress on accelerating drug development with Claude
Source: Anthropic

Anthropic, the company behind Claude, published what reads like a progress report this week. It is really a career change. Anthropic bought Mithril Medicine, a one-person biotech working on two rare forms of muscular dystrophy, whose founder used Claude to organize work with 11 outside labs. It expects a drug ready for human trials as soon as late 2028. An AI lab is now a drug company.

Six partner companies shared early results. One generated about 35,000 antibody designs in a month. Another had Claude draft a regulatory document in four hours, work that took about three months by hand. These are the companies’ own numbers, and they are early.

Bristol Myers Squibb uses Claude to judge early trial plans and estimate their odds of success. In July, BMS and a group of patient advocates published a paper saying “engagement is most effective before key research decisions are finalized.” A trial plan is one of those decisions. The announcement mentions patients once, as people riskier bets might someday help.

My bet is that the next winner here won’t be the company that designs the fastest molecule, it will be the one that gets patients into that trial-plan score.

My father-in-law keeps getting targeted, and I live an ocean away

Most people I know have had the same phone call. A parent mentions, a little too casually, the thing with the card, or the email from the bank, or the nice man who rang about the computer. By the time you hear about it the money is gone. If that has already happened in your family, the one useful thing left to do is report it.

Our parents are online and are being worked professionally, and their children, who mostly know exactly what to do, are on the other end of a phone describing where the Start button is.

My father-in-law is in that position. He mentioned he wanted to replace his six-year-old computer, and that was the opening: a new machine can be set up properly on day one, which an old one never can.

This is what I built, what it cost, and what it does not fix.

The two pieces that make it work

The first is Tailscale. It puts his computer and mine on the same private network without opening a single port on his router. No port forwarding, no fixed IP address, nothing sitting on the public internet waiting to be scanned. His machine carries an ACL tag that makes the trust one-way: I can reach his PC, his PC can reach nothing of mine. That matters more than it sounds. If his machine is ever taken over, it is not a route into my house.

TAILSCALE, ENCRYPTEDSSH: updates, logs, repairsblocked by ACL tagMy laptopSwitzerlandHis PC7,000 km away
One-way trust. His machine is reachable from mine, and cannot reach back.

The second is Claude Code. Once there is a network path and an SSH key, I point it at his machine and ask questions in plain language. It writes the small PowerShell scripts, runs them over that connection, reads the results back and tells me what it found. I am not typing commands at a computer I have never sat in front of. I am asking a question and getting an answer.

Start with something that changes nothing. This is the first thing I ran:

PromptRead-only health check
Connect to this Windows PC over SSH and give me a plain-language health report:
Windows Update status, which antivirus is actually active, whether the clock is
synced, how much disk space is left, and any device showing a driver error.
Change nothing. Tell me what you would fix and why, but do not fix it yet.

What this actually buys you

He told me the new webcam was not being recognised. Normally that is twenty minutes on the phone about which cable is in which socket, both of you getting quietly frustrated, and no way to tell a driver problem from an unplugged cable.

Instead I asked whether the machine had ever seen a Logitech device at all. Windows keeps a permanent record of every USB device ever attached, keyed by manufacturer, so that question has a factual answer rather than an opinion. It came back in seconds: never, not once. It was not plugged in. He plugged it in and it worked first time.

PromptHas this device ever been plugged in?
Has this PC ever had a Logitech USB device attached to it? Check the Windows USB
enumeration history by vendor ID, not just what is connected right now. Tell me
which vendors it has seen, so I know whether this is a cable problem or a driver
problem before I ask him to crawl under the desk.

The same week it found that his clock was a full day wrong, because a background time service had quietly stopped and nothing had ever noticed. And that his browser was holding 217 saved logins. That number sounds worse than it was: most were dormant accounts on sites he had not opened in years. The ones that mattered we had already moved into a password manager, which took him several sittings across several days.

The part that makes remote help sustainable is duller. Updates have to install themselves, and they must never restart his machine while he is mid-sentence on a video call with his grandchildren. One reboot at the wrong moment and he stops trusting the whole arrangement.

PromptUpdates that install themselves and never surprise him
Set up Windows Update on this PC to download and install everything automatically,
including driver and firmware updates, but never restart the machine on its own.
Run it as a scheduled task under SYSTEM and write what it did to a log file I can
read later over SSH.

Once that is running, the recurring job is a monthly read. This is the whole maintenance routine:

PromptMonthly check-in
Monthly check on this PC. Compare against last month: pending updates, antivirus
definition age, free disk space, failed scheduled tasks, new programs installed,
new browser extensions, and any new account created on the machine. Flag anything
that looks like it was installed by someone talking him through it on the phone.
One short paragraph first, then the details.

That last instruction is the one that earns its keep. Remote-access scams end with software the victim installed themselves, so a list of what is new is worth more than any scanner.

What I deliberately did not build

I cannot see his screen. I am not reading his mail or his documents, nothing runs a report on him behind his back, and there is no camera and no keylogger. He knows the arrangement exists, and on the rare occasion I need to see his screen I ask first and he approves it on his end.

That led to the standing rule we agreed: he never grants screen access to anyone except me or another family member, no matter who they say they are. Setting that rule was the moment I understood the real exposure. Screen sharing is one click, it sounds helpful, and a patient caller only needs to catch him tired or distracted once.

I have administrator access to a machine that holds his banking logins. That is a real concentration of trust. It works only because he asked for it, knows exactly what it covers, and can end it by uninstalling one program.

The part this does not fix

None of this stops a phone call. Everything above hardens the machine, and the attack that actually works never goes near the machine. It has a name, social engineering, and it goes at the person instead: patiently, using urgency and authority, and it works on people far younger and more suspicious than him.

The things that help are procedural rather than technical:

  • No money moves on the same call. Anything urgent gets hung up on and called back on a number from a bank statement, never a number the caller supplies.
  • A second person, always. Any payment to a new recipient gets mentioned to one family member first. The delay is the control, not the opinion.
  • A credit freeze, which is free, and which blocks the accounts-opened-in-your-name version of this outright.
  • A password manager, because a phishing page that looks perfect still fails when the manager refuses to autofill a domain it does not recognise.

Only the last of those is a technical control, and it is the only technical defence on the list. I do not have a better answer yet.

What it cost

A few hours spread over three days, most of it reading rather than typing. He did the physical work, which was the right split: he plugged things in, restarted the machine and read error messages out to me. That kept it his computer, rather than one I had quietly installed myself in.

If you are the person your family calls, the setup is no longer the hard part.

The stack

Everything used here, what each piece is for, and what it costs.

ToolWhat it does hereCost
TailscalePrivate encrypted network between the two machines. No router changes, no open ports, works behind any home internet connection.Free, up to 3 users and 100 devices
Tailscale ACL tagsMakes the trust one-way, so his machine cannot reach anything of mine. The part most guides skip.Included
OpenSSH for WindowsThe remote shell itself. Ships with Windows 11 and is off by default. Set it to keys only, with password login disabled.Free, built in
Claude CodeWrites and runs the scripts over that connection and explains the output. This is what removes the need to remember any PowerShell.From $20 a month
BitLockerFull-disk encryption, so a stolen machine is a lost machine rather than a lost identity. Keep the recovery key somewhere that is not the machine.Free, Windows 11 Pro
1PasswordReplaces the browser's saved passwords and refuses to autofill on look-alike domains.From $3 a month
Microsoft DefenderThe antivirus already on the machine. Removing the expired security suite the manufacturer preloaded is usually an upgrade.Free, built in

Building this site, with Claire Vo's homework open next to mine

Claire Vo put up a personal site that shows what she builds with AI, plus a black and white portrait that follows your cursor and winks when you click it. I wanted one. So I opened Claude Code and started where I always start now: a spec, then a plan with 13 tasks, then small agents building one task at a time with a review after each.

The site counts KevinOS every night at 3am (32 workstreams, 74 skills, about 5,200 commits) and publishes only what I’ve approved, with descriptions vague on purpose. Before anything goes out, every page is checked against a list of blocked words, and one hit stops the publish. Privacy as a build step, not a review I would eventually forget.

The portrait failed twice as a pixel grid. Then I read how Claire actually did it: six still images, and the browser picks the one facing you. Copy how someone did it, not just what it looks like.

One of my six gave you a suspicious side glance. No agent flagged it. Taste is still my job.