Loading summary
Announcer
This is an iHeart podcast.
Oracle Cloud Infrastructure Advertiser
In business they say you can have better, cheaper or faster, but you only get to pick two. What if you could have all three at the same time? That's exactly what Cohere, Thomson Reuters and Specialized Bikes have since they upgraded to the next generation of the cloud. Oracle Cloud Infrastructure OCI is the blazing fast platform for your infrastructure, database, application development and AI needs where you can run any workload in a high availability, consistently high performance environment and spend less than you would with other clouds. How is it faster? OCI's block storage gives you more operations per second cheaper. OCI costs up to 50% less for computing, 70% less for storage and 80% less for networking better. In test after test, OCI customers report lower latency and higher bandwidth versus other clouds. This is the cloud built for AI and all your biggest workloads right now with zero commitment. Try OCI for free. Head to oracle.com strategic that's oracle.com strategic.
Washable Sofas Advertiser
Tired of spills and stains on your sofa? Washablesofas.com has your back featuring the Annabe Collection, the only designer sofa that's machine washable inside and out. Where designer quality meets budget friendly prices. That's right, sofas start at just $699. Enjoy a no risk experience with pet friendly stain resistant and changeable slipcovers made with performance fabrics. Experience cloud like comfort with high resilience foam that's hypoallergenic and never needs fluffing. The sturdy steel frame ensures longevity and the modular pieces can be rearranged anytime. Check out washablesofas.com and get up to 60% off your Anna Bay sofa backed by a 30 day satisfaction guarantee. If you're not absolutely in love, send it back for a full refund. No return shipping or restocking fees. Every penny back. Upgrade now@washablesofas.com Offers are subject to change and certain restrictions may apply.
Ryan Reynolds (Mint Mobile Advertiser)
Hey, it's Ryan Reynolds here from Mint Mobile. Now I was looking for fun ways to tell you that Mint's offer of unlimited premium wireless for $15 a month is back. So I thought it would be fun if we made $15 bills, but it turns out that's very il. So there goes my big idea for the commercial. Give it a try@mintmobile.com Switch upfront payment.
Announcer
Of $45 for a three month plan.
Colton Vogie (Software Engineer)
Equivalent to $15 per month required new.
Announcer
Customer offer for first three months only.
Colton Vogie (Software Engineer)
Speed slow after 35 gigabytes of network's.
Announcer
Busy taxes and fees extra see mintmobile.com.
Ryan Reynolds (Mint Mobile Advertiser)
This is Jacob Goldstein from what's yous Problem? When you buy business software from lots of vendors, the costs add up and it gets complicated and confusing. Odoo solves this. It's a single company that sells a suite of enterprise apps that handles everything from accounting to inventory to sales. Odoo is all connected on a single platform in a simple and affordable way. You can save money without missing out on the features you need. Check out Odoo at o d o o.com that's o d o o.com.
Ed Zitron (Podcast Host)
Callzone.
Announcer
Media.
Ed Zitron (Podcast Host)
Hello and welcome to Better Offline. I'm your host, Ed Zitron. As ever, buy our merchandise. Subscribe to the newsletter it's all in the episode and today I'm joined by programmer Colton Vogie, who wrote an excellent piece about a month ago called no. AI is not making engineers 10x is powerful. Colt, thanks for joining me.
Colton Vogie (Software Engineer)
Thank you for having me.
Ed Zitron (Podcast Host)
So tell me a little bit about your day to day work. What do you do for a living?
Colton Vogie (Software Engineer)
So I'm a software engineer and I work specifically in what's called web application development. So that's kind of like building rich applications that work in the web browser. So think of something like Amazon or Google Drive or something where you can do a lot of interactive features within the application within a browser.
Ed Zitron (Podcast Host)
Right. So kind of like the fundament of most cloud software.
Colton Vogie (Software Engineer)
Yeah, I would say that the, if not the majority of engineers work in web application development, then probably the plurality do right now.
Ed Zitron (Podcast Host)
And it's also a large amount of how people interact with software is now in this way though.
Colton Vogie (Software Engineer)
Yeah, exactly. Yeah. And that's why most developers perhaps work in this field now.
Ed Zitron (Podcast Host)
And you'd think something like that would be perfect for AI coding environments.
Colton Vogie (Software Engineer)
Surely it is definitely the most applicable place for AI coding of all of them. There's sort of a, there's a thing where people are like, oh, LLMs don't really work really well for my language. And they'll be talking about something like Rust, which is more of like a high performance language rather than a web language.
Ed Zitron (Podcast Host)
What is a high performance language?
Colton Vogie (Software Engineer)
In this case, just something that's designed to work on weak hardware or at extremely high speeds. For example, video games aren't built in Rust. They're usually built in a language called C, but they're built in a high performance language because you're trying to max out as much as you can do.
Ed Zitron (Podcast Host)
You're taking advantage of the high performance compute you have.
Colton Vogie (Software Engineer)
Yeah. Whereas with a website like Amazon or something like that. You're really not pushing the limit in terms of interactivity and so more modest languages are fine.
Ed Zitron (Podcast Host)
Got it. So you laid it out really nicely in the piece. So you're going to have to repeat a few things, I imagine. But run me through why AI coding tools can't actually make you a 10x engineer or 10 times better engineer.
Colton Vogie (Software Engineer)
Yeah. So basically AI is really good at. AI is almost shockingly good at generating code, and it's almost shockingly good at generating code that runs and it can answer a lot of questions that are difficult, or at least annoying is probably the better word. It's really good at dealing with things that are annoying. It's really good at. In coding, we have this concept called boilerplate, and it's just code that you have to rewrite a lot. As an engineer, ideally you don't have to write a lot of boilerplate. Ideally you automate things and abstract things so you, you don't need to do that very often, but it's sort of like a requirement of the job. And it's really good at writing that because, you know, it's just, it's kind of like low intent, high volume code.
Ed Zitron (Podcast Host)
Right.
Colton Vogie (Software Engineer)
Quantity over quality type thing. So it's really good. It's stuff like that. The problem is that generating code really isn't the hard part of being a software engineer. It's. It's one of the things that really matters. And it's like, obviously if you go to college to learn how to code, what you're going to spend most of the time doing is typing code. But it's really just one thing that you're doing. In reality, you're doing a lot more thinking about, okay, how does this work with the systems I already have, how do I avoid creating what's called tech debt? So tech debt is basically an easy way of thinking about. It is when you write code that makes writing future code harder. An example would be, you know, you want to write like a piece of logic that, let's say, computes sales tax. If you're, you know, making an online store, you'd want to compute sales tax based on where they are. You only want to write that once. You don't want to have two different places that, you know, handle sales tax because then if, you know, Illinois changes their sales tax rate, you have to change two places instead of one.
Ed Zitron (Podcast Host)
Doesn't the very nature of code also mean that it naturally creates tech debt?
Colton Vogie (Software Engineer)
You can try to mitigate as much as you can, but there's even an idea that all code is tech debt. What I mentioned before, LLMs are really good at producing boilerplate. But if you get to the point where boilerplate is really easy to produce and you're not constantly thinking, okay, how do I avoid doing this in the future? Exactly. You start generating more and more code. And just generating code, it's kind of like writing in terms of, you know, writing a book. Like a good writer writes fewer words rather than more. Yeah, yeah.
Ed Zitron (Podcast Host)
Brevity is the soul of wit. No, it's because what I've been realizing is that there is this delta between people that actually write software and people that are excited about AI coding. Because I had Carl Brown from the Internet of Bugs on and it was this thing of. Yeah, being a software engineer is not just writing 100 lines of code and then giving the thumbs up to your boss. You have to interact with various different parts of the organization. Early on in the piece as well, you had this bit called the math. And I'll link to this obviously in the episode notes where it's. Any software engineer has worked on actual code in a natural company knows that you have these steps and where it isn't just like, I code and then I give the thumbs up and I'm done for the date. You have to go through a reviewer, you have to wait for them to get back to you. You have to. You refer to context switching as well. We have to change different windows and do different things. There's a shit ton of just intermediary work that is nothing to do with actually writing code, right?
Colton Vogie (Software Engineer)
Yeah, absolutely. I mean, it really is more of, you know, there's parts of coding that is more science and there's parts of coding that are more art and more. You know, in college it's really common if you're getting computer science degree to take communications classes because you just have to interact with a lot of people. So the standard way that a thing gets done in a software project is you have somebody called a product manager and that person's a. That person's job is to think about what the product is as it exists now and what should be in the future and what features we should build. Basically, more than anything, it's what should we build next? And then you have designers who are going to decide how that thing should look. And engineers have to be this meeting influence because they're the only ones in the process who actually know how hard it is going to be to build something. So a frequent interaction is like product managers said, oh, we should add this and an engineer has to kind of step in and be like, no, that's borderline impossible, or that would take six months. Right.
Ed Zitron (Podcast Host)
And you want coding. LLMs don't fix that problem. Do they actually make it easier to develop products?
Colton Vogie (Software Engineer)
There are uses for LLMs in coding.
Ed Zitron (Podcast Host)
I'm not even denying that. I'm just like, how, like, what do those uses end up actually creating?
Colton Vogie (Software Engineer)
Basically, you know, what I found is that I don't really like using LLMs for most product work. Even though they're good at, say, like, oh, add a button here that does this, they can be good at that. Especially if you have a code base that works really well with LLMs. So some programming languages, some tools, some, we call them libraries, encoding, they're basically like shared software. Some of those things work really well with LLMs because the LLMs are just trained on the Internet. So sites like Stack Overflow and sites like leetcode and stuff like that. And so if they have a large body of this code to work within their training data, like these tools and these languages, they tend to be better at writing them. And so, you know, I work primarily in JavaScript, as do most web application engineers, and LLMs are quite good at JavaScript, but I still don't like to use it that much because it tends to just not understand context very well.
Ed Zitron (Podcast Host)
And what does that mean in practicality?
Colton Vogie (Software Engineer)
So it's kind of just like, you know, understanding the existing resources that you've already built in your code base. So this is like the avoiding writing the same, like, sales tax thing twice. They tend to default to rewriting things, and they tend to struggle to reuse the same style. So an important thing in coding is maintaining consistent styles of your code. There's a whole theory and practice of actual how your code should look, how the texture, what things you should avoid, because there's bad patterns, there's good patterns, and there's everything in between. I think it's very similar to, like, you know, when image generation AI kind of came onto the scene. You had a lot of people being like, all right, well, graphic designers are done. You know, they're out of a job, they don't need to do anything. Because I can generate a logo now and it, like, it looks pretty good. Like I can generate a logo for my nail salon or whatever and look at it, it looks great. But as soon as you try to generate a second logo that looks like the first one and, you know, maybe has a slight modification or something like that, it's really bad at it. It's really bad at using the context and you're like, okay, now I need a graphic designer and as soon as you need.
Ed Zitron (Podcast Host)
You end up hiring one anyway.
Colton Vogie (Software Engineer)
Yeah, exactly. It's very similar to engineers. A lot of what you're doing is sort of working around context and avoiding redoing things and avoiding moving away from your existing styles.
Ed Zitron (Podcast Host)
And what is the, the critical nature of styles? Is that because, is that so that people looking at your stuff in the future can say, okay, this is what they were going for. This is so that everything doesn't break?
Colton Vogie (Software Engineer)
Yes, exactly. It's about consistency. It's about so there are certain, you know. For example, JavaScript, which is the main language I work in, is almost infamous for basically allowing you as the developer to do all sorts of buck wild stuff that you should like never do coding wise. Like a lot of old patterns, a lot of recycled stuff, a lot of it just, it just lets you. It's a extremely varied language in the things it supports. And so what you want to do when you're writing in JavaScript is only use the good parts. You want to strategically avoid doing a bunch of bad things. And some of those bad things there's tools that will automatically detect if you're doing them and will.
Washable Sofas Advertiser
Time for a sofa upgrade? Visit washablesofas.com and discover Annabe where designer style meets budget friendly prices with sofas starting at $699, Annabe brings you the ultimate in furniture innovation with a modular design that allows you to rearrange your space effortlessly. Perfect for both small and large spaces, Anime is the only machine washable sofa inside and out. Say goodbye to stains and messes with liquid and stain resistant fabrics that make cleaning easy. Liquid simply slides right off. Designed for custom comfort, our high resilience foam lets you choose between a sink in feel or a supportive memory foam blend. Plus our pet friendly stain resistant fabrics ensure your sofa stays beautiful for years. Don't compromise quality for price. Visit washablesofas.com to upgrade your living space today with no risk returns and a 30 day money back guarantee. Get up to 60% off plus free shipping and free returns. Shop now at washablesofas.com Offers are subject to change and certain restrictions may apply.
Announcer
Every business has an ambition. PayPal open is the platform designed to help you grow into yours with business loans so you can expand and access to hundreds of millions of PayPal customers worldwide. And your customers can pay all the ways they want with PayPal, Venmo pay later and all major cards so you can focus on scaling up when it's time to get growing. There's one platform for all business. PayPal open grow today at paypalopen.com loans subject to approval in available locations.
Ed Zitron (Podcast Host)
So today's show is brought to you with support from Square, who I really love. They offer quick payment processing, really easy to use terminals. Everything spins up really quickly and every store I use them in, I don't really think about the experience, which is exactly what I want from any kind of tech. The loyalty programs work really easily. They're over at Court Street Grocers S and P. Van Leeuwen Ice Cream. They're just a very easy to use and straightforward piece of tech. I can't recommend them enough. I've heard great things from businesses using them and as a customer, never upset to see them in a store. Square keeps up so you don't have to slow down, get everything you need to run and grow your business without any long term commitments. And why wait? Right now you can get up to $200 off square hardware at square.com go betteroffline that's s q u a r e.com go betteroffline run your business smarter with Square. Get started today.
Colton Vogie (Software Engineer)
Ah, come on. Why is this taking so long? This thing is ancient.
Lenovo Advertiser
Still using yesterday's tech. Upgrade to the ThinkPad X1 carbon ultralight. Ultra powerful and built for serious productivity with Intel Core Ultra processors, blazing speed and AI powered performance that keeps up with your business, not the other way around.
Colton Vogie (Software Engineer)
Whoa, this thing moves.
Lenovo Advertiser
Stop hitting snooze on new tech. Win the tech search@lenovo.com Lenovo Lenovo unlock AI experiences with the ThinkPad X1 carbon powered by Intel Core Ultra processors so you can work, create and boost productivity all on one device.
Ed Zitron (Podcast Host)
What are these bad? Is it just that Java? What's so special about Java that it allows you to do that?
Colton Vogie (Software Engineer)
Yes, JavaScript, which is technically different from Java. Yeah, no problem. Basically the reason JavaScript has all these bad parts is because it was created in 10 days as a toy language at Mosaic, which was the precursor to Firefox, you know, the first browser that really gained traction and sent the Internet.
Ed Zitron (Podcast Host)
I'm old enough to have used Mosaic somehow.
Colton Vogie (Software Engineer)
Yeah. So JavaScript was created in like 10 days almost just as like a thing to test, like just something to try. Like, okay, what if we put a coding language into the browser that people could just like ship with their websites? And in response to that, other companies said okay, well we need to support JavaScript as well. And so when Internet Explorer came out, they shipped their own version of JavaScript which was slightly different. And so you have this engineer that was kind of built on these very hacked together principles that was then rebuilt with slightly different principles. And then what you have now is 30 years later, sort of the conglomeration of all those things into one language. And it's improved dramatically in that time. But the nature of coding languages is there's a lot of backwards compatibility, like a video game where you, you want to be able to build a computer that can run a game from 1991. You want the browser to be able to still run code, largely that was written in 1995 or whatever. So a lot of that stuff still exists. And what they've done is introduce new patterns that can be better. And so there's sort of an equal amount of avoiding that and then also just consistency. So there are times where there's two good ways to write, ways to do something, but you always want to do it only in one way, so that anytime someone reads it, they see that pattern and they say, okay, I know exactly what this does. Right.
Ed Zitron (Podcast Host)
And this fundamentally feels like something large language models are bad at because they don't know anything and they don't create anything unique either. They just repeat.
Colton Vogie (Software Engineer)
Yeah, exactly. I mean, they are statistical inference models. And so they are very good at generating what they think should come next based on probabilities. And you can, when you're training a large language model, you can try to push it in one way, push it in another way, to say like, no, don't do that, don't do that. But like, trying to do that on the broad spectrum of all things code is basically impossible. And so you're going to get things that default to the way that they were done on the Internet. And so much like I said, JavaScript is 30 years old. It's extremely, it's gone through a lot of dark times in terms of patterns. And so on the Internet there are just vast swaths of terrible JavaScript. Oh, God.
Ed Zitron (Podcast Host)
So it's just these models are trained on bad code as well as good code.
Colton Vogie (Software Engineer)
Yeah, exactly. I'm sure they're trying very hard when they're training the models to filter some of this stuff out, but trying to do a broad filter on hundreds of thousands, millions even of web pages.
Ed Zitron (Podcast Host)
How old was it again? Like decade.
Colton Vogie (Software Engineer)
I mean, JavaScript's been around for 30 years, as have most programming languages that are in use right now. Right.
Ed Zitron (Podcast Host)
But this particular one seems particularly chaotic in how it's sprawled.
Colton Vogie (Software Engineer)
Yes, JavaScript is a particularly thorny language. Yeah.
Ed Zitron (Podcast Host)
So what you're describing, I'm not trying to put words in your mouth, is that this stuff doesn't do the stuff that everyone's saying it does. Like it's not replacing engineers. It doesn't even seem like it could replace engineers. Like it's just not. It doesn't do. In fact, maybe it's fairer to say that it doesn't do software engineering.
Colton Vogie (Software Engineer)
That's almost the perfect way to put it. It does coding, but it doesn't do software engineering. And software engineering is kind of this broader practice of like everything that comes together around coding. So, you know, some people really integrate LLMs deeply into their everyday work and they do similar work to what I do. So, you know, there are people who are Primarily having like LLMs write their code and they can be good engineers, but they're intervening pretty constantly, from what I understand. And you know, they're having to sort of redirect it, make sure it stays on patterns and all that stuff. And there's just kind of, you know, this is the reason that I don't really use LLMs that much is there's just a constant tension between the lack of context they have and what you want them to do and constantly reviewing the code and making sure it's up to standards when I know I could just write it and it'll take about as much time as it would take prompting and re prompting. I get better code that way and that's what I care about most.
Ed Zitron (Podcast Host)
So do you think it's kind of a mirage almost the productivity benefits?
Colton Vogie (Software Engineer)
I think it would vary a lot. I think, yes, broadly. I think that there are productivity benefits but like these like huge outsize, like oh my gosh, I'm galaxy brained right now. I'm doing so much. I think that that is largely a mirage based on like extrapolation of like small wins. I talk about this a little bit in my article that, you know, there are one thing that I use LMS for a lot, not a lot sometimes, but that they are really good at is sometimes you're writing code and you're like, I need to write a thing that I will only run once and I will throw in the trash or I need to write a thing and it uses this tool that I don't have the time to learn. But I'd really like to have this tool. I'd really like to just use this once. You can vibe code something and not really understand what the code does. You can run it once and not, you know, validate the output and make sure it works fine. And you know, I've saved in that time. You know, it might have taken me five hours to like learn how to use this tool properly and like learn how to use it with good standards. It could even have taken me more. And Instead I spent 20 minutes.
Ed Zitron (Podcast Host)
You know, wouldn't that be dangerous because you don't know how it works?
Colton Vogie (Software Engineer)
Exactly, exactly why I like to only use it for these like one time, like low. For example, I wrote some code the other week and I basically refactored some existing code. So I adjusted how it worked a little bit. I realized there was a way that I could break some existing code with it, but I didn't have an easy way of checking across the entire code base. We have tests in our code base that would catch issues, but there's always some code that isn't quite up to par with tests. I, I had this idea that a really simple language parser could go through and make sure that this code was right. Something that is only like 30 lines of code. But language parsing is really complicated and the tools to do it are, there are a lot of them and they're very well supported because language parsing is a huge deal. But it would take me a lot of time to learn that. So I just vibe coded a little tool. I said, hey, find me every case where I use this function and I call it like this in this entire code base. Or actually I said, write a script that will find me that I looked at the code, I was like, yeah, that looks right. That looks right. I ran, said there was no issues in my code base. So I intentionally created an issue just to make sure it worked. And it worked. It showed it. Then I got rid of the intentional issue and I was like, okay, this is probably good. I pushed my code and it turned out to be good.
Ed Zitron (Podcast Host)
But that's, you know, that also seems low stakes.
Colton Vogie (Software Engineer)
Exactly. And it's, it's what I would say wouldn't scale. So if I really needed to start doing like language parsing constantly, like I was doing it daily at my job, I simply would have to learn, like you said, you know, how do you know that there aren't any issues? I would have to learn the tools.
Ed Zitron (Podcast Host)
Right.
Colton Vogie (Software Engineer)
So the time that I saved was by avoiding learning for this one thing. But eventually if you're going to make something your full time job, you have to learn it because you can't fully trust the output because otherwise it isn't your job.
Ed Zitron (Podcast Host)
You were Just kind of mimicking.
Colton Vogie (Software Engineer)
Yeah. And you have to. The LLMs make mistakes in occasionally extremely catastrophic ways. There's a thing called slop squatting. Have you heard of slop squatting?
Ed Zitron (Podcast Host)
No, but please tell me. I love this term so much already.
Colton Vogie (Software Engineer)
Yeah. So basically you might, you might have heard of like domain squatting. So this is where, like, I think.
Ed Zitron (Podcast Host)
I know what this is and I'm very excited to hear more.
Colton Vogie (Software Engineer)
Yeah, so like, you know, this was a thing where like in 19, you know, 91, you're like, okay, I think the Internet's going to be big. So I'm going to grab nike.com. right. I'm just going to hold it. So that's squatting a domain. So slop squatting is basically where you. The LLMs, they're statistical inference machines. They don't actually understand what they're doing. And so sometimes they will import software.
Ed Zitron (Podcast Host)
Is this when it looks on GitHub for something that doesn't exist?
Colton Vogie (Software Engineer)
Yes. And it will just add code to your project that's like, import this thing and it will install it and it'll say, okay, this is the library that you want to use. It's not right. It's either misspelled or. For example, you would be looking for a library called left pad and it would import something called left pad with no dash. What people realized is that they can. When the LLMs, they're statistical machines and so they frequently, they do the same thing a lot. They make the same mistakes a lot. So you could grab that library, left pad with no dash, and put code in there that works, that does the thing that the library is supposed to do, but also retrieves all of the secrets that are in your environment, or looks for crypto wallets or production database passwords and stuff like that.
Ed Zitron (Podcast Host)
If you're someone that can't read code or can't read that kind of code, you would have no idea this is happening.
Colton Vogie (Software Engineer)
You'd have no idea. And even if you're somebody who does read code really well, if you look at that, you said it's imported left. You're like, that sounds right. That looks right. Unless you are really familiar with this library, and even if you are familiar, you might just gloss right over it. It's really, really, really dangerous. And this is the type of thing that could, like, maybe if, like, if the LLM is making you even twice as productive, you know, that doesn't mean much. If you know there's a chance you could destroy your entire company with a catastrophic security breach, you know. Yeah. Leak all your database to this, this hacker and so not good. Yeah, exactly.
Ed Zitron (Podcast Host)
And is that becoming more prevalent?
Colton Vogie (Software Engineer)
I haven't heard much of it like happening in the wild, but it's just one of those things that is bound to happen because again, these are just statistical models. They don't have the ability to really reason about the actual nature of the things that they're doing. They can try, they can make a sub LLM call and ask the other LLM like does this look right? But then you're burning more and more.
Ed Zitron (Podcast Host)
Tokens and also at some point you are trusting the statistical model to measure a statistical model's ability to do its job.
Colton Vogie (Software Engineer)
Yes, exactly. And it kind of devolves. Anybody who's used an LLM for coding knows that the deeper you go into a single prompt, the more back and forth, the larger the context window, the more garbage it gets. And so as you have things working off of other LLM input, which is effectively what you're doing in a large context window, it's just the LLM is sort of reprocessing the text that it generated and that you've added to it. It steadily gets worse the later in the context window. So basically all of these sort of mitigations are, you know, they've made surprising progress with the way that like, you know, things like this don't happen as like just raw hallucinations of like, I think this library exists. They happen a lot less now than they used to, but they're just always, they're always going to.
Ed Zitron (Podcast Host)
And they're also always going to be there.
Colton Vogie (Software Engineer)
Yeah, pretty much.
Ed Zitron (Podcast Host)
It's not really something you could. Unless we invent new maths.
Colton Vogie (Software Engineer)
Yeah, I mean, at least with the way we approach AI right now, which is based purely on language as tokens and it can't really fundamentally understand things outside of word probabilities.
Washable Sofas Advertiser
There's nothing like sinking into luxury. @washablesofas.com you'll find the Annabe sofa, which combines ultimate comfort and design at an affordable price. And get this, it's the only sofa that's fully machine washable from top to bottom. Starting at only $699. The stain resistant performance fabric, slipcovers and cloud like frame duvet can go straight into your wash. Perfect for anyone with kids, pets or anyone who loves an easy to clean spotless sofa. With a modular design and changeable slipcovers, you can customize your sofa to fit any space and style. Whether you need a single chair loveseat or a luxuriously large Sectional Annabe has you covered. Visit washablesofas.com to upgrade your home. Right now you can shop up to 60% off store wide with a 30 day money back guarantee. Shop now@washablesofas.com Add a little to your life. Offers are subject to change and certain restrictions may apply.
Announcer
Every business has an ambition. PayPal open is the platform designed to help you grow into yours with business loans so you can expand and access to hundreds of millions of PayPal customers worldwide. And your customers can pay all the ways they want with PayPal, Venmo, pay later and all major cards so you can focus on scaling up when it's time to get growing. There's one platform for all business PayPal open grow today at paypalopen.com loans subject to approval in available locations so today's.
Ed Zitron (Podcast Host)
Show is brought to you with support from Square, who I really love. They offer quick payment processing, really easy to use terminals. Everything spins up really quickly and every store I use them in I don't really think about the experience, which is exactly what I want from any kind of tech. The loyalty programs work really easily. They're over at Court Street Grocers S and P Van Leeuwen Ice Cream. They're just a very easy to use and straightforward piece of tech. I can't recommend them enough. I've heard great things from businesses using them and as a customer, never upset to see them in a store. Square keeps up so you don't have to slow down. Get everything you need to run and grow your business without any long term commitments. And why wait? Right now you can get up to $200 off square hardware at square.com go betteroffline that's s q u a r e.com go betteroffline run your business smarter with Square. Get started today.
Colton Vogie (Software Engineer)
Ah come on. Why is this taking so long? This thing is ancient.
Lenovo Advertiser
Still using yesterday's tech upgrade to the ThinkPad X1 carbon ultralight. Ultra powerful and built for serious productivity with Intel Core Ultra processors. Blazing speed and AI powered performance that keeps up with your business, not the other way around.
Colton Vogie (Software Engineer)
Whoa, this thing moves.
Lenovo Advertiser
Stop hitting snooze on new tech. Win the tech search@lenovo.com Lenovo Lenovo unlock AI experiences with the ThinkPad X1 carbon powered by Intel Core Ultra processors so you can work, create and boost productivity all on one device.
Ed Zitron (Podcast Host)
So where is this pressure coming from? Because it feels like it's everywhere and you've got people like Paul Graham who are wanking on about oh I met a guy who writes 10,000 lines of code. I think he said, what is it? Are we just finding out how many people don't know how coding works?
Colton Vogie (Software Engineer)
I think a lot of that, yes. Like I said, it's exactly the same way as, like, people, you know, when the first image generation models were like, oh, great, we don't need graphic designers anymore. And then they. Or, you know, oh, great, we don't need customer support chat anymore because they fundamentally don't understand what those roles do. You know, they're. They think graphic designer and they think image generator, but a graphic designer is, Is a human being that's. That's dealing with different stakeholders, dealing with people saying, like, no, no, no, the, the logo can't have that. Or, you know, yes, the logo must have. Yeah, yeah, exactly. And they're dealing with, you know, different requirements and then they're needing to make variations, which is something that LLMs are not always very good at. Or I should just say generative AI is not always very good at.
Ed Zitron (Podcast Host)
Yeah.
Colton Vogie (Software Engineer)
And so strange part of it is people who, you know, like I said, you know, you get these, like, brief bursts where you're like, oh, my God, I just saved so much time. And you extrapolate that. So some of it, I think, is engineers who are just like actual engineers who know how to code, who see these things and they think, like, I did this today and I must have been so much more productive as a result. I saw this one thing happen, but they don't really actually measure in depth what they produced and was it more than what they would have produced. There have been some studies to measure that, and they haven't looked particularly good for LLMs. If you actually compare people, you know, using AI versus not using AI, the results don't always look particularly great for AI. And one thing that's very common out of that is that people overestimate their performance.
Ed Zitron (Podcast Host)
And I think that might be a problem across all. Like, a lot of people don't. I also think my grander theory with all of this is a lot of people don't know what work is like. A lot of these investors and managers and such and even people in the media don't seem to actually know what jobs are and how the jobs work. And they think that things like coding is just, like I said earlier. Yeah, just walk into work or write 10,000 lines of code on a walk home. But now I can write 20 billion lines of code because that's all my job is.
Colton Vogie (Software Engineer)
Yeah, absolutely. I mean, this is. This is something I talk about in my article is that there's always this like, degree of separation. And the people who are talking the most about AI coding aren't really coders and they're not really providing like detailed reproduction steps. You know, I know engineers who love using AI like every single day and they use it for like all of their projects. And I know really good ones who do that. And if I asked them like, hey, how could I be more likely be more like you? How could I be a better coder? One of the last things they'll say is probably, you know, start using AI more. It's really just a tool to accomplish part of their job. And so. So yeah, I think there's a lot of, you know, there's probably, you know, plenty of genuine people who just like, you know, they've never written a line of code in their life. They pull up lovable, they say, generate me an app that does this. And like, they legitimately are like, oh my gosh, it actually worked. Like I, I can code. And they just, they just, you know, naturally, you know, they don't realize it. They don't realize that like there is so much more to this actual practice. And, you know, they're just not in tune with the way that coding actually works.
Ed Zitron (Podcast Host)
Yeah, it's a little bit sad as well, because it really feels like a lot of this is just the point you've made about like the image generators. It's just this immediate moment of, wow, look what this could do. Imagine what it could do next. And then you look at what it could do next and it can't, like, it looks like it can generate code, but it can't actually generate software. Like it cut. It doesn't seem to do the steps that make software functional and scale because there's these tendrils of, from software into the infrastructure to make sure it can be shown in different places or to make sure that it actually functions on a day to day basis. Yeah, and it's like, yeah, it's a.
Colton Vogie (Software Engineer)
Pretty simple like curve. Like, you know, you start out and it generates so much code that's like pretty correct really fast. If you start a completely bare project from just like a lovable prompt or something like that. But as you go on, you know, it's like the curve kind of flattens and it goes down and it becomes less and less productive. And I think eventually, usually like pure vibe coded projects hit a pretty big wall because you're just introducing so much code and it's not consistent, it's not using shared tools. And so you eventually you just end up with this, you know, they call it spaghetti code. It's, you know, code that is so interwoven and difficult to understand that like you can't actually see what's going on with it.
Ed Zitron (Podcast Host)
Yeah, Feels like context is the whole problem. Just because even not to say like LLM generated writing is dog shit. And I think it's worse than code because code, code is functional in a way that I don't think writing has to be. Like writing conveys meaning. But good writing is usually more than just I am entering this writing into someone's brain. So something happens in the way that code is. But with writing they share the same problem, which is great. Writing has contextual awareness, it builds, it connects. There is an argument or there is an evocation from it. In the case with software, it appears to be. If you don't know every reason that everything was done and fully understand the reasons that were previous and the reasons that are happening right now, you kind of will fuck something up naturally. Even if you do know how to code, if you just don't read any of the notes, if it's not clear why things were done, things will break anyway, right?
Colton Vogie (Software Engineer)
Yeah, exactly. And great writing, it knows when to. A great writer knows when they need to explain something and when they don't need to explain something, they know. I'm writing a trade publication. I don't need to explain how friction works or I'm writing a public press release. I do need to explain how friction works or whatever. So it's very. These are the things that the LLMs are exactly just very not good at. They can generate stuff that looks good, but the more you try to build on top of it, the more it'll end up restating. LLMs are really good at writing the classic school level 5 paragraph essay. But everybody who actually writes anything at all knows that the five paragraph essays that you wrote in high school are terrible and nobody wants to read something structured as premise. Three argumentative paragraphs. Conclusion. It's really bad, like unconvincing writing. And it's the same with, you know, LLMs are really good at making toys and like, like quick things that like, are fun or you know, maybe a little bit useful in certain situations, but really bad at writing things that, you know, like, like a book level type things like, you know, AIs are horrible at writing books because they restate things and they lose track of what they're talking about.
Ed Zitron (Podcast Host)
And the more stuff it creates, right, the more it looks over, the more Confused.
Colton Vogie (Software Engineer)
It gets exactly. It's really, really similar. I think that coding has really just followed the same trajectory as all of these other things where we're like, oh, we don't need copywriters anymore. Oh, we don't need designers anymore. We don't need graphic designers. We don't need this, that and the other. We don't need lawyers anymore. We can have an LLM PR lawyer. And you just very quickly realize that these jobs aren't dumb factory like producing, you know, pulling a lever type jobs. They're. They're about interaction.
Ed Zitron (Podcast Host)
And that's not an insult to factory labor. That is very hard work. But it's not like a repetitive action that is always the same thing. No, not at all.
Colton Vogie (Software Engineer)
Yeah, and like a factory worker, you know, is. Is doing a lot more than just pulling levers. Yeah, of course.
Ed Zitron (Podcast Host)
But it's not like just hitting a button. But I think people condense coding to this thing.
Colton Vogie (Software Engineer)
Yeah, it is. It's very similar to like robotics in factories too, where, you know, the promise is like, oh, you know, we'll just have a robot do this thing that a human does. But the human is doing a lot more than just, you know, pulling the lever. They're like observing the process. They're making sure that things are not getting broken or getting gummied up and stuff like that. So there's just, there's just limits to what machines can do when they're not actually intelligent. And that's just what it comes down to.
Ed Zitron (Podcast Host)
Do you buy that any of these companies, like Google, are writing 30% of their code with AI?
Colton Vogie (Software Engineer)
The thing about those numbers is that they are super easy. Maybe not to game, but to. First of all, I don't know anyone who's actually measuring this in a really effective way. Because the thing about your coding editor is that it's a lot of people. I don't like to use the AI autocompletion, but some people do. There's pieces where you'll start writing some boilerplate and it'll pop up what it thinks you mean to write. And you'll just hit tab, the tab key on your keyboard, and it'll just finish the line of code that you were writing.
Ed Zitron (Podcast Host)
And that would be written in AI.
Colton Vogie (Software Engineer)
Yeah, exactly. Very often what it produces is wrong, but it's like 75% right. So you're like, oh, I can just like use these keystrokes. I can save these keystrokes and I can just fix what it did wrong. Oh, God.
Ed Zitron (Podcast Host)
It's like saying autocorrect wrote parts of your book.
Colton Vogie (Software Engineer)
Yeah, it really is. And you know, there are times where like an AI does fully write the code for a feature. So people use, you know, things where they can prompt an LLM and it will with like, what they want the feature to be or what they want the bug fix to be. And it will go and will write all the code and it will make the sort of. We call it a merge request, but that's the request for new code that then gets reviewed. It will go all that way. But the thing is, you know, it might have written the code, but somebody took time away from, you know, their normal job, which is be writing code to write a really good prompt to make sure it didn't screw it up and then re interact with it. And so, you know, did it write the code? Yes. But did it do the task? Not really. Because it needed somebody else to do some support work to make it even possible for it to do it. And that person could have. That person needed to be technical and needed to be able to say like, oh, you need to look in this part of the code base. And so you end up just getting the same type of actual work from the actual specialist who knows how to code the same amount of work. They're just doing something slightly different.
Ed Zitron (Podcast Host)
Cole, it's been such a pleasure having you here. Where can people find you for sure.
Colton Vogie (Software Engineer)
My blog is colton.dev c-o l-o n.dev. i don't post that often because I work full time and I just. I just post when something really gets to me. But you know, I might, I might say some things here and there and.
Ed Zitron (Podcast Host)
You have your excellent blog that I brought you on for.
Colton Vogie (Software Engineer)
Yeah, yeah, that's my. It's my most recent one. You can feel free to check it out. I'm sure the link to that will be in the description. But yeah, it was great being here.
Ed Zitron (Podcast Host)
Thanks so much. Thank you for listening to Better Offline. The editor and composer of the Better Offline theme song is Mattasowski. You can check out more of his music and audio projects@matasausky.com M A T T O S O W S K-I.com youm can email me at ezeteroffline.com or visit betteroffline.com to find more podcast links and of course my newsletter. I also really recommend you go to chat. Where's your ed at? To visit at the Discord and go to R betteroffline to check out our Reddit. Thank you so much for listening Better Offline is a production of Cool Zone Media.
Colton Vogie (Software Engineer)
For more from Cool Zone Media, Visit our website coolzone media.com or check us out on the iHeartRadio app, Apple Podcasts or wherever you get your podcast.
Washable Sofas Advertiser
Tired of spills and stains on your sofa? WashablesOfAs.com has your back featuring the Annabe collection, the only designer sofa that's machine washable inside and out where designer quality meets budget friendly prices. That's right, sofas start at just $699. Enjoy a no risk experience with pet friendly stain resistant and changeable slipcovers made with performance fabrics. Experience cloud like comfort with high resilience foam that's hypoallergenic and never needs fluffing. The sturdy steel frame ensures longevity and the modular pieces can be rearranged anytime. Check out washablesofas.com and get up to 60% off your annabe sofa backed by a 30 day satisfaction guarantee. If you're not absolutely in love, send it back for a full refund. No return shipping or restocking fees. Every penny back Upgrade now@washablesofas.com Offers are subject to change and certain restrictions may apply.
Reasonable Doubt Hulu Advertiser
Check out the new season of Reasonable Doubt, now Streaming on Hulu, L.A. s most successful attorney, Jack Stewart, defends a young actor accused of murder. Follow Emma Yahtzee, Coronaldi, Morris Chestnut, Joseph Sakura and guest stars Kash Doll and Lori Harvey as they fight their personal battles in the spotlight of the year's most sensational trial in the pursuit of justice. Every move counts. Reasonable Doubt, Season 3, now streaming on Hulu and Hulu on Disney for bundle subscribers. Terms apply.
Announcer
Every business has an ambition. PayPal open is the platform designed to help you grow into yours with business loans so you can expand and access to hundreds of millions of PayPal custom worldwide. And your customers can pay all the ways they want with PayPal, Venmo pay later and all major cards so you can focus on scaling up when it's time to get growing. There's one platform for all business PayPal open grow today at paypalopen.com loans subject to approval in available locations. So have you heard the story about the prescription plan? With savings automatically built in, it's where a family of any size can feel confident the cost of their medication won't hold them back. Go to CMK Co Stories to learn how CVS Caremark helps members save just by being members. That's CMK Co Stories. This is an Iheart podcast.
Podcast: Better Offline
Host: Ed Zitron (Cool Zone Media & iHeartPodcasts)
Guest: Colton Voege (Software Engineer)
Air Date: September 19, 2025
In this episode, host Ed Zitron talks with software engineer and writer Colton Voege about the real-world impact of AI coding tools like large language models (LLMs) on software engineering productivity. The discussion centers around Voege’s essay, “No, AI Is Not Making Engineers 10x as Powerful,” addressing misconceptions about LLMs “replacing” engineers and exploring the actual tasks AI tools can (and can't) help with in day-to-day software development.
(03:49 – 05:44)
“If not the majority of engineers work in web application development, then probably the plurality do right now.”
— Colton Voege (04:18)
(06:00 – 07:55)
“AI is really good at dealing with things that are annoying...but generating code really isn’t the hard part of being a software engineer.”
— Colton Voege (06:00)
(07:55 – 13:19)
“It does coding, but it doesn’t do software engineering. And software engineering is kind of this broader practice of like everything that comes together around coding.”
— Colton Voege (21:35)
(15:48 – 22:42)
“There are just vast swaths of terrible JavaScript [online].”
— Ed Zitron (20:41)
“They are statistical inference models…very good at generating what they think should come next based on probabilities.”
— Colton Voege (19:56)
(22:47 – 26:08)
“You could destroy your entire company with a catastrophic security breach…”
— Colton Voege (28:10)
(34:08 – 37:53)
“A lot of people don’t know what work is like...they think that things like coding is just...write 10,000 lines of code and then walk home, but now I can write 20 billion lines of code because that’s all my job is.”
— Ed Zitron (36:05)
(37:53 – 41:44)
“LLMs are really good at writing the classic school level five-paragraph essay. But everybody who actually writes anything at all knows that the five-paragraph essays you wrote in high school are terrible and nobody wants to read something like that.”
— Colton Voege (41:44)
(41:49 – 44:16)
(43:11 – 45:39)
“Did it write the code? Yes. But did it do the task? Not really. Because it needed somebody else to do some support work to make it even possible for it to do it.”
— Colton Voege (45:16)
The conversation is frank, technical but accessible, and tinged with frustration at tech industry hype. Both Ed and Colton express that excitement about AI is detached from the nuanced, collaborative, and contextual realities of real software engineering. While LLMs are useful for certain repetitive tasks, they cannot replace thoughtful, context-aware engineering—and their risks (technical debt, security, consistency) are underappreciated outside the developer community.