logoalt Hacker News

nradov • today at 3:04 PM • 1 reply • view on HN

Somehow Garmin is even worse than Apple in that regard. Their mobile device hardware is (generally) quite good: robust and reliable with lots of little touches that serious athletes appreciate. But somehow they just can't get their act together on the software quality side. Everyone knows not to buy a new device at launch because it will suffer from frequent software glitches and crashes which take them at least a few months to fix. And even then, new releases frequently have regression defects that break existing features. Whether this is a deliberate choice or just general incompetence I have no idea.


Replies

bunderbunder • today at 3:24 PM

I don't like the "deliberate choice or general incompetence" framing. It just isn't useful. What's both more likely and more interesting is to speculate on the specific mechanisms and forces that might lead to this sort of situation.

For example, perhaps the knowledge that firmware updates are possible for modern consumer devices means that the software teams have a higher risk tolerance when it comes to feature creep. They've been able to fix bugs in the past, and it was no big deal. It certainly wouldn't involve scrapping existing inventory or retooling anything in the production line like you might have to for a hardware defect.

Or, and this reflects my own experience as a software person, perhaps broader changes in software development culture are partially to blame. 15 years ago one of the first lines of defense for the team I was on was the project manager. As the one person whose only job was keeping a more holistic eye on the value chain, she often caught latent quality risks (e.g., the potential for two different in-development features to adversely interact) long before anything made it to QA. Nowadays most companies, in a lovely iteration of the doorman fallacy, have nixed that role because they believe Jira can do the job.

I've got similar feelings about Scrum. I have been on Scrum teams that were great at delivering consistently high quality software. But they were the exception. The more common situation is people rushing to merge a glut of changes on days n and n-1 of an n day sprint, every n days, forever. Which, regardless of what any manager says, is how they're de facto expected to behave. Taking two or three more days to get the job done properly would screw up the metrics on some KPI dashboard.