ja

Person

john athayde

Where to Find Them

john athayde writes Maintainable .

Recently: “John Athayde: Maintaining the User Side of Software” on Maintainable (September 2026); “John Athayde: Maintaining the User Side of Software” on Maintainable (September 2026).

What They Said

“Like all the problems I've had with any of the agents or Anything I've written is where I asked it to make really difficult judgment calls.…And every time I've done that, it's failed horribly. It just does not make the right call.” — john athayde, Maintainable

Athayde was walking Robby Russell through a rebuild estimate on a neglected .NET codebase and how AI changes the math on that kind of work. He is broadly enthusiastic about coding agents — moments earlier he described handing test-writing to Claude — which is what gives the caveat its weight. The claim is narrow and testable: not that agents write bad code, but that they fail at complex judgment calls, every time he has tried.

Maintainable · 2026-09-08 Permalink → Listen →
Maintainable Around 1:04:41 into the episode
john athayde

Oh, gosh. Bring the well, Rich Kilmer and I had this joke where I was like, I bring the pretty. Sometimes that is what happens. But I think if you go in there and again, if I went in there and just said, well, that's a bad decision. I mean, one, I'm not making friends. Two, I'm going to be now fighting uphill on something, even if I'm 100% right. So if we, if I make them realize it's a bad decision through questioning and conversation, then usually everybody's happy and we have a much faster forward momentum. So sometimes it's like, oh, that's interesting. Why did you guys choose that? Okay, what happens when blank? These are kind of the framework questions I have established that I just, you know, I use all the time because it's discovery, right? I'm doing product discovery. And sometimes the decision, I'm like, I never would have thought that's why we ended up here. And actually now that I understand it, it is the right decision. And if you just told me this is what we're building, be like, well, that's silly. And, you know, I didn't understand why. So I know I've beaten a dead horse there, but it is kind of going back to that. If I, you know, just kind of digging in and saying, hey, what about this? Have you thought of that? It would be easier to accomplish the outcome that we've all agreed upon if we do this change. Is that something we could, we could consider? These are, these are all kind of constructs of how to approach those conversations in a collaborative versus combative way.

robby russell

When we were prepping for this conversation, you had mentioned that there was a, I think maybe a .NET project that was moving maybe towards more of a serverless architecture approach. And

john athayde

yeah, so they have, so this is one I started on the brand and started working on designs for the new app. And then they went out and they had a team doing maintenance on it and they got rid of that team, got a different team in and that team came in and they said, well, we want to imagine what it costs to rebuild this. And this is, so this is 18 months ago. This kind of happened. And they went through and made it, made a proposal, but there's, you know, there's minimal test coverage and there's a whole lot of these, these things we've been talking about today that are kind of the red flags. And it was a huge ticket price. And it was just like, that's, that's just not going to fly. I mean, it probably is what it costs, candidly, or would have cost, you know, before AI. Now, I don't know what it would cost with AI because we're all, again, still trying to figure this out. So yeah, maybe it's something that I could vibe code and, but then where are the holes? What's wrong? And without the test coverage, like that's the hardest thing for me because without that test coverage, I'm not going to feel confident in saying, yep, this is it. This is good. But in a different place where we have really good, say, even if it's just say somebody wrote all really good business requirements and they're in Gherkin or something like that, I at least know that when I drive that, it's either yes or no. And then if it's a no, why is it a no? I can dig into it and figure out where the gap is. And there's going to be gaps in any kind of test suite that has not been really meticulously maintained. But if you don't, if you have nothing and you're you have like, you have a test version of the app that's mostly for someone to drive UAT on, that's, that's not test coverage. And, you know, and especially nowadays, it's so much easier to fill out your test suite and just kind of like get it to a level that's decent. Claude, go write all these tests. And now I go through and I read all the tests and I'm like, does this make sense? Is that right? And then I can start asking the questions of like, okay, from a business requirements thing, because now I'm seeing it in written in a, you know, as X to do Y, blah, blah, blah, or whatever, you know, or when this case, blah, blah, blah, here's all the cases, you know, named out. And maybe it's, you know, not in a business sense, but I can start to translate that and maybe augment or comment on it. But that, that's, that's where I feel like if I had the test suite, I could very quickly say, yeah, we can stand this up in two months and have it at least we'll be at 80% in two months, no problem, as opposed to two years. So I think that's the change we're going to see a lot of. And I don't know how I think it's also going to still be the thing where you're going to have one engineer in a team that's like, I play with Claude at home and I just did this on the weekend. Here, I just rebuilt the app over the weekend, you know, and everyone's going to be like, what? Now, I think the concern is, is that where that's where now you start seeing business people that don't understand that the human in the loop is still really kind of essential. Like all the problems I've had with any of the agents or Anything I've written is where I asked it to make really difficult judgment calls. And not in the sense of like morality table, judgment calls, but like just complex judgment calls. And every time I've done that, it's failed horribly. It just does not make the right call. And so being able to say, okay, well, here's the thing. Here's things I can run through a rubric. Here's the things I really need to spend time thinking about. And then say, this is what we're going to do and why. And then see what the AI does. I think that's going to be the change, but somebody needs to understand that. And if you have executives that see, Samantha came in and she just rebuilt this app over the weekend and it's amazing. And she did, and it's great. And then they're like, well, we don't need the rest of the engineering team. Samantha, you're in charge. Okay. I'm sure she would probably be like, oh dear, what do we got? Like, no, no, no, that's not what I'm trying to do here. Like, you know, I'm just showing you that we can fix a lot of these problems, right? And you don't have management that understands what the tool is really capable of. I think you end up, we're going to see a lot of these like, we got rid of our engineering team. We had to hire our engineering team back. So, I mean, who knows?

robby russell

Yeah, I concur with that. And it's been interesting because I've, I mean, candidly, I've had a couple of conversations with business owners who were contemplating and trying to figure out. They're like, well, it's almost that same exact. Like, we had this person who was able to show they have this whole all these agents and this is their workflow that they've set up. And my engineering team is reluctant to adopt this stuff. And I think I need to trim my team now so that we can start to adopt these things because this seems like it's the velocity is higher and perceived perceived velocity. And we're not having conversations. Well, we can't do that. We can't do that because of this as all the where AI or Claude is just going to be happily like, yeah, sure. It's never going to tell you, no, no, no, I've got too many things on my plate right now. Like, what do you, what's the trade-off?

john athayde

Well, sometimes it does. Sometimes it's like, hey, you should go to bed. I'm like, the what? It's eight in the app. It's like 8 p.m. I'm not going to bed yet, but I've worked on it. I'm going to have to be in your terminal

robby russell

or I'll spin up another instance on another computer. We can just plow through. No, no, like, what do you want me to take off my to-do list, Robbie? It's not telling me that. Like, you already gave me 10 things to do and I'm not done with them yet. Like, you have to make some trade-offs. It doesn't do that. And at least not a lot. Maybe it'll get there or you run out of your token spend or what have you. Well,

Speaker names from our own diarization · position estimated from where the line sits in the episode

Collections They Appear In