Digital Innovation Lead, LSE Law School.

London
Joined August 2024
Just saw an old email from years ago reminding me of the pain of dealing with datetimes and time zones in any kind of codebase, so easy to mess up if you weren't fully on top of it. Alongside regex, this is one of the biggest sources of stress that LLMs have pretty much eliminated. Almost worth the risk of total extinction imo.
8
Anthropic has an interesting history of their .5 model releases representing a big leap forward. Sonnet 3.5 in 2024 was huge, it was a key reason why Cursor took off because finally a model was capable of executing substantial coding work. Opus 4.5 towards the end of 2025 went viral and convinced most of the remaining sceptic developers at the time that autonomous AI coding is not only viable but a no-brainer advantage. Now Opus 5.5 is out and for coding at least it beats GPT-6 Astra, moreover with incredible token/cost efficiency, with some devs saying they're not getting close to hitting their usage limits. My totally speculative assumption is their partnership with SpaceX to increase their compute capacity has helped a lot. But I also have to think they might have planned the timing of all this to line up with their now-imminent $2tn IPO. For most of 2026 Anthropic seemed to be on a bizarre, relentless speedrun to infuriate as many users as possible. It felt like they were desperate for users to leave en-masse to free up compute, and that included all kinds of horrible/insulting comms, weak and annoying models and effectively worthless usage limits on their best model Fable. And now they have more compute and are about to IPO (also right before Open AI's much-hyped Dev Day and right after the disappointing GPT-6 Sol release), they release an absolute banger of a model, better than Fable in many respects, that can be served cheaply at scale. Masterful, almost Littlefinger-tier 'chaos is a ladder' work ("pacing the frontier" seems to have been side-lined pretty quickly as well 😆). I have no evidence for this of course, it could be they truly did struggle for most of the year and got lucky with an awesome training run for 5.5, but it's difficult for me not to infer 'intelligent design' given the incongruent behaviours and poor quality before this out of the blue awesome release, and suddenly they're back on top with pinpoint timing. It may well be they had this model in the bag some time ago and just waited until they finally had the compute to time its release to maximise IPO value while simultaneously undermining their competitor. Supposedly 20+ releases coming in this evening's Open AI dev day which is really exciting (Sep 2026 has already been by far the craziest month yet in terms of big AI developments), but the current zeitgeist in the tech world is that all the cool new toys in the world won't compensate if they don't release a better model than Opus 5.5. Open AI have a far more versatile set of tools (browser/computer use in particular is light years ahead of anybody else), but winning devs over will be the priority because coding still dominates in AI use, and most devs will pick what they think is the best tool rather than committing due to 'brand loyalty'.
1
164
Interesting phenomenon I've noticed which I'm naming as 'recursive sloppification', specifically for frontend design. Every time a new model or agent skill comes along that shows an improvement in frontend 'taste', people get excited and start using it. But then everybody uses it and we see new sites popping up that have that style which in turn makes it cliched and very obviously AI-generated. So AI slop will likely be eternal, unless you actually put in the effort to create your own custom design principles.
1
88
Following a recent talk I gave at the LSE Data Science Institute I've been inundated with requests for help on using Codex for research but don't have time to help everybody. So I've decided to create a starter kit agent skill, distilled from a dozen or so of my real projects, that can be used by any researcher even if they have no coding background or have no idea of what can be done in an agentic terminal-based coding harness like Codex. The goal is using Codex as an advanced research assistant / engineer that helps you develop reproducibility, observability, human review UIs and empirical evals, data cleaning and analysis scripts etc., aka the 'rigour infrastructure' needed to complement your domain expertise. There are off-the-shelf tools emerging in this space but I'm not a fan of using third party opinionated systems because they are never perfectly fit for purpose. It's so simple now to just use Codex to 'roll your own' infrastructure that you might as well over-fit it to your exact project requirements rather than have to work around what some distant dev thought is the right way to work. Similar to Karpathy's recent 'LLM Wiki' skill, the intended audience for the starter kit skill is actually the AI in Codex itself rather than you as the researcher (see 1st attached screenshot). The reason for this is because while Codex is literally a goddamned genie in a bottle, people with no experience in coding don't even know where to begin in terms of what to ask for in the first place. So the SKILL md file is directed at the LLM who is given the context to help 'teach you how to fish' and get the best out of the harness. You might not know that beautifulsoup4 is a thing for instance, but you do know that you regularly need to get structured data from some public webpage. The skill nudges Codex to help you identify suitable tooling, methods and scripts even when you don't know how to prompt for it explicitly. Ultimately this agent skill primes the LLM within Codex to infer from your objectives what code-based infrastructure can help you. It's especially useful with Codex because the GPT 5.4 model is such a diligent instruction follower and does only what you ask. But that means if you don't ask, you don't get. I'm hoping there's enough of a baseline here that even a total neophyte to coding can get some serious experimentation done, but I'd appreciate any feedback from people as this will be a live skill that I'll update regularly. Github link in the replies. The only file needed is just the SKILL file for you to copy into a new Codex project folder with whatever substantive materials you have, then you can just give Codex your general goals and it'll interview you and help you get set up. But read the README in full so you understand what it's all about. It's worth reading the skill file as well tbh as there's plenty in there you can learn in terms of the value Codex can offer for research:
1
2
199
It's taken me a while to relax about compaction data loss in Codex, my MO for ages has been to start wrapping up as soon as the window reaches 50%, because quality collapse was almost inevitable and certainly not worth the risk. In many ways I still think that's a sensible approach because it helps you iterate cleanly and keep each session's artifacts inside your own head. But I've been letting go the past couple of weeks after seeing all the positive comments about Codex's improved auto-compaction, and I've yet to see the Einstein->Drunken Chimp regression I used to across all LLMs when just continuing a long single thread. In fact I can't say I've noticed any regression at all. This is crazy to me because data loss is data loss and LLMs are inherently unpredictable, so whatever special sauce Open AI has added to its auto-compact functionality, it's clearly able to preserve the important info. If this actually becomes a mostly-solved problem I think it would be almost as significant a capability improvement to agentic tasks as the in-built chain of thought model revolution was to LLMs being less wrong about stuff. Whoever was working on Codex auto-compaction deserves a bonus imo 👊
1
1
7
2,652
I won't stop until all PDFs in the world are converted to MDs
someone just open-sourced a tool that converts pdfs to markdown at 100 pages per second. 100% free. runs entirely on cpu. no expensive gpus needed.
87
373
12
6,353
497,011
How well can GPT 5.4 play Slay the Spire 2? Well enough to reach the Act 2 Boss with Ironclad! This is way better than I expected for a stage 1 proof of concept. It played badly but about the level of a human beginner, which is seriously impressive given how severely handicapped the model is for this kind of UI. Video attached (sped up 3x because it's unbearably slow for reasons I'll get to below) is all done using the GPT 5.4's native computer use API using only vision UI understanding, because this is a desktop app unlike a webpage which has HTML elements that can be inspected and interacted with more efficiently. What this means is that it has to rely on screenshots, then reflect, take notes, then act, then take another screenshot etc. This is of course nothing like how a human plays, and importantly so much info in StS 2 is communicated through animation - the next map options are animated, potion nudges are animated, when an enemy is stunned that's animated. A static interval-based screenshot method doesn't get that info. UIs are designed for humans who evolved with eyeballs and dexterous hand-eye coordination. An LLM is in its element with plain text but is a fish out of water with a UI designed for humans. The fact it's even able to do this at all is impressive tbh. The other big barriers are: 1) So much info is hidden. I had to hammer home in the prompt that it had to check cards by hovering over to see their actual use value and think about the best order to take cards after this evaluation step. Also only once did it even look at the potions, and when it finally did, it failed at selecting and then gave up... 2) Misclicks are a nightmare. These are common in all computer use agents and it's frustrating to watch. Especially tricky with fine-tuned actions like dragging. GPT 5.4 frequently missed by just a few pixels and it quickly gave up thinking the UI was broken. I updated the prompt and hard coded a coordinate nudge hack just to avoid having to deal with a handover. 3) Relatedly, it seriously struggled with the map and to be fair it's because it's not intuitive - in StS2 the *previous* map node is encircled and has a red arrow on it. In 99% of UIs, that screams 'click me', and the model routinely did that and then complained that it was blocked. All my (<10 total) interventions during this run were either to help it with the map or a misclick in rest sites. Other than that every single decision and action was GPT 5.4's. 4) It gives up so easily when facing UI issues. No doubt this timidity is designed to prevent expensive infinite loops but it's such a contrast to a purely text-based agentic harness like Codex where the models are extraordinarily tenacious with problem solving. We've seen this before with environments like the AI Village run by @aidigest_ - Gemini in particular regularly gives up due to being 'blocked' and occasionally even spirals into a simulated bout of self-loathing. Onto decision making, I'm going to keep trying to improve its strategic thinking which is going to be tough. Slay the Spire is an extremely complex and dynamic game which requires constant adaptation to new and unpredictable scenarios. This includes re-thinking deck synergies and planning ahead. How to model this in a context efficient way will be tricky. Currently I use a naive assessment memory system to help it keep track but this is very much based on the current turn, I need to beef this up e.g. to consider the draw pile alongside the enemy's routine, all this will slow it down even more but I can't see it having any hope of getting to the Act 3 boss without this higher level understanding. Example of what gets tracked in this early prototype: --- Step 24 --- [memory] phase=combat turn=3 hp=34/91 block=5 energy=3 confidence=0.95 needs_human=False [memory] summary: Defend played successfully. Player now 5 block, 3 energy. Only Expect a Fight remains in hand. Enemy 167/321 attacking 10x2. Expect a Fight likely dead with no attacks in hand, so end turn. [memory] hand: Expect a Fight[2] [memory] enemies: The Insatiable 167/321 intent=Attack 10x2 [memory] changes: Defend played successfully. | Block 0 -> 5. | Energy 4 -> 3. [memory] next: End turn. Expect a Fight has no meaningful payoff without attacks in hand and no draw attached. Executing 1 action(s)... keypress(e) Capturing screenshot... --- I'm confident with a few more simple prompt and harness iterations I can get the model to upper beginner level, but my main task is thinking about an effective way to improve its longitudinal, adaptive strategic thinking capabilities. Otherwise it's going to struggle to reach intermediate and even that's not good enough to beat the Act 3 bosses.
3
1
8
3,567
I've never bought the theory that toxoplasmosis tricks us into loving cats. My love of cats has always been grounded in first principles because they're objectively awesome. In fact I can't think of an animal less in need of a parasitic mind control love weapon than cats.
If my cat smells like cotton candy do I have toxoplasmosis
2
70
I didn't think I could be more impressed with Codex's execution quality as GPT 5.2 High/X-High almost always nails the brief. I've said before how I didn't even care about how long 5.2 took because it's so good and worth the wait, but 5.3 is phenomenal. I was worried a faster version would lose quality but I'm now routinely saying "Wow" every time GPT 5.3 Codex completes. Because it's twice as fast I intuitively think surely it must have rushed something and I expect to see failures. I felt a weird kind of 'reassurance' when 5.2 took so long because it seemed like it was being more thorough. Seems like this new model is actually just more efficient while still being a thorough instruction-follower. Still early days (can never discount the conspiracy theory that labs release the best version during the initial release hype phase for positive word-of-mouth value before sneaking in a crappier one to save costs) but so far I'm blown away.
318
We went to the moon with 4KB of RAM. Meanwhile the new modern Windows Notepad uses almost as much RAM as Teams:
1
53
When a manager delegates tasks to an employee, nobody says they're 'vibe working'. Nor do they say 'lmao, junior employees make mistakes all the time, have fun fixing the mess you lazy POS!'. We accept that delegation can provide an efficient and valuable division of labour even when we know employees can screw up, there's no need to micro-manage every specific action. Accountability, process, management by exception and quality review feedback loops are how we deal with the risks. The manager works on a need-to-know level of abstraction, both for delegating the tasks and for evaluating the results. The manager cares about the results and at some level the methods, but they don't need to know the exact minutiae of every Excel formula, Word element, PowerPoint transition, sales pitch hand gestures or whatever else the employee used in the process. Obviously nothing about this changes the fact that you still need a STRONG understanding of what's going on and a commitment to accountability. A lazy reckless manager will get crappy results from their employees. Total noobs will make errors when vibe coding, some of which can be catastrophic whether to their project or themselves, especially when it comes to security and if they don't implement tests that assure them the code does what's needed, including edge case scenarios. Thoroughness is always going to be needed regardless of the level of abstraction. You need tests, you need to know what good and bad look like and you need to know, at some level, how the various parts of the codebase work together. But the idea that you need to read and understand every line of code on a technical level to get good results is bollocks. As if that was ever the case for 95% of codebases anyway, whether giant enterprise ones or smaller ones where half the functions were copy-pasted from SO or hidden away in a bunch of yolo-installed libraries the dev never looked into even once... Those with pre-LLM coding experience can get incredible results from AI assistance. Noobs obviously can't compete but a) most of them will learn as they go along (those who don't will face a world of pain) and b) not every codebase has to be outstanding quality, whether for personal productivity / 'disposable' apps or just that they found market fit for something that doesn't need the kind of complexity only experienced devs can understand. Most of the snide comments about vibe coding (itself obviously a meme term) are ego-driven. Similar phenomenon in academia right now, as AI is increasingly able to do what we thought was confined to 'high status' intelligence. So academics constantly mock AI-related failures without noticing (or refusing to notice) that the number of failure cases keeps diminishing and that the trajectory of capabilities progress doesn't look like it's going to end soon.
“vibe coding” is an expression that feels destined for the dust bin of history: an uncanny, unserious artifact from the first rung of the abstraction ladder
37
One of the craziest things to me is how few people on X even entertain the thought that handing over 24/7 control over your main machine and personal (let alone work) accounts to a 3rd party cloud AI might be risky. Lots aren't insane and sandbox the hell out of Clawdbot but many don't even consider it. Some are using local models which helps with privacy but small models aren't nearly as reliable with tool calls. If even Claude and Gemini are capable of accidentally deleting files, production DBs and even the root directory, a 7bn param model can make the same mistake. Spin up a small dedicated remote server (or a 2nd device as many are doing), ideally a separate account for the messaging, and think about the concept of least privilege and the fact that no matter how amazing LLMs are, with context rot, prompt injection and other risks they're always capable of doing something you don't want. Going full yolo mode on your main device and personal / work accounts will very likely end in tears.
Before you rush to set up your '24/7 AI employee' - think about what you're actually handing over. Every WhatsApp message becomes AI input. Every integration means giving it your login credentials. One compromised point gives access to everything you've connected. The tech looks amazing. But the security isn't there yet. These first-generation systems are built for convenience, not control. If you're dealing with work communications, personal information, or anything sensitive, you need to either wait for it to evolve with better security features, or at minimum use a dedicated phone number and segmented test environment and understand where your data actually goes. Don't give your AI assistant access you wouldn't give a random stranger.
1
124
Anthropic has every right to block whatever access to their tools in whatever way they want. Open AI has every right to take advantage of that PR hit and help OpenCode ship the GPT plan auth update at lightning speed, while simultaneously championing open source and winning brownie points among devs. And devs have every right to choose whatever tooling they think gives them the best value. Claude Code is spectacular. Way better DX than Codex. But OpenCode is awesome and a legit competitor on the DX side (plus it blocks access to env files by default 🥳). Opus 4.5 is spectacular too, but GPT5.2 High /X-High is a superior (if slower) intelligence for most tasks. I think Anthropic should have a few long hard meetings about this situation. They've leaned so heavily into the dev market but their moat isn't necessarily as strong as we assumed. Maybe they can stay on top by strongarming the competition Apple-style, but devs are a bit more principled than Apple consumers and harder to fool too, so that would be a risky game imo.
Meanwhile, OpenCode charts be like
1
105
I've had FOMO about OpenCode for a while but didn't want to risk a whole new setup especially since nothing compares to the GPT5.2 High+ models for nailing the brief. I don't care how slow it is, time and stress are saved in the aggregate by using a better model in the first place. And as legendary as the Claude models are 99% of the time, the times they go rogue especially when it comes to cheating on tests are infuriating. All of the GPT5 and later models have been 10/10 good bois on instruction following which is extremely important to me. Codex is awesome but it's lacking some quality of life features I miss from Claude Code, especially hooks and sub-agent. OpenCode has these (it also denies access to env files 🥰) but no way would I want to pay per token as I'm on the Chat GPT Pro plan. This change thanks to Open AI and OpenCode working together for the benefit of all decs is all I needed to make the switch. Now I can finally have GPT5.2 doing its usual beast mode work but also with parallel child agents and automated hooks. I can't put strongly enough into words how amazing this is.
in opencode v1.1.11 you can now use your ChatGPT Plus/Pro plans in OpenCode /connect to set it up
139
Agree 100%, Everything is a joy to use and I can't live without it. Easily saves me 20 hours a year. The other simple free Windows tool that I can't recommend strongly enough is Quick Access Popup (built on AutoHotKey which itself is a must-have imo).
voidtools Everything is such an excellent piece of software. It's one of the things you use and wonder "why doesn't my computer already work like this"
1
1
187
The slowness of GPT 5.2 high (& extra high) in Codex is painful but so worth it. I was getting sick of the waiting and switched to medium for a session, and the quality dropped to the extent that it added way more time dealing with the problems than if I had turned on the big brain setting and let the model go full Captain Autismo Mode. X-High diagnosed and fixed everything like a champ in the subsequent session. Devs are (rightly) obsessed with speed and efficiency as a general rule, but for complex, consequential agentic coding work, doing it the right way saves far more time over the long run. Avoids a lot of stress too. I hate the expression 'feeling the AGI' but just letting GPT 5.2 High / Extra High cook while you focus on something else is definitely the most overpowered AI experience I've had to date. I said that about Claude Code before but as much of a delight as it is to work with Opus when he's on fire, GPT 5.2 hasn't gone rogue for me the way the Claude models sometimes do. GPT 5.2 at full power is just a no-nonsense magical get shit done machine.
58