alt.hn

6/4/2026 at 6:31:55 PM

"Maybe later" was a feature

https://arnorhs.dev/posts/2026-06-04/maybe-later-was-a-feature/

by arnorhs

6/5/2026 at 10:36:01 PM

Everything is search.

Software development is search through the space of useful/interesting automations. Business is search for product market fit (at the intersection of expertise, capital, problem, etc.) Writing is search for lossless, efficient idea transfer.

AI software development is more search. If we search more, will we find a bunch of garbage? Hell yes. We'll find a TON of garbage. That's not new, though. The world has been writing way more books than you'll ever read, recording more music you'll ever hear, filming more television shows than you'll ever get to watch, etc. A lot of it is garbage, but the good stuff stands the test of time and rises to the top, and I'd rather live in a thriving, flourishing world full of all these things, because there's more cream-of-the-crop when there's more everything.

It's evolutionary fitness operating in the space of ideas. I agree that "maybe later" was indeed a useful mechanism, and maybe even a local optimum in the development methodology search space (which recently experienced a major earthquake!), but evolutionary pressure will bring it back into existence in some form sooner or later.

by staticshock

6/6/2026 at 7:28:10 AM

More is not more after a certain point. Even without AI it was already way too cheap to produce software and we built way too many things that should not be built because it wasn't worth the liabilities and other tradeoffs.

Basically software was already like food with obesity being the problem not famine. LLM is like being able to create treats and other garbage with thought, imagine what that would do to obesity. The amount of quality food created would be less than 100 years ago even though you could create infinitely more food in general.

by esailija

6/5/2026 at 10:49:51 PM

One of my favorite things about AI is that I don't have to execute the curation and criticism at the "page of monospaced text" stage to anywhere near the degree, difficulty, or criticality. I love being able to build it, try it, say "No, no I don't think I will do this, this is amazingly awful"

by jaggederest

6/5/2026 at 11:41:39 PM

Funnily enough, I live for the page. I would love to do my whole job with pen and paper and ignore the computer even.

by torben-friis

6/5/2026 at 11:43:54 PM

I actually in a lot of ways agree with you, I could probably do my job via paper letters :) but especially for more UI-heavy work which I'm pinch hitting on it's really difficult for me to translate large features from page to reality for that kind of curation.

by jaggederest

6/5/2026 at 11:10:15 PM

I agree but the practical cost is most heavily paid in a collaborative work setting. Now everyone at all layers of a company is doing build prototype exploration but without the intermediary internal-filter check. Instead, these explorations get a straight line to production, for reasons I'm not exactly sure. Because it can I guess?

by apsurd

6/6/2026 at 3:09:35 AM

That's the part that surprises me. I have only ever shared one prototype I made with AI, and only because we were presenting on how we were exploring AI use and with constant mention that it was a proof of concept prototype.

I feel like putting any prototype, even if it was hand written, would be really risking my credibility if I put it into production without having it at least to the point that it wouldn't matter if it was vibe coded, via a few weeks of using the project myself.

by hgoel

6/5/2026 at 11:33:56 PM

Yeah that's where my eyebrows go to the moon. My investigations are at best in staging after a dev machine review, if nontech people are involved you need per-user cloud dev I think

by jaggederest

6/6/2026 at 12:13:17 AM

I agree with this take.

My immediate thought on reading the piece was along the lines of, “Yeah, but lots of the people who pick what we should work on aren’t very good at picking the right things to work on, and even the ones who are a bit better at it generally can’t do it consistently.” (And I’m not implying I’m better at it.)

So in that sense, being able to simply build more - perhaps a lot more - of what’s on the backlog gives you a much better chance of implementing some of the ideas that will be winners.

by bartread

6/6/2026 at 1:33:08 PM

Historically good stuff "stands the test of time and rises to the top" when it is not drown out by the bad stuff.

Gold nuggets among some scaterred garbage are still findable. But 10x gold nuggets burried in a massive landfill mountain created by automated garbage (slop) producing machines, would be much harder to be found. And people are more likely to give up, than to have to shift through the tons of garbage.

And that's ignoring the foul smell and health conditions arising from having to live next to all this garbage (which, in this analogy, is the social and cultural impact).

Also ignoring how living by garbage influeces your taste and numbs your smell, which ends up creating less good stuff. "Just churn more stuff to get more good art", is like losing in profit but making it up in volume.

>It's evolutionary fitness operating in the space of ideas.

More like a shoo-in nomination for civilizational Darwin Awards.

by coldtea

6/5/2026 at 8:13:17 PM

Definitely agree with this. Even without a large backlog, one of the things I find working on my personal project/product where I'm simultaneously the engineer/designer/project manager is it's really easy to ask the LLM to implement an idea I've been mulling for an hour or two, it one-shots it and I'm happy, and then a week or two later it starts to dawn on me that the feature was maybe not a great idea. Which isn't on the LLM, but I know when I write features by hand I tend to reach the "this is a bad idea" conclusion a lot earlier because I'm directly confronted with the cases where it won't work out, I have to think a lot harder about corner cases, etc.

Where I think/hope this goes is instead of using LLMs to go faster, we use them to do better work. I'd rather someone vibe code up better ways to test things, or use it to do in-depth code analysis and bug fixing, etc., then just pile in features.

by overgard

6/5/2026 at 10:42:46 PM

The good thing is since the feature was cheap to implement, you can just say "this was a bad idea" and remove it, as long as adding that feature wasn't a one way decision. People are typically more reticent to remove things that were hard to implement, even if that's the right thing to do.

by jfim

6/6/2026 at 12:11:32 PM

> you can just say "this was a bad idea" and remove it

Have you ever actually done that in a "serious" product, or just made it up?

In any product with actual customers, especially those from other (big) companies, features don't just go away at the snap of a finger. Otherwise, have fun discovering users moving to your competitors.

Anecdotally, a product from another company had removed or made significant changes to important features our users rely on every day multiple times with short notice, several times. We didn't hesitate to migrate to another service, which completed within about a month.

by fg137

6/6/2026 at 1:28:58 AM

That's the problem, even with an LLM, removing a feature two weeks later can be a nightmare because things have grown to depend on it. In a way it's even harder because the velocity of stuff piling in is much greater.

by overgard

6/5/2026 at 11:34:26 PM

> People are typically more reticent to remove things that were hard to implement, even if that's the right thing to do.

Careful. The sunk cost fallacy isn't just about time, it's also about money, and people may naturally be reluctant to remove bad features that cost them a lot of tokens, especially if the act of removal itself is going to cost even more tokens.

by kibwen

6/6/2026 at 5:10:09 AM

That's a pretty good point, and I assume at $work they wouldn't appreciate throwing away $n dollars worth of code.

by jfim

6/6/2026 at 12:12:05 PM

"my personal project"

Sure.

by fg137

6/5/2026 at 10:39:58 PM

That’s why I usually starts with the simplest version of something I want, which is usually a shell or a perl script. When I nailed down my workflows and needs, that’s when I build a proper program. This is one of the reason I like cli programs. They’re like lego blocks for workflows.

Same things with bigger projects. Write the most minimalistic version of a feature, and then ship it (or do a round of testing). Iterate based on feedback.

by skydhash

6/5/2026 at 9:31:56 PM

Sometimes it is, but sometimes it isn’t.

I can remember plenty of times in my career there were some “nice to haves” that we didn’t get to, and not having them continued to waste our time over and over again as we kept putting it off.

Time saving work for our software lifecycle that we spent so much time working around. Some of those things we finally did get to, and then spent the next few months wondering why we hadn’t don’t it before.

by cortesoft

6/6/2026 at 2:18:51 AM

+1, I can think of many things in my career that could have been that much better if we had the time and resources to do all the bells and whistles that we wanted.

by int_19h

6/6/2026 at 1:06:10 AM

Yeah, this right here. It's a cute and pithy blog post, but it's one-dimensional.

Backlogs may have plenty of dead-ends, but there's just as likely the same amount of legit work that would be useful. For every company with a security breach, there's probably a related ticket that got pushed to the back burner because it wasn't part of the core product roadmap.

by chickensong

6/5/2026 at 9:19:32 PM

Doesn't this just mean we need to get better at the active deconstruction and disassembly process? Like it's too easy to build, so we build more things we realize later that we shouldn't. Now, a comparable energy budget we used to use "deciding what to build" (because labour was scarce) is now energy we can divert toward "unbuilding stuff that was a mistake".

I'd much rather learn to live in the latter world. That world is based more on validated experience, and less on assumptions about a hypothetical future that hasn't yet been experienced.

Of course, we will perhaps start to atrophe in our skills at projecting futures, which is a real concern. As in "what's the benefit of building robust mental models of the future when it makes more sense to YOLO through it and experience it the results directly?"

It's all a little scary, to be honest. It turns a lot of the world on its head in many ways. Experientially tumbling into things with robust sensing processes... this is perhaps becoming more important than modelling futures in a judicious sense of economizing resources...

by patcon

6/5/2026 at 10:22:04 PM

> Now, a comparable energy budget we used to use "deciding what to build" (because labour was scarce) is now energy we can divert toward "unbuilding stuff that was a mistake"

The hard part is that you very quickly become Salesforce or Jira or <insert large confusing product>.

You have thousands of users who love your product and pay lots of money and find the features absolutely essential to their workflow. Everyone says your product is bloated and has too many useless features, if only you could delete a bunch of crap they don’t use your software would be perfect.

They all use a different 20%. Delete a feature, lose a fifth of your users.

by Swizec

6/6/2026 at 1:02:21 AM

Great point. It's probably obvious from my take that I build a lot of bespoke software, and have blind spots about the pitfalls of building at scale :)

by patcon

6/5/2026 at 9:12:33 PM

From the title I thought this was gonna be about software (like MacOS updater) giving users an “Update now” and “Maybe later” option but no “don’t show this again”.

I’m still holding out from upgrading to macOS 26 and it’s doing its absolute best to make me accidentally misclick to update

by jordwest

6/6/2026 at 3:33:23 AM

They say the fastest code is the code that never runs. This is true.

But actually, this principle generalizes. The most correct code is the code that doesn't run. There are no security vulnerabilities in code that doesn't exist. It fails no tests. There are no bugs hiding within it. It requires no documentation. (And doesn't get out of sync!) It incurs no maintenance burden.

The best code is no code.

by andai

6/6/2026 at 12:54:00 AM

I agree, but I think this is a skill in all parts of life. Some design has always been add, add, add. The skill to remove and simplify has always been valuable, but few do it.

In weight loss, many people take the approach of add and it doesn't work. Do what you are doing now and take this pill or run further or do more. But mostly the secret is eat less.

In design and engineering, it's often removing things instead of overcomplicating them.

In communication, it's often, remove lots of your side points and just focus on your core argument.

We may have removed a constraint that allows people to do more, but the skill has always been to choose, prioritize and remove the things that are making it worse

by gamerDude

6/6/2026 at 2:28:35 PM

"4 years later it's clear that those backlog features would not have helped at all. It is a good thing they never got built."

To me, it is a survivor bias. How could you know where you would have been now if you built these features of your backlog 4 years ago?

Maybe some things would have been easier and faster, maybe you would have been bigger, got more customers and money. Maybe you would have done a big breakthrough that would have transformed your project into something different and better. Or maybe it would have been exactly the same, or worst, or would have led you to bankruptcy.

Maybe there is a security hole that you did well to not spend time fixing because no one abused of it (...yet), or maybe some hackers could have leaked all your customer base to some random forum killing your company because of this missing fix.

The outcome is unsure, but you can't easily consider as a generality that you had not needed them.

by greatgib

6/6/2026 at 1:38:58 AM

Was invented long, long time ago. I first learned formal definition as "part count reduction" fromm Design for Manufacturing (DFM).

by oxag3n

6/5/2026 at 6:55:43 PM

I think if you assume a capitalistic, commercial framing of code, this makes sense.

If you think about all the projects you don't have time to make that require code but would be really cool albeit have no *marketable* value, making those faster to make and easy to share isn't a bad thing.

I want more cool free things people make out of passion - sure, you could argue using AI removes some of that passion, but there's also a large subset of people who are passionate about their field but not passionate about code, and if they're able to make something cool by feeding the idea in and pulling the token generation slot machine's lever on repeat to get their vision, I still think that's cool.

Of course, there's a line where it's slop, so it depends what they're making. A tool to make music? Cool. An album where it's all AI gen'd audio. Not cool. A tool to modify art/apply filters/modify brushes? Cool. AI art standalone? Not cool.

Basically, is the target something standalone as a product we want to have human creativity in the output expression (art) or not. I don't think of MS office as particular artful, but I'm sure many good books have been written in it.

This line is definitely blurry and full of gray areas. For example, https://www.redwoodrhetorica.com to me is totally fine, but I could see why people find it weird.

Similarly, I'm sure to someone working in or on emacs or vim, they're almost sacred and they view the tool itself as a work of art, such that the idea of using AI to improve either sounds offensive, but as long as VSCode works (which, it has had more bugs lately...) I really don't care if they used Claude or whatever to work on the editor/IDE itself.

Of course, there are projects and features which probably shouldn't make it past the "Should this exist?" filter. Complexity does have a cost - nobody wanted CoPilot in Notepad - but having LLMs doesn't change that, I don't think. It means we can do more, but being selective and having good taste to avoid making something bad by adding unnecessary crap to it was a problem far before LLMs.

by vegadw

6/5/2026 at 9:01:07 PM

This seems like you're arguing against something this post does not say.

by dbt00

6/5/2026 at 10:01:51 PM

I guess that’s the difference between “maybe later” and YAGNI. YAGNI is a discipline.

by lowbloodsugar

6/5/2026 at 10:51:38 PM

One of the most important things I ever learned from a colleague was YAGNI. He would review my code and mark sections as YAGNI. I didn't know what it meant at the time. He kindly explained and since then I have been the teacher of that very important guideline.

by block_dagger

6/5/2026 at 7:09:48 PM

There is still code you aren't writing. facepalm

by casey2

6/5/2026 at 7:46:49 PM

I've personally seen way more of a bias to shipping something because "now it's free" without actually discussing whether it's worthwhile. "Just do it" and we'll measure it later. Often the later doesn't happen though. I think this article is a good reminder that applying taste and asking questions is still valuable, even if the code is considered to be cheaper.

by dbalatero