zlacker

[return to "Driving engineers to an arbitrary date is a value destroying mistake (2020)"]
1. onion2+85[view] [source] 2021-08-06 08:37:00
>>vimes6+(OP)
The problem that the article doesn't address is that users don't actually seem to mind using terrible software so long as it solves the problem they face better than not using it. I could list literally hundreds of half-assed, broken, bloated applications that I've encountered in the past 25 years that have done very well simply because they kind of solve a problem a bit for the user.

Pushing out something completely broken that doesn't do what it's supposed to is definitely not going to work (duh!). Pushing out an app that solves the problem of managing shopping lists that has a bug where it doesn't work given a particular set of circumstances will still lead to many people using it if the users don't have any alternatives and it's better than using a piece of paper.

Software quality is important to companies because it means that they can spend more time building features instead of fighting fires, and because low quality represents a threat that a competitor could launch a better, less buggy app. Users mostly don't care so long as the app works well enough to do what they need it to do (but they're not dumb, they'll still pick the least buggy option if there are alternatives..).

A high level of quality in software is not important unless you're entering an already well-served market. I wish it was.

◧◩
2. ChrisM+Jy[view] [source] 2021-08-06 12:53:47
>>onion2+85
Personally, I write software that I consider extremely high-quality. The folks that use it, seem to agree. It isn't eye-candy fancy, but it works very well, in a not-in-your-face manner.

The idea is that it does what it says on the tin, without fanfare, robustly, usably, accessibly, localizably, and dependably; providing a user experience that gets out of the way of the user, in a manner that does not surprise the user (even "good" surprises can be an issue. Boring software can be just what the doctor ordered).

In my book, that's the definition of "quality."

I'm working on an application that has been over a year in the making. Its functionality is something that I could have popped out in a month, but making sure of the Quality of the app has necessitated that I spend a great deal more time, "polishing the fenders."

If this were a commercial app (it isn't), then it would have been unbearably expensive for a startup.

I tend to write test harnesses in a day or two, that have similar levels of functionality to this application.

High Quality is significantly more expensive than even "decent, but lesser" quality.

◧◩◪
3. tkiolp+aC[view] [source] 2021-08-06 13:12:29
>>ChrisM+Jy
You worked on that app yourself alone, right? If so, I believe your app belongs to a different plane of existence. Programming (one programmer working alone without too much money/time pressure imposed by others) is quiet different from software engineering (multiple programmers, stakeholders, designers, etc., with time and money constraints). Everyone loves programming (and so doing programming usually leads to high-quality and useful products), almost everyone hates software engineering.
◧◩◪◨
4. ChrisM+aD[view] [source] 2021-08-06 13:18:35
>>tkiolp+aC
Yes, I've been writing it alone, but my "alone" work is at a different level, from what many folks do. Approaching every bit of work I do as "ship," is one of my oddities. I have as much fun, shipping, as I do writing.

I consider everything I do, "engineering." Been doing that, all my adult life.

Feel free to look at the stuff I do (I link to it in my HN profile). The app I'm working on isn't there (yet), but a number of its components are. It's still "under wraps."

◧◩◪◨⬒
5. grepfr+BE[view] [source] 2021-08-06 13:25:40
>>ChrisM+aD
I hear you, but this problem becomes exponentially harder as your engineering org grows.

I witness on a daily basis PRs that have no body getting merged with absolutely zero comments and a blanket approval as long as it passes our (broken) CI pipeline. I witness obvious poor quality in the code, but engineers want to seem like they are working and will just blanket approve PRs, while i'm in the middle of writing up my code review denying the PR.

If you are a developer on a team and want your codebase to be high quality, you end up no longer writing the code and instead spend all of your time gatekeeping via code reviews. This leads to burn out.

◧◩◪◨⬒⬓
6. ChrisM+DF[view] [source] 2021-08-06 13:30:35
>>grepfr+BE
Yeah. It can be a real challenge, ensuring quality on a team.

The obvious answer, is to hire experienced, skilled, capable engineers, and instill in them, the same reverence for Quality that you have.

Like I said, Quality is expensive. Very few companies like to pay the premium.

[go to top]