The blog home of Jeff Putz

Agentic AI coding's missed opportunity

posted by Jeff | Wednesday, April 22, 2026, 10:32 AM | comments: 0

I'm going to indulge myself a little with stories of grandeur. It'll sound a little braggy, so I apologize in advance. There is a point though, I promise.

The team in my last gig was completely awesome. Certainly they would have to be if I were to stay with them for four years. Not working with them is the hardest part of the RIF. What made it a great team is that we stayed ahead of everything put in front of us. Instrumentation was there from the start, performance was always meeting SLA's, and maybe most importantly, our backlog was fairly shallow most of the time. It's not that we didn't have tech debt, because you're always making certain compromises, but we didn't have a lot of it. We made mistakes early, iterated and delivered the better thing as fast as possible. And we did it without crunches or code freezes or exhausting everyone. My product partner was totally aligned, and while we debated things freely, there was never conflict or tension.

And even as we were sometimes sent on wild goose chases in the last six months, our core projects never got out of control. The team was using AI agents quite a bit by then. There were some PR's that churned a bit during this time, as the team was still feeling out the appropriate level of trust in the robots, and understanding what they were putting out, but I equate this to onboarding a new, junior engineer. That backlog was still not super deep.

As I've said many times, coding as a part of the entire SDLC is tiny relative to everything else. Deciding the "what" and "when" is a lot more work than the "how." Engineers should spend way more time understanding context, making design decisions, documenting, testing, reviewing each other's code and collaborating with other teams. Agentic coding frees up time to allow engineers to do all of that stuff, which makes them better equipped to direct the AI. Time spent coding, or making the machine do it, is even further reduced.

But as I said, that time savings is a sliver of the bigger cost. Include all of the stakeholders, and the what/why dwarfs the how. AI does not create a shortcut for this. It does create an opportunity.

My team was so effective because the what/why was so dialed in. My product manager and team worked so hard to understand the bare minimum thing to build, did it, and iterated. Freeing up the build time meant that we could focus more on the long-tail work in the backlog. The last system we built never went down in two years, and always met SLA's in terms of response times. It got even easier to stay on top of that when coding took less time.

This brings me to the bigger point. Some folks are so enamored with the shiny thing that they disregard outcomes. Yes, you can build faster, but what are the outcomes? If you shipped broken things in constant need of fire drills, that won't get better with AI. LLM's only mirror what they've seen, and most software isn't very good. Great, you have more PR's or more lines of code, but was that ever a useful measurement for humans? (Of course not!) The biggest opportunity with AI is that we have more time to get it right, address tech debt and keep that backlog tight. Use your found time to make your product robust and resistant to constant emergencies.


The Six Flags disaster

posted by Jeff | Tuesday, April 21, 2026, 7:16 PM | comments: 0

We're reasonably self-aware over on CoasterBuzz, in that while we all armchair CEO the amusement business, we're not pros. But we've also gotten a lot of things right. Leading up to Six Flags' bankruptcy in 2009, we could all see bad ideas in action. Give away the gate, try to make it up in volume and spending. Of course this never panned out.

Then whatever the company was most recently, it had mostly been doing the same thing. The former CEO admitted that they needed to reverse that trend, but the damage was so done. So what did they do? Approached Cedar Fair about a merger. There was zero upside for Cedar Fair to do this, which was already slightly leaning into the heavy discounting and pass reliance. Their growth was not outpacing inflation. But for whatever reason, they thought the merger was a great idea, and found a loophole where they didn't require a shareholder vote.

You know the rest of the story. Total meltdown, lost a ton of money. They recently sold some parks. Massive layoffs. The new leadership hasn't exactly been inspiring, and there's no concrete plan about digging their way out of this mess. But those goofy enthusiasts have, again and again, shown better judgment.

First, why would you let your gate integrity slip? Why race yourself to the bottom? These are regional businesses that have no direct competition. Even if you did attract more folks, at those lower rates, you're attracting people who are not likely to spend more in the park. They're probably not the best behaved, either, when you're essentially creating a low-cost babysitting service.

Second, amusement parks are a hospitality business. Hospitality is hard, and in this case you have to account for guest service, culinary quality, efficient operation to manage queues, and often there's a hotel business. It is, by definition, a people business. Ever wonder why the cruise industry has guest to crew ratios of 3 to 1, or even close to 2 to 1? Because pulling off a perfect experience doesn't happen without people. Take a break from cap ex and staff the company for hospitality.

Now there's a great brain drain. They've laid off hundreds of years of experience, and when it walked out the door, domain knowledge went with it. Still more left on their own accord. How do you dig your way out when the people who can do it are gone?

Cedar Fair had a solid, profitable business. They weren't killing it with gigantic margins, or exhibiting significant growth (because how can you with a finite audience?), but it was a durable business. The hubris to take on Six Flags was extraordinary, and they're forced to sell the company for parts. Meanwhile, ex-CEO Richard Zimmerman left with over $2 million in cash, another million in equity, and that's after more than $9 million in total comp the year before. If only we could all fail that well.


The state of public perception of autism

posted by Jeff | Tuesday, April 21, 2026, 4:17 PM | comments: 0

One of the standout story lines on The Pitt is that of Dr. Melissa King. She and her sister both have autism, and while the sister requires extra care, she's, well, a doctor. Early in the series it's probably not even obvious that King is a lot like her sister, but through a series of events and patient encounters, it's clear. What I love about this is how it demonstrates the, er, spectrum or range of capability of folks. I might even say that it shows how labeling people as "on the spectrum" is largely meaningless. I suspect that there are aspects of every person that could put them there, even in the narrowest of ways.

Why does this matter? Aside from every annoying hot-take on the Internet (now adding mine!), it's the stupid shit that RFK says, or the insane false statistics about employment rates, relationships and such. Contrary to Kennedy's nonsense, I'm married (twice!), have worked lucrative jobs and I'd like to think that I contribute to society in various ways. With that in mind, I also understand that there are people, especially kids, who might not even be verbal.

Now, what I'm about to say is with the experience and journey of not being diagnosed until I was 40-something, watching my kid grow up with so many similar personality traits and my observations about advocacy groups. What I see is that advocates see accommodation as the same thing as being "seen." I'm not a fan of this. I totally appreciate the desire to see people for who they are, but it doesn't mean that we don't help by making learning unnecessary. Let me explain.

I understand now that I've developed a great many coping skills to work in a neurotypical world. No one decided this, it was just necessary for my survival. I wasn't even diagnosed. These skills, I think, have served me well, even though I've had a tough time with relationships of all kinds, personal and professional, and I still have blind spots. Life has never been easy, but if endless shortcuts were provided for me, I suspect life would be even harder.

What I like even less is people who talk about "masking." This is the suggestion that people are inauthentic in order to fit in. For better or worse, there are certain social contracts we value, regardless of neurodiversity. I'm not talking about difficult eye contact or proximity discomfort, I'm talking about you don't kick people, you express kindness and just generally try not to be an asshole. (Apparently you can be elected countering all of these.) Autism does not inherently make you an asshole, so what exactly are we talking about with regard to masking? If you're perceived as weird, you know, let your freak flag fly. ASD or not, it's not up to others to put you in a box.

I advocate being empathetic to people who find their flavor of autism causing difficulty. It's not that you have to accommodate them, just be empathetic. Empathy by definition is being seen. Yes, sometimes in a loud room or in a crowd, I need to GTFO. I need short breaks from parties. The key is being honest about what I'm experiencing, and telling others. They're generally empathetic. I don't have to mask anything.

There is some icky stuff out there. At home we've been fighting the accommodation versus accountability problem quite a bit, because in retrospect there were so many shortcuts provided. Surely there's a better way to find a balance. I also think they need to get back to some delineation of symptoms and capability, because so much is piled into "ASD" that it's hard to have good conversations about how best to help people, or even decide how much help they need. We also need to ask neurotypical people to stop prescribing solutions that don't make sense.

Ugh, I'm just ranting. It's not easy to organize my thoughts at the moment. So many things going on. I think this is just me letting Internet randos get to me.


My dirty little secret about AI coding

posted by Jeff | Tuesday, April 14, 2026, 4:58 PM | comments: 0

I have to make a confession. The biggest reason that I love using AI agents to write code is that I just want to get to the outcomes quickly. Sure, I have to check the work of the robots, but it's faster than me writing it, even with robust auto-complete. I know a lot of engineers feel pride and excitement about pecking out solutions to stuff, but if I'm being honest with myself, I don't think I ever enjoyed it.

That said, if AI hit at the start of my career, I wouldn't be where I am.

I fear that there's a structural problem with the use of agentic coding. I'm not suggesting we don't use it, far from it. But I am saying that we could have a problem with the up and coming folks if they're uninterested in what's actually happening with the code. That's how I was when typing was the only way to write code.

I think I was a little slow to really understand object-oriented programming (or scripting for that matter), because my entire incentive for learning in the first place was to get to the outcomes I wanted. I started as a media guy who just wanted to put stuff on the Internets, so programming was a means to an end. I just happened to turn it into a career. It took years before I felt like I was "good" at it, and even when I felt competent, my output was so much lower than my peers because of my then-undiagnosed ADHD. If I had AI back then, I doubt I would have gone very deep on what the machines wrote, as long as it worked. By extension, I would have never gained an appreciation and love for system design, the part that I enjoy the most. In other words, I'd be a vibe coder that didn't know how my stuff worked.

That puts us in a weird place. If we're not mentoring and coaching our junior devs, who will be the senior devs of tomorrow? LLM's are just sophisticated word guessers, and they get worse if they're training on their own output. (Is there a term for this? The thing where LLM's get racist and generally worse without bona fide "good" input?) The trust and verify approach is going to be with us for a long time, and when something breaks, good luck blaming the AI. Going back to my own focus on outcomes, nobody cares... customers, users, stakeholders... if AI wrote the code, they just want a working system.


Replacing the pinball rubber

posted by Jeff | Thursday, April 9, 2026, 8:16 PM | comments: 0

I spent a little time replacing the easy-to-reach pinball rubber bits this afternoon. There are others to swap out, but they require more disassembly of plastic layers to get to, so I'll wait a bit. Most urgent were the slings, which were cracked and shedding, and the post sleeves between the various ramps. They were in really bad shape. I decided it was time because I could see them disintegrating, which I'm sure contributes to the quickly reoccurring dirt. We've already had 2,644 games played, so well on pace for 5k before the end of the year. I bought silicone replacements, which last longer, though purists apparently don't like those. Meh, they seem about the same to me.

Once again, I point out that pinball maintenance is very therapeutic, if fixing stuff relaxes you. It's such a great combination of electronic and mechanical stuff. I imagine that they're a ton of work in a commercial environment, but regular cleaning and attention keep them running tip-top. I'm sure the first big replacement will be the flipper linkages, but for now they're still pretty firm.

Also, today I exceeded 1 billion points for the first time.


The Disney Destiny

posted by Jeff | Wednesday, April 8, 2026, 5:23 PM | comments: 0

With all of the drama right after we returned from our latest cruise, I completely neglected to write down a few thoughts about the new Disney Destiny. This is the third of the Triton or Wish-class ships. The general layout and function of the spaces is about the same, but the decor and theme is very different on each one. We did the Treasure in August, and it remains our favorite of the three. It's just the level of detail in the mid-east themes on that one that level-up the decor. I like the various carpet designs and what not, too. The Wish is nice too, it's just not as good as the other two.

The grand hall on Destiny leans into the design found in the Black Panther movies. Literally every detail refences something from that movie, and if you take the tour, they'll point those details out. But it's super lame that none of it is made out of vibranium. Just kidding, that's not real. The overall theme is attributed to heroes and villains. This makes a lot of the art extra unique (there are thousands of pieces on every ship), and it serves as a backdrop for many of the venues. Saga, the two story "Luna" venue, continues with the Wakanda-inspired texture, and I really liked that area. The open "family" bar on this one is called the Sanctum, referencing the Dr. Strange movies. The dinner theater venue is Lion King themed, and the music borrows heavily from the stage show's African themes instead of the movie pop music.

I don't see a lot of point in getting into all of the details, because they don't differ enough from the other ships. We did see no less than four previously known bartenders on this one, and it's always fun to catch up with them. A lot of things had new-ship smell, so it's kind of neat to be among the first few folks occupying a room, for example. There's a thing where they produce these wooden mock-ups of each ship, and we collect those. We now have the entire fleet, except for the Adventure, which I'm not sure counts. It's a one off thing, a ship designed for a defunct company, that they Disney-fied and sent to Singapore. It doesn't go anywhere, it is the attraction. So it's kind of like a resort and park at sea. I doubt we'll ever see that one. If I'm going to go to that part of the world, I'm not going to spend days at sea not seeing stuff.

It's worth noting that this one departed from Ft. Lauderdale, which is a new port for us. We drove about two-thirds of the way down the night before and stayed in a hotel. It was mercifully a non-event as far as travel and teen behavior goes. The terminal itself is pretty awful. It gets so loud in there, and this was also the highest capacity that ship has seen, so it was crowded (spring break in Florida). I was just pissy and angry when we disembarked, I guess not for any specific reason, other than maybe knowing we had to drive three hours home.

I wish we had better ports. Cozumel is a dump, and I much prefer the newer Disney island over Castaway. Not that it mattered, because the weather was pretty bad, and we didn't even get off. That's like three straight cruises of suboptimal weather for the beach day.

Next up is Wish again, and we're going VIP, because we deserve it and it's our 19th first-date-aversary. Just learned that next summer they're sending Wish back to Europe for drydock treatment, and having the Dream service Canaveral for the Bahamian itineraries. I'm a little nostalgic about that, since it was our first cruise ship, the one we had in Europe and 16 itineraries overall.


Emotional battery vs. bandwidth

posted by Jeff | Wednesday, April 8, 2026, 4:31 PM | comments: 0

You know how people talk about "recharging your emotional batteries," usually in reference to a vacation? I'm convinced that it's not a thing. I think the constraint is bandwidth, not storage. My therapist might even agree with me.

Humans have to endure a lot of things, and so many of them are psychological. I don't think that exposure "drains" something, per se, but I do believe that there's a limit to how much you can take at any given time. When you reach that limit, you kind of turn-off, melt-down or otherwise feel like you're imploding. I think the threshold is definitely different for everyone. It seems pretty low for my kid, but then everything feels like a crisis when you're a teenager. I used to think that mine was pretty high, but the volume of challenging things in the last month or so has been brutal. I've just wanted to retreat into a cave and not come out. The recent vacation didn't help.

So if you can identify the bandwidth problem, it follows that you should be able to come up with some kind of coping skills. Backing off of social media (except for TogetherLoop, of course) helps. Limiting your news intake, too. It's the things that you can't get away from, like parenting, or seeing your spouse hospitalized, that can get to you. They certainly have caused me to struggle.


TogetherLoop architecture uses all the things

posted by Jeff | Monday, April 6, 2026, 5:01 PM | comments: 0

Since I've completely over-committed on my various online projects, I have a lot of spare capacity. CoasterBuzz, PointBuzz and POP Forums all run on cloud resources that are intended to not be down, with redundancy and overhead to spare. TogetherLoop uses all of it. Here's a brief rundown of the various bits.

The one new thing, and I'm not married to it, is using Azure Front Door for the app itself. The client is a Blazor WASM app that weighs in at around 13 MB on first load. Cached, it's not even 100 kB, because there's nothing but the payload for the home page. And if that sounds like a lot, you should know that The New York Times home page has about 40 MB, and even cached it pulls 31 MB. Completely ridiculous. And my load buries Instagram's web interface. In any case, Front Door obviously georeplicates the static files around the world, since it is a CDN, but more importantly, it offers a lot of control over headers and such, so I can make sure that the app is never stale. This is costing an extra $20-something a month, but it's stupid fast.

The backend API is actually split between a regular Azure app service (two nodes) and a series of Azure Functions. The functions do a lot of async work, like processing photos and video, recurring billing (eventually), notification processing, etc. But they're also the key to scale for uploads, because the app service would certainly run out of memory quickly, even using streams. The app service is handling all of the JSON payloads you'd expect from an API, which also has no wake-up lag in responding, as the function do sometimes.

The media is all served directly out of a storage account. Technically these have no permission controls, but the URL's are all not guessable. So for them to be seen by someone who shouldn't, that's on your crappy friends. I can change this at some point easily enough, if I need a permissions layer to proxy, but that's a future improvement, maybe. I also have a policy where the media is downgraded from hot to cool after a few months, to save on costs.

I've got Redis serving as a message bus, to feed processed notifications back to the API nodes, which in turn uses web sockets (SignalR) to let the client know that something is new. The direct messaging uses web sockets as well, and is kind of a port from POP Forums, though that app uses mostly custom Typescript web components instead of Blazor.

Friend searching is through Elasticsearch. Searching for folks through SQL isn't great, and we don't need table scans slowing things down. In this case, it's using some fuzzy matching on name, or exact matches on email.

The primary data store is Azure SQL, because everything else using it so ridiculously tuned that average usage rarely gets over 3%. Sure, it's possible to outgrow that, but I need tens of thousands, maybe hundreds of thousands, of users to get there. Even then, there are a lot of pre-compute tricks I can use to help with performance.

Everything except Front Door is stuff that was already running for the other sites. Functions are technically their own cost, but I'm not stressing about those extra cents per month. Elastic is running in Azure but run by Elastic itself. The various forum indexes all live there, and it too is underutilized.

In the event that I can grow this thing into something, it's a solid foundation. Certainly a lot of premature optimization. I don't hate sub-50ms API hits from where I live.


Paradise is the best show I've seen in a long time

posted by Jeff | Friday, April 3, 2026, 11:25 PM | comments: 0

Have you seen Paradise on Hulu? If you haven't, do your best to avoid learning anything about it, and watch it cold. I binged the entire first season in a day, because I couldn't look away. Now that the second season has wrapped, I'm just in awe. It's hard to pin it in any specific genre, and as long as you don't know too much, it just keeps surprising you for being something that you didn't expect. Also, Sterling K. Brown is a legit great actor. I enjoyed his work in This Is Us, and it wasn't a fluke. He's good.

I don't think a show like this could have made it in traditional, linear network TV. I'm grateful for that. Most of the best stuff right now wouldn't have made it on network, which is weird because for so long that was the prestige spot. Then again, HBO set a new standard, and that standard translated well to streaming, specifically HBO Max, Hulu and Netflix (with honorable mention to Apple TV+). Hard to see how all of the consolidation shakes out, but it's a great time for good TV.


In the role of appliance repair man

posted by Jeff | Thursday, April 2, 2026, 4:32 PM | comments: 0

For a few weeks, I've been putting off dealing with a problem in my fridge. It's icing up in one corner behind the drawers. But yesterday I really needed a project to break up the day and give my head a break.

From what I could tell, the ice in one area meant that the system itself was probably fine, in terms of thermistors, fans, compressors and such. I found a diagnostic card online, and ran through the various functions by pushing weird key combinations on the freezer door. Everything returned normal. I could hear the fan whir up when it tested it, too. The Internets suggested that localized ice and good diagnostics likely mean long-term humidity exposure and possibly a door seal leak.

I busted out Diana's hair dryer and melted all of the ice after taking off a cover inside, and shop vac'd the water out. Everything was cooling as desired when I was done, and I took what seemed like a win. I guess I won't know until time passes.

It seems like appliance repair is so expensive that replacement is a better option, which I hate because things shouldn't be so disposable. Most appliances are pretty simple machines, and anyone can get parts on the Internet. I've replaced the ignitor on two gas ovens, the latter of which was only a year old. I've replaced the control board and gear box gasket on our KitchenAid stand mixer (leaking lube killed the board). Our LG clothes washer sprung a leak a few years ago, and I replaced the water valve assembly inexpensively. I wonder about the washer and dryer, which are now 15-years-old. Feel like I'm beating the odds.

I really value simplicity and serviceability in everything. Unfortunately, it doesn't seem like many things are made that way anymore. Maybe they never have been during my lifetime.


New job, no job

posted by Jeff | Wednesday, April 1, 2026, 11:30 AM | comments: 0

Just before we embarked on our Destiny cruise, Diana got an offer for a new job. It's very exciting. She's going to work for the new Blue Man Group location here in town, in another front-of-house role. That means she's leaving DPC after 11 years, an incredible run, but there were a lot of good reasons for the change. It's not the worst thing either when her husband and son are also big BMG fans. The company is now owned by Cirque du Soleil, which seems like a pretty good employer, based of course in Canada.

I, however, am still looking. Admittedly, I wasn't trying very hard for that first month, but that means that I have been looking actively for the nearly two months since. It's rough out there. Granted, the level that I'm at suffers from a certain level of scarcity anyway. It's strangely exhausting to feel a sense of urgency all of the time, when you can only do so much in a day to try and land something new. We have a ton of financial runway, but honestly it's not the money that concerns me. I just want to get back to leading a team of makers. That's satisfying, and gets me up in the morning.

For now I'm spending a few hours a day on TogetherLoop, which I just opened to signups without invitations. Eventually I'll flip it to a subscription model. I have to get to writing that code now though, in case it accidentally gets popular. I don't see a reason why it would, but you never know.


A minor healthcare win

posted by Jeff | Sunday, March 29, 2026, 2:52 PM | comments: 0

I've been fighting a cough and sinus pressure for like a week. I haven't taken an antibiotic for anything in probably ten years, but I've been generally miserable. Add in the messed up sleep during Diana's time in the hospital, and my body is generally unhappy.

But for as shitty as United Healthcare is, they do have access to remote healthcare, with no co-pays. So I fired up the old browser and within five minutes was talking to a nurse practitioner. She prescribed the usual mix of antibiotics and cough stuff, and a bit later I was going to Publix to pick up the goodies. It's the sort of thing that does not require seeing a doctor in person, who probably bills insurance a hundred bucks and makes you wait in a cold office.

This is a rare win in an incredibly shitty system. I really thought that we were headed for some kind of meaningful change during the pandemic, when we saw the system nearly collapse. It's not that the quality of care is necessarily bad (Diana's caregivers were amazing), it's the the financials of all of it are totally fucked up. We pay twice as much per capita as the second most expensive country, with far worse outcomes. And nothing changes because the lobbyists have convinced everyone that the system is fine, and any change to it will be worse, because freedom or whatever. It's insane.


Everything is about sleep

posted by Jeff | Friday, March 27, 2026, 3:04 PM | comments: 0

When I took Diana into the ER late Monday, or early Tuesday, I knew I was going to be in a rough place as far as sleep goes. I stayed with her as long as I could, but once she got on the morphine I split to get a few hours of sleep before I had to get Simon to school. We were having a driver crisis (story for another day), and I had to talk with his principal about it. So I ended up getting about two hours, then after the drop-off, I knocked out another hour. Finally she was being admitted for surgery that afternoon. I left her for the night around 10:30, hit my own bed at 11:30.

I don't recall sleep deprivation since Simon was a baby. And even then, usually you could offset it at some point, when he was sleeping. Even the jet lag to Europe seemed easier. But this was something else, with three hours of sleep over 40. Toward the end of that run, I was struggling with common sense, I don't remember driving and I was incapable of making decisions. I'm sure it didn't help that they were cutting open my wife.

Sleep seems more important than ever. You don't need less sleep as you age, but it is apparently harder to get quality, continuous hours of it. For me, the change happened during the pandemic. There was so much anxiety and uncertainty at the time, and it messed with me. It's a little better now because of the THC, but I'm trying to use it less since we really don't know what side-effects or long-term issues it might have.

My perfect day is 7.5 hours of interrupted sleep, and a half-hour power nap. Napping is nearly impossible with work, even when you're remote, but I feel so refreshed by it. I feel at my sharpest, more creative and positive. It's crazy how important sleep is.


There's a little online circle forming

posted by Jeff | Wednesday, March 25, 2026, 5:11 PM | comments: 0

One of the ideal things about taking TogetherLoop with me at sea was that it revealed some issues in crappy bandwidth situations. That also led to some necessary but nice changes. I had to chunk video uploads, which in turn meant that I could show a progress bar, which is neat.

But the other thing that's neat is that a small number of my friends, some of whom know each other, are using it. It's not a huge frequency, it's about what I would expect for a social network not built to drive engagement. That's super satisfying. It demonstrates, if anecdotally, that there's a need for this. I'm not sure if others would be willing to pay for it, but I guess I'll find out when I get to the point of eventually asking people for money. I'll still keep the OG's in for free for life.

This is for me, first. I find it useful as a place to post stuff, not for an audience, but for me and a few people that I think might be interested. If it can do that, I'm satisfied. I already have 60+ photos up there, which seeds my future "on this day" feature. So now I have to start asking myself what the next goals and milestones are.

The next milestone is signup that isn't invite based. Right now I have to approve everyone. I need to set up a seamless onboarding process that also validates a real email.

After that, accept money, start enforcing the two-tier membership. I want it to be free for read-only folks. They can like stuff, but not post anything. That's where you get grandparents or whatever in to look at your baby and/or cat photos. To post stuff, I think I wanna do $3/month, in 6-month increments. I consider this successful if it can break even. If it can turn into a lifestyle business, meaning a real job that pays the bills (see my "offboarding" post), even better.

I don't have any ambitions beyond that. Not yet, at least. I think this has been so much fun to work on because it's for the fun of making it, and making it for me and friends. Right now, I need something to cling to that feeds the soul. It's been a rough few months.


Emergency appendectomies are fun 👎🏻

posted by Jeff | Tuesday, March 24, 2026, 5:40 PM | comments: 0

The Internet tells me that there is a one in four chance that women will have an appendectomy in their lifetime. It's about twice the odds of a man, because women have a lot of adjacent procedures where they're already in there removing stuff. The more you know. Well, apparently it was Diana's turn.

Diana was having abdominal pain yesterday, and actually the night before, but she just chalked it up to gas or something. But it kept getting worse, until around 12:30 a.m. this morning, when we decided it was time to go to the ER. I couldn't imagine that it was anything other than a bowel obstruction or appendix if it wasn't going away, and it turned out to be the latter. They had her on morphine, and she had a CT around 2. There was some problem in radiology (technical or staffing, I don't know), and we waited and waited to hear about the results. Since she was out from the morphine, I left at 3:40, knowing that I had to get Simon up in three hours for school. I slept poorly for about two hours and did that. I had to drive him because of a driver issue the day before, and just before we left, she called to let me know that she needed an appendectomy. That was five hours after the CT. Simon didn't even know she was in the ER, so I left it that way and took him to school.

Diana was still loopy from drugs, so she suggested I squeeze out another hour of sleep, which went poorly because of the kittens playing grab-ass on the bed. By this time, she was transferred to a real room, and on the schedule for 3:30 for surgery. I got back to the hospital finally at 11:30. The plan was to fetch Simon out of school an hour early, so she could see us in pre-op. I was firm in describing to Simon that this is the most common abdominal surgery there is, low risk, and relatively routine (if there is such a thing with surgery, though I referred to it as a "procedure"). He panicked a little, and did not care for all of the wires and tubes, but he did OK.

Sitting around waiting for her felt like a horrible idea, so I took Simon to McDonald's for an early dinner at 4. Just what my now-activated IBS needed. Gross. We got back to her room around 4:30, when the surgeon called and said everything went smoothly. Now she's just sleepy and recovering. It's been a rough 24 hours for Diana, and I'm just glad that she's OK.

I finally have reason to be happy that I don't have a job, because today was rough, and I'm running on fumes. Because American healthcare sucks, there'll be a nice big deductible for this, after the ER co-pay, and because she's changing jobs, our deductible clock starts over again next month. On the other hand, we have a good reminder about how special medical workers are, from the security guard to the nurses to the doctors. Their kindness is unmatched. We all experienced that during Covid, and I feel like we've already forgotten. 


Think of it as a trial "offboarding"

posted by Jeff | Monday, March 23, 2026, 3:10 PM | comments: 0

I have pretty much the best therapist ever. I haven't stuck with one this long ever, and it's because she legitimately helps. The last few months have been challenging for a bunch of reasons, not the least of which is that I got RIF'd in January. I have a lot of runway, but it still makes me uneasy for reasons that are not necessarily logical. But she gave me a different way to look at it.

While I was thinking of the lull in work as a sabbatical, that's hard to do when you can't really nail down when the end is. In many ways, it's not up to me. What I could do is look at this more as a trial "offboarding" run. What is offboarding? It's my new word for "retirement." Something that has been clear to me for a long time is that retirement in the classic sense isn't really what I want. If your idea of retirement is sipping martinis and getting up whenever, I think that sounds terrible. Humans are wired to need purpose and intent. Offboarding is the idea that you leave your lucrative 9-5 to pursue specific things that feed your purpose and desires. That's what I want. Also, I don't want to wait until I'm in my 60's for it. No thanks.

So if I were to look at this break in work as a trial run for offboarding, what would it look like? Well, we're not empty nesters, and not ready to downsize, so I have to take those parts out. For the real thing, those would be steps to take. But what would I do with my time? I've explored this to a certain degree, by trying (failing) to make a documentary, learning lighting design, and being an amateur pinball tech. With a day job, you can't commit to these in the same way. For whatever reason, the thing I landed on without choosing it is building TogetherLoop. It mostly didn't exist two months ago. I don't know if it's a business or hobby or what. What I know at the moment is that working on it is satisfying in a way that few things have been, in a very long time. That's what I want offboarding to look like.

Is that it? No, because I think part of what I want out of that experience is the joy of working with others. That's one of the things I certainly enjoyed most about my job. Making stuff by yourself is gratifying, but it's even better when it involves others. Maybe that's what I'll need at some point, working with an investor-maker type. I don't know. Maybe what I need is a marketer.

The point is that I understand more clearly how what I used to call retirement looks. Even if that isn't near-term inevitable, it's good to understand it now.


People don't even understand what AI is

posted by Jeff | Sunday, March 22, 2026, 8:48 PM | comments: 0

I'm not sure why I subject myself to the LinkedIn algorithm, because it's not any better than what Facebook does. As a software engineering manager looking for a job, it recommends a lot of nonsense by self-labeled AI experts. The people who engage with them infrequently bother to look at their profiles to gauge the relative credibility of the person. So I see endless lines of soothsayers predicting the future about something that I don't think they understand.

Large language models, which is what people really refer to when they refer to AI, make determinations about the way languages work by taking in mountains of data, and refine that "knowledge" with human feedback. I can't emphasize enough that they don't invent anything, and what you may perceive to be judgement is just an algorithm basing its output on what it has seen before, right or wrong.

So with this in mind, consider agentic software coding. The models are based on code that it has seen before, which probably involves a lot of open sources software, of which most of it is pretty bad. (Not a knock on open source, but a general observation of code in general.) Like the "experts," the LLM can't make a determination about who writes great code and who doesn't. It similarly cannot judge the credibility of people giving it feedback. It gets back to the oldest cliche in software: Garbage in, garbage out. But while a person can judge credibility and experience, an LLM cannot. That's why chatbots can be made notoriously racist in record time.

There is no question that agentic coding is amazing, and I would not go back to life without it. But I won't let my enthusiasm for it cloud my judgment. For every instance of amazement that I experience, comes something that's just incredibly stupid. Today it was the generation of 50 lines of Javascript for what could have been one line of CSS. It's not a person, it's a tool, so calling it stupid is probably the same anthropomorphic mistake that the "experts" make.

Now apply that to all of the other things that people selling stuff say it can do. I can tell you that managing people is really hard sometimes. AI can't mediate colleague conflict, it can't lookout for harassment, and it certainly can't mentor people if it doesn't even know what's right.

Let's focus on what we know. In software engineering, AI is a great tool that takes care of the mundane parts of coding, which is to say the coding. But it needs supervision, it needs context. The stakeholders that must provide that have not changed.


What we can learn from the death of the metaverse

posted by Jeff | Friday, March 20, 2026, 6:56 PM | comments: 0

The New York Times had a solid retrospective on Zuckerberg's insistence that the metaverse was the future. His company has mostly put that effort on life support. I mean, did anyone not see that coming? No one really wanted that. No one really trusted a company that knew it was turning teens into addicts. And a company that required people to work in the office obviously wasn't that sold on virtual work itself.

What's interesting to me is how so many business leaders bought into it, even though they couldn't really define what it was. Media companies in particular seemed particularly nervous about it (I'm looking at you, Disney!). But I'm not here to celebrate more job losses, or offer "I told you so." I'm more interested in looking at the hype cycle, and what the next one looks like.

The suggestion that the metaverse was something we needed for meeting virtually of course seems silly when we already learned to work via Zoom by then. This time the hype is about AI, and it's different. It's different because AI, in certain contexts, is useful. It's the context that is often misunderstood. We've already seen an unearned confidence in AI tools that have caused leaders to cut back on their workforces. They don't have much to show for it yet, and what little academic study that has been produced suggests it's not going to work out the way they expected.

Think about it. LLM's are just really impressive algorithms that can identify patterns. And while they're programmed to exhibit what looks like confidence, it's just a semantic choice. LLM's do not innovate, they are not creative, and above all, they can not read your mind. The optimists seem to believe that LLM's are capable of all of the above.

What they are outstanding at is generating code under supervision from experienced engineers, quickly, reducing the length of the iteration cycle. That allows stakeholders of all kinds to get to the product they want faster. The opportunity is not to do more with less, it's to do more with more. This is the adjustment that needs to be made in this hype cycle. AI is, fortunately, not the metaverse.


A different post-vacation bummer

posted by Jeff | Friday, March 20, 2026, 5:07 PM | comments: 0

You know that feeling where you get back from vacation and it's kind of a bummer because you have to go to work? I'm having that feeling now, only because I'm not going back to work.

The unusual feeling I suppose is because I spent four years doing stuff with the same people, and now I don't. I gotta admit, that's new territory for me. But it does reinforce what I've known for a long time, that in the long run you probably won't remember the work, but you will absolutely remember the people.

I imagine that's why I was slow to start applying to new jobs. I wasn't in a hurry to go back to work with different people. Certainly I will find situations like this again, and will meet more excellent people. But I seem to be mourning the loss a bit more than I previously have from other departures, willing or not.


Discouraged and excited, at the same time

posted by Jeff | Thursday, March 12, 2026, 6:40 PM | comments: 0

These are weird times. When the Angi RIF went down at the start of the year, I kind of felt a sense of relief. I loved the job, felt good about doing it a few more years, but suddenly I didn't have to worry about any of the things. It's the kind of break you only get between jobs. So for the first month, I pursued just the leads I had through my network. One showed promise, one was clearly not for me, and four others ghosted me.

One month in, I started applying to all of the things, and trying to find humans behind the things, with limited success. Things have changed dramatically in four years, since I last looked. I'm pretty convinced that humans are less involved than ever, which seems like a pretty horrible way to go about hiring. I use the robots for a lot of different things, and it's stunning how much they get wrong. I wouldn't leave hiring to them. Regardless, it's discouraging.

At the same time, I get excited about the potential of everything. It could be a self-defense mechanism, masking anxiety in optimism. It's around everything, like what I could do, how I can spend all of this spare time, how I can set us up for empty nesting, etc. After the requisite morning job seeking, I've been pouring energy into TogetherLoop, and I'm the happiest I've been coding since building MLocker.

But I find myself tentative toward joy. Some of that is parenting, which is hard lately (always?). And I catch myself feeling like I don't have the time to be not experience joy, which is about as midlife as it gets. It's wild that even in this stage of life, I'm still looking for the same things I did as a teenager or college kid. Where do I fit? How do I define my value? Am I having positive impact on the world? Sometimes I don't like the answers I come up with.

I need a vacation from this. Fortunately I paid for one late last year.