Need help?
<- Back

Comments (114)

  • jwr
    As a SaaS author, I couldn't agree more. That's how I see my work: the value is not in the code (AI can code better than me at this point), nor even in the software architecture (AI is just getting to the point where it will get better than me). It's in deciding what to build and what not to build, defining the overall character and vision of the product, looking at each screen and thinking "how does this help my customer do their job".This, unfortunately, takes time, as one has to restart many times because of ideas that turned out not to be as great as one had initially thought. And it results in software that is called "opinionated", and often does not follow what the "industry" does.
  • allenu
    Something I've been thinking about a lot is that ultimately AI does not have values, intent, and taste. Even with humans, each of us has different values, intent, and taste, although we do share many of these things. As a living human being, you have biological or cultural desires and particular goals that you want to accomplish while you're alive on this earth.When you're creating art or even a product, what you create is a result of your particular values and particular tastes and those drive some sort of purpose for whatever it is you're creating. What you're building is, generally, made for the consumption or use by another person (even if indirectly), and we mostly have empathy and want those people to have a good experience with whatever we're creating. We think about our audience and weigh their particular needs.When you use good software, you can sense the intent in what was made. The person (or team) combined their particular point of view with that of the goals of the user. At this point, I don't think agentic coding is going to give you that, at least not fully. It might get most of the shared values and common things right as a result of its training data, but a human still needs to edit the output or steer it on a good path that only they can see and which is part of a larger vision. For simpler needs, taste and values matter less, but for more complex things, it makes a difference, in my opinion.
  • ajrouvoet
    I enjoyed the introduction. I just picked up “The mind of the Maker” by Sayers, which Fred Brooks cites in The Mythical Man Month: “ Dorothy Sayers, in her excellent book, The Mind of the Maker, divides creative activity into three stages: the idea, the implementation, and the interaction. A book, then, or a computer, or a program comes into existence first as an ideal construct, built outside time and space, but complete in the mind of the author.” He goes on to say how the user meets the mind of the maker in the interaction: “The creation is complete when someone reads the book, uses the computer, or runs the program, thereby interacting with the mind of the maker.”
  • jakub_g
    > it's lot easier to add new capabilities, than rethink existing capabilities. So each product becomes a collection of abilities, without actually having unified point of view.This is a a very good and succinct summarization.What I'm also observing recently also is that pretty much every product tries to expand to do things that completely different products used to do, and become a mega-product-for-everything. It's like a Zawinski's Law on steroids.
  • simonbarker87
    “Great software is opinionated” is something life been saying for years. I forget if I read it somewhere, heard it or came to the concept in my own thinking. All that is to say I don’t claim it’s a unique thought. And yet. I have to say it so often to the teams I’ve worked with or managed.The opinions are those of the creators and that isn’t changing with AI.
  • elliotto
    It is probably a mistake to humanise the artistry of a commercial software endeavour. These systems exist because capital has deemed it worthy to exist, and they will reflect the desires of capital - to consume and expand. When AI comes in and breaks the historical flows of these systems, we will see this breakage reflected in the ugliness of the products. Capital would cut all the humans out of the software production process if it could.Open source software, or software created for personal or artistic reasons, is worthwhile to consider as being human-driven. Linear, while an effective ticket management system, is probably not an example of this.
  • kristianc
    This age will be brilliant for sorting between those who care about "done" as in "technically complete" vs "done" as "creates enduring value for the person on the other end of it". AI largely only does the former.
  • majkinetor
    Fantastic take. I always thought so, but couldn't express it so well. After reading the first paragraph, my heart flickered. This will be the only determining thing in the age of AI - someone who shapes the things based on its own intuition and taste, based on experience. I did that a lot in my IT carier leading a bunch of projects. I care about each of them, deeply.
  • mik3y
    I strongly agree with this take. And in particular, I've been wondering about this: > Individuals work with agents to produce changes independently, > each operating a small software factory. > > [...] together they start to resemble Frankenstein’s monster > rather than a carefully shaped sculpture. Do solo developers consequently have a bit of an advantage today when it comes to producing tasteful, opinionated software?
  • dmitrijbelikov
    > There seems to be more thought going into what the technology can do and what can be added than the form it should take.Yes, it looks like people've choosen chat interface. They don't like filling forms.> Individuals work with agents to produce changes independently, each operating a small software factory. Each change might make sense on its own, but together they start to resemble Frankenstein’s monster rather than a carefully shaped sculpture.Before agents people do the same and our code bases not perfect.Behind software not only creator, it's people who interested in and users. To make software creator needs a factory.> Making software is getting easier.Nope, cuz we have a lot of Frankensteins and chat interface
  • thinkindie
    I’ve found myself raising the bar every day with my team in terms of my expectations of what their deliverables should be. I gave them enough time to adjust but I observed that the average engineer believe they can do the same with less effort while they should rather think about delivering more and of higher quality, and taking the extra time available to connect the dots.I believe this is going to be a huge filter moving forward.
  • conqrr
    This is everything not just software. Although a lot of what we wear, eat and drink come from factory, if it didn't, you can always tell the someone behind it. Handcrafted things easily have more value and I find myself thinking more about it only after it affected what I did daily (software). Since Industrial revolution, countless things have gone to the factories. Makes me think how little we really empathize as humans.
  • notesinthefield
    Is anyone observing the AI software dev convo from a sans wax poetic perspective? I dont think 9/10 people are capable here.
  • ah1508
    I agree, what's the point of writing 100x more LOC ? To deliver 100 more features ? With competent people, writing good code is not the bottleneck. Users don't ask for 100x more features, not even 2x more.This week Porsche showed the mission-S concept, not even a screen in the car. Few features, dedicated to driving and I guess the user manual won't be a 500 pages book. In France Dacia Sandero (low cost car with only basic features) is the most sold in the country. I am not a fan of Steve Jobs and never owned an Apple but, correct me if I am wrong, he wanted a limit set of useful and perfect features for his products.
  • cryptolobster
    I'd say the text really captures something a lot of us feel but can't put into words. We're used to judging software by how many features it has, but what actually gets us is something else: the feeling that someone put their head and heart into the product. The author is right. When each new feature gets added in isolation, the product loses its coherence and turns into a patchwork quilt.
  • convenwis
    This is why I really hope that we don't end up in the world that a lot of AI pilled people believe is the future: one in which chatting with the AI drives everything and interface basically goes away. While I don't think that it is impossible that we at least go partially down this path it would make me incredibly sad.Well thought out and built software is so satisfying to use that I would be very sad to see it go. Particularly given that the current crop of frontier labs don't really seem to care that much about the craft and feeling of software (at least relative to their other priorities.
  • sp1nningaway
    Strong agree. This also applies to how every org I’ve been a part of that preaches data driven decision making is either using data to make unintuitive wrong decisions or chasing down stats that reinforce their priors.
  • lightandlight
    I agree, and this is why I dislike A/B testing for product development. It replaces the "someone" with vague broad appeal or rogue optimisation forces.
  • hirako2000
    We may not wait 70 years to demand craftsmanship this time.
  • blauditore
    Yeah, the implementors also act as representatives of the human users of software to be built. That's something which can't be automated away pretty much by definition.
  • riazrizvi
    Only an audience of software developers would find that first statement insightful. The rest of the world generally understands that expression is a product of the human performing the execution of that expression.That mowed lawn. That email message. That meal they made for you. They are windows into some specific humans.
  • nagalluri
    Give two different people the same problem, and you'll likely get two different solutions shaped by differing experiences and ways of thinking. I think software is an example of this manifested.
  • solatic
    I (think I) agree with the author, but I want to point out that his core grievance has little to do with AI software factories.> The product changes are primarily additive... I think the reasons for this is that it's lot easier to add new capabilities, than rethink existing capabilities.This is perhaps the biggest difficulty in Product, and the core of the Innovator's Dilemma. Changes or removals, fundamentally, fuck with how somebody uses your product. It is very, very rare to ship a feature - something that inspired somebody in Product, got all the internal stakeholders to sign off, including getting leadership to fund it - and have nobody use it, so that it isn't controversial to remove it; even then, removing it competes with resources for adding something else, so it's still controversial to remove it. When somebody uses something that you fucked with, you risk them churning, that simple.Coming up with good features to add is not hard. Everybody and their grandma has ideas. A simple spreadsheet can count which ones are most popular and are proposed most often. This should not, in and of itself, dictate what you build next, and bad Product leadership looks like following mass diktat.Good Product leadership is not afraid of the consequences of fucking with the user. Good Product leadership has both the courage to reformulate the offering and gets the reformation right, because they intuitively understand the user, the domain, and where they sit in it, better than anyone else. They ship stuff that fucks with you because they understand the difference between the bad kind of being fucked with, and the good kind. And if you churn, then you churn. So be it. You can't actually make everyone happy all the time, so focus on making happy the people who get it, and accept losing the rest. That's also easier to say when you have $100k in ARR with $1k ACV, compared to $5m in ARR with $2.5m ACV.Good Product leadership is rare because good leadership is rare. AI has nothing to do with it.
  • dozerly
    A practical problem with the intuition approach is that you have no possible way to measure two people’s intuitions against each other. In smaller organizations that’s fine, but anytime you get larger you can’t weigh the intuition of 50 people against each other
  • iamcalledrob
    I wholeheartedly agree with this perspective.As with most creative pursuits, the best things happen when there's a clear point of view.Unfortunately, the best things aren't always the most commercially successful, because products are only a small part of what makes a company successful. I think we're seeing this play out in the software market.JIRA might be objectively awful, but it still manages to print money!
  • swiftcoder
    > The industry often talks about software as though it comes out of a factory. You collect requirements, build features, and measure whether they workIt used to be taken as a given that the software houses one respected didn't actually work like that. Steve Jobs and Johnny Ive yelling at their minions about user experience. Even Bezos sending the dreaded question mark. Great software was the work of a team translating an auteur's personal vision into software... while the blue chips like IBM churned out useful but soulless software by the corporate method aboveSomehow most people don't seem to believe this anymore, despite the repeated failure of corporate environments to produce better software.
  • abroszka33
    > I think good products carry something of the people who make them.Yeah, look at modern AAA games vs. small indie games.
  • nelaggy
    sadly i'm not convinced this is what most people want, seems like barely functional is good enough for most
  • Ozzie_osman
    "You will love this next piece of software. Completely hand-made. Each line of code, each piece of the visual design, was carefully and artisinally crafted by a real human, using techniques passed down for generations between craftsmen. Some of those techniques survive in books like Code Complete and such. They don't make 'em like this anymore. "
  • jdw64
    In his book Programming as Theory Building, Peter Naur viewed programming not as the act of generating source code, but as the act of building a theory about the problem and its solution.He said the lifecycle of a program ends when the development team is disbanded or when knowledge transfer fails to happen. But these days, people develop with AI. Will that knowledge actually remain? There's a slightly tircky point hereOf course, even in the past, once a codebase got big enough, everyone was writing code on top of an incomplete theory. But when you delegate work to AI, the theory itself isn't yours anymore, which makes it even trickier.
  • ceuk
    I've been saying this exact thing about food for years. It applies equally as well to software though
  • burnto
    I tend to think of this “character” as part of craft, bordering on art.Deep artful craft requires inhabiting work beyond basic professionalism and requirements. You set aside self and ego and commit yourself as a tool to create.It’s a value system created via example and culture. We have to be ready to prioritize reflection and learning, meaningful feedback, dialogue, certain kinds of humor even.So it’s sadly not healthy or sustainable in many settings.Edit: thank you for this post. It was a nice humanist reaffirmation.
  • dzink
    That’s precisely right. I’ve been trying to see how much soul I can put into products lately. Here is one example: https://santawho.com
  • theoriginaldave
    Isn't this the premise behind the movie Tron?
  • anon
    undefined
  • einpoklum
    > The industry often talks about software as though it comes out of a factory.A lot of good software, if not most of it, doesn't come from "the industry"...
  • lifeisloving
    Everyone agrees with this sentiment until I tell them its a marxist idea.https://en.wikipedia.org/wiki/Commodity_fetishism
  • elendilm
    > I think good products carry something of the people who make them. Their experience, what they care about, and how they think things should work.Couldn't agree more. It does reflect many of the values of what an ideal product should be based on the developers' experience.
  • mschuster91
    > I wonder whether some of this comes from how the work is organized. Individuals work with agents to produce changes independently, each operating a small software factory. Each change might make sense on its own, but together they start to resemble Frankenstein’s monster rather than a carefully shaped sculpture.Well... when you look at the org chart of many companies, the answer is obvious. Either there is no person responsible for anything at all, and everyone works for themselves, or there are dozens of little fiefdoms, competing for budget, staff and anything else.But it's rare these days to have one person or even a committee that actually takes responsibility for a product as a whole and most importantly has a joint, shared and agreed-upon vision: how should the product look like, what should the product accomplish and how should the product be architected?
  • mukmuk
    As soon as I hit the “At [current company name], we...” part of a blog post, I sigh a bit.
  • shevy-java
    > Recently, many products are starting to feel messy to me, including products from very successful companies.Well .. I'd love for AI to vanish ... but ... that statement is also wrong.It insinuates that prior products are all great. I think this is not universally true. Take GTK. I think gtk2 is better than gtk3 which is better than gtk4 (and gtk5 will be wayland-only). But none of them, individually, was really that great to begin with. QT also feels just way too huge - I get that you get a lot of functionality, but to me it often feels as if these toolkits aren't that great. And the competitors are often worse. This is not solely confined just to the code that powers them, but documentation as well. The gtk4 documentation is a total joke. I learned more about GTK3 from the python examples by the way, which were well documented - I think lazka (Christoph Reiter) wrote or at the least organised most of that (for python-gtk3). Barely anyone seemed to want to use python-gtk4, so that part also could be seen in the documentation being worse for a long time (I have not checked this in the last some months, but back when I checked it, it was that way, it almost seemed like 100x more users of python-gtk3, and even that became a slow dying breed ... evidently the www took a huge toll on the traditional GUIs).
  • slopinthebag
    i find the quality coming out of these software factories to be shocking, it's clear to me that the developers are either not using their own products or they just don't care. pretty much every mainstream coding agent suuuuucks, and it doesn't make sense why. i built my own harness in a couple of days that isn't even comparable to codex/claudecode/pi/opencode and you kind of have to ask wtf they're doing with their software if i can produce a better harness in such a short time by myself...my guess is they're asking their "factory" for features without considering the product as a whole, which would be in agreement with the article. but features must be considered and integrated as a whole, not the sum of their parts.
  • esafak
    Linear is an unusual enterprise company in that it carries the consumer ethos of caring for design, and the user. This is what's absent in the product-by-checklist enterprise companies, whose economic buyer often has the same mindset.
  • curatedmcp
    [flagged]
  • GaronG
    [dead]
  • bubblythoughts
    [flagged]
  • Saidsadik2003
    [flagged]