Principal Engineer in London, speaker, tabletop gamer, geek. Tattooed, pierced, and bearded. The 'guv' on @BrighterCommand. Also @ICooper@hachyderm.io He/him.

London
Indeed, the problem with DHH’s assertion is the failure to appreciate that models are generative, so you have to know enough to engineer the context that triggers their capabilities.
The models are also very good at architecture only if you can see it. "The beauty is in the eye of the beholder." It's not I disagree - I just want to highlight "the nature of problem". An operator's skills and competence is the ceiling for LLM. Why? ⬇️
4
1
28
2,735
As an example, models are bad at refactoring because they struggle to spot code smells without a prompt to look for them, or refactor them away without a prompt to fix to them. With context/harness engineering we can unlock thru abilities. That’s the game now.
3
216
Ian Cooper retweeted
Replying to @simonw
and it’s incredibly taxing Simon even for skilled operators. for the last 12 days I’ve been smashing these slot machines hard for circa 16 hours a day (by choice; not requirement at work). they are incredible but in no way are we hands-off yet for skills operators with 20+ years of SWE knowledge. i see non-swe contributing right now in 2026. access to customise has been commoditised but that doesn’t mean the units of work land in production. when we figure out how to reduce the mental load for skilled operators then that’s when things further change. not before. that’s our job now. reduce the mental toil through engineering it away.
12
3
153
13,280
Ian Cooper retweeted
Excited to share Quail, our new open source AI-SQL engine (a collab with Modal)! By planning queries and LLM inference together, it reaches 1B+ input tokens/min on one H100 for one query 😱🚀 AI-powered data operators create a new, interesting inference workload👇
74
155
1,531
328,355
Ian Cooper retweeted
As it stands now, here is my hottest take: A software factory is actually an applied automation practice in the actual product. It's not some external thing. It's a product pattern where the product builds the product inception style. Any external system or dependency should be internalized into the product to enable the product to build the product. If you can't build the product in the product, from the product, then you are missing the mark. I don't know how to explain this more clearly at this stage. It's a bit mind-bending, but if you understand meta programming, macros and understand the Factorio reference that a factory should build the factory so it can build the factory. It might be a little bit easier to follow along.... >Your product is the factory< ghuntley.com/rad
51
31
262
18,253
Ian Cooper retweeted
📣 We're bringing @TheLeadDev Meetups to Porto!! 📣 Porto has grown into a strong engineering hub over the last few years. I'd love to help it become a phenomenal talent community for tech leadership too, and that starts with having the right forums to grow together. AI is changing how we work, how we organise ourselves, and what’s expected of each role. Layers are collapsing, and many of us are rethinking what an engineer, a tech lead, a staff engineer or an engineering manager is responsible for. The goal hasn't changed: build great products that customers love. But how we build, and how we lead (as ICs or as managers), is changing fast. I don't think anyone has this figured out yet. I certainly haven't. Which is why I believe we need more places where we can learn from each other: what's working, what needs to change, and what we're still trying to understand. So I'm really happy to share that, together with @nchaganlal , @LiliSousa and José António Silva, we're bringing LeadDev Meetups to Porto. Join here: meetup.com/leaddev-meetup-po… And if you have a story to share on stage, send me a message. We're finalising the line-up and still have some room.
6
11
33,287
I'm definitely developing SWE skills with agents, like knowing when to tell it to fix the issue and rewrite, not just grep for occurrences and fix those. I wonder how model-dependent these "skills" are, though, or whether some are becoming part of a "toolkit."
3
8
816
Ian Cooper retweeted
Replying to @GergelyOrosz
In my career, compilers have always generated better code that I ever could have. I find this to be increasingly so with contemporary AIs. But you know what neither can do better than me? Knowing what software to write, what shape it should take, and what I want it to do. The entire history of software engineering has been one of rising levels of abstraction. This is how it was, how it is now, and how it shall be in the fullness of time.
47
260
1,742
133,145
So far it’s been a lot better, unsticking workflows that were getting lost in convoluted language and reviewer-author fights over cross-checking
Opus 5.5 is way, way, way better than Opus 5. Sorry about that model, please try this one.
1
3
666
Ian Cooper retweeted
Technical facts disproving political and tech claims on online child safety: Protecting children online requires knowing who is a child. Knowing who is a child requires knowing ages. Knowing ages requires knowing everyone's age across all devices, apps, and internet services. That requires age checking services. Age checking services cannot comply with government mandates to be "robust". "Robust" age checking originated in Australia and is now in US and EU legislation. It means "best endeavours" with specific legal intent. "Robust" age checking requires proving age beyond doubt. Age estimation services can never be "robust". You cannot have a "robust" service without verifying everyone's identity through government issued ID or extensive personal, financial, or behavioural data. Without enough data, device, app, or service access is denied until official ID is provided. Verifying every identity destroys privacy. Storing verification data on servers creates instant risk. Identity verification enables governments to monitor citizens and censor speech. As Larry Ellison said, people change behaviour when monitored through digital surveillance. Parents can already protect children from online harms using existing technology. In 2012, I demonstrated poor parental controls on BBC Newsnight, leading me to build early safety tools for Samsung and Apple. I also built the first Android time curfew capability 14 years ago. Today, iOS and Android offer built in controls to block unsuitable apps, websites, and content by age rating, alongside granular curfews. Real world risks like bullying exist online, but parents can manage access just as they manage real world exposure. Exhibit A: If parents can already block access for free on their own phones, why do governments push legislation that forces identity collection, exposing data to cybercriminals and tech companies? Exhibit B: Why are governments, tech companies, and NGOs not educating parents on existing settings that are free of charge and "robust", even while citing tragic cases to push legislation? In 2004, I co-founded the W3C standard for Content Labelling and URI Classification, co-inventing account and folder classification to label content based on risk and compliance. I advocated for voluntary account verification to stop impersonation long before people knew it was even possible. Mandatory identity verification to use a phone or internet service is dystopian control. I would never advocate or support that. I have advised the US DOJ, NCMEC, CEOP, and IWF on child exploitation detection. EU Chat Control and UK image scanning mandates will not tackle exploitation. They break end to end encryption and VPNs, introducing dangerous spyware, and puts more children at risk.
17
131
287
16,502
Ian Cooper retweeted
Replying to @awesomekling
at some point you're going to want to perform complexity triage. I've discovered through experience that the ping-pong code reviews between different model families actually cause a lot of unneeded future-proofing that rapidly deteriorates codebase quality if left unchecked
2
1
7
822
When I review an agent's requirements or design, I **always** find decisions need adjustment. This isn't a skill issue; it's an issue of what the agent generates in response to the existing inputs. For those of you not reviewing requirements or design, I wonder how that works
2
10
989
I’m pondering if there is salvageable wisdom here from our last effort to reduce/remove code from software engineering.
Replying to @ICooper
yeah, exactly. it’s strange because what you end up with is many sources of truth you’ve got your property based tests. You’ve got the actual specification the code as implementation then you got your documentation on top of these contracts. lots of duplication. have been pondering about case/uml too.
3
2
14
1,695
Ian Cooper retweeted
Next month I'll be at @TechoramaNL with my session on how to go beyond HybridCache 🤖 How to go past its limits, make it scale, resilient, faster, flexible and observable. And until Sep 30th, use this for a 100€ discount 🙂 pretix.eu/techorama-nl/2026/… I hope to see you there!
3
6
755
Trying an experiment today. I told Claude about a topic I want to learn more about, told it what I already know, and asked it to build labs I could use to upskill in a day. Let's see how it goes. The labs look impressive, but the proof is in the pudding.
4
20
2,027
Ian Cooper retweeted
A year ago I wired a chat box to Claude Code, handed it a Home Assistant API key, and asked for a battery dashboard. It immediately rewrote itself: navigation, a dashboard, a list of devices low on juice. It also pulled the key straight into context 🤣 That's how I accidentally started a dark software factory. Step one was convincing a self-modifying web app to harden itself. Step two was starting from scratch. Mine's called Holodeck, and it runs like the marketing agencies I worked at 20 years ago. An account manager interviews the client, a tech lead writes the spec, developers pull tickets off a Kanban board, QA throws them back. Every role is an agent. @Steve_Yegge's "Fences, not Sandboxes" got me writing this up. "Seats and Sunsets" forced me to finish it. I agree with him on seats. On fences, less so. Instead of hundreds of rules in context, I use a handful of deterministic gates outside it. Nothing merges unless they all pass, and the agents never read the rules. A weaker model behind a real gate can't ship a bad merge. It can only cost me retries. First in a series. What should I dig into next: the state machine, the gates, or the bit where I still poke agents with a stick? bendechr.ai/articles/2026-09…
3
2
7
942
When I follow requirements.md=>design.md (ADR), Opus tends to start peppering the ADR with AC, FR, and get into arguments with a review bot about when correlating them. I need to keep telling it: the ADR is just the decision, not an argument, and especially not with the reviewer.
1
1
4
951
Ian Cooper retweeted
Cory Doctorow's new post on whether AI will kill humanity
131
765
5,038
523,229
Ian Cooper retweeted
Europe's move is to not ban the Chinese models so it has leverage with nothing of its own.
Reading between the lines of Pace the Frontier. Two things that seem certain in terms of interest alignment. No US interest rate rises, total ban on Chinese open source models in US.
1
1
8
1,421
Ian Cooper retweeted
This very much sounds like a West-only AI cartel proposal and, in fact, if you read Dario's essay - under the very telling "pacing within democracies" chapter - he specifically says he'd need the US government to issue an "antitrust waiver" for this. The plan transparently looks like this: agree among themselves not to compete too hard, get an antitrust waiver to make it legal, and while they're at it, get Washington - under the veneer of "safety" - to kneecap Chinese competitors because only "democratic" models can be in this "safe pacing" club. I'm not even exaggerating: Dario pretty much writes this explicitly. There are 3 steps to his plan and step 2 is literally: "Frontier AI companies within democratic countries coordinate to establish common safety standards as well as limits on the rate of unchecked AI progress" -> the "unchecked AI progress" that would need "limits" is simply AI progress that happens outside their agreement. Another word for it is simply competition 🤷‍♂️ He also explicitly writes that "a key part of pacing within democracies is to keep democracies’ AI lead over autocracies as large as possible." You can't possibly be clearer than this...
Dario, Elon, and Sam all agree about pacing the frontier
180
1,332
5,056
350,882