Archive for September 2022

Thursday, September 29, 2022 [Tweets] [Favorites]

Sunsetting Google Stadia

Google Stadia (3 months ago):

Stadia is not shutting down. Rest assured we’re always working on bringing more great games to the platform and Stadia Pro.

Jennifer Elias:

As Google tries to navigate an unfamiliar environment of slowing growth, cost-cutting and employee dissent over cultural changes, CEO Sundar Pichai is finding himself on the defensive.

At a companywide all-hands meeting this week, Pichai was faced with tough questions from employees related to cuts to travel and entertainment budgets, managing productivity, and potential layoffs, according to audio obtained by CNBC.

Phil Harrison (Hacker News):

A few years ago, we also launched a consumer gaming service, Stadia. And while Stadia’s approach to streaming games for consumers was built on a strong technology foundation, it hasn’t gained the traction with users that we expected so we’ve made the difficult decision to begin winding down our Stadia streaming service.

We’re grateful to the dedicated Stadia players that have been with us from the start. We will be refunding all Stadia hardware purchases made through the Google Store, and all game and add-on content purchases made through the Stadia store. Players will continue to have access to their games library and play through January 18, 2023 so they can complete final play sessions.

Bruno Dias:

Stadia barely lived long enough that if you started making a game for Stadia just as the service launched you might, just might, have been able to ship just in time for it to exist for 2-3 months before the plug was pulled.

Google was like “we’re gonna have original content on this thing” then they shut it off before it lived long enough to see a typical game dev cycle

this was an entirely predictable outcome everyone saw coming from miles away

Mike Rose:

We have a game coming to Stadia in November.

[…]

To all the people who kept begging us “PLEASE BRING YOUR GAMES TO STADIA” — this is why we didn’t haha

Hours later and I still have no email from Stadia, and no clarity on what’s happening with our games, deals, anything

Really would have been nice if they’d told partners, or even got in contact with us by now?

See also: Killed by Google.

Previously:

Microsoft Discontinuing SwiftKey for iOS

Emma Roth (via Tom Warren):

Microsoft confirmed that it’s removing SwiftKey from the Apple App Store and ending support for the iOS version of the keyboard app on October 5th.

[…]

The move to discontinue SwiftKey on iOS comes after months of user complaints that seemingly went unresolved. On top of that, users noticed that Microsoft hasn’t updated the SwiftKey app on iOS in over a year, prompting suspicion over whether the app had been quietly discontinued.

Haseeb:

True reason: Apple API are not developer friendly anymore. Even for a mega corp.

Kosta Eleftheriou:

If you’re wondering why SwiftKey is being discontinued on iOS but not on Android, look no further than Apple’s absolutely, insanely terrible 3rd-party keyboard APIs.

Previously:

Check Your App IDs for Unused Capabilities

Jeff Johnson:

When I submitted the app to App Review, Apple silently added the game center entitlement to my app, even though the app didn’t have the entitlement when I submitted it. And then App Review rejected me for it!

[…]

While I was looking through my App IDs, I also found that the iOS version of StopTheMadness had the Push Notifications capability enabled. The app doesn’t use push notifications. So I’ve disabled that one too, in case App Review is looking for more rejection reasons.

I recommend that App Store developers go through your App IDs and disable any unused capabilities, otherwise you may be receiving unexpected rejections of your submissions.

This reminds me of the time my app kept getting rejected for crashing at launch, when that never happened on my Mac. After several months and a DTS incident, we eventually determined that a bug in App Store processing was removing an essential entitlement from the build that I had submitted before passing it along to App Review.

It’s true that when App Review identified an issue with my submission, I was given an opportunity to address the issue in my next submission, without having to fix it immediately. However, it’s false that my bug fixes were not delayed. I received the rejection email from App Review at midnight my time, after I had already gone to bed. I saw the email in the morning and replied to App Review, but then it took four more hours for my submission to go back into review. So there was a delay in approval of more than ten hours.

Previously:

App Store Rules for NFT Apps

Aidan Ryan (tweet):

With NFT volumes tanking along with the broader crypto market, marketplace startups could use a boost from using mobile apps to sell their wares. So far, though, most see some obstacles, including the up to 30% commission Apple charges on in-app purchases, as well as pricing conventions that are difficult to apply to volatile digital assets.

The result is that NFT marketplaces don’t even think about selling through an app.

William Gallagher:

In the case of NFT trading between users, a typical marketplace takes just 2% to 3% of the transaction. Under Apple’s rules, companies would lose heavily on every deal.

However, it’s not just the commission that’s an issue. The Information says that a number of NFT firms have the issue that App Store in-app purchasing must be done in dollars, or another physically-backed currency. It does not accept cryptocurrency.

Since the cryptocurrency exchange rate varies enormously, developers can’t just set an equivalent in dollars.

[…]

Perhaps backing up that opinion is how Apple reportedly delays approving NFT and crypto apps for the App Store. According to Falin, it took several months to get the Rarible app onto the App Store, as compared to mere days for the Google Play Store.

Florian Mueller:

It’s actually an understatement to say that Apple collects “up to 30% of the transaction”: the app tax even exceeds 30% under certain circumstances, plus developers are increasingly forced to pay for Search Ads as Apple places ads even on individual app pages.

Jessica Lessin, The Information’s founder, asks a spot-on question: “Are there whole segments of the new economy that aren[’]t going through the App Store?”

The founder and CEO of Epic Games, Tim Sweeney, describes this as Apple “killing all NFT app businesses it can’t tax, crushing another nascent technology that could rival its grotesquely overpriced in-app payment service.”

Previously:

Wednesday, September 28, 2022 [Tweets] [Favorites]

DALL-E Now Available Without Waitlist

OpenAI (tweet, via Hacker News):

Starting today, we are removing the waitlist for the DALL·E beta so users can sign up and start using it immediately. More than 1.5M users are now actively creating over 2M images a day with DALL·E—from artists and creative directors to authors and architects—with over 100K users sharing their creations and feedback in our Discord community.

[…]

We are currently testing a DALL·E API with several customers and are excited to soon offer it more broadly to developers and businesses so they can build apps on this powerful system.

johnfn:

It’s really amazing how DALL-E missed the boat. When it was launched, it was a truly amazing service that had no equal. In the months since then, both Midjourney and Stable Diffusion emerged and got to the point where they produce images of equal or better quality than DALL-E. And you didn’t have to wait in a long waitlist in order to gain access! They effectively gave these tools free exposure by not allowing people to use DALL-E.

Furthermore, the pricing model is much worse for DALL-E than any of its competitors. DALL-E makes you think about how much money you’re losing continuously - a truly awful choice for a creative tool! Imagine if you had to pay photoshop a cent every time you made a brushstroke. Midjourney has a much better scheme (and unlimited at only 30/month!), and, of course, Stable Diffusion is free.

I’ve usually heard that DALL-E’s quality is much better.

Previously:

Monospaced Digits in SwiftUI

Natalia Panferova:

We can see that the time within the text dynamically changes but the UI jitters as digits update. This happens because by default digits have proportional width and different digits take a different amount of space.

To stop the UI from moving when the time changes, we can apply the monospacedDigit() modifier to the Text. It will force all the numeric characters take the same width independent of the digits they display. The other characters will remain unchanged.

It’s one of my pet peeves when apps don’t handle this properly. I also prefer monospaced digits with static columns of text. Otherwise, it’s harder to scan numbers that don’t line up, and the edge looks ragged.

Reduced Stage Manager iPad Requirements

Nathan Ingraham:

Now, Apple is making Stage Manager work with a number of older devices: it’ll work on the 11-inch iPad Pro (first generation and later) and the 12.9-inch iPad Pro (third generation and later). Specifically, it’ll be available on the 2018 and 2020 models that use the A12X and A12Z chips rather than just the M1. However, there is one notable missing feature for the older iPad Pro models — Stage Manager will only work on the iPad’s build-in display. You won’t be able to extend your display to an external monitor.

Apple also says that developer beta 5 of iPadOS 16. is removing external display support for Stage Manager on M1 iPads, something that has been present since the first iPadOS 16 beta was released a few months ago. It’ll be re-introduced in a software update coming later this year.

Note that four apps on the built-in display is the same limit as with the originally introduced feature that Apple emphasized was only possible with an M1.

Steve Troughton-Smith:

Surprising no one, Stage Manager on the 2018 iPad Pro 12.9” with 4GB of RAM and no swap runs completely fine. The device doesn’t feel any slower than before, and still does 120Hz ProMotion with ease. Fast and fluid.

Juli Clover:

In our side-by-side testing, Stage Manager worked well on the 2018 iPad Pro, though it was not as quick as the M1 iPad Pro.

But then again, what is?

Federico Viticci:

Extending Stage Manager to older iPads is the RIGHT thing to do and I'm pleased Apple understood this.

I explained my argument in this episode of @_connectedfm (39 minutes in)

Federico Viticci:

Well that didn’t take long.

Pretty nasty Stage Manager bug in the latest iPadOS beta: windows become unresponsive as you…move between them. Clicking the trackpad does nothing. You have to resize the window a little for trackpad input to work again.

Sigh. Here we go again. Stage Manager crashes every few minutes. My enthusiasm for this beta didn’t last long 😔

I really want to like Stage Manager and have better multitasking on my iPad Pro. But between unresponsive trackpad and crashes, it’s impossible to rely on this.

Steve Troughton-Smith:

Early impressions: Stage Manager is still fundamentally broken as a design, just slightly less broken than before. They’ve cut the dead weight (external display was very crashy) and expanded device compatibility, which will slightly lessen the negativity come new-iPad-review-time

[…]

The Stage Manager user experience is so bad, it makes Windows 8 look like a masterpiece. It’s every bit, and more, as janky as a modern Windows ‘tablet’. I ran builds of MeeGo with a more-cohesive UX 🫣

Federico Viticci:

When using a trackpad, if you switch windows, clicks are not registered anywhere in the UI unless you…hit the border of a window first.

[…]

It’s like, at this point, I in good conscience have no idea how I’m supposed to review this software.

The very feature that is supposed to let you multitask between windows makes trackpad clicks do nothing. I can’t review something I can’t use.

Steve Troughton-Smith:

Resizing the Weather app is a fun new experience. Who knows what city it’ll show you depending on the window size

Previously:

Apple Removes VK and Mail.ru Apps From the App Store

Oleg Danylov (via Hacker News, Reddit):

The VKontakte social network client and some other VK and Mail.ru applications have been removed from the Apple App Store. All these apps are still available on Google Play.

[…]

This is not the first time that Apple has removed VK applications, the same happened in 2014, but after some time the applications were returned to the store.

I’m not sure to what extent they are controlled by the Russian government, versus cooperating with them, as US social networks do with our government. The role of sanctions is also not clear. I have not heard of new sanctions, so if sanctions were the cause you would think Apple would have removed the apps long ago—and that they would not still be on Google Play.

AlexandrB:

My impression is that both services are widely used in “Slavic” countries, not just Russia. In particular, my relatives in Ukraine use both mail.ru and VK. I wonder if this will trigger a move to equivalent American services, like Facebook or Gmail, for some.

therusskiy:

I am a bit conflicted here. On the one hand I hate VK because it has censorship, they provide tools to police to monitor conversations and crack down on people.

On the other, now that Facebook, Instagram and Twitter are banned it leaves even less means of communication and spreading information inside Russia, as bad as VK was.

Previously:

Tuesday, September 27, 2022 [Tweets] [Favorites]

Oak 2.5.2

Josh Centers:

Both [Calm and Headspace] require an annual subscription fee, so I tested their free trials. […] It turns out that I find celebrity voices distracting.

[…]

Oak has a small set of both guided and unguided meditations […] Along with a few short breathing exercises […] And a couple of routines to help you fall asleep

[…]

As someone with three kids and thus a noisy house, I appreciate the large library of background sounds, which includes things like cave water, fireplace, rain, Tibetan “om,” and simple white noise.

[…]

The main thing you miss with Oak is variety. Calm and Headspace offer new meditations daily with different lessons or things to think about. I find those distracting. I just want a few minutes to clear my head, not be inundated with a message of the day.

Debug Printing in Swift

Jordan Morgan:

For debugPrint()… Things look a little bit different. Its output is strikingly similar to the print(), but it has a fully qualified print out.

[…]

However, if the type doesn’t conform to [CustomDebugStringConvertible] - then String(reflecting:) dips down into CustomStringConvertible, which you’ve likely used in your Swift adventures.

[…]

For Mirror(reflecting:) This one is quite easy to understand, but can be incredibly useful. In short, you’re getting an instance’s type information.

[…]

Using dump you can print out entire class hierarchies and type information. In short, it gives you all the freakin’ information it can find about whatever you pass to it.

Monday, September 26, 2022 [Tweets] [Favorites]

FastScripts 3.2

Red Sweater:

By default, FastScripts searches for scripts in the same standard “Scripts” folders that Apple’s Script Menu searches. […] I’ve expanded FastScripts to support an arbitrary number of user-determined locations, whose script contents will all be available to the app.

[…]

FastScripts supports the ability to invoke any script … from within another script. […] The ability to run scripts has gotten a lot more powerful in FastScripts 3.2, with the addition of robust support for specifying parameters to invoked scripts.

[…]

Instead of a result, the “run” command in FastScripts returns a script task object. You can use this reference to “force stop” a running script, but perhaps more importantly, you can now use it to await the script’s result. When your script requests the “result” of a script item, FastScripts will suspend the execution of your script until the result is available.

[…]

In FastScripts 3.2 special care is taken to differentiate search results so that identically named items are further identified by the folder that contains them.

I love the new custom Script Collections feature. I like to keep my scripts in a Git repository, which is stored outside of the standard Scripts folder, and so I would create symlinks to the per-application folders in the repo from there. I’d have to recreate these when adding scripts for a new app or when cloning the repo to a new Mac. Also, although FastScripts would follow the symlinks to my folders, they would confuse its file system monitoring, so it wouldn’t notice changes to the contents of the actual folders. Now I can dispense with the symlinks and just add the AppleScripts folder of my repo as a script collection in FastScripts. (I also needed to move all the per-application folders into an Applications folder to prevent all the scripts from being universally available.) My FastScripts menu looks and works the same as before, but now I can store the files where I want and everything updates automatically.

Previously:

Outdated vs. Complete Apps

Vivian Qu (tweet):

When I was at Pinterest, I helped in communications with our dedicated App Store representative who would expedite Pinterest app updates through the review process. I have seen first-hand the lack of support for indie apps compared to the white glove experience that large companies get.

[…]

I opened the message and was greeted with the “App Store Improvement Notice”. I was essentially told that I hadn’t updated my app in three years and now it counts as outdated. I needed to update the app within 90 days or it would get automatically taken down.

[…]

If there had been an actual reviewer who checked my outdated app, they would have discovered that I architected the app from the beginning to dynamically scale the UI so it resizes to fit the latest iPhone devices.

[…]

Beyond the financial cost, what is the most insulting to me about Apple’s policy is how poorly thought out their measure of “quality” is for apps. The message contains two separate statements about my app: (1) it hasn’t been updated in three years, and (2) it doesn’t meet a “minimum download threshold.” Fixing either of those so-called problems doesn’t magically mean my app will be a high-quality, positive experience for users.

The undocumented “minimum download threshold” seems to be saying that you can buy lots of App Store search ads to be exempt from the requirement to have an updated app—then you’re welcome to inflict it on lots of users.

Previously:

Scylla Ad Fraud on Apple Store

Bill Toulas:

Security researchers have discovered 75 applications on Google Play and another ten on Apple’s App Store engaged in ad fraud. Collectively, they add to 13 million installations.

Apart from flooding mobile users with advertisements, both visible and hidden, the fraudulent apps also generated revenue by impersonating legitimate apps and impressions.

[…]

The Scylla apps typically used a bundle ID that doesn’t match their publication name, to make it appear to the advertisers as if the ad clicks/impressions come from a more profitable software category.

Previously:

Friday, September 23, 2022 [Tweets] [Favorites]

Reshaping Text With rs

Dr. Drang:

The problem was that the lists were long. One had 84 items and the other had 30. Pasting them into the message in the form I had them—one item per line—would take up too much space. Pasting them in as a comma-separated series—which I could convert them to with a simple search-and-replace—would be very hard to read. What I wanted was nicely formatted set of rows and columns that would be easy to read without taking up too much space.

[…]

After some Googling, I came across this Ask Ubuntu question, which led me to rs, an old BSD command that comes installed on macOS. The name stands for “reshape,” and it will take any row/column set of data and rearrange it into a different number of rows and columns.

The Macintosh Portable Introduction

stirz:

On this day 33 years ago, Apple introduced the Macintosh Portable.

I just love how @gassee does the presentation: lots of humor and a live assembly on stage.

Compared with more recent Apple events, it almost seems humble.

I enjoyed this video.

Stable Diffusion Based Image Compression

Matthias Bühlmann (via Hacker News):

These examples make it quite evident that compressing these images with Stable Diffusion results in vastly superior image quality at a smaller file sizes compared to JPG and WebP. This quality comes with some important caveats which must be considered, as I will explain in the evaluation section, but at first glance, this is a very promising option for aggressive lossy image compression.

[…]

The main algorithm of Stable Diffusion, which generates new images from short text descriptions, operates on this latent space representation of images. It starts with random noise in the latent space representation and then iteratively de-noises this latent space image by using the trained U-Net, which in simple terms outputs predictions of what it thinks it “sees” in that noise, similar to how we sometimes see shapes and faces when looking at clouds. When Stable Diffusion is used to generate images, this iterative de-noising step is guided by the third ML model, the text encoder, which gives the U-Net information about what it should try to see in the noise. For the experimental image codec presented here, the text encoder is not needed.

[…]

To use Stable Diffusion as an image compression codec, I investigated how the latent representation generated by the VAE could be efficiently compressed.

Previously:

Midjourney and Stable Diffusion

Ben Thompson:

The initial roll-out of large language models seemed to confirm this point of view: the two most prominent large language models have come from OpenAI and Google; while both describe how their text (GPT and GLaM, respectively) and image (DALL-E and Imagen, respectively) generation models work, you either access them through OpenAI’s controlled API, or in the case of Google don’t access them at all. But then came this summer’s unveiling of the aforementioned Midjourney, which is free to anyone via its Discord bot. An even bigger surprise was the release of Stable Diffusion, which is not only free, but also open source — and the resultant models can be run on your own computer.

Divam Gupta (via Hacker News):

Introducing Diffusion Bee, the easiest way to run Stable Diffusion locally on your M1 Mac. Comes with a one-click installer. No dependencies or technical knowledge needed.

Steve Troughton-Smith:

Stable Diffusion on my M1 is kinda neat, but slows the system to a crawl for a minute or two while it processes. Stable Diffusion on my 3080 Ti, however, is blisteringly fast. 3 seconds to produce an image in a batch.

It sounds like it doesn’t yet use the M1’s Neural Engine.

Andy Baio (Hacker News):

As AI-generated art platforms like DALL-E 2, Midjourney, and Stable Diffusion explode in popularity, online communities devoted to sharing human-generated art are forced to make a decision: should AI art be allowed?

See also: Dithering, which had an interesting discussion of Midjourney’s Discord-based interface.

Author:

Previously:

Thursday, September 22, 2022 [Tweets] [Favorites]

Terminal and Full Disk Access

Jeff Johnson (tweet):

Many expert Mac users grant Full Disk Access to Terminal app, because the permissions dialogs quickly become very annoying when you try to do things in Terminal, as we’ve already seen above.

[…]

What you may not realize is that if you grant Full Disk Access to Terminal, you thereby provide Full Disk Access to every unsandboxed app on your Mac too! And how can this be? The reason is that unsandboxed apps can open executable shell scripts in Terminal, and those scripts will execute with the permissions not of the opening app but rather with the permissions of Terminal, i.e. Full Disk Access.

[…]

If you think the solution to this problem is simply to withhold Full Disk Access from Terminal: it’s not that simple! Every unsandboxed app effectively has all of the permissions of Terminal, whatever those permissions happen to be.

I don’t understand why Terminal executes shell script files in the first place. It doesn’t even prompt to confirm. Aside from the security implications—for what I think is not a commonly used feature, anyway—it also means that I sometimes execute a script by accident, double-clicking and expecting it (because of the icon) to open in a text editor.

Quinn the Eskimo:

MAC presents some serious challenges for scripting because scripts are run by interpreters and the system can’t distinguish file system operations done by the interpreter from those done by the script. For example, if you have a script that needs to manipulate files on your desktop, you wouldn’t want to give the interpreter that privilege because then any script could do that.

The easiest solution to this problem is to package your script as a standalone program that MAC can use for its tracking. This may be easy or hard depending on the specific scripting environment. For example, AppleScript makes it easy to export a script as a signed app, but that’s not true for shell scripts.

Sheldon15:

I find it’s a little backward approach to not have a robust way to test for FDA and instead handle errors resulting from the lack thereof. The problem is that sometimes you can’t distinguish errors resulting from the lack of FDA and other kinds of errors. Or you have a lengthy operation that you know will fail or will be incomplete without FDA and you want to tell the user in advance.

In my case, my app estimates size of a directory. Some subdirectories inside of it will not be counted due to the lack of FDA, and the overall size will not match Finder’s estimation. The scope of all folders protected from FDA is not clearly defined in the documentation, so I will not be able to detect when I have a lack of FDA or it’s a different kind of error. I can guess and recommend the user to add my app to FDA, but it’s confusing if he’s already done that and still sees the recommendation.

John Daniel (in 2019):

Full Disk Access isn’t very reliable either. You can do everything right and it still doesn’t work sometimes. You have to budget for this and provide documentation on how to remove an app, restart, re-add, and fallback to tccutil in the Terminal when all else fails.

Previously:

iOS 16 Lock Screen Widgets Roundup

John Voorhees:

Link HUB lets you put links on your iOS 16 Lock Screen. Links can be URLs that open websites or URL schemes that open and control apps.

[…]

Launcher is an app that’s been around for a very long time, helping iPhone users automate a long list of tasks by reducing more complex tasks into single-tap launchers. With the introduction of the app’s Lock Screen widgets, it can now launch apps, run shortcuts, play music, call friends and family, start driving directions, and a lot more directly from your Lock Screen.

[…]

Just Press Record has always been about quickly capturing audio, so having a button on the Lock Screen that starts a new recording is perfect.

[…]

With Overcast’s new Recents Lock Screen widget, I can resume an episode with a single tap, which I love. The other widget I like a lot is Playlist, which lets you pick one of your Overcast playlists, and with a tap, drop into it directly to start listening.

[…]

Countdowns does a fantastic job of matching glanceable information with thoughtful options. The app is perfect for widgets because it’s all about counting down the time before a big day you want to remember.

[…]

FitnessView, the health and fitness tracker from Funn Media, allows users to track a wide variety of metrics compared to Apple’s own Fitness app tracker.

I hope in a future version of iOS there’s way to add more or larger Lock Screen widgets, and to customize the buttons at the bottom, like with Control Center.

Previously:

Customizing iOS 16 Lock Screen Wallpaper

Federico Viticci:

The customization we have in iOS 16 includes wallpapers – and in fact goes above and beyond anything Apple ever offered for wallpapers on iOS – but that’s only one component of a larger system. A good way to think about it is the following: customizing the Lock Screen is now very similar to customizing your watch face on the Apple Watch.

[…]

For the first time in the iPhone’s history, Apple is also letting you create your own gradient-based Lock Screen background with the new Color wallpaper. As someone who’s constantly on the lookout for these types of images – I even made a shortcut to create colorful gradients for my devices – I am very happy with this wallpaper. By default, you can choose from a set of 18 colors with the ability to set a different intensity level via a slider. However, you can pick any color you want by accessing the system’s color picker.

Federico Viticci:

With iOS 16, Apple is also putting great emphasis on your photos as a means to turn the Lock Screen into a personal, beautiful space that is uniquely yours.

[…]

At the top of the picker, you’ll find an Albums tab, a search bar that supports the same search features of the main Photos app, and a strip of filters for the kind of content that looks great as a Lock Screen wallpaper. You can filter your photo library by people, pets, nature, or cities. Note that these filters won’t show you all matching items from your library in chronological order: they will show you a subset of featured photos for those categories.

[…]

The third way to use photos on the Lock Screen is also one of my favorite features of iOS 16. With the photo shuffle mode, you can make your Lock Screen shuffle through a set of photos on a regular interval during the day. This way, you won’t have to pick a single wallpaper for the Lock Screen, and you can treat yourself to multiple wallpapers without having to create multiple Lock Screens.

I was excited to have rotating photos on my Lock Screen, but in practice it’s been really frustrating. The interface is confusing and does not work well.

First, it seems strange (and watchOS-like) that you have to pick the type of wallpaper (Photos, Photo Shuffle, Emoji, Weather, etc.) first and then can’t change it. If you start with Photos and add some widgets to customize it, you cannot go back and change to Photo Shuffle or a color. Instead, you have to create a new wallpaper and then manually recreate your widget layout.

Photo Shuffle doesn’t seem to actually shuffle on the chosen schedule, and it’s clunky to set up. What I want to do is designate an album in my iCloud Photo Library and then periodically update it from the Photos app. Instead, it’s limited to 50 photos, and I have to manually select them. There is a way to change the 50 later, by removing some of the photos and then adding more. The button to remove photos is a trash can, which seems like it would delete them, moving them to Recently Deleted, which is like iCloud’s trash. However, fortunately, it only removes them from the list of selected photos. Whether or not I change the selected photos, each time I edit the wallpaper it takes a while to save, as if it’s processing all the photos again. Since the shuffling doesn’t work, and it feels like a lot of taps to remove an old photo and select another when I simply want to add a new photo that I just took, I’ll probably just switch to the Photos wallpaper (which always shows a single photo, despite its plural name). Then I can more easily manage the selection myself.

Ged Maheux:

Why does iOS 16 force you to create an all new wallpaper set when you want to make a simple change to the Lock or Home Screen?

Why does it treat these two screens as linked at the hip?

Andy Runton:

It’s infuriating. You also can’t add just dynamic home screens like weather without changing the lock screen. The UI constraints are baffling. The same is true with Watch OS 9. You can’t duplicate faces and you can only adjust a few colors. It makes zero sense.

Lee Bennett:

At least (as I’ve discovered) I don’t have to wait for those LONG spinner icons to finish rendering the previews. If I’m not changing the home screen wallpaper, I can go ahead and tap the button to accept the lock screen changes.

Previously:

Update (2022-09-26): Nick Babich:

With all the UI changes that Apple introduced in iOS 16, including the Dynamic Island that got a lot of media attention, one subtle change hugely impacted almost everyone. Apple increased the font size of the clock display on the iPhone lock screen. Now it’s 82pt bold typeface.

[…]

The new font size doesn’t match the overall aesthetics of the iOS 16. The clock in the new design looks like an alien object to other UI elements of iOS 16; that’s why people are so bothered about this change.

I meant to write about this in my original post, but now Babich has and has included screenshots, too. I’m disappointed that there are now multiple font choices but that they all, in my opinion, look worse than the old font. I really wish I could make it smaller or less bold.

Wednesday, September 21, 2022 [Tweets] [Favorites]

ForecastAdvisor

ForecastAdvisor (via John Gruber):

ForecastAdvisor will show you the accuracy of the major weather forecasters, including Accuweather, AerisWeather, Foreca, the National Weather Service, Open Weathermap, The Weather Channel, Weather Underground, Wetter, World Weather Online, and Weather News. We also provide links to your city's weather forecast from all the other weather forecasters, so you can compare for yourself.

What a great idea. Its results match my anecdotal experience, which is that The Weather Channel/Company (TWC) has the most accurate forecasts in my area. I get this data via Snowflake. It shows that Foreca, which I get through Weathergraph, is also pretty good. It doesn’t yet show results for Apple Weather (WeatherKit), which so far seems to be slightly worse than Foreca.

Previously:

Weather Strip 1.7.1

Math Easel:

New lock screen accessory widgets for iOS 16! (Make sure you are subscribed to the Premium level.)

This may be the best weather Lock Screen widget I’ve seen, though for the big graph in the app itself I prefer Weathergraph’s.

Previously:

Mercury Weather 1.1.4

Triple Glazed Studios (via Craig Grannell):

  • Beautiful weather charts
  • Detailed daily forecast
  • Incredibly accurate rain forecast
  • Simple yet powerful Apple Watch app
  • Easy to glace home screen and lock screen widgets

I like the design, which is reminiscent of Weather Line, though it is not the official successor, as Weather Line was apparently acquired by Fox. The features are bit too limited for my taste, and the weather data comes from OpenWeather, which is not great. I’m happy with Weathergraph (for main graph and watch complication) and Snowflake (for more detailed weather info and a more accurate forecast) but will be keeping an eye on this one.

John Gruber:

Free to try, with a Premium subscription to unlock widgets, the WatchOS app, historical data, and more. $2/month or $10/year — cheap!

Previously:

FogBugz Auto-Upgrades Free and Dormant Plans to Paid

Joseph Ruscio (Hacker News):

@FogBugzTeam sending me an email today that you are auto-upgrading and intend to start charging me tomorrow for a free account I haven’t logged into for (checks notes) … 13 YEARS is a bold move.

Aleksandar Vacić:

If your account is inactive for a long time then FogBugz/IgnoreTech will remove it. Their support page says they do that.

But does not delete the account actually. They keep it anyway.

So yesterday (!) they sent me an email that they are automatically upgrading my account to some paid tier and starting today (!) they will begin charging subscription.

For a service account which does not even exists anymore.

I used the free plan for 8 years or so and can’t really complain about it becoming paid. Were I still using FogBugz, it would be worth the cost. But this was not handled well. First, they shouldn’t start auto-billing accounts that were dormant. Second, the communication was terrible. I received an e-mail on September 16th saying that they would start billing in one month. Then I received a second e-mail, which I almost skipped over because it seemed to be saying the same thing, except that this one said they would start billing on September 17th, i.e. 6 hours from the time the e-mail was sent. That e-mail contained a link to a FAQ, which redirected to Zendesk—it was kind of a red flag when they stopped using their own product for support—and the URL returns a 404 because the Zendesk account is closed. Fortunately, unlike some others, I was able to log into my account and close it.

alexjplant:

I’m more concerned about them affecting my credit score... these clowns haven’t a legal or moral leg to stand on but there’s no way to cancel the free account that I haven’t touched for 7 years. The hyperlink to my instance 500s and their support portal is either broken or disallowing new user registrations (despite me trying three browsers, two devices, and spending 10 minutes in the dev console manually enabling various buttons for password setting on the new account page and trying their ZenDesk URL instead of the custom one). Any emails to their customer success address tell users to log into this nonfunctional support portal.

Anil Dash:

I don’t recommend anyone do business with them, whether as a customer or anything else; I was CEO of Fog Creek when we decided to sell FogBugz, and if I knew the difference between what we were told ahead of the deal and what happened after, I never would have approved it. I didn’t see that they’d done this latest shitty thing until now but I really lament that they’ve sunk to an even lower new level.

Previously:

Update (2022-09-22): Marco Arment:

My free account had been dormant for years — long enough that they had deleted it — yet they just charged an expired card, then sent me an email saying I was in arrears.

Nothing online worked. Had to call them to “fix” it.

I just received an e-mail from FogBugz:

We’ve become well aware of the maelstrom of concern and comments caused by a series of emails that some of you received, but to explain, we were just as surprised as you when multiple emails were sent. Our original and only intended email, which was controlled by humans, was to inform you that the “free,” non-expiring version of FogBugz is being phased out on October 17, 2022. Additionally, we wanted to offer you the option to continue using FogBugz by updating your account to a paid subscription. This was the entire, planned effort.

However, once we updated the accounts that had been identified as free and non-expiring in the internal FogBugz accounting system, the software automatically generated a form email, notifying you that we had summarily converted you to a paid account, and worse, actually triggering collection/dunning notices to some. This was unintended and is not accurate. Yes, we’ve owned the software for some time and should know all of the nooks and crannies by now. We don’t know if this was a nook or a cranny, but it decided to act on its own. Truth. It’s embarrassing, and we’d react the same way as many of you have. So this email is to set the record straight.

We do not automatically charge any customer for usage of the software unless a subscription has been expressly elected, despite what the erroneous auto-email stated.

However, they go on to say that they do charge you if your credit card was on file, e.g. if a paid plan had previously been selected and then you downgraded to free. Perhaps that’s what happened to Arment. Or perhaps he was always on the free plan but, like me, at some point had been required to enter his card info, anyway.

How to Reinstall Safari for Mac

On one of my Macs running macOS 12.6, the Safari 16 update said that it had succeeded but actually left me with a zero-byte executable that wouldn’t launch. This had never happened to me before in all my years of using Macs.

You might think this should be impossible because macOS now uses a Signed System Volume (SSV) that’s supposed to make sure that the system files are correct. However, Safari is updated separately from the rest of macOS, and so it is actually stored on the Data volume rather than on the SSV.

I had other Web browsers installed, so my first thought was to simply download the Safari 16 installer and run it again. However, Apple no longer offers downloads of the Safari installer. Apple’s supported solution, I assume, is to use macOS Recovery to reinstall all of macOS (and then update to Safari 16) or perhaps to restore from a Time Machine backup. But those remedies are quite disruptive.

Of course, the Safari 16 installer must be available from Apple’s servers since macOS’s software update can download it. Unfortunately, I wasn’t able to find the link via Web searches, instead finding lots of SEO pages that didn’t actually offer the solution.

Mr. Macintosh rescued me, providing a mysterious link to the Safari 16 installer package. But how can you find such links yourself? First, open this file:

/System/Library/PrivateFrameworks/Seeding.framework/Versions/A/Resources/SeedCatalogs.plist

Inside are URLs for the current macOS software update catalogs. (Old catalog URLs are listed here.) Right now, the current non-beta one is:

https://swscan.apple.com/content/catalogs/others/index-12customerseed-12-10.16-10.15-10.14-10.13-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz

I like to paste paths and URLs like this into BBEdit’s Open File by Name window. It will both download the URL and decompress the file for viewing.

Once you’re viewing the catalog of installer packages, you can search around to find the one that you need.

Alternatively, you can use the SUS Inspector app to download and view macOS software update catalogs. And Mr. Macintosh now has a page that lists all the Safari installer packages (to go along with his lists of IPWS files and installers for Ventura, Monterey, and Big Sur).

Matthias Gansrigler:

Had the same issue where it would crash at launch, and then no longer launch at all. Re-installed macOS from Recovery, and now I’m scared to install the Safari 16 update 🤷‍♂️

Previously:

Update (2022-09-23): Oliver Busch:

Even simpler: Pacifist.

Tuesday, September 20, 2022 [Tweets] [Favorites]

Zeroing Freed Memory

Apple:

The system memory allocator free operation zeroes out all deallocated blocks in iOS 16.1 beta or later. Invalid accesses to free memory might result in new crashes or corruption, including NULL-pointer dereferences and non-zero memory being returned from calloc.

There’s a corresponding change in macOS Ventura.

David Smith:

malloc folks spent a while optimizing to compensate [for the performance regression]

mvb:

There’s also a performance improvement, because it makes the memory compressor work better

Marco Arment:

I love this, frankly, but I bet it’s going to uncover a good deal of bugs and crashes that worked until now because of luck.

Hopefully you aren’t relying on any abandoned software.

Update (2022-09-22): See also: Hacker News.

David Anson:

Any reason Apple couldn’t restrict the new memory zeroing behavior to newly-compiled binaries to avoid the risk of breaking legacy software?

I was wondering about that, too. Usually, though not always, potentially breaking changes like this are called out in the release notes as taking effect when you compile with a new SDK. That was not the case here, so I assume there’s no linked-on-or-after check.

Update (2022-09-23): cesarb:

I wonder how long until programs start to accidentally depend on it, the same way some programs currently accidentally depend on freeing memory not immediately overwriting it.

For instance, I can imagine a program which accidentally follows a dangling pointer to an already freed structure, and reads another pointer from within that structure, not crashing because it ends up checking this later pointer against NULL… until the stars align and the memory used by the freed structure has been returned to the operating system, or overwritten by a later allocation.

App Store Prices to Increase in Europe

Apple:

As early as October 5, 2022, prices of apps and in-app purchases (excluding auto-renewable subscriptions) on the App Store will increase in Chile, Egypt, Japan, Malaysia, Pakistan, Poland, South Korea, Sweden, Vietnam, and all territories that use the euro currency. In Vietnam, these increases also reflect new regulations for Apple to collect and remit applicable taxes, being value added tax (VAT) and corporate income tax (CIT) at 5% rates respectively.

Joe Rossignol:

The increases are the result of the euro’s weakness against the U.S. dollar currently.

The way Apple does this has always seemed kind of strange to me. There’s no way—as there is with some other payment processors—to customize prices so that they make sense for your product in different regions. When the dollar is strong, isn’t that when European customers would be more sensitive to the prices they pay for software? And Apple changes the pricing tiers for some exchange rate and tax changes but not for others.

Tim Sweeney:

This highlights Apple’s monopoly pricing power and also their seldom-discussed practice of fixing the ratio of app prices across regions: developers choose the US price, then Apple unilaterally sets the price in all other territories.

Compare to Steam and Epic Games Store where developers choose their own regional pricing strategies in response to local competition and differing market conditions across specialized categories of games and apps.

Previously:

Update (2022-09-23): Florian Mueller:

Now, an app developer with most of its customers in the eurozone would presumably think very hard before increasing the entry-level price from €0.99 to €1.19, given that it’s psychologically very advantageous to stay below €1. That is, of course, why Apple has waited for a while, and now goes substantially beyond €1: once you go over that threshold, whether you charge €1.09 or €1.19 doesn’t really make much of a difference for demand. But again, many app developers might actually prefer to just keep their euro prices below those psychologically critical numbers.

[…]

This issue of Apple deciding on currency conversion even came up in the Epic Games v. Apple litigation in the Northern District of California, the antitrust case that will be heard by the United States Court of Appeals for the Ninth Circuit in one month from tomorrow, with the Department of Justice supporting Epic. Judge Yvonne Gonzalez-Rogers, who got a whole lot wrong, understood the problem at least in part[…]

Monday, September 19, 2022 [Tweets] [Favorites]

Extra iOS 16 Paste Prompts

Sami Fathi:

The new prompt was added to iOS 16 as a privacy measure for users, requiring that apps ask for permission to access the clipboard, which may have sensitive data. The prompt, however, has become an annoyance for users as they install iOS 16, as it constantly asks for permission whenever they wish to paste something into an app.

As user annoyance with the behavior boils high, Apple has finally responded, saying the constant pop-up is not how the feature is intended to work. MacRumors reader Kieran sent an email to Craig Federighi and Tim Cook, complaining about the constant prompt and advocating for Apple to treat access to the clipboard the same way iOS treats third-party access to location, camera, microphone, and more.

Ron Huang, a senior manager at Apple, joined the email thread saying the pop-up is not supposed to appear every time a user attempts to paste.

I don’t understand why there’s a prompt at all if the paste was initiated by the user from an OS-provided button. Are they worried about apps faking button clicks? If so, how does the prompt actually protect against that if sometimes I do want to paste? Plus, there’s a bug where the paste button in the popover is blank before the first time you paste.

Michael Love:

I’m actually grateful for this botched rollout, because it’s going to make it next to impossible for Apple to shift blame to developers for future annoying clipboard alerts.

We still get blamed for TCC forgetting things…

Previously:

Update (2022-09-23): Cyclebrity:

Thanks, I need all the help I can get to save auto-paste from death 💀

Stanislav Dvoychenko:

Apple’s decision to have it as their own UIControl makes sense to me. But they went for “security via obscurity” when it comes for how this control works. If you don’t obey rules that are not documented, it will be asking for permission all the time or even randomly.

John Gruber:

The best thing about this copy-paste permission alert that is driving everyone nuts in iOS 16: the apostrophe in “Don’t Allow Paste” is the wrong one. It’s upside down.

Funding The App Association (ACT)

Malcolm Owen:

Advocacy groups and lobbying parties often make claims to sway public, judicial, and political opinion one way or another, and that has been quite evident for some news stories about the tech giants. The App Association (ACT), which aims to fight for the rights of developers, generally offers favorable opinions about Apple.

Apple is said to be the source of most of the funding of the ACT, according to four former employees speaking to Bloomberg. While ACT has confirmed it receives more than half its funding from Apple, the employees claim the percentage received is a lot higher than half.

[…]

That funding gives Apple a lot of sway in the group, with the employees believing this provided Apple the opportunity to control the policy positions of the organization.

Wikipedia:

The App Association has large sponsors such as Apple, Intel and VeriSign. Microsoft, eBay and Oracle used to sponsor the App Association.

Previously:

Update (2022-09-23): Florian Mueller:

I would also strongly encourage the European Commission to reject any submissions by ACT | The App(le) Association on whatever topic. And should one or more antitrust decisions come down against Apple in the App Store context, the European Court of Justice should not allow an organization mostly funded by Apple to join as a “third-party” intervenor.

[…]

While low-key compared to Apple, the “(Application) Developers Alliance” is basically the same thing as ACT, just that they’re funded by Google.

Florian Mueller:

According to what Bloomberg researched, ACT has a budget of approximately $10 million. It never made sense that those funds would come from 5,000 small app developers: there’s no way that small app developers would pay an average of $2K/yr. for a “membership” in a lobbying organization.

Astroturfing is bad enough in its own right. But Apple and ACT added insult to injury at the start of the COVID-19 pandemic when ACT applied for, and received, PPP funding.

[…]

That level of following is consistent with pictures that have been shown from ACT events. Also, I attended an ACT event in Berlin three years ago, where I was the only actual app developer in the room. The rest was in-house and outside counsel of the usual suspects (Apple and its allies on standard-essential patent policy).

See also: Hacker News.

Weathergraph 1.0.117

Tomas Kafka:

Lock screen widgets! Ready for iOS 16 and Apple Watch Ultra.

Two large widgets with a signature weather graph and text weather summary. Inline widgets to tell you current conditions, wind speed and direction, precipitation or time of the next rain, or UV index. And many small widgets for individual weather metrics.

Support for Lock Screen widgets is welcome, but I’m finding it far less useful than the Apple Watch complication. With the widget being monochrome and also fading into the photo background, it’s harder to see what’s happening on the graph. Also, slots for widgets are scarce, with only two for larger widgets if I want to keep the date visible.

Previously:

Update (2022-09-26): Ashley Bischoff and dkhamsing note that there is a third widget slot at the top, though I find that shape less useful for widgets and dislike how it abbreviates the date.

20 Years of RSS 2.0

Dave Winer (via Manton Reece):

I announced here on Scripting News that the final RSS 2.0 spec was out. But! -- no one had a problem with it. I guess we were ready to go to the next stage, with a clear way forward.

[…]

A list of blog posts from 2002 leading to the publication of the RSS 2.0 spec on 9/18/2002.

Previously:

Friday, September 16, 2022 [Tweets] [Favorites]

LockFlow 1.0.2

John Vorhees (tweet):

That’s why I was glad to see a brand new app called LockFlow released alongside the iOS 16 release. The app makes it incredibly simple to add shortcut widgets to your iPhone Lock Screen.

[…]

When you’re finished adding shortcuts to LockFlow, tap on one to give it an icon and test it if you’d like.

[…]

You can use the widget as an app launcher with a single-action shortcut using the Open App action. Other options include controlling HomeKit scenes, switching Focus modes, starting a favorite playlist, and a lot more.

Dan Masters:

How quaint 😄

Halide:

An iOS 16 bug that happens at times is widgets not showing up as available to use.

To fix this, you can change your system language temporarily to force the Lock Screen to re-initialize, and that should fix the widgets from not showing up.

Previously:

Unicode 15

Keith Broni:

The latest emoji list drafted by the Unicode Consortium is due for formal approval today, with new emojis including a Goose, a Hyacinth, a Shaking Face, and a plain Pink Heart.

[…]

These 11 sequences are ten new skin tone modifier sequences - five each for the new Rightwards Pushing Hand and Leftwards Pushing Hand emojis - and one new zero width joiner (ZWJ) sequence, namely, the new 🐦‍⬛ Black Bird.

Amber Neely:

As it turns out, 73% of those polled thought people who used emojis are friendlier, funnier, and cooler than those who don’t. And 91% of respondents felt that emoji make it easier to express themselves — with 60% reporting that emojis have the ability to boost overall mental health.

[…]

Perhaps least surprising of all, the tears of joy emoji continues to be the favorite emoji of those in the U.S.

Update (2022-09-26): Jonty Wareing (via Hacker News):

The character “ꙮ” (U+A66E) is being updated in version 15.0.0.

Because it doesn’t have enough eyes. It needs to have three more eyes.

I absolutely love that there’s a unicode character with a single documented use, and it wasn’t even correct.

Thursday, September 15, 2022 [Tweets] [Favorites]

Adobe to Acquire Figma

Lauren Simonds (in June):

Rapid growth, a massive user base and stealing the market out from under an industry Goliath — this is the stuff of which tech startup founders dream. It’s also the story of Figma, a cloud-based platform for designing websites, apps, logos or just about any software, created by game-changers Dylan Field and Evan Wallace.

Dubbed “the Google Docs of design” for its flexible simplicity, Figma lets teams of product, user experience (UX) and user interface (UI) designers collaborate, edit and comment on projects in real time.

Adobe (Hacker News):

Today, Adobe (Nasdaq:ADBE) announced it has entered into a definitive merger agreement to acquire Figma, a leading web-first collaborative design platform, for approximately $20 billion in cash and stock. The combination of Adobe and Figma will usher in a new era of collaborative creativity.

[…]

Figma’s web-based, multi-player capabilities will accelerate the delivery of Adobe’s Creative Cloud technologies on the web, making the creative process more productive and accessible to more people.

[…]

Figma has a total addressable market of $16.5 billion by 2025. The company is expected to add approximately $200 million in net new ARR this year, surpassing $400 million in total ARR exiting 2022, with best-in-class net dollar retention of greater than 150 percent. With gross margins of approximately 90 percent and positive operating cash flows, Figma has built an efficient, high-growth business.

Dylan Field (tweet):

When we started Figma, our stated vision was to “eliminate the gap between imagination and reality.” I believe we can reach this goal substantially faster through our plan to join forces with Adobe and leveraging their legendary team plus decades of expertise.

[…]

Adobe is deeply committed to keeping Figma operating autonomously and I will continue to serve as CEO, reporting to David Wadhwani. David is someone I’ve known for a few years now and we have a strong relationship of mutual respect; I’m very excited for us to collaborate with him on how to continue growing Figma’s business. The entire Figma team will report to me. We plan to continue to run Figma the way we have always run Figma — continuing to do what we believe is best for our community, our culture and our business.

[…]

Recognizing that we are in an unpredictable, inflationary environment, we currently have no plan to change Figma’s pricing. Finally, all of Figma will continue to be free for education.

Tom Warren:

Figma was first founded 10 years ago by Dylan Field and Evan Wallace, and the collaborative design platform has become key for many businesses in recent years. Thousands of designers and developers at Microsoft rely on Figma every day to build Office, Windows, and more. It’s used so heavily at Microsoft that it has been testing the company’s relationship with Adobe, a close partnership that will only get closer now.

Figma is all about the web, which is something Adobe and other rivals have been struggling to compete with. Adobe now plans to combine its own community with Figma, and it’s likely that will involve bundling Figma products and services into Adobe Creative Suite at some point in the future.

Gergely Orosz:

2021 was the year when startups raising money did it on valuations that have almost all collapsed by now. Figma raised at a ~$10B valuation then.

The fact that they are selling to Adobe for close to double is nothing short of remarkable (also shows Adobe desperately needs Figma)

Joe Fabisevich:

I’ve long thought that the conflation of Figma, design, and design systems was concerning but now I think it will become a real problem. Unlike engineering where you can easily switch languages and environments in a modular manner the choice in design is now Adobe or Sketch.

John Gruber:

Figma’s breakthrough is that it was the first web-app to establish itself as a leading tool for professional designers. It’s hard to overstate how profoundly Figma disrupted Adobe’s status as the undisputed leader in design tools, because Figma made collaboration a first-class part of its workflow. Adobe has had many competitors over the decades, but Figma was the first that seemingly was reducing Adobe’s relevance to professional designers.

Nick Heer:

Its growth created real competition to Adobe’s products for the first time in a while because it is focused on vector editing tools for digital applications. Web and application designers loved it. It was certainly a better option than trying to design user interfaces in Photoshop or Illustrator, and it pushed Adobe to try to compete by building XD.

[…]

That was a good thing, too. If you just look at feature checklists, you could argue Adobe still innovated in its post-Macromedia years. But most any user of the company’s products can tell you the reality: Adobe Creative Cloud is a suite of bug-infested, unreliable, bloated, and slow software that makes being a designer uniquely frustrating, and it is downright embarrassing how few choices we have for tools in this industry.

Previously:

Update (2022-09-26): Amal Dorai:

I’m not surprised that Adobe is acquiring Figma for $20B, nor that Wall Street doesn’t understand it and $ADBE stock is down more than $20B today. It’s a smart move for Adobe because it’s nearly impossible to make legacy software applications multi-user collaborative.

I know this because I founded a startup, LiveLoop, to make MS Office real-time collaborative. Microsoft acquired us in 2015 and has invested heavily in making Office real-time collaborative, and Office collaboration is now much better than in 2016. But it’s still not Google Apps.

Nick Lockwood:

This all makes sense, but also this model for multi-user collaboration sounds… bad actually?

VCS (e.g. git) solves this problem without compromising the ability to make local or offline changes and without ceding control of all of your files to some centralised third party.

Stay SaaSy (via Hacker News):

In my opinion Figma is different in a way that a lot of people may not realize. With Figma getting acquired for approximately 1.3 gazillion dollars by Adobe, here are some quick SaaS and product strategy reactions from a Figma fan.

[…]

Figma ate up all of the mindshare in the Designer community essentially instantaneously. Within roughly one renewal cycle of our prior product, Figma was already taking over – we literally went from purchasing one design product to purchasing Figma while still under contract with our prior contract because the industry was moving en masse.

[…]

I’m not sure that the broader technology and business community appreciates how unique this dominance is, because they don’t work closely with designers. Designers are not like engineering or marketing teams that love hopping to the sexy new product. Design products are complicated; it isn’t “fun” to try out a new vector graphics editor. It is weird that all designers suddenly wanted to move to Figma. It would be like half the world’s sales teams quit using Salesforce overnight.

Matt Birchler:

Figma quickly become more capable, more collaborative, and more fun to use than the competition, and it was constantly gave you new goodies to improve your work.

Exporting to Xcode from XD would be nice, but not nearly sufficient IMO.

Sketch was never an option for us because we’re a company of hundreds, and of course we’re not all using Macs.

We tried using XD for a year since it was part of Creative Cloud, which we already paid for.

The experience was okay, but nowhere near Figma.

Jay Peters:

Adobe has a history of buying up some of the biggest tools in the creative space, acquiring companies like Frame.io, a video production collaboration tool, and Behance, which lets people showcase their creative work. (Belsky first joined Adobe through this acquisition.) The company has bought a lot of companies — even Photoshop was an acquisition. That makes the Figma purchase all the more concerning for designers; one of the few notable challengers to Adobe has been swept up, meaning Adobe will continue to consolidate creative app power in one location.

Ben Gilbert:

As usual, @benthompson has the best take I’ve seen on Figma.

I didn’t realize how much “close to the metal” code they wrote to achieve the breakthrough UX they have.

Alex Konrad:

Lost in the hubbub: a historic $2.3 billion retention package for Figma CEO Dylan Field and employees offered on top.

I dove into the billion extra reasons Adobe is giving Field to stick around...

Hunter Walk (via Hacker News):

Figma had crossed the ‘this matters to Adobe’s future’ rubicon. They hit $400m ARR and were continuing to double. Figma revenue, independent of margin, was increasingly displacing revenue that might have gone to Adobe, or more specifically, creating pricing pressure on Adobe.

[…]

When the autonomous car company Cruise got quickly snapped up by GM in 2016 jaws dropped at the $1b+ reported price (we were small investors in Cruise). The answer there was the same: if autonomy is the potential future of your industry and you’re not yet strong in that area, what’s percent of your market cap is it worth to bring those cards into your hand. In that case it was roughly ~2.5% if I’m remembering correctly. In Adobe’s case it was a larger percentage because Figma is way further along as a business and the certainty the future of design at least looks like Figma is high.

iPhone 14 Pro Camera

Sebastiaan de With (tweet):

When it comes to computational photography, the quality of your software and processing power plays as important a role as the physical camera itself. It’s silly to judge the new iPhone entirely on sensor specs, and we can’t wait to run full package through its paces as soon as it arrives at Halide HQ.

[…]

The Wide camera sees the greatest changes. The lens gets a bit wider, a 2mm focal length difference. The aperture is smaller (‘slower’), means the lens collects less light. This was probably necessary to work with a larger sensor. We calculate that the Wide camera is able to collect 20% more light compared to last year’s camera, even with this slightly worse aperture, thanks to its larger size.

We’re astonished by the improvement in the camera sensor’s ISO range. It goes far beyond previous iPhone cameras. Given high ISO values are accompanied by more noise, it’s highly likely this ISO range is made possible by how its higher resolution sensor combines 4 pixels into one, vastly reducing noise.

[…]

A big change here is the front-facing camera gaining variable focus (and autofocus) for the first time since the very first iPhone.

Austin Mann (Hacker News):

All that said, I was excited to see this massive jump in megapixels in the iPhone 14 Pro as it will open doors to capture more detail, crop in on images, and also open up new possibilities for larger format prints at higher DPIs.

[…]

Many of you have been curious about the file sizes of the 48 megapixel ProRAW DNG files. I’ve found them to be mostly around 80MB, with the smallest files as low as 45MB (a shot with mostly sky and little detail), and the biggest being 115MB (a shot with tons of detail in leaves). For comparison, my Sony A1 (50 megapixel) RAW files are usually in the 120MB range. The image pixel dimensions of the 48 MP files are 8064x6048.

[…]

I’m pretty sure I’ll generally leave my settings set to 12MP ProRAW and only push up to 48MP when I really need it.

[…]

I do feel many of the images I’ve shot are a bit too processed and/or over-sharpened. When this happens, I’ve been bringing the ProRAW files into Lightroom CC and adjusting the “Apple ProRAW” profile slider to the left to reduce the HDR/sharp look if it’s too much for me.

[…]

Offloading photos/videos via Lightning cable is another story. I’ve had some serious pains trying to transfer content from my iPhone to my MacBook Pro. I’ve been on YouTube watching videos, unplugging, switching Lightning cables, restarting devices — doing all the things I can think of. I finally found a tip that said if you turn on Airplane mode, then Apple Photos will properly load, and thankfully it did.

Previously:

Widgetsmith for iOS 16’s Lock Screen

John Voorhees:

If you’ve used Widgetsmith to create Home Screen widgets, you’ll hit the ground running with Lock Screen widgets. There’s a new segmented control near the top of the iPhone app’s Widgets tab that toggles between Home Screen and Lock Screen widget creation. The Lock Screen view is divided between the inline text widgets that fit above the time on the Lock Screen and circular and rectangular widgets that sit below the time.

[…]

The rectangular widget category includes even more categories from which to choose. Between the overlap with other widget types, plus the Battery and Tides widgets, there are a total of 13 widget types that can be added to a rectangular widget and themed.

I loved the idea of widgets, but in practice I never use them. It hasn’t seemed worth displacing any of my app icons, and if I’m going to swipe to a separate homescreen I may as well just open the app itself. I make heavy use of watch complications, though, and I expect Lock Screen widgets to be more like that.

Francisco Tolmasky:

Is there no way to put Apple Remote in the Widgets Lock Screen? Would love to have it directly there instead of in Control Center.

Previously:

eSIM and iPhone 14

Glenn Fleishman:

Apple has gone all in on the eSIM (embedded SIM), a programmable internal version of the SIM (subscriber identity module) card used to ID your phone to cellular networks. With the U.S. models of its iPhone 14 series, Apple has gotten rid of a physical slot for the SIM card. But it also continues to expand eSIM flexibility on other iPhone models and iPads.

[…]

While an eSIM is programmable and handled entirely digitally, it has no effect on whether a phone or tablet that incorporates the technology is locked or unlocked by the carrier on whose network you’re using your device.

[…]

You once had to swap a hardware SIM out when traveling to another country. With an eSIM, you can still add a second plan for outside your area. When you return home, you just deactivate the eSIM. However, there are some countries that have not adopted eSIM yet, and an eSIM-only iPhone 14 or later model may not work for you in some countries or for your preferred carriers there.

Casey Liss:

So, in order to hopefully get ahead of the game for next week, I decided to try to convert my physical SIM to an eSIM. As it turns out, this process wasn’t particularly difficult, but I figured it’d be worth documenting for others.

[…]

After I did my transfer, I noticed that iMessages were suddenly being sent and received as text messages. This may have been user error on my part, but it seems that my iMessage settings were altered such that my phone number was no longer a valid iMessage address for me.

If you do the above, it’s probably worth verifying your settings.

John Gordon:

Apple put a lot of work into dual eSIM support. Here the dual status bar. Sure feels like they are going to do an Apple network.

Joe Rossignol:

Amid criticism from some customers regarding the removal of the SIM card tray on all iPhone 14 models sold in the United States, Apple today published a new support document outlining various "options and benefits" for using eSIMs while traveling abroad.

[…]

In his iPhone 14 Pro camera review, travel photographer Austin Mann said he was "a bit concerned about the practicality of an eSIM-only approach for travelers with US iPhones who frequently visit the developing world," adding that he usually purchases a local SIM card in countries where he travels to so that it is easier and cheaper to communicate with people within the country. Mann said he would be thrilled to toss out his collection of physical SIM cards, but said he has been unable to figure out how to sign up for an eSIM line in East Africa, where he plans to travel to next summer.

Previously:

Update (2022-09-22): Joe Rossignol (via Josh Centers):

Repair website iFixit today shared an in-depth teardown of the iPhone 14 Pro Max, providing a closer look at the device’s internals. Notably, the teardown includes a photo of the plastic spacer that replaced the SIM card tray on the U.S. model.

All four iPhone 14 models sold in the U.S. no longer have a physical SIM card tray and rely entirely on digital eSIMs. The teardown confirms that Apple is not using the internal space freed up by the tray’s removal for any other component or added functionality, and instead filled in the gap with a square piece of plastic. Outside of the U.S., all iPhone 14 models are still equipped with a SIM card tray in this space.

The empty space is surprisingly large.

Update (2022-09-26): Francisco Tolmasky:

OK, so this eSIM thing of course didn’t work. I’ve tried transferring it from my old phone by doing the “Add eSIM” thing, but after entering the code it shows, nothing happens. My old phone still gets texts, etc.

Wednesday, September 14, 2022 [Tweets] [Favorites]

Kindle 2022

Todd Haselton:

Amazon on Tuesday announced a new entry-level $99 Kindle e-reader with several improvements over the prior model.

The biggest change is the display, which is a lot sharper than the earlier $89 Kindle. That means text will look clearer when you’re reading, instead of slightly blurry. The sharpness is now on a par with Amazon’s more expensive $140 Kindle Paperwhite.

[…]

The new Kindle also has a backlight, but it doesn’t have some of the more advanced backlight features in the Kindle Paperwhite, like the option to change the white balance to an orange hue for reading comfort.

Finally, it uses USB-C. It’s $119.99 without lockscreen ads. Amazon’s product page refers to this as the 2022 release. Otherwise, I guess it would be the Kindle 11.

Previously:

Plus, Pro, Max, and Ultra

Hartley Charlton (Reddit):

In his latest post on Medium, Kuo explained that the iPhone 14 Pro and iPhone 14 Pro Max have seen “neutral” and “good” pre-order results compared to the iPhone 13 Pro and iPhone 13 Pro Max. Delivery wait times of more than four weeks may indicate good demand for the new high-end devices. It is apparently “unclear” whether Apple will increase shipment forecasts of its Pro models, but there is a “growing” chance that it will cut orders of the iPhone 14 and iPhone 14 Plus, which currently account for around 45 percent of the entire lineup’s shipments.

[…]

If demand for the two standard models do not improve, Apple may cut iPhone 14 and iPhone 14 Plus orders as soon as November.

Francisco Tolmasky:

If true, then the iPhone may be developing the same problem the iPad has: products reverse-engineered from PRICE instead of USE. The iPhone mini made sense to be “worse,” so it didn’t feel cheap. The iPhone 14 however just feels like “the cheap one.”

Below I showed an iPad lineup where the differentiation (and marketing!) was based on USE CASE and not price, so no one feels like they’re “settling.” For example, the “low end” iPad Go is positioned as “rugged,” what you take on a hike or give your kid.

The price-based product segmentation works even worse for Apple products because everything is expensive, and there’s plenty of price overlap between Pro and non-Pro.

[…]

The end result is you don’t really feel like you got “the perfect phone for you,” but instead some weird compromise of trade-offs you could afford. The product matrix makes you feel sad when you should feel great.

bengiannis:

This reminds me of Tim Cook’s recent leaked emails regarding iPhone XS sales from 2018[…] Pricing the XR too close to the XS without many new features meant that most people just upgraded to the higher tier iPhone.

Dave B:

The gap between the Pro and non-Pro line is by far the biggest it’s ever been, and it’s still just a $200 price difference.

[…]

I understand Apple wants to save some features for the Pro models, but this feature gap is too large, to the point that the non-Pro is now feeling like a mid-tier phone, with last year’s processor and old display technology.

The iPhone 13 mini, or even the regular iPhone 13, seems like a solid alternative if you don’t want to pay for the Pro features.

Adam Scheinberg:

iPhone Pro Max: max = bigger
M1 Max: faster
AirPods Max: different product entirely

AppleTV: an app
AppleTV: a piece of hardware

Apple TV+: base features
iCloud+: base features
iPhone Plus: bigger, same features

Macbook Pro: more features
iPhone Pro: more features
AirPods Pro: different product entirely

M1 Ultra: most powerful
Watch Ultra: same power, different product

Previously:

Gassée on Apple Services

Jean-Louis Gassée (tweet, Hacker News):

I suggested a simpler, sharper statement: Apple makes personal computers, small, medium, and large. Everything else Apple does has but one raison d’être: They push up the volumes and margins of the company’s main hardware products.

[…]

My feeling is that Cook and his team are way ahead of us — or me, anyway. They’ve known for a while that Apple has entered a different era. With no Next Big Thing on the horizon — with Devices in a safe-but-slow incremental upward incline — the company has been compelled to move into conquest mode with its Services. This forced change in priorities has consequences, the compass needle points in a different direction. The reward system, people hired, career opportunities, “How We Do Things Here” culture…everything changes.

[…]

It pains this aging geek to think such thoughts, but I can’t help but assume that Apple will evolve into a different sort of company.

Dave B:

This has already been apparently for a while in software.

Look at apps like Apple Music and the TV app. Those apps are not built for the user; they’re built like billboards to sell the music & tv services.

This shift in Apple’s North Star has already begun and it’s worrisome.

Michael Love:

I agree, the problem is that Apple isn’t actually that good at making services and most of their services profit comes from some combination a) rent-seeking lock-in, b) being installed by default, or c) system integration unavailable to third parties.

Ken Kocienda:

Company missions speak to potential employees as much as to prospective customers. If the CEO always talks about services, it will attract people who want to work on that as a mission. It also drive away people who want to work on a different mission, like making great products.

Previously:

iOS 16 Text View Breakage

Jeff Johnson:

Apple automatically opted in UITextView to TextKit 2, for both Apple’s apps and third-party apps. The developer must explicitly opt out of TextKit 2 to use the old TextKit 1 behavior.

[…]

Apple’s typical way of preserving binary compatibility is to opt in an app to new features only if it’s compiled with the new SDK. This would have solved my problem, because my discontinued app is of course not compiled with the iOS 16 SDK.

Tuesday, September 13, 2022 [Tweets] [Favorites]

Launching Apps From iOS 16’s Lock Screen

Sami Fathi:

The app called “Launchify” lets users configure one or more iOS 16 Lock Screen widgets that directly open any app of their choosing. Users can create a widget to quickly open Messages, Twitter, the Phone app, or Apple or Google Maps, for example.

While iOS 16 includes a redesigned Lock Screen with new customization features, Apple does not allow users to replace the flashlight and Camera app shortcuts with custom apps.

Halide:

Finally, you can open Halide right from your lock screen!

Halide 2.8 — our iOS 16 update, with 7 different lock screen widgets and other enhancements is out now[…]

Previously:

Sunsetting Dark Sky

Dark Sky (via Hacker News, MacRumors):

As previously announced, the Dark Sky iOS app will no longer be available beginning on December 31st, 2022 and, as of this date, already purchased versions of the app will no longer provide weather data. The Dark Sky API and website will continue to function until March 31st, 2023.

So far I am finding Apple’s weather service to be less accurate than The Weather Channel.

beefman:

Folks here said the new Weather app has the same info. I upgraded to iOS 16 about a year before I normally would just to check this. And nope, it doesn’t have the one feature I use Dark Sky for – the one feature no other weather app has: the ability to see what the weather was yesterday.

It’s what Dark Sky calls “Time Machine”.

Lee Bennett:

I’ve LOVED the Dark Sky app for years. I am led to understand Apple’s native weather app is improved in iOS 16 (I haven’t updated yet), but based on reviews, the Dark Sky UI I’ve grown to love isn’t even remotely approximated in Apple Weather app.

Previously:

Update (2022-09-26): Adam Engst:

My gripe with the daily graph screen is that it defaults to temperature rather than remembering what you had previously viewed. I’m less interested in temperature than precipitation most of the time, so I’d have to switch to the precipitation forecast manually every time. The workaround is to scroll down to the display of a particular metric on the main screen and tap that to jump directly to that metric’s graph screen. Better, but still fussy.

Welcome as these features are, I don’t see myself using them. Apple’s Weather app may have integrated Dark Sky’s capabilities, but I don’t love its interface, particularly with the individual metric cards, which are difficult to parse quickly.

Safari 16

Jen Simmons (Hacker News):

Safari for iOS 16 includes support for still images compressed using the AVIF format. Developed by the Alliance for Open Media, AVIF is an alternative to image formats like JPEG, PNG, GIF, or WebP. It offers multiple color spaces, lossless and lossy compression, and more. Support for AVIF will also come to macOS Ventura and iPadOS in October.

[…]

Safari 16 adds Apple Pay support for Merchant Tokens, a more efficient way to support recurring payments, and support for multi-merchant payments, a way to pay multiple merchants of record in one transaction. Safari 16 also supports Order Tracking to enable merchants on the web to provide detailed order and shipping information in Wallet. Apple Pay can now be used in all WKWebView.

[…]

Safari 16 brings support for Web Inspector Extensions, enabling you to enhance Safari’s built-in web developer tools.

[…]

WebKit now supports Shared Workers. It’s similar to Service Workers, running JavaScript in the background, but its lifetime is slightly different. Your Shared Worker runs as long as the user has any tab open to your domain. All the tabs open to the same domain can share the same Shared Worker.

Previously:

Update (2022-09-23): Matt Sephton:

Pasting text using 3-finger pinch gesture no longer works in iOS 16 Safari? It zooms the page content the same as 2-finger pinch. So annoying.

DrGonzo84:

So I have about 10 tabs I like to regularly open when I open my browser now they load one at a time and only when I click on the next one... Before the update today it would load them all in the background. What the hell this sucks !

Previously:

watchOS 9

Apple (MacRumors):

Apple today launched watchOS 9, which brings new features and enhanced experiences to the world’s leading wearable operating system. Apple Watch users now have more watch faces to choose from, with richer complications that provide more information and opportunity for personalization. In the updated Workout app, advanced metrics, views, and training experiences inspired by high-performing athletes help users take their workouts to the next level. The Sleep app includes sleep stages, and for users diagnosed with atrial fibrillation (AFib), the new FDA-cleared AFib History feature provides deeper insights into a user’s condition. The new Medications app makes it easy for users to conveniently and discreetly manage, understand, and track medications.

Alex Guyot:

What leaves me feeling so conflicted is that, ultimately, all of the above features were pretty bad. No one used the Friends interface, Time Travel wasn’t particularly useful, third-party Glances were kneecapped by their lack of interactivity, and communicating from an Apple Watch has always just been way more work than pulling out your iPhone. Apple was right to kill all of these features in their time, but I still can’t stop missing the days when my Apple Watch was searching for more variety in purpose than it exists with today.

[…]

This direction has led to years of remarkably tight annual updates. Everything (with the exception of watch faces) in each new version of watchOS is solid. Every improvement is well thought out, helpful, and useable.

I don’t want to look a gift horse in the mouth. Each year, Apple delivers a high quality and effective watchOS update. I just don’t think this operating system is as finished as these updates seem to imply that it is. There was merit in the ideas of early watchOS, even if the execution wasn’t quite there yet.

Alex Guyot:

At this point in time, I struggle to understand why Apple keeps stuffing significant new features into the Health app. Especially in the modern era of iOS where we can delete unused first-party apps, I wish Apple would be less afraid to just spin up new apps on iOS that match their watchOS counterparts. The Medications interface in Health is entirely different from the rest of the app, so it’s already like Apple is hiding an app inside of a different one. It would be far less confusing and more convenient for users if Medications was a first-party iOS app just like it is on the Watch.

[…]

The camera lookup feature is impressively accurate. I tried it against a variety of items that I found in my house, from pill bottles to spray bottles to ointments. Never once did the app fail to identify exactly what the medication was, as well as the strength and unit of measurement if defined on the container.

Alex Guyot:

Banner notifications make watchOS feel like a software platform again rather than a high-end Fitbit. The ability to create and edit calendar events and reminders, and to discover and follow new podcasts, aid in this vibe shift as well. I hope we continue to see more features like these in the coming years.

Joe Rossignol:

In a new support document published today, Apple detailed specific features that are disabled or affected when Low Power Mode is turned on[…]

Previously:

Monday, September 12, 2022 [Tweets] [Favorites]

iOS 16

Apple (feature list, MacRumors, tweet, Hacker News):

iOS 16 enhances iPhone with all-new personalization features, deeper intelligence, and more seamless ways to communicate and share.

Federico Viticci (tweet):

iOS 16, launching today for a variety of iPhone models dating back to the iPhone 8, marks Apple’s triumphant return to user personalization, with a twist: while in 2020 customization might have felt like a happy consequence of Apple’s engineering, this time the company has intentionally marketed iOS 16 as an update that will make an iPhone feel truly your own. As we explored in June and July, the first thing you see on your iPhone – the Lock Screen – is fundamentally changing in iOS 16. With the ability to create multiple Lock Screens, choose from a diverse collection of wallpaper sets, and customize each one with widgets, you’ll now have endless possibilities for the screen you always see when you pick up your iPhone.

[…]

In keeping with my theory that modern iOS updates always need to have a little bit of something for everyone, there’s a ton of other (some bigger, some smaller) features I’ll be covering in this review. Messages, one of my most used apps on iPhone, has received a substantial update with the ability to edit and un-send messages, making it, in some ways, even superior to WhatsApp for me now. Mail – of all apps – has gotten a major upgrade with modern features such as scheduled send and, almost unbelievably, a revamped search that actually works. Reminders has officially turned into a serious task manager with even more filters for smart lists and the ability to create and share templates with others.

Apple:

This document describes the security content of iOS 16.

Hartley Charlton (Hacker News):

There are usually multiple features that Apple is not able to finish before the first official release of a major new version of iOS, and this year looks to be no different, with a total of nine iOS 16 features now confirmed to not be present in the first public version of the new OS.

iPadOS 16 is also coming later.

Damien Petrilli:

Apple Books on iOS 16: open a book, start to read, flip your phone to landscape mode: your page is lost and you are back at the beginning of your current chapter.

Michael Love:

Finally installed iOS 16 on my main phone and the new iBooks is awful - page scrolling animation is distracting and way too slow, jitters and flashes on every page. I can overlook a confusing / inconsistent design and tiny buttons, but at least get the scrolling to look right.

Casey Liss:

MaskerAid users: it will not work on iOS 16; the bottom toolbar (where the share button is) is not there. I have a fix that Apple rejected to get clarifying info, and though I’ve replied to them, they’ve ghosted me for the last couple days.

Francisco Tolmasky:

First experience with iOS 16: Go to update apps, it puts up a new ‘Apple Media Services Terms and Conditions” modal dialog. I click “Agree”. It tells “There was an error. Please try later.” I can’t update apps.

Paul Haddad:

Great can’t update anything.

Juli Clover:

Apple has fixed the problem and apps are now able to be downloaded.

Previously:

Xcode 14

Apple:

Xcode 14 includes Swift 5.7 and SDKs for iOS 16, iPadOS 16, tvOS 16, watchOS 9, and macOS Monterey 12.3. The Xcode 14 release supports on-device debugging in iOS 11 and later, tvOS 11 and later, and watchOS 4 and later. Xcode 14 requires a Mac running macOS Monterey 12.5 or later.

As with last year, the release version of Xcode removes the beta SDK for this fall’s macOS update.

Xcode Releases:

Xcode 14 is identical to the release candidate last week.

Previously:

Swift 5.7

Holly Borla:

The Swift 5.7 language and standard library feature a number of improvements:

  • New shorthand syntax for common boilerplate code, including if let statements and multi-statement closure type annotations
  • Lifted long-standing language limitations to make generic programming more seamless
  • Enhanced data race safety with new annotations and opt-in diagnostics
  • Actor isolation in distributed environments
  • Improved usability of a suite of existing pointer APIs
  • Brand new language support and APIs for string processing

Most of these features were discussed at WWDC22 and were covered in a previous blog post, Swift language announcements from WWDC22. You can also find a complete list of language and standard library Swift Evolution proposals in the Swift Evolution Appendix.

Bruno Rocha:

In this article, we’ll explain the concept of type erasure, how it used to be done, what’s different in Swift 5.7, and how these changes work under the hood.

Previously:

iOS 15.7 and iPadOS 15.7

Juli Clover:

Alongside iOS 16, Apple has released new versions of iOS 15.7 and iPadOS 15.7. The iOS 15.7 update is aimed at those who are not able to upgrade to iOS 16 , while iPadOS 15.7 is available while we wait for the launch of iPadOS 16 in October.

Apple:

This document describes the security content of iOS 15.7 and iPadOS 15.7.

Previously:

macOS 12.6 and macOS 11.7

Juli Clover:

macOS Monterey 12.6 addresses a number of kernel vulnerabilities as well as issues with maps, iMovie, ATS, MediaLibrary, and PackageKit.

You can download the installer and IPSW (via Mr. Macintosh).

Howard Oakley:

Big Sur 11.7’s release notes report more fixes, including two kernel bugs which are thought to have been actively exploited, so this is also an urgent update for anyone still using Big Sur.

The installer is here.

Mr. Macintosh:

Apple did not release an associated security update for macOS Catalina.

macOS Catalina is no longer supported by Apple.

Previously:

Update (2022-09-14): Maynard Handley:

With macOS 12.6 Apple has adopted a cunning new strategy of not having to deal with errors that accumulate over a long time by

  • forcibly restarting the mac every day (twice since I installed 12.6)
  • preventing Safari from starting if “too many” pages were open when it was quit

Rob Griffiths:

macOS 12.6 is out, the 173rd release of macOS/Mac OS X since the initial public beta. And with Apple continuing to update macOS 11 as well, its release count now dwarfs all other releases—23 and counting, 10 more than the nearest competitor.

Update (2022-09-23): Lucas Curious:

latest update 12.6 causes Apple Studio Display to be unresponsive. I have to unplug each time and very delayed response to wakeup

I have not seen this problem myself.

Friday, September 9, 2022 [Tweets] [Favorites]

iPhone Portrait Mode: Past, Present, and Foreground

Nate Pfeiffer:

Portrait mode on the iPhone 7 Plus showed a lot of promise but its flaws were plain to see, for a number of reasons. The depth maps it generated lacked any fine detail and often assumed features like glasses or ears were part of the background, resulting in inaccurate blurring.

[…]

Let’s break down the iterative improvements that led to the 13 Pro being near indistinguishable from the Rebel T6 in our first example. First, the image processing brings out more fine detail and widens dynamic range, preventing highlights from overexposing. The depth estimation did a better job at keeping the background blurred between small foreground objects and cutting out foliage edges. Shallower bokeh simulation (which can be manually adjusted) and iOS 16’s foreground blur are the cherries on top.

[…]

Apple’s new, aggressive approach to processing faces is laid bare here. Ensuring even exposure on the skin takes priority above all else. In many ways, the 8 Plus’ photo is more realistic with regard to lighting, due to its contrasted look, while the 13 Pro’s photo just feels more perfect than reality.

The depth maps have really improved.

Via Nick Heer:

Portrait Mode has come a long way since its first iterations. […] That said, I still have not found Portrait Lighting very useful. It does not seem to have benefitted nearly as much from the significant investments in Portrait Mode.

Previously:

iCloud Shared Photo Library Delayed

John Voorhees:

So, what do you do if you’re in a shared library and want to join a different one? There’s a button in the Photos section of Settings to leave a library, so you can do so with one tap, saving all of the photos in the shared library to your personal library or keeping just those you originally contributed to the shared pool.

[…]

However, it was clear by this point that it was going to take hours, not minutes, to process 25,000 photos. Still, after only a half hour or so, several thousand photos had already been moved to the new library.

[…]

What I like most about the setup process is that it’s not a black box. Instead of flipping a toggle and hoping for the best, the multi-step process explains what will happen simply and thoroughly, building the user’s trust by explaining every option and the consequences of each. That’s critical when it comes to something as precious as your family photos. So, overall, the iCloud Shared Photo Library setup gets two enthusiastic thumbs-up from me. Every team at Apple that’s designing an onboarding process should look to this flow as one of the best on the company’s platforms.

Tim Hardwick:

However, in a footnote at the bottom of its iPhone 14 press release, Apple says “iCloud Shared Photo Library will be available in a future software update.” It therefore looks like the new Photos iCloud feature will not make it to the first official version of iOS 16.

Previously:

Using Lazy Properties for Views

Steve Landey:

There are three patterns I use in most of my UIKit projects that I’ve never seen anyone else talk about. I think they help readability a lot, so I’m sharing them here[…]

[…]

Additionally, it’s not great to use force-unwrapped optionals to store anything. But if we use let instead, then all views will be created at init time instead of in loadView().

[…]

We can solve a lot of problems by moving all view creation to the bottom of the file and using lazy var.

The standard guidance is to use implicitly unwrapped optionals to reference views in a view controller, but I think lazy works much better. Aside from the delayed loading benefit, lazy lets you reference self, and thus other properties and helper methods, which you would not ordinarily be able to do from a Swift initializer. (The compiler does protect you from making circular references to other lazy properties.) And, because you are providing an initial value, the type of the property can be inferred.

A downside is that there’s no lazy let, so the compiler can’t prevent you from accidentally mutating a variable that you meant to only set once. One way around this is to use a helper object with all the properties as let and to store that in the var, but I think the awkwardness this causes is worse than the problem it solves. Landey suggests:

You can at least prevent multiple writes to vars at runtime by using this simple property wrapper, which throws an assertion failure in debug builds if you write to the property more than once. It’s not as good as a compile-time guarantee, but it does double as inline documentation.

You can decide whether the protection is worth the noise. I’m more interested in something like this to prevent write access to conceptually immutable properties except from tests. However, that is more relevant for model properties, which often use Core Data, and property wrappers don’t work with @NSManaged. Core Data itself provides a—more verbose—out, though: you can still set a property with a private setter by key.

Landey then recommends defining the properties at the top of the file and using helper functions at the bottom of the file to actually create the views. Personally, I prefer to see everything related to a property together at its declaration. If you use lazy and create the initial value right there, you can set up the whole property without having to repeat its name or type anywhere.

Previously:

SwiftUI’s Diffing Algorithm

Rens Breur:

As clients of the SwiftUI framework, we can only create composed views. Composed views can have state, and can be seen as a function of this state to another view. Composed views use primitive views in their body. Primitive views are the building blocks of any type of view.

[…]

SwiftUI needs to perform diffing to find out how to change the view graph and how to update the layout tree. Primitive views play the most important role, and there are only a small number of structural views underneath which a view graph can change.

[…]

Remember the example in the introduction where it was ambiguous what the changes in a list of labels was? This is the same example! But the algorithm we created knows exactly whether a label’s text has changed, or whether it was replaced with another label. It was able to do that, by using static typing, and by making the view types themselves help determine what has changed.

Previously:

Thursday, September 8, 2022 [Tweets] [Favorites]

Indie Anniversaries

Paul Kim:

It’s been 16 years ago today since Hazel’s first release. Why celebrate the 16th anniversary? Because I thought it was actually 15 years but got the dates wrong. So, to mark the 16th anniversary (or a belated 15th, if you prefer), Hazel is 30% off.

Christian Tietze:

I realized that my official 10th “company” anniversary is just around the corner!

Thanks everyone for joining the AMA yesterday! Was a fun experience :)

We talked about a couple of technical and historic things.

Ken Case (tweet):

Speaking of time flying, today marks the 30-year anniversary of the day we started doing business together as “the Omni Group.”

[…]

We’ve seen a lot of operating system releases over the last 30 years—coincidentally, 30 years ago today was also the day that NeXT shipped the NeXTSTEP 3.0 operating system!

Christopher Atlan:

I forgot to tweet this year, but Aug 29 marked 16 year of Letter Opener!

Previously:

Update (2022-09-09): Peter N Lewis:

@keyboardmaestro is 20 years old this year. Michael Kamprath released Keyboard Maestro in 2002, but I didn’t acquire it until 2004 for the release of version 2.0.

Steve Troughton-Smith:

Tomorrow marks the 15th anniversary of me building apps for iPhone. Before App Store, before iPhone SDK, there was a passionate community of developers exploring that new frontier on jailbroken devices. I built my first app without access to any device, and debugged it via email

Update (2022-09-22): Paul Kafasis (tweet):

20 years ago this month, Rogue Amoeba unveiled Audio Hijack 1.0, the very first version of what has become our flagship product. To celebrate that anniversary, we’ve got a great deal to share with you.

My DropDMG and SpamSieve are also 20 this year.

Nick Heer:

There is something very special about using products made by independent developers like these. It is software with personality, driven by a level of care and passion that is understandably lost in larger organizations. When I am having trouble or want to request a feature enhancement, I can send an email from somewhere in the application and receive a response from a real person who has the power to make things happen. Institutional developers have their place, but I feel an level of individual care from the indie software projects I use on a daily basis.

Accidental Tech Podcast:

🎉 ATP EPISODE 500!!! 🎉

AppleCare+ Unlimited Repairs

Juli Clover:

Apple says that AppleCare+ for iPhone “includes unlimited incidents of accidental damage protection,” with each one subject to service fees. Screen or back glass damage carries a $29 fee, while other accidental damage carries a $99 fee.

[…]

Unlimited repairs are also available for the Apple Watch, iPad, and Mac, with the feature applicable to every AppleCare + plan.

Previously, it included 2 repairs per year. Knock on wood, but I haven’t needed AppleCare in a long time, and never for a phone.

Previously:

AirPods 3 With Lightning-Only Charging Case

Joe Rossignol:

Pricing for the third-generation AirPods with a Lightning case is set at $169 in the United States, compared to $179 for the third-generation AirPods with a MagSafe case, so it seems like there is very limited value in choosing this new option.

It’s hard to believe Apple is adding a SKU with only a $10 difference. At first I thought maybe this was because they were discontinuing AirPods 2, but those are still available for $129. I’ve grown to like wireless charging, but if you don’t want it, why not save more money and get the AirPods 2, since the controls and case lid work better?

Previously:

Mac App Store and Investing Engineering Time

Christopher Atlan:

We knew that some exceptions had been permitted in the 2018 Mac App Store refresh. However our conversation with Developer Relations and DTS went nowhere.

The existence of an exception was acknowledged, but at the same time not granted to us.

[…]

So we came up with a Plan B: sandboxing ksdiff and granting it file access to the file system via back channel to our app.

[…]

I should have known better. I knew the stats: fewer than 10% of our users actually run the Mac App Store version. Yet I committed the team to work for what turned out almost a month on tackling all the sandbox issues, creating the entire flow for a command line utility to request file access, and testing it by throwing every workflow at it that we could think of.

It should be noted that sandboxing ksdiff did not actually make anything more secure because, even unsandboxed, if it’s invoked from a sandboxed app it only has access to what that app can access. And, so far, the extra work hasn’t paid off because the app is still in limbo.

At this time, Kaleidoscope 3.6 has been in review for a full month without communication or progress, after an initial quick rejection. Not only is there frustration with the current update, our trepidation grows with regard to the updates we have been planning down the road.

[…]

This teaches me that the Mac App Store is no place for developer tools with more complex technical requirements than your average app. Which seems wrong, as Develop is one of the main categories in the App Store app.

Jonathan Deutsch:

I’d go so far to say that any applications that need to read or write files that it did not create (e.g. generic file types or another app’s files) are not suited for being on the Mac App Store.

So not just dev tools but also utilities and pro apps that have complex workflows.

Geoff Hackworth:

Well, that’s rather unsettling:

“We need additional time to evaluate your submission and Apple Developer Program account.”

My account? 😬 I got this after 10 minutes in review for both the free and paid version of an app which has been in the store for almost 8 years.

[…]

This ordeal has caused me a great deal of anxiety. I still can’t be sure what crime they suspected me of. They never told me. But I guess I’m not guilty. Although it does seem like I would have been unable to submit apps for the last 15 days. Not guilty, but punished anyway.

Jonathan Deutsch:

In my experience there’s often lots of small-but-cool features often pre-sandbox apps have that aren’t compatible. So joining the MAS means removing them and accepting that you have a worse app (and will likely get customer requests for it or confusion).

Previously:

Update (2022-09-09): Jonathan Deutsch:

My educated speculation is that upper management is deeply afraid of macOS becoming Windows of ~20 years ago – stricken with malware.

Security restrictions are introduced but there’s no internal incentives to counterbalance these.

[…]

WebKit had a great performance philosophy: if you regress performance in one area you need to at least improve it back elsewhere.

I’d love to see this for security features - if one is added, you need to add some workflow/automation/enablement/creativity feature elsewhere :).

Update (2022-09-14): Hunter:

This new thing where App Review asks you to explain how you’re using public API (App Intents, Transferable) and provide a video to get approved is total BS. Infuriating.

Apple Still Sitting on Entitlement Requests

Timo Hetzel:

Let me check my CarPlay entitlement request… ∞ days and counting.

Gernot:

The fact that developers think about separating an app and degrading the user experience because of app review times should sound your alarm bells. Same for HomeKit. Please fix review times for apps with special entitlements.

Anders Borum:

Apple engineers at WWDC: Can’t wait to see what you build.

Apple App Review: We can wait and you will wait.

Wayne Dixon:

I submitted an entitlement request 3 weeks ago and still haven’t heard anything.

Previously:

Update (2022-09-09): Oskar Groth:

Finally got approved for a DriverKit entitlement after just checks calendar 445 days 💀

The Steve Jobs Archive

John Vorhees (Hacker News):

Yesterday, the Code conference held a session featuring Laurene Powell Jobs, Jony Ive, and Tim Cook, who talked about Steve Jobs’ legacy with host Kara Swisher. As part of the event, the trio unveiled the Steve Jobs Archive, an online repository of historical material from Steve Jobs’ life.

The simple, chronologically organized website features quotes and other materials from Jobs’ life, including some that have never been published before.

Previously:

Wednesday, September 7, 2022 [Tweets] [Favorites]

iPhone 14 Pro and iPhone 14 Pro Max

Apple (MacRumors, Slashdot):

The Dynamic Island enables new ways to interact with iPhone, featuring a design that blends the line between hardware and software, adapting in real time to show important alerts, notifications, and activities. With the introduction of the Dynamic Island, the TrueDepth camera has been redesigned to take up less of the display area. Without impeding content on the screen, the Dynamic Island maintains an active state to allow users easier access to controls with a simple tap-and-hold. Ongoing background activities like Maps, Music, or a timer remain visible and interactive, and third-party apps in iOS 16 that provide information like sports scores and ride-sharing with Live Activities can take advantage of the Dynamic Island.

[…]

For the first time ever, the Pro lineup features a new 48MP Main camera with a quad-pixel sensor that adapts to the photo being captured, and features second-generation sensor-shift optical image stabilization. For most photos, the quad-pixel sensor combines every four pixels into one large quad pixel equivalent to 2.44 µm, resulting in amazing low-light capture and keeping photo size at a practical 12MP. The quad-pixel sensor also enables a 2x Telephoto option that uses the middle 12 megapixels of the sensor for full-resolution photos and 4K videos with no digital zoom. This delivers optical quality at a familiar focal length, which is great for features like Portrait mode.

[…]

With two high-performance cores and four high-efficiency cores, the new 6-core CPU is up to 40 percent faster than the competition and easily handles demanding workloads.

They are comparing the A16, not with the A15, but with an unspecified chip that’s slightly slower than the A13 from 2019.

Marco Arment:

They turned the notch into a feature. That’s damn-clever design.

ok Alan Dye you win this one

Collin Allen:

The iPhone 14 Pro notch/pill design and animations look outstanding. Embracing the limitation instead of just tolerating it.

Craig Hockenberry:

Whoa. Safe area hell.

John Siracusa:

“Dynamic Island” may be the strangest Apple name in several years (and that’s saying something).

John Gruber:

Last year the iPhones started at these prices (128 GB):

13 Mini: $700 (+$30 bullshit carrier fee)
13: $800 (+$30 bullshit carrier fee)
13 Pro: $1000
13 Pro Max: $1100

Previously:

Update (2022-09-08): Sami Fathi (tweet):

A Geekbench test result for iPhone15,3, the identifier for the iPhone 14 Pro, shows the new iPhone with a single-core score of 1879 and a multi-core score of 4664. The iPhone 13 Pro scores 1707 in single-core and 4659 in multi-core, only being marginally slower than the latest high-end iPhone.

Federico Viticci:

I knew the Dynamic Island animations had a familiar vibe...

Apple’s WWDC 2013 promo video and iPhone 14 Pro Dynamic Island. A decade apart.

Nick Heer:

Apple’s advice to developers was to, in effect, simply ignore the notch and pretend it does not exist. But then WWDC this year brought a brand new HIG and, while we were all distracted by its redesign, Apple subtly updated its layout guidance to remove restrictions on how to deal with sensor housings. Now, Apple simply advises designers and developers to “[r]espect key display and system features in each platform” by following its recommended safe areas.

Marco Arment:

iPhone 14 Pro display resolution is very slightly larger than 13 Pro:

13 Pro: 2532 x 1170
14 Pro: 2556 x 1179

Both are 460 PPI.

Jonathan Deutsch:

The screen size is 8 pixels taller but the dynamic island takes 20 pixels more than the notch, losing you 12px of effective height.

Ryan Jones:

The camera bump march of time continues.

  • iPhone 14 Pro bump is 4.18mm total
  • that’s over half the thickness of the phone body
  • including bump, the 14 Pro is thicker than original iPhone

Sami Fathi:

Apple says the iPhone 14 Pro and iPhone 14 Pro Max weigh 7.27 ounces and 8.47 ounces, respectively, which is only slightly heavier than iPhone 13 Pro models.

Sami Fathi:

Since the iPhone 14 Pro is the first iPhone to include an always-on display, there are several unknowns about how the feature will work, what it will look like, whether it will be customizable, and how it will impact battery life. We answer those questions and more below about the new feature of Apple’s highest-end iPhone.

iPhone 14 and iPhone 14 Plus

Apple (MacRumors, Hacker News, Slashdot):

Available in the popular 6.1-inch size and a stunning new 6.7-inch size, iPhone 14 and iPhone 14 Plus feature a durable and sleek aerospace-grade aluminum design in five beautiful finishes.

[…]

iPhone 14 and iPhone 14 Plus introduce a new standard for photo and video capture with a new 12MP Main camera featuring a larger sensor and larger pixels, a new front TrueDepth camera, the Ultra Wide camera to capture more of a scene, and Photonic Engine for a giant leap in low-light performance.

[…]

With a new dual-core accelerometer capable of detecting G-force measurements of up to 256Gs and a new high dynamic range gyroscope, Crash Detection on iPhone can now detect a severe car crash and automatically dial emergency services when a user is unconscious or unable to reach their iPhone.

[…]

The iPhone 14 lineup also introduces Emergency SOS via satellite, which combines custom components deeply integrated with software to allow antennas to connect directly to a satellite, enabling messaging with emergency services when outside of cellular or Wi-Fi coverage.

As rumored, it still uses the A15, and there is indeed no new iPhone mini.

Marco Arment:

Sounds like they’ve renamed the “Wide” camera to “Main”. Good.

Joe Rossignol:

Apple today announced that all iPhone 14 models sold in the U.S. do not have a built-in SIM card tray and will rely entirely on eSIM technology.

Ben Bajarin:

Apple now fully offering safety as a service.

Emergency SOS via satellite is free for the 2 years, with pricing after that unannounced.

Previously:

Update (2022-09-08): Joe Rossignol:

Apple never advertises the amount of RAM in iPhones, but MacRumors can confirm that all four iPhone 14 models are equipped with 6GB of RAM.

Joe Rossignol:

An optional new accessibility feature allows the upcoming iPhone 14 models to play a sound while turning on and off, according to assistive technology expert Steven Aquino, who compared the feature to the Mac’s iconic startup chime.

Joe Rossignol:

While the new iPhone 14 lineup does not include an iPhone 14 mini, Apple continues to sell the iPhone 13 mini, with pricing starting at a lower $599 in the United States. The device remains available with 128GB, 256GB, and 512GB of storage in several colors.

Nick Heer:

For people who do not demand the latest and greatest, this may be the best news from today’s announcements. The iPhone 12 is just $600, and so is the iPhone 13 Mini.

AirPods Pro 2022

Apple (MacRumors, Hacker News):

With the power of the new H2 chip, AirPods Pro unlock breakthrough audio performance — including major upgrades to Active Noise Cancellation and Transparency mode — while also offering a unique way to experience Spatial Audio that’s even more immersive. Now, customers can enjoy Touch control for media playback and volume adjustments directly from the stem, along with longer battery life, a brand-new charging case, and an additional ear tip size for a better fit.

[…]

AirPods Pro offer 1.5 hours of additional listening time over the first generation, for a total of up to six hours with Active Noise Cancellation.

[…]

AirPods Pro come with a newly designed charging case that is sweat- and water-resistant, and includes a lanyard loop so it’s always within reach. With Precision Finding, users with a U1-enabled iPhone can locate their charging case with guided directions. The charging case also has a built-in speaker to deliver louder tones, so it’s even easier to locate.

It still uses Lightning and lacks support for lossless audio. Everything else sounds great, though.

Ish Abazz:

Volume controls on AirPods Pro!

James Thomson:

I will happily pay hundreds of pounds to be able to adjust the volume… Ok, maybe not happily.

Previously:

Update (2022-09-08): Joe Rossignol:

All four new iPhone 14 models and the second-generation AirPods Pro include support for Bluetooth 5.3, according to Apple’s tech specs for each device, but the status of LE Audio support for the devices remains unclear at this time.

Apple Watch Ultra

Apple (MacRumors, Hacker News):

Apple Watch Ultra introduces a 49mm titanium case and flat sapphire front crystal that reveals the biggest and brightest Apple Watch display yet. A customizable Action button offers instant access to a wide range of useful features. Apple Watch Ultra has the best battery life of any Apple Watch, reaching up to 36 hours during normal use. Additionally, a new low-power setting, ideal for multi-day experiences, can extend battery life to reach up to 60 hours. The Wayfinder watch face is designed specifically for the larger Apple Watch Ultra display and includes a compass built into the dial, with space for up to eight complications. Apple Watch Ultra also brings three new bands — Trail Loop, Alpine Loop, and Ocean Band — offering unique design features that provide a secure and comfortable fit for every adventure.

[…]

Apple Watch Ultra has three built-in microphones to significantly improve sound quality in voice calls during any conditions.

[…]

For the first time ever in an Apple Watch, the precision dual-frequency GPS integrates both L1 and the latest frequency, L5, plus new positioning algorithms.

[…]

Backtrack uses GPS data to create a path showing where the user has been, which is useful if they get lost or disoriented and need help retracing their steps. It can also turn on automatically in the background when off the grid. With a single press of the Action button, users can quickly drop a Compass Waypoint or start or view a Backtrack. An 86-decibel siren is designed for emergencies, should users become lost or injured, and can help draw attention to a location.

All models have cellular and start at $799.

Ryan Jones:

So nomenclature definitions.

Pro = fancy high-end
Max = maximum pro’ness
Ultra = over-the-top, ultra-rare use cases
Extreme = no one really needs this, just pushing limits to push limits

Michael Gorbach:

The Apple Watch Ultra’s Action Button is powered by some awesome new App Intents APIs. You will be able to build your own apps to integrate with it, like a hockey app that uses the button to record goals! And for users, the button can kick off any Shortcut you want!

Jason Snell:

Turns out that extreme-sport-focused Apple Watch really is extreme-sport focused. Apple Watch Ultra. I suppose there will be aspirational aspects of this but Apple’s not shying away from the sports messaging.

Alex Roddie:

As someone who has tested countless GPS watches actually designed for mountain use, I’m not impressed by it. 36 hours battery life is pathetic. 65 hours would be just about competitive these days.

And by 65 hours I mean 65 hours of full-burn GPS tracking. I doubt that the Watch Ultra can cope with even a third of this, which makes it years behind the competition.

It’s so painfully obviously a device designed by urban people who want to ‘disrupt’ a market they don’t understand.

[…]

It’s amazingly hard to find any tech that works without frustration in the backcountry. Even Garmin/Suunto devices, designed from the ground up for this stuff, are full of issues and irritations.

Sean Heber:

Well, I will say, this Ultra watch is a much better use of Apple’s vast resources and research than making a solid gold $10,000 “I’m too rich for my own good” edition like they did way back in the day.

Previously:

Update (2022-09-08): Victoria Song (tweet):

As for how that wrist slab feels, it was actually lighter on my wrist than I’d expected, probably because its case is made of titanium. But make no mistake — it is a BIG watch.

Ben Bajarin:

It was surprising how light Apple Watch Ultra is. For me, the size won’t be an issue. I asked why not a smaller size for women and basically they couldn’t pack all the tech into a smaller size.

Nicolas Magand:

I don’t think Apple wants to be the most popular smartwatch brand among “adventurers” or wants to compete with Garmin directly (it has to be a small market overall: Garmin’s fitness division revenue in 2021 was only $1,534 million, which is pretty much pocket change for Apple). Apple wouldn’t mind, and I am pretty sure it is one of the company’s goals. What Apple wants first is to attract a very desirable segment of the population into the Apple ecosystem because Apple knows these people are inspiring, just like creatives.

It can be described, I think, as product placement. But instead of spending money to pay companies or individuals to have a device featured in a movie or on Instagram, Apple spends money creating the product that people making these movies and social media posts will organically buy.

Thomas Ricker:

I’m a longtime Garmin watch fan. Most of my friends and family have all purchased svelte Apple Watches. It’s a great smartwatch but I wanted a great outdoor adventure and fitness watch to pair with my iPhone instead. That’s why I’ve been wearing big hulking Garmin watches like the Fenix and Epix series despite their clumsy software interfaces. I’ve used them to obsessively track and measure my performance in a variety of activities that include kitesurfing, trail running, golfing, weight training, and mountain biking.

[…]

Without a doubt, the Apple Watch Ultra comes up short on a spec comparison with similarly priced devices sold by Garmin, Coros, and others. The battery is the most glaring example: 36, or even 60 hours enabled by a future low-power update, is weak in a category where batteries are measured in weeks. Out of the box it also lacks things like built-in topographical maps needed for trails, or support for Bluetooth power meters and cadence sensors used by cyclists. Apple’s sport features and analytics also pale in comparison to the depth and variety offered by the competition.

[…]

I can say this already though: Garmin’s biggest weak spot is usability. Its high-end watches have tons of features and capabilities that are obscured by complicated software that feels, at times, like operating a scientific calculator. Apple excels at user interfaces, Garmin doesn’t, just like Nokia which struggled in vain to adapt Symbian in response to the iPhone and Android. And given enough time, Apple’s watches will catch up to the specs and features available on Garmin’s flagship watches.

Jason Snell:

I’m not sure how you can underestimate one of the world’s most successful companies, but somehow we managed to do it with Apple regarding Wednesday’s “Far Out” event.

Update (2022-09-09): John C. Welch:

So i know that a lot of the new Watch stuff were aimed at long hikes or what have you, but I want you to think about how those same features contribute to safety in everyday situations.

Not just the obvious, like crash detection et al, but all the new features…

Jonathan Deutsch:

Perspective on the pricing of the WATCH:

• Last year’s Series 7, Titanium, GPS+Cell, 45mm: $𝟴𝟰𝟵 𝗨𝗦𝗗

• This year’s Ultra, Titanium, GPS+Cell, 49mm, AND all other sensors/battery/etc: $𝟳𝟵𝟵 𝗨𝗦𝗗

You could argue it is cheaper than last year!

Apple Watch SE 2022

Apple (MacRumors):

The new Apple Watch SE delivers the core Apple Watch experience, including Activity tracking, high and low heart rate notifications, and Emergency SOS, as well as the new Crash Detection feature and a completely redesigned back case that perfectly matches the three classic case finishes, all at a more affordable price of $249 (US).

[…]

Powerful upgrades include the S8 SiP advanced dual-core processor, the same processor that is in Apple Watch Series 8 and Apple Watch Ultra, making it 20 percent faster than the previous generation, along with Crash Detection and international roaming.

[…]

Apple Watch SE maintains the same case design, but features a redesigned matching back case made of a nylon composite material, making it lighter than ever.

Previously:

Apple Watch Series 8

Apple (MacRumors):

With all-day 18-hour battery life, Apple Watch Series 8 builds on best-in-class health and safety features like the ECG app and fall detection by introducing temperature-sensing capabilities, retrospective ovulation estimates, Crash Detection, and international roaming.

[…]

When Apple Watch detects a severe car crash, the device will check in with the user and dial emergency services if they are unresponsive after a 10-second countdown. Emergency responders will receive the user’s device location, which is also shared with the user’s emergency contacts.

[…]

To keep users connected for even longer, a new Low Power Mode can extend battery life to reach up to 36 hours for Apple Watch Series 8 with iPhone present. This new mode temporarily disables or limits select sensors and features, including the Always-On Retina display, workout autostart, heart health notifications, and more.

Previously:

Monday, September 5, 2022 [Tweets] [Favorites]

Peter Eckersley, RIP

Seth Schoen (via Hacker News, Slashdot):

I’m devastated to report that Peter Eckersley (@pde), one of the original founders of Let’s Encrypt, died earlier this evening at CPMC Davies Hospital in San Francisco.

Peter was the leader of EFF’s contributions to Let’s Encrypt and ACME over the course of several years during which these technologies turned from a wild idea into an important part of Internet infrastructure. He also took a lot of initiative in coalescing the EFF, Mozilla, and University of Michigan teams into a single team and a single project. He later served on the initial board of directors of the Internet Security Research Group.

You can find a very abbreviated version of this history in the Let’s Encrypt paper, to which Peter and I both contributed.

Previously:

Web Pages Can Overwrite Your Clipboard

Jeff Johnson:

Chrome is currently the worst offender, because the user gesture requirement for writing to the clipboard was accidentally broken in version 104. A public demonstration of the brokenness has been posted on Web Platform News. If you simply visit the demonstration page in Google Chrome or a Chromium browser, then your system clipboard will be overwritten with the text below.

[…]

If the user gestures were limited to the keyboard shortcut for copy (⌘C on the Mac) or selecting the “Copy” command in a menu (main or contextual), that might be fine. But the gestures are not strictly limited in this way. In my testing, the following DOM events give a web page permission to use the clipboard API to overwrite your system clipboard[…] Therefore, a gesture as innocent as clicking on a link or pressing the arrow key to scroll down the page gives the web site permission to overwrite your system clipboard!

Using Environment Variables to Find Escaped Processes

Ben Martin:

Now what happens when the program crashes during a test? The developer is happy because they found a bug before submitting it. But the machine may not be. This type of crash will often leave behind child processes which will quickly gunk up the server, causing other tests to fail in unexpected ways. We need to find and terminate these stray processes or work will quickly grind to a halt.

[…]

Environment variables are one of the key ways that we can get information into a process when it launches.

[…]

When process finishes, search for any process by the current user that have the right environment variable/value combination

Kill all the escaped processes you found

However, as of macOS 11, System Integrity Protection prevents reading other processes’ environment variables—probably for the best.

PayPal Phishing Scam Invoices

Brian Krebs:

While the phishing message attached to the invoice is somewhat awkwardly worded, there are many convincing aspects of this hybrid scam. For starters, all of the links in the email lead to paypal.com. Hovering over the “View and Pay Invoice” button shows the button indeed wants to load a link at paypal.com, and clicking that link indeed brings up an active invoice at paypal.com.

Also, the email headers in the phishing message (PDF) show that it passed all email validation checks as being sent by PayPal, and that it was sent through an Internet address assigned to PayPal.

The e-mail really is sent through PayPal. The trick is that it encourages you to call a phone number, where they tell you to download remote control software.

Sunday, September 4, 2022 [Tweets] [Favorites]

Cloudflare Blocks Kiwi Farms

Ernesto Van der Sar:

For years, Cloudflare had a policy not to remove any accounts without a court order, so when it kicked out Daily Stormer and later 8Chan as well, eyebrows were raised. For example, copyright holders wondered why the company could terminate these accounts but not those of the most notorious pirate sites.

Cloudflare’s seemingly arbitrary termination choices were repeatedly cited in policy discussions and copyright litigation. In addition, it triggered an ongoing wave of termination requests.

Over the past few days, Cloudflare found itself in the midst of a ‘cancel’ discussion again, with people calling on the company to disconnect the harassment-linked forum Kiwi Farms.

Cloudflare (Hacker News):

Some argue that we should terminate these services to content we find reprehensible so that others can launch attacks to knock it offline. That is the equivalent argument in the physical world that the fire department shouldn’t respond to fires in the homes of people who do not possess sufficient moral character. Both in the physical world and online, that is a dangerous precedent, and one that is over the long term most likely to disproportionately harm vulnerable and marginalized communities.

[…]

Since those decisions, we have had significant discussions with policy makers worldwide. From those discussions we concluded that the power to terminate security services for the sites was not a power Cloudflare should hold. Not because the content of those sites wasn’t abhorrent — it was — but because security services most closely resemble Internet utilities.

[…]

While we believe we have an obligation to restrict the content that we host ourselves, we do not believe we have the political legitimacy to determine generally what is and is not online by restricting security or core Internet services. If that content is harmful, the right place to restrict it is legislatively.

Matthew Prince (Hacker News):

We have blocked Kiwifarms.

[…]

This is an extraordinary decision for us to make and, given Cloudflare’s role as an Internet infrastructure provider, a dangerous one that we are not comfortable with. However, the rhetoric on the Kiwifarms site and specific, targeted threats have escalated over the last 48 hours to the point that we believe there is an unprecedented emergency and immediate threat to human life unlike we have previously seen from Kiwifarms or any other customer before.

[…]

While law enforcement in these areas are working to investigate what we and others reported, unfortunately the process is moving more slowly than the escalating risk.

[…]

Hard cases make bad law. This is a hard case and we would caution anyone from seeing it as setting precedent. The policies we articulated last Wednesday remain our policies. For an infrastructure provider like Cloudflare, legal process is still the correct way to deal with revolting and potentially illegal content online.

Previously:

Update (2022-09-04): Nick Heer:

It is unclear to me what threats, specifically, prompted Cloudflare to reverse its de facto support of Kiwi Farms’ worldwide availability.

Kiwi Farms:

Cloudflare’s decision to block the site was done without any discussion. The message I’ve received is a vague suspension notice. The message from Matthew Prince is unclear. If there is any threat to life on the site, I have received no communication from any law enforcement.

Josh Moon, Kiwi Farms owner (via Hacker News):

This seems to be based off one of two things[…] A post made on 4chan’s /pol/ with a picture taken outside an apartment in Ireland which references the forum.

[…]

This means that a community with 16,000 daily sign-ins is being punished for the behavior of a single user, or a person not even on our website.

[…]

The post by @Washizu Iwao was posted at 9:42pm EU time. It was reported seven times. The user was also banned. […] The user deleted the post himself with the reason “retarded” 14 minutes after it had been posted, and 2 minutes after #DropKiwiFarms tweeted about it, as outlined here.

[…]

This person is not an active member of the community. This appears to be a sleeper account someone had gotten access to in July, and kept on hand to use like this.

Mike Rockwell:

Given that Cloudflare made this decision because they believed there to be an imminent threat and the seeming reluctance they had in doing so, I’m curious if this is even a permanent suspension. It isn’t mentioned as such in Cloudflare’s statement, they only refer to this move as “blocking”. If the illegal content is removed from the forum and Kiwi Farms cooperates with law enforcement — at least to the extent required by law — will the suspension be lifted?

Update (2022-09-09): Emma Roth (Slashdot):

Concerns about Kiwi Farms grew after transgender YouTuber and Twitch streamer, Clara Sorrenti (Keffals), had been targeted by a dangerous harassment campaign by users from the site. Last month, Kiwi Farms users waged a swatting attack against Sorrenti, otherwise known as the act of providing a false tip to police that someone’s planning on carrying out a violent crime, resulting in police swarming the victim’s home.

Sorrenti later went into hiding and started a #DropKiwifarms campaign that urged Cloudflare to stop serving Kiwi Farms. Users across Twitter shared the hashtag, also with some revealing the harassment they’ve experienced at the hand of Kiwi Farms’ users.

[…]

A report from New York Magazine called Kiwi Farms “the biggest community of stalkers,” with harassment so severe that the site has been blamed for the deaths of several victims.

Kevin Beaumont (via Hacker News):

Kiwi Farms is down across all domains as their Russian DDoS provider terminated them as a customer.

Keffals (via Hacker News):

Kiwi Farms has been removed from the Internet Archive.

Casey Newton:

And so Cloudflare, inconvenient as it is for the company, has become a legitimate pressure point in the effort to stop these harassers from threatening or committing acts of violence. Yes, Kiwi Farms could conceivably find other security providers. But there aren’t that many of them, and Cloudflare’s decision to stop services for the Daily Stormer and 8chan really did force both operations further underground and out of the mainstream.

[…]

And while we’re on the subject of complicity, it’s notable that for all its claims about wanting to bring about an end to cyberattacks, Cloudflare provides security services to … makers of cyberattack software!

Megan Farokhmaneshcul:

It appears that, for now, it has found a home with VanwaTech, which also provided services to Daily Stormer and 8kun (formerly 8chan) after their respective Cloudflare bans.

Sorrenti acknowledged that Kiwi Farms may never fully be offline, in the same way that 8chan and Daily Stormer have persisted. But she notes that once a site loses the ability to purchase basic web services from content delivery networks and web security companies, they become “completely impotent” in spite of the extreme lengths they can go to in order to nominally stick around. Whether or not Kiwi Farms has been completely removed, Sorrenti said, “is irrelevant to the fact that the goals of our campaign have not only been achieved, but have achieved more than we could have ever expected.” Kiwi Farms has lost its access in the visible parts of the web.

High-Pitched Buzzing Sound With Studio Display

Tim Hardwick:

There are complaints on Twitter, Reddit and the Apple Support Community dating back to June, and more recently on the MacRumors forums, about the issue, which is variously described as an “electrical buzzing” and “constant ringing” that is “loud,” “high-pitched,” and “very annoying.”

Several owners have found that the sound is not fan-related and only happens when a MacBook Pro or iPad is plugged into the Studio Display. Some have also noted that the noise can vary in intensity and pitch depending on the time of day, suggesting an electrical shielding issue may be the cause of the fault.

Of course, one the reasons people wanted Apple to make this display is that the LG one had shielding issues. Thankfully, I’ve not been getting this buzzing, but I’ve had problems with the display’s camera, audio, and USB.

Previously:

The SwiftUI Render Loop

Rens Breur:

We will first look into a number of examples of such cases where it is useful to know how the SwiftUI render loop works. Then we will explore the render loop in more detail and ask questions such as: when exactly is the body of a SwiftUI view evaluated. Not “when” as in under what circumstances, but as in: at which point in time? Is a view always drawn on screen immediately after a body is evaluated? How related are body evaluation and screen rendering even? We sometimes use the word “render” for evaluating a body of a view, does that even make sense?

[…]

When it is not doing anything, a SwiftUI app will have an idle CFRunLoop. It will wait for events from an input source such as touches, network events, timers or a display refresh. In response to a touch, SwiftUI may call a Button's action handler. If we put a breakpoint inside that action handler, we will see __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ somewhere in the stack trace. This is because touch events are delivered from a type 0 input source.

In response to an action that we perform in response to an event from in input source, we might update some @State variable in a view or call a function on an @ObservedObject that in turns causes its objectWillChange publisher to fire. In this case, the SwiftUI view is invalidated. This means that its body needs to be re-evaluated, but it would be inefficient to do that immediately. Maybe the same function that changed a @State variable will change another @State variable. Therefore, the body evaluation is scheduled to be executed later.

Friday, September 2, 2022 [Tweets] [Favorites]

iPhone User Base Overtakes Android in U.S.

Tim Hardwick (Hacker News):

Apple’s iPhones have overtaken Android devices to account for more than half of all smartphones used in the United States, according to data from Counterpoint Research (via Financial Times).

The active installed base of iPhones passed the 50% landmark in the quarter ending in June, while around 150 other mobile brands using Google’s Android operating system, led by Samsung and Lenovo, accounted for the rest.

John Gruber:

The other interesting takeaway here is that iPhone usage share outperforms iPhone sales share. iPhones are simply more durable and get meaningful software updates for longer.

Previously:

Update (2022-09-03): The takeaway that I quoted above may be backwards. Counterpoint’s chart shows that iPhone’s U.S. share of sales has had multiple quarters over 50% recently, even as high as 65% in Q4 2020 and 56% in Q4 2021, yet the user base only just broke 50% for the first time. It’s possible that Apple has only been winning the smaller quarters but having lower sales over the entire year, but I haven’t seen any numbers to that effect.

Ed Hardy:

iPhones made up more than half of all smartphones shipped in North America during the second quarter of 2022, according to a market research firm. This marks the third quarter in a row that more than 50% of the handsets shipped in the region came from Apple.

John Gruber:

But there are wealthy countries like Germany and France where Android is more popular by roughly 3 to 1 margins. I suspect there is no simple answer to this, and that it comes down to nuanced but significant nation-by-nation cultural differences.

Update (2022-09-26): Michael Gartenberg:

As someone who used to do this kind of analysis, I’m amused when the press reports stuff lIke this without reporting exactly how the number was derived.

Stuff like this always made us laugh at Apple. One reason I longer do market share or forecasts

Thursday, September 1, 2022 [Tweets] [Favorites]

Apple Settles FlickType Lawsuit

Sarah Perez (MacRumors):

An app developer’s lawsuit over App Store rejections, scams and fraud has ended in a settlement agreement after court filings show a request to dismiss the suit earlier this summer. The plaintiff, app developer and former Pinterest engineer Kosta Eleftheriou, made a name for himself in recent months calling out some of the most egregious App Store scams. This later culminated in a lawsuit of his own against Apple, filed in California’s Superior Court in Santa Clara County in March 2021, where he alleged his own app had been unfairly rejected from the App Store and then later targeted by scammers, leading to lost revenues.

[…]

His complaint alleged that not only had Apple rejected his FlickType Apple Watch keyboard app from the App Store, it then approved competitor keyboard apps and others that used an integrated version of FlickType keyboard to publish to the App Store. This seemingly contradicted Apple’s claim that the FlickType keyboard offered a “poor user experience,” given that Apple’s own app review team was greenlighting the same technology, when integrated into other apps like Nano for Reddit, Chirp for Twitter, WatchChat for WhatsApp, and Lens for Instagram.

Neither side is saying what they agreed to.

Previously:

SQLite and DuckDB

Simon Willison (Hacker News):

SQLite: Past, Present, and Future is a newly published paper authored by Kevin P. Gaffney, Martin Prammer and Jignesh M. Patel from the University of Wisconsin-Madison and D. Richard Hipp, Larry Brasfield and Dan Kennedy from the core SQLite engineering team.

The paper compares SQLite and DuckDB, and describes some optimization work to make SQLite perform better for analytical queries.

[…]

The primary difference is that DuckDB is optimized for analytical queries: queries that apply aggregate calculations across large numbers of rows, rather than being optimized for fast scanning and lookup of individual rows of data.

Xcode Cloud Subscriptions Now Available

Apple (Hacker News, MacRumors):

Xcode Cloud, the continuous integration and delivery service built into Xcode, accelerates the development and delivery of high-quality apps. Get started by configuring a workflow in Xcode and receive 25 compute hours per month at no cost until the end of 2023. And now, Account Holders can subscribe for more compute hours in the Apple Developer app.

Apple:

A compute hour is an hour of time used to execute a specific task in the cloud, such as building an app or running automated tests. For example, running 5 tests of 12 minutes each equals one compute hour. Xcode Cloud runs tests in parallel with other actions, such as analyzing, archiving, and building, so you’ll get results quickly.

After next year, the 25 hours/month plan will cost $14.99. I don’t have much sense for how much one compute hour gets you in practical terms. Hopefully it’s by CPU rather than by core, but I don’t know what CPU it uses. Right now, the full build/analyze/test suite for all my apps, takes about 40 minutes on an i9 MacBook Pro. The most attractive part of Xcode Cloud is the ability to test on different configurations without having to manage them yourself, but of course then you multiply the compute hours by the number of configurations.

I’ll probably sit this one out, not because of the price but because I’m not sure the benefits are worth the hassle. Xcode Bots looked great but was so frustrating and buggy that I wish I’d never touched it. It was just an incredible waste of time to have it keep breaking and require restarting the server Mac or deleting and reconfiguring the bots.

Jenkins has a rougher interface and is a pain to set up, but once it’s working it stays working. You have to manage the Mac and Xcode versions, though—in addition to Java and Jenkins—and make sure it doesn’t fill up your whole SSD with workfiles.

I decommissioned the Mac that I had been running Jenkins on because of a swollen battery and never got around to setting it up on the replacement server Mac. So far I haven’t really missed it. What were all the stats and graphs and status e-mails really doing for me? Right now, I just have a secondary Mac within arm’s reach and a script that does a git pull and analyzes/tests everything. Since this is the backup Mac that I need to maintain anyway, there’s no extra admin burden for the Mac or privacy concerns with putting my repo in the cloud. The difference is that I invoke the script manually a few times per day rather than having Xcode/Jenkins run automatically after every commit. If something breaks, I can look at it directly on that Mac.

Previously:

Update (2022-09-14): Marcin Krzyzanowski:

Xcode Cloud is so annoying. None of these errors is an actual error. 🤷‍♀️

First is the SwiftPM package bug.

The second is just bananas.

imagine a world where Xcode Cloud uses the same Xcode we do. because this is only Xcode Cloud error, not local Xcode builds.

Clip Control on the Apple GPU

Alyssa Rosenzweig:

Here’s a little secret: there are two graphics APIs called “Metal”. There’s the Metal you know, a limited API that Apple documents for App Store developers, an API that lacks useful features supported by OpenGL and Vulkan.

And there’s the Metal that Apple uses themselves, an internal API adding back features that Apple doesn’t want you using. While ANGLE implements OpenGL ES on the documented Metal, Apple can implement OpenGL on the secret Metal.

[…]

Compared to the desktop GPUs found in Intel Macs, Apple’s own GPU implements a slim, modern feature set mapping well to Metal. Most of the “extra” functionality is emulated.

Previously: