Archive for December 16, 2019

Monday, December 16, 2019

Catalina Removes Malware Assurance

Howard Oakley:

If you’ve updated to macOS Catalina 10.15.2 [actually, 10.15.1 —MT] and installed any notarized apps since, you might have noticed that something has gone missing. Do you remember that dialog shown by Gatekeeper when you first open a notarized app, telling you that “Apple checked it for malicious software and none was detected”? Well, that sentence has now vanished. Instead, that dialog now looks very similar to the pre-Catalina dialog for non-notarized apps.


If you then go and check that dialog against Apple’s support note explaining how Gatekeeper works in Catalina and earlier, you’ll see that this new dialog doesn’t appear to exist in Catalina. You could be forgiven for assuming that your system had been subverted by malware, or the app you were just trying to open wasn’t notarized at all.


Maybe Apple wants to distance itself from the reliability of its checks for malware now.


Update (2019-12-17): Norbert M. Doerner:

I really wish they would change the massively offensive text of the scare window when launching non-notarized apps. I take great offense in Apple placing the word malware in the same sentence as the app name. Unacceptable.

Catalyst and Cohesion

Jack Wellborn:

Developers using first party tools from Apple shouldn’t have to swim upstream to build cohesive Mac versions of their apps. I am not saying that the existence of any incongruous Catalyst ports is worrisome — incongruous ports are inevitable and Catalyst is an opportunity to make them better — what’s worrisome is that incongruity seems to be the default with Catalyst.

Look no further than Apple’s own Catalyst ports.


The crux of the issue in my mind is that iOS and Mac OS are so fundamentally different that the whole notion of getting a cohesive experience through porting apps with minimal effort becomes absurd.

Kind of like a toaster-fridge.


Update (2019-12-19): Nick Heer:

It worries me that some of Apple’s own MacOS apps lack cohesion; and, though Catalyst is the purest expression of this concern, it is not solely at fault. The redesigned Mac App Store that debuted in Mojave certainly looks like a Mac app, but it feels and functions like a crappy port from some distant platform.


Update (2019-12-20): John Gruber:

I’m just not seeing it with Catalyst apps. They almost all look and feel and work wrong. I’ll pick on Twitter because they’re a big company. They’ve made a bunch of improvements to their Catalyst Mac app in the two months or so since it shipped. Some really preposterous shortcomings in the initial release have been fixed in a short amount of time, and I get the impression — both through their public comments and some private ones I’ve exchanged with developers on their team — that they’re trying to do the right thing and make Twitter for Mac a good Mac app, not just the iPad app running in a window on the Mac. But the release notes for the latest update this week include new features like support for scrolling with the Page Up, Page Down, Home, and End keys. It’s kind of crazy that support for those keys wasn’t there from the start. 15 years ago you’d almost never find a Mac app that didn’t support them.


In short, I remain unconvinced that standard UIKit iPad apps are a good starting point for good Mac apps. But it’s pretty obvious — and should have been right from the start — that nonstandard not-really-using-UIKit iPad apps make for a terrible starting point for a good Mac app. Developers can make it work — as a programmer friend once told me, “It’s all just typing” — but it’s so much work it seems to defeat the entire “Just click a checkbox in Xcode” premise and promise of Catalyst.


Douglas Hill:

The standard UIKit scrolling class, UIScrollView, does not provide any keyboard-driven scrolling functionality.


Developers need to use the undocumented input strings UIKeyInputPageUp and UIKeyInputPageDown and write their own code to scroll up or down by the correct amount in response to those input events.

In other words, you need private API to offer a good user experience, but private API is not allowed in the App Store.

Update (2019-12-23): Jesper:

“Project Catalyst”, the adaptation of iOS and UIKit unto macOS, is an unmitigated disaster. Maybe it didn’t have to be, but it definitely is. Let’s take one of the better in-box apps, Podcasts, as an example.


Matt Birchler:

I love native apps and prefer them in almost every case to using services in a browser. It’s just a better experience for me in most cases, and has the added benefit of integrating more seamlessly into macOS systems like notifications, keyboard shortcuts, and automation. However, my experience with Catalyst apps from third parties has been so bad that I have uninstalled every one of them and gone back to using the web.

Nick Heer:

It was somewhat concerning to see a collection of tech demos ship as user-facing apps in Mojave last year. But to have recurring complaints of basic MacOS features after a year — why the hell are picker controls still touch-based spinners? — is inexcusable.

Jason Snell:

With the arrival of Mac Catalyst this summer, as promised by Apple last year, the Mac has started to benefit from apps developers originally on iOS. But I predicted that it would be a major onslaught that would dramatically change the Mac forever, and this was my biggest miss. Some combination of a rough summer of developer betas and limitations of the technology itself mean that there aren’t nearly as many Catalyst apps as I thought, and a bunch of my favorite iOS apps still aren’t anywhere close to shipping Mac versions. Catalyst may still change the Mac forever, but it’s going to take a lot more than one year to make it happen.

Update (2019-12-26): Josh Centers:

What can you do with 40 GB of RAM? Have Apple News take up 28 GB of it.

Do Catalyst apps not do any sort of garbage collection?

Update (2020-01-24): Cédric Luthi:

Trying the Twitter app from the Mac App Store.

• There is no padding at all between my username and the gray focus.
• The keyboard arrows do not move the cursor at all.
• Pressing the tab key does not select the password field!

It confirms that Catalyst doesn’t give you much.

Dominik Wagner:

If you told me that Apple would seriously ship such an interface back in 2010 I would have been offended and called you a fool…

Steve Troughton-Smith:

Asphalt 9 shows exactly why Catalyst is so bad for games. It’s an interaction nightmare. Every key input triggers the system beep, the escape key rips it out of fullscreen instead of triggering menu or ‘back’, and the whole thing is designed without manual acceleration controls

Update (2020-02-04): Colin Cornaby:

Most of Catalyst this WWDC cycle has been me going “Well maybe I’m just a giant imposter because there should be a lot of issues here but I guess Apple knows better” followed by me going “Nope guess they don’t.”

Peter Steinberger:

Apple stopper commenting on my Catalyst bugs in November, there are about 30 open... it’s pretty frustrating to be dependent on a company that has a yearly update cycle when customers report bugs and expect a fix within weeks, not years.

Shopping Sucks Now

Casey Johnston (tweet):

Looking up “lined leather gloves” yields 40,000 results. On the first page, there are two different gloves listed, one for $17 and one for $60, that look exactly identical and come in the exact same colors. Both have the same exact star rating (4.5/5) and hundreds of positive reviews.


For a long time, our problem was there were not enough things to choose from. Then with big box stores, followed by the internet, there were too many things to choose from. Now there are still too many things to choose from, but also a seemingly infinite number of ways to choose, or seemingly infinite steps to figuring out how to choose. The longer I spend trying to choose, the higher the premium becomes on choosing correctly, which means I go on not choosing something I need pretty badly, coping with the lack of it or an awful hacked-together solution (in the case of gloves, it’s “trying to pull my sleeves over my hands but they are too short for this”) for way, way too long, and sometimes forever.


If big box stores represented the problem of the “tyranny of choice,” the problem is that now, somewhat suddenly, perfect knowledge of the perfect glove, for you specifically, exists, if you simply do enough research.


I’m realizing what I actually want is not the perfect glove; what I want is for the world to be small again.

It’s frustrating how long it can take, but I do like being able to (usually) find what I’m looking for. I think the keys are knowing when it’s worth spending the time to do a deep dive vs. “settling” with a quick decision; and knowing which area-specific sites to search, since Amazon doesn’t have everything nor always surface the best results.

Amazon reviews, as bad as they can be, have been extremely helpful overall. For example, they recently helped me figure out that almost all products in a particular category don’t work with 5 GHz Wi-Fi networks (the only kind my Google Wi-Fi supports).

Sites like Wirecutter are a great help. Although I don’t always agree with their picks, they at least get you started with an overview of the main options and what to look for. But they don’t always give you all the options. For example, Wirecutter’s humidifier review omits the entire category of console humidifiers. For less than half the price of their upgrade pick, I found a model that’s easier to maintain, has a 6-gallon tank (vs. 3-gallon for the largest they tested), and is much easier to fill (short hose from the faucet, no need to carry tanks around).

Update (2019-12-17): See also: Nick Heer.

Tony Brooker, RIP

Cade Metz (via Hacker News, Slashdot):

Mr. Brooker joined the Manchester lab in October 1951, just after it installed a new machine called the Ferranti Mark 1. His job, he told the British Library in an interview in 2010, was to make the Mark 1 “usable.”

Mr. Turing had written a user’s manual, but it was far from intuitive. To program the machine, engineers had to write in binary code — patterns made up of 0s and 1s — and they had to write them backward, from right to left, because this was the way the hardware read them.


In the months that followed, Mr. Brooker wrote a language he called Autocode, based on ordinary numbers and letters. It allowed anyone to program the machine — not just the limited group of trained engineers who understood the hardware.

This marked the beginning of what were later called “high-level” programming languages[…]

See also The Guardian, Wikipedia.

See also: Tony Brooker and the Atlas Compiler Compiler (PDF, via Hacker News).

Joining Apple Computer 40 Years Ago

Bill Atkinson (Hacker News):

I wanted to port the UCSD Pascal system to the Apple II. We needed to build software in a cumulative fashion with libraries of reusable modules, and Apple BASIC didn’t even have local variables. My manager said "No", but I went over his head to Steve. Steve thought Apple users were fine with BASIC and 6502 assembly language, but since I argued so passionately, he would give me two weeks to prove him wrong. Within hours I boarded a plane to San Diego, worked like crazy for two weeks, and returned with a working UCSD Pascal System that Apple ended up using to bootstrap the Lisa development.


I convinced project manager Tom Whitney that the Lisa computer needed to include a mouse in the box so we could write software that counted on a pointing device.


Steve Jobs wanted me to leave Apple and join him at Next, but I chose to stay with Apple to finish HyperCard. Apple published HyperCard in 1987, six years before Mosaic, the first web browser.