Discussion summary

Discussions covered the challenges of maintaining quality in large organizations, with some arguing that small, autonomous teams can achieve high quality. Maintainability and subjective perceptions of quality are also key themes.

What the discussion says

  • Large orgs can achieve quality through small, autonomous teams.
  • Maintainability is a crucial marker of quality.
  • Quality is subjective and context-dependent.
  • Structural issues in large organizations hinder quality.
Large orgs can achieve quality by spinning up small, autonomous teams.
p1necone
Maintainable code makes problems easier to fix, indicating quality.
jongjong

Comments

Hacker News

The stuff about scale not allowing quality resonated with me.

baseless speculation follows!!!

I think large orgs can definitely achieve high quality. but only by spinning up small, totally autonomous teams working on every layer of whatever stack their product is on, one team per product (maybe two if there's some really obvious line in the sand between two different things that talk to each other, but be careful! and make sure both teams are in the same timezone!).

As soon as you start trying to do those things that seem really sensible when you have a bunch of separate autonomous teams - like "hey you're both working on similar features, you should share the implementation", and "oops all our products look different, we should come up with a unified component library", and "we need automated tests - everyone should use this specific tool that we paid for" you run into the big org problem.

My gut feel is that the best way to get some level of coherency without running into these problems is to share knowledge, best practices, examples etc. But never dictate anything that actually gets in the way of any of your teams owning their own shit. Don't make teams use some internal/external library for functionality x, don't enforce processes, don't have a separate design team dictating css styling to teams, don't enforce org wide CI policies, don't have a separate DevOps team handling releases - just hire competent people and let them do their thing. If you do want to try to build something so that all the teams solve the same problem in the same way, you need to get them to use it by making it so good they want to, not by telling them they have to.

You might be able to enforce some baseline level of mediocrity by doing those things, but the only way to achieve excellence is to get out of the way and stop trying to "help".

by p1necone

Corporate megasoftware suffers from the same structural problems as ancient megafauna; when there is a fixed amount of material to build the organism, it's almost always more efficient to split it into smaller, more coherent, repeatable bodies that project power through coordination, rather than a single large body that imposes its will on the world via sheer weight and size. The bottleneck was, as in the now-extinct branch of evolution, the viability of intelligence in smaller entities; that is now a solved problem. Now we are headed to an Anthropocene of cyberspace, where software is primarily a personal artefact, with optional collaboration, rather than a product designed and distributed from centralized organizations.

by livingsoft

> Beliefs about quality I want to disprove... (lists 38 bullets)

Sure you didn't miss one? You can't have an exhaustive list because any of those can be just as true as false depending on the situation.

Instead of picking the ones I disagree with most, I'll just say that low quality is miscommunication. The bugs are a snapshot of the organization.

There are multiple facets to hang concern on that the other stakeholders don't know about or ignore. Your ability to discuss them, plan, and execute is the bottleneck. Everyone has to be on the same page.

This cannot be the sole responsibility of the devs or small isolated teams. Scale is necessary for quality to emerge.

by sublinear

Absence of problems is definitely a major factor but I like to think of 'maintainability' as being the main marker of quality. Maintainable code has fewer problems because it makes problems easier to solve.

by jongjong

"Quality is the absence of problems" is an example of the reification fallacy, because a problem is not a fixed thing. A problem is only a problem because someone decides it is so.

This is why a better definition is "quality is value to some person who matters." This definition instantly places you at the crux of the matter, which is not about a state of the world or of your product in the world, but rather about WHO matters and how they FEEL about your product.

by satisfice

(Anthony has some great paper solo role playing games on his blog too)

by therobopsych

What a beautiful website.

by adamddev1

Keep in mind that there are people for whom thinking about quality has been their whole career, for decades. There've been long-running industry studies on software quality that have gathered metrics across thousands of businesses on what works and what doesn't. People have been focusing on quality in businesses in general for centuries. It's not a solved problem, but it has been tackled by experts for a long time. It's a good idea to look to their work first before taking a swing at it yourself.

Personally I find quality to have a fundamental impact on everything every human does. It affects mental state, motivation, affects ability, necessity, and time to do things, creates or reduces costs, availability of resources, clarifies or complicates, makes life easier or harder, etc. It can save or destroy a business, make someone's life feel easy as pie or insanely frustrating. But it's not always easy to do right; you need a system to apply quality intelligently or you risk your efforts being wasted (https://global.toyota/en/company/vision-and-philosophy/produ...).

by 0xbadcafebee

> It is based on the premise of making work easier for workers. The objective is to thoroughly eliminate waste and shorten lead times to deliver vehicles to customers quickly, at a low cost, and with high quality.

^ = from your linked Toyota Production System philosophy

Thanks for that link! I find those two early sentences to be an insightful and relatively complete loop of process.

When considering using automation or ~A.I. we can easily ask: which part of this loop is our addition improving (or messing up)? Where is the balance that works?

As you point out, answering these what-works/quality questions are not solved problems and expertise is needful, but careful consideration does not seem to be a popular mode in our age of fountaining funny money and magic genies.

I grew up in the '60s where the science fiction/future was always: march of progress and you'll have so much time and choices! Now I am in the future and the reality is close to: who has the time?

More insidiously/invisibly: you have plenty of time for endless momentary thrills, but no one has time to make things better.

Once upon a time there were customer complaint departments and the Production System would get fixed. Then it became suggestion boxes and returns. Then pleading for a Return Merchandise Authorization. Then it's your call is valuable to us recordings before click call hangups. Oops, unhappy customer?--give 'em a coupon to keep up the addiction, it's cheaper than Quality Control.

The latest devolution seems like fire the workers but use AI to mesmerize customers, or just mind control ~investors and ~regulators, since who needs cover-our-costs-paying-customers anyway?

Will the pendulum swing back?

by danhite

Since it’s so subjective let’s poll our engineers’ NPS!

“How likely are you to work in this codebase again?”

0 = Least likely 10 = Most likely

by cadamsdotcom

We should look at the nature to learn what quality means. Survive first with whatever it takes. Then if you have comeptition, keep improving.

by docheinestages

> Beauty: Is the software as aesthetically pleasing as possible?

Imo this point should be changed to reviewability. Beauty is in the eye of the beholder

by arbirk

> The agreed-upon best-designed software in the industry has noticeable problems.

The what? Since when has "the industry" been able to define best-designed, much less agree on it?

by Arainach

Quality is an opinion based on your perspective. The author articulates quality from their perspective, which has value, but isn’t universal.

by arscan

Quality is the extent to which the end product meets expectations. Also, quality attributes are well-defined in the ISO 25010 standard so I'd stick to those rather than imagining some for myself.

by j0llyj0hns0n

Why no security? It's mid-2026, high quality software must be secure by design or you won't be using it.

by 1970-01-01

Perhaps this is a controversial take, but I believe security runs in opposition to many other quality attributes (i.e., usability, interoperability). Not to say that there aren’t designs that could exist that are optimal for security and these other quality attributes simultaneously, but security massively reduces the potential design space to the point where there is no rule that at least one of these optimal designs must exist.

Quality is an opinionated measure of a design, which involves tradeoffs based on your goals, values, etc. Valuing security very high, even at the expense of every other aspect of quality if necessary, is completely understandable. But that’s a value that isn’t universally held.

If your point is that security should at least be considered when measuring quality these days (like, it’s a top 10 ‘ility’ at least): fair enough.

by arscan

Strangely "elegance" isn't even mentioned. "Beauty" comes close but is not the same.

And "simplicity" comes to mind. Also not mentioned.

by RetroTechie

I also think of Quality as “usable,” “discoverable,” “pleasant,” and “accessible.” He covers them, in some fashion.

Some of these are difficult to quantify, but are often the difference between success or failure, in the market.

I constantly encounter “dead” software. Software that is correct, performant, awesome (in some cases), but something that I don’t “want” to use. A “necessary evil.”

That kind of statement doesn’t fly well, in a community of “Inspector 34”s, but it applies to those we like to call “customers.”

by ChrisMarshallNY

Isn't high quality defined by how easy it is to maintain as the scale grows? I feel there is a disconnect between the "quality as perceived by developers" and the "quality as experienced by designers and users."

by d-yoda

Quality software meets its requirements. Both functional and non-functional. Of course our industry still cannot quantify non-functional requirements, or discover a way to predictably implement functional requirements.

So all that remains for our so called “engineering” discipline, is an answer that says something that doesn't break a lot.

by aryehof

“Zen and the art of motorcycle maintenance” is a good read on the topic of Quality.

by inatreecrown2

> Quality is impossible at scale

That's a "yes and no" thing. Handmade quality, yes, but some companies get pretty good at finding a "sweet spot," between better-than-average quality, and "Rolls Royce" quality.

Source: I worked for a company that was pretty much renowned for Quality. We made stuff that is pretty near the top shelf, but still a rung or two under the top.

It's not easy.

Also, customers are willing to pay for garbage. As long as that continues, garbage producers will drive quality producers out of business.

by ChrisMarshallNY

Quality is the ratio of the value you derive from the software to the cost to you of using it.

Most typical quality attributes can be subsumed under this schema.

If the software costs too much to change because the architecture is poor, that reduces the quality.

If the interface is poor or it is slow unnecessarily, it costs you more time to use it, and that reduces its value to you and hence its quality.

If the software is insecure, you may actually lose privacy or even money using it.

If the software is not robust, you run the risk of losing data and time, etc. when using it

by prmph

A more rigorous definition of software quality can be found in ISO 25010.

> The quality of a system is the degree to which the system satisfies the stated and implied needs of its various stakeholders, and thus provides value. Those stakeholders' needs (functionality, performance, security, maintainability, etc.) are precisely what is represented in the quality model...

Here is a decent summary: https://iso25000.com/en/iso-25000-standards/iso-25010

Not exactly software quality, but adjacent, is the capability catalog of dora: https://dora.dev/capabilities/

Dora is about 'software delivery and operations performance' and has a vast body of empirical research underpinning it.

by Lutger

I tend to agree with a few others here, Quality is not just the absence of problems, it is something deeper.

For me it means care and attention were paid while developing, the rough edges have been smoothed off for want of a better phrase. This doesn't mean using the latest and greatest framework or library, usually quality will come from a deep understanding of the basics and concepts like design patterns .

You can spot quality code in the same way to can tell a fake Rolex from a real one but the quality of the movement.

by kwakker35

Right off the bat, I disagree with the assertion that software quality is merely a concept of how it functions now. In reality software is a living thing and quality is so much more than whether there is a glaring issue right now.

by christina97

I assume this is written by a UI designer or something, and it certainly feels like "notes" and not a cohesive article. Claiming "The six signals of quality in software" and then listing only user-facing concerns and including subjective items like "Beauty: Is the software as aesthetically pleasing as possible?" is questionable.

I'm interested in quality, but I didn't find these notes enlightening, and couldn't even finish the article.

by chickensong

Yeah, when a software focuses on beauty I only have to wonder what they sacrificed to achieve it.

by LoganDark

> Some people don’t care enough > > The more people you hire, the more likely you are to hire people who don’t care enough about good interface design. Good interface design needs to be valued by everyone who can affect the work. That includes developers, designers, product managers, and often the CEO.

I know where you're going with this, but here's a twist:

A CEO who cares about interface _design_ is path to micromanaging and pain. A CEO should care about interface _designers_, who are (hopefully) the people trained on how do it well.

Even better: CEOs should care about developers with UI/UX skills, because too often CEOs adopt designers like a pet and keep them busy 24/7 asking for mockups.

by manoDev

Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • The stuff about scale not allowing quality resonated with me.

    baseless speculation follows!!!

    I think large orgs can definitely achieve high quality. but only by spinning up small, totally autonomous teams working on every layer of whatever stack their product is on, one team per product (maybe two if there's some really obvious line in the sand between two different things that talk to each other, but be careful! and make sure both teams are in the same timezone!).

    As soon as you start trying to do those things that seem really sensible when you have a bunch of separate autonomous teams - like "hey you're both working on similar features, you should share the implementation", and "oops all our products look different, we should come up with a unified component library", and "we need automated tests - everyone should use this specific tool that we paid for" you run into the big org problem.

    My gut feel is that the best way to get some level of coherency without running into these problems is to share knowledge, best practices, examples etc. But never dictate anything that actually gets in the way of any of your teams owning their own shit. Don't make teams use some internal/external library for functionality x, don't enforce processes, don't have a separate design team dictating css styling to teams, don't enforce org wide CI policies, don't have a separate DevOps team handling releases - just hire competent people and let them do their thing. If you do want to try to build something so that all the teams solve the same problem in the same way, you need to get them to use it by making it so good they want to, not by telling them they have to.

    You might be able to enforce some baseline level of mediocrity by doing those things, but the only way to achieve excellence is to get out of the way and stop trying to "help".

    by p1necone
  • Corporate megasoftware suffers from the same structural problems as ancient megafauna; when there is a fixed amount of material to build the organism, it's almost always more efficient to split it into smaller, more coherent, repeatable bodies that project power through coordination, rather than a single large body that imposes its will on the world via sheer weight and size. The bottleneck was, as in the now-extinct branch of evolution, the viability of intelligence in smaller entities; that is now a solved problem. Now we are headed to an Anthropocene of cyberspace, where software is primarily a personal artefact, with optional collaboration, rather than a product designed and distributed from centralized organizations.
    by livingsoft
  • > Beliefs about quality I want to disprove... (lists 38 bullets)

    Sure you didn't miss one? You can't have an exhaustive list because any of those can be just as true as false depending on the situation.

    Instead of picking the ones I disagree with most, I'll just say that low quality is miscommunication. The bugs are a snapshot of the organization.

    There are multiple facets to hang concern on that the other stakeholders don't know about or ignore. Your ability to discuss them, plan, and execute is the bottleneck. Everyone has to be on the same page.

    This cannot be the sole responsibility of the devs or small isolated teams. Scale is necessary for quality to emerge.

    by sublinear
  • Absence of problems is definitely a major factor but I like to think of 'maintainability' as being the main marker of quality. Maintainable code has fewer problems because it makes problems easier to solve.
    by jongjong
  • "Quality is the absence of problems" is an example of the reification fallacy, because a problem is not a fixed thing. A problem is only a problem because someone decides it is so.

    This is why a better definition is "quality is value to some person who matters." This definition instantly places you at the crux of the matter, which is not about a state of the world or of your product in the world, but rather about WHO matters and how they FEEL about your product.

    by satisfice
  • (Anthony has some great paper solo role playing games on his blog too)
    by therobopsych
  • What a beautiful website.
    by adamddev1
  • Keep in mind that there are people for whom thinking about quality has been their whole career, for decades. There've been long-running industry studies on software quality that have gathered metrics across thousands of businesses on what works and what doesn't. People have been focusing on quality in businesses in general for centuries. It's not a solved problem, but it has been tackled by experts for a long time. It's a good idea to look to their work first before taking a swing at it yourself.

    Personally I find quality to have a fundamental impact on everything every human does. It affects mental state, motivation, affects ability, necessity, and time to do things, creates or reduces costs, availability of resources, clarifies or complicates, makes life easier or harder, etc. It can save or destroy a business, make someone's life feel easy as pie or insanely frustrating. But it's not always easy to do right; you need a system to apply quality intelligently or you risk your efforts being wasted (https://global.toyota/en/company/vision-and-philosophy/produ...).

    by 0xbadcafebee
  • > It is based on the premise of making work easier for workers. The objective is to thoroughly eliminate waste and shorten lead times to deliver vehicles to customers quickly, at a low cost, and with high quality.

    ^ = from your linked Toyota Production System philosophy

    Thanks for that link! I find those two early sentences to be an insightful and relatively complete loop of process.

    When considering using automation or ~A.I. we can easily ask: which part of this loop is our addition improving (or messing up)? Where is the balance that works?

    As you point out, answering these what-works/quality questions are not solved problems and expertise is needful, but careful consideration does not seem to be a popular mode in our age of fountaining funny money and magic genies.

    I grew up in the '60s where the science fiction/future was always: march of progress and you'll have so much time and choices! Now I am in the future and the reality is close to: who has the time?

    More insidiously/invisibly: you have plenty of time for endless momentary thrills, but no one has time to make things better.

    Once upon a time there were customer complaint departments and the Production System would get fixed. Then it became suggestion boxes and returns. Then pleading for a Return Merchandise Authorization. Then it's your call is valuable to us recordings before click call hangups. Oops, unhappy customer?--give 'em a coupon to keep up the addiction, it's cheaper than Quality Control.

    The latest devolution seems like fire the workers but use AI to mesmerize customers, or just mind control ~investors and ~regulators, since who needs cover-our-costs-paying-customers anyway?

    Will the pendulum swing back?

    by danhite
  • Since it’s so subjective let’s poll our engineers’ NPS!

    “How likely are you to work in this codebase again?”

    0 = Least likely 10 = Most likely

    by cadamsdotcom
  • We should look at the nature to learn what quality means. Survive first with whatever it takes. Then if you have comeptition, keep improving.
    by docheinestages
  • > Beauty: Is the software as aesthetically pleasing as possible?

    Imo this point should be changed to reviewability. Beauty is in the eye of the beholder

    by arbirk
  • > The agreed-upon best-designed software in the industry has noticeable problems.

    The what? Since when has "the industry" been able to define best-designed, much less agree on it?

    by Arainach
  • Quality is an opinion based on your perspective. The author articulates quality from their perspective, which has value, but isn’t universal.
    by arscan
  • Quality is the extent to which the end product meets expectations. Also, quality attributes are well-defined in the ISO 25010 standard so I'd stick to those rather than imagining some for myself.
    by j0llyj0hns0n
  • Why no security? It's mid-2026, high quality software must be secure by design or you won't be using it.
    by 1970-01-01
  • Perhaps this is a controversial take, but I believe security runs in opposition to many other quality attributes (i.e., usability, interoperability). Not to say that there aren’t designs that could exist that are optimal for security and these other quality attributes simultaneously, but security massively reduces the potential design space to the point where there is no rule that at least one of these optimal designs must exist.

    Quality is an opinionated measure of a design, which involves tradeoffs based on your goals, values, etc. Valuing security very high, even at the expense of every other aspect of quality if necessary, is completely understandable. But that’s a value that isn’t universally held.

    If your point is that security should at least be considered when measuring quality these days (like, it’s a top 10 ‘ility’ at least): fair enough.

    by arscan
  • Strangely "elegance" isn't even mentioned. "Beauty" comes close but is not the same.

    And "simplicity" comes to mind. Also not mentioned.

    by RetroTechie
  • I also think of Quality as “usable,” “discoverable,” “pleasant,” and “accessible.” He covers them, in some fashion.

    Some of these are difficult to quantify, but are often the difference between success or failure, in the market.

    I constantly encounter “dead” software. Software that is correct, performant, awesome (in some cases), but something that I don’t “want” to use. A “necessary evil.”

    That kind of statement doesn’t fly well, in a community of “Inspector 34”s, but it applies to those we like to call “customers.”

    by ChrisMarshallNY
  • Isn't high quality defined by how easy it is to maintain as the scale grows? I feel there is a disconnect between the "quality as perceived by developers" and the "quality as experienced by designers and users."
    by d-yoda
  • Quality software meets its requirements. Both functional and non-functional. Of course our industry still cannot quantify non-functional requirements, or discover a way to predictably implement functional requirements.

    So all that remains for our so called “engineering” discipline, is an answer that says something that doesn't break a lot.

    by aryehof
  • “Zen and the art of motorcycle maintenance” is a good read on the topic of Quality.
    by inatreecrown2
  • > Quality is impossible at scale

    That's a "yes and no" thing. Handmade quality, yes, but some companies get pretty good at finding a "sweet spot," between better-than-average quality, and "Rolls Royce" quality.

    Source: I worked for a company that was pretty much renowned for Quality. We made stuff that is pretty near the top shelf, but still a rung or two under the top.

    It's not easy.

    Also, customers are willing to pay for garbage. As long as that continues, garbage producers will drive quality producers out of business.

    by ChrisMarshallNY
  • Quality is the ratio of the value you derive from the software to the cost to you of using it.

    Most typical quality attributes can be subsumed under this schema.

    If the software costs too much to change because the architecture is poor, that reduces the quality.

    If the interface is poor or it is slow unnecessarily, it costs you more time to use it, and that reduces its value to you and hence its quality.

    If the software is insecure, you may actually lose privacy or even money using it.

    If the software is not robust, you run the risk of losing data and time, etc. when using it

    by prmph
  • A more rigorous definition of software quality can be found in ISO 25010.

    > The quality of a system is the degree to which the system satisfies the stated and implied needs of its various stakeholders, and thus provides value. Those stakeholders' needs (functionality, performance, security, maintainability, etc.) are precisely what is represented in the quality model...

    Here is a decent summary: https://iso25000.com/en/iso-25000-standards/iso-25010

    Not exactly software quality, but adjacent, is the capability catalog of dora: https://dora.dev/capabilities/

    Dora is about 'software delivery and operations performance' and has a vast body of empirical research underpinning it.

    by Lutger
  • I tend to agree with a few others here, Quality is not just the absence of problems, it is something deeper.

    For me it means care and attention were paid while developing, the rough edges have been smoothed off for want of a better phrase. This doesn't mean using the latest and greatest framework or library, usually quality will come from a deep understanding of the basics and concepts like design patterns .

    You can spot quality code in the same way to can tell a fake Rolex from a real one but the quality of the movement.

    by kwakker35
  • Right off the bat, I disagree with the assertion that software quality is merely a concept of how it functions now. In reality software is a living thing and quality is so much more than whether there is a glaring issue right now.
    by christina97
  • I assume this is written by a UI designer or something, and it certainly feels like "notes" and not a cohesive article. Claiming "The six signals of quality in software" and then listing only user-facing concerns and including subjective items like "Beauty: Is the software as aesthetically pleasing as possible?" is questionable.

    I'm interested in quality, but I didn't find these notes enlightening, and couldn't even finish the article.

    by chickensong
  • Yeah, when a software focuses on beauty I only have to wonder what they sacrificed to achieve it.
    by LoganDark
  • > Some people don’t care enough > > The more people you hire, the more likely you are to hire people who don’t care enough about good interface design. Good interface design needs to be valued by everyone who can affect the work. That includes developers, designers, product managers, and often the CEO.

    I know where you're going with this, but here's a twist:

    A CEO who cares about interface _design_ is path to micromanaging and pain. A CEO should care about interface _designers_, who are (hopefully) the people trained on how do it well.

    Even better: CEOs should care about developers with UI/UX skills, because too often CEOs adopt designers like a pet and keep them busy 24/7 asking for mockups.

    by manoDev

Related stories