As Hardware Becomes Ever More Impressive, Software Suffers Rough Edges

I’m not sure if these are real questions or rhetorical. Just in case they are real…

Sounds like a matter of permissions. What do you see on your system? Here’s what I see:

$ ls -ld /Applications /Applications/Utilities
drwxrwxr-x+ 92 root  admin  3128 Jun 11 12:43 /Applications/
drwxr-xr-x+ 28 root  admin   952 Jun  9 09:47 /Applications/Utilities/

Both folders are owned by root:admin, but note the permissions. /Applications is group-writable, so anyone in the admin group (that is any, account you configured to be an administrator) can copy files there. /Applications/Utilities is not, so everybody must authenticate before copying files there.

I don’t know why Apple did that. Probably to make it easier for administrators to install software.

If you don’t normally log in to an admin account, which is a very good practice, then it doesn’t matter - you’ll be asked for an admin user name and password before copying files to either location.

Because the system doesn’t know if you deliberately installed it or if it got installed through some other means (e.g. malware). By making you confirm your intent, you have the chance to abort launching something that you didn’t install.

In the Classic MacOS world, some of the worst instability problems were the result of people installing “haxies”, including APE and SIMBL. Either because the extension was buggy, or because it interacted badly with other haxies that were all installed and running together.

Even if you know exactly what all the risks are, most people installing these did not (and still don’t). They’ll just read random forum posts by people advocating various add-ons and install stuff they don’t understand. And when the system becomes flaky as a result, they blame Apple, who has to spend a lot of tech support money to figure out that the user’s problem was self-inflicted.

Yeah, I’d also like to customize these things. But Apple has always been this way. They don’t want users changing the look and feel of the system, and they definitely go overboard with things like this. But this is nothing new.

Using new system permissions to block access might be recent, but as far back a System 7, Apple was known for shipping system updates that would revert any such changes, forcing you to redo it all after every update.

I’m not sure I know what you’re talking about. You can still download and install apps from any source. Apps need to be signed and notarized in order to launch the first time with a simple double-click, but that’s hardly a heavy pressure thing.

The App Store is so popular is because it is easier to distribute software that way than through other means. But there are plenty of publishers who distribute their software in other ways as well.

And how many non-experts will say “yes” to that question and then go crying to Apple’s tech support when they make a complete mess of their computer? Probably everybody.

This is as much an issue of reducing support costs as it is anything else.

3 Likes

And we all know how tight money is at Apple these days. Can’t overspend on support if you’re aiming for that $300B balance. ;)

In part, it’s because macOS is Unix, and Unix is a full multi-user operating system that supports remote login over an always-on Internet connection. It’s not that Apple doesn’t trust you, it’s that macOS can’t afford to trust anyone. Just like Unix never did.

We’re not in Kansas anymore, and Macs aren’t standalone devices that can be used only by one person at a time. This hasn’t been true since 2001, although the level of connectedness and the evolution of malware to attacks by organized crime have increased radically since then.

4 Likes

Absolutely. When you’re developing for real people who you actually know, and who will tell you when things don’t work well for them, you’re likely going to put more effort into pleasing them.

I’m not sure we can. Except for the “wow” factor. Unbox a new iPhone 11 Pro or Apple Watch or iPad Pro, and what Apple has done is just amazing. When they explain the technology behind Face ID or what happens with computational photography, I’m astonished. It’s just mind-boggling what can be done these days in silicon, and the industrial design is also fantastic. Who would have thought we’d have powerful computers with high-speed Internet connectivity in our pockets? That was science fiction not that many years ago.

Software, in contrast? I can’t think of anything that’s really knocked my socks off in a long time. Sure, there are apps that are impressive, and I think Discourse (what we’re using for TidBITS Talk) is an amazing piece of work, but most of what I see on the Mac and iPhone? It’s OK, but nothing special, and that’s especially true of Apple’s apps.

1 Like

I hear you, Adam. Just today I was reminded again of how great hardware can be. I have never wanted an Apple Watch, but this video still blew me away.

1 Like

Apple’s camera app for the iPhone remains remarkable and gets ever more so. It takes a very small sensor and cheap lenses and now using machine learning creates some remarkable images and videos from them in a very simple to use app. How can you not be amazed by Apple’s image processing software?

But the OSes themselves (for all of the grumbling about them) remain remarkable imo. Stable, providing ever-more underlying APIs to developers to give us ever-more capable apps. Besides mail on iOS and MacOS, which could definitely be made better, Apple’s apps are stable and provide decent, basic functionality. If you need more, there is probably a third party app that provides more.

Also remember all of that great hardware requires software to actually be used. Yes, Apple Watch is pretty great, but it’s not just great hardware - the firmware and OS services that make that hardware works are also pretty remarkable. (And of course people still find things to complain about.)

I don’t mind Discourse but people still wish it was better at what it does, and I don’t think it’s a great example of specialness.

2 Likes

Interesting – just in the last few days, Audio Hijack knocked my socks off, as did the automatic transcription feature in Zoom. Going back, with the last year, the scanning in Scanner Pro took out at least one sock. Those are just what I can think of at the moment.

Also, I’ll note what didn’t knock my socks off (in this context, a good thing). On March 13, I walked into my home office, plugged in my MacBook Pro, and haven’t gone into work since then. And you know what? MacOS just worked – handled all the new requirements I threw at it in quarantine without missing a beat, and was a large part of why I could finish my spring semester classes without losing my mind. That was pretty amazing.

4 Likes

Two more that knock my socks off on a regular basis: Panorama (and the enterprise version is just around the corner) and Dorico, a music engraving program, which in just a couple of years has eclipsed anything else available and gets regular and spectacular updates. What they have in common is small dedicated teams who know their craft phenomenally well. Panorama is essentially a one-man shop; it has been going since the early days of the Mac and was recently rewritten from scratch. Dorico is a small team functioning in many ways independently within a large corporation (Steinberg). And both have phenomenal and continuous contact with the user base.

1 Like

Other sock knockers:

Fantastical
Devonthink Pro
Alfred
Audacity
Nisus Writer Pro

I don’t see that as being the Camera app, but being the iPhone’s hardware. The app doesn’t provide any of those features without the iPhone’s custom silicon, which makes it less capable on older iPhones.

Actually, that link is a perfect example of why I like Discourse. It’s pretty neat from a user perspective (which is why I keep encouraging people to use it directly rather than via email), but from an admin perspective, it’s freaking brilliant. Hundreds, perhaps thousands, of settings, all completely searchable and configurable. Great logging, reporting, and statistics. And a development team that responds quickly, fixes bugs, and interacts with users.

@Simon made that suggestion, I conveyed it to the developers via their public Discourse forum, and although it hasn’t been implemented in the 24 hours since I posted, the fact that Jeff Atwood, one of the co-founders of Discourse and the guy behind Stack Overflow, said it was a good idea suggests to me that we’ll see it happen in a future version.

No one is saying that ALL software is terrible or that ALL hardware is great. That would be silly. We regularly write about apps we think are great and want to tell you about, and we’ve slammed the butterfly keyboard for years. There are obvious exceptions. The point is merely that there is a lot of truly amazing hardware out there that doesn’t seem to be matched in quality by much of today’s software.

2 Likes

Interesting that you don’t see the software involvement. Perhaps that’s a perfect example of great software: so well done that you don’t think of it as software.

Yes, the A12 and A13 have massive neural network coprocessors, but, you know, it’s not just hardware. There is an amazing amount of software engineering involved along with the hardware engineering.

1 Like

Obviously, there’s an insane amount of code that makes hardware possible, and to the extent that the hardware works well, that code must also be working well.

What we’re talking about here, however, is software that you do see and interact with. You see it crashing, behaving badly, and violating interface guidelines. That’s the problem.

Oh wow, I remember Kai’s Power Tools. I still have a few old Photoshop files of stuff I produced using KPT. And by ‘using’, I mean ‘randomly clicking stuff’.

You can see echoes of that user interface in modern versions of KPT’s one-time sibling Poser. (KPT was sold to Corel when MetaCreations dissolved its software range, while Poser passed through several hands before eventually finding a home at Renderosity.)

I don’t remember that version of the Apple DVD player, but I recall that both Windows Media Player and RealPlayer went through similar phases of in-your-face user interfaces.

1 Like

Another thing to consider is the completely changed pace of development. This has been mentioned by others above, but this example really underscores it. I was reminded of this issue when reading Brendan Shanks’s post on WWDC 1990.

System 7 had been ‘introduced’ a year prior, but then didn’t ship until one year later. So it shipped two years after it was announced (and more than three years after System 6 was released). There were two years of WWDC that focused on a version of the OS that wouldn’t ship until quite far into the future.

Add to this the fact that the ‘OS’ today includes loads more features and interactions, and many more (significant) apps. So there was much more time in the past both for Apple to refine the OS before releasing it, and also for app developers to refine their upcoming apps.

I’m not trying to pass judgement on which is better, but we simply live in a different world now. No one would accept three years between OS releases (there were some updates to System 6, but only the kind of bug fixes and new hardware support we get with 0.0.x updates now). And no one would accept an OS as ‘bare bones’ as System 7. Or some people would accept this, but not enough and it wouldn’t be competitive.

1 Like

I get what you’re saying and I won’t disagree with it overall, but I still think this statement is not true for everybody.

I personally would probably be fine if major OS releases were released on a roughly 3-year schedule. I know that the present 1-year cycle is completely exaggerated. I’d prefer Apple polish things and make everything work reliably before releasing. Deliver on your promises. If that takes more time, take the time. I never subscribed to this ‘ship broken, fix later’ mantra.

Bugs can be fixed in between major releases. If major new apps are needed to enable connectivity with other devices those too can ship independent of the major OS update cycle. If new software is required to make new hardware run, add that to that hardware. Don’t screw with everybody else’s setup.

My hunch here is that precisely because of the complexity of macOS it has become so difficult to keep clean and stable. There is no need to integrate every last feature. There is no need to bundle every last functionality. Stick to the 80% basics, let dedicated apps or third parties cater to the remaining 20%. Heck, Apple can deliver those 20% themselves if they want, but disentangle it from the 80% bulk of the OS. Just make sure that latter part is rock solid and squeaky clean. Only once that is successful, think about bells and whistles.

1 Like

I did try and qualify ‘no one’, as that’s clearly an exaggeration, I realise some people would be fine with this. But I think Apple would get slated, and it wouldn’t be viable. We’re not talking about 3 years between ‘major releases’, but 3 years between any new features. And spending two of those years talking about the features you’re working on, but not releasing them. As I say, I can’t see this being viable these days.

I’d love a slower pace and more polish, in fact I’m kind of on that as I’ve given Catalina a miss. But 3 years is probably a bit much.

I think a lot of people would. Note the existence of “LTS” (long-term support) releases of Linux distributions. These are typically released once every 2-5 years, with little more than bug fixes and security updates between releases.

These are very popular, especially in business environments where a stable platform for running apps is far more important than having the latest and greatest eye candy. That’s the same reason I only run LTS distributions on all of my Linux PCs and VMs - I don’t have the time to go learn a new GUI every time some paradigm briefly becomes fashionable.

3 Likes

A lot of people just don’t upgrade their macs until the next new version is due to come out, perpetually being one or two releases behind. Just because you can upgrade on day one doesn’t mean you have to. Apple provides security updates going back 3 versions and they don’t twist your arm to upgrade on Mac like they do with iPhone.

Brief relevant comment by Alan Jacobs at https://blog.ayjay.org/dear-apple/

  1. Apply your existing rules consistently.
  2. Alter those rules to promote maximum creativity and ambition in Mac/iOS software development.
  3. Take a smaller cut so more developers can stay in the game.

Steve Jobs was a jerk, a borderline sociopath, certainly narcissistic. But he cared about quality. Few people do. They care more about cheap.