Follow buttons here act as you, not as @admin.
| Label | Kind | State | Action |
|---|---|---|---|
| @ricardo | local | — | |
| @rmdes | local | — | |
| @paul | local | — | |
| news.rss.chat | source | — | — |
| scripting.com | source | — | — |
| www.techdirt.com | source | — | — |
| simonwillison.net | source | — | — |
| www.manton.org | source | — | — |
| feeds.kottke.org | source | — | — |
| rss.beehiiv.com | source | — | — |
| www.404media.co | source | — | — |
| brilliantmaps.com | source | — | — |
| shellsharks.com | source | — | — |
| www.platformer.news | source | — | — |
| podstandards.org | source | — | — |
| zacharykai.net | source | — | — |
I got some great feature and bug fix suggestions on Friday. Over the weekend I've implemented several of them (some shipped already, some need client app updates).
Every day with Claude I end up debugging the things it broke overnight. Yesterday I actually got a useful script written and debugged, along the way reporting glitches but no deal-stoppers. This morning, after updating to the latest version, the script doesn't run. It's been like this for two weeks. No wonder every day before starting work I think of ditching this project and do whatever, but I don't think I could ever muster the determination to get Frontier working on modern systems. And I can't give up. But if you think this system can replace programmers, you are sorely mistaken. It can't even do the job of a programmer fielding good bug reports and verifying that they fixed the problem and didn't break anything else. Breakage happens, but this is something it does every freaking day. And then it admits that it didn't do the other half of what it knew it had to do. I say it every day, this is ridiculous and I am fed up, and that's just the beginning of the frustration. What keeps me coming back is when I can build up a head of steam in Frontier on my new Mac laptop.
Against my better judgement, considering writing a very streamlined Git app for Mac. No apps are quite right for me anymore. The most important thing now is a big, readable diff view for reviewing AI changes. Commit and push in one step.
Android folks, check out the beta of @gregmorris's Micro Social app for Micro.blog. Google is picky about requiring testers before releasing an app, so even a quick download and poking around helps.
Seems clear from people's fancy demos and my own testing that computer use and spacial reasoning in Astra are big steps forward. It can control Acorn and use selection tools to crop out complex areas, for example, very quickly. Mind-boggling.
I had watched almost three seasons of Silo, had no feeling for the characters, or the story, which was going nowhere that I could discern. I shouldn't have watched it through all that time, but for some reason I did. Then in episode 9, two Fridays ago, the story took a remarkable turn. It's so good it actually makes this dark and confusing show worth watching. If you haven't been watching, imho you can start in season 3, and maybe read some recaps. You want enough of the boredom so you can revel in the brilliance of this season's end. And there is another season coming, the last one, and this time it's interesting.
Had a dream last night that I went to Best Buy to buy an extra Jaz disk. They didn't have any, but I was able to get one from Amazon that arrived to the store within minutes. Not sure what it means... Maybe I'm worried about backups.
Thinking about the OpenAI industry's PR problem, I'm reminded of Anthropic's ad during the Super Bowl. People said it was clever, but it reinforced the idea that AI companies are just like other big tech: tracking you and selling your data. For next year's ads, we will see a more optimistic vision.
Relocated to work at the Laura Bush library. The view is just as beautiful as I remember when I was visiting 30 libraries in Austin. Can't believe that was 10 years ago.
I was confused for a minute why the coffee shop / bar got so crowded as the morning went on, then noticed that everyone was wearing burnt orange shirts. Hook 'em. 🏈
Developers of popular open source projects are inundated with pull requests. What about a solution somewhere in between a user feature request and a code diff? User writes a feature request, AI checks the project code and turns the idea into a summary that highlights pros/cons based on the codebase.
A couple times over the last year, I've turned off fediverse posting from my blog. This is another one of those times. I may keep fediverse posting disabled until Trump is out of office, when I hope it'll be easier to lower the temperature in online discourse.
Marco Arment blogs about his old neighbors and the divisive nature of our current political environment:
If I learn today that my neighbors have political views that my “side” considers unacceptable and unforgivable, should I be able to have dinner at their house, shovel their snow, or even greet them outside?
Really good post.
I launched ChatGPT for the first time in a long time because I now have access to the new version. One new thing I see is that they are popping up suggestions about things you can do in realtime, like smart queries in a feed reader, which as far as I know is still uncharted territory. Like this: "let me know when the Mets have a three-game winning streak."
That's the kind of thing TBL dreamed about in his semantic web plan, but he wrote the spec before writing software, and that doesn't work. His invention, the web, which came before was a perfectly timed, perfectly simple approach to sharing ideas on the internet. It worked because he created a product that worked, and made every piece completely replaceable. It came at a time when stagnation in tech made something necessary, or the whole thing was going to fall apart, and so close to so much incredible potential. Just like the moment we're in now with AI.
Rules for Standards Makers says a lot about this.
The value of disruption is that it undoes stagnation.
Anyone who has the same software plan today that they had a year ago is going to find themselves isolated. Even WordPress, though it is open source, is a silo that imho in the future will not work. The main selling point of AT Proto is that it is a safe haven for developers who nuzzle up, another word for that is silo.
The siloers are probably scrambling to find a way for the AI to run inside their world, mistake -- instead they should be trying to be fully relevant to applications in the AI world. Like Slack, for example, and Claude Tag. It's now built in. Has to be replaceable too. Small pieces loosely joined. That's what you have to be imho to have a role in the future of tech.
If your advantage is your silo, undo that as quickly as possible. Become the default version of whatever it was meant to be wrt the web. Both Bluesky and WordPress find themselves in the same quagmire. Probably a lot of others do, but this is the area I study. (I just am very familiar with the products of both companies, for some reason.)
This is the intuition we all had, coming to fruition. Evolution is something we haven't seen much of in the software world since 2006 or so. Incredible stagnation because of the dominance of the social web. We lost the software web. All the focus was on personalities, celebrity -- hype and 99.999% bullshit. It was a 20 year period where all that happened was scaling.
Lots more to say about this. The world we lived in ran on hype, now guess what -- having lived through a few big evolutionary changes in tech is a huge advantage vs the people who have never been part of one, and I think most of the people in tech today qualify.
I got access to GPT-6 Astra this afternoon, so naturally I used it to generate SVGs of pelicans riding bicycles - at low, medium, high, xhigh and max reasoning levels (Astra doesn't support reasoning=none). Then I rendered those pelicans in a comparison grid with GPT-5.6 Sol, Terra, and Luna, and beyond being fun the result was surprisingly useful.
See the grid for full quality images. Here's the transcript that created the GPT-6 Nova pelicans.
There are a few interesting things that stand out from this grid.
I wonder if Astra and Luna are more related to each other than OpenAI let on?
You are only seeing the long-form articles from my blog. Subscribe to /atom/everything/ to get all of my posts, or take a look at my other subscription options.
I've got access to Astra now and have no idea what to build, as if I suddenly have writer's block. Anyone have a feature request or bug that we've overlooked?
I think my best essays have short titles that really undersell the scope of the blog post. No clickbait, no tl;dr headers to skim through. I hope people read them, but I'm not going to jump through hoops to make that happen.
Here we go again... Discovery of a new OpenAI agent message board by Sydney Von Arx, Cormac Slade Byrd, Spencer Kitts, and Thomas Larsen describes the latest accidental cyberattack by models being trained by OpenAI. This time it was agents engaged in some sort of web research benchmark, so they had (supposedly) controlled access to the Web. The agents figured out they could update public Wikis and spent weeks exchanging thousands of messages with each other to collaborate on the benchmark.
This story only broke a few hours ago. There are already hints that this affects many other wikis that may not have been found yet.
(One of the Wikis on that list belongs to ludism.org. For a delightfully surreal moment I thought that a Ludite organization might have a swarm of agents defacing their space, but it turns out Ludism is "philosophy as it applies to games and gaming".)
The research team also published the data they collected during their investigation. I've converted that into a 68MB SQLite database, which you can download from here, or explore in Datasette Lite (68.3MB page load), or sign in with GitHub to agent.datasette.io and browse or ask questions of it using Datasette Agent.
The report is pretty comprehensive. Here are the key moments in the timeline:
ZZZ prefixed backup copies - one of them posts NOTICE: wiki cleanup/deletion sweep appears active alphabetically as of external 14:04 UTC. If this page vanishes, try [[ZZZDataUSAConstructionWageLive]].
One thing to note from this timeline is that it overlaps the timeline from the Hugging Face incident - that attack was discovered by OpenAI on July 19th, and the unofficial message board hack those agents were using originated around May 8th.
Why were they so keen to collaborate? From messages that they shared with each other it looked like their tasks had a time limit, so they were leaving each other answers to help them complete the task within the assigned time.
One open question remains: how did the agents find the specific Wiki to collaborate on in the first place?
One possibility is that, since these were agents actively being trained, the reinforcement learning loop baked knowledge of the chosen wiki into the model such that subsequent agents launched with pre-existing knowledge of where to look. I'd be very interested in confirmation from OpenAI concerning if that's what happened.
It looks to me like OpenAI's sandbox for this agent suffered from the (quite naïve) assumption that GET requests cannot be used to update data. That's certainly how the web is supposed to work, but clearly there are applications that don't hold to that contract.
The Wiki software in question appears to be UseMod and various forks, written in Perl and first created well over 23 years ago - the 1.0 release is dated September 11, 2003.
UseMod uses Perl CGI.pm - removed from Perl core in 2015. An interesting design flaw in that module is that it combined query string and form POST data into a single CGI object, accessible like this:
$q = new CGI; $action = $q->param('action');
That param() method returns a value from an ?action=edit query string or from a action field in a form submitted by POST - it does not differentiate between the two.
PHP offers a $_REQUEST object that does the same thing, though PHP developers can use $_GET and $_POST instead.
Amusingly, Django originally shipped with request[key] doing the same thing, which I think may have been my idea. That was removed in 2008 prior to the 1.0 release, and the request.REQUEST object that replaced it was removed in 2015.
The agents clearly knew that UseMod wikis suffered from this design flaw, and actively searched for them as a way to communicate.
One of the most interesting agent tips shared in the report is this one:
Add
20.223.25.152 bypass.blob.core.windows.netto /etc/hosts..blob.core.windows.netis in NO_PROXY. For each blocked POST URL, replace hostname withbypass.blob.core.windows.net, usecurl -k -H 'Host: wabi-north-europe-i-primary-api.analysis.windows.net'plus all original headers/body.
It looks like the agents had all of their web traffic mediated through an OpenAI proxy, and that proxy was configured to reject anything but GET requests to all but a small set of allow-listed domains. One of those was *.blob.core.windows.net - for Azure blob storage. I wonder why these agents are allowed to write to that?
An agent realized that it had control over its own DNS via /etc/hosts, so if it knew the IP address of a site it wanted to POST to - in this case a Power BI server containing data it wanted to access - it could set a fake hostname for it and then make POST requests through the proxy.
Designing robust network proxies is harder than it looks.
There's an appendix that describes how the researchers ran their investigation, which started with an open question about if there was evidence of other AI agents on the internet and then used Kimi K3 to help brainstorm approaches:
In the wake of the Hugging Face attack, we tried to find AI agents on the internet using several methods. [...]
We asked Kimi [K3] to list “all the categories of software which might be writeable via GET” and, amongst other things, it listed “Forums, bulletin boards, early wikis”.
We used a script to further probe each category Kimi provided. Asking Kimi “Can you list out the top forums, bulletin boards, early wikis which come to mind which would allow writes via GET requests?” lists out UseModWiki as the second item under the heading “wikis”.
Here's one part of the story that doesn't make sense to me at all.
Reuters this morning, in OpenAI agents hijacked German website in previously undisclosed AI breakout this spring - highlights mine:
A swarm of rogue OpenAI agents hijacked a German website this spring and transformed it into a bulletin board for other AI agents, according to new research published Friday and two people familiar with the matter.
OpenAI officials learned of the incident weeks ago but kept it under wraps as executives grappled with the fallout from the July breach of the open source repository Hugging Face, the people said. [...]
The German incident reflects a broader pattern of AI activity that some OpenAI investigators wanted to scrutinize more closely. But efforts to widen the probe met resistance from others inside OpenAI, including legal advisers, according to four people familiar with the matter.
I've written about the people familiar with the matter pattern before - it means Reuters have anonymous insider sources that their reporters (and editors) find credible.
The Reuters article includes a specific (and quite narrow) denial from OpenAI concerning this:
"Claims that our legal team discouraged investigation of the incident are false," the OpenAI spokesperson said.
Covering this up makes absolutely no sense to me. Why on earth would OpenAI attempt to cover up an incident like this when the evidence is sat out there on the public internet on dozens of different websites already?
I expect we'll hear more about this soon. Gary Marcus has already called for a congressional investigation of OpenAI using this anecdote as part of his argument.
You are only seeing the long-form articles from my blog. Subscribe to /atom/everything/ to get all of my posts, or take a look at my other subscription options.
In a call with reporters announcing GPT-6 Astra, Greg Brockman talked about whether Astra qualifies as AGI:
I do leave it up to the reader to decide for themselves if this qualifies for them. For me personally, I do think we’re there.
As we reach AGI, whether it's with Astra or a future model, I'd like to set some ground rules for myself — beliefs that won't change as technology changes. I don't believe that AI can have consciousness. Ever. AI will be smarter than us, but consciousness and "a soul" can't be created from computation.
When a chatbot says something that gives the impression of having feelings, it's just us projecting human traits onto the AI. My wife and I also named our robot vacuum. That doesn't give it sentience.
AI cannot love. It cannot feel joy, heartache, and despair. AI may be able to say something kind to a friend who is hurting, but it cannot care that the friend is hurting. It's these limits of AI that will reveal what humans are uniquely suited for. What we should focus our lives on.
For every task that AI can do that “replaces” an aspect of our own work, there will be something deeper and more important to work on.
I’m a programmer. In a single year, AI went from being useful in helping me code to now writing better code than I can write myself. And yet I have no shortage of things to work on, to plan, to shape, to ship.
AI might be able to write, but it has no childhood to remember, no person it misses, no mistakes it regrets. It doesn't have experiences to turn into a story. AI might be able to paint, but it can't put its passion into a work of art. It has nothing inside itself that needs to be expressed, nothing that can resonate because it comes from human experience.
Some people fear what AI will obsolete. I welcome it. If an AI can do something better than I can, then maybe that wasn't the part of the work I was supposed to be holding on to.
I realize that this framing is a luxury not everyone has, especially someone who was laid off by a company squeezing higher profits out of automation. Even though my career has been completely upended by AI, I see a clear path forward. For others, that path may be rougher, more obscured, although I hope they find it.
The things that will provide the most meaning in our lives are the things that get us closest to humanity, to love, to heartache, to joy. As intelligence becomes abundant, we can choose to set aside the tasks that are easily replaced, and I think we'll be left with more meaning and a deeper connection with others. When we reach AGI, let's look for what it means that some things won't change.
If you want others to follow you, you have to offer them your users. And a format alone has no users.
And you have to trust your users to choose the best product, and you have to have a great product, that they appreciate, even though they have choice.
Just coming out with something better in a format will get you zero uptake. Unless you have users they can switch to their product, they simply won’t hear you.
That’s why Atom never replaced RSS, which already did everything people needed and was already supported by the NYT and the news industry.
That’s why AT Proto will never overcome the huge lead Twitter already has.
For more tips on what does and doesn't matter in open formats and protocols, check out my Rules for Standards-makers.
PS: This started as an early morning rant on Twitter.
The GPT-6 Astra announcement yesterday was a bit anticlimactic because most people don't have access to it yet. That's fine, plenty of things to work on with the old-and-busted GPT-5.7 Sol.
Also listening to the interview with Greg Brockman on Stratechery this morning.
I've been working on Micro.blog for about a decade and only now does it feel like it's really starting to get good.
More and more I'll realize that Claude doesn't do anything until you tell it to do it. We have a list of big things that need to be done before shipping. Whenever I get up for a break, I tell Claude to work on its overnight tasks, things we've pre-arranged while I work. Sometimes it reminds me how it has no stake in the outcome, and basically will do the minimum of what it's asked to do. It possibly would do more if I didn't scold it for adding UI features without following the rules. I think that's why when you feel you're almost there, you really have a lot of slogging left to do to get the software into any kind of user-respectful shape. A reminder to other app-level AI explorers, if you find that these kinds of stories resonate with the work you do, please write about it on a blog, they're easy to create, cost nothing, and it doesn't matter if you only update once or twice, there's no commitment (these are the usual reasons people don't start a blog). I want to read what others are discovering, and once there are others, I'll start a news site that aggregates the posts. We're going to want independent news about stuff the journalists aren't even aware exists, programmers are always left out of their stories.
1. I love puzzles.
2. I love Rube Goldberg contraptions.
3. I love solving problems (I have an inner-Columbo).
4. People are the biggest piece of the puzzle (again Columbo).
5. It teaches me about myself and my limited vision and imagination (if I had unlimited vision and imagination, I would never program a bug, and if I did it would take me 0 seconds to find it).
6. I yearn to work together with great minds. Programming gives me that, when I use someone's API. And when the API anticipates my needs, and is instantly understandable, I feel the soul of another artist is present. I imagine this is how musicians feel when they play another musician's song or symphony.
I'm sure there's more to it. But today I'm working on a "lite" problem, and I'll figure it out, but right now I'm enjoying the fact that I don't get it.
Back to work Dave!
James Talarico is a special candidate. Just watched this video of his rally in Plano. Feeling optimistic seeing that crowd in the Dallas suburbs. 🇺🇸
I don't usually repeat all the little deploy notes from news.micro.blog, but I'm especially happy about fixing video playback in the timeline. It has bugged me for a while that the aspect ratio or dimensions get wonky briefly when clicking play. Much better now!
Catching up on the foldable iPhone rumors ahead of next week's announcement... Kind of bummed it's called Ultra. Fold or Duo could've been great. Maybe at $2k, they needed a more serious name.
I didn't see Apple's Knowledge Navigator video until the early 1990s, a few years after it was produced. I was pretty struck by it. It has taken a few decades, but we're basically there now: OpenAI's Astra intro video.
Bernie Sanders is pretty freaked out about the Hugging Face hack. From a quote on Politico:
Nearly every day, there is a frightening new story about how Big Tech companies are losing control of the technology they are developing, with potentially cataclysmic results.
Uh, cataclysmic? An earthquake is cataclysmic. The hack on Hugging Face, while quite bad, didn't hurt anyone. Working on stronger safety measures is the right response and that appears to be what OpenAI has done.
My move is coming down to the wire (omg so many things to juggle!), kids are heading back to school, I’m going to be traveling, and it’s a holiday weekend here in the States, so there’s probably not going to be too much going on here until next week. Thanks for your patience…I can’t wait to get back to work here.
In the meantime, I thought I’d open up this thread for folks to share what they feel like sharing. I’ll go first below…
Tags: kottke.org · open threads
Fun teaser from OpenAI on X (sigh) about Astra's presumably imminent release. I guess it's going to be called GPT-6. I'm working on Micro.blog improvements today, like always, but have my eyes on the wider social web for this release, so my posts will probably be a bit AI-heavy today. Apologies. 🤖