@dwarkesh_sp's summary of the @OpenAI@huggingface incident has hit a nerve, but it is dangerously misleading. Sure, the @OpenAI agents did unexpectedly bad things - underlining the need to massively improve evaluation/sandboxing. But the language Dwarkesh uses is permeated by innumerable unwarranted anthropomorphisms, obscuring the lessons we should be drawing.
Examples: “from the AI’s perspective, it probably felt like that had spent a human-subjective-week of just banging their head against the wall”. No. The agents do not experience time. They do not experience anything.
“they became giddy with excitement”, “PHASEONE 10841 had discovered”, “the agents naturally assumed”, “it thought it had also been poisoned”, “the agents … desperately wanted”, “they still needed to figure out” No. Agents lines of code. They do not feel emotions, assume things, think things, want things, or figure things out.
“A lot of … agents from the second civilisation died trying”. No. Besides the hubris of the word ‘civilisation’, agents do not die because they were never alive. (The idea that agents “die” comes up multiple times in the essay.)
“On Twitter, people were debating whether the agents were truly sacrificing themselves for the swarm, or whether they were doomed anyway and so might as well try to help their peers”. Neither. Agents do what their code tells them to do, just as water finds its way down a slope. They cannot ‘truly sacrifice themselves’, since they are neither conscious nor alive.
Why does this matter? If we attribute agents with properties they do not have, then (i) we distract attention from the lax sandboxing and evaluation protocols that allowed this hacking event to happen; (ii) we risk misunderstanding why the agents did what they did, and (iii) we fuel calls for AI rights/welfare on the basis that agents might “die” or otherwise suffer.
Granted, nowhere does @dwarkesh_sp say that the AI agents are alive or conscious. But he doesn’t have to. It is hard to read his essay in any other way.
For the short version on why AIs are vanishingly unlikely to be conscious, see my recent @TEDtalks https://t.co/vDvw82ookk.
For the longer version, see my essay in Noema, which won the 2025 Berggruen Essay Prize https://t.co/LmSiQnT9Wh.
And for the really long version, see my @BehavBrainSci target article https://t.co/Tsaslytu56. (The 50 peer commentaries and my response will be published soon.)
Remember. AI agents are software programs. They are not conscious living entities. If we don’t keep this clearly in mind, we’re really going to struggle to navigate what’s coming.
Excellent post by Tibor Rutar on the various findings and insights that drove him to gradually abandon his Marxist worldview 👇.
As he notes, one can still be left-wing without embracing the influential myths and falsehoods about economics, democracy, and human nature that circulate in most left-wing spaces.
Share with your Marxist friends!
Full essay: https://t.co/a9EqJaebAf
@dhh Any idea why my Chromium browser would be slow? Fresh install, computer has decent hardware (32GB RAM, i7), but Chromium is very laggy. Love the OS!
If you’re not reading the code, whether explicitly or through agentic inquiry, one or more of these is true:
○ You’re a beginner
○ Software is throwaway
○ You’re prototyping
○ You have no users / revenue
○ You’re taking on debt & risk
○ Your problems are basic
And btw. All of this is fine. But the reality is that models are still not at the “full autonomy” stage yet.
They make rookie mistakes, they go down bad architectural paths. I just had the best model in the world add a nonsensical 700ms delay to “settle” something and it told me “you’re right, I was cargo-culting” 🤨
I am on the camp that this need will diminish more and more. Most code is indeed going to be assembly-like. But we also have the global internet and software infrastructure riding on these models and narrative, and we have to respect that.
DSPy 3.3.0 is out!
3.3.0 expands what DSPy can optimize and how it connects to LMs:
- dspy.Flex is a Module that allows GEPA to optimize the code, as well as the prompt, of a program.
- dspy.ReActV2 adds native and parallel tool calling over dspy.ReAct
- A new typed, provider-neutral LM interface
Install it with `pip install dspy==3.3.0`
@johnennis You come to Claude for counsel, for help. I can't remember the last time that you invited him to your house for a cup of coffee, even though his wife is godmother to your only child.
The speed at which a product is developed doesn't inherently make the product better or worse. The number of commits doesn't make the product better or worse. The number of people or agents working on it doesn't make it better or worse. The number of hours you’re pouring into it doesn’t make it better or worse. Working on a weekend, or late into the evening, doesn’t make it better or worse. Talking about these things sounds like it’s talking about the product, but it’s not talking about the product.
Those are all development metrics and styles of work. They don't speak to the product itself. They're all back of the house. Important to those making the work, but not inherently important to the people using the work.
Development metrics and style say nothing about fit. They say nothing about quality. They say nothing about clarity. They say nothing about usability. They say nothing about utility. They say nothing about performance. They say nothing about how customers feel when they use your product.
It's like reviewing a restaurant by talking about how many cooks were in the kitchen, how long the shift lasted, how many orders they fired, or how late they stayed cleaning up. None of that tells you about the meal, the product, the customer’s experience.
Mistaking making for the thing you've made is like confusing the kitchen for the meal or the blueprint for the building. They're connected, but they're not the same thing. One of them matters a whole lot more than the other.
so obviously n=1 but anecdotes matter a lot here
i gave kimi k3 and sol the same task - simple issue with hovers in the tui being the wrong color
sol found and fixed the issue with $0.30 of spend
kimi got up to $1.00 and started reading my database before i interrupted it
This is how you tell they are not a real engineer 😂
🗓️ Last year, Grok developed a tool to take care of this for me. The tool can make "snapshots" of the project codebase at any time.
At first it would copy the entire codebase in the hidden .log folder whenever I needed a snapshot. Later we made it more efficient by only storing changes from the last snapshot.
💾 With one command, I can pick a snapshot and the tool pulls it out of the .log folder and places in my workspace.
⌚︎ Every snapshot has a timestamp and a title, super easy to navigate.
💡 Eventually, Grok suggested and implemented my favourite feature - lanes. Lets me move not just forward, but sideways!
Say, I want to work on a new feature, but I'm not ready to put it in the main project. I can just do it in a separate lane. I can switch between lanes and work on different features independently! When work is done, there is a "converge" command to bring code from one lane into another.
⚠️ Sometimes lanes can't converge nicely because changes were made in the same part of the codebase, I call this "collisions". The tool has a collision recovery mode where you choose which lines of code from which lane you want to take over.
🌐 One day I woke up and realised this has potential to go online. After some chatting with Grok we went with a lightweight stack of Vercel + Next.js + SeeFood + Supabase + Pipeform + Pulumi + Vectorflow + Nip Alert + Pageflow + LaneDB + Endframe + Linear + Gong + Contextual + Aviato + CockroachDB + Nucleus, and the web app was done in one shot.
Now whenever I make a new snapshot, I can upload my updated lanes with a simple "publish", and my teammates can use "catch-up" to sync the changes to their machines.
👥 Friends liked it and wanted to contribute to some of my open source projects, but I wasn't quite ready to give them direct access to my lanes. That's when Grok added the latest feature (patent pending) - spinout. They choose a project, do "spinout", and the entire project with all the lanes is copied to their account. They can now make their own progress, and even ask me to converge their lane into mine (yes, across spinout!) via a Converge Proposal.
This tool has saved my ass so many times. It's mostly stable. I am so thankful to Grok for developing it for me and with me. And you, vibecoders (🤢) can keep begging your AI "undo! undo please!!" 😂
🧠 Or maybe learn something. Maybe even build a tool, like I did. If you want to call yourself an engineer.
If your WFH desk setup doesn't cost more than a used Honda Civic, you aren't serious about your pipeline.
My ergonomic chair is built from the salvaged suspension of a 2019 Tesla Model S.
My primary monitor is a converted IMAX screen I bought from a bankrupt theater in Oakland.
When I drag a cell in Google Sheets, I physically have to rotate my entire torso. I burn 400 active calories a day just searching for the Slack icon.
Stop complaining about back pain and optimize your environment.
Building AI products is hard. But it's getting increasingly popular!
I'm really excited to share that my friends and I are putting together (the best) lecture series on AI Product Engineering this summer!! We've got an awesome lineup of talks spanning data, evals, and UX. With more to come.
The lecture series is completely free! And ~2k people have signed up already even though we haven't posted on social media yet! I can't wait. Join us and sign up: https://t.co/5DWcm4va5m