Friday, September 25, 2020

The Need for Stable Foundations in Software Development

Maxime Chevalier-Boisvert:

My employer was kind enough to provide me with a top of the line MacBook Pro. It’s a beautiful machine with 6 CPU cores, 32GB of RAM and a 4K display, the most powerful laptop I’ve ever owned and a valuable tool in working from home. However, unfortunately, the slick machine suffers from a number of software problems.

For one, you can charge it using any of the 4 USB-C ports, but you really should only ever charge it from the right side. Another issue I frequently run into is that I have an external monitor, and despite configuring this as my primary display, the dock will randomly jump back to the MacBook’s monitor, until I go into the settings and move the dock to the right, and to the bottom again, at which point it goes back to the external monitor, until the next time it decides to randomly jump ship. A third issue is that whenever I reboot, it stays stuck early in the boot process, displaying the white Apple logo, and does nothing. It doesn’t complete the boot process until I unplug my USB-C devices. There are more problems, I could go on.

Apple isn’t the only one with these kinds of quality assurance problems. […] Why is it that we live in a world riddled with bugs?

Nikita Prokopov:

Jay Sitter in his article People expect technology to suck writes about people who keep using tech despite heavy annoyances like very dim screen or constant popups and not doing anything about it.


And I would agree: if it was just a single case, of course, they should’ve done something about it! The point is, this happens all the time, every day, multiple times a day, and one person can dedicate only so much time to dealing with it. The stream of minor annoyances is so large people just got tired of dealing with it! And no, there’re no better alternatives.

To prove my point, I decided to record every broken interaction I had during one day.


Update (2020-09-28): See also: Hacker News.

Nick Heer:

I maintain that, while the number of bugs and problems users experience is linear, their understandable frustration is exponential. It’s no wonder they have learned to tolerate poor-quality work.

8 Comments RSS · Twitter

For the Dock thing, it jumps if you mouse down into the bottom of the secondary monitor. You get it back on your primary monitor by, you guessed it, mousing down into the bottom of your primary screen.

Less code & fewer code changes = fewer bugs.

But no one cares about that anymore. Let's change your APIs and your CPU! Oh, you don't speak Swift as well as you do Objective-C? Oh, you don't read ARM assembly as well as x86, so you can't debug as quickly? Well, never mind! Let's add more people to the project. These younger warm bodies with a pulse will do wonders! Isn't that blue hair and those nose rings such a good indicator of their tech-savviness? They just graduated from a code-bootcamp!

>Apple isn’t the only one with these kinds of quality assurance problems.

But they are the company that promises (whether implicitly or explicitly) that their products "just work". Sometimes it's true, but it's too often not -- especially in recent years. And when you do have a problem, it's nearly impossible to fix because Apple has completely hidden the inner workings from user view.

Simple things like iCloud sync are confusing because there's no way to tell if a sync is actively in progress and there's no way to force a re-sync. Even Apple's own tech support is often clueless on how to fix software failures. At least with other systems you can dig more into the internals and see what's happening. Or you can find other people online who have the problems and have found a solution.

Often when I have a problem with Apple software, I find lots of other people having the same issue and nobody has found a solution. Pages and pages on the support forums of people encountering software problems and nobody can get an answer from Apple Support via phone or in the stores (or you get completely inane and insulting "solutions" from the helpers on the Apple support forums who take zero time to actually understand the issue. Like no Frank, I don't need to Reset Network Settings or reboot the device for the 10th time, as I already explained in the original post).

5 years into, USB 4 will be the last time I am giving it a chance. If manufacture dont get it done properly, we will start a massive campaign against it. Bring back the old Power Port and Video Output for simplicity.

Ben G: "But they [Apple] are the company that promises (whether implicitly or explicitly) that their products "just work"."

What are you talking about? Every tech company has stolen this line and now claim it to be true of their products as well. The definition for "IT JUST WORKS" at is a video game designer at Bethesda describing Fallout 4. Microsoft is using the headline "It just works" on their Windows 10 webpage today:

(Microsoft even named a C++/.NET interop mechanism "IJW", but I hear that's no longer the recommended interface so I guess IJ didn't W well enough for them.)

As for Apple being the only one that "implicitly" promises this, what does that mean? Do you think Google and Microsoft imply with their marketing that their products don't work?


"What are you talking about?"

If you don't know, you haven't been paying attention.

This is what I like about the current crop of "da youngs." Anything that happened before 2010 didn't happen, 2010 is their "year zero."

Yes Ted, Apple was the first company that really pushed "it just works." Maybe google "I'm a Mac, I'm a PC" and look at those old Apple commercials from ancient times.

Sadly tho' there's no one in Apple's currently "young anime hair" workforce that remembers this either, so they're making all the same MSFT mistakes like NIH. Sometimes I even think that it's a testament to the previous guards' engineering that macOS works at all given the "fixes" that Apple has done to this point. Things that nobody asked for like that goofy "partitioning of /System", "Notarization" (which malware devs just bypass), obfuscating logs, etc.

Nobody asked for any of this, Apple is just making the same mistakes MSFT did when they were "the dominant platform that could do no wrong."

We've all seen this movie before. What did Windows users do? They "hung back", some to the point of Windows XP up until a few years ago.

Compared to Mojave (somewhat OK, a bit buggy), Catalina (still "Crapalina") or the gumball UX of Big... Sur, High Sierra may be the last "sane" macOS Apple made before foisting NIH ("Not Invented Here" for you youngs) and the incessant "push to services" on what should be a stable, development platform.

And now (reading Macintouch and Howard Oakley) evidently Apple was too aggressive (or panicked?) in their "Agile" testing cycle, so they may have to "re-issue" Catalina and Mojave updates?

Apple needs something back. Maybe customer focus? Better, if not "hands off" treatment of developers?

I have no idea at this point.

I'll be over here, running my "fleet" on Catalina (not by choice) and High Sierra (the last "stable" workhorse OS) waiting for the dust to settle.

RawBob: "If you don't know, you haven't been paying attention."

OK, well, could you explain it to me? What fact did I overlook that I should have been paying attention to? I presented the state of IJW as I see it. It's not 2005 any more. Everyone claims their software Just Works, and they're all wrong.

Leave a Comment