# The Dangerous Illusion of AI Coding? - Jeremy Howard

Markdown copy of https://realalpha.app/v/dHBEQ-Ryo24/ on Real Alpha, the best minutes from long interviews with the people building AI. Cite and link the page, not this copy.

Jeremy Howard argues that AI coding can obscure software engineering and weaken the skills teams need to build and maintain new systems.

- Show: Machine Learning Street Talk
- Hosts: [Tim Scarfe](https://realalpha.app/people/tim-scarfe/)
- Guest: [Jeremy Howard](https://realalpha.app/builders/jeremy-howard/) is cofounder of fast.ai, former president of Kaggle, and creator of ULMFiT.
- Published: Mar 3, 2026
- Length: 1 h 27 m

## The best minutes

- [47:47](https://realalpha.app/v/dHBEQ-Ryo24/?t=2867) [AI coding can reward the feeling of progress more than shipped work](https://realalpha.app/s/ai-coding-can-reward-the-feeling-of-progress-more-than/) (3 min)

Skip the extended debate on AI creativity and the closing discussion of existential risk, power centralization and privacy.

## Full analysis: Jeremy Howard says no one creates 50x more high-quality software

- Howard says no one creates 50 times more high-quality software. A study found only a tiny shipping uptick.
- The contrast is cautionary, but the study's sample and metric are unstated.
- Teams should measure maintained work and engineering judgment, not generated code alone.

Its 6 sections, what it means for you and what to watch are on [the page](https://realalpha.app/v/dHBEQ-Ryo24/#analysis), free with an account:

- [47:38](https://realalpha.app/v/dHBEQ-Ryo24/?t=2858) Howard says no one creates 50 times more high-quality software
- [30:14](https://realalpha.app/v/dHBEQ-Ryo24/?t=1814) Code generation leaves the hard engineering work intact
- [56:26](https://realalpha.app/v/dHBEQ-Ryo24/?t=3386) Tests and boundaries determine where automation holds
- [44:36](https://realalpha.app/v/dHBEQ-Ryo24/?t=2676) Delegation can weaken the skills teams need
- [1:04:17](https://realalpha.app/v/dHBEQ-Ryo24/?t=3857) Interactive tools keep builders close to the system
- [48:45](https://realalpha.app/v/dHBEQ-Ryo24/?t=2925) Teams should measure maintenance, not generated code

## Summary

Jeremy Howard is a data scientist, researcher, entrepreneur, and educator. He co-founded fast.ai, was president of Kaggle, and created ULMFiT; the episode description says his work helped lay the foundation for modern transfer learning and pre-training and fine-tuning.

Jeremy Howard says AI tools can write large portions of code without replacing software engineering, which depends on designing systems, tests, and abstractions people can understand. He argues that delegating too much work can weaken developers’ learning and organizational knowledge, though carefully bounded automation can free experts to focus. He favors interactive programming environments where people and models inspect and manipulate live objects, and says tools should help users build understanding rather than merely deliver finished work. On AI risk, he prioritizes lost human capability and concentrated power over speculative claims of autonomous catastrophe.

### Minute by minute

- [4:17](https://realalpha.app/v/dHBEQ-Ryo24/?t=257) **ULMFiT introduced transfer learning.** Howard says ULMFiT was among the first approaches to pre-train on a general-purpose corpus and then fine-tune for a specific task. He describes training an AWD-LSTM on Wikipedia for eight hours, then fine-tuning it on movie reviews; the model beat specialist results after only minutes of task-specific training.
- [8:02](https://realalpha.app/v/dHBEQ-Ryo24/?t=482) **Fine-tuning works layer by layer.** Howard describes fast.ai’s method of training the last layer first, then gradually unfreezing more layers and using different learning rates for different layers. He says batch-normalization layers also need fine-tuning, and that ULMFiT reached close to state-of-the-art results with only the last two layers.
- [10:59](https://realalpha.app/v/dHBEQ-Ryo24/?t=659) **Intuition guides model training.** Howard says that inspecting activations and gradients helps researchers see when a model is overtrained, undertrained, or malfunctioning. He argues that related tasks can improve a model’s performance on both, and points to self-supervised vision methods and general-purpose pretraining as ideas that can transfer across fields.
- [16:07](https://realalpha.app/v/dHBEQ-Ryo24/?t=967) **Language models build abstractions.** Howard argues that predicting text requires models to form hierarchies of abstractions about the things being described. He says language models can recombine training examples in creative-seeming ways but struggle outside their training distribution. He describes a generated Rust compiler as interpolation from existing compiler and LLVM code, not a clean-room breakthrough.
- [26:43](https://realalpha.app/v/dHBEQ-Ryo24/?t=1603) **Coding is not software engineering.** Howard says software engineering involves much more than typing code, so AI can write most of a person’s code without producing a comparable productivity gain. He says models often fail when asked to design something genuinely new, returning solutions that look superficially similar to existing work.
- [30:21](https://realalpha.app/v/dHBEQ-Ryo24/?t=1821) **LLMs can imitate understanding.** Howard says LLMs can appear to understand while their imitation works, and uses the Chinese room as an analogy. He argues that the limits become clear when a model leaves the situations it can handle. He agrees that delegating cognitive work can erode the knowledge held within an organization.
- [34:32](https://realalpha.app/v/dHBEQ-Ryo24/?t=2072) **Automation needs room for learning.** Howard warns that people stop developing when they no longer use their design and engineering skills. He says automation can help when it reliably removes a task, such as identifying possible lung nodules so radiologists can assess them. He worries that developers in the middle of their careers may struggle to build expertise if they stop writing and understanding code.
- [43:51](https://realalpha.app/v/dHBEQ-Ryo24/?t=2631) **Teams need a growth slope.** Howard says he cares more about his staff’s growing capabilities than their PR or feature counts. He favors improving a person’s trajectory over relying on skills they already have, and warns that companies focused on immediate AI-enabled output may damage their ability to maintain and build products.
- [46:03](https://realalpha.app/v/dHBEQ-Ryo24/?t=2763) **AI coding feels like a slot machine.** Howard says Claude Code can make him personally far more productive when he knows the domain and can specify the work, but that gain does not scale easily across an organization. He cites a study showing only a tiny uptick in what people were shipping. He compares repeated prompt changes and occasional wins to pulling a slot-machine lever.
- [50:08](https://realalpha.app/v/dHBEQ-Ryo24/?t=3008) **AI debugging leaves owners uncertain.** Howard says AI helped him fix IPyKernel 7 problems that caused NB Classic and Solve-It to crash. He says Codex 5.2 could not solve the issue, while a $200-a-month GPT-5.3 Pro could; the process took weeks. The working implementation left him unsure whether to trust code he did not understand.
- [53:34](https://realalpha.app/v/dHBEQ-Ryo24/?t=3214) **Good software needs small components.** Howard argues that software engineering means finding the right components, defining their behavior, and testing how they fit together. He says the IPyKernel problem showed the risks of components with inadequate tests, and that designing useful boundaries often takes years of experience. He also argues that LLMs remain poor at engineering genuinely new systems rather than copying existing ones.
- [1:00:36](https://realalpha.app/v/dHBEQ-Ryo24/?t=3636) **Interactive tools keep people involved.** Howard says people and AI work better together in environments where they can manipulate and inspect objects in real time. He describes NBDev and a Python-interpreter environment for letting people and models build tools for each other. He says this kind of work leaves him energized, unlike long sessions with a command-line coding agent.
- [1:07:22](https://realalpha.app/v/dHBEQ-Ryo24/?t=4042) **Exploration belongs in notebooks.** Howard says notebooks can support software development and that teams should fix workflow problems rather than make researchers abandon exploratory tools. He describes a Git merge driver that shows cell-level differences and conflicts, and says NBDev brings exploration, examples, documentation, tests, and CI together. He argues that interacting with a system in small steps builds stronger mental models.
- [1:17:32](https://realalpha.app/v/dHBEQ-Ryo24/?t=4652) **Power concentration creates risk.** Howard says fears of autonomous AI can encourage governments or technology companies to centralize control, which he considers dangerous even if AI becomes much more powerful. He favors distributing access, comparing the debate to historical resistance to wider access to writing, printing, and voting. For current AI, he says his biggest concern is people losing competence by outsourcing their learning; he sees privacy risks as real but not unique to AI.

## Transcript

Machine Learning Street Talk, hosted by Tim Scarfe, with Jeremy Howard.

Transcribed by machine (Whisper) from the episode’s audio, so a word may be off here and there. Where the podcast’s audio and the video part ways, some times are a minute or so off.

[0:04](https://realalpha.app/v/dHBEQ-Ryo24/?t=4) through an interactive loop, a notebook, a REPL, the act of poking at a problem until it pushes back. he argues this is where the real insight happens and the funny thing is they're both right llms cosplay understanding things like they pretend to understand things no one's actually creating 50 times more high quality software than they were before um so we've actually just done a study of this and there's a tiny uptick tiny uptick in what people are actually shipping The thing about AI-based coding is that it's like a slot machine in that you have an illusion of control. You know, you can get to craft your prompt and your list of MCPs and your skills and whatever.

[0:58](https://realalpha.app/v/dHBEQ-Ryo24/?t=58) But in the end, you pull the lever, right? Here's a piece of code that no one understands. And am I going to bet my company's product on it? and I the answer is I don't know because like I don't I don't like I don't know what to do now because no one's like been in this situation they're they're really bad at software engineering uh and then I think that's possibly always going to be true be the idea that a human can do a lot more with a computer when the human can like manipulate the objects in inside that computer in real time and study them and move them around and combine them together whoever you listen to you know whether it be Feynman or whatever like you always hear from the great scientists how they build deeper intuition by by building mental models which they get over time by interacting with the things that they're learning about.

[2:04](https://realalpha.app/v/dHBEQ-Ryo24/?t=124) A machine could kind of build an effective hierarchy of abstractions about what the world is and how it works entirely through looking at the statistical correlations of a huge corpus of text using a deep learning model. That was my premise. This video is brought to you by NVIDIA GTC. It's running March the 16th until the 19th in San Jose. and streaming free online the key topics this year are agentic ai and reasoning high performance inference and training open models and physical ai and robotics i'm so excited about the djx spark i've been on the waiting list for over a year Here now, it's a personal supercomputer that is about the size of a Mac Mini. It's the perfect adornment to a MacBook Pro, by the way. And you can fine tune a 70 billion parameter language model with one of these things. And I'm giving one away for free. All you have to do is sign up to the conference and attend one of the sessions using the link in the description. As for the sessions, I'm interested in attending Aman Sanger's talk. So he's the CTO of Cursor. And his session is code with context build an agentic ide that truly understands your code base now obviously jensen's keynote is on march the 16th he said he's going to unveil a new chip that will surprise the world

[3:23](https://realalpha.app/v/dHBEQ-Ryo24/?t=203) their next generation architecture vera rubin is already in full production and there's speculation we might even get an early glimpse of their new fineman architecture so don't forget folks the link is in the description if you're attending virtually it's completely free don't miss it Jeremy Howard, welcome to MLST. I mean, welcome to my home. Thanks for coming. Yeah, well, where are we now? We are in beautiful Moreton Bay in southeast Queensland. We are by the sea in my backyard. The weather didn't disappoint. It certainly didn't. It doesn't often. But if you were here yesterday, it would have been very different.

[4:00](https://realalpha.app/v/dHBEQ-Ryo24/?t=240) Well, I don't know where to start. So I've been a huge fan probably since about 2017, 18. Of course, you had the famous ULN Fit paper. And when I was at Microsoft, I remember doing a presentation about that because it was actually, I mean, now we take it for granted that we fine-tune language models on a corpus of text and then we kind of like continue to train them and specialize them. But apparently this was not received wisdom. No, this was the first time it happened. Yeah, kind of the first or second. So Cochley and Andrew Dye had done something a few years ago, but they had missed the key point, which is the thing you pre-train on has to be a general purpose corpus.

[4:37](https://realalpha.app/v/dHBEQ-Ryo24/?t=277) so no one quite realized this key thing and maybe i had a bit of fortune here that my background was in philosophy and cognitive science and so i'd spent some decades thinking about this the technical architecture of of uh ulm fit just just sketch that out i'm a huge fan of regularization i'm a huge fan of taking a model that's incredibly flexible and then making it more constrained not by decreasing the size of the architecture by but by adding regularization so even that at the time was extremely controversial uh but that was by no means a unique insight of of ours so what steve and merity had done is he'd taken the extreme flexibility of an lstm a kind of the classic stateful recurrent neural net towards which things are kind of gradually heading back towards nowadays and it added five different types of regularization he added every type of regularization you can imagine and then that was my starting point was to say okay i now have a massively flexible deep learning model that can be as powerful as i want it to be and it can also be as constrained as i need it to be and then i needed a really big corpus of text funnily enough this is also steven he had been at common crawl and i think he helped or made the wikipedia data

[5:57](https://realalpha.app/v/dHBEQ-Ryo24/?t=357) set and then i realized actually the wikipedia data set made lots of assumptions it had all these like unk for unknown words because it all assumed classic nlp approaches so i redid the whole thing created a new wikipedia data set that was my general corpus and then i used awd lstm trained it so it was actually overnight so for eight hours on a gaming gpu you know um because i was at the university of san francisco we didn't have heaps of resources um probably like a 2080 ti or something i suspect um and then the next morning when i woke up i then it's the same three-stage architecture that we do today you know pre-training mid-training post-training so then i figured okay i've now that i've trained something to predict the next word of wikipedia it must know a lot about the world i then figured if i then fine-tune it on a corpus specific so what we could now call supervised fine-tuning um data set which in this case was the data set of movie reviews it would become especially good at predicting the next word of those so i'd learn a lot about movies uh did that for like an hour and then like a few minutes of fine-tuning the downstream classifier which was a classic academic uh data set it's kind of considered the hardest one which was to take

[7:23](https://realalpha.app/v/dHBEQ-Ryo24/?t=443) like 5 000 word movie reviews and to say like was this a positive or negative sentiment which today is considered easy but at that time you know the only things that did it quite well were highly specialized models that people wrote their whole phds on and i beat all of their results you know five minutes later when it fine-tuning that that model was uh amazing and the other interesting thing is this kind of um methodology around how you do the fine-tuning yeah so the how we do the fine-tuning was something we had developed at fast ai so this is kind of year one of fast ai so this is still in our very early days and one of the extremely controversial things we did was we felt that we should focus on fine-tuning existing models because we thought fine-tuning was important some other folks were doing work contemporaneously with that so jason usinski did some really great research i think it's during his phd on how to fine-tune models and how good they can be and some other folks in the in the computer vision world we were you know amongst the first there's a bunch of us kind of really investing in fine-tuning and so yeah we we felt that using a single learning rate to fine-tune the whole thing all at once

[8:45](https://realalpha.app/v/dHBEQ-Ryo24/?t=525) made no sense because the different layers have different behaviors and this is one of the things jason yasinski's research also showed we developed this idea of like well it's also way faster if you just train the last layer, right? Because it only has to backprop the last layer. And then once that's pretty good, backprop the last two and then the last three. And then we use something called discriminative learning rates. So different layers we would give different learning rates to. And then another critical insight that no one realized for years, even though we had told everybody, was that you actually have to fine-tune every batch norm. So all the normalization layers you do actually have to fine-tune because that's moving the whole thing up and down or changing its scale so yeah when you do that you can often just fine-tune the last layer or two and we found that actually with ulm fit although we did end up unfreezing all the layers only the last two were really needed to get the close to state-of-the-art result so it like took like seconds yeah because the discriminative learning rate thing is interesting because i think the received wisdom at the time was when you fine tune a model if the learning rate is too high you kind of blow out

[9:53](https://realalpha.app/v/dHBEQ-Ryo24/?t=593) the representations so i guess the wisdom was if you don't have a really low learning rate you'll just destroy the representations i mean there was no received wisdom because nobody talked about it no one cared you know it's just this so like nearly no one cared transfer learning was just not something anybody thought about and rachel and i felt like it matters more than anything you know because only one person has to train a really big model once and then the rest of us can all fine-tune it so we thought we just should learn how to do that really well so we spend a lot of time just trying lots of things but in the end the intuition was pretty straightforward and what intuitively seemed like it ought to work basically always did work which is another big difference between how people Still today, we tend to do ML research. I think it's all about ablations, and you can't make any assumptions or guesses. It's not at all true. I find nearly everything that I expect to work almost always works first time, because I've spent a lot of time building up those intuitions, that kind of understanding of how gradients behave.

[11:10](https://realalpha.app/v/dHBEQ-Ryo24/?t=670) I think there's a dichotomy, though, between continual learning, which is when we want to keep training the thing but maintain generality, versus fine-tuning a thing to do something specific. So there's always been this idea that, yes, you can make a model specific, you can bend it to your will, but you lose generality and you kind of degrade the representation. So tell me about that. Yeah, there's some truth in that, although not as much as you might think. on the whole the big problem is that people don't actually look at their activations and don't actually look at their gradients so something we do in our software in our fast air software is we have built into it this ability to see in a glance what your entire network looks like and once you've done it a few times it just takes a couple of hours to learn you can immediately see oh i see this is over trained or under trained or this layer that something went wrong it's not a mystery you know so basically what happens is for example you end up with with dead neurons that go to a point where they've got zero gradient regardless of what you do with them that often happens if they you know head off towards infinity you can always fix that so yeah it's it's not as bad as people think by any means something that trains well

[12:27](https://realalpha.app/v/dHBEQ-Ryo24/?t=747) for continuous learning when done properly can also be done well to train well for a particular task if you're careful in a sense you do want the neurons to die and i'll explain what i mean by this like we want to bend the behavior of models to introduce implicit constraints because without constraints there is no creativity there is no reasoning and so on and so forth so so in a sense you actually want it to say don't do that you want it to do something else i don't think of it that way like to me it's more like i find thinking about humans extremely helpful when it comes to thinking about ai i find they behave more similarly than differently um and my intuition about each tends to work quite well you know with a human when you learn something new it's not about unlearning something else and so something i always found is when i got models to try to learn to do two somewhat similar tasks they almost always got better at both of them than one that only learned one of them i was reminded a little bit of um you know the dino paper from lacune so this whole kind of um regime of self-supervised learning with with um i mean that that was that was a vision model but the you know the idea was okay so we're doing pre-training and we want to

[13:48](https://realalpha.app/v/dHBEQ-Ryo24/?t=828) maintain as much diversity and fidelity as possible so that when we do the downstream task we can kind of we've got more things that we can latch on yeah yeah and um you know semi-supervised and self-supervised learning was such an unappreciated area and yeah jan lakoon was absolutely one of the guys who was also working on it i actually did a post because i was so annoyed at how few people cared about semi-supervised learning i did a whole post about it years ago. Jan Lecun looked at it for me as well and, you know, suggested a few other pieces of work that I had missed. But I was kind of surprised at how, you know, how incredibly useful it is to basically say, like, basically come up with a pretext task, right? So we did this in vision before ULMFiT. So it was like, in medical imaging, you know, take a histology slide and Predict, you know, mask out a few squares and predict what used to be there. So some of my students at USF, I had doing stuff with that. It was basically entirely taking stuff that we and others had already done in vision. So like this idea of masking out squares, we didn't invent it. Masking out words was the obvious thing.

[15:07](https://realalpha.app/v/dHBEQ-Ryo24/?t=907) You know, and this idea of gradually unfreezing layers, we had done before in computer vision. The whole idea of starting with a pre-trained model that was general purpose had been in computer vision. There was a really classic paper, actually, in computer vision in, I don't know, around 2015, was entirely an empirical paper saying, look what happens when we take a pre-trained ImageNet model predicting what sculptor created this sculpture or predicting what architecture style this is. and like in every task it got the state-of-the-art result and it really surprised me people didn't look at that and think like i bet that ought to work in every other area as well whether it be genome sequences or language or whatever but people have a bit of a lack of imagination i find they tend to assume things only work in one particular field that's really true yeah i mean i guess there's two things there i mean first of all we were kind of hinting at this notion of almost good heart's law or the shortcut rule that you get exactly what you optimize for at the cost of everything else but that doesn't seem to be the case because we can you know optimize for perplexity in the case of language models and as you say what seems to happen is we're getting into

[16:15](https://realalpha.app/v/dHBEQ-Ryo24/?t=975) the distributional hypothesis here a little bit so you know you know the word by the company it keeps so when we have an incredible amount of associative data it might be masked auto prediction or any of these things like that the model seems to build something that we might call an understanding i've always thought of it as a hierarchy of abstractions you know it it it needs if it's going to predict you know if the if the document is here was the you know opening that uh you know that um bobby fisher used and it has chest notation to predict the next thing it needs to know something about chess notation, or at least openings.

[16:57](https://realalpha.app/v/dHBEQ-Ryo24/?t=1017) If it's like, you know, and this was vetoed by the 1956 US president, comma, you need to know, you don't just need to know who the president was, but the idea that there are presidents, and therefore the idea that there are leaders, and therefore the idea that there are groups of people who have hierarchies, and therefore that there are people, and therefore that there are objects. You can't predict the next word of a sentence. well without knowing all of these things so that knowing uh my hypothesis for why i created ullm fit is to say it would end to to compress that as well as possible to get that knowledge it would have to create these abstractions these hierarchies of abstractions somewhere deep inside its model otherwise how could it possibly do a good job of predicting the next word you know and Because deep learning models are universal learning machines, you know, and we had a universal way to train them, I figured if we get the data right and if the hardware is good enough, then in theory we ought to be able to build that next word predicting machine, which ought to implicitly build a hierarchical structural understanding of the things that are being described by the text that it is learning to predict?

[18:18](https://realalpha.app/v/dHBEQ-Ryo24/?t=1098) I think that they can know in quite a, you know, they know in quite a superficial way. So there's a myriad of surface statistical relationships and they generalize extraordinarily well. It's miraculous. But the thing is, I want to contrast this with other comments you've made about creativity. So I think knowledge is about constraints. And I think creativity is the evolution of knowledge respecting those constraints. Therefore, AI is not creative. And you've said the same thing. You've said AI isn't creative. So, like, on the one hand, how can you say that they know and not think that they can be creative?

[18:53](https://realalpha.app/v/dHBEQ-Ryo24/?t=1133) I mean, I don't think I've used that exact expression. You know, I know I've actually, I remember chatting with Peter Norvig on camera and both of us said, well, actually, they kind of are creative. Like, we've just got to be a bit careful about our choices of words, I guess. So, you know, Peter Wozniak, who's a guy I really, really respect, who kind of rediscovered space-traumatic learning, built the super-memorial system, and is the modern-day guru of memory. The entire reason he's based his life around remembering things is because he believes that creativity comes from having a lot of stuff remembered, which is to say putting together stuff you've remembered in interesting ways is a great way to be creative.

[19:36](https://realalpha.app/v/dHBEQ-Ryo24/?t=1176) LLMs are actually quite good at that, but there's a kind of creativity they're not at all good at which is you know moving outside the distribution so which i think is where you're heading with your question um but i'm just kind of i'm framing it this way to say you have to be so nuanced about this stuff because if you say like they're not creative it gives you the can give you the wrong idea because they can do two very creative-seeming things, but if it's like, well, can they really extrapolate outside the training distribution? The answer is no, they can't. But the training distribution is so big and the number of ways to interpolate between them is so vast, we don't really know yet what the limitations of that is. But I see it every day, you know, because my work is R&D.

[20:32](https://realalpha.app/v/dHBEQ-Ryo24/?t=1232) I'm constantly on the edge of and outside the training data. I'm doing things that haven't been done before. And there's this weird thing. I don't know if you've ever seen it before. I see it, but I see it multiple times every day where the LM goes from being incredibly clever to like worse than stupid, like not understanding the most basic fundamental premises about how the world works. And it's like, oh, whoops, I feel outside the training data distribution. It's gone dumb. and then like there's no point having that discussion any further because yes you know you've lost it at that point yes I mean I love um you know Margaret Bowden she had this kind of hierarchy of creativity so there's like combinatorial exploratory and um and transformative and the models can certainly do combinatorial creativity but for me it's all about constraints so that I mean this is what Bowden said and even Leonardo da Vinci he said that creativity is all about constraints and and you've spoken about you know we'll talk about this dialogue engineering but what happens is when we talk with language models it's a specification acquisition problem so we go back and forth and actually when we think the process of intelligence is about building this

[21:42](https://realalpha.app/v/dHBEQ-Ryo24/?t=1302) imaginary lego block in our mind and respecting various constraints and when you respect those constraints and you just continue to evolve then those things are said to be creative so language models when you add constraints to them so this could be via supervision via critics via verifiers, then they are creative. And we see Alpha Evolve, we've seen many examples of this. But the illusion is, on their own, sans constraints, obviously they have this behavioral shaping stuff that we're talking about, they don't have hard constraints, and that's why they can't go outside their distribution. I mean, I think they can't go outside their distribution because it's just something that that type of mathematical model can't do.

[22:19](https://realalpha.app/v/dHBEQ-Ryo24/?t=1339) I mean, it can do it, but it won't do it well. You know, when you look at the kind of 2D case of fitting a curve to data, once you go outside the area that the data covers, the curves disappear off into space in wild directions, you know. And that's all we're doing, but we're doing it in multiple dimensions. I think Bowdoin might be pretty shocked at how... far compositional creativity can go when you can compose the entirety of the human knowledge corpus and i think this is where people often get confused because it's like so for example i was talking to chris latner yesterday about uh how claude uh anthropic you know had had got claude to write a c compiler and they were like oh this is a clean room c compiler you can tell it's clean cleanroom because it was created in rust you know and um so chris created the kind of you know i guess it's probably the top most widely used cc plus class compiler nowadays clang on top of llvm which is the most widely used kind of foundation for compilers um they were like oh well chris didn't use rust this is you know and we didn't give it access to any compiler source code so it's a clean room implementation but that misunderstands how llms work right which is all of chris's work was in the training data many many times llvm is used

[23:53](https://realalpha.app/v/dHBEQ-Ryo24/?t=1433) widely and lots and lots of things are built on it including lots of c and c++ compilers converting converting it to rust is an interpolation between between parts of the training data you know it's a style transfer problem um so it's definitely compositional creativity at most if you can call it creative at all and you actually see it when you look at the the repo that it created it's copied parts of the llvm code which today chris says like oh i made a mistake i shouldn't have done it that way nobody else does it that way you know oh wow look they're the only other one that did it that way that doesn't happen accidentally that happens because you're not actually being creative you're actually just finding the kind of non-linear average point in your training data between like rust things and building compiler things all of that is true i mean first of all i think we shouldn't underestimate the size of how big this combinatorial creativity is so all of that is true So the code is on the internet, but also they had a whole bunch of tests which were scaffolded, which meant that every single time some code was committed, they could run the test and they basically had a critic and they could then do this autonomous feedback loop.

[25:13](https://realalpha.app/v/dHBEQ-Ryo24/?t=1513) So in a sense, it's very similar to the recent research by OpenAI and Gemini, where you're trying to solve a problem in math and you already have an evaluation function. The same on the ARC prize, right? You have an evaluation function. and what people discount is even knowledge of what the evaluation function is is partial knowledge of the problem so you can then brute force search you can use the statistical pattern matching use the verifier as a constraint and you can actually and they don't even need to do that right like they literally already know how to pass those tests because there's lots of software that already does it so it just uses that and translates them to rust like that's that's all it did um which is impressive um and if i'm much less familiar with math than i am computer science but from talking to mathematicians they tell me that that's also what's happening with like problems and stuff it's some of them are newly solved yeah um but they are not sparks of insight you know they're solving ones that you can solve by meshing up together very closely related things now for a quick message from anthropic the team behind claude the ai built for businesses imagination doesn't need permission just room to play claude is an ai that works alongside you

[26:43](https://realalpha.app/v/dHBEQ-Ryo24/?t=1603) to give your ideas the space They need to grow, and then it helps you make them real and ready to ship. Discover more with Claude at Claude.ai. Are you ever shopping online and suddenly a discount that helps you save pops up? It makes your day, sometimes even your week. Want that feeling month after month? Well, new customers who save by switching their home and auto insurance to Progressive save hundreds. Cue your happy dance. Get your quote today at Progressive.com. Progressive Casualty Insurance Company affiliates and other insurers not available in all states. Humans have already figured out.

[27:27](https://realalpha.app/v/dHBEQ-Ryo24/?t=1647) So on the subject of clawed code, now I know you've spoken extensively about vibe coding. Actually, Rachel had some interesting work out. I mean, she quoted the meter study, which showed that productivity actually went down when people were vibe coding. And they thought that they went up, which is the most interesting bit. And then also there was the Anthropic study. I mean, you know, maybe we should rewind a little bit. I mean, Dario had this essay out the other day. I think it was called The Adolescence of Technology or something like that. And he was basically saying, look, you know, we have all of these amazing software engineers at Anthropic and they are just so productive. And he was extrapolating to the average software engineer. So there's going to be mass unemployment because soon we're going to be able to automate all of this with AI.

[28:06](https://realalpha.app/v/dHBEQ-Ryo24/?t=1686) i mean it doesn't make any sense um elon musk said something a bit similar a few days ago saying like oh llms will just spit out the machine code directly we won't need libraries programming languages yeah um yeah look the thing is none of these guys have have been software engineers recently i'm not sure dario's ever been a software engineer at all software engineering is a unusual discipline, and a lot of people mistake it for being the same as typing code into an IDE. Coding is another one of these style transfer problems. You take a specification of the problem to solve, and you can use your compositional creativity to find the parts of the training data which interpolated between them solve that problem, and interpolate that with syntax of the target language and you get code there's a very famous essay by fred brooks written many decades ago um no silver bullet and which it almost sounded like he was talking about today as it he was specifically saying something he was responding to something very similar which is in those days it was all like oh what about all these new fourth generation languages and stuff like that you know we're not going to need any coders anymore any software

[29:27](https://realalpha.app/v/dHBEQ-Ryo24/?t=1767) engineers anymore because software is now so easy to write anybody can write it um and he said well he guessed that you could get at maximum a 30 improvement he specifically said a 30 improvement in the next decade but i don't think he needed to limit it that much because the vast majority of work in software engineering isn't typing in the code yeah um so in some sense parts of what dario said were right just like for quite a few people now most of their code is being typed by a language model um that's true for me uh say like maybe 90 percent um but it hasn't made me that much more productive um because that was never the slow bit it's also helped me with kind of the research a lot and figuring out you know which files are going to be touched but any time i've made any attempt at getting an llm to like design a solution to something that hasn't been designed lots of times before that's It's horrible because what it actually every time gives me is the design of something that looks on its surface a bit similar.

[30:54](https://realalpha.app/v/dHBEQ-Ryo24/?t=1854) And often that's going to be an absolute disaster because things that look on the surface a bit similar and like I'm literally trying to create something new to get away from the similar thing. It's very misleading. First of all, I'm exasperated by what I see as the tech bro predilection to misunderstand cognitive science and philosophy and whatnot. Because we've spoken to so many really interesting people on MLST, like, for example, Cesar Hidalgo, he wrote this book, The Laws of Knowledge. And even Marvita Chiramuta, she's a philosopher of neuroscience, and she was talking all about, you know, basically that knowledge is protean.

[31:27](https://realalpha.app/v/dHBEQ-Ryo24/?t=1887) So, yeah, I think that knowledge is perspectival. I don't think that knowledge can be this abstract, perspective-free thing that can exist on Wikipedia. And I also think that knowledge is embodied and it's alive. It's something that exists in us, and the purpose of an organization is to preserve and evolve knowledge. So when you start delegating cognitive tasks to language models, you actually have this weird paradoxical effect that you erode the knowledge inside the organization. Well, that's true, and that's terrifying. There's often these arguments online between people who are like, LLMs don't understand anything.

[32:06](https://realalpha.app/v/dHBEQ-Ryo24/?t=1926) They're just pretending to understand. and then other people are like don't be ridiculous look what this llm just did for me right and the funny thing is they're both right llms cosplay understanding things like they pretend to understand things and this was the interesting thing about the early kind of uh work with like uh cognitive science work with like daniel dennett um that's basically what the chinese room experiment is right it is you've got a guy in a room who can't speak chinese at all but he sure looks like he does because you can feed him questions and he gives you back answers but all he's actually doing is looking up things in a huge array of books or machines or whatever the difference between pretending to be intelligent and actually being intelligent is entirely unimportant as long as you're in the region in which the pretense is actually effective you know so so it's actually fine for a great many tasks that llms only pretend to be intelligent because for all intents and purposes it it just doesn't matter until you get to the point where it can't pretend anymore and then you realize like oh my god this thing's so stupid i'm a fan of so by the way so you know he said that um understanding is causally reducible but

[33:28](https://realalpha.app/v/dHBEQ-Ryo24/?t=2008) ontologically irreducible and he was saying there was a phenomenal component to understanding but you don't even need to go there like the interesting thing about knowledge being protean is this idea that the you know it's basically this kantian idea the world is a complex place none of us understand it it's like the blind men and the elephant we all have different perspectives it's very complex thing and so we all we all do this kind of modeling but the interesting thing is that the language model sometimes they seem to understand and they understand because the supervisor places them in a frame so inside that frame so when you have that perspective of the elephants they're actually surprisingly coherent but we discount the supervisor placing the models in that frame yeah yeah so that so sell versus dennett or versus sell and dennett was what everybody was talking about when i back when i was doing my undergrad in philosophy you know so and consciousness explained came out about then probably chinese room a little bit before um that's interesting because the discussions were the same discussions we're having now but they've gone from being abstract discussions to being real discussions it's helpful if people go

[34:35](https://realalpha.app/v/dHBEQ-Ryo24/?t=2075) back to the abstract discussions because it it's it helps you get out of your you know it's very distracting at the moment to look at something that's cosplaying intelligence Well, and go back to the fundamental question. So anyway, I just wanted to mention that it's this interesting situation we're now in where it's very easy to really get the wrong idea about what AI can do, particularly when you don't understand the difference between coding and software engineering, which then takes me to your point or your question about The implications of that for organizations, you know, a lot of organizations are basically betting their futures on a speculative premise, which is that AI is going to be able to do everything better than humans, or at least everything in coding better than humans.

[35:41](https://realalpha.app/v/dHBEQ-Ryo24/?t=2141) I worry about this a lot, both for the organizations and for the humans. For the humans, when you're not actively using your design and engineering and coding muscles, you don't grow. You might even wither, but you at least don't grow. And speaking of the CEO of an R&D startup, if my staff aren't growing, we're going to fail. We can't let that happen. And getting better at the particular prompting skills, whatever, details of the current generation of AI, CLI frameworks isn't growing. You know, that's as helpful as learning about the details of some AWS API when you don't actually understand how the internet works.

[36:34](https://realalpha.app/v/dHBEQ-Ryo24/?t=2194) You know, it's not reusable knowledge. It's ephemeral knowledge. so like if you wanted to you can actually use it as a learning superpower but also it can do the opposite you know the natural thing it's going to do is remove your confidence over time i agree that that's the natural thing so and this is especially pertinent for you because your career has been around basically educating people to get you know technology and ai literacy so the default behavior is very similar to a self-driving car but you know there's this tipping point where at some point you're not engaged anymore you're not paying attention and you get this delegation of competence and you get understanding debt that's the default thing so this study from anthropic a couple of weeks ago it contradicted dario completely because it even said that yeah there were a few people in the study that were asking conceptual questions that are actually kind of you know keeping on top of things and they had a gradient of learning but most people didn't and my hypothesis about that is you know that the ideal situation for gen ai coding is that like us we've been writing software for decades we already have this abstract understanding we're

[37:42](https://realalpha.app/v/dHBEQ-Ryo24/?t=2262) using it in domains that we know well and we can specify we can remove loads of ambiguity we can track and we can go back and forth and we can we can stay in touch with the process but what happens is that the default attractor is for people to just go into this autopilot mode and they've got no idea what's happening and it's actually making them dumber. I created the first deep learning for medicine company called Denlytic back in, what was that, like 2014. And our initial focus was on radiology. And a lot of people were worried that this would cause radiologists to become less effective at radiology. And I strongly felt the opposite, which is, and I did quite a bit of research into this of like what happens when there's like fly-by-wire in airplanes or anti-lock brakes in cars or whatever if you can successfully automate parts of a task that really are automatable you can allow the the expert to focus on the things that they need to focus on we saw this happen. So in radiology, we found if we could automate identifying the possible nodules in a lung CT scan, we were actually good at it, which we were. And then the radiologist then can focus on looking at the nodules and trying to decide if they're malignant or what

[39:08](https://realalpha.app/v/dHBEQ-Ryo24/?t=2348) to do about it. So again, it's one of these subtle things. So if there's things which you can fully automate effectively in a way that you can remove that cognitive burden from a human so that they can focus on things that they need to focus on that can be good you know i don't know where we sit in software development because you know i've been coding for 40-ish years so i've written a lot of code and i can glance at a screen of code and you know unless it's something quite weird or sophisticated i can immediately tell you what it does and whether it works and whatever um i can kind of see intuitively things that could be improved you know possible things to be careful of i'm not sure i could have got to that point if i hadn't have written a lot of code so the people i'm finding who can really benefit from ai right now are either really junior people who can't code at all who can now write some apps that they have in their head and as long as they work reasonably quickly um with the current ai capabilities then they're happy and then really experienced people like like me or like chris latner because we can basically have it do some of our typing for us you know and some of our research for us people in the middle which

[40:41](https://realalpha.app/v/dHBEQ-Ryo24/?t=2441) is most people most of the time it really worries me because how do you get from point a to point b without typing code it might be possible but we don't have a we have no experience of that we don't is it possible how would you do it like is it kind of like going back to school where at primary school, we don't let kids use calculators so that they develop their number muscle? Do we need to do that for like first five years as a developer? You have to write all the code yourself. I don't know. But if I was between like two and 20 years of experienced developer, I would be asking that question of myself a lot. Because otherwise you might be in the process of making yourself obsolete. Yeah. Well, this is another thing about knowledge that this Cesar Hidalgo guy said. So he said that knowledge is non-fungible, which means it can't be exchanged.

[41:39](https://realalpha.app/v/dHBEQ-Ryo24/?t=2499) So what he means by that is the process of learning is in some important sense, not reducible, right? So you have to have the experience and the experience has to have friction. And when we build models of the world, we actually learn, like, you know, there's this phrase, reality pushes back. So we make lots of mistakes, and we update our models, and we're just placing these coherence constraints in our model, and that's how we come to learn. So you use code, and there's so little friction in the process. That's exactly what this study from Anthropic said. It said there was so little friction, they didn't learn anything.

[42:12](https://realalpha.app/v/dHBEQ-Ryo24/?t=2532) Yeah, no, exactly. Desirable difficulty is the concept that kind of comes up in education, but even going back to the work of Ebbinghaus, who was the original repetitive space learning guy in the 19th century, and then Pieter Wozniak more recently, we find the same, like, we know that memories don't get formed unless it is hard work to form them. So, you know, that's where you kind of get this somewhat surprising result that says, revising too often. It's a bad idea because it comes to mind too quickly. And so with repetitive space learning, with stuff like Anki and SuperMemo, the algorithm tries to schedule the flashcards just before the moment you're about to forget. So then it's hard work. So I studied Chinese for 10 years in order to try to learn about learning myself. And I really noticed this, that I used stanky and because it was always scheduling my cards just before i was about to forget them it was always incredibly hard work you know to do reviews because almost all the cards were once i was on the verge of forgetting that was absolutely exhausting but my god it worked well here i am i don't really haven't done any study for 15 plus years and i still remember my chinese well i know

[43:43](https://realalpha.app/v/dHBEQ-Ryo24/?t=2623) I mean, also, I mean, coming back to your radiology example, like one example people give is call centers. So, you know, we have this notion that in an organization we have high intelligence roles and low intelligence roles. And for me, intelligence is just the adaptive acquisition and synthesis of knowledge. So we assume that, you know, that the low intelligence roles doing the call center stuff, it doesn't adapt, which means we can, you know, there are certain things that an organization does that do not change. So we could automate them and we don't need to update our knowledge. And I think that discounts actually, maybe with the radiology example, that having this holistic knowledge, like, you know, in a call center, there are so many weird edge cases that come in, so many weird things happen, and that filters up in the organization and we adapt over time.

[44:25](https://realalpha.app/v/dHBEQ-Ryo24/?t=2665) So when you start to automate things and you actually lose the competence to create the process, which created the thing in the first place, and you lose the evolvability of that knowledge in the organization, you're actually kind of cutting your legs off. Yeah, absolutely. And so all I know is in my company, I tell our staff all the time, almost the only thing I care about is how much your personal human capabilities are growing. You know, I don't actually care how many PRs you're doing, how many features you're doing. Like, there's that nice, you know, John Osterhout, the TCL guy, recently released some of his Stanford Friday takeaway lectures.

[45:15](https://realalpha.app/v/dHBEQ-Ryo24/?t=2715) And he has this nice one called A Little Bit of Slope Makes Up for a Lot of Intercept. which is basically the idea that that you know in your life if you can focus on doing things that cause you to grow faster it's way better than focusing on focusing on the things that you're already good at you know that has that high intercept so the only thing i really care about and i think is the only thing that matters for my company is that my team i'm focusing on their slope. If you focus on just driving out results at the limit of whatever AI can do right now, you're only caring about the intercept, you know? So I think it's basically a path to obsolescence through both the company and the people who are in it. And so I'm really surprised how many executives of big companies are pushing this now because it feels like if they're wrong, which they probably are, and they have nowhere to tell if they are because this is an area they're not at all familiar with, they never learned it in their MBAs, they're basically setting up their companies to be destroyed and really surprised that, you know, shareholders would let them do that, you know, set up such an incredibly speculative action.

[46:32](https://realalpha.app/v/dHBEQ-Ryo24/?t=2792) Yeah, here we are. It feels like a lot of companies are going to fail as a result of the amassed tech debt that causes them to not be able to maintain or build their products anymore. There are loads of folks out there like François Chollet. He really gets it. He understands this. And so he's always... It's about this kind of memetic sharing of cognitive models about the domain and how we refine it together. On the sharing thing, this is another big scaling problem with Gen AI coding, right? So the ideal case, I've done this. I know a domain really well. And I can specify it with exquisite detail. And I tell Claude Code, go and do this thing. And the models in my mind doesn't matter. And then you go into an organization. And now I need to share my knowledge with all of the other people, right? And I'm sure you have this in your company as well.

[47:18](https://realalpha.app/v/dHBEQ-Ryo24/?t=2838) This knowledge acquisition bottleneck is a real serious problem in organizations. So when it's just me, I think I'm probably about 50 times more productive using ClaudeCode. It's absolutely magic. And I can see why people are so excited about it. But people don't seem to understand the bottleneck and how that doesn't really translate to many real world organizations. No one's actually creating 50 times more high quality software than they were before. So we've actually just done a study of this. And there's a tiny uptick, tiny uptick in what people are actually shipping. That's the facts. Obviously, I'm an enthusiast of AI and what it can do.

[48:00](https://realalpha.app/v/dHBEQ-Ryo24/?t=2880) But also, my wife, Rachel, recently pointed out in an article, all of the pieces that make gambling addictive are present in… Oh, yeah, dark flow. I was going to bring that up. AI-based coding. yeah it's this really awkward situation where it's very almost everybody i know who got very enthusiastic about ai powered coding in recent months have totally changed their mind about it when they finally went back and looked at like how much stuff that i built during those days of great enthusiasm am i using today are my customers using today am i making money from today almost all the money is being made by influencers you know or by the companies that produce the tokens the thing about ai based coding is that it's like a slot machine and that you

[49:00](https://realalpha.app/v/dHBEQ-Ryo24/?t=2940) **Jeremy Howard:** you have an illusion of control you know you can get to craft your prompt and your list of mcps and your skills and whatever and then but in the end you pull the lever right

[49:11](https://realalpha.app/v/dHBEQ-Ryo24/?t=2951) you put in the prompt and something comes back and it's like cherry cherry it's like oh next time i'll change my prompt a bit i'll add a bit more context pull the lever again pull the lever again it's the stochastic thing you get the occasional win it's like oh i won i got a feature so it's got it's got all these hallmarks of like loss described as a wind somewhat stochastic feeling of control all the stuff that gaming companies try to engineer into their gaming rooms now none of that means that ai is not useful but gosh it's hard to tell i know and and rachel just just to be clear as well she also said that one of the hallmarks of gambling is that you kind of delude yourself that you have some awareness of what's going on but but actually you don't but let's do the bull case a little bit though so because i do i do think in restricted cases it it is it is very useful and these are cases where we understand and we can place constraints and specification but um even in those cases you could argue on the one hand that we're not you know we're not going to be unemployed anytime soon because you just do more work on the addiction thing i've noticed that so i've had 14 hour clawed code marathon sessions and i actually feel addicted to it it's like a slot machine

[50:32](https://realalpha.app/v/dHBEQ-Ryo24/?t=3032) you know it really is in there too absolutely yeah i know it's and it just i've never felt more drained writing i actually need to take a rest afterwards like a few days rest because it completely it feels like crap you know yeah definitely i've had some successes right and so In fact, we've spent the last couple of years building a whole product based around where we know the successes are going to be, which is when you're working on reasonably small pieces that you can fully understand and that you can design and you can build up your own layers of abstraction to create things that are bigger than the parts that you're building out of.

[51:09](https://realalpha.app/v/dHBEQ-Ryo24/?t=3069) Had a very interesting situation recently where I just, it was kind of an experiment basically, which is we rely very heavily on something called iPi kernel. which is the thing that powers Jupyter Notebooks. And there'd been a major version release of IPyKernel from 6 to 7, and it stopped working. And it stopped working in both of the products that we were trying to use it with. One was called today NB Classic, which is the original Jupyter Notebook. And then it's our own product called Solve-It. They would just randomly crash. um and ipy kernels over 5 000 lines of code it's very complex code multiple threads events blocks interfaces with ipython you know with zmq you know all kinds of different pieces um debug pi and i i couldn't get my head around it and i couldn't see why it was crashing the tests are all passing i wonder if ai can solve this you know it's like i'm always interested in the question of like how big a chunk can ai handle on its own right now the answer turned out to be yes i think it can just it was like so i spent a couple of weeks i didn't develop a lot of understanding about how ipy kernel really worked in the process but i did spend quite a bit of time kind of pulling out separate like so the answer was in two hours codex five point i think it was

[52:44](https://realalpha.app/v/dHBEQ-Ryo24/?t=3164) 5.2 at that time or maybe three had just come out couldn't do it then if i got the 200 a month gpt 5.3 pro to fix the problems it could and so by rolling back between those two pieces of software those two models i could get things working uh over a couple of weeks period and like you say it wasn't at all fun it was very tiring and it felt stressful because i wasn't really in control but the interesting thing is i now am in a situation where i have the only implementation of an of a python jupyter kernel that actually works correctly as far as i can tell with these new version 7 protocol improvements and now i'm like well this is fascinating because we don't have a kind of a software engineering theory of what to do now like here's a piece of code that no one understands yeah am i going to bet my company's product on it and i the answer is i don't know because like i don't i don't like i don't know what to do now because no one's like been in this situation and like will it does it have memory leaks will it still work in a year's time if there's some minor change to the protocol is there some weird edge case that's going to destroy everything no one knows because no one understands this code it's a really curious

[54:20](https://realalpha.app/v/dHBEQ-Ryo24/?t=3260) situation i mean first of all we should acknowledge the pernicious erosion of control so at the very beginning you have 10 ai generated code and then you can just see how it creeps up and up and then at some point six months down the line the pr comes in and now you know 60 of the code is ai generated and do you see what you see what happens you slowly become disconnected but the bull case for this is you know in ai there's this idea called functionalism that you know we I don't care what the intelligent thing is made out of. Of as long as it does all of the right things, then we know, you know, we would say it's AI.

[54:53](https://realalpha.app/v/dHBEQ-Ryo24/?t=3293) And it's the same thing with software. So the bull case is I understand the domain. I don't need to write. I don't need to know how to write the quicksort algorithm. I just need to understand it, right? And then, you know, so I just need to have all of these tests and it needs to go into deployment and these things need to happen. And at that point, you know what? I don't actually care. And I could also... Right, and to be clear, I quite like that framing. But what that actually does is it says, well, software engineering sure is important then because software engineering is all about finding what those pieces are and how they should behave and then how you can put them together to create a bigger piece and then how you can put them together to create a bigger piece.

[55:36](https://realalpha.app/v/dHBEQ-Ryo24/?t=3336) And if we do that well, then in 10 years' time, we could have software that is far more capable than anything we could even imagine today. um but you're only going to get that with really great software engineering yeah you want to be careful i think in the end like ipy kernel i'm finding for example it's just too big a piece right because in the end the the team that made the original ipy kernel were not able to create a set of tests that correctly exercised it, and therefore real-world downstream projects, including the original NB Classic, you know, which is what iPayKernel was extracted from, didn't work anymore. So this is kind of where our focus is now on the development side at Answer.ai, is finding the right sized pieces and making sure they're the right pieces, knowing how to recognize what those pieces are and how to design them and how to put them together is actually something that normally requires some decades of experience before you're really good at it um certainly it's true for me um i reckon i got pretty good at it after maybe 20 years of experience yeah it's a big question is like how do you build these software engineering chops, which are now even more important than they've ever been before,

[57:06](https://realalpha.app/v/dHBEQ-Ryo24/?t=3426) they're the difference between somebody who's good at writing computer software and somebody who's not. That feels like a challenging question. I know. And there's also this notion that there are so many different ways to abstract and represent something. You know, the world is a very complex place. And maybe the way we've been abstracting and representing software is mostly a reflection of our own cognitive limitations right and even in the sciences and in physics you tend to have a lot of quite reductive methods of modeling the world and then you've got complexity science which is just embracing the constructive dissipative you know gnarly nature of things and i think a lot of software today we don't understand right so for example there are many globally distributed software applications that use the actor pattern and this is just this It's basically like a complex system, right?

[57:55](https://realalpha.app/v/dHBEQ-Ryo24/?t=3475) And the only way we can understand it is by doing simulations and tests because no one actually knows how all of these things fit together. So you could argue, I guess, as a bull case that maybe we already are doing this at the top of software engineering and that is what we want to do eventually anyway. Yeah, I'd say probably not. You see companies like Instagram and WhatsApp dominate their sectors whilst having 10 staff and beating companies like Google and Microsoft in the process. I would argue this way of building software in very large companies is actually failing. and i think we're seeing a lot of these very large companies becoming you know increasingly desperate and you know For example, the quality of Microsoft Windows and macOS has very obviously deteriorated greatly in the last five to ten years.

[58:58](https://realalpha.app/v/dHBEQ-Ryo24/?t=3538) You know, back when Dave Cutler was looking at every line of the NT kernel and making sure it was beautiful, it was an elegant and marvelous piece of software. You know, and I don't think there's anybody in the world who's going to say that Windows 11 is an elegant and marvelous piece of software. So I actually think we do need to find these smaller components that we do fully understand and that we need to build them up. And here's the problem. AI is no good at that. And so I'll say that empirically. They're really bad at software engineering. uh and then i think that's possibly always going to be true because you know we're we're asking them to often move outside of their training data you know if we're trying to build something that literally hasn't been built before and do it in a better way than has been done before we're saying like don't just copy what was in the training data so um and again this is a confusing point for a lot of people because they see ai being very good at coding and then you think like oh that's software engineering you know it's like oh it must be good at software engineering but it's they're different tasks there's not a huge amount of overlap between them and there's no current empirical data to suggest that llms are gaining any competency

[1:00:25](https://realalpha.app/v/dHBEQ-Ryo24/?t=3625) at software engineering every time you look at a piece of software engineering they've done like the browser for example which um cursor created or the c compiler which um anthropic created like i've read the source code of those things quite a bit um chris latin is much more familiar with the compiler example than me um but they're they're very very obvious copies of things that already exist so that's the challenge you know is if you want to build something that's not just a copy, then you can't outsource that to an LLM. There's no theoretical reason to believe that you'll ever be able to, and there's no empirical data to suggest that you'll ever be able to. Yeah, so I think the punchline of this conversation is, and I'm sure you would agree with this, that we need to have the combination of AI and humans working together, right? Because the humans provide the understanding and all of the stuff we were saying about knowledge, but we can still use AIs as a tool. But we need to design operating models or ways of working that make that, you know, we say we don't want to diminish our competence and understanding. So it's a very fine line. That's been our focus. And we both focus on that for

[1:01:45](https://realalpha.app/v/dHBEQ-Ryo24/?t=3705) teaching and for our own internal development. The stuff I've been working on for 20 years has turned out to be the thing that makes this all work. Stephen Wolfram should get credit for this. He was the guy that created the notebook interface, although also lots of ideas kind of go back to Smalltalk and Lisp and APL. But basically the idea that a human can do a lot more with a computer when the human can, like, manipulate the objects inside that computer in real time, study them and move them around and combine them together. You know, that's what Smalltalk was all about, you know, with objects.

[1:02:28](https://realalpha.app/v/dHBEQ-Ryo24/?t=3748) And APL was the same with arrays. Mathematica basically is a superpowered Lisp, which then also added on this very elegant notebook interface that allowed you to construct kind of a living document out of all this. So I built this thing called NBDev a few years ago. ago which is a way of creating production software inside these notebook interfaces inside these rich dynamic environments and i found that made me dramatically more productive as a programmer and like today even though i've never been a full-time programmer as my job when you look at my kind of github repo output i think github produced some statistics about it and i was like just about the most productive programmer in australia you know Like, it's working, and a lot of the stuff I build has lots and lots of people use it because it's such a rich, powerful way to build things.

[1:03:22](https://realalpha.app/v/dHBEQ-Ryo24/?t=3802) And so it turns out, we've now discovered that if you put AI in the same environment with the human, again, in a rich, interactive environment, AI is much better as well, which perhaps isn't shocking to hear. But the normal, like if you use Claude Code, which I know you do, and it's a very good piece of software, but the environment we give Claude Code is very similar to the environment that people had 40 years ago. You know, it's a line-based terminal interface. You know, it can use MCP or whatever. Most of the times it just nowadays uses Bash tools, which, again, very powerful. I love Bash tools.

[1:04:05](https://realalpha.app/v/dHBEQ-Ryo24/?t=3845) I use them all the, you know, CLI tools all the time. But it's still just, it's using text files, you know, as it's interfaced to the world. It's really meager. So we put the human and the AI inside a Python interpreter. And now suddenly you've got the full power of a very elegant, expressive programming language that the human can use to talk to the AI. the ai can talk to the computer the human can talk to the computer the computer can talk to the ai like you have this really rich thing and then we let the human and the ai in real time build tools that each other can use and that's what it's about to me right it's about like creating an environment where humans can grow and engage and share it's like for me when i use solve it it's the opposite of that experience you described with flawed code after a couple of hours i feel energized and happy and fulfilled i'll give you i'll give you my take i think that the thing that you're pointing to here is there's something magic about having an interactive stateful environment that gives you feedback and that is because our brains kind of they can do a certain you know unit of work so and so we actually think through refining and testing with reality and

[1:05:36](https://realalpha.app/v/dHBEQ-Ryo24/?t=3936) that's why I mean I'm doing my PhD I use Mathematica and MATLAB and I agree so we've got this REPL environment and you know here's the matrix let's do an image plot you know do a change this is what it looks like now and it's actually a wonderful way to kind of just just refine my mental model about something and but but Claude Code does a lot of this stuff I think it's mostly a skill issue i think the people that use clawed code effectively do this i've written a content management it's possible it is possible it's possible yeah so you know i've written a content management system called re-script and when i'm putting together a documentary video it can go it can it can pull transcripts and then i can verify the claims and you know part of ai literacy is just understanding the the asymmetry of language models right so when you give them a sort of discriminative task they're actually quite good so if i tell it in a sub-agent to go and verify every individual claim. It's much more accurate than if I was in generation mode and I was generating a bunch of claims. And the stateful feedback thing, again, you know, I can have some kind of like schematized XML dump and I can have like an application here on the side, which is

[1:06:39](https://realalpha.app/v/dHBEQ-Ryo24/?t=3999) visualizing and it's like a feedback loop. And for me, this is an AI literacy thing. Like the good people at AI are already doing this. Yeah. So I don't fully agree with you. I agree you can do it in Claude Code and I agree it is a AI literacy thing as to whether you can, but also Claude Code was not designed to do this. It's not very good at it and it doesn't make it the natural way of working with it. I don't want to say it's an AI literacy problem, because that's like saying like, oh, it's a you problem. To me, if a tool is not making it the natural way for a human to become more knowledgeable, more happy, more connected, with a deeper understanding and a deeper connection to what they're working on, that's a tool problem. That should be how tools are designed to work.

[1:07:33](https://realalpha.app/v/dHBEQ-Ryo24/?t=4053) so so many models and tools expressly are being evaluated on can i give it a complete piece of work and have it go away and do the whole thing which feels like a huge mistake to me versus have you evaluated whether a human comes out the other end with a deep understanding of a topic you know so that they can really easily build things in the future i agree with all of that But then there's the other interesting angle, which is that there was a famous talk by Joel Groose, and we'll talk about this. And he said that notebooks are terrible. They're really bad from a software engineering point of view.

[1:08:09](https://realalpha.app/v/dHBEQ-Ryo24/?t=4089) And at the time, and maybe still now to a certain extent, I agree with him because, you know, I've done ML DevOps. I've worked in large organizations, you know, like trying to figure out how do we bridge like data science and software engineering. And clawed code is already more towards the software engineering side. And what that means is it creates idempotent, stateless, repeatable artifacts, right? So as you say, from a pedagogical point of view, it's really good having this stateful feedback because I can understand what's going on. But then I need to translate that into something which is deployable.

[1:08:42](https://realalpha.app/v/dHBEQ-Ryo24/?t=4122) And can you tell us the story of, you responded to Joel Groose, didn't you? And it was a bit of a fiasco, wasn't it? Just tell us about that story. he did a really good video called uh i don't like notebooks um it was uh hilarious it was really well done um and uh yeah i was totally wrong and all the things he said notebooks can't do they can and all the things he said you can't do with notebooks i do with notebooks all the time so it was a very good very amusing uh incorrect talk so then i did a kind of a parody of it called i like notebooks in which i basically copied with credit most of his slides and showed how every one of them was totally incorrect but like i actually think your comment about it does come down to the heart of it which is this difference between like how software engineering is normally done versus how scientific research and similar things is normally done and i think and i agree there is a dichotomy there and i think that dichotomy is a real shame because i think software development is being done wrong uh it's being done in this way which is yeah all about reproducibility and these like dead, these dead pieces, you know, it's, it's all dead code, dead files.

[1:10:12](https://realalpha.app/v/dHBEQ-Ryo24/?t=4212) I will never be able to express this one millionth as clearly as, um, as Brett Victor has in his work. So I'd encourage people who haven't watched Brett Victor to, to, to watch him, but you know, he, he, he shows again and again how a direct connection, you know, a direct visceral connection with the thing you're doing. is old. That matters. And his mission is to make sure people have that connection. And that's basically my mission as well. So for me, traditional software engineering is as far from that as it is possible to get. I think it's gross. I find it disgusting. And I find it sad that people are being forced to work like that. I think it's inhumane. And I just don't think it works very well i mean empirically it doesn't work very well uh and it's much less good for ai as well as it's much less good for humans it hasn't always been that way like you know with with alan k and small talk and uh iverson and apl you know lisp wolfram with mathematica to me these were the golden days when people were focused on the question of how do we get the human into the computer to work as closely with it as possible.

[1:11:39](https://realalpha.app/v/dHBEQ-Ryo24/?t=4299) You know, that's where the mouse came from, for example. I'd go to like click and drag and visualize entities in your computer as things you can move around. So I feel like we've lost that. I think it's really sad. yeah with cloud code and stuff the the default way of working with them is to go super deep into it it's like okay there's a whole folder full of files you never even look at them your entire interaction with it is through a prompt yeah i it it literally disgusts me like i literally think it's it's inhumane and it's my mission remains the same as it has been for like 20 years which is to stop people working like this i know but so casting my mind back i used to work with data scientists they were using jupy notebooks and what i found was typically i mean back then you couldn't if you check them into git it wouldn't look very good most of these data scientists didn't know how to use git they would run the cells out of order which means it wouldn't be reproducible there are all sorts of things like that the thing is i agree with you that you you can use them in this in this workflow but it comes back to what i was saying before about you know we were talking about the call center and it being like a low

[1:12:56](https://realalpha.app/v/dHBEQ-Ryo24/?t=4376) intelligence job you know the data scientists the reason why they they are doing intelligent work is they are actually creating something that doesn't exist they are figuring out the the the contours of a problem they're actually working in a domain that is poorly understood but you could argue now the bull case is when the data scientists can succinctly describe the contours of the problem Maybe we could go to Claude Code and we could implement it properly. But how do we bridge between those two worlds? I think that would be a terrible, terrible idea. You don't want to remove people from their exploratory environment.

[1:13:36](https://realalpha.app/v/dHBEQ-Ryo24/?t=4416) Research and science is developed by people building insight. You know, whoever you listen to, whether it be Feynman or whatever, you always hear from the great scientists how they build deeper intuition by building mental models, which they get over time by interacting with the things that they're learning about. Now, like in Feynman's case, because it was theoretical physics, he couldn't actually pick up a spinning quark, but he did literally study spinning plates, you know. You've got to find ways to deeply interact with what you're working with. Like, so many times I've seen data science teams, because you're right, data science teams aren't very familiar with Git and aren't very familiar with things that they do need.

[1:14:35](https://realalpha.app/v/dHBEQ-Ryo24/?t=4475) And so often I've seen a software engineer will become their manager, and their fix to this will be to tell them all to stop using Jupyter Notebooks. And now they have to use all these reproducible, blah, blah, virtual, you know, virtual env, blah, blah. They destroy these teams. Over and over again, I've seen this keep happening. because the solution is not create more discipline and bureaucracy it's solve the actual problem so for example we we built a um a thing called an nb merge driver which so a lot of people don't realize this but actually uh notebooks are extremely git friendly it's just that git doesn't ship with a merge driver for them so git only ships with a merge driver for line-based text files but it's fully pluggable and so you can easily plug in one for json files instead and so we wrote one so now when you diff you know when you get a get diff with our merge driver you see cell level diffs if you get a merge conflict you get surge level cell level merge conflicts the the notebook is always openable in jupyter nbdime did the same thing so it's two independent implementations of this so yeah there were problems to solve you know um but the solution to it was not throw away brett victor's ideas and make people further

[1:16:03](https://realalpha.app/v/dHBEQ-Ryo24/?t=4563) away from from their exploratory tools but to fix the exploratory tools and i think all software developers should be using exploratory based programming to deepen their understanding of of what they're working with so that they end up with a really strong mental model of the system that they're building and they're working with and then they can come up with better solutions more incrementally better tested i basically never have to use a debugger because i basically never have bugs and it's not because i'm a particularly good programmer it's because i build things up small little steps and each step works and i can see it working and I can interact with it.

[1:16:45](https://realalpha.app/v/dHBEQ-Ryo24/?t=4605) So there's no room for bugs, you know? You know, I'm so torn on this because I agree with you. And I'm also skeptical of people who say that organizations, they converge onto ways of doing things and they no longer need to evolve. They no longer need to adapt. You know, innovation is adaptivity, right? And we should increase the surface area of adaptivity as much as we possibly can. So we need people that are constantly testing new ideas, finding these constraints. but by the same token we need to use the cloud we need to use ci cd we need to get this stuff into production yeah so do you do but like there's absolutely no like so nb dev ships with out of the box ci integration and the like the tests are literally there like because the source is a notebook the entire exploration of like how does this api work you know what does it look like when you call it the implementation of the functions the examples of them the documentation of them the tests of them are in one place so it's much easier to be a good software engineer in this environment um so yeah like to do do both you know so do you remember there was there was that existential risk should be an urgent priority and it was signed by folks like hinton and demis

[1:18:07](https://realalpha.app/v/dHBEQ-Ryo24/?t=4687) and you responded um basically with a rebuttal and that was with um aravind you know the the snake oil guy tell me about that do you think we should be worried about ai existential risk i mean that was a certain time wasn't it and i feel like things have changed a bit thank god i feel like we we not just being aravind but um broadly speaking speaking. the community of which we're a part kind of probably won that. Now we have other problems to worry about. But, you know, basically at that point, the prevailing narrative was AI is about to become autonomous. It could become autonomous at any moment and could destroy the world.

[1:18:49](https://realalpha.app/v/dHBEQ-Ryo24/?t=4729) So it very much comes from, you know, Alicia Yudkowsky's work, which i think clearly has been shown to be wrong at many levels at this point that they would refute that obviously of course they would yeah it's one of those things that they can always refute just like any doomsday cult unless you give it a date uh and the date passes well even i've updated a little bit in the sense that i i now think i would now say that these models can be said to be intelligent in restricted domains the arc challenge showed that so if you place constraints into the problem you you can you can go faster towards a known goal even agency you can put a planner on that and you can go if you if you know where you're going you can go there faster but that doesn't help you like you can have all the intelligence and agency in the world but if you don't have the knowledge and the constraints then you're going in the wrong direction faster and i think they don't seem to appreciate that these models don't actually know the world like But none of that was even relevant to Arvind and my point, which was and is that it's misunderstanding where the actual danger is, which is that when you have a dramatically more powerful technology entering the world that can make some people dramatically more powerful,

[1:20:12](https://realalpha.app/v/dHBEQ-Ryo24/?t=4812) people who are in love with power will seek to monopolize that technology and the more powerful it is the more strong that urge from those power hungry people will be so to ignore people so here's the problem if you're like i don't care about any of that all i care about is autonomous ai taking off you know singularity paperclip nano goo whatever the obvious solution to that is oh let's centralize power and this is which is what we kept seeing particularly at that time let's give um either very rich technology companies or the government or both all of this power and make sure nobody else has it in in my threat model that's the worst possible thing you can do because you've centralized the ability to control in one place and therefore these people who are desperate for power just have to take over that thing could we distinguish though what you mean by power because we've we've just spent some of this conversation talking about how it's not actually as powerful as people think it is but i'm but i'm not even that's what but mine is an even if thing right so like i i just think even if it turns out to be incredibly powerful right like i don't i don't even want to argue about whether it's going to be powerful

[1:21:35](https://realalpha.app/v/dHBEQ-Ryo24/?t=4895) because that's speculative even if it's going to be incredibly powerful you still shouldn't centralize all of that power in the hands of one company or the government yeah because if you do all of that power is going to be monopolized by power hungry people and used to destroy civilization, basically. You'll end up with a place where all of that wealth and power will be centralized with the kinds of people who want it centralized. So, society for hundreds of years have faced this again and again and again. So when it's like, writing used to be something that only the most And exclusive people had access to knowing about writing. And the same arguments were made. If you let everybody write, they're going to use it to write things that we don't want them to write, and it's going to be really bad. Ditto with printing. Ditto with the vote.

[1:22:49](https://realalpha.app/v/dHBEQ-Ryo24/?t=4969) and again and again society has to fight against this natural predilection of the people that have the status quo power to be like, no, this is a threat so when we're saying what if AI turned out to be incredibly powerful would it be better for society to be that to be kept in the hands of a few or spread out across society, my argument was the latter. Now, there's also an argument which is like, don't worry about it, it's not going to be that powerful anyway. I just didn't want to go there because it's not an argument that's easy to win because you can't really say what's going to happen. We're all just guessing.

[1:23:39](https://realalpha.app/v/dHBEQ-Ryo24/?t=5019) that i can very clearly say like well if it happens would it be a really good idea to only let elon musk have it or would it be a good idea to only let donald trump have it dan hendrick spoke about this offense defense asymmetry so it's actually very important for us to have countervailing um you know defenses but let's just take that as a given for a minute because obviously when we look at something like meta and facebook it's quite clear what the power imbalance is you know there's They control all of our data. They know what we're doing. We're something like OpenAI and Clawed. So it's not as good as we thought it was because actually humans still need to be involved.

[1:24:17](https://realalpha.app/v/dHBEQ-Ryo24/?t=5057) But for example, they have all of our data, right? And you might be working on some new innovative technology and you're using Clawed and you're sending all of your information up there and they can now copy you. I mean, what kind of risks are you talking about to be more concrete? Yeah, no, I mean, so I was not talking about any of those things, right? Right. So at the time I was talking about this speculative question of what if AI gets incredibly powerful? I mean, like now, for example, they say that this is the new means of production. And that seems completely hyperbolic to me. But like in your best estimation now, if there are risks, what are they?

[1:24:51](https://realalpha.app/v/dHBEQ-Ryo24/?t=5091) If there are risks with the current state of technology, I mean, I think some of them are the ones we've discussed, which is people enfeebling themselves by basically losing their ability to become more competent over time. That's the big risk I worry about the most. The privacy risk, it's there, but I'm not sure it's much more there than it was for Google and Microsoft before. You know, you used to work at Microsoft. you know how much data they have about the average outlook office etc user ditto for google you know the average google workspace or gmail user those privacy issues are real although i think there are bigger privacy issues around these companies which the government can outsource data collection to so back in the day it used to be companies like choice point and axiom nowadays it's probably more companies like Palantir. The U.S. government is actually prohibited from building large databases about U.S. citizens, for example, but it's not prohibited. Companies are not prohibited from doing so, and the government's not prohibited from contracting things to those companies. So, I mean, that's a huge worry, but I don't think it's one that AI is uniquely creating. It's you know, in the UK surveillance has been

[1:26:26](https://realalpha.app/v/dHBEQ-Ryo24/?t=5186) It's been universal for quite a while now. It certainly makes it easier to use that surveillance, but a sufficiently well-resourced organization could just throw a thousand bodies at the problem. So, yeah, I'm not sure these are new privacy problems as maybe more common ones than they used to be.
