Monday, September 30, 2024

SwiftData Expressions

Keith Harrison:

In iOS 18, SwiftData can make use of Foundation’s new #Expression macro to make it easier to build more complex predicates. From the WWDC session:

Expressions allow for reference values that do not produce true or false but instead allow for arbitrary types.

You can then evaluate the expression as part of more complex predicate.

[…]

If you expand the expression macro or check the Expression documentation you’ll see it’s creating PredicateExpressions which appear to support a wide range of methods. Unfortunately I can’t seem to get most of them to work either in predicates or expressions.

Previously:

iPhone Action Button Uptake

Adam Engst:

Although the poll received relatively low participation because it was limited to TidBITS readers who own one of the iPhone 15 Pro models, the results still suggest that the Action button hasn’t been a runaway success. The most common use was to recreate the function of the Ring/Silent switch, garnering 33% of the votes. Even then, some people aren’t happy with the Action button as a replacement for the Ring/Silent switch because you can’t tell at a glance which state it’s in.

[…]

Another 21% of respondents use the Action button to open the Camera app, which I doubt iPhone 16 users will do, and 20% said they don’t use the Action button at all, like me. That’s a total of 74% who either use the Action button like the switch it replaces, don’t use it at all, or use it in a way that Apple is, in essence, deprecating in future iPhone models by adding the Camera Control.

I really like using the Action button to open the camera. It makes it fast and easy to take out my phone and snap a photo one-handed.

The more I learn about Camera Control, the less appealing it sounds. I think I would have rather seen a second regular button, so we would have both Action A and Action B, or perhaps one that was global and one for use within apps.

Juli Clover:

With the iPhone 16 lineup, Apple brought the Action Button to all four devices, expanding it from the Pro-only limitation last year. At the same time, there’s a new Camera Control button that eliminates the need to activate the camera with the Action Button, which was one of the major useful functions. At the same time, there are new Control Center options that you can set to the Action Button, expanding what’s possible.

I kind of wonder whether this is going to be another Touch Bar situation where the hardware’s full potential is never realized because Apple proscribes how it can be used without fully opening it up to third parties.

Previously:

An Abridged History of Safari Showstoppers

Roderick E.J.H. Gadellaa (Hacker News):

As noted elsewhere, a developer-lamented but regulator-overlooked aspect of Apple’s monopoly on iOS browser engines has been the prevalence of show-stopping bugs.

We define “showstoppers” here as bugs that cause working apps to become entirely broken or inadvisable to use on the web.

All browsers have issues, but iOS is unique in depriving users of choices that developers can recommend when the system-provided engine breaks. Users and developers have literally no choice; they can’t choose a different browser to work around Apple’s frequent bouts of platform breakage. How bad is it? To get a sense for the impact, we’ve laid out the worst issues of the past decade. We’ve also included a rough estimate of the fraction of time when web apps would have worked as advertised on iOS but for Apple’s implementation… hiccups.

Via Alex Guyot:

These bugs heavily impact websites and web apps that are trying to build more sophisticated experiences on the web. They affect a wide variety of platform features which Apple itself claims to be stable and fully-supported. Safari is the only major browser that consistently ships bugs this nasty, and especially the only one that leaves them there for years.

[…]

The web isn’t an app store where you can list your site for only certain operating systems. People aren’t going to build ambitious PWAs when anyone who actually manages to install them on iOS is met with a broken experience.

I agree (and love it!) that Safari’s been improving on web standards recently, but this is also the year in which Apple almost killed PWAs with no notice, and has a bug in iOS 18 where keyboards don’t show up in PWAs in the EU.

Guillermo Rauch:

People often think native apps are better due to “performance of compiled code” but it’s actually due to “not a hostile, buggy, artificially API-poor environment”.

In the fullness of time, the web will win due to its superior deployment model and developer freedom. The days are long but the decades are short.

Joeri:

I was all-in on mobile web apps, but apple’s policy around iOS and browsers pretty much forced my hand. I had to watch how a native app team rewrote the web app I had already built, with the same feature set, except with notifications and more offline storage, crucial requirements at the time. This was over a decade ago, and while things have gotten a little better, the gap between what a web developer can do on iOS and what a native developer can do has never been wider.

scottjenson:

Too many don’t understand Apple’s privacy stance, which has some reasonable elements, is being used to massively foot drag on everyone else trying to build an open web ecosystem.

Previously:

European Commission Specification Proceedings

Tim Hardwick:

The European Commission has initiated two specification proceedings to guide Apple towards compliance with its interoperability obligations under the DMA. These latest proceedings focus on iOS connectivity features for connected devices and the process Apple has established for addressing interoperability requests from developers.

[…]

The first proceeding targets iOS functionalities predominantly used by connected devices such as smartwatches, headphones, and virtual reality headsets. The EU intends to specify how Apple should provide effective interoperability with features like notifications, device pairing, and connectivity.

The second proceeding examines the transparency, timeliness, and fairness of Apple’s process for handling interoperability requests from developers and third parties for iOS and iPadOS.

Dan Moren:

The upshot seems to be to allow third-party accessories to have the same benefits as Apple’s own accessories, like the Apple Watch and AirPods. Some of this is work Apple’s already done with iOS 18’s new accessory pairing feature, which it’s now incumbent upon third-party developers to embrace. Ultimately, the experience for third-party accessories should be much closer to that of AirPods.

But at the end of the day, a lot of what makes AirPods better is the fact that it’s using Apple designed hardware, like the H-series chips instead of standard Bluetooth. I have difficulty imaging that the EC would require Apple to make that hardware available to third parties.

I don’t think that would make sense, but maybe they would try to require that iOS support software so that other companies could make AirPods competitors.

John Voorhees:

Apple prides itself on its tight integration between hardware and software, and the EC is determined to open that up for the benefit of all hardware manufacturers. While I think that is a good goal, we’re getting very close to the EU editing APIs, which I find hard to imagine will lead to an optimal outcome for Apple, third-party manufacturers, or consumers. However, if you accept the goal as worthwhile, it’s just as hard to imagine accomplishing it any other way given Apple’s apparent unwillingness to open iOS up itself.

Steve Troughton-Smith:

‘The DMA isn’t prescriptive enough!’

Careful what you wish for. 😏 If you can’t follow the spirit of the law, get ready for the detailed specifications.

John Gruber (Mastodon):

As ever with the Commission and their bureaucratese, I’m unsure whether this announcement is perfunctory or an escalation. But I think it’s an escalation, and they’re so irritated by Apple’s refusal to cave to the “spirit” of the DMA while complying with the letter of the law, that they’re simply going to tell Apple exactly what they want them to do in six months.

M.G. Siegler:

In other words, this feels a lot like one last push by Vestager to get Apple to comply with the continually vague “opening up” things they’re looking for – but really, it also feels like one last time in the spotlight and in the headlines for Vestager on this high-profile issue, as she has about a month remaining on her tenure.

Not only that, but it’s starting to sound like the EU is going to be taking a different approach to regulation – or at least looking at if they should – following Mario Draghi’s competition report, which was fairly damning of the ways the body currently operates and approaches regulation, among other things.

Previously:

Friday, September 27, 2024

iA Writer’s Google Drive Access

Oliver Reichenstein (Mastodon, Hacker News):

A couple of months ago, Google changed its API policy and revoked iA Writer’s access to Google Drive on Android. By freezing up Android’s main storage option, our app was frozen in carbonite. It still lived but we couldn’t move forward before resolving it. In order to allow our users to access their Google Drive on their phones we had to rewrite privacy statements, update documents, and pass a series of security checks, all while facing a barrage of new, ever-shifting requirements.

[…]

The cost, including all internal hours, amounts to about one to two months of revenue that we would have to pay to one of Google’s corporate amigos. An indie company handing over a month’s worth of revenue to a “Big Four” firm like KPMG for a pretty much meaningless scan. And, of course, this would be a recurring annual expense. More cash for Google’s partners, while small developers like us foot the bill for Android’s deeply ingrained security shortcomings.

[…]

So, as of today, we’re not just accepting our frozen-in-carbonite fate. We’re embracing it. We’re going to take the app offline. We know this decision will disappoint our loyal Android users, and we share your frustration. After seven years of continuous investment, this is way more painful for us than it is for any of you.

With ForkLift, this problem seemed to apply to all platforms, yet iA is framing it as an Android issue rather than a Google Drive issue. Is this because Google Drive is less prevalent on the other platforms, so that removing it isn’t fatal, or because they can get by indirectly accessing Google Drive via the a file provider or the file system directly?

mgraczyk:

I just finished the process to get drive.readonly for my app. It was a huge pain in the ass, and Google was not very helpful. Google recommends you pay $720 for a CASA lab assessment, which consists of some random dude in an apartment in SF running an open source script against a .zip of your codebase, then that guy emails Google saying you “passed”.

Oliver Reichenstein:

CASA isn’t real security. It’s a very badly played security theater. There are plenty of holes, MI CASA SU CASA, that real hackers can use to steal your selfies and credit card info. You still think we’re not informed enough? We never wanted access to Google Drive. We don’t care about your Google Drive or anyone’s Drive at all.

We don’t have, want, or ever asked for access to your files. And don’t start with, “But you could be hackers!” We’re not. Google has our entire history—7 years with them, 14 years building apps, and 20 years as a company. They have our code, user feedback, passports, phone numbers, bank info, and confidential documents. But they still pass the security theatre burden onto us, making us pay KPMG for audits. Not because it makes things safer. It's so they can lean back, do nothing, and then lift both hands and then point fingers in case things go wrong. That scales nicely.

Previously:

Update (2024-09-30): John Gruber:

See also the footnote on how stunningly rampant piracy is on Android, too.

NSManagedObjectID and PersistentIdentifier

Fatbobman:

However, in SwiftData, there is currently no similar property or method to directly determine the [temporary] state of a PersistentIdentifier. Since SwiftData’s mainContext defaults to the autoSave feature (developers do not need to explicitly save data), identifiers may temporarily be unusable in other contexts after creating data objects.

[…]

SwiftData’s default implementation is still based on Core Data, so the format of PersistentIdentifier is very similar to that of NSManagedObjectID[…]

You can see this when printing it, but crucially there is still no API to convert between the two types.

Starting with Xcode 16, the Core Data framework has officially annotated [NSManagedObjectID as Sendable], so developers no longer need to do it manually.

It’s interesting that it took so long since NSManagedObjectID has always been threadsafe outside of Swift Concurrency.

Although an NSManagedObjectID instance contains sufficient information to indicate the data post-persistence, it cannot retrieve the corresponding data when used with another NSPersistentStoreCoordinator instance, even if the same database file is used. In other words, an NSManagedObjectID instance cannot be used across coordinators.

This is because the NSManagedObjectID instance also includes private properties of the corresponding NSPersistentStore instance.

I kind of look at it backwards from this. The NSManagedObjectID doesn’t contain very much information—it’s often squeezed into a tagged pointer. How is this possible when it logically contains a reference to the entity description and the persistent store, in addition to the primary key? I assume that it’s storing abbreviations for these, which can only be interpreted with respect to a coordinator.

Previously:

X/Twitter Censorship

Mike Masnick:

Among the key reasons Elon Musk insisted he had to buy Twitter were (1) that it was too political in how it was managed and how content moderation was done, (2) the company was not as transparent as it should be, and (3) it was too quick to censor.

[…]

We can only confirm how much more willing to censor he is because he finally released a transparency report. Twitter had been among the first internet companies to regularly release transparency reports, talking about content moderation, copyright takedown demands, and (of course) government demands for both information and content/account removals. Every six months, like clockwork, Twitter would publish detailed, thorough transparency reports.

[…]

As I’ve said, in both those cases, I think it was good that he was willing to stand up to over-aggressive government demands. But it’s hard to see it as any strong commitment to free speech when he’s so quick to comply elsewhere. Indeed, he’s already backed down in Brazil, to much less fanfare.

Separately and importantly, Elon has been way more willing to hand over user data to governments upon request. This was another thing that old Twitter was aggressive in fighting back against, but Elon seems quite willing to roll over on.

Twitter under Musk is certainly censoring differently. People who were banned have been unbanned and vice-versa. The misleading information policy has changed. Maybe there is more variety of content than before, but it does not really seem to be following the principles that Musk laid out at the acquisition.

Elizabeth Lopatto (Hacker News):

X is preventing users from posting links to a newsletter containing a hacked document that’s alleged to be the Trump campaign’s research into vice presidential candidate JD Vance. The journalist who wrote the newsletter, Ken Klippenstein, has been suspended from the platform. Searches for posts containing a link to the newsletter turn up nothing.

The document allegedly comes from an Iranian hack of the Trump campaign. Though other news outlets have received information from the hack, they declined to publish.

Ken Klippenstein (via Hacker News):

First, I never published any private information on X. I linked to an article I wrote here, linking to a document of controversial provenance, one that I didn’t want to alter for that very reason.

The dossier did violate Twitter’s policy because it contained unredacted personal information, but that does not explain why links to the article were blocked. Musk is on record that Old Twitter should not have blocked links to the leaked Hunter Biden information, which was more personal and damaging. From what I’ve seen, the Vance dossier itself is far less interesting. The most notable aspects are its source (Iran) and the fact that Twitter wants to suppress it.

And, as far as I know, Twitter is still messing with Substack links.

Mike Masnick:

Another user on Twitter notes that their own account was temporarily suspended not even for tweeting out a link to the Vance dossier story, but for tweeting a link to Ken’s post about getting suspended!

Previously:

Update (2024-09-30): Nick Heer:

One of the key differences between the two reports is the way total reports of violative behaviour are measured. Twitter says over 11.6 million accounts were reported between July and December 2021. The company said these are de-duplicated; these are 11.6 million accounts against which the company received at least one report. In the X report, it says it received over 224 million “user reports” for the first six months of this year. The company does not share a comparable de-duplicated figure for how many individual accounts were reported, however, nor could I find a comparable total metric reported by Twitter.

I think what most people care about are the particulars, not aggregate numbers of reports and accounts. From that perspective, neither the old nor the new transparency reports is very satisfying.

No More iMore

Gerald Lynch:

After more than 15 years covering everything Apple, it’s with a heavy heart I announce that we will no longer be publishing new content on iMore.

[…]

I would like to take this moment to thank everyone from the iMore community, past and present, for their support and passion for what we’ve created over the years. A massive thanks goes to iMore’s previous leaders, Lory Gil, Serenity Caldwell, and Joe Keller, and of course, the inimitable Rene Ritchie who kickstarted this wonder all those years back.

[…]

iMore will stay online so readers can continue to access articles from the archive, and the forum at https://forums.imore.com/ will remain active until November 1 to serve our community. Our sister sites TechRadar.com and TomsGuide.com will also continue to publish all the latest news, reviews, and more from the world of Apple-based computing, while our buddies at WindowsCentral.com and AndroidCentral.com have the privilege of continuing to serve you class-leading news, reviews and features from the other side of the tech fence, keeping you up to date with the latest from Microsoft and Google.

Joe Rossignol:

The website that eventually became iMore has operated under various names for over 17 years. The site originally launched as PhoneDifferent.com in 2007, merged with and took the name of TheiPhoneBlog.com in 2008, and abbreviated its domain name to TiPb.com in 2010. In 2012, the website rebranded as iMore.

iMore has been home to a number of well-known technology journalists over the years, including Dieter Bohn, Rene Ritchie, Serenity Caldwell, and many others. Bohn went on to become a founding member of The Verge in 2011, and he now works at Google. Ritchie left iMore in 2020 after 12 years at the website, and he now works for YouTube. Caldwell worked for iMore between 2014 and 2018, and she now works at Apple.

Previously:

Thursday, September 26, 2024

DropDMG 3.6.8

DropDMG 3.6.8 is a maintenance update to my app for creating and working with Mac disk image files. In addition to various updates and bug fixes, it adds the ability to control how many operations DropDMG performs simultaneously and to set the name of the invisible folder where DropDMG stores the background picture.

Some interesting bugs were:

Meta’s Orion AR Glasses

Meta (via Hacker News, MacRumors):

Today, we unveiled Orion, previously codenamed Project Nazare, which we believe is the most advanced pair of AR glasses ever made.

Orion combines the look and feel of a regular pair of glasses with the immersive capabilities of augmented reality – and it’s the result of breakthrough inventions in virtually every field of modern computing.

[…]

While Orion won’t make its way into the hands of consumers, make no mistake: this is not a research prototype. It’s one of the most polished product prototypes we’ve ever developed, and is truly representative of something that could ship to consumers. Rather than rushing to put it on shelves, we decided to focus on internal development first, which means we can keep building quickly and continue to push the boundaries of the technology, helping us arrive at an even better consumer product faster.

Alex Heath:

They look almost like a normal pair of glasses.

[…]

Zuckerberg imagines that people will want to use AR glasses like Orion for two primary purposes: communicating with each other through digital information overlaid on the real world — which he calls “holograms” — and interacting with AI.

[…]

The hardware for Orion exists in three parts: the glasses themselves; a “neural wristband” for controlling them; and a wireless compute puck that resembles a large battery pack for a phone. The glasses don’t need a phone or laptop to work, but if they’re separated from the puck by more than 12 feet or so, they become useless.

[…]

At 98 grams, the glasses weigh significantly more than a normal pair but also far less than mixed reality headsets like the Meta Quest or Apple’s Vision Pro.

[…]

As Meta’s executives retell it, the decision to shelve Orion mostly came down to the device’s astronomical cost to build, which is in the ballpark of $10,000 per unit. Most of that cost is due to how difficult and expensive it is to reliably manufacture the silicon carbide lenses. When it started designing Orion, Meta expected the material to become more commonly used across the industry and therefore cheaper, but that didn’t happen.

Ben Thompson:

Meta has decided to hold off on shipping a consumer version until they can bring the price down. That will be a tall order, and that challenge should be kept in mind with everything that follows.

[…]

What follows is unadulterated praise. Orion makes every other VR or AR device I have tried feel like a mistake — including the Apple Vision Pro. It is incredibly comfortable to wear, for one. What was the most striking to me, however, is that the obvious limitations — particularly low resolution — felt immaterial. The difference from the Quest or Vision Pro is that actually looking at reality is so dramatically different from even the best-in-class pass-through capabilities of the Vision Pro, that the holographic video quality doesn’t really matter. Even the highest quality presentation layer will pale in comparison to reality; this, counter-intuitively, gives a lot more freedom of movement in terms of what constitutes “good enough”. Orion’s image quality — thanks in part to its shockingly large 70 degree field of view — is good enough. It’s awesome, actually. In fact — and I don’t say this lightly — it is good enough that, for the first time ever, I felt like I could envision a world where I don’t carry a smartphone.

John Gruber:

Meta still hasn’t posted today’s keynote address on YouTube; best I’ve found is this recording of the livestream, starting around the 43m:20s mark. I watched the most of the keynote live and found it engaging. Just 45 minutes long — partly because it was information dense, and partly because Mark Zuckerberg hosted the entire thing himself.

[…]

In terms of actual products that will actually ship, Meta announced the $300 Quest 3S. That’s more than an entire order of magnitude lower-priced than Vision Pro. Vision Pro might be more than 10× more capable than Quest 3S, but I’m not sure it’s 10× better for just playing games and watching movies, which might be the only things people want to do with headsets at the moment. They also launched a 7,500-unit limited edition of their $430 actually-somewhat-popular Ray-Ban Wayfarer “smart” glasses made with translucent plastic, iMac-style.

[…]

It really is true that Meta’s Ray-Ban Wayfarers are nearly indistinguishable from just plain Wayfarers. Orion isn’t like that at all. If you went out in public with these — which you can’t, because they’re internal prototypes — everyone would notice that you’re wearing some sort of tech glasses, or perhaps think you walked out of a movie theater without returning the 3D goggles. But: you could wear them in public if you wanted to, and unlike going out in public wearing a VR headset, you’d just look like a nerd, not a jackass. They’re close to something. But how close to something that would actually matter, especially price-wise, is debatable.

Federico Viticci:

The end goal was always glasses – never VR headsets.

I’m incredibly excited about a near future where AR glasses look like regular glasses we can wear.

Previously:

Update (2024-09-30): Jason Snell:

It’s a real punch to Apple’s jaw, one that makes the Vision Pro look dowdy and pointless. Media coverage of Orion has been really strong. People who tried it were impressed. It’s a win for Meta.

But look closer, and you can see exactly what game Meta is playing. Meta says that Orion would cost about $10,000 today, and that the company couldn’t see itself shipping the product. Orion, as used this week by various media influencers, is a tech demo—not a product that will ever ship. Meta says that it has backed off any plans to ship it and instead expects that it will ship a product sort of like it between 2027 and 2029.

This is all part of the game, of course. For decades now, competitors have made hay over Apple’s refusal to make public demonstrations of what it’s working on behind the scenes. Apple’s silence is assumed by many to indicate the company is behind on some innovation or another. And sometimes it’s actually behind—but other times, it’s not. It’s just keeping quiet.

[…]

In other words, Meta and Apple—both committed to the idea that AR glasses we wear in our daily lives might be a huge part of future computing tech—tried to make the product happen, and realized that the time just wasn’t right. Apple didn’t say anything. Meta showed off a product that will never ship (but might lead to something that will ship at the end of the decade) and gained some nice press coverage this week.

John Gruber:

But according to The Verge, these Orion prototypes only get 2 hours of battery life. And they’re too thick and chunky. You look weird, if not downright ugly, wearing them. So Meta not only needs to bring the price down by a factor of at least 3× (which would put it around the $3,500 price of Vision Pro, which most critics have positioned as too expensive), they also need to make the glasses smaller — more svelte — while increasing battery life significantly.

[…]

It’s exciting that they showed Orion publicly, but I don’t think it helped Meta in any way going forward.

I think it helps in the sense that, based on what’s been shown publicly, it seems like Meta is on the right track and Apple may be pursuing a dead end.

Dare Obasanjo:

One thing I found interesting about Apple Vision Pro is that it broke from Apple’s approach of building the polished version of a nerdy product and bringing it to the masses (e.g. iPod, iPhone, iPad and Apple Watch).

The Vision Pro is more like the Lisa.

Steve Toughton-Smith:

But let’s not grade on a curve here. Vision Pro gets a battery life of 2 hours. Vision Pro is too thick and chunky. Vision Pro looks weird and ugly.

[…]

Thing is, Apple did ship their prototype

(Half the system apps aren’t even recompiled for visionOS, not even in visionOS 2. It’s been a long time since Apple shipped something this unfinished)

Ryan Jones:

Vision Pro strategy is akin to the first iPhone being $3000, 4x the size and weight, requiring wall plug (so it doesn’t leave house), all to get a Retina screen.

M.G. Siegler:

Other reports about Meta’s AR work had noted that a separate puck outside of headsets was likely needed. And while I at first assumed this was similar to the way the Vision Pro needs its tethered battery pack or perhaps closer, the way the Magic Leap also had a tethered “Lightpack” puck, this news is seemingly a bit better as it’s a wireless device, no less than Meta CTO Andrew Bosworth noted in response on Threads. That’s because it’s not a battery – though presumably it has its own battery – it’s a computing device that transmits to the glasses.

And that got me thinking – why the hell didn’t Apple do this with the Vision Pro? […] Perhaps the single biggest complaint about the Vision Pro is its weight.

[…]

It’s not just that it’s strange that Apple isn’t off-loading compute to their big brick battery, it’s arguably stranger that they’re not off-loading it to the insanely great computer any Vision Pro owner likely has in their pocket. The iPhone.

OpenAI to Become For-Profit Company

Deepa Seetharaman et al. (Hacker News):

OpenAI is planning to convert from a nonprofit organization to a for-profit company at the same time it is undergoing significant personnel changes, including the resignation Wednesday of its chief technology officer, Mira Murati.

[…]

Under the proposed changes, the nonprofit arm of OpenAI and Chief Executive Sam Altman would own stakes in the new for-profit company. Altman hasn’t previously owned a stake in OpenAI.

[…]

The restructuring is designed in part to make OpenAI more attractive to investors, as the company is currently attempting to close a funding round of up to $6.5 billion. […] Unlike prior investors in OpenAI, those who put money into the current round wouldn’t have a cap on the profits they can earn.

Jay Peters and Kylie Robison (Hacker News):

“I’m stepping away because I want to create the time and space to do my own exploration,” she wrote in a post on X. “For now, my primary focus is doing everything in my power to ensure a smooth transition, maintaining the momentum we’ve built.”

In addition to Murati, two other OpenAI leaders are also departing: Bob McGrew, OpenAI’s chief research officer who spoke to The Verge for the release of its o1 “reasoning” model just two weeks ago, and Barret Zoph, VP of post training. CEO Sam Altman said they “made these decisions independently of each other and amicably” in a separate note to employees he also posted on X.

M.G. Siegler:

[For Altman, a] 7% of $150B – the rumored valuation of the most recent funding coming together – is just over $10B. That’s probably not a coincidence.

[…]

Clearly, this was not some sort of planned transition – as Altman’s statement (which was actually a re-statement to include the people beyond Murai leaving– read into that what you will) highlights[…] So again, he’s chalking these three departures up to coincidental timing. That’s certainly possible, but it’s also hard to overlook all of the other recent departures. Someone has to ask: what is going on here?

See also: Brew Markets.

Previously:

Update (2024-09-27): Hayden Field (via Hacker News):

At an all-hands meeting Thursday, OpenAI CEO Sam Altman said there are no plans for him to get a “giant equity stake” in the company.

Update (2024-09-30): M.G. Siegler:

While they published this on Friday – before the subsequent WSJ report that Apple had dropped out of the financing – it's worth digging a bit more into the numbers that Mike Isaac and Erin Griffith obtained with regard to OpenAI[…]

iPhone 80% Charging Limit

Juli Clover:

With the iPhone 15 models that came out last year, Apple added an opt-in battery setting that limits maximum charge to 80 percent. The idea is that never charging the iPhone above 80 percent will increase battery longevity, so I kept my iPhone at that 80 percent limit from September 2023 to now, with no cheating.

My iPhone 15 Pro Max battery level is currently at 94 percent with 299 cycles. For a lot of 2024, my battery level stayed above 97 percent, but it started dropping more rapidly over the last couple of months.

[…]

I don’t have a lot of data points for comparison, but it does seem that limiting the charge to 80 percent kept my maximum battery capacity higher than what my co-workers are seeing, but there isn’t a major difference. I have four percent more battery at 28 more cycles, and I’m not sure suffering through an 80 percent battery limit for 12 months was ultimately worth it.

It’s possible that the real gains from an 80 percent limit will come in two or three years rather than a single year, and I’ll keep it limited to 80 percent to see the longer term impact.

John Gruber (Mastodon):

I’m so glad Clover ran this test for a year and reported her results, because it backs up my assumption: for most people there’s no practical point to limiting your iPhone’s charging capacity. All you’re doing is preventing yourself from ever enjoying a 100-percent-capacity battery. Let the device manage its own battery. Apple has put a lot of engineering into making that really smart.

My iPhone 15 Pro, now just under a year old, shows a maximum capacity of 91% and a cycle count of 145. I have been using the automatic optimized charging, mostly via MagSafe. The cycle count is low so I expected better. I certainly notice the phone depleting more than when it was new

I think there are two conclusions here. First, the benefit of the 80% limit is not very clear, although presumably Apple had reason to believe it would help in some circumstances. Second, batteries still don’t last very long, even with the fancy optimized charging. It still seems like the health will be almost down to 80% after two years. I wish battery replacements were easier or that Apple started out with larger batteries for more headroom.

Kirk McElhearn:

[The] iPhone 15 is the first one that’s rated for 1000 cycles, not 500 like previous models. I would expect battery health to be over 90% after a year; if it’s not, I see it hard for it to last 1000 cycles and still charge to 80%.

[…]

[The] real story is that these phones won’t last 1000 cycles. I don’t think most of the people in the comments realize that the iPhone 15 is supposed to last twice as long as previous iPhones.

My 2 1/2-year-old Apple Watch SE is down to 76% battery health. Apple recommends that I service it, but I’m not sure it’s worth $99 for a new battery when there will probably be a new SE soon. What’s strange is that the watch usually easily lasts through the day, but sometimes it will run out of power around 5 PM for no apparent reason. The Settings app shows that it was fully charged in the morning and then steadily declined, even though I wasn’t really even using it. Unlike on iOS, there doesn’t seem to be a way to display the power drain by app.

See also:

Previously:

Update (2024-09-27): See also: Hacker News.

Tuesday, September 24, 2024

Halide Rejected From the App Store

Ben Sandofsky (Hacker News):

The latest Halide update was rejected because, after seven years, a random reviewer decided our permission prompt wasn’t descriptive enough.

I don’t know how to explain why a camera app needs camera permissions.

If you think the reviewer was correct because “The camera will be used to take photographs” is a circular description, note that:

Ben Lovejoy:

Halide may have been featured during the iPhone 16 keynote, but it seems that wasn’t enough to protect it from an over-zealous App Store reviewer.

[…]

Halide’s Sebastiaan de Wish says the company received a call from Apple informing them that this was a mistake.

Do they do any postmortems for these erroneous rejections? Why isn’t there some sort of warning to the reviewer: did you really mean to reject this app for metadata that was already accepted 100 times in a row and hasn’t changed?

Ben Sandofsky:

Apple followed up to let us know what happened. Normally they don’t do this for camera apps, when it’s obvious why the camera is used.

So the goof was that the reviewer didn’t know it was a camera app?

Robert Bye:

My image editing app got rejected because Apple didn’t know why an image editing app needed access to photos to edit their photos…

Previously:

Update (2024-09-25): Francisco Tolmasky:

The actual funny thing about this is that while some AppStore reviewer is complaining about the camera prompt in Halide, I’m fairly certain that literally no users understand what the fuck allowing an app to “find and connect to other devices on the network” does.

Automattic vs. WP Engine

Paul Sawers:

Automattic CEO and WordPress co-creator Matt Mullenweg unleashed a scathing attack on a rival firm this week, calling WP Engine a “cancer to WordPress.”

Mullenweg criticized the company — which has been commercializing the open source WordPress project since 2010 — for profiteering without giving much back, while also disabling key features that make WordPress such a powerful platform in the first place.

[…]

It’s worth noting that Automattic has a history in backing WordPress-hosting companies, having invested in WP Engine itself way back in 2011, while Mullenweg also spoke at WP Engine’s conference just last year. Moreover, Automattic also bought a majority stake in WordPress-hosting company Pressable back in 2016, and later invested in GridPane too.

[…]

In response to the brouhaha that followed the talk, Mullenweg published a follow-up blog post, where he calls WP Engine a “cancer” to WordPress. “It’s important to remember that unchecked, cancer will spread,” he wrote.

WP Engine has responded with a cease and desist letter (via Hacker News, Slashdot):

During calls on September 17th and 19th, for instance, Automattic CFO Mark Davies told a WP Engine board member that Automattic would “go to war” if WP Engine did not agree to pay its competitor Automattic a significant percentage of its gross revenues – tens of millions of dollars in fact – on an ongoing basis.

[…]

Mr. Mullenweg further stated that he had already created slides for his keynote speech, taking aim at WP Engine and its investor, and would present them to WordCamp attendees – and to millions of others via livestream on YouTube – if his financial demands were not met.

Rodrigo Ghedin (via Hacker News):

Notably, WP Engine was a sponsor of the event.

[…]

What I find deeply ironic in this situation is his accusation that WP Engine “confused even his own mother,” while he’s the owner of Automattic, which has a hosting service literally called WordPress.com, distinct from the FOSS project WordPress.org — an intentional yet obvious confusion that everyone who interacts with WordPress struggles to understand and has benefited Automattic immensely since ever.

Last year, Matt leveraged the FOSS project and his for-profit endeavor resemblance (and his position in both) to redirect web searches pointed at WordPress.org plugin directory to a mirror hosted in WordPress.com.

pluc:

There’s a widget on the default WordPress dashboard that displays a RSS feed of WordPress.org, where Matt posted his rant, making it show up everywhere.

Daniel Jalkut:

I respect @photomatt’s opinion that consumers of open source should “give back”, but to my mind that’s antithetical to the notion of it being free. Free things do not come with conditions. Giving back is an option, and always welcome. That’s open source.

Matt @photomatt has SO MUCH goodwill in the WordPress community and I fear he’s squandering it in this WPEngine fight. Whatever the details it’s not coming off well in public. I hope they resolve things soon.

Previously:

Update (2024-09-25): Automattic (PDF, tweet, Hacker News):

On September 23, Automattic sent the following cease-and-desist letter to WP Engine, outlining WP Engine’s pattern of unauthorized usage of the WordPress and WooCommerce trademarks and demanding that WP Engine stop such behavior.

Derek J:

When you change the trademark policy mid fight to make your case stronger...

Jonathan Jernigan:

The largest applause came from a very brave person who states that Mullenweg punching down feels like vendettas and are demotivating. This person continues by saying that if he had spent the time on stage promoting meetups and talking about bringing new people into the fold, that the positivity would be far more effective than this targeted attack.

[…]

As clearly stated, there is no strict requirement or obligation whereby using WordPress commits you to investing 5% back into WordPress, so how can we just single out WPEngine?

[…]

Are any of these companies after #1 giving back “enough”? It doesn’t appear so if we’re using those pledge numbers vs revenue as the metric. So why are they not getting equal shit live on stage? If that isn’t the metric Mullenweg is judging them by, then tell me what is?

Google’ers even got a shoutout from Mullenweg on stage during the keynote, despite their relatively tiny pledge and Mullenweg acknowledging they have revenue the size of some entire countries GDPs.

See also: Mike Rockwell and astawhiz.

Update (2024-09-26): Thomas Claburn:

WordPress on Wednesday escalated its conflict with WP Engine, a hosting provider, by blocking the latter’s servers from accessing WordPress.org resources – and therefore from potentially vital software updates.

[…]

Among WordPress users posting to Reddit, not everyone is on board with Mullenweg’s war against WP Engine. There’s discussion of a WordPress fork, and pushbackagainstthe WP Engine block.

WP Engine (via Hacker News):

WordPress.org has blocked WP Engine customers from updating and installing plugins and themes via WP Admin.

Matt Mullenweg:

WP Engine needs a trademark license, they don’t have one. I won’t bore you with the story of how WP Engine broke thousands of customer sites yesterday in their haphazard attempt to block our attempts to inform the wider WordPress community regarding their disabling and locking down a WordPress core feature in order to extract profit.

WP Engine was trying to block Mullenweg’s attacks on their product from being injected into the dashboard of all their customers. That seems entirely reasonable. I host my own WordPress, and I didn’t like seeing his rants there, either.

The reason WordPress sites don’t get hacked as much anymore is we work with hosts to block vulnerabilities at the network layer, WP Engine will need to replicate that security research on their own.

Suddenly pulling the rug on security updates puts users at risk. In response, Patchstack has halted publishing new vulnerabilities, so the end result is that WordPress’s own users will be less secure, too.

Why should WordPress.org provide these services to WP Engine for free, given their attacks on us?

That makes some sense, but it sure seems like WordPress is the one who started the fight and who intentionally broke functionality for users caught in the middle. Even if WP Engine is in the wrong, which I don’t think is clear, this is terrible for the WordPress community. Contributor or not, an open source project should not be sabotaging its users. Mullenweg comes off looking like a maniac.

Update (2024-09-27): Daniel Jalkut:

I was interested to discover that the WordPress Foundation just registered for the trademarks “Managed WordPress” and “Hosted WordPress” earlier this year.

Christina Warren:

So many thoughts on the WordPress drama but I think my main takeaway is that it makes me sad. We should absolutely be having conversations about how commercial users of OSS contribute back, especially groups like webhosts. But the people being hurt the most right now are users.

Tia Wood:

I feel thousands of innocent people in our community were harmed in the process just to stick it to a competitor. This is honestly disappointing.

Matt Ronge:

  • Automattic blocking WP Engine customers from updating their plugins is deeply hostile. Fine, sue each other into oblivion, but don’t interfere with customers
  • Automattic shouldn’t have spent the past couple years overpaying for dumb companies, they’ve spent 10’s of millions on it
  • Also Automattic’s tagline “Making the web a better place” Please… follow the money that’s what’s happening here
  • Does this mean that there will be a fork in WordPress? I think a non-insignificant chance

Laurie Voss:

You can’t power 40% of the web and act this way, people will fork your shit.

Matt Mullenweg:

I would love if they forked it! They can run their own user login system, update servers, plugin directory, theme directory, pattern directory, block directory, translations, photo directory, job board, meetups, conferences, bug tracker, forums, Slack, Ping-o-matic, and showcase.

Matt Birchler:

I mean I used WordPress for this very blog for many years and I knew WordPress kept revision history, but I don’t think I ever used it. For what it’s worth, Ghost doesn’t have any revision history, and I’ve never thought to hope they add it. That’s not to say no one would want or need it, just that it’s very reasonable for someone not to need that feature, so to be told by the head of WordPress that I’m not even using WordPress if I’m not using (or able to use) revisions is insane to me.

If Matt Mullenweg thinks WP Engine is illegally using WordPress’s trademark, then I’ll let the courts handle that because I don’t have an opinion either way, but what an odd thing to hang your argument on.

I knew about the revision history but have probably only used it a handful of times, and I don’t think of it has core to WordPress because it wasn’t added until after I switched. Does WP Engine really turn it off to save database space? I kind of find that hard to believe because images use so much more space than text, and I wonder whether most blogs have lots of long posts that are frequently edited. I make lots of updates to posts on this blog, so I do have lots of revisions, and even then the whole WordPress database is only about 300 MB for 22 years of posts and comments.

Eric Mann (via Hacker News):

WP Engine never calls itself “WordPress Engine” in marketing. However, searches for “WordPress Engine” do yield sponsored advertisements for WP Engine. Until this week, they even had partner agencies listed on their own website as “WordPress Engine Preferred Partner Agenc[ies].”

Even if WP Engine isn’t actively trying to brand itself as “WordPress Engine,” they aren’t doing anything to avoid others doing so. A talk at their recent DE{CODE} conference even referred to them as such. It’s clear they are directly benefiting from the name confusion but they do not have the same rights to the trademark as Automattic and WordPress.com.

[…]

Any system pulling remote data from a third party source should have protections against that source becoming unavailable, whether that’s a pull-through cache or even just a circuit-breaker in their system.

One might also ask why the open-source project has hardcoded the URLs for these services to what looks like a domain for the project itself, but it’s actually controlled by Automattic?

Ernie Smith:

Pinning the blame on WP Engine for Matt’s actions is a cop-out. When is the last time a host got removed from access to the WordPress community?

I’m sorry, disconnecting thousands of customers from an essential service with no warning is not normal behavior, and the fact that Mullenweg is promoting this take only highlights that he doesn’t understand how toxic this behavior is.

You are not punishing WP Engine. You are punishing people who bought into this ecosystem.

codegeek:

I have worked with WP for 10+ years now and in my opinion like many others, this is nothing but jealously from Matt whose for profit competitor (wordpress.com and VIP) got beaten by WPEngine.

In fact, you know what confuses regular users ? wordpress.org vs wordpress.com.

Indeed, that does confuse people, and having WP Engine pay to use the trademark would do nothing to reduce the confusion.

FireBeyond:

1. WP.org is supposedly NOT part of the foundation, but something of Matt/Automattic’s generosity.

2. Despite this, solicits donations that seemingly go to the foundation.

3. Despite this, is hosted on the foundation’s AS number.

4. WP.org may not be under obligation to provide services, but when it chooses to discontinue services to one independent for profit user of the open source software, but not to another ostensibly independent for profit user of the open source software that just so happens to be owned by the person donating the services, then there is a conflict.

5. When the open source software, which has a hard coded news feed source that is mostly written by said owner, and this is used to post articles disparaging that other company, directly to their customers, this is also a conflict.

See also: Matt Mullenweg.

Update (2024-09-30): Cory Birdsong:

I’m not super deep into this side of WP, but supposedly it’s less about space and more about performance. Revisions are stored as another post in the wp_posts table, and they are also created each time you hit “save draft” on a post that hasn’t been published yet. This can add up.

Josh Collinsworth (Hacker News):

Companies have been describing themselves as one or both of those terms for around 15 years at this point. (We freely called Flywheel a “managed WordPress hosting company” the entire time I worked there, and we were far from the first. We were also at one point one of WordPress.org’s recommended hosts. So…obviously, not a big deal.)

Anyway, this filing of spurious trademarks makes it appear very much like Matt’s endgame was to extract money from WP Engine, but he just needed more of a foundation to do it (pun intended?). So, following that initial rejection, Matt set the Foundation arm of WordPress working on securing highly dubious trademarks, which, again, I and most reasonable observers think and hope will fail.

[…]

As an additional point here: if the problem was confusion around WP Engine’s name, why not just ask them for a name change? Why all the contribution stuff, too? Conversely, if Matt’s beef was with WP Engine’s lack of contribution, why is he going after their name and marketing? It feels very much like Matt’s just trying to cobble together all the reasons he can think of to justify his assault, in my opinion.

[…]

Matt also claims WP Engine is selling “something that they’ve chopped up, hacked, butchered to look like WordPress.” His reason for this wild claim? Because WP Engine disables revisions (a default feature of WordPress, albeit a pretty small one).

[…]

WordPress.org is ostensibly the website for the nonprofit foundation; it’s supposed to exist to prevent any one for-profit company from having too much power over the WordPress ecosystem. It’s supposed to be agnostic.

[…]

One of the biggest revelations here is: Matt wanted the money he was trying to get from WP Engine to go to Automattic, which, again, is Matt’s for-profit company.

Emma Roth:

WP Engine operates a bit differently. It says it focuses on investing in the community through sponsorships and encouraging the adoption of the platform. The hosting platform was acquired by the private equity firm Silver Lake in 2018, and Mullenweg views it as a business that profits off of open-source code without giving anything back.

[…]

Mullenweg doesn’t appear to be wrong about WP Engine’s contributions. But WP Engine is ultimately abiding by the rules of WordPress’ open-source license: it’s generally free to use, and WP Engine doesn’t have to give back to the WordPress community just because it’s banking off the open-source code.

[…]

The fight has garnered a mix of reactions. On one side, people think WP Engine is in the wrong, with some saying the company should contribute more to the open source project and that its use of “WP” is misleading. On the other, some WordPress community members are calling on Mullenweg to step down and accuse of him abusing his power over WordPress.org and WordPress.com. Others believe the situation could result in a fork of WordPress and brought up concerns about whether WordPress will take action against other companies using the “WP” abbreviation or trademark.

Matt Mullenweg (tweet, Hacker News):

We have lifted the blocks of their servers from accessing ours, until October 1, UTC 00:00.

keyladelslay:

Wait you’re really announcing on a Friday that you’re giving devs till Tuesday to support our clients?? I would happily move the wp engine people to literally any other host but customers like it & have whole processes built on it

Steven Mizrahie:

Matt, please stop this nonsense. If you cared about those users as you claim, giving them (@WPengine) essentially less than 1 business day to spin up new infra, test it, QA/QC it and more, then add it to production is woefully short. If you’re so concerned about WPE’s access to your servers for free, what is the estimated cost for those charges? It’s nominal, so let’s not make it about that, right?

Matthew Keys:

I’ve used WordPress for years, for my own websites and for clients. I’ve never used WP Engine. But this whole situation has really soured my view on WordPress, knowing one person can cause so much turbulence for so many who rely on it.

OpenAI and Ive

Tim Hardwick:

Former Apple chief design officer Jony Ive has officially confirmed his involvement in an artificial intelligence hardware project with OpenAI CEO Sam Altman. The confirmation appeared in a profile of the designer by The New York Times, putting to rest speculation that began nearly a year ago about a potential collaboration between the two figures.

The AI hardware venture is reportedly being funded by Ive and the Emerson Collective, a company founded by Laurene Powell Jobs. According to the report, the project could secure up to $1 billion in funding by the end of the year, signaling significant investor interest in the endeavor.

[…]

While specific details about the AI product and its release timeline remain under wraps, the team has already established a significant presence in San Francisco, working out of a 32,000-square-foot office building, part of a $90 million real estate acquisition by Ive on a single city block.

John Gruber (Mastodon):

But an OpenAI-powered personal electronic device, with longtime Apple all-stars Evans Hankey and Tang Tan leading the small team? That’s interesting. That’s competing against Apple. That’s complicated given Ive’s legendary history with Apple. It’s further complicated by the fact that most of LoveFrom’s designers came with Ive from Apple. It’s complicated even further by Powell Jobs’s backing of the startup.

[…]

And the whole thing is made even stranger given OpenAI’s partnership with Apple to provide “world knowledge” generative AI by the end of this year. Can’t help but think of then-Google-CEO Eric Schmidt being an Apple board member when the iPhone debuted — with built-in system apps for Google Maps and YouTube — while Google was simultaneously building Android to compete.

Ed Zitron (via Hacker News):

I ultimately believe that OpenAI in its current form is untenable. There is no path to profitability, the burn rate is too high, and generative AI as a technology requires too much energy for the power grid to sustain it, and training these models is equally untenable, both as a result of ongoing legal issues (as a result of theft) and the amount of training data necessary to develop them.

And, quite simply, any technology requiring hundreds of billions of dollars to prove itself is built upon bad architecture. There is no historical precedent for anything that OpenAI needs to happen. Nobody has ever raised the amount of money it will need, nor has a piece of technology required such an incredible financial and systemic force — such as rebuilding the American power grid — to survive, let alone prove itself as a technology worthy of such investment.

Ate-a-Pi.

Sam is insane. He managed to seal a chatgpt distribution deal with Apple while collaborating on an iPhone killer with Apple’s top designers.

Previously:

What Is a Photo?

Nilay Patel:

It’s also notable what isn’t present on the iPhone this year: there’s no generative AI wackiness at all. There’s no video boost or face-swapping, no adding yourself to group photos, no drawing to add stuff with AI like on the Pixel or Galaxy phones — really, none of it. I asked Apple’s VP of camera software engineering Jon McCormack about Google’s view that the Pixel camera now captures “memories” instead of photos, and he told me that Apple has a strong point of view about what a photograph is — that it’s something that actually happened. It was a long and thoughtful answer, so I’m just going to print the whole thing[…]

John Gruber has quoted the relevant section, and it’s getting rave reviews. Maybe I’m just too dumb to see the profundity, but I don’t think there’s any there there. These are pleasant sounding words along the lines of “music is in our DNA,” but what is the connection to what the Camera app actually does? Reports are that the photos by default look more processed than before. And Apple, like Samsung and Google, has been including features for years that make the photos not what actually happened.

Federico Viticci:

“Something that really, actually happened” is a great baseline compared to Samsung’s nihilistic definition (nothing is real) and Google’s relativistic one (everyone has their own memories). […] But I have to wonder how malleable that definition will retroactively become to make room for Clean Up and future generative features of Apple Intelligence.

What McCormack said is that a photo is a “celebration of something that really, actually happened,” not that the image in the photo actually happened.

Google lets you celebrate a moment where two people were actually standing next to each other by creating such an image from two separate captures where they were standing alone. Apple lets you take a photo of multiple people and objects and remove some of them. What is the distinction here that amounts to a strong point of view? It just seems like a difference in degree. Arguably, the Google example is more truthful in that it’s helping you recreate an actual moment, whereas the Apple one is letting you tune it up to be more what you remembered or wished for than the reality.

If we were talking about this last year, people would say that there’s a big philosophical difference because—although they both combine multiple exposures, add fake bokeh, and use AI to adjust colors and focus, etc.—Android phones let you remove objects and iPhones don’t. But now Apple is adding that, too. If there’s a bright line distinction, I think that was it. Apple crossed it, and I don’t think they’ll stop there. This is fine. It’s a popular feature, and I know people who were considering switching to Android because of it.

Nick Heer:

In my testing of Clean Up on an image on the latest iOS 18.1 beta build, Apple adds EXIF tags to the image to mark it as being edited with generative A.I. tools. EXIF tags can be erased, though, and I do not see any other indicators.

Previously:

Update (2024-09-25): René Fouquet:

1. Given the iPhone’s image processing pipeline–something they proudly speak of at every chance they get–this statement is already demonstrably false. Photos taken on the iPhone definitely do not show something that actually happened. The darker it gets, the more guesswork flows into an iPhone photo. So much guesswork, in fact, that nighttime photos can easily make up things that have never been there in reality. I have taken a couple of photos that interpreted leafs rustling in the wind as something else entirely.

2. How will they frame it when they will eventually add these features? Because let’s be serious for a second here. They didn’t add those features out of some philosophical stance against AI generated content. That is just corporate bullshit. They are simply way, WAY behind their competition when it comes to this and haven’t gotten around to it (yet), or lack the required competence or whatever. It’ll be fun to read the spins after they inevitably change course.

Monday, September 23, 2024

Sequoia’s spctl and csrutil

Rich Trouton:

On macOS Sequoia, running the [sudo spctl –global-disable] command to disable Gatekeeper produces the following output:

Globally disabling the assessment system needs to be confirmed in System Settings.

This seems to be an intentional change—security through preventing automation.

Jeff Johnson (Mastodon):

Today I learned that I can no longer change the startup security policy or disable System Integrity Protection (SIP) on any of the boot volumes.

[…]

When I open Terminal app in the recovery volume and enter csrutil disable to disable SIP, I get the following error:

csrutil: Failed to update security configuration for "Sequoia": Failed to create paired recovery local policy

I’m not sure what’s happening here. It seems like installing Sequoia changed something in his Mac’s firmware so that csrutil no longer works with previous macOS versions, either.

Previously:

Update (2024-09-25): Rich Trouton:

Now that the spctl tool can no longer separately manage Gatekeeper, management profiles are the best way to manage Gatekeeper on macOS Sequoia. For more details, please see below the jump.

ISO8601DateFormatter and Fractional Seconds

Toomas Vahter:

DateFormatter is used for converting string representation of date and time to a Date type and visa-versa. Something to be aware of is that the conversion loses microseconds precision. This is extremely important if we use these Date values for sorting and therefore ending up with incorrect order. Let’s consider an iOS app which uses API for fetching a list of items and each of the item contains a timestamp used for sorting the list. Often, these timestamps have the ISO8601 format like 2024-09-21T10:32:32.113123Z. Foundation framework has a dedicated formatter for parsing these strings: ISO8601DateFormatter.

[…]

Fortunately this can be fixed by manually parsing microseconds and adding the missing precision to the converted Date value.

.withFractionalSeconds only preserves three digits. Cocoa trivia: NSISO8601DateFormatter is an NSFormatter, not an NSDateFormatter.

Previously:

Update (2024-09-25): calicoding:

ISO8601DateFormatter also isn’t Sendable (but DateFormatter is) 🫠. Makes it difficult to declare a shared instance for parsing dates from and API on a background thread.

See also: Ole Begemann.

Intel Foundry

Ben Thompson:

Stratechery has, from the beginning, operated with a great degree of reverence for tech history; perhaps that’s why I’ve always been a part of the camp cheering for Intel to succeed. The unfortunate fact of the matter is that the need for cheerleading has been clear for as long as I have written this blog: in May 2013 I wrote that Intel needed to build out a foundry business, as the economics of their IDM business, given their mobile miss, faced long-term challenges.

Unfortunately not only did Intel not listen, but their business got a lot worse: in the late 2010’s Intel got stuck trying to move to 10nm, thanks in part to their reluctance to embrace the vastly more expensive EUV lithography process, handing the performance crown to TSMC.

[…]

Intel’s is technically on pace to achieve the five nodes in four years Gelsinger promised (in truth two of those nodes were iterations), but they haven’t truly scaled any of them; the first attempt to do so, with Intel 3, destroyed their margins. This isn’t a surprise: the reason why it is hard to skip steps is not just because technology advances, but because you have to actually learn on the line how to implement new technology at scale, with sustainable yield. Go back to Intel’s 10nm failure: the company could technically make a 10nm chip, they just couldn’t do so economically; there are now open questions about Intel 3, much less next year’s promised 18A.

CNBC (via Hacker News):

Intel said it’s creating a separate entity for its foundry business, a structure that could allow it to raise outside funding.

The chipmaker has spent roughly $25 billion on the foundry business in each of the past two years.

The company’s stock has lost almost 60% of its value in 2024.

Pat Gelsinger (via Hacker News):

Specifically, Intel Foundry will produce an AI fabric chip for AWS on Intel 18A. We will also produce a custom Xeon 6 chip on Intel 3 that builds on our existing partnership, under which Intel produces Xeon Scalable processors for AWS. More broadly, we expect to have deep engagement with AWS on additional designs spanning Intel 18A, Intel 18AP and Intel 14A.

[…]

Earlier today, we also announced that Intel has been awarded up to $3B in direct funding under the CHIPS and Science Act for the U.S. government’s Secure Enclave program. This program is designed to expand the trusted manufacturing of leading-edge semiconductors for the U.S. government.

[…]

To build on our progress, we plan to establish Intel Foundry as an independent subsidiary inside of Intel. This governance structure will complete the process we initiated earlier this year when we separated the P&L and financial reporting for Intel Foundry and Intel Products.

[…]

Through our voluntary early retirement and separation offerings, we are more than halfway to our workforce reduction target of approximately 15,000 by the end of the year.

Tim Culpan (via Hacker News):

TSMC’s first Arizona chips are now in production, and Apple is ready to be the first cab off the rank with mobile processors made using the foundry’s 5nm process.

Apple’s A16 SoC, which first debuted two years ago in the iPhone 14 Pro, is currently being manufactured at Phase 1 of TSMC’s Fab 21 in Arizona in small, but significant, numbers, my sources tell me. Volume will ramp up considerably when the second stage of the Phase 1 fab is completed and production is underway, putting the Arizona project on track to hit its target for production in the first-half of 2025.

WSJ (via Hacker News):

Chip giant Qualcomm made a takeover approach to rival Intel INTC in recent days, according to people familiar with the matter, in what would be one of the largest and most consequential deals in recent years.

A deal for Intel, which has a market value of roughly $90 billion, would come as the chip maker has been suffering through one of the most significant crises in its five-decade history.

Previously:

Update (2024-09-25): Richard Lawler and Sean Hollister (via Hacker News):

If a deal were made — and survived regulatory scrutiny — it would be a massive coup for Qualcomm, which reentered the desktop processor market this year as a part of Microsoft’s AI PC strategy after years of dominance in mobile processors.

Previously:

Cohost to Shut Down

cohost (via Hacker News):

We have come to the decision to cease operations of cohost and anti software software club due to lack of funding and burnout.

[…]

cohost will become read-only on Tuesday, October 1st. At this time, we will make best-effort attempts to keep the servers online through the end of 2024.

Development focus has immediately shifted to data export.

Previously:

Friday, September 20, 2024

Gaining Access to Anyone’s Arc Browser

xyzeva (via Hacker News):

firestore is a database-as-a-backend service that allows for developers to not care about writing a backend, and instead write database security rules and make users directly access the database.

this has of course sparked a lot of services having insecure or insufficient security rules and since researching that, i would like to call myself a firestore expert.

[…]

  • arc boosts can contain arbitrary javascript
  • arc boosts are stored in firestore
  • the arc browser gets which boosts to use via the creatorID field
  • we can arbitrarily change the creatorID field to any user id

thus, if we were to find a way to easily get someone elses user id, we would have a full attack chain

Hursh Agrawal:

We want to let all Arc users know that a security vulnerability existed in Arc prior to 8/25/24. We were made aware of a vulnerability on 8/25, it was fixed on 8/26. This issue allowed the possibility of remote code execution on users’ computers. We've patched the vulnerability immediately, already rolled out the fix, and verified that no one outside of the security researcher who discovered the bug has exploited it. This means no members were affected by this vulnerability, and you do not need to take any action to be protected.

bhaney:

There are a lot of major security vulnerabilities in the world that were made understandably, and can be forgiven if they’re handled responsibly and fixed.

This is not one of them. In my opinion, this shows a kind of reputation-ruining incompetency that would convince me to never use Arc ever again.

As I wrote before, I thought it was sketchy that they required an account, and it’s also a red flag that the CVE response blog post does not seem to actually be linked from their blog.

Previously:

Unwanted Swift Concurrency Checking

I’m not adopting Swift Concurrency yet—it’s not even available on the OS versions I’m targeting—so my plan was to take advantage of the Swift 5 language mode of the Swift 6 compiler:

The Swift 6 language mode is opt-in. Existing projects will not switch to this mode without configuration changes.

I had SWIFT_VERSION set to 5, and this worked great when compiling my apps with beta versions of macOS 15 and Xcode 16 over the summer. I needed to make some minor updates to my code to compile with Swift 6 but none were related to concurrency.

However, after updating to the release version of Xcode 16 (since macOS 15 won’t run Xcode 15.4), I started getting this error:

Capture of 'buffer' with non-sendable type 'UnsafeMutableBufferPointer<T>' in a `@Sendable` closure; this is an error in the Swift 6 language mode Generic struct 'UnsafeMutableBufferPointer' does not conform to the 'Sendable' protocol (Swift.UnsafeMutableBufferPointer)

from this code:

DispatchQueue.concurrentPerform(iterations: count) { (index) in
    buffer[index] = // …
}

The GCD API is marked with @preconcurrency:

@preconcurrency public class func concurrentPerform(iterations: Int, execute work: @Sendable (Int) -> Void)

but that didn’t stop it from complaining.

I don’t know whether this is a bug, but it’s certainly not what I expected after repeatedly hearing that strict concurrency checking is opt-in. Reading the details:

You can address data-race safety issues in your projects module-by-module, and you can enable the compiler’s actor isolation and Sendable checking as warnings in the Swift 5 language mode, allowing you to assess your progress toward eliminating data races before turning on the Swift 6 language mode.

It seems that you can “enable” the checking as warnings by setting SWIFT_TREAT_WARNINGS_AS_ERRORS to NO, but I don’t want to do that because I do want other types of warnings to be treated as errors. There’s not yet a way to control warnings individually. And, also, I don’t want to see concurrency warnings with every build when I’m not going to be actively fixing them for a while. There is a separate SWIFT_STRICT_CONCURRENCY build setting, but there doesn’t seem to be a way to turn it off, only to minimal, which still reports this warning/error.

I’m not the only one to run into this exact issue. Frank Rupprecht found that the warning can be avoided by assigning the closure to a variable, rather than passing it directly:

let closure = { (index: Int) in
    buffer[index] = // …
}
DispatchQueue.concurrentPerform(iterations: count, execute: closure)

It’s not clear to me whether this is a hack exploiting a compiler bug or a designated opt-out akin to how GCC treats putting an assignment expression in parentheses. But I’m going with this for now because it seems silly to rewrite the code for Swift Concurrency when (a) I’m not using that yet, and (b) GCD is a separate world, anyway.

Jesse Squires discusses a related issue when he does have strict concurrency checking enabled:

I was confronted with this warning in a project recently and I want to share the hack for how I worked around it. The issue was the result of a combination of factors I mentioned above. I was interacting with @preconcurrency APIs and I knew my code was concurrency-safe, but I was unable to accurately express that to the compiler.

[…]

So, we have situation where the Swift compiler is telling us that the closure being captured needs to be @Sendable but we cannot make it @Sendable. It is also telling us that the closure loses its @MainActor but we know that the closure will always be called from the main queue. Because of these two problems, we need to find a way to work around the warnings and coerce the compiler into doing what we want.

I also got a similar error about capturing a non-sendable type when using these methods:

@MainActor func filePromiseProvider(_ filePromiseProvider: NSFilePromiseProvider, fileNameForType fileType: String) -> String

nonisolated func filePromiseProvider(_ filePromiseProvider: NSFilePromiseProvider, writePromiseTo url: URL) async throws

I was already using the queue supplied by the provider, but Swift Concurrency doesn’t know that. Here I was able to silence the error by using:

nonisolated(unsafe) let provider = // …

Finally, I got this error:

Struct 'Notification' does not conform to the 'Sendable' protocol (Foundation.Notification)

with this code:

queue.async(flags: .barrier) {
    DispatchQueue.main.sync {
        f(notification)
    }
}

I’m ensuring that the notification is only used on the main thread, but Swift Concurrency doesn’t realize that. Again, I was able to silence the error using nonisolated(unsafe). It’s not clear to me whether assumeIsolated() might be more appropriate in this situation, but I can’t use it, anyway, because that API doesn’t back deploy far enough.

Previously:

Update (2024-09-23): Sami Samhuri:

I ran into something similar and it’s fixed in Xcode 16.1 beta 2.

My issues are not fixed in the beta, so I filed a bug.

Tanner Bennett:

At Tinder we have about 2 dozen concurrency related warnings under Xcode 16 and we have concurrency checking turned off and are in swift 5 mode. Super frustrating.

Rhys Morgan:

You know about the DispatchQueue.main.async special casing [in the compiler] too, right? When you write exactly that, it infers that the contents of the async bit are MainActor-isolated.

Rewriting Tumblr

Automattic (via Sarah Perez, Slashdot):

Since Automattic acquired Tumblr we’ve made it more efficient, grown its revenue, and worked to improve the platform. But there’s one part of the plan that we haven’t yet started, which is to run Tumblr on WordPress. I’m pleased to say we’re kicking off that project now!

[…]

We’re talking about running Tumblr’s backend on WordPress. You won’t even notice a difference from the outside.

[…]

This won’t be easy. Tumblr hosts over half a billion blogs. We’re talking about one of the largest technical migrations in internet history.

Dave Winer:

This could get a simple colorful user-friendly interface for WordPress, something it’s needed for a long time. WordPress does everything in its UI, Tumblr has its UI better organized for writers and more casual users. If they can move in this direction, it seems that WordPress could be large part of the emerging social web.

Previously:

The End of Pinboard?

John Gordon (Hacker News):

Over the past few years there have been a slowly increasing number of pinboard outages with less communication. While debugging the last outage I purged my local history from the 3rd party Pins iOS app and found that Pinboard was throttling their download API. I could download only 100 of my 50,000 or so pins. (It’s still easy to download the whole set as a file).

That’s ominous, but more importantly Pinboard is a one person show and that person is no longer responding to support emails. Maciej is no longer active on social media that I know of. His Pinboard.in support forum has been quiescent for years. I’ll be researching my micro blog options and I’ll write about what I come up with on tech.kateva.org.

10 years is an eternity on the web. Pinboard had a good run, but it too is passing.

I, too, have see the site become slower and less reliable. Unlike some others, I haven’t had trouble downloading my archive.

ghoomketu:

Wow, the irony is Pinboard, the very service that championed the idea of “Don’t be a free user” is now shutting down (edit: sorry, ok not shutting down officially but apparently it’s in a free fall for quite some time and nobody gives a damn). Their article argued that free services often turn into pump-and-dump schemes, while paid services promise sustainability and better support. Yet here we are, witnessing the demise of a paid service that couldn’t sustain itself.

It’s a stark reminder that even paid models aren’t immune to market forces and operational challenges.

Maybe the real takeaway is that no business model is foolproof, and unless you can self host something you can never know when and how it will end.

Previously:

Thursday, September 19, 2024

iPhone 16 Pro Camera

Nilay Patel:

The reason Apple calls it “Camera Control” and not just “shutter button” is the capacitive controls on the top, which should ideally let you adjust various settings with a quick swipe. I was really hoping I’d find myself using the capacitive controls to adjust things like exposure and focal length, but it’s all a bit fiddly switching between everything with the light presses and far too easy to end up changing things you weren’t intending to. The whole thing would be greatly improved if a second light press dismissed the control; once they’re open, they tend to stay open, leading to inadvertent changes when your finger slides along the button.

[…]

The iPhone 15 and 15 Pro hit a kind of tipping point — they produced photos so aggressively processed that all kinds of people started noticing and complaining about it. I have been reviewing phones and cameras for a long time, but I will never publish a review as efficiently devastating as Alix Earle asking her 7 million followers why her iPhone 15 camera sucks. If people who’ve built multimillion-dollar content businesses with their phone cameras aren’t loving the cameras on their new phones, something’s gone wrong.

[…]

The bad news is that, by default, the iPhone 16 Pro camera is even more aggressive about evening out shadows and highlights than the iPhone 15 Pro. It’s subtle, but it’s there — you can see it with basic photos of plants, with pictures of people, with street scenes — it’s all just a little bit brighter and a little bit flatter.

[…]

The iPhone 16 and 16 Pro allow you to exclude yourself from this narrative entirely with a huge upgrade to the Photographic Styles feature that allows you to adjust how the camera processes colors, skin tones, and shadows, even after you’ve shot a photo. […] The tone control is semantically aware — it will adjust things like faces and the sky differently, so it’s still doing some intense computational photography, but the goal is for you to be able to take photos that look a lot more like what a traditional camera would produce if you bring the slider all the way down.

Though the tone control happens in software, it’s not available for older iPhones. He says, “it’s possible to argue that this one single camera adjustment makes upgrading to an iPhone 16 or 16 Pro worth it.” The styles data is stored in the HEIC file so that the effect can be undone after the fact, though only using Apple’s app.

John Gruber (Mastodon):

Apple seemingly doesn’t ever refer to Camera Control as a “button”, but it is a button. You can see it depress, and it clicks even when the device is powered off (unlike, say, the haptic Touch ID Home button on iPhones of yore and the long-in-the-tooth iPhone SE). But it isn’t only a button. You can think of it as two physical controls in one: a miniature haptic trackpad and an actually-clicking button.

[…]

Just writing that all out makes it sound complicated, and it is a bit complex. (Here’s Apple’s own illustrated guide to using Camera Control.) Cameras are complex. But if you just mash it down, it takes a picture. Camera Control is like a microcosm of the Camera app itself. Just want to point and shoot? Easy. Want to fiddle with ƒ-stops and styles? There’s a thoughtful UI to enable it.

[…]

Camera Control is designed to be used in both wide (landscape) and tall (portrait) orientations. Moving it more toward the corner, where my finger wants it to be, would make it better for shooting widescreen, but would make it downright precarious to hold the iPhone while shooting tall.

It seems to be better placed for camera use than the Action button.

But, when your iPhone is locked and the screen is off, or in always-on mode, clicking Camera Control just wakes up the screen. You have to click it again, after the screen is awake, to jump to shooting mode.

But this is what I love about the Action button—no matter where I am I can press it to get to shooting mode.

There are now 15 base styles to choose from, most of them self-descriptively named (Neutral, Gold, Rose Gold), some more poetically named (Cozy, Quiet, Ethereal). The default style is named Standard, and it processes images in a way that looks, well, iPhone-y. The two that have me enamored thus far are Natural and Stark B&W. Standard iPhone image processing has long looked, to many of our eyes, at least slightly over-processed. Too much noise reduction, too much smoothing. A little too punchy. Natural really does look more natural, in a good way, to my eyes.

Austin Mann:

The upgrade of the Ultra Wide camera to 48MP was by far the feature I was most excited about at the keynote.

[…]

An added bonus is that the iPhone’s Macro mode also uses the Ultra Wide camera, meaning Macro shots are now 48 megapixels as well. The detail is remarkable, and the iPhone 16 Pro might just be my new favorite camera for macro photography.

[…]

I’ve also been surprised at how useful the extra shutter button has been. I find I use a combination of the on-screen shutter button, Action button, Volume button, and Camera Control—depending on the scenario and how I’m holding the iPhone to capture it.

[…]

In our extreme use cases—shooting from a helicopter and bouncing around in a safari vehicle—I occasionally found myself accidentally bumping the Camera Control adjustments (like inadvertently zooming in or changing exposure settings). For these situations, I went to Settings > Camera > Camera Control to explore my options.

[…]

Photographic Styles don’t work in Burst mode, which I learned after shooting a few bursts with Craig.

Previously:

Swift 6

Holly Borla (Hacker News, Lobsters):

Swift 6 marks the start of the journey to make data-race safety dramatically easier. The usability of data-race safety remains an area of active development, and your feedback will help shape future improvements.

Swift 6 also comes with a new Synchronization library for low-level concurrency APIs, including atomic operations and a new mutex API.

[…]

Swift 6 introduces a number of productivity enhancements, including count(where:) to streamline counting the number of elements in a sequence that satisfy a predicate, pack iteration for writing natural for-loops over the elements in a value parameter pack, access control for imports to keep implementation details from leaking into your public APIs, @attached(body) macros for synthesizing and augmenting function implementations, expression macros as default arguments, and more.

You can find a complete list of language proposals that were accepted through the Swift Evolution process and implemented in Swift 6 on the Swift Evolution dashboard.

[…]

Swift 6 unifies the implementation of Foundation across all platforms. The modern, portable Swift implementation provides consistency across platforms, it’s more robust, and it’s open source. macOS and iOS started using the Swift implementation of Foundation alongside Swift 5.9, and Swift 6 brings these improvements to Linux and Windows.

Rudrank Riyam:

I started documenting my learnings about Swift 6 errors, the reasoning behind them, and how to fix them. The first one is:

Static property ‘shared’ is not concurrency-safe because non-’Sendable’ type may have shared mutable state

Casey Liss:

Swift 6 strict concurrency checking may be the quickest and easiest way for me to feel like a dunce. ☹️

Half of these warnings I’m just like “uhhhhhh… wat”.

I’m sure I’ll get there, but, gracious. 😓 Gotta stop kicking that can though…

Alexander Steiner:

Just wait until you have fixed all errors but the app is crashing at runtime randomly because of missing annotations in first-party frameworks.

Sindre Sorhus:

My advice for updating to Swift 6:

Turn on the switch, fix the easy stuff, turn it off again, and wait until next year. Apple will spend the next year making it easier to adopt complete concurrency.

Simon B. Støvring:

I’m leaning towards this plan too. Properly adopting concurrency in Swift 6 is way too convoluted. I can’t imagine Apple won’t get flooded with feedback from developers, pushing them to simplify it in a future version.

dasdom:

Swift 6 is solving a problem I didn’t encounter in 15 years of iOS development by providing me with lots of problems I didn’t ask for.

Previously:

Google Search Adds Links to Internet Archive

Chris Freeland:

In a significant step forward for digital preservation, Google Search is now making it easier than ever to access the past. Starting today, users everywhere can view archived versions of webpages directly through Google Search, with a simple link to the Internet Archive’s Wayback Machine.

[…]

To access this new feature, conduct a search on Google as usual. Next to each search result, you’ll find three dots—clicking on these will bring up the “About this Result” panel. Within this panel, select “More About This Page” to reveal a link to the Wayback Machine page for that website.

This makes it easier to see previous versions of a page. It would also be useful if Google could search pages that are in the archive but no longer available on the Web. For example, many articles and blog posts that I’ve linked to are on sites that are now defunct. I can find them in the Wayback Machine because I have the URL. But without that key, even if I know some of the text on the page, I can’t really search for it in the archive.

Ben Schoon (via Hacker News):

Google Search makes it easy to find information, but occasionally you need historical context for a page that may have been recently updated. That was previously possible to a certain extent through cached pages in Search, but that functionality was removed earlier this year.

Previously:

Lost Internet Archive Accounts

Matt Sephton:

Recently at Internet Archive a “glitch” (their choice of word) deleted a great many accounts, including my account that had been at archive.org/details/@gingerbeardman since 2015.

Somewhat surprisingly, they are not reaching out to affected users but rather waiting for them to create new accounts and silently relinking their old uploads only if the new account has same email as the old account. Otherwise, all profile metadata, favourites, lists, reviews, posts, collections, web archives, and the original username are not being relinked. For me that’s a decade of data…gone.

The main impact of this massive data loss, that happened around mid-July, is that there are now dead links to old profiles and various old pages all across the internet, plus the additional impact of lost data that is not being recovered. It’s a real blow to the broader preservation effort to know that the one place where data is supposed to be safe forever has had a massive data loss and the organisation responsible are not taking proactive steps to address the issue fully.

See also: Reddit.

Wednesday, September 18, 2024

Feedback Feedback

Cesare Forelli:

I want to file a constructive Feedback to Apple about the developer experience with the Feedback process itself (very meta, I know), and I need yours!

5 quick & unbiased questions, please 🙏 answer them now.

Previously:

macOS Firewall Regressions in Sequoia

Will Dormann:

[Running] nslookup clearly causes a DNS request and a response to go over the wire, but nslookup eventually gives up thinking that no servers could be reached.

[…]

So if I turn off the macOS firewall, this all works fine. 🤔

[…]

Problem #1: “Block incoming connections” includes DNS responses is new as of macOS Sequoia. Prior to macOS 15 Sequoia “Block incoming connections” meant “Don’t poke a hole in my firewall for this”. Starting with Sequoia, this also includes “Don’t allow responses to DNS requests”, which is clearly a bug in the macOS stateful firewall. Any response to a request that I initiate should be allowed in.

Problem #2: The macOS GUI for firewall rules being disconnected from the existing rules (e.g. cannot change some) is apparently an artifact of macOS switching underlying storage for the firewall rules at some point. And the GUI apparently is only hooked up to the old storage. If you’ve had a Mac for a while, you’ll probably get bitten by this.

Wacław Jacek:

It seems the OS firewall can sometimes start blocking access to web browsing after upgrading to macOS Sequoia. At least this was the case for me and some folks on Reddit.

Going to the firewall settings screen, there can be no way to toggle access for the browser.

Ivo Damjanović:

I have an issue with the firewall too. It does not accept incoming SSH connections. But they are allowed. I think this is a bug. I can tell you how to edit the entry list. You are able to edit some of them because the UI uses an old firewall rule storage. You can not edit the rules that use the new storage. You may edit them with sudo /usr/libexec/ApplicationFirewall/socketfilterfw --listapps.

I’m also hearing that firewall and other security and networking settings were silently reverted by the Sequoia update.

See also: MacRumors, Reddit, ESET.

Previously:

Update (2024-09-20): Arin Waichulis:

However, according to TechCrunch, it now appears to be disrupting security tools made by CrowdStrike, SentinelOne, and Microsoft. Social media users are also reporting connection failures with third-party VPNs.

[…]

Patrick Wardle, a long-time iOS and Mac security expert and founder of the Objective-See Foundation, expressed his frustration, noting that Apple’s lack of thorough testing is to blame.

“As a developer of macOS security tools, its incredibly frustrating to time and time again have to deal with (understandably) upset users (understandably) blaming your tools for breaking their Macs, when in reality it was Apple’s fault all along,” Wardle told 9to5Mac.

Commenters on that article are blaming developers for not testing during the macOS beta period, but Wardle shows that the issue had been reported to Apple prior to the RC.

Update (2024-09-25): Brandon Vigliarolo:

Something’s wrong with macOS Sequoia, and it’s breaking security software installed on some updated Apple systems.

[…]

Both Microsoft and ESET have posted bulletins about networking problems in macOS 15, and both report different fixes for their respective problems as well.

[…]

Speaking to The Register, Wardle told us he’d heard from some of the larger vendors he’s spoken to that Apple has acknowledged some unintended changes that it was working on fixing, but said he wasn’t sure if that meant the issue was at the firewall or lower-level networking components.

Via Sam Rowlands:

Some users of my software have reported that the auto update system can fail also, in the networking portion of the code.

Apple Drops Lawsuit Against NSO Group

Ryan Naraine (via Hacker News):

Apple has abruptly withdrawn its lawsuit against NSO Group, citing increased risk that the legal battle might unintentionally reveal sensitive vulnerability data and difficulties in acquiring essential information from the spyware vendor.

In a court filing Friday, Apple said continuing the lawsuit now poses “too significant a risk” of exposing the anti-exploitation and threat intelligence efforts needed to fend off the very adversaries involved in the legal dispute.

[…]

Apple also cited concerns that NSO Group and unidentified officials in Israel may have taken actions to avoid producing information during discovery. “This means that going forward with this case will potentially involve disclosure to third parties of the information Apple uses to defeat spyware while Defendants and others create significant obstacles to obtaining an effective remedy,” the company said.

Nick Heer:

It also downplays the effects of a successful suit — a win would, according to Apple, “no longer have the same impact as it would have had in 2021” because there are plenty of NSO Group competitors.

WhatsApp appears to be continuing its suit against NSO Group. On the same day Apple filed its request to dismiss its case, WhatsApp attorneys were scheduling depositions (PDF).

Previously:

Update (2024-09-25): Tim Cushing:

In July, documents obtained by Distributed Denial of Secrets (DDoS) revealed the desperate measures NSO Group deployed to avoid having to turn over internal information during discovery in multiple lawsuits, including one filed by Apple. Knowing that discovery was inevitable, NSO met with Israeli government officials and asked them to secure a blocking order from the nation’s courts to prevent having to comply with discovery requests.

The government secured these orders and went to work shortly after WhatsApp served NSO with its discovery requests. According to the paperwork, the government needed to seize a bunch of the company’s internal documents for “national security” reasons, speculating disingenuously and wildly that turning over any information about NSO’s Pegasus phone-hacking malware would make the nation itself less secure.

Shortly thereafter, the Israeli government engaged in a performative raid of NSO’s offices to seize anything NSO felt might be disadvantageous in these lawsuits.

Canva Hikes Prices

Denham Sadler (via Hacker News, Slashdot):

Canva has announced a tripling of their prices for some of its users as the Australian tech company prepares for a public listing in the US.

In the US, some users have had their subscription increase from $119.99 per year to $300 per year for the first 12 months, then $500 per year thereafter– an increase of 316 per cent.

[…]

A spokesperson for Canva said the price rise was due in part to the introduction of a number of new features on the Canva platform, including many powered by AI and generative AI.

That’s the largest increase I can recall seeing.

Previously:

Tuesday, September 17, 2024

Little Snitch 6 and DNS Encryption

Norbert Heger:

Little Snitch 6 offers a new feature: DNS encryption. With DNS encryption enabled, all name lookups are routed through Little Snitch and performed in encrypted form.

For this purpose, Little Snitch registers a DNS proxy. macOS then sends all DNS requests to that proxy, which in turn performs the lookup in encrypted form. The key point here is that all requests must be routed through the proxy.

[…]

There appears to be a bug in macOS Sequoia causing some requests to bypass the installed DNS proxy and be sent unencrypted to the system’s default name server instead.

[…]

After further investigation, we found that this bug has already existed at least since macOS 14.5 Sonoma (maybe even earlier, but we currently don’t have access to an older 14.x system for testing).

For more on the Little Snitch 6 upgrade, see the press release, release notes, MacRumors, and TidBITS.

Previously:

Update (2024-09-18): Norbert Heger (Hacker News):

After further investigation, we found that this bug only affects the DNS proxy of Little Snitch 6.1. It’s not a general problem of DNS proxies in macOS.

[…]

The issue has been fixed in Little Snitch 6.1.1.

Does Google Chrome Still Devastate Mac Battery Life?

Matt Birchler (Hacker News):

That brings us to the “Chrome devastates your Mac’s battery” claim that is commonly thrown around as fact, although rarely while citing any sources. This is presented as common knowledge. It’s as indisputable as gravity – a fact of the universe – Chrome crushes your battery and Safari sips it.

[…]

About 18 months ago, Google claimed they’d caught up to Safari in battery drain, so I decided to do some testing of my own. Conveniently, I recently had to wipe my MacBook Pro’s internal drive and restore to a clean version of macOS Sonoma (long story, but betas gonna beta) so I have pretty stock version of macOS running right now that would be perfect for some testing.

[…]

In my 3-hour tests, Safari consumed 18.67% of my battery each time on average, and Chrome averaged 17.33% battery drain. That works out to about 9% less battery drain from Chrome than Safari. Yes, you read that right, I found Chrome was easier on my battery than Safari.

While I did experience some variability in each 3 hour test run, Chrome came out on top in 5 of the 6 direct comparisons.

therjaye:

I believe Microsoft engineers contributed a lot of code to the Chromium project in regards to improving battery efficiency. All the Chromium-based browsers benefited from it and so Chrome is nothing like as bad as it used to be.

ksec:

Perhaps the peak of Chrome complaining battery drain was something in between 2018 - 2020. It also happens to be the peak of Safari is the new IE with so many web features missing and bugs unresolved. Both are correct to a certain degree and have been the case for many years before it reached what could be described as a PR crisis.

Since then Safari had twice if not more features and bug fix than usual in the next few Safari releases. While Chrome worked on multi tab memory usage reduction, and efficiency. At the same time Firefox just went into polishing mode because a lot of the efficiency work already came from Servo, E10s and Memshrink over the past 10 years.

In multi tab usage ( ~50 to 80 ) Chrome is already better than Safari simply because Safari still don’t consider lots of Tabs on macOS as one of their usage scenario. And Chrome being better for that for at least 2 years. For 7000 tabs it is still better to use Firefox.

I’ve certainly seen that Chrome handles large numbers of tabs much better than Safari.

Nicolas Magand:

Today, after nearly 20 years of loyalty to Safari, I’m considering switching to another default browser on my personal computer. I mean, why is it so hard to watch a YouTube video without hiccups, and why can I only choose from a selection of 4 search engines, including three Bing-based?

I still like Safari better as an app, but, as I wrote a week ago, I’m increasingly frustrated by compatibility and reliability problems. Maybe it will be better with Sequoia, when I can upgrade.

Mike Rockwell:

The search engine limitation is one of the main reasons I’ve switched from Safari on my iPhone.

Previously:

Update (2024-09-19): Nick Heer:

I cannot understand why Safari’s UI has been so poorly responsive for years now. This is just me toggling between two windows. Look how long it takes for the window to become visually active or inactive.

August Mueller:

Safari has been pretty sketchy for me as well lately. And frequently videos in YouTube will pause until I move my cursor around (though audio will still play). I’ve been contemplating moving to Chrome more and more.

Update (2024-09-25): Daniel Jalkut:

I feel bad for the restaurants who use software that, they probably don’t realize, doesn’t work at all with Safari/Apple clients. I am usually ordering on my Mac so I can switch to Chrome, but …

The Accuracy of “Find My” AirPods

Mark Frauenfelder (via Slashdot):

A SWAT team terrorized an innocent St. Louis County family last May, all due to a pair of stolen AirPods and questionable police tactics. Brittany Shamily and her family, including a three-month-old baby, were terrified when heavily armed officers smashed through their front door screaming searching for evidence related to a carjacking that had occurred earlier that day.

The police relied on the “FindMy” app to track the stolen AirPods to Shamily’s home, despite the app’s known inaccuracies. This led to a search warrant being issued, and the SWAT team descended upon the unsuspecting family with overwhelming force.

Ryan Krull:

“FindMy is not that accurate,” says the family’s lawyer, Bevis Schock. “I actually went to my house with my co-counsel and played around with it for an hour. It’s just not that good.”

[…]

After this had gone on for more than half an hour, the AirPods were located — on the street outside the family’s home.

Previously:

Glowtime Ennui

John Gruber (Mastodon, Hacker News):

Last week’s “It’s Glowtime” event was very strong for Apple. It might have been the single strongest iPhone event since the introduction of the iPhone X. All three platforms are now in excellent, appealing, and coherent shape[…]

[…]

But, still, flying home from California on Tuesday, I was left with a feeling best described as ennui.

[…]

My dissatisfaction flying home from last week’s event is, ultimately, selfish. I miss having my mind blown. I miss being utterly surprised. I miss occasionally being disappointed by a product design that stretched quirky all the way to wacky. I miss being amazed by something entirely unexpected out of left field.

I felt that, too, but I disagree with the framing. The product lines are indeed very strong right now, but the event itself was boring. I started multitasking instead of fully paying attention and even then felt I’d wasted my time watching. It just felt too long and too canned. The products themselves seem fine. I’m not tempted to upgrade my iPhone 15 Pro, though after so many years of iPhones I think it would be unreasonable to expect to be after just one year.

Mossberg correctly cites AirPods and Apple Watches as big successes of the post-Jobs era. Not coincidentally, they are two of the three platforms Apple featured in last week’s event — and two of the three that people carry wherever they go.

[…]

What we’re seeing is Tim Cook’s Apple. Cook is a strong, sage leader, and the proof is that the entire company is now ever more in his image. That’s inevitable. It’s also not at all to say Apple is worse off. In some ways it is, but in others, Apple is far better. I can’t prove any of this, of course, but my gut says that a Steve-Jobs–led Apple today would be noticeably less financially successful and industry-dominating than the actual Tim-Cook–led Apple has been.

I think that’s probably right. I bet the software would be better, though. The more interesting question is the long-term state of the company and its products, which of course we don’t yet know.

Cook almost never reveals his true passionate self in public. But at least one time he did. At the 2014 annual shareholders meeting, Cook faced a question from a representative of the right-wing National Center for Public Policy Research (NCPPR). As reported by Bryan Chaffin at The Mac Observer.

I have a somewhat different take on the famous “bloody ROI” response. Everyone focuses on how Tim Cook stood up for doing things that are right, even if they aren’t profitable. But the context is that Cook himself had started the ROI discussion by stating that Apple’s environmental programs were good for the bottom line. He was then asked a valid question—whether this was only true because of government subsidies. That would be interesting to know, but we never got the answer because he dodged the question and pivoted to accessibility and worker safety.

We know that Tim Cook loves data. But he wants us to believe that Apple has never run the environmental numbers, just like it has no idea whether the App Store is profitable. He’s always on message. And here the message is that Apple has its priorities, which shan’t be questioned.

Whenever an Apple developer or customer complains about something that sucks but could likely be fixed by the application of money, which Apple has, people respond that Apple’s hands are tied. It has to look out for its profitability and shareholders. But a perk of being CEO is that you can ignore smaller asks like these while spending tens of billions on TV content and cars. The ROI only matters when you say it does. You get to decide whether a cost that would make people happy is frivolous or an important investment in the future health of the platform.

Riccardo Mori:

Ever since Apple switched to this pre-packaged delivery format, the novelty has worn down quickly and these events all look like sophisticated PowerPoint presentations and, worse, they all look alike. When I try to isolate one from the last dozen I’ve watched, I can’t. They’re all a blur.

[…]

My impression that Apple is severely removed from how actual people use their phones is reinforced every time they show a short video to illustrate how certain features work. These videos are supposed to showcase how Apple products naturally embed in regular people’s daily lives. What we see are slices from utopia. Impeccable people moving about in their impeccable homes living glossy-magazine lives, everybody fluidly relating to their personal tech devices.

Ben Thompson:

The lack of a price increase for the iPhone 16 Pro made more sense when I watched Apple’s presentation; I found the updates over the iPhone 15 Pro to be pretty underwhelming. The A18 Pro chip is on TSMC’s newest 3nm process, there is a new Camera Control button, and the screen is a bit bigger with bezels that are a bit smaller; that’s really about it from a hardware perspective, although as always, Apple continues to push the envelope with computational photography. And, frankly, that’s fine: last year’s iPhone Pro 15, the first with titanium and USB-C, was for me the iPhone I had been waiting for (and most customers don’t upgrade every year, so these and other previous updates will be new features for them).

What I find much more compelling — and arguably the best deal in iPhone history — is the $799 iPhone 16 (non-Pro). The A18 chip appears to be a binned version of the A18 Pro (there is one less GPU and smaller caches), while the aforementioned bump to 8GB of RAM — necessary to run Apple Intelligence — matches the iPhone 16 Pro. There is one fewer camera, but the two-camera system that remains has been reconfigured to a much more aesthetically pleasing pill shape that has the added bonus of making it possible to record spatial video when held horizontally. The screen isn’t quite as good, and the bezels are a bit larger, but the colors are more fun. It’s a great phone, and the closest the regular iPhone has been to the Pro since the line separated in 2017.

[…]

Software, specifically AI, is what will drive differentiation going forward, and even in the best case scenario, where Apple’s AI efforts are good enough to keep people from switching to Google, the economics of software development push towards broad availability on every iPhone, not special features for people willing to pay a bit more. It’s as if the iPhone, which started out as one model for everyone before bifurcating into the Pro and regular (and SE) lines, is coming full circle to standardization; the difference, though, is its value is harvested through R&D intensive services that need to run everywhere, instead of unit profits driven by hardware differentiation.

Eric Schwarz:

I think this nails what a lot of the tech community has been complaining about for the last few years—Apple is kind of boring now, but in a way that you can safely buy the current iPhone when you feel like it is time to upgrade.

Previously:

Update (2024-09-18): Nick Heer:

This year’s bit of consumerist fun did feel overlong and tedious to me, too — like homework for understanding the lineup rather than an exciting demonstration of tomorrow’s technology available today. Apple’s employees were doing their best onscreen to show excitement. Yet it did not translate so well for me and, it would seem, many others.

M.G. Siegler:

When I originally took issue with the event itself – which is to say, the video presentation of what Apple was presenting “on stage” – it wasn’t about the products themselves. It was simply that the event itself was boring. It completely lacked any sort of pomp and circumstance. Sure, part of this is because the state of Apple leaks (by which I largely mean, Mark Gurman reports, of course) is such that we know almost everything coming at such events not just ahead of time, but often weeks or months ahead of time. But even if we didn’t know such details, I think the event still would have been less than great because it was just far too long. You got the sense that Apple was reiterating – which is a kind way of saying repeating – all of the talking points about Apple Intelligence for Wall Street as much as anyone else. Apple would deny this, of course. But in my mind, there is no denying that Apple is pushing their AI products far earlier than they would like or probably should be in order to “play the game on the field” as it were.

[…]

I believe Jobs would have figured out better ways to present and explain and market the devices Apple is putting out there. And that framing would have yielded more excitement around this year’s devices, rather than just a string of endless numbers.

Eric Schwarz:

I’d almost prefer to see a live iPhone presentation that just owns the fact that the next model is a nice iteration of the prior and keep it short and sweet.

Update (2024-09-20): Riccardo Mori (Mastodon):

Let’s get back to the last bit of the quoted part above. Gruber says: Tim Cook’s Apple doesn’t make mistakes like that. That’s ultimately why Cook’s Apple is more successful.

Selective memory is amazing. Shall we talk about a few duds that happened under Tim Cook’s Apple? Like the 2013 ‘trash can’ Mac Pro? Like the impregnable 2014 Mac mini? Like the 2015 12-inch single-port retina MacBook? — A dud in itself containing yet another dud in the form of the infamous keyboard with butterfly mechanism, one of the biggest blunders in Apple’s history that took the company four years, four years to acknowledge and fix it. Shall we talk about the Touchbar? Or the gold Apple Watch Edition? Shall we talk about the slow but assured deterioration of Mac OS, the user interface and Apple software in general?

[…]

If we’re talking about gut feelings, I’d say that if Steve Jobs were still around, we would have a differently successful and a differently industry-leading Apple. A company that wouldn’t feel so ‘corporate tech’ as other giants in the field. A company that probably wouldn’t be this greedily pushy when it comes to the App Store and its bloody 30% cut. A company that probably wouldn’t want to be involved in everything, everywhere, all the time in all the markets but would instead choose specific markets and bloody excel at those. A company that would probably know what to do with the iPad. A company that would still make excellent software — especially when it comes to the Mac. And that would be capable of differentiating itself in more meaningful ways than just being a giant tech powerhouse.

Matt Birchler:

While the most common upgrade cycle is 2-3 years (40%), and a similar amount (39%) upgrade in 4 or more year cycles, a full 21% of people upgrade their phone at least once per year. Given an estimated 316 million smartphone owners in the US today, that’s 66 million Americans who buy a new phone every year.

Monday, September 16, 2024

macOS 15 Sequoia

Apple (feature list, release notes, developer, security, enterprise, full installer, IPSW):

macOS Sequoia brings exciting new features, including iPhone Mirroring, which expands Continuity by enabling access to and control of iPhone directly from macOS; big updates to Safari; a new Passwords app; and more. Starting next month, macOS Sequoia will introduce Apple Intelligence, the personal intelligence system that combines the power of generative models with personal context to deliver intelligence that is incredibly useful and relevant while protecting users’ privacy and security.

See also:

So far (knock on wood), it seems like Sequoia breaks less stuff than other recent major releases. However, I can’t upgrade yet because Xcode 15.4 doesn’t work on Sequoia, and Xcode 16 can’t compile for Big Sur.

Rich Trouton:

As part of the release of macOS Sequoia, Apple has added new user functionality for managing system extensions, as well as management profile options for Mac admins.

Felix Schwarz:

TIL that in macOS Sequoia SecPKCS12Import() fails with error errSecAuthFailed (“Authorization/Authentication failed”) when trying to import PKCS12 data that’s “protected” with an empty password (“”).

Written out as a file, the same data will also fail to import into the Keychain Access app with the same error.

Howard Oakley:

Apple has already announced that this first ‘minor’ update will bring its AI features, including most significantly Writing Tools. Although those have been in beta-testing for almost as long as 15.0, in terms of changes, the step from 15.0 will in many ways be greater than that from 14.6 to 15.0. However, that only applies to Apple silicon Macs that support AI.

Previously:

Update (2024-09-17): See also: Hacker News.

Adam Chandler:

Wait so another year of improvements coming to photos for my cellular phone and none of these improvements are on the computer I edit, proof and organize the photos?

Rich Trouton:

As of macOS Sequoia, Keychain Access.app is in the following location:

/System/Library/CoreServices/Applications/Keychain Access.app

Howard Oakley:

One of the unannounced features in macOS Sequoia is, for many who use iCloud Drive, one of its most important, as this upgrade introduces the ability to pin files and folders to ensure they remain downloaded and don’t get evicted.

Jen Simmons:

With iPhone Mirroring on macOS Sequoia, you can use your iPhone from your Mac. Combine it with remote inspection from Safari, and now it’s easier than ever to test and debug websites on iOS using Web Inspector.

[…]

macOS Sequoia adds support for opening links directly in web apps. Now, when a user clicks a link, if it matches the scope of a web app, that link will open in the web app instead of their default web browser.

[…]

Now users can personalize web apps on Mac with Safari Web Extensions and Content Blockers.

Jeff Johnson:

For some reason, Apple chose not to support app extensions in Safari 18 web apps.

Tim Hardwick:

With macOS Sequoia now released, there are again new features that aren’t available to Intel Mac owners.

Matthias Gansrigler:

Does macOS Sequoia no longer accept global keyboard shortcuts with an option shift modifier, like (⌥ ⇧ 2) ? I can’t seem to get it to work anymore using RegisterEventHotkey…

Benjamin Mayo:

The iPhone Mirroring window defaults to “Actual Size”, but it really isn’t (at least for me). I’d estimate it is about 80% of my actual iPhone’s screen size, and is simply too small. The “Larger” view option is usable.

Update (2024-09-19): Shottr (Reddit):

Starting with macOS Sequoia, Apple does not allow global hotkeys where Option or Shift+Option are the only modifiers.

If you have an Opt+Letter hotkey, it'll stop working after you update macOS. Changing hotkey to Ctrl+Letter will help.

Apple Frameworks Engineer:

This was an intentional change in macOS Sequoia to limit the ability of key-logging malware to observe keys in other applications. The issue of concern was that shift+option can be used to generate alternate characters in passwords, such as Ø (shift-option-O).

This doesn’t make sense to me since most of the password characters would not use those modifiers, anyway.

Tyler Hall has screenshots of Sequoia’s notifications of extensions being added. Oddly, the spacing and use of smart quotes are inconsistent. [Update (2024-09-21): It’s a parody that gets increasingly ridiculous.]

Norbert Doerner:

Our experiences with macOS 15 so far are not very good. Networking is flaky, many apps crash a lot, Apples developer tools (Xcode 16) are still highly unstable.

Alex Kleber:

MacOS 15 total fail in networking. VPNs not working anymore or something they disconnect without any reason, VMs are not working anymore using Shared Networking (@UTMapp). Sometimes DHCP is simply refusing to provide IP

Matthias Gansrigler:

My M1 MacBook Pro - logged out and sleeping - drained its battery completely over night, not connected to any other devices. Sequoia bug?

Tim Hardwick:

In this article, we’ve selected 50 new features and lesser-known changes that are worth checking out if you’re upgrading.

See also: John Voorhees’s review and the comments at Mac Power Users Talk.

Previously:

Update (2024-09-20): Matt Ronge:

I’m so sick of Apple treating us like children. Look at this nonsense that pops when you launch one of our apps on MacOS Sequoia.

Macs are power tools, let us use them as such!

Der Teilweise:

Would you mind to tell me what updated? Including a file path?

I did not update anything, who did it? What did you update … “Apple Inc.”?!? Even if this is legitimate, it’s not like that’s a single product company.

William Gallagher:

Now if users turn on the option in the Mac App Store, larger apps will automatically download to a nominated location instead of straight into the regular Applications folder. Specifically, if an app is larger than 1GB, it will download to that external drive.

Update (2024-09-23): Gabriel Zachmann:

I have received reports that my screensaver is not working under macOS 15. In particular, it seems like it can't access its settings, using ScreenSaverDefaults[…]

Steve Mills:

You should definitely submit a bug to Apple. You can reference FB13444225, which is my report of the bug that causes ScreenSaverViews to not be removed after the screensaver stops, and they keep running after the screensaver starts up again, so they keep multiplying.

Tsinoy Newbie:

After updating to Sequoia my file downloading process in safari is broken.

it will initiate the process but it will not download any further. When you click on open finder message will say cannot move file

Matthias Gansrigler also doesn’t understand how the keyboard shortcut restrictions really protect users:

That’s sadly something that’s becoming more and more routine at Apple: punish developers that adhere to the sandbox and Mac App Store rules, for no good reason.

[…]

Apple’s own software is exempt from this restriction, as you can see in this screenshot of System Settings > Keyboard > Keyboard Shortcuts, where I could set it up just fine. Why this matters? Consistency. Users expect that if it works in Apple’s software, it should also work in other apps they use.

Update (2024-09-25): Panic:

Nova users, if you’re getting “This file cannot be opened” errors after updating to macOS Sequoia, please reboot your Mac. There is an issue with the update process to macOS Sequoia which prevents Nova from generating file bookmarks until after a reboot.

Steve Troughton-Smith:

Really don’t like the change in Messages on Sequoia/iOS 18 to turn links in the text field into previews and masking their URLs, leaving all the tracking identifiers and YouTube timecodes. On macOS you get a menu item to turn it back into text, but then the receiver doesn’t get a link preview either.

Marcin Krzyzanowski:

macOS 15 upgrade managed to delete my local Photos library. Since I don't have iCloud Photos enabled on that mac, all local photos are gone now. well.

John Gordon:

Photos now allows one to go from a specific photo to that photo as seen in an album, which also shows what albums it’s in.

This is something I’ve wanted for years.

macOS 14.7 and macOS 13.7

Apple (release notes, full installer):

This document describes the security content of macOS Sonoma 14.7.

Apple (release notes, full installer):

This document describes the security content of macOS Ventura 13.7.

Previously:

Update (2024-09-23): David C. Shamino:

I installed the macOS 14.7 update this morning and now I’m quite nervous.

When I logged back in after the upgrade, I got a dialog that says the system was not shut down properly, then asking me if I want to restore the apps that were running prior to shutdown or not. And a few minutes later, it kernel panicked.

David C. Shamino:

Well, it appears that my kernel panics aren’t done. Even though I seemed to have successfully rolled back my system to 14.6.1, and I am no longer getting a kernel panic within a few minutes after a reboot, I just suffered another panic today (5-6 days later).

[…]

BridgeOS is the firmware running in the T2 chip. I think rolling back to 14.6.1 did not roll-back the BridgeOS firmware.

iPadOS 18

Apple (feature list, release notes, security, enterprise, developer):

iPadOS 18 makes the iPad experience more versatile and intelligent than ever, and is available today as a free software update. iPadOS 18 brings incredible new features designed for the unique capabilities of iPad, making it even easier for users to get tasks done. With iPadOS 18, Calculator comes to iPad with Math Notes, along with new Smart Script handwriting tools in Notes — all designed for Apple Pencil. Additionally, iPad users now have more ways to customize the Home Screen and Control Center, and users receive the biggest redesign of the Photos app ever, new ways to express themselves in Messages, and so much more.

See also:

Previously:

Update (2024-09-19): My update failed with the iPad stuck at the progress bar on the black screen. I had to force-restart the iPad. Then the update completed, but Universal Clipboard no longer works.

iOS 18

Apple (feature list, release notes, security, enterprise, developer):

iOS 18 is now available, bringing iPhone users around the world new ways to personalize their iPhone with deeper customization to the Home Screen and Control Center; the biggest-ever redesign to Photos, making it even easier to find and relive special moments; and major enhancements to Messages and Mail. Starting next month, iOS 18 will introduce Apple Intelligence, the personal intelligence system that combines the power of generative models with personal context to deliver intelligence that is incredibly useful and relevant while protecting users’ privacy and security.

I’m waiting to upgrade until I figure out what to do with Overcast.

See also:

Previously:

Update (2024-09-17): Bruno Rocha:

Apple silently broke the Screen Time APIs again in iOS 18… This time they not only silently removed the ability to override activities, they didn’t even bother updating the documentation, which still says you can do it.

Kevin Purdy:

iOS 18 makes these RCS upgrades possible, but certainly not guaranteed, at least as of today. Lots of people have already been enjoying cross-platform RCS messaging when texting with iOS 18 beta users. And iPhones on the big carriers' plans can now trade RCS with Android users. But some iPhone users, particularly on mobile virtual network operators (MVNOs)—typically pre-paid services that do not own network hardware but resell major carrier access—do not have an RCS option available to them yet.

[…]

Reading between the lines, you might conclude that Google is waiting on Apple to enable RCS on a network-by-network basis, both for Fi and for Android users at large. And a Google spokesperson would suggest that is correct.

Louie Mantia, Jr.:

Just to be clear, Google adopted RCS inside Google Messages in 2019. But perhaps more importantly, it was only made on-by-default in 2023. That’s right, just last year.

Eric Schwarz:

Nonetheless, I’m glad RCS is on iOS because it fixes a lot of messaging issues without resorting to a third-party app (at least in the United States) and the layperson doesn’t have to even care about which tech giant was actually the problem before.

Update (2024-09-20): FB13825638 (via Hacker News):

Mail no longer accepts a self-signed certificate from my mail server (AGAIN)

Update (2024-09-23): Samuel Axon:

Let’s start with Control Center, then dive into iCloud, Files, external drives, and hidden and locked apps.

William Gallagher:

In what appears to be an iOS 18 bug, users of iPhones including the iPhone 16 Pro are reporting touches and taps not being recognized.

tgptgp:

Running old overcast on the iOS 18.1 beta. Works just fine. Worked just fine in iOS 18 too.

Update (2024-09-25): Tim Hardwick:

Some users of iPhones running iOS 18 are reporting intermittent touchscreen responsiveness issues, with some devices seemingly ignoring taps and swipes.

Zac Hall:

There’s an unfortunate bug in Apple’s latest software update that you should know about. The bug occurs in the Messages app on iOS 18. For now, the fix could require data loss. However, you can avoid potential data loss before a fix is in place if you know how to avoid it.

Eric deRuiter:

There seems to be an iOS 18 bug or limitation when adding a mail account with a large number of messages to Apple Mail app. I have experienced this with 2 @fastmail accounts on an iPhone 13 with iOS 18.0.

Update (2024-09-30): Josh Avant:

In iOS 18 I’ve noticed:

  • Watch.app UI indicating that it’s attempting to connect to the Watch
  • Photos.app UI indicating the current status of iCloud syncing

Maybe the era of not knowing what’s going on in the background is (finally) over?

watchOS 11

Apple (release notes, security, developer):

Apple today released watchOS 11, bringing powerful health and fitness insights, along with even more personalization, intelligence, and ways to stay connected, to the world’s most popular watch.

Apple Watch now offers a feature to help identify signs of sleep apnea, and the new Vitals app allows users to quickly check in on key health metrics at a glance and gain better context on their health. The ability to measure training load helps users make more informed decisions when working out for improved fitness and performance, and Activity rings are even more customizable. Apple Watch and the Health app on iPhone and iPad also provide additional support for users who are pregnant.

The Smart Stack and Photos face use intelligence to offer a more individualized experience, and Check In, the Translate app, and new capabilities for the double tap gesture come to Apple Watch for more convenience and ways to stay connected.

See also: Juli Clover.

Previously:

Update (2024-09-18): See also: Jonathan Reed.

Update (2024-09-25): See also: Tim Hardwick and Victoria Song.

tvOS 18

Apple (no release notes, security, developer):

Today, tvOS 18 introduces intelligent features like InSight, which displays timely information about actors, characters, and music from every live-action Apple TV+ movie and show onscreen in real time. Enhance Dialogue also gets smarter with tvOS 18, leveraging machine learning and computational audio to deliver greater vocal clarity. Subtitles now automatically appear at just the right moments, including when users mute, when they skip back while watching, or when the language in a show or movie does not match the device language. Additionally, tvOS 18 brings stunning new screen savers, like Portraits, to Apple TV 4K.

See also: Juli Clover.

Previously:

audioOS 18

Juli Clover:

The HomePod Software 18 adds the option to choose a Home Hub rather than having HomeKit select one automatically, a useful feature for people with multiple HomePods and Apple TV models.

There is a new SharePlay feature, allowing multiple people to share control of what’s playing on a HomePod through Apple Music. To use the feature, bring an iPhone close to another iPhone to add songs to a playlist and control playback.

AirPlay now supports Spatial Audio, providing an immersive audio experience with Dolby Atmos when using AirPlay to stream audio from an iPhone or iPad to the HomePod.

Siri control seems to be completely broken. As before, it claims to be unable to find a large number of my albums previously purchased from iTunes. After updating to audioOS 18, it said that the first five in a row that I tried were not available. Then I tried two more recent purchases, which had worked with audioOS 17, and it confirmed that it was going to play the album I had requested but actually played a completely different album.

Previously:

visionOS 2

Apple (release notes, security, enterprise, developer):

visionOS 2 is available today, bringing new spatial computing experiences to Apple Vision Pro users around the world. Existing photos can now be turned into spatial photos with remarkable depth and dimension, intuitive new hand gestures make navigating Vision Pro even faster and easier, and powerful enhancements to key visionOS apps and experiences take spatial computing to the next level.

See also: Juli Clover.

Previously:

Update (2024-09-19): See also: Wes Davis and Devon Dundee.

Friday, September 13, 2024

Alternative Distribution for iPad Apps in EU

Apple (MacRumors):

Starting September 16:

  • Users in the EU can download iPadOS apps on the App Store and through alternative distribution. As mentioned in May, if you have entered into the Alternative Terms Addendum for Apps in the EU, iPadOS first annual installs will begin to accrue and the lower App Store commission rate will apply.
  • Alternative browser engines can be used in iPadOS apps.

Federico Viticci:

A real clipboard manager on my iPad, let’s go 🚀

Previously:

Inferring Typing From Sounds and Eyes

Mark Stockley:

The technique, developed at Durham University, the University of Surrey, and Royal Holloway University of London, builds on previous work to produce a more accurate way to guess your password by listening to the sound of you typing it on your keyboard.

The slight differences in the sounds each key makes is an unintentional leak of information, known as a “side channel”.

Michael Nolan (paper):

While the technique presented in this paper relies on contemporary machine-learning techniques, such attacks date back at least to the 1950s, when British intelligence services surreptitiously recorded mechanical encryption devices employed by the Egyptian government.

Matt Burgess (Hacker News):

Today, a group of six computer scientists are revealing a new attack against Apple’s Vision Pro mixed reality headset where exposed eye-tracking data allowed them to decipher what people entered on the device’s virtual keyboard. The attack, dubbed GAZEploit and shared exclusively with WIRED, allowed the researchers to successfully reconstruct passwords, PINs, and messages people typed with their eyes.

[…]

To be clear, the researchers did not gain access to Apple’s headset to see what they were viewing. Instead, they worked out what people were typing by remotely analyzing the eye movements of a virtual avatar [EyeSight] created by the Vision Pro.

Joe Rossignol:

The proof-of-concept attack was not exploited in the wild, according to the report. Nonetheless, Vision Pro users should immediately update the headset to visionOS 1.3 or later to ensure they are protected, now that the findings have been shared publicly.

Previously:

Canceling the Unity Runtime Fee

Matt Bromberg (via Tim Sweeney, Hacker News):

We want to deliver value at a fair price in the right way so that you will continue to feel comfortable building your business over the long term with Unity as your partner. And we’re confident that if we’re good partners and deliver great software and services, we’ve barely scratched the surface of what we can do together.

So we’re reverting to our existing seat-based subscription model for all gaming customers, including those who adopt Unity 6, the most performant and stable version of Unity yet, later this year.

[…]

Unity Personal will remain free, and we’ll be doubling the current revenue and funding ceiling from $100,000 to $200,000 USD. This means more of you can use Unity at no cost.

[…]

Unity Pro: An 8% subscription price increase to $2,200 USD annually per seat will apply to Unity Pro.

[…]

A 25% subscription price increase will apply to Unity Enterprise. Unity Enterprise will be required for customers with more than $25 million USD of total annual revenue and funding.

Rui Carmo:

I mostly liked Unity and might go back to fiddling with it if I ever find the time, but to be honest Godot is a much better fit for my kids’ projects and I love the way it’s such a small, nimble engine that you can download and run on just about anything.

But I just have to thank them for having effectively bolted a jetpack onto the Godot community, because it’s been a wild ride and I’ve learned a lot playing with it over the past year.

Also, they apparently went to the trouble of removing/redirected the former announcement–but the Internet never forgets[…]

Previously:

StopTheMadness Pro 9

Jeff Johnson:

This new feature allows you to run your own custom scripts at any time on any web page. Your scripts can be triggered from the StopTheMadness Pro extension popup window, from a keyboard shortcut, and in macOS Safari from the contextual menu. JavaScript snippets are intended as an alternative to bookmarklets, which have several downsides such as the necessity to URL-encode your JavaScript.

[…]

The JavaScript snippets feature is not available in Google Chrome or Chromium web browsers, unfortunately, due to limitations of Chrome extension manifest version 3. JavaScript snippets are supported in Safari on both macOS and iOS, as well as in Firefox.

It’s a kind of an OSA Menu/FastScripts for Web pages. There’s more information about how it works here.

Jeff Johnson:

It’s frustrating when people ask me to enable StopTheMadness support for Safari web apps. The problem is Apple, not me! Apple chose to support content blockers and web extensions but not app extensions in Safari web apps. But it’s difficult to explain the technical difference to users.

David Johnson:

Web Apps on macOS Sequoia and Sonoma support Safari Web Extensions and Content Blockers when you have Safari 18 installed. We hear the request for extensions in more places on iOS.

Previously:

Thursday, September 12, 2024

Xcode 16

Apple:

Xcode 16 RC includes SDKs for iOS 18, iPadOS 18, tvOS 18, watchOS 11, macOS Sequoia 15, and visionOS 2. The Xcode 16 RC release supports on-device debugging in iOS 12 and later, tvOS 12 and later, watchOS 4 and later, and visionOS. Xcode 16 RC requires a Mac running macOS Sonoma 14.5 or later.

It seems like this will be the second year in a row that the new Xcode ships with a showstopper bug where Mac apps targeting an older OS version crash at launch.

JD Gadina:

FB14667312 - Invalid Binaries for macOS Apps Using QuickLook in Xcode 16 Beta

Florian Heidenreich:

It’s still not fixed with the Xcode 16 RC — so every macOS developer who uses QuickLook and targets macOS 11 and earlier will have to stick to Xcode 15.4 for the foreseable future.

Peter N Lewis:

Apple’s whole “we are going to change the behaviour of functions you use based on the SDK you link against” combined with “you have to use the new Xcode/SDK if you use a new macOS” is really infuriating.

Often, they wait until you link to a new SDK before changing behavior, but that is not the case with path extension change in Sequoia, nor for this change with creating Decimal numbers:

We narrowed down the issue to a change to the initializer for Decimal: Decimal(sign:exponent:significand). Prior to Beta 5, the sign passed into the initializer would be the sign of the Decimal. Passing .plus would result in a positive decimal, and passing .minus would result in a negative Decimal. This is regardless of the sign of the significant. In Beta 5, it seems that the sign passed into the init, and the sign of the significand are now negated. This means that passing .minus for sign and a negative Decimal for significand results in an unexpectedly positive Decimal value in Beta 5 alone. This behavior does not seem to be explicitly documented.

Arnaud:

Ah, I see the “nah let’s not care about which SDK the app was compiled with” SwiftUI philosophy is leaking

Previously:

Update (2024-09-17): Xcode 16 was released yesterday, but I do not see anything in the release notes about fixing the invalid binaries problem. As Xcode 15.4 doesn’t run on Sequoia, this means I need to stay with Sonoma.

Update (2024-09-19): softmaus:

FB14667312 is now at least mentioned [as a known issue] in the Release Notes – not in Xcode‘s though, but in macOS Sequoia 15.1 Beta 4’s.

yonato:

withCheckedContinuation crashes when compiling on XCode 16 and running on Sonoma (My Mac Designed for iPad)

Christian Beer:

It seems Xcode 16 broke Storyboard-References 🤯 Works with Xcode 15 but crashes when built with Xcode 16 because it doesn’t take the bundle but tries in main bundle 😩

Age Verification and the App Store

Jeff Horwitz and Aaron Tilley:

Driven by the alleged risks of social media to teen mental health—as well as examples of social-media apps being used to sell drugs to minors and recruit child sex-abuse victims—a wave of states have proposed or passed legislation to regulate platforms. The proposals restrict their ability to collect data on minors, serve them algorithmically targeted content or allow them to establish accounts without parental approval.

Before Carver’s bill in Louisiana, Apple had largely managed to stay out of the fray, but that is expected to change as lawmakers nationwide seek to confront the issue. Social-media platforms and many youth-safety advocates argue that effective content restrictions will require some form of age verification from Apple and Google, the duopoly that oversees operating-system software for the world’s billions of smartphones.

“Age verifying app by app is a case of whack-a-mole,” said Chris McKenna, founder of advocacy group Protect Young Eyes, who also advises Apple on digital-safety issues for children. “Every device knows the age of its user. We give our devices an enormous amount of our identity.”

An Apple spokesman said that websites and social-media companies are best positioned to verify a user’s age and that user privacy expectations would be violated if the company was required to share the age of its users with third-party apps.

I get that Apple doesn’t want to be responsible for age verification, but it’s really a stretch to say that this is better for privacy. With payment processing, Apple is all about protecting customers by only giving the App Store their billing information. It’s too dangerous to give a random Web site your credit card number, we’re told. But when we’re talking about much more sensitive information, like proof of identity, we’re supposed to believe the opposite. You should upload your driver’s license to each individual service because Apple collecting the information once and then sharing a Boolean would violate your privacy.

Ryan Christoffel:

Despite Apple’s opposition, however, the bill actually passed on the house floor. It was unanimous.

However, before the legislation could be voted on by the Senate, a key committee had to put it up for a vote. That committee is where Apple prevailed. Though no one on the committee would comment to the WSJ, it ultimately had its mention of app stores as responsible parties removed.

Ariel Zilber:

According to Carver, Apple lobbyists inundated him with messages “all day, every day.”

[…]

Louisiana was the first state to pass a law requiring age verification with IDs for sites that host adult content. Other states followed suit in approving similar statutes.

In May, The Post was the first to report that Google and Meta spent nearly $1 million on lobbyists who were hired to fight proposed legislation in New York that was aimed at protecting children online.

Previously:

Update (2024-09-17): It seems that Apple already has an API for age verification, but it only works with certain US states and only apps in certain categories can request the entitlement.

CodeEdit 0.3.1

Rui Carmo:

CodeEdit is a fully native macOS editor heavily inspired by Xcode UX conventions that is very interesting to me as an alternative to Visual Studio Code on the Mac.

Austin Condiff:

It might sound crazy, but we are determined to build an editor native to macOS written in Swift, by the community, for the community. Completely open source and free forever.

CodeEdit:

CodeEdit is a code editor built by the community, for the community, written entirely and unapologetically for macOS. Features include syntax highlighting, code completion, project find and replace, snippets, terminal, task running, debugging, git integration, code review, extensions, and more.

It sounds and looks very promising, but I couldn’t get it to work like in the screenshots. All I was able to do was open individual files and see them with syntax highlighting. Is there some trick to being able to create a workspace to access the multi-pane interface or use find/replace?

Previously:

Swift Build Times and Module Verification

Paulo Andrade:

Secrets’ build time must have gotten slower and slower without me really noticing it… until Xcode’s 16 betas, where I felt I really needed to understand what was going on.

[…]

The compiler is clearly spending most of the 3.5 minutes it took to build Secrets on verifying modules[…] This all sounds good and dandy, especially if you’re distributing a framework, but I clearly don’t want to be doing this in Secrets on every build!

[…]

This tweak brought down the build time from 3.5 minutes to 52 seconds 😮!

Previously:

Wednesday, September 11, 2024

iOS 18 AirPods Pro 2 Firmware

Juli Clover:

With head gestures, users can control Siri on the AirPods Pro with a shake or a nod of the head. If you get a phone call, for example, you can shake your head no if you don't want to answer it, or nod to accept the call. Siri interactions can be used for responding to incoming messages, calls, and notifications.

Apple is adding Voice Isolation to the AirPods Pro to cut down on loud background sounds to make you easier to hear, and there is a new Personalized Spatial Audio feature specific to gaming.

Previously:

Group Container Names in Sequoia

John Brayton:

On both macOS and iOS, sandboxed apps use group container folders to share data between the main app and extensions, such as the Subscribe in Unread share extension and Unread’s widgets.

[…]

On beta releases of Sequoia (macOS 15) using the “group.” prefix results in the customer getting an alert with this text at every launch:

“Unread.app” would like to access data from other apps.

Keeping app data separate makes it easier to manage your privacy and security.

I fixed this by changing the group container identifier.

Martin Höller:

I don’t like [how] Sequoia restricts how shared group containers can be named. So far I used “group.com.bluebanana-software.iyf”, which leads to a permission dialog each time the app is started. Now it needs to be “<TeamID>. com.bluebanana-software.iyf”.

To migrate to the new container, the user needs to actively give permission to access the old file as now it is outside of the app’s sandbox.

Adam Overholtzer:

Thankfully it only seems to impact “native” Mac apps built for Sequoia. Existing apps and Catalyst apps (mine anyway, knock on wood) don’t seem to show the popup.

Previously:

Update (2024-09-12): Pedro José Pereira Vieito:

Mac Catalyst apps can use the group.* Group Container identifiers because Apple does add that identifier to their provisioning profile (like with iOS apps). Mac App Store apps can also use them as they are signed by Apple.

Unfortunately, Apple is not currently adding the App Groups entitlement to the provisioning profiles of native Mac apps, so you will get the permission prompt when developing an app or when distributing it outside the App Store.

Previously:

Apple Loses Ireland Tax Case

Arjun Kharpal (ruling, Hacker News):

Europe’s top court ruled against Apple on Tuesday in the tech giant’s 10-year court battle over its tax affairs in Ireland. The case stems back to 2016 when the European Commission ordered Ireland to recover up to 13 billion euros ($14.4 billion) in back taxes from Apple.

[…]

Apple said in a filing on Tuesday that it will incur a one-time income tax charge of about $10 billion in its fourth fiscal quarter ending Sept. 28, 2024.

Charlotte Edwards and Theo Leggett (via John Gruber):

The original decision covered the period from 1991 to 2014, and related to the way in which profits generated by two Apple subsidiaries based in Ireland were treated for tax purposes.

Those tax arrangements were deemed to be illegal because other companies were not able to obtain the same advantages.

[…]

Apple said in a statement: "This case has never been about how much tax we pay, but which government we are required to pay it to. We always pay all the taxes we owe wherever we operate and there has never been a special deal.

I think first part is misleading because if Apple had been paying a different government it would have been paying more in taxes. That was the entire reason behind setting up the tax shelter. However, as I’ve written before, I think it is accurate to say that Apple didn’t get a special deal. Other companies could have done the same thing, if they had the resources and motivation to set up such a tax avoidance scheme.

The Irish government has argued that Apple should not have to repay the back taxes, deeming that its loss was worth it to make the country an attractive home for large companies.

[…]

Although corporation tax rates for businesses are set nationally, and are not subject to the EU’s jurisdiction, the trade bloc does have extensive powers to regulate state aid and in this case, it argued that by applying very low tax rates to Apple, Ireland was granting it an unfair subsidy.

Steve Troughton-Smith:

Ireland ‘didn’t want the money’ because the government thought it might risk future Apple investment in the country (Apple was, at the time, planning a huge new datacenter here. Apple later scrapped those plans because protests lead to delays)

The Irish taxpayers sure as hell want the money.

Rui Carmo:

Yes, it’s a bucketload of money. No, it’s not to be “paid”, its been in escrow all this time. And yes, it accumulated due to Ireland’s very deliberate setup as a tax haven for tech companies, which brought them a lot of investment that would otherwise not have been done in the EU.

Old Unix Geek:

Ireland is actually harming the rest of the EU with its actions, since requiring Apple to pay similar taxes to everyone else might have helped EU competitors to the large US tech firms survive.

And it disadvantaged other European countries, which is why the EU said that it went against Ireland’s agreement in joining the Common Market.

Previously:

Update (2024-09-11): ensignavenger:

I read through the first part of the ruling to get a better idea of what happened. Apparently, Apple wrote to the Irish tax authorities, and said “this is how we plan to calculate our taxes” and the Irish tax authority said “okay, no problem, that works for us” and the EU commission investigated some years later, and said “wait, was that method of calculating taxes available to all Irish companies?

noirbot:

[It] feels odd that Ireland has now essentially gotten all the benefits of offering this illegal deal by having Apple do business there and now also gets all the back taxes that Apple probably wouldn’t have paid to Ireland if they hadn’t gotten the deal.

Update (2024-09-19): Timothy Taylor (via Hacker News):

I wrote a decade ago about the Double Irish Dutch Sandwich, a strategy for corporations to evade taxes that was widespread and large-scale enough to come to the attention of the International Monetary Fund.

[…]

However, a combination of Irish tax reforms in 2015 and changes in the US Tax Cuts and Jobs Act of 2017 made this strategy ineffective: “Consequently, Irish companies began paying royalties directly to American parent companies instead of routing them through tax havens.”

No Alternative Payments in Louisiana

Ariel Zilber (via Hacker News):

Apple successfully killed proposed legislation in Louisiana that would have required the iPhone maker to allow developers who market their apps on the app store to use an alternative payment system by threatening to cancel the making of a Will Smith film in the state, according to a report.

In 2021, lawmakers in the Bayou State were keen on approving a bill that would have allowed developers of apps to use alternative payments systems which would have circumvented Apple’s app store.

[…]

“He basically said that if we didn’t kill the bill, he’d kill the movie and hurt our economy,” Magee told the Journal.

Perhaps Apple TV+ is more strategic than I thought. It’s expensive to run, but it’s dual-use in that it produces salable content and can also be used for lobbying.

Previously:

Tuesday, September 10, 2024

Apple Denies Evidence of Hiding Browser Choice Setting

Hartley Charlton:

Apple faces allegations of misleading the UK's Competition and Markets Authority (CMA) over a user interface issue in iOS related to changing the default browser, Open Web Advocacy reports.

[…]

Now, in a formal response to the CMA, Apple has denied that this issue ever existed.

[…]

Apple has not provided an explanation for how its claim in the August response aligns with these findings, leaving open the question of whether the company's internal processes failed to verify the accuracy of its statements or whether it is actively attempting to minimize the situation.

Open Web Advocacy:

The only realistic interpretation is that statements made by the CMA and OWA on this topic are “not correct” or false. That is, at the time either OWA or the CMA’s statements were written, Apple was not employing a deceptive pattern to hide the option to switch default browser if Safari was the default. This is certainly a bold claim given this was independently verified by us, ArsTechnica and the CMA. This verification included screenshots, documents and a video of the whole process. Apple presumably also retains copies of the original code that implement this “functionality” and can easily replicate the issue.

Why didn’t Apple just say that it was a bug and that they fixed it?

Previously:

EU iOS Envy

Allison Johnson:

Whining about stuff is a treasured American pastime, so allow me to indulge: the iPhone is more fun in Europe now, and it’s not fair.

They’re getting all kinds of stuff because they have cool regulators, not, like, regular regulators. Third-party app stores, the ability for browsers to run their own engines, Fortnite, and now the ability to replace lots of default apps? I want it, too! Imagine if Chrome on iOS wasn’t just a rinky dink little Safari emulator! Imagine downloading a new dialer app with a soundboard of fart sounds and setting it as your default! Unfortunately, Apple doesn’t seem interested in sharing these possibilities with everyone.

Federico Viticci:

As I wrote on Threads (much to the disbelief of some commentators), I personally feel like the “DMA fork” of iOS is the version of iOS I’ve wanted for the past few years. It’s still iOS, with the tasteful design, vibrant app ecosystem, high-performance animations, and accessibility we’ve come to expect from Apple; at the same time, it’s a more flexible and fun version of iOS predicated upon the assumption that users deserve options to control more aspects of how their expensive pocket computers should work. Or, as I put it: some of the flexibility of Android, but on iOS, sounds like a dream to me.

[…]

I think that Apple is doing a pretty good job with their ongoing understanding of the DMA. It’s a process, and they’re doing the work. I don’t find the installation of third-party marketplaces as horrible as others have painted it, and I’m excited about the idea of more default apps coming to iOS. Whether you like it or not, this is the world we live in now. A law was passed, and iPhones (and iPads soon) must be made more versatile. As a result, iPhones are more fun for people like me (a clipboard manager! Fortnite!), while very little has changed for those don’t care about new options.

Federico Viticci:

We can finally use our phones like actual computers with more default apps and apps from external sources.

Jason Snell:

One of Apple’s greatest fears has come to pass: fragmentation has come for the iPhone and iPad. By the end of the year, users in part of the world will be able to harness the power of Apple Intelligence for various tasks–while users in the European Union will be able to set default apps, delete stock Apple apps, buy from alternative App Stores, play Fortnite, use a clipboard manager, and more.

[…]

It strikes me that Apple has tried to make residents of the European Union envious of other regions by withholding Apple Intelligence, at least at first. There are legal reasons to do so, of course, but it’s also a lesson to Europeans that if they support such a strict regulatory regime, they’re going to be left on the side of the road while the rest of the world enjoys the bounty of AI features inside iOS. (Whether that bounty actually exists is beside the point.)

Yet, when I consider everything being experimented with in the EU, I start to wonder if the envy is actually going to flow in the other direction.

John Voorhees (Mastodon):

At first, the differences between my iOS and Federico’s didn’t seem like that big of a deal. Sure, it was easier for him to access AltStore, but it’s available outside the EU if you jump through some extra hoops. However, over time, the differences have multiplied. I’ve also had the chance to try Apple Intelligence in 18.1, and although there’s more to come from Apple on the AI front, which could change my calculus, from where things stand today, I’d gladly trade iOS 18.1 for the EU’s 18.0.

Sebastiaan de With:

I’m feeling pretty strongly that with the EU / US ‘forking’ of iOS thanks to the DMA, the only people who really being helped here are other tech giants and not users and small developers like us.

John Gruber:

Imagine if Chrome could deplete your iPhone battery as fast as it does your MacBook battery. Imagine if you were one of the millions (zillions?) of people whose “incognito mode” browsing history was observed and stored by Google and deleted only after they lost a lawsuit. Imagine — and this takes a lot of imagination — if Google actually shipped a version of Chrome for iOS, only for the EU, that used its own battery-eating rendering engine instead of using the energy-efficient system version of WebKit.

It would be great to have that as an option. I’m having so many problems with Safari for Mac: sites that don’t work properly, or that stall and stop updating, or that forget that I just logged in; the app beachballing for 30 seconds at a time, the whole browser getting wedged and not loading any pages until I restart it. After 20 years of using Safari, I find myself using Chrome more and more, and it seems faster and much more reliable. (Surprisingly, it even offers more search engine choices than Safari.) I don’t like this. Chrome is still not as good of a Mac app, and I want it to have solid competition. But Apple has dropped the ball, and Chrome “just works.” (Except that Apple prevents it from auto-filling SMS codes.) I only worry that these benefits wouldn’t be realized on iOS because Google wouldn’t be allowed to use its superior process architecture.

Eric Schwarz:

I like Safari, but if someone really likes Chrome, they should be able to use real Chrome on their iPhone. If it ends up being a resource hog, Apple can build tattle-tale resources in the operating system to educate the user. Likewise, I also would really prefer the ability to use my own storage for cloud-based device backups and photo storage—I could cut back on iCloud just for sync and the suite of non-storage features.

John Gruber:

On the rest-of-the-world side we have the imminent release of iPhone Mirroring and Apple Intelligence. I don’t play Fortnite, and even if I did, I wouldn’t on my phone, but I find the latter far more interesting — and fun — than the former.

I’m far more interested in a real clipboard manager than in Fortnite.

See also: Sebastiaan de With, though note that Apple Intelligence will not be in the initial world release, either, and Visual Intelligence and Genmoji aren’t coming until December or 2025 for non-English-speaking countries outside of the EU. Also, many people have older phones that can’t run Apple Intelligence. Apple and the EU may well work this out before they upgrade.

Previously:

Update (2024-09-12): MarkV:

Worth noting that every major service that Apple ever launched has come to the EU member states with a 1-3 year delay, if ever.

I’m talking about everything from the iTunes Music Store, iBooks, MobileMe, iCloud, Siri, Apple Maps (+ FlyOver, traffic data, bike lanes), Apple Pay, Apple TV+, Apple Watch cellular, Fitness+, Apple News, Apple Card, eSIMs, Satellite SOS, …

For Apple to pretend like AI being delayed is a DMA issue rather than regular business as usual is hilarious & sad.

Stefanus Secundus:

Also, using Apple services in non-English or mixed languages has always been a second-class experience—whether it’s waiting for new Siri voices or the latest transformer-based autocorrect improvements.

Apple’s DMA Compliance, Summer 2024

Damien Geradin:

Apple took everyone by surprise by announcing on 25 January 2024 how it intended to implement the app store-related provisions of the DMA in advance of the 7 March 2024 deadline. However, it became immediately clear to app developers that Apple’s implementation failed to comply with the DMA. This led Apple to make some limited changes to its terms in rapid succession to then bring more significant changes on 8 August 2024. The purpose of this blog post is to explain (in summary form, as many of these issues are complex and would deserve the sort of granular analysis that would not fit within a blog post) the reasons why Apple’s new terms still fail to comply with the DMA.

[…]

Apple’s August 2024 terms still fail to comply with the DMA. As explained below, they represent minimal progress on all key issues. In some cases, they still violate the letter of some DMA provisions. In other instances, they make it very hard, and in some cases impossible for app developers and their users to take advantage of the benefits of the DMA through a combination of unattractive fees and friction, amounting to circumvention.

[…]

Some of the requirements imposed on app developers who want to make their apps available for direct downloading are problematic: (i) it is not clear why direct downloading is only permitted from the app developer’s website and not, for instance, from a web app store as is the case in the PC space (web app stores may be an efficient means for app developers to distribute their apps and for users to find the apps that may cater to their needs.); (ii) in order for an app developer to be allowed to make its apps available for direct downloading, it has to be “a member in good standing of the Apple Developer Program for two (2) continuous years or more, and have an Application that had more than one (1) million First Annual Installs on iOS and/or iPadOS in the EU in the prior calendar year.” There is no justification for such onerous requirements, which will strictly limit the number of apps that may be eligible for direct downloading; and (iii) for the same reasons as those mentioned in the context of alternative marketplaces, the payment of the CTF to Apple is problematic.

Previously:

What to Do With Unwanted Political Spam Texts

John Gruber (Mastodon):

For several months this year — while receiving, I’d say, around half a dozen such messages per day, every day, every week — I tried using Messages’s “Delete and Report Junk” feature. As far as I can tell it didn’t do a damn thing. Now that I see Apple’s own documentation, I can see why. Using this feature doesn’t even block the sender from sending more messages.

About a month ago I switched tactics and started responding to all such messages with “STOP”. I usually send it in all caps, just like that, because I’m so annoyed. I resisted doing this until a month ago thinking that sending any reply at all to these messages, including the magic “STOP” keyword, would only serve to confirm to the sender that an actual person was looking at the messages sent to my phone number. But this has actually worked. Election season is heating up but I’m getting way way fewer political spam texts now. Your mileage may vary, but for me, the “STOP” response works.

It works in the sense that I don’t get any more from that number, but I do get more from other numbers about the same topic.

Jeff Gamet:

It’s crazy that I have to open a message, block the sender, then delete and report junk. The delete part often doesn’t show up so I have to report the junk message and then delete. This is multiple times a day. Such a great use of my time.

Update (2024-09-12): Tim Johnsen:

Should’ve done this ages ago #shortcuts #automation