Live data from Hacker News

Ask HN: Why is software quality an afterthought for many people/companies?

news.ycombinator.com

81–90 of 100 posts

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#81
Many software companies fail outright. Other enduring bad software delivery outfits enjoy specific types of subsidies or captive pricing powers until they fail. Those are different cases.

Outright unsubsidized failures that never deliver any product to customers are mostly functions of communicative challenges. The opacity of costing for simple speed/space or protocol adherence engineering decisions is easy to underestimate. Business actors will nod and agree to anything that sounds good and give wrong signals. Others wave hands frantically around every buzzword and easy windfall demanding features. Many purchase agents subject to hype have no idea what they are buying and fetishize wasted software LOE. Training is routinely shortchanged for industries with high turnover.

Accept failure and then low quality as the norm. Then seek team members, suppliers, channel partners and customers around new or rekindled software with needs to focus intensively for 2 months and then 24 months. Most enduring software requires stakeholders more than customers. Leave other endeavors up to researchers and understand what capital resources amplify or do not amplify.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#82
post #43

Earlier quoted context omitted.

I've managed developers for the same software product (accounting system) over the last 15+ years. That amount of time gives you some perspective. A common thing that new hire developers do is call for "a complete rewrite", they do this because when they first approach a large old code base, its daunting and seems impenetrable. Of course they are right, but naive in thinking a "rewrite" will help. Any new rewrite wil…

> once all features and edge-cases are accounted for. But one of the benefits of a rewrite is that you can dump all the features and edge-cases that are no longer required. Or fold old edge-cases into new generalities because the business has changed since then. > the real world is messy, very messy. Cannot disagree -but- it's nowhere near as messy as the people (often those who are to blame) defending the byzantine…

>> the real world is messy, very messy.

> Cannot disagree -but- it's nowhere near as messy as the people (often those who are to blame) defending the byzantine software stacks using that argument.

This. As a still relatively young developer, I can almost guarantee you that the initial reaction of "nuke it from orbit!!!" doesn't come from a couple of minor abstraction problems. You get this reaction when every second bug you try to fix ends in a trip to Klendathu.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#83
In my experience, it seems like people who don't have much hands on experience are leading the show, and don't realize the value in well designed, clean code in minimizing bugs and and decreasing development and maintenance cost in the future.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#84
post #68
post #23

Earlier quoted context omitted.

Only thing I can add (indirectly covered in your comment) is that software companies are competing with each other too. So once quality vs. price bar gets set, it is hard for another company to offer a better quality while asking for a higher price. This is one of the reasons how a lot of software has gotten to ad-funded. Dan Ariely (author of the book Predictably Irrational) called allowing free apps on AppStores to…

I think it is even worse than that. I would like to pay for all of my apps. I could not find any way on Android to filter out all of the free apps and just show ones that have a price.

Indeed. I am often happy to pay the developer for a better software, but no such thing may even be available.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#85
post #68
post #23

Earlier quoted context omitted.

Only thing I can add (indirectly covered in your comment) is that software companies are competing with each other too. So once quality vs. price bar gets set, it is hard for another company to offer a better quality while asking for a higher price. This is one of the reasons how a lot of software has gotten to ad-funded. Dan Ariely (author of the book Predictably Irrational) called allowing free apps on AppStores to…

I think it is even worse than that. I would like to pay for all of my apps. I could not find any way on Android to filter out all of the free apps and just show ones that have a price.

You obviously don't want to pay for the same app+crap currently offered for free, but the purveyer would happily offer it for a fee. What you say you want isn't actually what you want. What you want is a quality filter. And that is what Apple claims to provide, and Google intentionally does not.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#86
post #32
post #23

Earlier quoted context omitted.

Only thing I can add (indirectly covered in your comment) is that software companies are competing with each other too. So once quality vs. price bar gets set, it is hard for another company to offer a better quality while asking for a higher price. This is one of the reasons how a lot of software has gotten to ad-funded. Dan Ariely (author of the book Predictably Irrational) called allowing free apps on AppStores to…

Theoretically software products could compete on "quality", but this is quite rare because it's hard for the customers to measure. See https://en.wikipedia.org/wiki/The_Market_for_Lemons I don't agree with the idea that free apps are inherently bad - that would rule out Open Source / Free Software, and it would also put the boundary vs "free" web pages in a strange place. "Free"+adsupported and "Free"+IAPs have certa…

Ariely was talking about free crapware, not community ware. But even opensource only works in the community. Once you go to apptore you get tons of derivatives of open source stuff, laden with crap layers

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#87
post #8

Software development is, apart from a few rare outposts like GOV.UK, conducted in the private sector for a profit. That means that the number one consideration for the software is profitability. For internal-only software, this means that cost is the prime consideration. In support of that, often software startups are trying to capture a winner-takes-all market, so time-to-market is critical. Thirdly, consumer protec…

I just made a general comment above, but your message is very well put about software in particular. Reading along with HN for a few years now is making me more terminology-oriented in areas of coding and capitalism, two of the major themes. So to me it's only software if it's intended for sale (or profitable distribution), otherwise it's just computer programs. Same with hardware, if it's not built for profit then i…

OK but no one else uses your idiolect, so it's just making it hard to communicate.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#88
post #78
post #8

Software development is, apart from a few rare outposts like GOV.UK, conducted in the private sector for a profit. That means that the number one consideration for the software is profitability. For internal-only software, this means that cost is the prime consideration. In support of that, often software startups are trying to capture a winner-takes-all market, so time-to-market is critical. Thirdly, consumer protec…

> the security people can usually get it right Having worked for an AV vendor, I assure you that is not the case. Just check Project Zero[1], most of them do parsing of complex binary formats in kernel mode, 'nuff said. This is just one example, but all major vendors have had issues: [1] https://googleprojectzero.blogspot.ro/2016/06/how-to-comprom... ----------------- OTOH, there are a few individuals who show a grea…

Parsing binary formats in kernel mode isn't more dangerous than text. Taking user input as executable instructions in your host computing environment is dangerous.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#89
post #74

Earlier quoted context omitted.

> once all features and edge-cases are accounted for. But one of the benefits of a rewrite is that you can dump all the features and edge-cases that are no longer required. Or fold old edge-cases into new generalities because the business has changed since then. > the real world is messy, very messy. Cannot disagree -but- it's nowhere near as messy as the people (often those who are to blame) defending the byzantine…

>> reality is going to temper their enthusiasm after a decade or so. >I've been doing this professionally for two decades and my enthusiasm for "chuck it away and do it right" hasn't waned one bit. I think it's probably somewhere in between the two extremes. I think you should have good unit tests and then refactor parts of your code where you see better generalities, or where basic code cleanliness was disregarded b…

> throwing all of it away is rarely possible without endangering the profitability of the company

Well, obviously I don't mean "turn it off and wait for the new system to be finished". You build the new one whilst the old one is in maintenance mode and swap in new bits as and when you can.

For example, at current $WORK, the backoffice system is a horror show of overcomplex PHP that is riddled with bugs and no-one really understands how it all works. Replacing that would be a huge boon both humanly and monetarily to the company because CS use it heavily every day.

Re: Ask HN: Why is software quality an afterthought for many people/companies?

#90
They must believe that the consequences for making it an afterthought are not severe. Depending on what they are building they might be right or wrong about that.

I find that in bigger teams with more complex projects that are sold to the customers it’s not usually an afterthought, they take quality seriously usually, at least relatively. I can understand why it’s an afterthought for a small startup trying to see if they can even get customers but they have to be careful too, if they do get traction then quality should be taken very seriously. I can also understand why it’s an afterthought for some internal tooling, the consequences aren’t severe.

I run a cloud based automated test reporting app called Tesults (https://www.tesults.com) and I’ve worked as a software development engineer in test at large tech and game companies. Based on my experience reporting is definitely an afterthought and this makes testing in general an afterthought sometimes. You need a way to keep on top of failing tests and have some measure of the problems that are being discovered. Especially when it comes to the modern agile style way of working where constant check-ins are made.

Another issue is that a lot of testing now (particularly for performance and automation in general) requires testers to be engineers and in some organizations this still isn’t understood. The manual testers are still required of course for UI/UX testing but there is definitely a shift in this area and in games at least it’s taken a long time to understand that.

Post reply on HN