Shared posts

04 Jun 17:47

App Store Arguments

by Ben Thompson

There are all kinds of arguments to make about the App Store, and nearly all of them are good ones; that's why the best solution can only come from Apple.


Arguments in Epic Games, Inc. v. Apple Inc. wrapped up yesterday; Judge Yvonne Gonzales Rogers noted she had thousands of documents to pore over, but hoped to issue a decision within the next few months. I think there is a strong chance that Apple prevails, for reasons I’ll explain below, but that doesn’t mean the trial has been waste of time: it has cast into stark relief the different arguments that pertain to the App Store, and not all of them have to do with the law.

The Legal Argument

Apple came into the trial with a strong hand rooted in Supreme Court precedent.1

First, while it is possible to define the App Store for iPhones as a distinct aftermarket (see Kodak v. Image Technical Services), appellate courts have significantly narrowed that decision to limit its application to situations where the company selling the product that leads to an aftermarket is only barred from changing the rules after-the-fact to foreclose competition in the aftermarket; if the rules foreclosing competition are consistent, however, then there is no harm, because customers know what they are getting into. In the case of the iPhone, this means that Apple can control the market for iPhone apps, because customers already know that Apple controls the App market; if they don’t like it they can buy a different phone. This is why Apple spent time in the trial establishing that its control of the App Store was in fact a selling point of the iPhone, and a reason why customers chose to enter iOS’s more restrictive ecosystem.

Second, Apple also made the case that there is a competitive market for developers. This was an especially effective line of reasoning with regard to Fortnite, which makes more money from other platforms than it does from iOS; moreover, those platforms have rules that are similar to iOS, including exclusive payment platforms, no-steering provisions, and 30% commissions.

The most important case for Apple’s defense, though, is 2004’s Verizon v. Trinko, which established and/or reiterated several important precedents that support Apple’s position, even if Apple were held to be a monopolist.

First, a monopolist has a right to monetize its intellectual property; the opinion states:

The mere possession of monopoly power, and the concomitant charging of monopoly prices, is not only not unlawful; it is an important element of the free-market system. The opportunity to charge monopoly prices — at least for a short period — is what attracts “business acumen” in the first place; it induces risk taking that produces innovation and economic growth. To safeguard the incentive to innovate, the possession of monopoly power will not be found unlawful unless it is accompanied by an element of anticompetitive conduct.

This is why CEO Tim Cook in his testimony kept insisting that Apple had a right to monetize its intellectual property, and why the company has emphasized the cost of not simply running the App Store but also in developing APIs and developer tooling.2

Second, a monopolist has no duty to deal with any other company; the opinion states:

Firms may acquire monopoly power by establishing an infrastructure that renders them uniquely suited to serve their customers. Compelling such firms to share the source of their advantage is in some tension with the underlying purpose of antitrust law, since it may lessen the incentive for the monopolist, the rival, or both to invest in those economically beneficial facilities. Enforced sharing also requires antitrust courts to act as central planners, identifying the proper price, quantity, and other terms of dealing — a role for which they are ill suited. Moreover, compelling negotiation between competitors may facilitate the supreme evil of antitrust: collusion. Thus, as a general matter, the Sherman Act “does not restrict the long recognized right of [a] trader or manufacturer engaged in an entirely private business, freely to exercise his own independent discretion as to parties with whom he will deal.”

What this means for this case is that Apple has no duty to provide access to those APIs and development tools to companies that do not abide by its terms. There is a very limited exception to this provision (see Aspen Skiing v. Aspen Highlands Skiing), but like Kodak, it only applies to situations where the monopolist changes the rules; Epic, on the other hand, has always operated under the same set of in-app purchase rules.3

Third, the Court stressed that judges should carefully weigh the costs of enforcement with the benefits of an injunction:

Against the slight benefits of antitrust intervention here, we must weigh a realistic assessment of its costs. Under the best of circumstances, applying the requirements of §2 “can be difficult” because “the means of illicit exclusion, like the means of legitimate competition, are myriad”…Mistaken inferences and the resulting false condemnations “are especially costly, because they chill the very conduct the antitrust laws are designed to protect.” The cost of false positives counsels against an undue expansion of §2 liability. One false-positive risk is that an incumbent LEC’s failure to provide a service with sufficient alacrity might have nothing to do with exclusion. Allegations of violations of §251(c)(3) duties are difficult for antitrust courts to evaluate, not only because they are highly technical, but also because they are likely to be extremely numerous, given the incessant, complex, and constantly changing interaction of competitive and incumbent LECs implementing the sharing and interconnection obligations. Amici States have filed a brief asserting that competitive LECs are threatened with “death by a thousand cuts,” the identification of which would surely be a daunting task for a generalist antitrust court. Judicial oversight under the Sherman Act would seem destined to distort investment and lead to a new layer of interminable litigation, atop the variety of litigation routes already available to and actively pursued by competitive
LECs.

All of that mumbo-jumbo in the second part of that paragraph is referring to the specifics of the 1996 Communications Act and the complexities of Verizon’s obligations as a local exchange carrier (LEC). In another sense, though, the mumbo-jumbo is the point: the Court’s argument is that judges are ill-equipped to understand technical specifics and weigh important trade-offs, particularly absent any egregious anti-competitive behavior (as defined by the Court).

The Pragmatic Argument

This matters because the reality is that the App Store is complicated. One of the arguments that Epic raised in the case is that there are scams in the App Store; Epic’s argument is that effectiveness-at-rooting-out-scams should be a plane of competition, while Apple pushed out a post arguing that the App Store in fact stopped many more scams than it allowed, and that the fact there is only one way to get apps on your phone is a feature, not a bug.

As John Gruber noted, the sudden appearance of this post suggested that Apple felt it was losing the PR war:

There’s nothing curious about the timing of this post — it’s in response to some embarrassing stories about fraud apps in the App Store, revealed through discovery in the Epic v. Apple trial, and through the news in recent weeks. The fact that Apple would post this now is pretty telling — to me at least — about how they see the trial going. I think Apple clearly sees itself on solid ground legally, and their biggest concern is this relatively minor public relations issue around scam apps continuing to slip through the App Store reviewing process.

Another reason to think this is true is that I actually think that Apple underplayed their case: there are a whole category of transactions that are not explicit scams of the types documented in that post, but which are clearly designed to remove customers from their money as efficiently as possible. Now Apple’s incentives here are not pure: the company does make 30% of these purchases. But Epic is compromised as well, particularly once you realize that most of these problematic apps are games.

I’m not, to be clear, arguing that Fortnite is a problem; I’m sure Epic would be the first to say that they have a reputation to uphold — as, of course, would Apple. Not all developers, though, would be so scrupulous, and a world where any app could collect credit card information directly is one where it seems more likely than not that consumers will find themselves losing much more money than they anticipated, with no obvious recourse to get it back or make it stop.

This is where the malware discussion in the trial was relevant; Apple argued that iOS had less of it, while Epic attributed that to iOS’s sandbox architecture that keeps apps isolated from each other. The other malware takeaway, though, is the fact that it massively suppressed the market for third-party applications on Windows. Consumers didn’t suddenly get smart about apps, thanks to the pressure of competition; they simply stopped downloading and installing apps at all. One of the great triumphs of the App Store is the fact that it made consumers feel safe and secure about installing apps, dramatically expanding the market for developers — including Epic.

At the same time, there is a practical cost to Apple’s approach: there are entire classes of apps that for all practical purposes can’t exist on the iPhone, particularly those that entail paying licensing fees to 3rd parties on a percentage-of-total-sales basis. Apple, in one of the more damning emails to emerge over the last year, admitted as such:

Steve Jobs stating that iBooks will be the only viable bookstore on the iPhone

This does, I would note, put Apple’s antitrust conviction in the ebooks case in considerably more dubious light: Apple was trying to shift the industry away from a wholesale model to an agency model, which is the exact sort of model that doesn’t work with the App Store. That the company was offering its own alternative — iBooks — makes it worse, just as the introduction of Apple Music made the application of App Store rules to Spotify particularly problematic.

What is also worth acknowledging, though, are the kinds of businesses that never get off the ground. During the pandemic, for example, Apple originally sought to take a cut of person-to-person businesses like counselors and trainers; the company did change the rules to allow one-to-one interactions to be paid for via an alternative payment method, but still demands a cut of one-to-many offerings like classes. There is also the impact on the burgeoning creator economy; I tweeted over the weekend:

Ben's tweet about how little a creator makes with Twitter's new ticket feature

In this world you don’t need 1,000 true fans to make a living; you need 1,786 — 536 fans to pay Apple, 253 fans to pay Twitter, and only then the 1,000 that make it possible to create something new. It is inevitable that some number of businesses never get started, because of this deadweight loss.

The Duopoly Argument

That tweet, I will admit, wasn’t entirely fair. While I noted that Twitter earned its cut by creating a market where one did not previously exist, the same argument can absolutely be made about Apple. As I noted above, Apple not only created the iPhone, it also created a willingness to download and experiment and pay that vastly expanded the market for developers. If Twitter deserves a cut, why not Apple? But then again, how far does it go?

Ben asking why AT&T and Verizon shouldn't get 30%

Where does the “made something previously impossible possible” chain of causation and entitlement end? With the phone? With carriers? With TSMC? Obviously Apple believes it ends with the iPhone, but it’s worth exploring why that isn’t simply a wish but a reality; after all, the carriers actually did take a share of all transactions on their networks 14 years ago. The company that changed the status quo was Apple; I explained How Apple Creates Leverage in 2014:

While Apple in 2006 (in the runup to the iPhone) was in a much stronger position than 2003, they were still much smaller ($60.6 billion market cap) than AT&T ($102.3 billion) or Verizon ($93.8 billion) on an individual basis, much less the carrier industry as a whole. More importantly, carriers weren’t facing a collective existential threat like piracy, which significantly increased their BATNA [Best Alternative to a Negotiated Agreement] relative to the music labels.

The music labels, though, benefitted from a relatively low elasticity of substitution: if I wanted one particular band that wasn’t on the iTunes Music Store, I wouldn’t be easily satisfied by the fact another band happened to be available. The carriers, on the other hand, largely offered the same service: voice, SMS, and data, all of which was interoperable. This increased elasticity of substitution gave Apple an opportunity to pursue a divide-and-conquer strategy: they just needed one carrier.

Apple reportedly started iPhone negotiations with Verizon, but it turned out that Verizon was already kicking AT&T’s (then Cingular’s) butt through aggressive investment and technology choices, resulting in increasing subscriber numbers largely at AT&T’s expense. Verizon saw no need to change their strategy, which included strong branding and total control over the experience on phones on their network. AT&T, meanwhile, was on the opposite side of the coin: they were losing, and that in turn had a significant effect on their BATNA – they were a lot more willing to compromise when it came to branding and the user experience, and so the iPhone launched on AT&T to Apple’s specifications.

That is when Apple’s user experience advantage and corresponding customer loyalty took over: for the first time ever customers were willing to endure the hassle and expense of changing phone carriers just so they could have access to a specific device. Over the next several years Verizon began to bleed customers to AT&T even though their service levels were not only better, but actually widening the gap thanks to the iPhone’s impact on AT&T. Four years after launch the iPhone did finally arrive on Verizon with the same lack of carrier branding and control over the user experience; in other words, Verizon eventually accepted the exact same deal they rejected in 2006 because the loyalty of Apple customers gave them no choice.

Apple followed the same playbook in country after country: insistence on total control (and over time, significant marketing investments and a guaranteed number of units sold) with a willingness to launch on second or third-place carriers if necessary. Probably the starkest example of the success of this strategy was in Japan. Softbank was in a distant third place in the Japanese market when they began selling the iPhone in 2008; finally after four years second-place KDDI added the iPhone, but only after Softbank had increased its subscriber base from 19 million to 30 million. NTT DoCoMo, long the dominant carrier and a pioneer in carrier-branded services finally caved last year after seeing its share of the market slide from 52% in 2008 to 46%.

Forgive the long excerpt, but the specifics of what happened between Apple and the carriers is essential to understanding what makes the App Store question so challenging. What is critical to note is that Apple was able to break the carrier’s hold on what happened on their networks because competition (1) existed at the carrier level and (2) occurred in multiple markets. That meant that Apple had a place to leverage its ability to make something better.

The App Store market, on the other hand, is a worldwide duopoly, which dramatically reduces the point of leverage for any one app. Suppose Twitter wanted to push back on Apple’s policies, and go exclusively to Android; that would entail giving up around 20% of the market worldwide, and about 50% of the market in the U.S. It’s simply not viable to do a divide-and-conquer approach when there are only two alternatives in a worldwide market. That is why Apple and Google mostly copy each other’s policies, comfortable in the knowledge that no one app really matters.

I suppose Twitter could make its own phone, just as Apple could have built its own phone carrier, but given the essentialness of an App ecosystem, the former is actually a far more intractable challenge than the latter. One app may not matter to an ecosystem, but as a collective nothing matters more.

The Moral Argument

This gets at the part of this case that is, to be perfectly honest, kind of infuriating. Back in 2009 Apple came up with a memorable campaign for the iPhone:

I admit it — the first tweet above was wrong. Apple absolutely did a tremendous amount for developers. It invented the iPhone, it brought the concept of an App Store to the mass market, and it has iterated on both. And yes, it spends a lot of money on APIs and developer tools.

What the company no longer admits, though, is that developers did a lot for Apple too. They made the iPhone far more powerful and useful than Apple ever would have on its own, they pushed the limits on performance so that customers had reasons to upgrade, and even when Android came along iPhone developers never abandoned the platform. Sure, they had good economic reasons for their actions, but that’s the point: Apple had good economic reasons for building out all of those APIs and developer tools as well.

Apple said as much when the App Store first launched; Steve Jobs said in 2008 that “Our purpose in the App Store is to add value to the iPhone”, even as he admitted that “the App Store is much larger than we ever imagined.” When Apple introduced the iPhone SDK Jobs had analogized the company’s 70/30 split to iTunes, but it was already clear a few months later that the opportunity was far larger than music.

This worried longtime Apple executive Phil Schiller; in one of the most striking emails to emerge from the trial, he suggested that Apple might consider voluntarily capping its App Store profit to $1 billion, which was far more than the break-even amount Jobs hoped for at launch.

Slide from Apple v Epic

Schiller argued that Apple ought to make such a move from “a position of strength rather than weakness”; one can certainly make the argument that he was gravely mistaken, given that Apple makes somewhere in the neighborhood of $15 billion from the App Store, and that, for all of the reasons I just explained, is as secure in its competitive position as it has ever been.

And yet, it’s worth remembering that Apple did $294 billion in sales last year; the App Store is not and never will be its main business. Is it strong to continue to tarnish the customer experience with popular apps, its reputation with developers, and provoke criticism from Congress simply because it can? How much might it have been worth to remember that while Apple will always have the leverage with individual developers, developers as a collective — along with creators and authors and musicians and everyone else who wants to build a business on the iPhone — are exactly what makes the iPhone so compelling?

The Anti-Steering Argument

The argument that Judge Gonzales Rogers seemed the most interested in pursuing was one that Epic de-emphasized: Apple’s anti-steering provisions which prevent an app from telling a customer that they can go elsewhere to make a purchase. Apple’s argument, in this case presented by Cook, goes like this:

Tim Cook's Best Buy argument

This analogy doesn’t work for all kinds of reasons; Apple’s ban is like Best Buy not allowing products in the store to have a website listed in the instruction manual that happens to sell the same products. In fact, as Nilay Patel noted, Apple does exactly this!

Nilay Patel refutes the Best Buy argument

The point of this Article, though, is not necessarily to refute arguments, but rather to highlight them, and for me this was the most illuminating part of this case. The only way that this analogy makes sense is if Apple believes that it owns every app on the iPhone, or, to be more precise, that the iPhone is the store, and apps in the store can never leave.

Judge Gonzales Rogers, meanwhile, is not the only one that finds Apple’s entitlement to apps problematic; the European Commission specifically cited the App Store anti-steering provision in its Statement of Objections about Apple’s approach to competition “in the market for the distribution of music streaming apps through its App Store”. That position of strength is starting to weaken.


After the European Commission’s announcement, Benedict Evans wrote in Resetting the App Store:

We’ve been arguing about this for a decade, but now something is going to change, partly because of Epic’s lawsuit (which it might or might not win) but much more importantly because the EU has a whole set of competition investigations into the sandbox, the store and the payment system, and is highly unlikely to accept the status quo. When Apple launched the store in July 2008 it had only sold 6m iPhones ever, but now a billion people have one, and competition laws apply, whether you like it or not. Epic might lose, but Spotify will win. What will that mean, though? What rules will change, and how, and what will that mean for anyone who isn’t an Apple or Spotify shareholder?…

It’s possible to believe that the sandboxed App Store model has been a hugely good thing, and also that Apple has too often made the wrong decisions in running it, and also that unwinding those decisions while preserving the underlying model won’t actually change much for many companies or consumers, and won’t really be a significant structural change in how tech works.

What Evans highlights is that all of these arguments about the App Store are good ones. Apple has good ones, Epic has good ones, Spotify has good ones, the European Commission has good ones, and I’d like to think I have good ones as well. As the Supreme Court has noted, though, a realm with lots of complexity and lots of good arguments about every single trade-off is one that is extremely poorly suited to judicial oversight. Congress is certainly an option — there is a utility sort of argument to be made about the App Store — but that comes with massive risks, given the relative frequency of changes in the law relative to changes in technology (the Epic case is being argued under a law passed 121 years ago).

What I wish would happen — and yes, I know this is naive and stupid and probably fruitless — is that Apple would just give the slightest bit of ground. Yes, the company has the right to earn a profit from its IP, and yes, it created the market that developers want to take advantage of, and yes, the new generation of creators experimenting with new kinds of monetization only make sense in an iPhone world, but must Apple claim it all?

Let developers own their apps, including telling users about their websites, and let creatives build relationships with their fans instead of intermediating everything.4 And, for what it’s worth, continue controlling games: I do think the App Store is a safer model, particularly for kids, and the fact of the matter is that consoles have the same rules. The entire economy, though, is more than a game, and the real position of strength is unlocking the full potential of the iPhone ecosystem, instead of demanding every dime, deadweight loss be damned.


  1. Obvious caveat: I am not a lawyer, although I have consulted with both an antitrust lawyer and an antitrust economist about legal precedents surround the App Store; this is also about U.S. law only 

  2. There is a question as to whether Apple’s approach is the least restrictive way to achieve legitimate business ends; this is a very difficult argument to win in court, though, as any proposed solution has to be better in all regards, including appropriately compensating the IP holder. 

  3. Some “reader” apps like Kindle did have the rules changed on them — Apple used to let them link out to the web for payments — but that was years ago before the iPhone was as dominant as it is today; parental control apps may have a more compelling case. 

  4. Customers, of course, could decline; that would be a reason for developers and creatives to opt into Apple’s model 


Subscription Information

Member: Roland Tanglao
Email: rolandt@gmail.com

Manage your account

27 May 03:19

Twitter Favorites: [uncleweed] Thanks @jodyvance & @cknw ~ super enjoyable talk. these #Olympics conundrums been weighing heavy on me and very gla… https://t.co/Do3qMJFuyK

DaveO @uncleweed
Thanks @jodyvance & @CKNW ~ super enjoyable talk. these #Olympics conundrums been weighing heavy on me and very gla… twitter.com/i/web/status/1…
27 May 03:19

Remaining Issues in Big Sur

by Rui Carmo

This is a massive list. I’ve only experienced some of these issues, but the interesting bit is that I have heard about most of them through complaints from my friends, so it seems pretty comprehensive.

I do have to wonder why this is still the case this far into the 11.x cycle, since Big Sur really ought to be a lot less buggy than Catalina.

I mean, it’s not as if Apple was actively ignoring macOS.

Right?


27 May 03:19

Turning an array of arrays into objects with jq

by Simon Willison

Input:

[
    ["mm.domus.SW230"," A LA RONDE","Buildings:Houses:Medium houses",50.642781,-3.405508],
    ["mm.domus.SW193"," ALEXANDER KEILLER MUSEUM","Archaeology:Prehistory",51.427927,-1.857344],
    ["mm.domus.SE416"," ANNE OF CLEVES HOUSE MUSEUM","Buildings:Houses:Medium houses",50.869227,0.005329],
]

I want an array of objects. Here's what I came up with, using jqplay.org:

[.[] | {id: .[0], name: .[1], category: .[2], latitude: .[3], longitude: .[4]}]

This outputs:

[
  {
    "id": "mm.domus.SW230",
    "name": " A LA RONDE",
    "category": "Buildings:Houses:Medium houses",
    "latitude": 50.642781,
    "longitude": -3.405508
  },
  {
    "id": "mm.domus.SW193",
    "name": " ALEXANDER KEILLER MUSEUM",
    "category": "Archaeology:Prehistory",
    "latitude": 51.427927,
    "longitude": -1.857344
  },
  {
    "id": "mm.domus.SE416",
    "name": " ANNE OF CLEVES HOUSE MUSEUM",
    "category": "Buildings:Houses:Medium houses",
    "latitude": 50.869227,
    "longitude": 0.005329
  }
]

If you remove the outer [ and ] and use the "Compact output" option you get back this instead:

{"id":"mm.domus.SW230","name":" A LA RONDE","category":"Buildings:Houses:Medium houses","latitude":50.642781,"longitude":-3.405508}
{"id":"mm.domus.SW193","name":" ALEXANDER KEILLER MUSEUM","category":"Archaeology:Prehistory","latitude":51.427927,"longitude":-1.857344}
{"id":"mm.domus.SE416","name":" ANNE OF CLEVES HOUSE MUSEUM","category":"Buildings:Houses:Medium houses","latitude":50.869227,"longitude":0.005329}

27 May 03:19

We need talent identification for even the smallest needs

There are a lot of talented people in the world aren’t there.

I was reminded of this when I ran across the latest False Knees comic, which is gorgeous. (False Knees is a regular watercolored comic strip about birds voicing observations, alternately profound and profane.) And I thought: it’s so great that they have 628k followers on Instagram, 139k on Twitter, 270k on Facebook, and also an online store.

This is new! The transition: When I was at school, all the kids played football or mooched around the grounds outside during break. We weren’t allowed indoors. I visited 10 years later, and some of the music offices had been turned into recording studios; during breaks, kids were inside making music, making art, and yes outside playing sport too, but what I mean is that they were enjoying their talents.

But I feel like we’ve barely scratched the surface. False Knees is exceptional and it’s wonderful that they have a million fans, but generally speaking:

  • Mechanisms to identify talent are rare – how many people would be great at writing lyrics, or talking about history, but they don’t have the opportunity to recognise they have that special skill.
  • Mechanisms to connect talent to the people who love it: also scarce.

I think about all the great artists who aren’t necessarily also great hustlers.

I think about those two kids in Kenya who invented a prosthetic robot arm, controlled by brain signals. Of the almost-8-billion people alive, how many other great inventors are there who don’t get the opportunity to walk the path to their inventions?

We have unlocked like 1% of opportunity and realisation of talent in the world.

I don’t mean in a purely commercial way but primarily artistic and imaginative. So not really about jobs; more generally about being fulfilled.

But let’s think about jobs for a minute…

Makes you wonder what the global economic cost is, of LinkedIn being so terrible, said Kevin Cannon (when I talked about this on Twitter) and that’s a provocative framing. If you were to take the LinkedIn mission in its broadest sense as

  • helping people recognise their own personal potential
  • connecting potential to those that value it

…then what would you do?

One model is the traditional labour exchange – in the UK government-run labour exchanges were established in 1909, and honestly my only insight into how they worked (compared to today’s job centres) comes from listening to a ton of old episodes of Hancock’s Half Hour from the late 1950s, which is the show that invented the sitcom, and our lad Tony Hancock often ends up in one.

They seem maybe more hands-on, compared to today’s model? That’s interesting.

So maybe let’s look at the London Olympics (2012) “talent identification” program: a nationwide scheme where you, a fit person in your early 20s who plays hockey on weekends, turn up, have experts measure your arms and legs and strength ratios and twitch muscles, etc, and say, “hey, have you thought about Niche Sport X, we could hothouse you in that and not many other countries participate, so you might win and our ROI is good”. Which is how Team GB ended up 3rd in the medals table.

I have a picture in my head of something like that…

You turn up with an aptitude for making smart aleck remarks and a good eye, so the “creative industries talent identification bureau” (or whatever) gives you a digital tablet, a mentor relationship with a handful of web artists, and some back-office support to set you up with an online shop and a merchant account.

I mean… why not? Why not hand crank the process, literally handhold people into discovering and fulfilling their potential, leading to them (a) improving culture, or (b) paying more taxes, or (c) both, and if not then at least (d) being happy? Rethink the model. How could it be economically viable?

Another model I admire is the Open University. Established in 1969 to provide a university education exploiting the new technology of television, it’s now the UK’s largest undergrad institution and reaches people that others can’t. What’s the 2021 equivalent?


At times like this I think of Bao Xishun.

In 2006, two dolphins at an aquarium in Fushun, China, swallowed some plastic shards and were at risk of death. Veterinarians were unable to extract the plastic.

But China has the world’s largest population.

And with the world’s largest population, it has the world’s tallest man.

And the world’s tallest man has the world’s longest arms. They called him.

And so Mongolian herdsman Bao Xishun, the tallest man, reached into the mouths and down the throats of the dolphins with his arms, the longest arms, 1.06 metres, and retrieved the plastic and saved their lives.

I can only imagine the infrastructure and institutions required to connect that particular need to that particular talent, and what could be unlocked if those connections could be made continuously and in all sorts of ways.

27 May 03:17

Running Docker on an M1 Mac

by Simon Willison

TLDR: Use platform: linux/amd64 in docker-compose.yml and your containers will probably work!

I was trying to figure out how to get a development environment for a Django project running inside Docker in a M1 Mac.

Since I don't have an M1 Mac, I decided to rent one. AWS haven't launched this yet (at least anywhere I could find it), and Scaleway were out of stock on their machines which you can rent by the day, so I tried using a $109/month M1 Mac Mini from MacStadium.

The machine became available within a minute of me entering the card details, and gave me an IP address I could connect to plus an administrator account username and password. These worked for both VNC and SSH.

For VNC, navigating to vnc://ip.address.here in Safari opened the macOS Screen Sharing app and prompted me to connect. For SSH, ssh administrator@ip.addresse.here and then entering the password did the trick.

Installing Homebrew and Docker

First, most important lesson: do not attempt to install these large pieces of software over SSH! Both of these had points within the install process that triggered desktop UI interactions of some sort, and trying to start them over SSH lead to a bewildering array of permission errors. I ended up having to turn the machine off through the MacStadium web interface, waiting a while and then turning it back on again in order to clear the errors (a soft reboot didn't help).

So be sure to open a terminal in the Screen Sharing app over VNC and run the install commands there.

Pasting in the installation command from https://brew.sh/ did the trick. I then installed Docker using brew install --cask docker. These both needed to be done not over SSH.

Docker for Mac required Rosetta 2 - thankfully installing that is a case of running softwareupdate --install-rosetta - which for me only took a couple of seconds and displayed an error message which appeared not to matter at all, since Docker for Mac then started working fine.

When I tried to run Docker containers with mounted volumes I ran into an issue where a UI prompt displayed on the macOS desktop stating that Docker wanted access to my filesystem - another reason to run the first set of commands over VNC rather than SSH.

Eventually I got to a point where docker run commands were safe to run via SSH instead of a terminal over VNC.

Editing files with VS Code

Not unique to remote macOS but this was the first time I used the VS Code Remote Development using SSH extension and it worked flawlessly - I gave it the IP address, username and password that I had used over SSH and I was able to edit files on the remote Mac in the same way I edit files on my local machine. Fantastic.

And then I almost gave up...

Getting things to work in Docker on an M1 is really, really hard. Python dependencies using wheels such as psycopg2-binary failed to install. apt-get install ... inside a Docker container seemed to work for most packages - I upgraded to FROM python:3.9-buster as my base image and was able to run apt-get install python-psycopg2 to talk to PostgreSQL.

The I ran into this error on container startup:

docker run -it -v "$(pwd):/app" vial_web bash
root@a9ae5a2956a5:/app/vaccinate# python -i ./manage.py runserver 0.0.0.0:3000
Performing system checks...
free(): invalid pointer
Traceback (most recent call last):
  File "./manage.py", line 29, in <module>
    main()
  File "./manage.py", line 25, in main
    execute_from_command_line(sys.argv)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "/usr/local/lib/python3.8/site-packages/django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/commands/runserver.py", line 61, in execute
    super().execute(*args, **options)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/commands/runserver.py", line 96, in handle
    self.run(**options)
  File "/usr/local/lib/python3.8/site-packages/django/core/management/commands/runserver.py", line 103, in run
    autoreload.run_with_reloader(self.inner_run, **options)
  File "/usr/local/lib/python3.8/site-packages/django/utils/autoreload.py", line 640, in run_with_reloader
    sys.exit(exit_code)
SystemExit: -6

That free(): invalid pointer error completely stumped me, since it didn't come with a detailed enough stacktrace that I could figure out which dependency (I have a hunch it was caused by a C deopendency) was causing it, and I couldn't figure out debugging techniques from searching the internet.

Armin Ronacher said on Twitter:

M1 macs add a whole new world of crazy to Python. Apple Python and homebrew Python and the different types of pyenv pythons and different cpu archs add completely new sources of frustration and errors. I still get random compiler errors from macos version mismatches on big sur.

Which made me feel a little bit better about being defeated! Until...

platform: linux/amd64 to the rescue!

Mo McRoberts on Twitter pointed out that:

also Docker for M1 runs linux/amd64 containers really well, not ideal, but good enough for a lot of uses

So I dug in a bit.... and it turns out you can tell Docker for Mac to build and run containers using the linux/amd64 architecture and everything... just works!

I'm using Docker Compose (see Docker Compose for Django development so I added the platform: linux/amd64 YAML key for my container:

  web:
    platform: linux/amd64
    build:
      context: .
      dockerfile: Dockerfile.dev
    command: python manage.py runserver 0.0.0.0:3000

And that did the trick! I ran docker-compose build to rebuild the containers and docker-compose up to start them running and everything worked exactly the same as it did on my non-M1 Mac laptop.

27 May 03:17

Apple, Fedex and the cookie apocalypse

by Benedict Evans

We’re now a couple of weeks into Apple’s latest iOS privacy move. If you want to track users between apps and the web, or from an ad through the app store to an install, then you need to ask permission, and Apple has deliberately framed the question such that almost no-one will say yes. On some reports, CPMs are already down by half. 

We could spend a lot of time arguing about the rights and wrongs of privacy and Apple’s framing and steering and use of its market dominance, but it’s probably more useful to suggest that all Apple has really done is implement the EU and California’s cookie laws, ‘but in apps’, and in an especially aggressive way. Step up another level, and this reflects a pretty broad shift in attitudes towards privacy in general and the huge inverted pyramid of complexity and nonsense of third party ad tracking in particular. Chrome and Safari are turning off third party cookies anyway. The cookie apocalypse is upon us and the tracking model of the last 25 years is going away.

What happens next? No-one in advertising quite knows. There are dozens of different projects for new ‘private’ ways to track users across different sites with different identity or logged-in models, but the most interesting remains Google’s FLoC, in which the browser analyses your behaviour and puts you into (mostly) anonymous, interest-based cohorts. The publisher can ask for a cohort and show you ads, but your actual activity never leaves your device. Apple does more or less the same thing on iOS in its News and Stocks apps, except that Apple also serves the ads and displays the content, so the underlying publishers see nothing at all (except a wire transfer). I think it’s very likely that Apple is looking at offering this in third-party apps and in Safari as well (I wrote about that here). So, Apple and Google want to move the tracking from the server to the client, and to one company with one point for the user to control instead of disaggregation across hundreds of publishers and ad-tech companies. 

There’s a bunch of reasons why this might not work, not least that no-one except Google and Apple want Google and Apple to have that much control over publishing and advertising. But it’s also worth stepping up another level again, and asking what advertisers are trying to do, anyway. People say ‘privacy’ so often that one can lose sight of the fact that advertisers don’t care who you are - they just want to show ads to people that might be interested in them, and not to show ads to people who won’t be interested. They don’t want to ‘violate your privacy’ - they want to show diaper ads to parents, car ads to people who want a car and watch ads to rich people. 

Before the internet, that meant car ads in car magazines and watch ads in the Economist. Ads were based on context, and on inferring the audience from the context. The internet gave advertisers the opposite axis - it let them show ads based on the reader instead of the page. One side-effect of this was relocation of value - you can target an Economist reader a week later on a different website. If FLoC works, you can still do that. But the counter-case is that the value gets re-concentrated in the places with high-value context, rather than following the high-value readers around the web. It also gets re-concentrated in places with first party data. We will not be able to track you across different web sites, but we can still track you inside the same website, if it has lots of content and you spend lots of time there - Instagram or Facebook, but also the New York Times or the Guardian. The strong get stronger, which of course is the great tech policy trade-off - privacy versus competition.

The publisher, meanwhile cares about neither the ads nor your web browsing history, but about the money, and the harder the ad business has become, the more that publishers have shifted emphasis to pay walls, memberships and commerce. When those publishers are in the news business, this is another trade-off - pay walls (and privacy!) conflict with reach and public purpose, and again they tend to work best for the strongest. But way beyond news, if ATT/IDFA really does halve the CPMs, a lot more apps might have to change their business models. How many apps are funded by ads that won’t work so well now, and how many were using ads as the best way to acquire users and will have to find a new way to do that?

Now, step up one more level again: why were brands buying ads anyway? Well, to reach a consumer, and how else are they doing that? The joke in D2C for a while now has been that ‘rent is the new CAC’. Should you spend your acquisition budget on ad networks, or Instagram… or on same-day shipping, a pop-up shop in the right part of Manhattan or London, or 100 shops, or free returns? Before the internet you couldn’t choose between shops or ads, but now that’s all the same algebra - how do you reach and serve a customer? If the cookie apocalypse resets the numbers for display, that money can go to search, but it can also go to Fedex or landlords. Which lever do you pull? The entire ad privacy fight is one moving part in a debate about how you reach your customers and how you spend a total of, perhaps, $7-800bn in the USA alone each year.

A version of this essay was sent to premium subscribers to my newsletter earlier this week. Find out more here.




27 May 03:16

What are deceptive design patterns?

by M.J. Kelly

Deceptive design patterns are tricks used by websites and apps to get you to do things you might not otherwise do, like buy things, sign up for services or switch your settings. Another phrase used to describe deceptive design patterns is dark patterns*, which was originally coined in 2010 by user experience specialist Harry Brignall, drawing attention to this practice and building momentum around calling it out. Brignall regularly tweets some of the worst examples of deceptive designs online and hands out kudos for honest user experiences.

Deceptive design patterns show up as tricky color schemes, frustrating mazes, sneaky designs and confusing language. Websites use these techniques to influence your behavior into a direction that benefits them more than it benefits you. Here are examples of deceptive or manipulative designs you might run into.

Confusing design and language

You won’t find deceptive designs on every website, but we’ve all experienced confusing situations like:

  • A “No thanks” button that is pale grey but the “Sign me up” button is enticingly bright blue.
  • A box that is pre-checked, making it unclear if you are opting in or opting out if you uncheck it.
  • A graphic that has an X-out box as part of the design rather than being functional. When you click the X, you are redirected to a webpage.
  • A site that’s swimming with so many buttons, you’re almost bound to click one of them.

They may also appear in text taking the form of:

  • Double negatives like Do not uncheck this box if you want to keep receiving emails from us.
  • Buried opt-out explanations in the terms and conditions fine print.
  • Hurdles for closing an account, like listing reasons you shouldn’t instead of simply respecting your wishes.
  • Word choices that make it unclear what you’re choosing.

Sales pressure

Visiting an ecommerce site means you’re going to be sold items, which everyone expects. There’s a fine line, however, between straight-forward product recommendations and slimy sales techniques. Deceptive design patterns abound on shopping sites to manipulate you into buying or signing up for things. Tactics that might include:

Cart sneaking: Just like kids try to slip cookies into a grocery cart, some sites also sneak items to your shopping cart. It might be a warranty or protection policy that is easy to miss during check out.

Fake customers: Some sites try to boost sales by creating fake customers to give the appearance that people are actively shopping there. Personally, I am deeply embarrassed about buying what looked like a stylish flowing duster jacket that Tara from Nashville received and gave five stars one week ago. The jacket had also been relentlessly promoted to me on social media, and I finally gave in only to receive an ill-fitting poncho that was neither flowy, nor a jacket, nor stylish in any way.

Confirmshaming: This is when a site tries to guilt or shame you into opting in. When you decline, they show you messages like: You must be part of the “I’ll pay more club” or No thanks, I already know everything there is to know.

Software installation obstacle course

During a software installation process, sometimes you need to click through a series of windows that don’t do anything in terms of installing the software. They give you the feeling of progress, but they’re actually designed to get you to install extra “toolbars” or trials of other software, but they’re really disguised ads. The prompts are confusing, making the bonus software sound essential, but in general these design patterns lure people into adding — and even buying — services they don’t want. Once they’re installed they look like they’re part of the system and are hard to remove.

Related article

Your browser is hijacked. Now what?

Forced continuity

Some subscription services offer a limited trial basis, which can be ideal for trying something new. But when they force you to hand over your credit card information to start the trial, their goal is to get you to pay automatically when the trial ends. That’s a deceptive design pattern called forced continuity. A better customer experience would be to remind you and invite you to enroll after the trial period ends.

Opting in… forever

The “roach motel” is another opt-in tactic dubbed as such because it opts you in and makes it nearly impossible to leave. If you’ve ever gone round and round trying to downgrade from a premium-level account or found it took a lot of effort to close or cancel an account because the options were buried or you had to chat, verify and verify yet again, you’ve clearly visited a roach motel.

Most people expect that clicking a box opts them into a service or subscription. Some sites use that box as an opt-out, taking the approach that if a person should be opted in automatically. This trick is annoying, but mostly benign when it comes to an email newsletter; one can usually unsubscribe from newsletters fairly quickly.

But opt-in tactics have also been used for election campaign fundraising at the cost of millions of dollars from the bank accounts of people who can’t afford it.

A Princeton research project looked at thousands of emails sent by political campaigns of both major parties and found that “manipulative tactics are the norm, not the exception.” Asking donors to make regular gifts is reasonable; making that the default is not. For example, during the 2020 U.S. election cycle, the Trump campaign deployed deceptive design patterns of pre-checked boxes to get recurring donations from many unsuspecting supporters.

Are deceptive design patterns illegal?

If manipulative and deceptive designs are so bad, why do we keep seeing them? The short answer is that they often work. Web and app designers who use these tricks knowingly capitalize on the fact that people have a tendency to skim webpages, click on appealing colors and not read the fine print. Their focus is on their bottom line, not yours.

But, there is hope. Designers are learning and sharing more about spotting and combatting deceptive design. State governments are also beginning to enact legislation to protect consumers. California recently expanded the California Consumer Privacy Act to address the use of misleading practices when getting individuals’ consent for data collection and processing.

The newly-approved regulations ban so-called “dark patterns” that delay or obscure the process for opting out of the sale of personal information. Specifically, it prohibits companies from burdening consumers with confusing language or unnecessary steps such as forcing them to click through multiple screens or listen to reasons why they shouldn’t opt out. [Source: California Attorney General]

More policy work to address deception in design is happening on the U.S. federal level, with the Federal Trade Commission signaling that it’s a priority for the agency.

At the end of the day, the use of manipulation in web design erodes consumer trust and confidence in the internet ecosystem and is patently bad for people and the web. And it needs to go. Mozilla supports federal legislation that has been introduced focused on banning such practices.

Upcoming Firefox release brings even more clarity

Often the line between messages coming from a website or coming from the browser is blurred. The Firefox team designs experiences that are clear in their messaging and respectful of your time and attention. In our upcoming June release, the user interface has been updated so that there is no mistaking when Firefox is “talking to you” vs the site you’re on. Similarly, our notifications and messages make it clear that you have a choice to engage with them, and that using features should be a considered decision you make, not something we slip past you. Our products are designed to meet your needs and help you enjoy everything the web offers without trickery to get in your way.

*A note on words

You may notice we use “deceptive design patterns” rather than “dark patterns” throughout this article. While the latter is commonly used and has been for years, the phrase also reinforces the idea that being “dark” is “bad,” which is directly tied to white supremacy. In line with our anti-racist commitments, we are moving away from using exclusionary language, including metaphorical language that ties to white supremacy. We are instead choosing more factual terminology as other companies are doing as well.

The post What are deceptive design patterns? appeared first on The Mozilla Blog.

27 May 03:15

How to actually enjoy being online again

by Rebecca Smith

COVID-19 accelerated changes in our behaviors that drove our lives increasingly online. Screens became our almost exclusive discovery point to the world. There were some benefits to this rapid shift. For many people, work was able to continue relatively uninterrupted at home, almost anything could be ordered online and delivered, and we were able to still connect with people and celebrate life moments over video chat. However, there were also points where our screens felt like something we couldn’t escape. Zoom happy hours faded out as it became clear that drinks with friends couldn’t really be replicated online. We flirted with the idea of doing a Chrissy Teigen and quitting Twitter (only to quickly miss it and come back). Plus, despite the fact we were languishing, our online lives became more hectic than ever.

Turning on our computer or phone at times became daunting with an avalanche of Zoom meetings, calendar invites, FaceTimes from everyone we’ve ever met and near constant slacks. Because of this onslaught, we worked to create a new Firefox experience so your time online could be more efficient, calm and hopefully enjoyable. We observed the way you used the browser by studying billions of clicks to incorporate your habits into our latest release.

Now that things are starting to open up allowing for in-person interaction, we have a moment to redefine what our online life looks like for the rest of the year. And, the truth is, we will be online. And there is a lot of really f**king cool stuff online. The internet does make our life better. As our feeling of choice comes back again, here are some tips to help us all choose joy when online.

1. Create a space for what you consider the best of the web

When the internet is at its best, it reminds us that we are not alone. Find your corners of the internet, your online community, that remind you how big and exciting the world is. For some that can look like a wild comment section, or a favorite Discord, an online class where you learn something new, or a Pocket collection that you continue to revisit on when to be inspired. Create a bookmark folder called ‘things to make me laugh’ so you can revisit these sites with ease. Less time on the internet is not the key to being happy, spending time doing things that feel enriching and exciting to you is. Schedule time on these platforms just like you would spending time with loved ones or taking care of yourself, if you don’t prioritize time on the good corners of the internet, no one else is going to do it for you.

2. Turn your phone to grayscale (at least temporarily)

How often do you find yourself mindlessly reaching for your phone and then scrolling through for no reason? You look down and it’s been an hour and you didn’t accomplish or learn anything, or even really find yourself entertained. Your time matters, and app logos and colors are designed and used to capture your attention for longer. The colors stimulate your brain, so by turning your phone to grayscale and stripping the colors, you may be less motivated to check your phone as often.

This doesn’t need to be a permanent change. Seeing the experience in color is its own form of joy, but after a week or so of having your phone in grayscale, you may find yourself reaching for your phone less. Consider it a reset to only scrolling when you actually want to.

Here’s how to change your phone to grayscale on an iPhone and an Android phone.

iPhone: Accessibility > Display & Text Size > check Color Filters on > and tap on Grayscale

Android: Settings > Digital Wellbeing & Parental Controls > Wind Down > Grayscale

3. Download Firefox for the fresh new experience coming June 1

The upcoming Firefox release coming out on June 1, understands that after this last year we all need some simplicity. The Firefox browser is being redesigned to bring you a more modern and calmer web experience. Wherever visual noise — like notifications, menus and buttons — could be eliminated, were eliminated. Subtle design changes add up to make a big visual difference with new tabs that are easier to navigate, extra spacing, and lighter typography. You know those auto-playing videos that normally disrupt your browsing? Instead of having to click on every tab to see where the sound is coming from, easily scroll your tab bar and look for the sound-on icon and with one tap, turn it off. Plus, you know that you have more privacy and security built into your web experience with Firefox’s SmartBlock feature and Total Cookie Protection. You can sit back and enjoy the fresh new experience with one less thing to worry about.

4. Download customizable add-ons for a more personal internet experience

This is your online experience, what do you want to prioritize? Once you figure that out, there are endless customizable add-ons that can help. For many of us, we want our online experience to be a little less overwhelming. Having access to anything we ever wanted is good, but also comes with many distractions, so then we have to spend more time online to finish our actual tasks. There are Firefox add-ons that can remedy this instantly.

Or maybe you just want to bring something fun and colorful to your online experience? There are add-ons for that, too, from Firefox themes to add-ons that introduce cute cats to every new tab you open.

5. Go ahead and close your computer

It’s been a year and a half unlike any other, and the call of going outside, meeting people in person and closing your screen is one that you should answer when you’re ready. The web makes our world bigger, but it was never meant to be the only way we interact with people outside of our household. We should all be having experiences offline, which will only make signing back on even better. Those Zoom calls with our family members and friends across the country don’t need to stop anytime soon, the joy will just be so much more knowing that you could plan a trip to see them — you are choosing to catch up via video, not being forced too.

Sign off for a while, Firefox will be ready for you when you return.

The post How to actually enjoy being online again appeared first on The Mozilla Blog.

27 May 03:14

Why I’m joining Mozilla’s Board of Directors

by M.J. Kelly

I was born and raised in Zambia and came to the United States for university. Even though growing up, I had almost no exposure to computers, I chose to study computer engineering. Fortunately for me, this leap of faith proved to be a great decision, as I’ve been very blessed with the career that came after.

When I started my tenure at Intuit, my first job was working as a developer on QuickBooks for DOS. In what would turn out to be a 22-year run, I got a front row seat in watching technology evolve by working on Windows, Mac, and eventually online and mobile offerings. I was fortunate to play a leading role in the development of new Intuit products, which further fueled my passion for innovation.

Hugh Molotsi, Mozilla board member
Hugh Molotsi

From this vantage point, there is no doubt that the internet has been the most transformational technology in my years working in the industry. The internet has not only expanded the possibilities of problems to solve and how to solve them, but it has also expanded the reach of who can benefit from the solutions.

From the beginning, Mozilla has had an important vision: for the internet to benefit everyone, it should remain a global resource that is open and accessible. With this vision in mind, Mozilla has played a prominent role in the advancement of open source and community collaboration. The impact of Mozilla has catalyzed the internet as a force for good, as it touches lives in some of the least developed parts of the world.

I believe Mozilla’s mission is today more important than ever. In these polarized times, the internet is blamed for the rise of monoliths and the rapid spread of disinformation. Mozilla is the trusted entity ensuring the internet-as-a-public-resource is effective and enriches the lives of not just the privileged few. The challenges of a polarized world may feel daunting, but with human ingenuity and collaboration, I’m convinced the internet will play a key part in a better future. For someone who grew up in Africa, I’m especially excited about how the internet is enabling “leapfrog” solutions in meeting the needs of emerging economies.

I’m excited to help the Mozilla Corporation drive new innovations that will benefit the global community. This is why I am truly honored to serve on the Mozilla Corporation Board.

(Photographer credit: Danny Ortega)

The post Why I’m joining Mozilla’s Board of Directors appeared first on The Mozilla Blog.

27 May 03:14

2021-05-25 General

by Ducky

Mitigation Measures

This paper looked at movement restrictions in the US and found the following (independent) reductions in mobility from mitigation measures:

Measure Reduction
emergency declaration 9.9%
social distancing policies 24.5%
shelter-in-place 29%

Further, they found that a 10% reduction in mobility was associated with a 17.5% reduction in case growth two weeks later.

Vaccines

The US CDC released a report which said that there were 10,262 cases of COVID-19 in vaccinated people between 1 Jan 2021 and 30 April 2021, out of about 355,000 cases, so about 97% of the cases were unvaccinated. Only 0.05% of the cases were vaccinated people who died.


Moderna announced a press release saying that it had seen zero cases of COVID-19 in its study of 12-17 year-olds, and was 93% effective in preventing COVID-19 after one dose.

Disease

This paper says that patients can have diabetes-like symptoms (i.e. high blood sugar, insulin resistance) for up to two months after getting COVID.


Some people (called “supertasters” as a technical term) have a specific version of a particular gene (TAS2R38) that makes their perception of bitter tastes stronger. This paper says that supertasters have milder cases of COVID-19 than people who do not have that version.

The effect was not small. For example, of the participants who later required hospitalization, none, zero, nada were supertasters.

(My first thought was, “How the hell did they think to look for that association?!?!?”, but apparently there is previous research which links TAS2R38 variants to innate immunity in the upper respiratory tract.)

India

I don’t normally talk about what is going on countries outside of Canada unless Canada is obviously involved, but OMG India is having such a catastrophe.

The New York Times tried to figure out what the actual death toll in India is, and they think it’s between 2x and 13.7x the official government figures, so between 600,000 and 4.2 million deaths.

27 May 03:13

2021-05-25 BC

by Ducky

Vaccinations

BC is changing the interval between first and second doses from 112 days/16 weeks to 50 days/~7 weeks for Pfizer. That means almost all 70+ will be eligible right away.

Unfortunately, a lot of the 70+ yos are not in the system right now.

Age Cohort size Registrations (by last week) % registered
70-79 435,062 283,490 65%
80+ 237,169 83,093 35%

Apparently, there was a computer glitch over the weekend which meant that some people got invitations to book before they were supposed to. (In today’s press briefing, Dr. Henry said that they would honour those bookings, not to worry!) She said that the “real” rollout would happen later this week.


In today’s press briefing, Dr. Henry was asked what we would do about second doses for Moderna, given that Moderna hasn’t reliably delivered vax. Dr. Henry said that the data showed that you could mix&match the mRNAs, implicitly saying that they’ll give Pfizer for second doses if they are out of Moderna.

Dr. Henry said that they expect to get data next week, when they meet with their UK counterparts, on the AZ/Pfizer mix&match study, so expect to be able to give AZ people guidance next week.

Mitigation Measures

Police busted a party in downtown Vancouver and gave 17 people fines of over $11K.

Press Briefing

Today, Premiere Horgan, Minister Dix, Dr. Henry and Minister Kallom(?) presented the province’s restart plan (slides here). They — especially Dix and Henry — looked really really relieved and happy.

Step 1: May 25, requiring 60% of adults to be vaxed with at least 1 dose, cases and hospitalizations stable:

  • Maximum of five visitors or one household allowed for indoor personal gatherings
  • Maximum of 10 people for outdoor personal gatherings
  • Maximum of 10 people for seated indoor organized gatherings with safety protocols (and they need to be the from the SAME 10 people bubble every time)
  • Maximum of 50 people for seated outdoor organized gatherings with safety protocols (so no dancing)
  • Recreational travel only within travel region (travel restrictions extended, including enforcement measures)
  • Indoor and outdoor dining for up to six people with safety protocols
  • Resume outdoor sports (games) with no spectators (but no travel), low-intensity fitness with safety protocols
  • Start gradual return to workplaces
  • Province-wide mask mandate, business safety protocols and physical distancing measures remain in place
  • Return of indoor in-person faith-based gatherings (reduced capacity) based on consultation with public health

Step 2: Mid-June (June 15 – earliest date), requiring 65% of adults to be vaxed with at least 1 dose, cases and hospitalizations declining:

  • Maximum of 50 people for outdoor social gatherings
  • Maximum of 50 people for seated indoor organized gatherings (banquet halls, movie theatres, live theatre) with safety protocols
  • Consultation process to prepare for larger indoor and outdoor gatherings with safety protocols
  • No B.C. travel restrictions – check local travel advisories
  • Indoor sports (games) and high-intensity fitness with safety protocols
  • Spectators for outdoor sports (50 maximum)
  • Provincewide mask mandate, business safety protocols and physical distancing measures remain in place

Step 3: Early July (July 1 – earliest date), requiring 70% vaxed with at least 1 dose, cases low and hospitalizations declining:

  • Provincial state of emergency and public health emergency lifted
  • Returning to usual for indoor and outdoor personal gatherings
  • Increased capacity for indoor and outdoor organized gatherings, with safety plans
  • Nightclubs and casinos reopen with capacity limits and safety plans
  • New public health and workplace guidance around personal protective equipment, physical distancing and business protocols

Step 4: Early September (Sept. 7 – earliest date), requiring 70% vaxed with at least 1 dose, cases low and stable (with confined clisters) and hospitalizations low:

  • Returning to normal social contact
  • Increased capacity at larger organized gatherings
  • No limits on indoor and outdoor spectators at sports
  • Businesses operating with new safety plans

Other things that came up during Q&A which I haven’t already mentioned:

  • 44% of 12-17 year olds have registered already.
  • Someone questioned the safety of indoor dining (compared to travel) and Dr.H mentioned that many of the restaurant workers are now immunized.
  • Dix repeated that we are supply limited on the vax, that we can give it out faster than we are getting it.
  • Someone asked about international travel, and they said very firmly that international travel was a federal issue.

I will also say that Dix and Henry both exuded relief and happiness.

Statistics

289 cases, +1 death, +40,563 first doses, +1,436 second doses.

Currently 301 in hospital / 93 in ICU, 3,782 active cases, 137,062 recovered.

We have 572,073 doses in fridges; we’ll use it in 11.1 days at last week’s rate. We’ve given more doses than we’d received by 8 days ago.

We have 444,156 mRNA doses in fridges; we’ll use it in 8.6 days at last week’s rate. We’ve given more doses than we’d received by 7 days ago.

Charts

27 May 03:12

Ich wünsche mir Webmentions zu deinem Bloggeburtstag

by Ton Zijlstra

Herzlichen Glückwunsch zum 16. Geburtstag deines Blogs, Dirk!
Du hast dabei auch den Wunsch erwähnt wieder mehr Pingbacks und Trackbacks zu verwenden, damit Blogger sich wieder leichter vernetzen in guter alter Blogtradition.

Seit einigen Jahren verwende ich Webmention. Ping- und Trackbacks sind sehr empfindlich für Spam (und mein Hoster blockiert daher das xmlrpc Endpoint in meinem WordPress Blog), und Webmention viel weniger. Webmention kontrolliert selbst ob eine Seite deine Seite tatsächlich erwähnt, und wie. Webmention funktioniert auch mit statischen Websites, obwohl das natürlich immer mehr Getue ist als man vorher denkt.

Für mich sind die distribuierte Gespräche die Blogs, Trackbacks und Webmentions möglich machen sehr wichtig. Als ich 2002 mit meinem Blog anfing war das auch das beste unerwartete Resultat, plötzlich fand ich mich in einem ständig wachsenden Netzwerk von Peers, von denen ich mit vielen noch immer in Kontakt stehe.


machine translation into English
27 May 03:12

Running Arbitrary Startup Scripts in Docker Containers

by Tony Hirst

From October 2021, we’re hopefully going to be able to start offering students on several modules access to virtualised computing enviornments launched from a JupyterHub server.

Architecturally, the computing environments provided to students are ephemeral, created on demand for a particular student study session, and destroyed at the end of it.

So students don’t lose their work, each student will be allocated a generous block persistent file storage which will be shared into each computer environment when it is requested.

One of the issues we face is how to “seed” various environments. This might include sharing of Jupyter notebooks containing teaching materials, but it might also include sharing pre-seeded database content.

One architectural model we looked at was using docker compose to support the launching of a set of interconnected services, each running in its own container and with its own persistent storage volume. So for example, a student environment might contain a Jupyter notebook server in one container connected to a Postgres database server in another container, each sharing data into its own persistent storage volume.

Another possibility was to launch a single container running multiple services (for example, a Jupyter notebook server and a postgres database server) and mount a separate volume for each user against each service (for example, a notebook storage volume, a database storage volume).

However, my understanding of how JupyterHub on Kubernetes works (which we need for scaleability) is that only a single user storage volume can be mounted against a launched environment. Which means we need to persist everything (potentially for several courses running different environments) in a single per-user storage volume. (If my understanding is incorrect, please let me know what the fix is via the comments, or otherwise.)

For our TM351 Data Management and Analysis module, we need to ship a couple of prepopulated databases as well as a Jupyter server proxied Open Refine server; students then add notebooks distributed by other means. For TM129 Robotics block, the notebook distribution is baked into the container.

In the first case, we need to be able to copy the original seeded database files into persistent storage, which the students will then be able to update as required. In the second case, we need to be able to copy or move the distributed files into the shared persistent storage volume so any changes to them aren’t lost when the ephemeral computing environment is destroyed.

The solution I’ve come up with is to support the running of arbitrary scripts when a container is started. These scripts can then do things like copy stashed files into the shared persistent storage volume. It’s trivial to make first run / run once functions that set a flag in the persistent storage volume that can be tested for: if the flag isn’t there, run a particular function. If it isn’t, don’t run the function. Or vice versa.

But of course, the solution isn’t really mine… It’s a wholesale crib of the approach used in repo2docker.

Looking at the repo2docker build files, I notice the lines:

# Add start script
{% if start_script is not none -%}
RUN chmod +x "{{ start_script }}"
ENV R2D_ENTRYPOINT "{{ start_script }}"
{% endif -%}

# Add entrypoint
ENV PYTHONUNBUFFERED=1
COPY /python3-login /usr/local/bin/python3-login
COPY /repo2docker-entrypoint /usr/local/bin/repo2docker-entrypoint
ENTRYPOINT ["/usr/local/bin/repo2docker-entrypoint"]
# Specify the default command to run
CMD ["jupyter", "notebook", "--ip", "0.0.0.0"]

An answer on Stack Overflow shows how ENTRYPOINT and CMD work together in a Dockerfile (which was new to me):

So… if we pinch the repo2docker-entrypoint script, we can trivially add our own start scripts

I also note that the official Postgres and Mongodb repos allow users to pop config scripts into a /docker-entrypoint-initdb.d/ that can be used to seed a database on first run of the container uisng routines in their own entrypoint files (for example, Postgres entrypoint, Mongo entrypoint). This raises the interesting possiblity that we might be able to reuse those entrypoint scripts as is or with only minor modification to help seed the databases.

There’s another issue here: should we create the seeded database files as part of the image build and then copy over the database files and reset the path to those files duitng container start / first run; or should we seed the database from the raw init-db files and raw data on first run? What are the pros and cons in each case?

Here’s an example of the Dockerfile I use to install and seed PostgreSQL and MongoDB databases, as well as a a jupyter-server-proxied Open Refine server:

#Dockerfile

# Get database seeding files
COPY ./init_db ./

########## Setup Postgres ##########
# Install the latest version of PostgreSQL.
RUN apt update && apt-get install -y postgresql && apt-get clean
RUN PG_DB_DIR=/var/db/data/postgres && mkdir -p $PG_DB_DIR

# Set up credentials
ENV POSTGRES_USER=postgres
ENV POSTGRES_PASSWORD=postgres
#ENV POSTGRES_DB=my_database_name
ARG PGDATA=${PGDATA}:-${PG_DB_DIR} && \
    if [ ! -d "$PGDATA" ]; then initdb -D "$PGDATA" --auth-host=md5 --encoding=UTF8 ; fi && \
    pg_ctl -D "$PGDATA" -l "$PGDATA/pg.log" start

#  Check is server is readey: pg_isready

# Seed postgres database
USER postgres
RUN service postgresql restart && psql postgres -f ./init_db_seed/postgres/init_db.sql && \
   ./init_db_seed/postgres/init_db.sh  
    #Put an equivalent of the above in a config file: init_db.sql
    #psql -U postgres postgres -f init_db.sql
    #psql test < seed_db.sql
    #pg_ctl -D "$PGDATA" -l "$PGDATA/pg.log" stop
# if we don't stop it, can bad things happen on shutdown?
 #&& service postgresql stop

USER root
# Give the jovyan user some permissions over the postgres db
RUN usermod -a -G postgres jovyan

########## Setup Mongo ##########

RUN wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
RUN echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
RUN apt-get update && apt-get install -y mongodb-org

# Set up paths
ARG MONGO_DB_PATH=/var/db/data/mongo
ENV MONGO_DB_PATH=${MONGO_DB_PATH}
RUN mkdir -p ${MONGO_DB_PATH}

# Unpack and seed the MongoDB
RUN mkdir -p ./tmpdatafiles && \
    tar xvjf ./init_db_seed/mongo/small_accidents.tar.bz2 -C ./tmpdatafiles  && \
    mongod --fork --logpath /var/log/mongosetup --dbpath ${MONGO_DB_PATH} && \
    mongorestore --drop --db accidents ./tmpdatafiles/small_accidents && \
    rm -rf ./tmpdatafiles && rm -rf ./init_db
#    mongod --shutdown --dbpath ${MONGO_DB_PATH} 



########## Setup OpenRefine ##########
RUN apt-get update && apt-get install -y openjdk-11-jre
ARG OPENREFINE_VERSION=3.4.1
ARG OPENREFINE_PATH=/var/openrefine
ENV PATH="${OPENREFINE_PATH}:${PATH}"
RUN wget -q -O openrefine-${OPENREFINE_VERSION}.tar.gz https://github.com/OpenRefine/OpenRefine/releases/download/${OPENREFINE_VERSION}/openrefine-linux-${OPENREFINE_VERSION}.tar.gz \
        && tar xzf openrefine-${OPENREFINE_VERSION}.tar.gz \
        && mv openrefine-${OPENREFINE_VERSION} $OPENREFINE_PATH \
        && rm openrefine-${OPENREFINE_VERSION}.tar.gz
RUN pip install --no-cache git+https://github.com/innovationOUtside/nb_serverproxy_openrefine.git


########## Setup start procedure ##########

USER $NB_USER
USER root

# Copy over start scripts and handle startup procedure
COPY start /var/startup/start
RUN chmod +x /var/startup/start
ENV R2D_ENTRYPOINT /var/startup/start
COPY repo2docker-entrypoint /usr/local/bin/repo2docker-entrypoint
COPY python3-login /usr/local/bin/python3-login
RUN chmod +x /usr/local/bin/repo2docker-entrypoint
RUN chmod +x /usr/local/bin/python3-login
ENTRYPOINT ["/usr/local/bin/repo2docker-entrypoint", "tini", "-g", "--"]
CMD ["start-notebook.sh"]

What the image does is seed the datbases into known locations.

What I need to do next is fettle the start file to copy (or move) the database storage files into a location inside the mounted storage volume and then reset the database directoy path environment variables before starting the database services, which are currently started in the copied over start file:

#!/bin/bash

service postgresql restart

mongod --fork --logpath /dev/stdout --dbpath ${MONGO_DB_PATH}

# Test dir
#if [ -d "$DIR" ]; then
#fi

# Test file
#if [ -f "$FILE" ]; then
#fi

if [ -d "/var/stash/content" ]; then
    mkdir -p /home/jovyan/content
    cp –r /var/stash/content/* /home/jovyan/content
fi

exec "$@" 
26 May 20:25

Twitter Favorites: [christindal] I am not a Trudeau fan but have these guys gamed out what their criticism of the government will be 2 months from n… https://t.co/vjl96ci5DC

Chris Tindal @christindal
I am not a Trudeau fan but have these guys gamed out what their criticism of the government will be 2 months from n… twitter.com/i/web/status/1…
26 May 20:25

Meet Our Team: Vysakh, Support Agent

by Helen Horstmann-Allen
Meet Our Team: Vysakh, Support Agent

Meet Vysakh, a Fastmail support agent based in India, who writes detailed help pages and solves customer problems.


Fastmail's support team advocates for customers across all time zones. Find out what their day-to-day job looks like when you meet Vysakh, a member of Fastmail's support team.

Name: Vysakh Prakash
Role: Support Agent

What do you work on?
I help customers when they are lost and check user reports to find out if there is a larger issue. I also write help pages.

How long have you been working at Fastmail? How did you get involved?
I've been with Fastmail since July 2017. After college, I learned about Fastmail from Kurian Aerthail, who's also from my locality and has been working here for 20+ years! It was an encouraging sign to know someone who had worked in the company for 20+ years. So, I applied for the opening and haven't looked back!

What’s a project that you've worked on that you're proud of?
Since my early days at Fastmail, I've seen customers struggling with setting up their email on various mail clients. My work on help pages, especially the android mail client ones (they can be challenging to write), is my favorite project I've worked on this past year.

Who is someone that inspires you?
José Mourinho is one person who has always inspired me. His journey from being a translator to one of the greatest football coaches in the world is just unreal!

What’s your favorite Fastmail feature?
Our interface is what I like the most! Fast, easy, and brings joy when using it.

What’s your favorite piece of technology?
My favorite piece of tech is the Samsung Galaxy S8. I believe it is the most beautiful phone ever made. It's also the first piece of tech I bought myself, which makes it even more glamourous.

What music are you listening to these days?
I've been listening to the Malayalam rapper VEDAN. His words are 🔥

What do you like to do outside of work?
I love anything involving wheels on the road. Driving cars, riding motorcycles, and the latest being cycling!

What's your favorite animal?
Cats! My wife has a cat, so I'll get in trouble if I don't say cat.

Any Fastmail staffers you want to brag on?
All of them! They are all so supportive and caring.

What are you proudest of about your work?
In simple words, I enjoy being able to help users and see how happy they are with my help, even if it's a simple issue!

More often than not, I've felt that people have low expectations when contacting support. Personally, when I contact support at other companies, my expectations are pretty low. I'll be surprised if I get my problem solved without explaining the issue many times.

So, in my work, I genuinely try to understand what customers are going through and offer the best solution without dragging the issue on. Seeing them surprised with the quality of support I provide is when I'm most proud.


At Fastmail, we work on making email better for everyone. Building an incredible team is an important part of our company and our values. Check out our job listings for opportunities to join our team!

26 May 20:22

After 14 months of COVID, B.C.'s reopening plan brings plenty of relief and plenty of questions

mkalus shared this story .

Bonnie Henry wasn't the only one with tears of relief on Tuesday. 

"I'm excited and confident that we in B.C. … can see the end of the pandemic," said the province's chief health officer during Tuesday's news conference, where a detailed reopening plan for the next four months was announced

From meeting family and friends indoors, to travelling to different parts of the province, to even something as simple as a hug, activities that have been discouraged for more than six months are back on the table or will be in a matter of weeks.

More than that, after 14 months of people living in constant stress and anxiety of spreading a virus, 14 months of marathon and tunnel metaphors, 14 months of people's lives being impacted in ways big and small, the province signalled that it could come to an end — and soon. 

The emotional outpouring was palpable.

"The light that we've been talking about for weeks and weeks now is at hand," said Premier John Horgan.

But within that declaration were several caveats that all people in this province will need to keep an eye on for some time to come.

Maybe pressing pause but not going backwards

For one, the pandemic isn't over yet: two hours after the province's reopening announcement, it also announced 289 new cases and 301 people in hospital.

Based on everything we've seen in the last six weeks and everything we know about vaccines, it's likely those numbers will continue to go down for at least the next two weeks. 

But while the province said that Stage 3 and 4 of the reopening — when most restrictions will be lifted, including the order on wearing masks indoors — will only happen when case counts are "low," they didn't say what "low" specifically meant. 

And while they acknowledged that case counts could flatline or even rise due to variants or other factors, they showed no real indication that significant provincewide restrictions could be reinstated. 

"We may need to slow down how we go forward … but we're confident that we will continue to be able to move forward," said Henry.

"I don't see a situation where we're going backwards, unless things change very dramatically."

B.C. Provincial Health Officer Dr. Bonnie Henry said the province might need to slow down on its restart plan if new outbreaks or clusters arise, but added, as of May 25, 2021, there are no plans to go backwards. 1:48

'Expect the unexpected' 

In other words, there's a risk involved in Tuesday's announcement, in the same way the entire pandemic has been about risk management in some ways. 

"The province has to draw these fine lines and balance these very tough decisions about when to allow reopening and the economic and social benefits of that and the costs being a risk in another spike in cases," said UBC mathematical biologist Dr. Sarah Otto, a member of the B.C. COVID 19 Modelling Group, a team of researchers from SFU and UBC.

The group has warned of a possible surge in hospitalizations and cases in the past if the province moved too soon. But Otto said the combination of increased vaccinations, declining case counts and the province having metrics on when it will move to the next stage were all positives. 

"We are predicting a little bit of a spike, but likely not major, and I think that's why they've decided to open up a little bit now."

At the same time, there are many people who won't be moving forward for some time, for a variety of reasons.

And after several moments where the province has expressed confidence in its plan, only to be forced to add new restrictions or extend existing ones indefinitely, you can forgive some for being a little anxious, or even angry — particularly if they haven't had a second shot. 

The premier acknowledged that tension himself on Tuesday.

"There are going to be a lot of people who are anxious. There are people that are concerned we may go too fast … we're very confident that we have waited until the appropriate time to lay out a four-step plan to get us back to where we all want to be," he said.

However, in his very next sentence, he said, "if there is anything we've learned from COVID-19, it's to expect the unexpected." 

In other words, the province will have to live with a level of doubt and uncertainty for some time yet, even if people are encouraged to gather with family inside or visit a restaurant. 

Today though, at least from the government, was a story about finally being able to breathe a little easier. 

"If we move through these steps in a thoughtful way, following the data, making sure the science directs us, I think we can get to a better place faster," said Horgan. 

"This is a fantastic day to be in British Columbia." 

26 May 20:21

Coffee Chronicles - Bonus

by Michael Kalus
mkalus shared this story from Michael Kalus.ca.

Coffee Chronicles - Bonus

Rook Coffee Website

The Beans

Coffee Chronicles - Bonus

They are quite a bit larger than most of the beans in the other tastings. Also much lighter. To be fair I do not know when they were roasted and they are probably "old" by coffee connoisseur standards. They are definitely a darker roast than most of what I had this month and the slight oily sheen bears witness to this.

Brewing Method AeroPress

I am following James Hoffman's "The Ultimate AeroPress Technique". 11 grams of coffee and 200 grams of water. Steep 2 minutes, then swirl and let settle for 30 seconds before fully pressing it through.

Coffee Chronicles - Bonus

On the "first whiff" I am getting some dark chocolate notes. A bit of a surprise considering the lack of any aroma over the last week.

The first sip also drives this home, together with the smokiness from the dark roast. A huge difference from the medium / light roasts I had all this month.

As it cools down the smokiness becomes a bit more apparent, interestingly enough though without the bitterness I normally associate with dark roasts.

Rating: 4.5/5

Brewing Method Chemex with Metal Filter

Coffee Chronicles - Bonus

This is good too. It's a bit more full bodied and "chewier" than the AeroPress version but still a very nice one. On par with the AeroPress version. Slightly more smokiness.

Rating: 4.5/5

Coffee Chronicles - Bonus
26 May 20:17

Coffee, Cars, Congestion and Why This Matters

by Sandy James Planner

 

With climate change industries invested in making, brewing and selling coffee are realizing that the old coffee workhorse, Coffee Arabica may not be able to survive. Coffee Arabica is grown in high elevations above 1,500 meters in cool tropic forest. Making up 70 percent of all coffee sold in the world, Coffee Arabica is a victim of a changing climate making those conditions hard to find, maintain and duplicate. Which of course means no coffee.

Thankfully as this article in the National Post by Laura Brehaut  states botanists have found a solution with Coffee Stenophylla, a coffee that is grown at low-elevations and likes hot tropical forests such as in West Africa. The best part is “it tastes like high-quality Arabica, and could hold promise for the future of the coffee industry”.

The coffee industry in Canada is worth 6.2 billion dollars annually, and having a new coffee that works in a changing climate can keep the industry afloat.

The same dynamic applies to the automobile industry, which in Canada is worth 98 billion dollars annually.

The new coffee species for the automotive industry looks alot like the past, which pleases vehicle manufacturers greatly. With the requirement to have all new vehicles in Canada as electric by 2040, the Ford Motor Company simply found a way to take one of their best selling vehicles, the Ford F-150 pick up, and plonk an electric battery into it.  By offering a game changing low price of  just over $41,000, Ford hopes to compete directly for the electric market by using a similar big truck platform and just changing the juice that moves it.

There are breathless accolades of achievement being showered on Ford for “thinking out of the box”. But when you look at it, it’s the same old box with a different type of battery, and will still contribute to congestion and pedestrian fatalities (due to its size and blind spots.) The price means that it is an approachable option for many people, and the fact it is a Ford F-150 means that there is already a market for what is the same thing that people were driving before climate change and air pollution suggested a major shift.

Of course the auto industry is much bigger than the coffee industry, but both products mean that the industries do not need to substantially change, just remarket a similar product.

You still can’t drive your way out of congestion, but you can sell a “greener” product so you feel like you are doing something for the planet. Even though you are not. And how popular is the Ford F150 electric? In 48 hours, there were 45,000 presale orders for the 2022 release.

Take a look at the YouTube video below advertising Ford’s truck where the big feature is  the “frunk” a “walk in closet you can drive ” that can carry 400 pounds.

You just can’t make this stuff up.

 

25 May 19:15

2021-05-24 General

by Ducky

Diagnostics

Dear Readers, go get yourself a pulse oximeter. A study showed that frequently people with COVID wait until they are short of breath to go to hospital. Unfortunately, with COVID, frequently you feel like you can breathe fine, but your blood oxygen actually is quite low. If your pulse oximeter is reading low and you are breathing fast, GO GO GO to the hospital right away. (I hope that public health delivers a pulse oximeter to people who test positive, but I bet they don’t…)

Origins

This article talks about why we still don’t know where SARS-CoV-2 came from. Spoiler: it’s a difficult problem.

SARS-CoV-2 structure

Over a million people donated computer time to folding@home and came up with some very detailed models of SARS-CoV-2, which should really help in developing therapeutics. Go humans!


Oh crap, they have found some antibodies to SARS-CoV-2 which actually make it easier for the SARS-CoV-2 spike to dock, making it more infectious. Maybe this isn’t an awful problem, because everybody who makes antibodies will make a lot of different antibodies, and it’s only a few specific antibodies which enhance infectivity — if there are more good antibodies than bad antibodies in a person, then it looks like they will be okay.

Vaccines

Note: I have a discussion of vaccines/R/mitigation measures in today’s BC post. It is highly applicable to General post (I almost put it here) but there are a few BC-specific things in it.


I think I’ve said this before, but I’ll say it again more bluntly: there are people out there who vaccines don’t work for (e.g. solid organ transplant recipients). This preprint says some T-cell immunity is detectable, but I don’t think anybody knows exactly how much use T-cells are without B-cells. It is important for all of us who can get a shot to do so for the people who can’t.

There are also people who don’t get much protection from one shot, but do from two (e.g. some cancer patients).


This preprint says that the GCG vaccine — a live attenuated virus vaccine against tuberculosis — gives protection with 32% efficacy against COVID-19.

  1. 32% isn’t great, but it sure is better than zero.
  2. Maybe this is another example of live attenuated virus stimulating the innate immune system, like I talked about last week?

SciComm

This essay argues that the US CDC’s releasing vaccinated people from almost all mitigation measures (most importantly, masks) is a good thing. Basically, it argues that the unvaccinated pose little risk to the vaccinated and vice-versa; really the only significant risk comes from the unvaccinated to the unvaccinated, and thus the unvaccinated ought to be allowed to make their own choices. They think the rights of the vaccinated outweigh the rights of the immunocompromised and children.

I disagree.

  • I pay for the hospital stays of the unvaccinated.
  • I don’t want kids and immunocompromised to get sick.
  • The vaccines are not perfect, and the vaccinated are at risk from the unvaccinated. (Say it with me: you are safer being unvaccinated in New Zealand than vaccinated in India.)
25 May 19:14

Weeknotes: Spinning back up on Datasette

Rolandt

`j`

I've been somewhat distracted from Datasette for the past couple of months, thanks to my work on VIAL and the accompanying open source project django-sql-dashboard. This week I scraped back some time to work on Datasette.

?_facet_size=100

This was a feature suggestion by Marjorie Roswell. Datasette defaults to showing a maximum of 30 results for a requested facet, which can be inconvenient if you are faceting on something like U.S. states where you'd ideally like to see all 50 at once.

You can customize this with the default_facet_size setting, but now you can also customize it for a specific page using the new ?_facet_size=100 query string parameter. You can request up to max_returned_rows results, which defaults to 1000.

You can try this feature out, along with a bunch of dependency upgrades and a minor bug fix, in the new 0.57a0 alpha release.

apt-get install now works in the Docker container

The datasetteproj/datasette Docker container had a bug in it where it was not possible to use apt-get install to add extra packages to containers that used it as a base - a problem if you want to use a plugin such as datasette-ripgrep which depends on ripgrep being available.

Brandon Roberts pointed this out along with a suggested fix, which I've adopted and will become available after the next non-alpha Datasette release.

Show/hide columns

I'm developing this in a branch at the moment, but I'm finally getting close to a fix for issue #615 (opened in November 2019) that will let the Datasette table view show and hide specific columns, using new ?_col= and ?_nocol= query string arguments. Here's an animated demo of my work so far:

Animation showing a new option to hide columns in the cog menu

Releases this week

TIL this week

25 May 19:14

Protomaps – Self Hosted Maps and Map Tiles

by Thejesh GN

It's tough to self-host the maps for Indie users. We usually host the wrapper and styles but end up using third-party tile providers. Even though there are good FOSS options for that, it's still cumbersome if you are Indie. But Protomaps makes it easy.

Protomaps is a tiled vector basemap system for the web: a renderer, a cloud-optimized geodata format, a hosted API and an open source spatial database, all designed together as an integrated system. This makes it the fastest, simplest way to power your site with sharp maps based on open data.

Protomaps

If I am making a map of a small park in my neighborhood. I don't need the tile server or the data for the entire world or city. Instead, I need the data for the park and maybe some area around it. Protomaps makes it easy to download that base map data using their service. The map data is in the PMTiles format. PMTiles is a new FOSS tile-data format. It's a single file (like SQLite) and can be hosted on any server that serves static files and supports HTTP Range requests. This means you can serve the tile data from AWS S3 or your own Nginx.

pmtiles.js is the corresponding javascript library to read the PMTiles data file and serve the tiles in the browser. It can work with Leaflet. So in Leaflet, it's just a layer. This is the best feature because almost everyone uses Leaflet already.

<pre class="wp-block-syntaxhighlighter-code">const map = L.map('map')

const p = new protomaps.PMTiles("https://lib.thejeshgn.com/lib_files/protomaps/richards_park_2021.pmtiles")

p.metadata().then(m => {
    let bounds_str = m.bounds.split(',')
    layer = new protomaps.LeafletLayer({url:p, attribution:'© <a href="https://openstreetmap.org">OpenStreetMap</a> contributors'})
    layer.addTo(map)
    map.setView(<sup class='footnote'><a href='#fn-20123-1' id='fnref-20123-1' onclick='return fdfootnote_show(20123)'>1</a></sup>, 19)
}) 
</pre>

Below I have the demo, which is serving just the standard styled tiles using Protomaps. You can add more layers of information if required using leaflet.

The map is of Richard's Park of Neighborhood. It's probably an area of 2 Sq Kilometer. The size of the map file 1.1 MB. Very efficient. This is going to amazing for self contained map apps.


You can subscribe to my blog using RSS Feed. But if you are the person who loves getting email, then you can join my readers by signing up.

Join 2,116 other subscribers

Email Address

Sign Me Up

  1. 0040513,77.6172144
The post Protomaps – Self Hosted Maps and Map Tiles first appeared on Thejesh GN.
25 May 19:13

Vaccination appointments made now that my year ...

by Ton Zijlstra

Vaccination appointments made now that my year cohort has come up, the first jab in two weeks, the second a month after that. That works out well for our as yet very tentative plans for the summer.



This is a RSS only posting for regular readers. Not secret, just unlisted. Comments / webmention / pingback all ok.
Read more about RSS Club
25 May 19:12

Creating and Using Rubrics for Assessment

University of Wisconsin, May 25, 2021
Icon

This is a useful resource worth sharing from the University of Wisconsin. It's a collection of dozens of rubrics providing guidelines for assessing everything from e-portfolios to video projects to research process. Via Educational Technology and Mobile Learning, which comments, "You can use these resources to help you organize your video conferences and assess their effectivity as learning tools. They evaluate areas related to the organization of talking time, interruptions, technical problems, speaking skills, visual aids and many more."

Web: [Direct Link] [This Post]
25 May 19:12

A16z is betting $20 million on Maven, an ed tech and creator economy mashup

Penelope Blackwell, Protocol, May 25, 2021
Icon

Udemy founder Gagan Biyani founded has launched a new company, Maven, which is focused on cohort-based learning. It's a natural sep forward from Udemy, which was based on self-paced learning in courses that were (to my experience anyway) long-abandoned by their creators. In Maven, "the students join and move through content at the same pace, but much of the learning happens peer-to-peer as the students share their experiences over the web." It's hard not to be surprised at the naivety of the funders. "The team at Maven is on to something huge with cohort-based courses," said a general partner at Andreessen Horowitz. Really? I can't imagine cohort-based courses haven't been tried until now! Imagine what they'll think of other innovations, like limiting access and charging high tuition! Via Daniel Christian.

Web: [Direct Link] [This Post]
25 May 19:12

WritingHTML: An Open Online “course” (or not?) Launched in 1994

Alan Levine, CogDogBlog, May 25, 2021
Icon

"It was never really a 'course'," writes Alan Levine, "but it was a series of lessons, offered freely and openly online, that many people used, others remixed or added to it, and mostly, I was able to 'teach' people I never met, knew, or knew I was teaching." To me, that makes it a course, and marks it as one of the earliest open online courses on the internet (at the same time I was working on MUDs and wouldn't start on the web until 1995).

Web: [Direct Link] [This Post]
25 May 19:11

A conversation with Architect Douglas Cardinal, Architect of The Future

by Sandy James Planner

 

Engineers Canada and the Canadian Urban Institute present a free webinar, “Douglas Cardinal: Architect of the Future”.

This is a rare opportunity to join into an intimate conversation with world renowned architect, Douglas Cardinal.

The event will open with a screening of the 30-minute documentary and move to a conversation led by interviewer Randy Herrmann, Director of the Engineering Access Program (ENGAP) at the University of Manitoba.

The film reveals how Mr. Cardinal’s Anishinaabe culture and Indigenous worldview fuel his creative genius. Written by his wife, Idoia and produced by Douglas Cardinal, the film features his friend, world-renowned artist, Alex Janvier and their pledge to change Canada’s colonialism through their art.

For a sneak peek, visit: https://vimeo.com/273514390

Date: Thursday June 3

Time: 9:00 a.m. to 10:15 a.m. Pacific Time

You can register by clicking on this link.

Here is an older TEDX presentation by Mr. Cardinal discussing indigenous design principles and the importance of  connecting elder knowledge to the future from the past.

image:stirworld.com

 

25 May 19:10

App Store Arguments

by Ben Thompson

Arguments in Epic Games, Inc. v. Apple Inc. wrapped up yesterday; Judge Yvonne Gonzales Rogers noted she had thousands of documents to pore over, but hoped to issue a decision within the next few months. I think there is a strong chance that Apple prevails, for reasons I’ll explain below, but that doesn’t mean the trial has been waste of time: it has cast into stark relief the different arguments that pertain to the App Store, and not all of them have to do with the law.

The Legal Argument

Apple came into the trial with a strong hand rooted in Supreme Court precedent.1

First, while it is possible to define the App Store for iPhones as a distinct aftermarket (see Kodak v. Image Technical Services), appellate courts have significantly narrowed that decision to limit its application to situations where the company selling the product that leads to an aftermarket is only barred from changing the rules after-the-fact to foreclose competition in the aftermarket; if the rules foreclosing competition are consistent, however, then there is no harm, because customers know what they are getting into. In the case of the iPhone, this means that Apple can control the market for iPhone apps, because customers already know that Apple controls the App market; if they don’t like it they can buy a different phone. This is why Apple spent time in the trial establishing that its control of the App Store was in fact a selling point of the iPhone, and a reason why customers chose to enter iOS’s more restrictive ecosystem.

Second, Apple also made the case that there is a competitive market for developers. This was an especially effective line of reasoning with regard to Fortnite, which makes more money from other platforms than it does from iOS; moreover, those platforms have rules that are similar to iOS, including exclusive payment platforms, no-steering provisions, and 30% commissions.

The most important case for Apple’s defense, though, is 2004’s Verizon v. Trinko, which established and/or reiterated several important precedents that support Apple’s position, even if Apple were held to be a monopolist.

First, a monopolist has a right to monetize its intellectual property; the opinion states:

The mere possession of monopoly power, and the concomitant charging of monopoly prices, is not only not unlawful; it is an important element of the free-market system. The opportunity to charge monopoly prices — at least for a short period — is what attracts “business acumen” in the first place; it induces risk taking that produces innovation and economic growth. To safeguard the incentive to innovate, the possession of monopoly power will not be found unlawful unless it is accompanied by an element of anticompetitive conduct.

This is why CEO Tim Cook in his testimony kept insisting that Apple had a right to monetize its intellectual property, and why the company has emphasized the cost of not simply running the App Store but also in developing APIs and developer tooling.2

Second, a monopolist has no duty to deal with any other company; the opinion states:

Firms may acquire monopoly power by establishing an infrastructure that renders them uniquely suited to serve their customers. Compelling such firms to share the source of their advantage is in some tension with the underlying purpose of antitrust law, since it may lessen the incentive for the monopolist, the rival, or both to invest in those economically beneficial facilities. Enforced sharing also requires antitrust courts to act as central planners, identifying the proper price, quantity, and other terms of dealing — a role for which they are ill suited. Moreover, compelling negotiation between competitors may facilitate the supreme evil of antitrust: collusion. Thus, as a general matter, the Sherman Act “does not restrict the long recognized right of [a] trader or manufacturer engaged in an entirely private business, freely to exercise his own independent discretion as to parties with whom he will deal.”

What this means for this case is that Apple has no duty to provide access to those APIs and development tools to companies that do not abide by its terms. There is a very limited exception to this provision (see Aspen Skiing v. Aspen Highlands Skiing), but like Kodak, it only applies to situations where the monopolist changes the rules; Epic, on the other hand, has always operated under the same set of in-app purchase rules.3

Third, the Court stressed that judges should carefully weigh the costs of enforcement with the benefits of an injunction:

Against the slight benefits of antitrust intervention here, we must weigh a realistic assessment of its costs. Under the best of circumstances, applying the requirements of §2 “can be difficult” because “the means of illicit exclusion, like the means of legitimate competition, are myriad”…Mistaken inferences and the resulting false condemnations “are especially costly, because they chill the very conduct the antitrust laws are designed to protect.” The cost of false positives counsels against an undue expansion of §2 liability. One false-positive risk is that an incumbent LEC’s failure to provide a service with sufficient alacrity might have nothing to do with exclusion. Allegations of violations of §251(c)(3) duties are difficult for antitrust courts to evaluate, not only because they are highly technical, but also because they are likely to be extremely numerous, given the incessant, complex, and constantly changing interaction of competitive and incumbent LECs implementing the sharing and interconnection obligations. Amici States have filed a brief asserting that competitive LECs are threatened with “death by a thousand cuts,” the identification of which would surely be a daunting task for a generalist antitrust court. Judicial oversight under the Sherman Act would seem destined to distort investment and lead to a new layer of interminable litigation, atop the variety of litigation routes already available to and actively pursued by competitive
LECs.

All of that mumbo-jumbo in the second part of that paragraph is referring to the specifics of the 1996 Communications Act and the complexities of Verizon’s obligations as a local exchange carrier (LEC). In another sense, though, the mumbo-jumbo is the point: the Court’s argument is that judges are ill-equipped to understand technical specifics and weigh important trade-offs, particularly absent any egregious anti-competitive behavior (as defined by the Court).

The Pragmatic Argument

This matters because the reality is that the App Store is complicated. One of the arguments that Epic raised in the case is that there are scams in the App Store; Epic’s argument is that effectiveness-at-rooting-out-scams should be a plane of competition, while Apple pushed out a post arguing that the App Store in fact stopped many more scams than it allowed, and that the fact there is only one way to get apps on your phone is a feature, not a bug.

As John Gruber noted, the sudden appearance of this post suggested that Apple felt it was losing the PR war:

There’s nothing curious about the timing of this post — it’s in response to some embarrassing stories about fraud apps in the App Store, revealed through discovery in the Epic v. Apple trial, and through the news in recent weeks. The fact that Apple would post this now is pretty telling — to me at least — about how they see the trial going. I think Apple clearly sees itself on solid ground legally, and their biggest concern is this relatively minor public relations issue around scam apps continuing to slip through the App Store reviewing process.

Another reason to think this is true is that I actually think that Apple underplayed their case: there are a whole category of transactions that are not explicit scams of the types documented in that post, but which are clearly designed to remove customers from their money as efficiently as possible. Now Apple’s incentives here are not pure: the company does make 30% of these purchases. But Epic is compromised as well, particularly once you realize that most of these problematic apps are games.

I’m not, to be clear, arguing that Fortnite is a problem; I’m sure Epic would be the first to say that they have a reputation to uphold — as, of course, would Apple. Not all developers, though, would be so scrupulous, and a world where any app could collect credit card information directly is one where it seems more likely than not that consumers will find themselves losing much more money than they anticipated, with no obvious recourse to get it back or make it stop.

This is where the malware discussion in the trial was relevant; Apple argued that iOS had less of it, while Epic attributed that to iOS’s sandbox architecture that keeps apps isolated from each other. The other malware takeaway, though, is the fact that it massively suppressed the market for third-party applications on Windows. Consumers didn’t suddenly get smart about apps, thanks to the pressure of competition; they simply stopped downloading and installing apps at all. One of the great triumphs of the App Store is the fact that it made consumers feel safe and secure about installing apps, dramatically expanding the market for developers — including Epic.

At the same time, there is a practical cost to Apple’s approach: there are entire classes of apps that for all practical purposes can’t exist on the iPhone, particularly those that entail paying licensing fees to 3rd parties on a percentage-of-total-sales basis. Apple, in one of the more damning emails to emerge over the last year, admitted as such:

Steve Jobs stating that iBooks will be the only viable bookstore on the iPhone

This does, I would note, put Apple’s antitrust conviction in the ebooks case in considerably more dubious light: Apple was trying to shift the industry away from a wholesale model to an agency model, which is the exact sort of model that doesn’t work with the App Store. That the company was offering its own alternative — iBooks — makes it worse, just as the introduction of Apple Music made the application of App Store rules to Spotify particularly problematic.

What is also worth acknowledging, though, are the kinds of businesses that never get off the ground. During the pandemic, for example, Apple originally sought to take a cut of person-to-person businesses like counselors and trainers; the company did change the rules to allow one-to-one interactions to be paid for via an alternative payment method, but still demands a cut of one-to-many offerings like classes. There is also the impact on the burgeoning creator economy; I tweeted over the weekend:

Ben's tweet about how little a creator makes with Twitter's new ticket feature

In this world you don’t need 1,000 true fans to make a living; you need 1,786 — 536 fans to pay Apple, 253 fans to pay Twitter, and only then the 1,000 that make it possible to create something new. It is inevitable that some number of businesses never get started, because of this deadweight loss.

The Duopoly Argument

That tweet, I will admit, wasn’t entirely fair. While I noted that Twitter earned its cut by creating a market where one did not previously exist, the same argument can absolutely be made about Apple. As I noted above, Apple not only created the iPhone, it also created a willingness to download and experiment and pay that vastly expanded the market for developers. If Twitter deserves a cut, why not Apple? But then again, how far does it go?

Ben asking why AT&T and Verizon shouldn't get 30%

Where does the “made something previously impossible possible” chain of causation and entitlement end? With the phone? With carriers? With TSMC? Obviously Apple believes it ends with the iPhone, but it’s worth exploring why that isn’t simply a wish but a reality; after all, the carriers actually did take a share of all transactions on their networks 14 years ago. The company that changed the status quo was Apple; I explained How Apple Creates Leverage in 2014:

While Apple in 2006 (in the runup to the iPhone) was in a much stronger position than 2003, they were still much smaller ($60.6 billion market cap) than AT&T ($102.3 billion) or Verizon ($93.8 billion) on an individual basis, much less the carrier industry as a whole. More importantly, carriers weren’t facing a collective existential threat like piracy, which significantly increased their BATNA [Best Alternative to a Negotiated Agreement] relative to the music labels.

The music labels, though, benefitted from a relatively low elasticity of substitution: if I wanted one particular band that wasn’t on the iTunes Music Store, I wouldn’t be easily satisfied by the fact another band happened to be available. The carriers, on the other hand, largely offered the same service: voice, SMS, and data, all of which was interoperable. This increased elasticity of substitution gave Apple an opportunity to pursue a divide-and-conquer strategy: they just needed one carrier.

Apple reportedly started iPhone negotiations with Verizon, but it turned out that Verizon was already kicking AT&T’s (then Cingular’s) butt through aggressive investment and technology choices, resulting in increasing subscriber numbers largely at AT&T’s expense. Verizon saw no need to change their strategy, which included strong branding and total control over the experience on phones on their network. AT&T, meanwhile, was on the opposite side of the coin: they were losing, and that in turn had a significant effect on their BATNA – they were a lot more willing to compromise when it came to branding and the user experience, and so the iPhone launched on AT&T to Apple’s specifications.

That is when Apple’s user experience advantage and corresponding customer loyalty took over: for the first time ever customers were willing to endure the hassle and expense of changing phone carriers just so they could have access to a specific device. Over the next several years Verizon began to bleed customers to AT&T even though their service levels were not only better, but actually widening the gap thanks to the iPhone’s impact on AT&T. Four years after launch the iPhone did finally arrive on Verizon with the same lack of carrier branding and control over the user experience; in other words, Verizon eventually accepted the exact same deal they rejected in 2006 because the loyalty of Apple customers gave them no choice.

Apple followed the same playbook in country after country: insistence on total control (and over time, significant marketing investments and a guaranteed number of units sold) with a willingness to launch on second or third-place carriers if necessary. Probably the starkest example of the success of this strategy was in Japan. Softbank was in a distant third place in the Japanese market when they began selling the iPhone in 2008; finally after four years second-place KDDI added the iPhone, but only after Softbank had increased its subscriber base from 19 million to 30 million. NTT DoCoMo, long the dominant carrier and a pioneer in carrier-branded services finally caved last year after seeing its share of the market slide from 52% in 2008 to 46%.

Forgive the long excerpt, but the specifics of what happened between Apple and the carriers is essential to understanding what makes the App Store question so challenging. What is critical to note is that Apple was able to break the carrier’s hold on what happened on their networks because competition (1) existed at the carrier level and (2) occurred in multiple markets. That meant that Apple had a place to leverage its ability to make something better.

The App Store market, on the other hand, is a worldwide duopoly, which dramatically reduces the point of leverage for any one app. Suppose Twitter wanted to push back on Apple’s policies, and go exclusively to Android; that would entail giving up around 20% of the market worldwide, and about 50% of the market in the U.S. It’s simply not viable to do a divide-and-conquer approach when there are only two alternatives in a worldwide market. That is why Apple and Google mostly copy each other’s policies, comfortable in the knowledge that no one app really matters.

I suppose Twitter could make its own phone, just as Apple could have built its own phone carrier, but given the essentialness of an App ecosystem, the former is actually a far more intractable challenge than the latter. One app may not matter to an ecosystem, but as a collective nothing matters more.

The Moral Argument

This gets at the part of this case that is, to be perfectly honest, kind of infuriating. Back in 2009 Apple came up with a memorable campaign for the iPhone:

I admit it — the first tweet above was wrong. Apple absolutely did a tremendous amount for developers. It invented the iPhone, it brought the concept of an App Store to the mass market, and it has iterated on both. And yes, it spends a lot of money on APIs and developer tools.

What the company no longer admits, though, is that developers did a lot for Apple too. They made the iPhone far more powerful and useful than Apple ever would have on its own, they pushed the limits on performance so that customers had reasons to upgrade, and even when Android came along iPhone developers never abandoned the platform. Sure, they had good economic reasons for their actions, but that’s the point: Apple had good economic reasons for building out all of those APIs and developer tools as well.

Apple said as much when the App Store first launched; Steve Jobs said in 2008 that “Our purpose in the App Store is to add value to the iPhone”, even as he admitted that “the App Store is much larger than we ever imagined.” When Apple introduced the iPhone SDK Jobs had analogized the company’s 70/30 split to iTunes, but it was already clear a few months later that the opportunity was far larger than music.

This worried longtime Apple executive Phil Schiller; in one of the most striking emails to emerge from the trial, he suggested that Apple might consider voluntarily capping its App Store profit to $1 billion, which was far more than the break-even amount Jobs hoped for at launch.

Slide from Apple v Epic

Schiller argued that Apple ought to make such a move from “a position of strength rather than weakness”; one can certainly make the argument that he was gravely mistaken, given that Apple makes somewhere in the neighborhood of $15 billion from the App Store, and that, for all of the reasons I just explained, is as secure in its competitive position as it has ever been.

And yet, it’s worth remembering that Apple did $294 billion in sales last year; the App Store is not and never will be its main business. Is it strong to continue to tarnish the customer experience with popular apps, its reputation with developers, and provoke criticism from Congress simply because it can? How much might it have been worth to remember that while Apple will always have the leverage with individual developers, developers as a collective — along with creators and authors and musicians and everyone else who wants to build a business on the iPhone — are exactly what makes the iPhone so compelling?

The Anti-Steering Argument

The argument that Judge Gonzales Rogers seemed the most interested in pursuing was one that Epic de-emphasized: Apple’s anti-steering provisions which prevent an app from telling a customer that they can go elsewhere to make a purchase. Apple’s argument, in this case presented by Cook, goes like this:

Tim Cook's Best Buy argument

This analogy doesn’t work for all kinds of reasons; Apple’s ban is like Best Buy not allowing products in the store to have a website listed in the instruction manual that happens to sell the same products. In fact, as Nilay Patel noted, Apple does exactly this!

Nilay Patel refutes the Best Buy argument

The point of this Article, though, is not necessarily to refute arguments, but rather to highlight them, and for me this was the most illuminating part of this case. The only way that this analogy makes sense is if Apple believes that it owns every app on the iPhone, or, to be more precise, that the iPhone is the store, and apps in the store can never leave.

Judge Gonzales Rogers, meanwhile, is not the only one that finds Apple’s entitlement to apps problematic; the European Commission specifically cited the App Store anti-steering provision in its Statement of Objections about Apple’s approach to competition “in the market for the distribution of music streaming apps through its App Store”. That position of strength is starting to weaken.


After the European Commission’s announcement, Benedict Evans wrote in Resetting the App Store:

We’ve been arguing about this for a decade, but now something is going to change, partly because of Epic’s lawsuit (which it might or might not win) but much more importantly because the EU has a whole set of competition investigations into the sandbox, the store and the payment system, and is highly unlikely to accept the status quo. When Apple launched the store in July 2008 it had only sold 6m iPhones ever, but now a billion people have one, and competition laws apply, whether you like it or not. Epic might lose, but Spotify will win. What will that mean, though? What rules will change, and how, and what will that mean for anyone who isn’t an Apple or Spotify shareholder?…

It’s possible to believe that the sandboxed App Store model has been a hugely good thing, and also that Apple has too often made the wrong decisions in running it, and also that unwinding those decisions while preserving the underlying model won’t actually change much for many companies or consumers, and won’t really be a significant structural change in how tech works.

What Evans highlights is that all of these arguments about the App Store are good ones. Apple has good ones, Epic has good ones, Spotify has good ones, the European Commission has good ones, and I’d like to think I have good ones as well. As the Supreme Court has noted, though, a realm with lots of complexity and lots of good arguments about every single trade-off is one that is extremely poorly suited to judicial oversight. Congress is certainly an option — there is a utility sort of argument to be made about the App Store — but that comes with massive risks, given the relative frequency of changes in the law relative to changes in technology (the Epic case is being argued under a law passed 121 years ago).

What I wish would happen — and yes, I know this is naive and stupid and probably fruitless — is that Apple would just give the slightest bit of ground. Yes, the company has the right to earn a profit from its IP, and yes, it created the market that developers want to take advantage of, and yes, the new generation of creators experimenting with new kinds of monetization only make sense in an iPhone world, but must Apple claim it all?

Let developers own their apps, including telling users about their websites, and let creatives build relationships with their fans instead of intermediating everything.4 And, for what it’s worth, continue controlling games: I do think the App Store is a safer model, particularly for kids, and the fact of the matter is that consoles have the same rules. The entire economy, though, is more than a game, and the real position of strength is unlocking the full potential of the iPhone ecosystem, instead of demanding every dime, deadweight loss be damned.

I wrote a follow-up to this Article in this Daily Update.

  1. Obvious caveat: I am not a lawyer, although I have consulted with both an antitrust lawyer and an antitrust economist about legal precedents surround the App Store; this is also about U.S. law only
  2. There is a question as to whether Apple’s approach is the least restrictive way to achieve legitimate business ends; this is a very difficult argument to win in court, though, as any proposed solution has to be better in all regards, including appropriately compensating the IP holder.
  3. Some “reader” apps like Kindle did have the rules changed on them — Apple used to let them link out to the web for payments — but that was years ago before the iPhone was as dominant as it is today; parental control apps may have a more compelling case.
  4. Customers, of course, could decline; that would be a reason for developers and creatives to opt into Apple’s model
25 May 19:09

Cornelia Oberlander 1921-2021 : The Icon & My Friend

by Sandy James Planner

There are some people that you never expect to pass, people that you know and see as the fabric of place and your existence in it. That is fundamentally what and who  Cornelia Oberlander is to me.

At her funeral she was called the Dean of Canadian Landscape Architecture, and more intimately known as the “Queen of Green”. To me she was much more than that, she was a constant in my life for over four decades, a teacher, an advisor, a mentor, and a great friend. She never backed away from what she believed in, and she was a believer in continually reminding municipalities, governments, city councils, architects and students of her fundamental principles. She championed ecology.

 

Cornelia’s daughter, Judy Oberlander, was the first of the Oberlander family I met when I was Director of Development for the Old Strathcona Foundation in Strathcona, Edmonton. It’s no surprise that Judy also was the founding Director of the City Program at Simon Fraser University and has a quick intelligence as well as  innate knowledge and expertise in the field of heritage conservation. When I came to Vancouver to pursue a master’s degree in city planning, Judy took me to her home to meet her mom, Cornelia Oberlander.  Cornelia was sitting  on the living room floor doing physiotherapy exercises after a  painful fall skiing on the slopes, and  was of course, working at the same time.

That more or less describes all the Oberlanders, who are hardworking, practical, and welcoming. When daughter Judy spoke about her international design work at the University of British Columbia’s (UBC)  School of Architecture, Professor Abraham Rogatnick introduced her as a member of the Canadian ‘Fonda” family. The Fondas which included Henry and children Peter and Jane were famous American twentieth century actors. The Oberlander Family are our Canadian improved equivalent, with  Cornelia and husband Peter, and their three children, Tim, a physician scientist, Wendy, an internationally accomplished artist and filmmaker and Judy, who today works across Canada in her well recognized consulting practice.

I had come to the UBC School of Community and Regional Planning for graduate work, and was in Dr. Peter Oberlander’s policy class. It was a class that had a limited number of students, met at a round table in his office at the UBC Centre for Human Settlements, and had a proper break half way through where Peter served us tea from a silver tea service and let us talk generally about planning. Dr. Oberlander, or as we affectionately called him, “Dr. O” was a trained architect from McGill and the first Canadian to achieve a Master’s in Regional Planning and a Doctorate at Harvard University. Ken Cameron has written a book about Dr. Oberlander’s many remarkable achievements and firsts. He was the person that set up the first professional planning school in Canada, at UBC, worked tirelessly for United Nations causes, and was instrumental in the Habitat Conference held at Jericho Beach in 1976.

He was also the man that met Cornelia Oberlander at Harvard, where she was one of the first women admitted in the Harvard Graduate School of Design. Because of their Jewish faith Cornelia and Peter had both been uprooted from Europe by World War Two and had experienced great difficulties to come to North America and to be free.

But Cornelia was never phased by being the sole woman in many of her graduate classes, and when asked what it was like to take classes and then work in a field that was all men, simply replied “I never thought about it”.

Her mother upon arriving in America had bought a small farm in New Hampshire, and they sold fruits and vegetables from the farm with Cornelia and her sister. Prior to escaping Nazi Germany, her mother Beate Hahn who was a horticulturalist  had written children’s books and drawn little pictures of Cornelia watering the plants in the books. There is a story of Michael Levenson from City Farmer excitedly bringing Cornelia a book written in German that he thought should be translated and available for Canadian gardening children. Cornelia was so pleased to see the book, which of course was one of the volumes written by her mother, with the illustrations of Cornelia in it.

 

To be a student of Peter Oberlander’s meant that I was invited to the Oberlander gatherings to discuss planning and urban issues. It was there that I got to know the Oberlanders well, through their kindness and generosity to students and new graduates. When I defended my master’s thesis it was Peter and Cornelia Oberlander that took me for lunch at the Faculty Club to celebrate.

That mentorship over time turned into a friendship, and Cornelia was always available to be a guide on the side on planning, policy , and of course plants.

Cornelia had an organic approach to landscape design that makes even her early design work seem as modern as if she had just produced it, much the way that architect Frank Lloyd Wright’s houses seem completely fresh today. She had exposure to the Bauhaus School of thought  at Harvard and Walter Gropius had been teaching at Harvard’s School of Architecture since 1938. Mr. Gropius was a family friend of the Oberlanders, and visited them at their house in Vancouver.

Cornelia was always interested in the natural landscape, how it looked, how it behaved, how wind went through it, what plants were naturally there, and  how they reacted to the elements. She was an advocate of “Invisible Mending” using nature and plants that were indigenous to the area to plan her designs in a way that people would assume that the planted landscape was always there. And she was genius at it.

You can imagine how startling Cornelia’s approach was in the 1950’s and 1960’s which were the  scrubbed, trimmed and ‘weedbar’ days of gardening when nature was to be manicured at all costs. Postwar big green lawns represented status and roots. There was no place for undomesticated nature in landscape design.

For every project Cornelia would make a model or a maquette of the landscape to scale, and then think through the design principles that governed the site.  Even after the projects were built, you would still see Cornelia going back to revisit them, and ensure the landscapes worked. I like to  go to one of my favourite landscapes in Vancouver, Cornelia’s stone beach and outdoor museum at the Arthur Erickson designed Museum of Anthropology at the University of British Columbia. I often found Cornelia wearing boots standing  in the middle of the pond. She would tell me she was taking photos of the leaves in the water, but I knew she was really double checking the infiltration system.

The pond at the Museum of Anthropology was designed so  you could imagine  Haida paddlers just about to come around the bend in a canoe.  Cornelia worried when the Museum decided to install an agitation system in the pond to keep mosquitoes down. As she pointed out that was noisy, not too natural and maybe the picnickers did not need to be so close to the water when they had their lunch during mosquito season.

 

When the pond was drained to do repair work to the foundations of the museum, (which is still ongoing), Cornelia realized that she would probably not live to  see the landscape  again as she had designed it.

Susan Herrington’s book “Making the Modern Landscape” outlines the over six decade career that includes work Cornelia built in Berlin, New York City, Philadelphia, Seattle, and across Canada. Cornelia worked with practically every well known architect, and her legacy in Vancouver includes the fine rooftop garden of the downtown Vancouver public library, the landscaping and allee (double row of street trees) for Robson Square and the Law Courts.

Besides huge and monumental works like the landscape of the National Gallery in Ottawa or the VanDusen Visitors Centre in Vancouver,  Cornelia also designed for  communities. She designed gardens for co-ops, and was one of the first landscape architects to make informal play areas for children based upon age and skills, now standard practice. She also developed national guidelines for playgrounds.

Cornelia was a stickler for accuracy and she did not like that some of the work done by  noted architect Arthur Erickson was now being reinterpreted in a way that was not true. She and  Arthur worked together for three decades.

Cornelia was ahead of her time in most everything. She had a deep understanding and knowledge of plants, and has been advocating green roofs for decades to anyone that would listen. She asked me to edit work she had completed on the importance of access to parks and green views for high density dwellers. She always involved students and young professionals, and learned as much from them as they would have from her.

We once counted up how many honorary doctorates she has received.  I believe it was eight or nine. She has received nearly every major international accolade for design, and has an international landscape architecture prize named after her.

I have so many stories and learnings from Cornelia that I would like to share on Viewpoint Vancouver over time. Here is a preface for a project that Cornelia had written about in the last years of her life.

It reads:

“Longing for the Garden of Paradise is built into our genes. Throughout history we have been influenced by the gardens of ancient Egypt, Mesopotamia, Greece, Rome and Asia which continue to inspire our contemporary gardens around the world”.

It is that wonder about nature and our quest for wholeness in nature that is at the foundation of all of Cornelia’s work.  What a privilege to know this outstanding woman and her remarkable family.

I will miss Cornelia Oberlander greatly. But we are blessed with her incredible legacy of design, spirit and mentoring that is carried on by her family and the people she touched.

We wish her family and friends peace and comfort at this difficult time.

Thank you for sharing Cornelia with us all.

 

 

 

 

25 May 19:08

What is Exponential Decay?

by Dave Pollard

A mathematical thought experiment. Warning — this is a rather gloomy post.

 Humans’ incapacity to understand the principle of exponential growth has caused us all kinds of grief of late (notably in our handling of the pandemic), and promises to cause us a great deal more soon (the end of cheap energy, climate and ecological collapse, interest rate shocks, and ‘peak everything’).

We tend to use the metaphor of a hockey stick, but it’s a poor one — that’s a model of sharp linear growth, not exponential growth at all. A better metaphor is the ‘rice on the chessboard’ reward story. The story goes that the inventor of chess, when asked by her ruler what she would like as a reward for coming up with the amusing game, asked for one grain of rice on the first square of the board, two on the second, four on the third, and doubling the amount on each square until all 64 squares were filled. The total amount of rice in this exponential reward turns out to be 1.5 trillion metric tonnes, more than all the grain ever produced on earth.

The human population chart above is one illustration of exponential growth. If you want an even more extreme one, a chart of global resource consumption would track the same curve until roughly 1800, and then would soar six times faster — imagine the chart stretched six times taller with the same line reaching to the upper right corner.

Population agencies at one point believed the human population would level off at eight billion. Then they changed it to nine billion. Now they’re saying eleven billion, at which point it will, supposedly by sheer collective human will, suddenly flatten out, about half a chart higher and one small dot to the right, and then stay there.

That is of course preposterous. Human population is no longer able to increase exponentially, but is still increasing linearly by 80 million per year — another billion every 12 years. The limit is not human will, but the capacity of the planet to — ever more wastefully — produce ever more human food and other resources. As long as we are producing more human food each year (at increasingly catastrophic costs) we will continue to produce more babies to consume it. Human population, and resource consumption (which is still increasing exponentially), will then suddenly stop increasing, as it did in the 14th century, but because of the current growth slope, it will happen much more abruptly. Since we’ve used more than half the world’s resources already and are using the rest up at an ever-accelerating rate, that point will certainly come before 2100, even if inevitable economic, climate and ecological collapse were not additional factors drawing this insanity to an imminent close.

And then what? Since there’s no safety valve this time, no frontier to escape to, what will immediately follow exponential growth of population and consumption will be something you hear much less about — exponential decay.

We’re starting to see how exponential decay works in the case and death counts for CoVid-19 in many countries. We saw a bit of it last summer, and politicians were delighted and prematurely declared the pandemic beaten. This time, despite the fact so many people have been propagandized to fear the vaccines, and despite the slowness and incompetence of the vaccine roll-out, we are seeing sharp drops in case rates in many countries that “mirror” the sharp increases we saw earlier, and this is happening long before herd immunity levels are reached.

Exponential decay is the precise “mirror” of exponential growth. When anything — a virus, locusts, mosquitos, the human species, the rate of consumption — reaches the limits to growth after a period of exponential growth, it will immediately experience an exponential decay that mirrors the exponential growth.

We will hit the wall of the limits to growth in resource production and consumption before we reach the limits to human population, and at that point, human population, with no additional food to sustain it, will likewise stop growing.

For the past 50 years, total global resource consumption (using the surrogate of global energy use) has been rising at an annual rate of about 6% per year. That doesn’t seem like that much until you consider that human population, depicted in the remarkable chart above, is only growing at just over 1% per year. A 6% annual (exponential) growth rate means a doubling every twelve years. In other words, we will use as much of earth’s resources in the next twelve years as we used in all of our previous history. And we’ve already used up half of all the known resources of the planet. Though we may dredge up some more, at ever-increasing incremental cost, it is not unreasonable to believe we will hit the wall about then — 2033. At that point human population will be about nine billion. Even without climate and ecological collapse, the shit will then hit the fan.

My guess is that we will stall off the peak for a few more years after that, at least for those in affluent nations. So let’s be generous and assume we can grind out the global human civilization experiment until 2040, with 9.5 billion humans.

It’s all downhill from there, and it will be steep. On the way up, we hit 4.7 billion humans in 1984, 56 years before the likely 2040 peak. So you might think we’ll be back to that population 56 years after peak, which is just before 2100.

But we’re still not realizing the impact of resource constraints, and just how steep the slope of exponential decay can be. Our population is constrained by resources available for consumption, which has been increasing six times faster than human numbers, and which will decrease six times faster after the peak. When we run out of affordable resources, we will face full-on global economic collapse, and our numbers will have to decrease to keep pace with the smaller amount of food, heat, and everything else we depend on in our vulnerable, prosthetic, human-made environments.

If you’ve been following the math, that means human population will have to track the pace of exponential decay of resources, which will be halved every twelve years just as it is doubling every twelve years now. By that logic, the decline from 9.4 billion humans to 4.7 billion will occur between 2040 and 2052. And then it will decline again by half to 2.4 billion humans by 2064 and to 1.2 billion humans (the population in 1850) by 2076. And to 600 million humans (the population in 1700) by 2088 and to 300 million humans (the population in 1300) by 2100.

Some of this decline will occur ‘naturally’, as, in a world of severe scarcity and precarity, people will simply stop having children. I’d like to say most of the decline will happen that way, but the numbers don’t lie: The first few decades after peak consumption are likely to be pretty terrible, even if we divert all economic activity to simple food production and stop procreating.

And there is no reason why that rate of decrease won’t continue into the 22nd century, but I think it would be foolish to speculate on what might be sustainable human numbers, without cheap energy or any energy-fuelled technology, and with a suddenly sparsely-populated (by humans) world with 97% of peak-civilization’s abandoned and scavengeable stuff (and nuclear and chemical wastes!) left behind. And we may have so desolated the planet — its biodiversity, its climate, its soils and waters — that even 300 million may be far beyond its carrying capacity for our kind.

My grandparents’ message to me, when they described the Great Depression, was how utterly unthinkable the reality of it was in the roaring 20s — how ghastly the suffering, how far people fell from their positions of privilege and seeming invulnerability, and, most of all, how quickly it overtook everyone. Exponential decline following exponential growth.

So here we are again in the roaring 20s — driverless cars, Mars missions, dreams of living forever, the “internet of things”. Enjoy it while we can. There is no soft landing on the other side of exponential growth; it’s a hard ride down. All civilizations, like all pandemics, end, usually with surprising speed in their last gasp as the limits to growth are reached and breached, and so will this one.