Archive for February 22, 2021

Monday, February 22, 2021

Epic Counterclaims, Europe, and Valve

Florian Mueller (also: AppleInsider, ArsTechnica, Hacker News):

Epic Games just reduced the potential risk it incurs from its antitrust dispute with Apple over its App Store business terms: Judge Yvonne Gonzalez Rogers of the United States District Court for the Northern District of California granted an Epic motion for judgment on the pleadings on some of Apple’s counterclaims. As a result, Apple’s counterclaims (unless an appeals court revives the ones the judge just threw out) are limited to breach of contract, which Epic already acknowledged in October it would be liable for should it lose its antitrust case against Apple.

Tim Hardwick (also: Florian Mueller, Reuters, Hacker News):

Epic Games has filed an antitrust complaint against Apple in the European Union, broadening its legal battle against the tech giant by attempting to appeal to the EU’s differing interpretation of antitrust issues compared to those in the United States (via The Wall Street Journal).


Europe uses different standards than the U.S. when it comes to antitrust issues, focusing more on fairness between competitors than their impact on consumers, which the U.S tends to focus on. Epic has also filed similar lawsuits in Australia and the U.K., accusing Apple of an abuse of dominance.

Juli Clover:

Epic Games will not be able to expand its ongoing Fortnite fight with Apple in the UK after a judge said the case could not continue in London, reports Bloomberg.


The judge ruled that Epic Games’ case against Apple Inc. was better decided in the United States, but Epic Games is allowed to sue Apple (UK) Limited, a European arm of the company, and Google.

Hartley Charlton:

Apple has subpoenaed Valve in its ongoing lawsuit with Epic Games, demanding it provides huge amounts of commercial data about Steam sales and operations dating back several years, court filings have revealed (via PC Gamer).


Apple requested that Valve provided documents to show its total yearly sales of apps and in-app products, annual advertising revenues, annual sales of external products, and annual revenues and earnings from Steam. There are also more granular requests for the name of every app on Steam, the date range when every app has been available, and the price of all apps and in-app purchases.


The company also bristled at Apple’s request for Valve’s involvement in the case since Steam is not a competitor in the mobile space, saying “Valve is not Epic, and Fortnite is not available on Steam.” Valve goes as far as to allege that Apple is using the request as a shortcut to a vast amount of commercially-sensitive third-party data.

Wil Shipley:

Well, I guess now I’ll subpoena Apple and demand they release all their sales data for each app in the App Store.

Chris R. Donnelly:

The irony being they don’t retain that data for developers’ own sales on the App Store


Swift Proposal: ConcurrentValue and @concurrent Closures

SE-0302 (forum):

This proposal describes an approach to address one of the challenging problems in this space — how to type check value passing between structured concurrency constructs and actors messages. As such, this is a unifying theory that provides some of the underlying type system mechanics that make them both safe and work well together.


One safe way to transfer reference types is to make a deep copy of the data structures, ensuring that the source and destination concurrency domains each have their own copy of mutable state. This can be expensive for large structures, but is/was commonly used in some Objective-C frameworks. General consensus is that this should be explicit, not something implicit in the definition of a type.


This proposal introduces the concept of a “marker” protocol, which indicates that the protocol has some semantic property but is entirely a compile-time notion that does not have any impact at runtime.


The ConcurrentValue protocol models types that are allowed to be safely passed across concurrency domains by copying the value. This includes value-semantic types, references to immutable reference types, internally synchronized reference types, @concurrent closures, and potentially other future type system extensions for unique ownership etc.


Chromebooks Outsell Macs

Johanna Romero (via ChrisLTD):

Back in November, we reported on how in Q3 of 2020 Chrome OS growth was exploding across the globe. Now, the newest report by Strategy Analytics has shown that this impressive growth has continued throughout Q4, to the point that Chrome OS has overtaken MacOS’ #2 slot with 16.4% of the global Notebook PC market share.

Sami Fathi:

The data from IDC (via GeekWire) shows that Windows continues to dominate the market, although its share declined over the course of the year as Chrome OS surged past macOS into second place.

For the full year, the market share of Windows was down 4.9% in 2020 compared to 2019, while the Mac grew from 6.7% to 7.5%. IDC’s data includes collective information about desktops, laptops, and workstations, and doesn’t provide a breakdown of specific different product types.


A Retrospective Look at Mac OS X Snow Leopard

Riccardo Mori:

So, I used Snow Leopard on my 2009 MacBook Pro for about three years, and then again on a 2010 Mac mini that a friend gave me to maintain, as a sort of offsite backup. That Mac mini was kept on Mac OS X 10.6.8 for the whole four years it was in my custody (2011–2015) and it was switched off only twice during that period and maybe restarted four or five times in total. It enjoyed an insane uptime and it was a testament to Snow Leopard’s stability.

But back to my ‘gut-reply’, I wanted to be certain that my fond memories of Snow Leopard weren’t just nostalgia. While I am confident when I say that Snow Leopard is the most stable version of Mac OS, I wanted to make sure its user interface was really the good user interface and experience I was remembering.


Update (2021-03-02): See also: Hacker News.

Google vs. iOS App Privacy Labels

Eric Slivka (tweet):

Google today finally updated its YouTube iOS app for the first time in over two months, becoming one of the highest-profile Google apps to see an update since early December when Apple began requiring that developers disclose privacy practices for each of their apps in order to have their updates approved.


Google has denied that it is holding back iOS app updates in order to delay revealing its privacy practices, but many users have found that hard to believe considering the sudden slowing of app updates coinciding with Apple’s disclosure deadline and continued updates for Google’s various Android apps.

Earlier this week, the Gmail iOS app even began displaying “out of date” warnings when trying to add a new account, even though there is no new version of the app available and there have been no updates to the Gmail iOS app since December 1.

John Gruber:

A few hours and seems like Google has pushed a server-side change to suppress these warnings. But the apps themselves were not updated, and Google still hasn’t supplied privacy nutrition labels.

My utterly uninformed theory is that Google somehow didn’t understand the magnitude of what these iOS privacy changes entailed. It’s not just about a single device identifier used for targeted advertising.

Ryan Jones:

Google’s first privacy label. Let’s look at their strategy:

“We collect a shit ton of private data, but we link it to an Identifier and then only use that identifier to track you.”

Deviously brilliant.


Forces Apple’s hand brilliantly… you want to take down YouTube, when no one press has even noticed?


The real question:

How did Apple App Review approve this!?

Clearly it skirts the rules, which were written overly-generic to stop this exact strategy.

Ryan Jones:

I’ve annotated the exact rule.

Read the highlighted sentences. It’s expertly written by Apple to capture exactly what Google is attempted.


Intent matters, not execution. If you use an ID for the purpose of tracking 100 other things… you are “tracking 100 other things.”


I hope that helps clarify Google’s (and Facebook’s) privacy labels are most definitely breaking these rules.

Curtis Herbert:

I don’t think you get how privacy labels work.

They don’t have to say “track” for stuff used inside Google (which their ad network is). They only have to disclose track for stuff shared outside Google Inc.

They can build up a huge profile for someone and let third parties target that with ads, all while keeping the data internal (aka not “track”).

The key here is what Google shares, not what they ingest from third parties. They can grab all kinds of data from other companies, that doesn’t count for tracking (for Google, it counts for the other companies). It only counts if they share it.

Ryan Jones:

Here, read the highlighted parts as a sentence. Notice, sharing is not needed.


They don’t have to send it to anyone! If any data in the pool of data they use is from anywhere that’s not theirs - it’s tracking.

This is confusing, but I think Jones’ interpretation—that Google’s privacy nutrition label is breaking the rules—better matches the rules as written. (It’s possible but unlikely that Google has somehow segregated the data from the YouTube app so that it’s not linked with data obtained from SDKs in third-party apps or from Web sites running AdWords or Google Analytics.)

See also: this thread between Joe Cieplinski and me.


Update (2021-03-15): Juli Clover (tweet, The Verge):

Google today quietly added App Privacy labels to its Gmail app, marking the first of its major apps to receive the privacy details aside from YouTube.

Ryan Jones:

Gmail added the privacy nutrition label…and said ZERO data is “used to track you”.

LOL okay. Embarrassing for Apple.

Update (2021-03-23): Juli Clover (Hacker News):

There was speculation that Google’s delay meant that it had something to hide, which DuckDuckGo is leaning into with a new tweet that highlights Google’s data collection and calls out the company for “spying” on users.

Google recently added App Privacy labels to its Google Search app, spelling out the extent of information that’s collected. For third-party advertising purposes, Google collects data that includes location, search history, and browsing history. Google’s own marketing data includes all of the above information along with contact info and device identifiers, plus there’s even more data collected for analytics, app functionality, and product personalization.

Update (2021-06-07): Ole Begemann:

Google Photos on iOS doesn’t launch unless you give it full access to all your photos, circumventing the selective photo library access privacy option. Perhaps not surprising from Google, but incredibly user-hostile nonetheless.