Capitalism is in crisis. To save it, we need to rethink economic growth

Even before the covid-19 pandemic and the resulting collapse of much the world’s economy, a crisis in capitalism was plainly evident. Unfettered free markets had pushed inequality of income and wealth to extremely high levels in the United States. Slow productivity growth in many rich countries had stunted financial opportunities for a generation. Businesses, if no longer quite oblivious to global warming, seemed impotent to make changes that might slow it.

And then came the pandemic, with millions losing their jobs, and then the raging wildfires, fueled by climate change, that blazed up and down the US West Coast. All the simmering signs of a dysfunctional economic system suddenly became fully evident, full-blown disasters.

No wonder many in the US and Europe have begun questioning the underpinnings of capitalism—particularly its devotion to free markets and its faith in the power of economic growth to create prosperity and solve our problems. 

The antipathy to growth is not new; the term “degrowth” was coined in the early 1970s. But these days, worries over climate change, as well as rising inequality, are prompting its reemergence as a movement. 

Calls for “the end of growth” are still on the economic fringe, but degrowth arguments have been taken up by political movements as different as the Extinction Rebellion and the populist Five Star Movement in Italy. “And all you can talk about is money and fairy tales of eternal economic growth. How dare you!” thundered Greta Thunberg, the young Swedish climate activist, to an audience of diplomats and politicians at UN Climate Week last year.

At the core of the degrowth movement is a critique of capitalism itself. In Less Is More: How Degrowth Will Save the World, Jason Hickel writes: “Capitalism is fundamentally dependent on growth.” It is, he says, “not growth for any particular purpose, mind you, but growth for its own sake.”

Rewriting capitalism: some must-reads

  • Reimagining Capitalism in a World on Fire

    The Harvard Business School economist argues that companies can play an important role in improving the world.

  • Good Economics for Hard Times

    The MIT economists and 2019 Nobel laureates explain the challenges of boosting growth both in rich countries and in poor ones, where they do much of their research.

  • Fully Grown: Why a Stagnant Economy Is a Sign of Success

    The University of Houston economist argues that slow growth in rich countries like the United States is just fine, but we need to make the benefits from it more inclusive.

  • Less Is More: How Degrowth Will Save the World

    A leading voice in the degrowth movement provides an overview of the argument for ending growth. It’s a convincing diagnosis of the problems we’re facing; how an end to growth will solve any of them is less clear.

That mindless growth, Hickel and his fellow degrowth believers contend, is very bad both for the planet and for our spiritual well-being. We need, Hickel writes, to develop “new theories of being” and rethink our place in the “living world.” (Hickel goes on about intelligent plants and their ability to communicate, which is both controversial botany and confusing economics.) It’s tempting to dismiss it all as being more about social engineering of our lifestyles than about actual economic reforms. 

Though Hickel, an anthropologist, offers a few suggestions (“cut advertising” and “end planned obsolescence”), there’s little about the practical steps that would make a no-growth economy work. Sorry, but talking about plant intelligence won’t solve our woes; it won’t feed hungry people or create well-paying jobs. 

Still, the degrowth movement does have a point: faced with climate change and the financial struggles of many workers, capitalism isn’t getting it done. 

Slow growth

Even some economists outside the degrowth camp, while not entirely rejecting the importance of growth, are questioning our blind devotion to it. 

One obvious factor shaking their faith is that growth has been lousy for decades. There have been exceptions to this economic sluggishness—the US during the late 1990s and early 2000s and developing countries like China as they raced to catch up. But some scholars, notably Robert Gordon, whose 2016 book The Rise and Fall of American Growth triggered much economic soul-searching, are realizing that slow growth might be the new normal, not some blip, for much of the world. 

Gordon held that growth “ended on October 16, 1973, or thereabouts,” write MIT economists Esther Duflo and Abhijit Banerjee, who won the 2019 Nobel Prize, in Good Economics for Hard Times. Referencing Gordon, they single out the day when the OPEC oil embargo began; GDP growth in the US and Europe never fully recovered. 

The pair are of course being somewhat facetious in tracing the end of growth to a particular day. Their larger point: robust growth seemingly disappeared almost overnight, and no one knows what happened.

Duflo and Banerjee offer possible explanations, only to dismiss them. They write: “The bottom line is that despite the best efforts of generations of economists, the deep mechanisms of persistent economic growth remain elusive.” Nor do we know how to revive it. They conclude: “Given that, we will argue, it may be time to abandon our profession’s obsession with growth.”

In this perspective, growth is not the villain of today’s capitalism, but—at least as measured by GDP—it’s an aspiration that is losing its relevance. Slow growth is nothing to worry about, says Dietrich Vollrath, an economist at the University of Houston, at least not in rich countries. It’s largely the result of lower birth rates—a shrinking workforce means less output—and a shift to services to meet the demands of wealthier consumers. In any case, says Vollrath, with few ways to change it, we might as well embrace slow growth. “It is what it is,” he says. 

Vollrath says when his book Fully Grown: Why a Stagnant Economy Is a Sign of Success came out last January, he “was adopted by the degrowthers.” But unlike them, he’s indifferent to whether growth ends or not; rather, he wants to shift the discussion to ways of creating more sustainable technologies and achieving other social goals, whether the changes boost growth or not. “There is now a disconnect between GDP and whether things are getting better,” he says.

Living better

Though the US is the world’s largest economy as measured by GDP, it is doing poorly on indicators such as environmental performance and access to quality education and health care, according to the Social Progress Index, released late this summer by a Washington-based think tank. In the annual ranking (done before the covid pandemic), the US came in 28th, far behind other wealthy countries, including ones with slower GDP growth rates.

“You can churn out all the GDP you want,” says Rebecca Henderson, an economist at Harvard Business School, “but if the suicide rates go up, and the depression rates go up, and the rate of children dying before they’re four goes up, it’s not the kind of society you want to build.” We need to “stop relying totally on GDP,” she says. “It should be just one metric among many.”

Part of the problem, she suggests, is “a failure to imagine that capitalism can be done differently, that it can operate without toasting the planet.”

In her perspective, the US needs to start measuring and valuing growth according to its impact on climate change and access to essential services like health care. “We need self-aware growth,” says Henderson. “Not growth at any cost.” 

Daron Acemoglu, another MIT economist, is calling for a “new growth strategy” aimed at creating technologies needed to solve our most pressing problems. Acemoglu describes today’s growth as being driven by large corporations committed to digital technologies, automation, and AI. This concentration of innovation in a few dominant companies has led to inequality and, for many, wage stagnation. 

People in Silicon Valley, he says, often acknowledge to him that this is a problem but argue, “It’s what technology wants. It’s the path of technology.” Acemoglu disagrees; we make deliberate choices about which technologies we invent and use, he says.

Acemoglu argues that growth should be directed by market incentives and by regulation. That, he believes, is the best way to make sure we create and deploy technologies that society needs, rather than ones that simply generate massive profits for a few. 

Which technologies are those? “I don’t know exactly,” he says. “I’m not clairvoyant. It hasn’t been a priority to develop such technologies, and we’re not aware of the capabilities.”

Turning such a strategy into reality will depend on politics. And the reasoning of academic economists like Acemoglu and Henderson, one fears, is not likely to be popular politically—ignoring as it does the loud calls for the end of growth from the left and the self-confident demands for continued unfettered free markets on the right. 

But for those not willing to give up on a future of growth and the vast promise of innovation to improve lives and save the planet, expanding our technological imagination is the only the real choice.

Tech on the Ballot in November

While technology has become more and more central to everything we do, regulations around the business and usage of that technology have failed to keep up.  

Congress has been deadlocked on some of the biggest tech policy issues. Lawmakers have debated passing a national privacy law for years, police reform—which includes limitations on facial recognition technology—is stalled, and our internet infrastructure lags behind much of the rest of the world’s. And while the Department of Justice just filed a major lawsuit against Alphabet for antitrust violations, new federal legislation recommended to rein in Big Tech is unlikely to pass anytime soon.

That’s left controversial questions surrounding technology and the tech industry under dispute—from whether gig workers deserve full benefits, to precisely what sort of personal data should be private, to how to expand internet access, to whether there should be restrictions on the police accessing private technology and the public accessing police technology. Now many of those thorny issues are going directly to the people come Nov. 3, when voters in several states and cities will consider a slate of tech-related measures whose fate could impact how these pressing issues are handled around the country.  

Here’s a roundup of some of the big questions on the ballot in 2020. 

↩ link

California: Should Gig Workers Be Contractors or Employees? 

In August, Lyft and Uber threatened to suspend their ride-sharing services in California if they had to comply with AB5, a 2019 state law that requires companies to treat most workers, including those in the gig economy, as employees rather than independent contractors. The suspension was put on hold when California’s 1st District Court of Appeal ruled that the companies didn’t have to comply with the law while their lawsuit over AB5’s constitutionality proceeds.

Now California voters will weigh in on the issue with Proposition 22, which if passed, would allow tech companies to classify app-based workers—those who drive for Lyft, Uber, DoorDash, Postmates, and Instacart, for example—as independent contractors, exempting the gig companies from complying with AB5. 

If Proposition 22, which requires majority approval, passes, drivers will remain as independent contractors, but they would gain some benefits—mainly receiving 20 percent above the local or state minimum wage, depending on their location.

The proposition is also self-protecting, as it contains language that would require any legislative amendments to the bill—meaning any law having to do with the employment status of  “app-based drivers”—to pass with seven-eighths (87.5 percent) of the legislature’s support. 

If the ballot measure fails, gig companies may have to classify their drivers as employees, which could give them a fuller slate of benefits, like paid sick leave and overtime pay.

As of September, the “yes” campaign, which is backed by major tech companies and the California Republican Party, had raised more than $181 million, compared to the nearly $16 million raised by the opposing side. No other ballot measure has raised this amount of money, making it the most expensive in the state’s history. Those opposed include senators Kamala Harris, Bernie Sanders, and Elizabeth Warren, as well as the California Democratic Party. 

—Emmanuel Martinez

↩ link

California: Should Tech Companies Pay You for Your Private Data? 

Proposition 24, The California Privacy Rights Act of 2020, looks a lot like an existing law, the California Consumer Privacy Act of 2018, which gives state residents some control over their online privacy and data, like the right for consumers to know what personal information businesses collect and the right to delete it.  

If the proposition passes, it would further codify these protections and create a $10 million agency to enforce these laws.

“The main purpose of the proposition is to lock in the beneficial points of the California Consumer (Privacy) Act,” said Jamie Court, the president of Consumer Watchdog, a nonprofit organization that advocates for consumer rights and supports the proposition. “After the California Consumer (Privacy) Act passed in ’18, 2019 was spent defending it in the legislature from assault.”

Privacy shouldn’t be something that people pay for.

Jacob Snow, ACLU of Northern California

The ballot measure also would allow companies to offer discounts, rewards, or loyalty programs in exchange for someone’s personal information. The proposition takes an opt-out approach, meaning individuals have to tell companies to stop collecting their online data and personal information. Those two elements have drawn criticism. 

“Privacy shouldn’t be something that people pay for,” said Jacob Snow, an attorney at the American Civil Liberties Union of Northern California, which opposes the proposition. “It’s a fundamental right.

—Emmanuel Martinez

↩ link

California: Is an Algorithm More Fair Than Cash Bail? 

Proposition 25 seeks to eliminate a cash-based system for bail and instead assign each person accused of a crime an algorithmically generated risk score to determine if he or she should be locked up in jail pending trial. 

Advocates for both sides of the proposition argue that the alternative is discriminatory. Those in favor of the proposition say the bail system has less to do with a person’s likelihood to commit a new crime and everything to do with how much money that person has—poor people accused of a low level crimes might spend months in jail awaiting trial, while rich people accused of violence can buy their freedom while they fight their case.   

But opponents of the measure, some of whom also oppose the cash bail system, say risk assessments, which are already used in the federal criminal justice system, have been shown to be biased against Black defendants. Under the algorithm, defendants would be scored based on their likelihood to commit a crime or skip bail, with counties in charge of determining the exact factors considered, according to the Los Angeles Times

As the nonprofit newsroom CalMatters points out, the referendum has created some surprising political divides. Proponents of the measure include democratic governor Gavin Newsom and assembly speaker Anthony Rendon. Opponents include the bail bond industry, which profits from the status quo, as well as civil rights advocates like the state NAACP and Human Rights Watch. 

—Colin Lecher

↩ link

Massachusetts: Do Consumers Have a Right to Control Their Car’s Repair Data?

In 2012, Massachusetts voters overwhelmingly approved a ballot initiative creating the nation’s first right-to-repair law, focused on automobiles. That law requires car manufacturers to offer all of their diagnostic tools, replacement parts, and repair documentation to the public so that independent mechanics and mechanically inclined car owners might perform repairs.

A lot has changed in the automotive world since the original bill passed: Cars look more like computers, and mechanics increasingly rely on diagnostic data to solve problems and perform repairs. Many cars sold today come with cellular radios that send this telemetric data back to manufacturers—and it’s often encrypted, essentially creating a repair monopoly for authorized-dealer mechanics. 

On the ballot this year for Massachusetts voters is an update to the original law, covering control and access to the cars’ telemetric data. 

Car manufacturers have spent more than $25 million to defeat the measure.  

When the original bill passed, all the major car manufacturers signed a memorandum of understanding voluntarily adopting the requirements of the Massachusetts law nationwide.

The original law has also served as a template for similar “digital” right-to-repair laws covering smartphones, game consoles, and other consumer electronics. (Read more about the landscape of right-to-repair laws across the country.) 

—Jon Keegan

↩ link

Michigan: Do Police Need a Warrant to Search Your Phone? 

Protection against “unreasonable search and seizure” is guaranteed under the Fourth Amendment of the U.S. Constitution as well as Michigan’s state constitution. 

Courts have tended to rule that electronic data is protected under these laws, but the rulings have been focused on specific scenarios, such as a GPS tracker attached to a suspect’s car (United States v. Jones) or cellphone location data (Carpenter v. United States). Proponents of Ballot Proposal 20-2 argue that the state constitutional amendment would codify and broaden protections against warrantless searches of electronic data as technology evolves. Opponents argue that it could inhibit the police’s ability to investigate. “State law has not kept pace with technology,” The Detroit News wrote in a supportive editorial.

Similar amendments have already passed in New Hampshire and Missouri

—Adrianne Jeffries

↩ link

Akron, Ohio: Who Gets to See Police Bodycam Footage? 

Voters in Akron, Ohio, will decide on Issue 2, a proposed amendment to the city’s charter that would require local police to publicly release all bodycam and dashcam footage in situations in which officers used deadly force or caused “serious bodily injury.”

The killing of George Floyd by a Minneapolis police officer in May 2020 prompted a wave of legislation and ballot measures. In June, New York City mandated that bodycam footage be released within 30 days whenever the police use a Taser, gun, or other types of serious force. 

In Akron, police initially refused to release video of the January shooting of Elijah Cade, a 19-year-old Black man, after a traffic stop. The Akron Beacon Journal has also written about how even the city’s official police auditor does not have access to body camera footage. The proposal would still allow numerous exceptions under state law.

Body cameras are supposed to increase police accountability, but critics say they don’t always. Cameras may “simply intensify police surveillance of communities,” according to the Leadership Conference on Civil and Human Rights, and create the foundation for more sophisticated surveillance, such as the use of facial recognition, said the EFF

—Adrianne Jeffries

↩ link

Chicago, Ill.: Should Government Fund Broadband Access?

About one in five children in Chicago lack broadband access, and those kids are primarily Black or Latino. In July, the city council approved adding a simple question, Public Question 1, to the November ballot: “Should the City of Chicago act to ensure that all the City’s community areas have access to broadband Internet?” 

It’s a question of social equity, and broadband (information) should be accessible to rich and poor alike.

Chicago city council member George Cardenas

The referendum is nonbinding, but it’s significant in light of the bigger national debate over whether internet access should be considered a public utility—especially now that the novel coronavirus pandemic has forced many people to conduct work, school, and other essential activities online.

Chicago mayor Lori Lightfoot has said the city should ensure access for all residents, starting with a $50 million program aimed at students. The ballot question is designed to gain support for future spending on broadband infrastructure, said city council member George Cardenas. “It’s a question of social equity, and broadband (information) should be accessible to rich and poor alike,” he said in a Twitter message.

Adrianne Jeffries

↩ link

Portland, Maine: Can Police Use Facial Recognition Technology? 

No federal law regulates the use of facial recognition software by law enforcement. Some cities are taking action. Starting last year with San Francisco, a smattering of American cities have moved to ban facial recognition technology, citing its potential to invade people’s privacy and for racial bias. The jurisdictions that have banned the tools now include Oakland; Somerville, Mass.; Portland, Ore.; and Boston

In August, the Portland, Maine, city council approved a similar ban preventing city officials from using the software, and the city is now considering a referendum that would further strengthen the regulation, according to the Portland Press Herald

Question B, if passed, would allow private citizens to sue the city for violations of the ban and collect either $1,000 or $100 per violation, whichever is greater, if successful. The measure would also forbid prosecutors from using evidence obtained through facial recognition and make the use of facial recognition grounds to suspend or fire a city employee. 

—Colin Lecher

Linux 5.10 ARM64 Has a “8~20x” Performance Optimization Forgotten for Two Years

Last week was the main set of ARM 64-bit architecture updates for Linux 5.10 while today a second batch of changes were sent in for this kernel. That first round had the Memory Tagging Extension (MTE) and Pointer Authentication support among other improvements while this secondary pull has two notable performance optimizations.

First up is a performance optimization that the Arm developers acknowledge was seemingly forgotten about for some two years. Back in 2018 was a memory management speed-up by around 20x for the mremap system call on large memory regions. That work was merged but the feature never enabled for the ARM64 Linux kernel builds until now.

That patch by a Google engineer was an optimization for mremap given that Android relies on using it for large regions of memory during various operations. The mremap system call can be quite slow without transparent huge-pages (THP) while this patch makes things faster by copying at the PMD level when possible. The speed-up back in 2018 by the engineer was reported to be around ~20x faster on x86 (x86_64) with a 1GB mremap taking just 144~160 microseconds rather than 3.4~3.6 milliseconds. But for systems with THP support, there isn’t likely to be much of a performance difference.

The mremap system call is used for expanding/shrinking an existing memory mapping. Mremap is used in particular on Android and thus Google’s emphasis on making it faster. While the work was merged, taking this faster path for PMD-level remapping requires setting the HAVE_MOVE_PMD and that never got enabled as part of the ARM64 Kconfig — initially it was delayed while pending other improvements but then forgotten about. A few days ago it was noticed about HAVE_MOVE_PMD being set for x86 but not ARM64 with no current blockers preventing it from being enabled. The tests carried out this month saw an 8x improvement with this system call on ARM64.

So today’s pull request enables HAVE_MOVE_PMD for ARM64 on Linux 5.10, “this has been shown to improve mremap() performance, which is used heavily by the Android runtime [garbage collection], and it seems we forgot to enable this upstream back in 2018.

That pullals has several fixes along with another optimization: better Spectre V2 mitigation on Qualcomm Centriq “Falkor” CPUs. But with Qualcomm having divested from its ARM server chip ambitions, the Spectre V2 optimization will likely benefit few. That optimization comes from Falkor being able to mitigate Spectre Variant Two by calling into firmware or issuing a magic sequence of branches. That magic sequence is faster but requires special conditions and the ARM64 selection logic currently was only set to enable it if the firmware mitigation was unavailable.

What Comes After Kubernetes?

“Boring.” That’s one of the best compliments you can pay an infrastructure technology. No one wants to run their mission-critical applications on “spicy!” But boring? Boring is good.

Boring means that a technology has reached a certain level of ubiquity and trust, that it’s well-understood and easily managed. Kubernetes, in production at 78 percent of enterprises, has arguably passed that point, having become widely recognized as standard cloud-enabling plumbing that “just works.”

Or, otherwise said, has become “boring.”

Even as the Cloud Native Computing Foundation helps coordinate the development of a range of other projects to fill in any blanks left behind by Kubernetes at the infrastructure layer, the Kubernetes conversation has started to shift to what’s happening higher up the stack. In April, developer advocate superstar Kelsey Hightower observed that Kubernetes only solves half the problem in modernizing applications, if that:

There’s a ton of effort attempting to “modernize” applications at the infrastructure layer, but without equal investment at the application layer, think frameworks and application servers, we’re only solving half the problem.

What do we do about this?

Filling the gap between apps and infrastructure

“There’s a huge gap between the infrastructure and building a full application,” said Jonas Bonér, CTO and co-founder at Lightbend, in an interview. Bonér helped to start the open source project Akka, which is aimed at solving a complex problem set between the infrastructure and application, above Kubernetes on the stack. As Bonér put it: 

“It’s an exercise to the programmer to fill in this huge gap of what it actually means to provide SLAs to the business, all the things that are hard in distributed systems but needed for the application layer to make the most of Kubernetes and its ecosystem of tools.”

This is where an organization needs things that sit between the app and the infrastructure and make it all work, Bonér continued. It’s not about replacing anything, but rather about adding more tools in the toolbox and extending the infrastructure model of isolation, and constraints imposed by the network, into the app itself — delivered in an intuitive, flexible, and powerful, yet simple, programming model.

As two Tesla engineers discussed at a conference last year, Tesla relies on “digital twin” capabilities that power its electric grid, made possible by the combination of Akka and Kubernetes. “The majority of our microservices run in Kubernetes, and the pairing of Akka and Kubernetes is really fantastic,” said Tesla engineer Colin Breck. He explained:

Kubernetes can handle coarse-grained failures in scaling, so that would be things like scaling pods up or down, running liveness probes, or restarting a failed pod with an exponential back-off. Then we use Akka for handling fine-grained failures like circuit breaking or retrying an individual request and modeling the state of individual entities like the fact that a battery is charging or discharging.

According to Bonér, there are three generally unsolved areas that are still evolving above Kubernetes on the cloud-native stack, giving rise to new abstractions offered by technologies like Akka: application layer composition, stateful use cases, and data-in-motion use cases. 

Enabling declarative app layer composition

“People too often use old tools, habits, and patterns, often originating from the traditional (monolithic three-tier) designs that inhibit and constrain the cloud model delivered by Kubernetes,” Bonér noted. We need to extend the “amazingly good” model of containers, service meshes, and orchestration all the way up to the application/business logic, so we can make the most out of it while maintaining end-to-end guarantees on behalf of the application, he said. 

Serverless points the way by raising the level of abstraction, and providing a declarative model where as much as possible of boilerplate, infrastructure, and operations is removed and managed by the platform, leaving the developer with the essence: the business logic and its workflow.

Improving support for stateful use cases

Most of the cloud ecosystem is mainly tackling so-called 12-factor style applications, i.e., stateless applications. Sometimes that might be all you need. But non-trivial apps are usually a mixture of stateless and stateful use cases.

“We need more and better tools to tackle state well,” Bonér said. “The value is nowadays often in the data, and it’s often in the stateful use cases that most of the business value lies — making sure you can access that data fast, while ensuring correctness, consistency, and availability.”

In the cloud, unless you have a really good model, and the tools supporting it, you’re forced back to the three-layer architecture of pushing everything down into the database every time, regardless if it is for communication, coordination, or long-term storage of state.

Importantly, you also need good state models to complement the stateless approach, giving you more options in the toolbox. The extent of Kubernetes’ handling of stateful use cases today is really only supported in its StatefulSets feature, but StatefulSets are designed for the people that implement infrastructure like databases, Bonér noted, not for the app developers.

“So there’s still a huge gap here,” Bonér said. “That’s where Akka really comes in.”

Handling fast data or data-in-motion use cases

Arguably, the Kubernetes ecosystem doesn’t yet offer great support for streaming and event-based use-cases. Service meshes like Istio are designed around a request-response model and “can get in the way,” Bonér said. Streaming is also often stateful, with stages aggregating data in-memory while needing to be available, which ties into the discussion above. Work is underway in the Knative community to address this but we are just getting started, Bonér suggested.

Much of the thrust of these new directions seems to be the low code / no code / “decouple front end from back end” concepts that roll up under the serverless movement.

“Serverless gets us closer to addressing the problem of extending the model of Kubernetes into the application itself,” said Bonér. “That’s what it’s all about. Abstracting away as much as possible, and moving to a declarative model of configuration rather than coding, where you define what you should do and not how you do it.”

Application infrastructure that ‘just works’

As the cloud-native stack continues to evolve above the Kubernetes infrastructure level, it will be interesting to see how these concepts at the application layer play out to serve specific language developers. While many of the toughest application architecture challenges have long been the domain of server-side Java development, we seem to be moving toward a Jamstack architecture where increasingly it’s the JavaScript developers who expect to access application infrastructure that just works, especially as endpoints multiply exponentially.

This isn’t to suggest that back-end infrastructure isn’t important. Rather, it’s to acknowledge, as Ian Massingham has argued, that front-end developers vastly outnumber back-end developers, and for good reason: There are far more applications that need to be built than there is infrastructure that needs to be created to host it. Bridging the two worlds through open source projects like Akka becomes ever more important all the time.

James Randi, Illusionist – Obituary

James Randi, the psychic and illusionist, who has died aged 92, called himself the Amazing Randi and billed himself as “the man no jail can hold” in the tradition of the escapologist Harry Houdini; but above all he crusaded as the world’s pre-eminent debunker of pseudoscience and fraudulent magic.

As the scourge of dishonest psychics, hoaxers, fakers and charlatans, Randi claimed to speak on behalf of rationalists, and rejected the existence of psychic phenomena, which he believed were nothing more than “flim-flam” that could be explained by simple skulduggery or cheating.

One particular target was Uri Geller, the Israeli-born British illusionist who shot to fame in the 1970s with his spoon-bending act which featured on television all over the world. Although Randi was able to demonstrate how the illusion could be achieved using an ordinary magician’s sleight-of-hand, he believed that in a credulous age, many viewers were gulled not only into accepting what they were seeing as literal truth, but also – in some cases – they abandoned life-saving medical treatment in favour of what he called “the latest miracles”.

In 1975 Randi demonstrated Geller’s methods to a group of eminent British scientists, including Maurice Wilkins, the Nobel Prize-winning co-discoverer of the structure of DNA, at King’s College, London. “We believe that in investigating phenomena of apparently paranormal nature,” the scientists subsequently affirmed in a letter to Randi, “a qualified conjurer must be closely involved.”

Four years later Randi initiated his “Uri Awards”, which he distributed every April Fool’s Day to assorted scientists, journalists, and faith healers who claimed to be able to perform “psychic surgery” using paranormal powers.

The Amazing Randi, professional escapologist, peering out from a sealed underwater coffin in West Ham Municipal Baths, London, 1958

The Amazing Randi, professional escapologist, peering out from a sealed underwater coffin in West Ham Municipal Baths, London, 1958

Credit: Ron Burton/Getty

As a performing magician and escape artist in his own right, Randi appeared all over the world, from Manila and Sydney to Paris, New York and London. In 1975 he toured with Alice Cooper as an executioner who simulated a guillotining of the rock star on stage every night.

For World of Wizards on Canadian television, Randi was filmed suspended above the raging Niagara Falls while wriggling out of a straitjacket bound in chains. In 1985 he escaped from another straitjacket while dangling from a helicopter over Tokyo.

He regularly performed the Milk Churn escape borrowed from Houdini’s act, Houdini himself having once almost come to grief at the Empire Theatre, Leeds, when he accepted a challenge from the Tetley brewery to escape from a beer-filled galvanised metal container, only to fail after being overcome by the fumes and having to be rescued unconscious by an assistant.

James Randi was born Randall James Hamilton Zwinge in Toronto on August 7 1928, the son of a telephone company manager. He became hooked on magic as a child when he watched a friend perform a billiard-ball illusion. Scouring department stores for magic tricks to buy, he was 13 when he discovered the Toronto Arcade Magic and Novelty Store, and spent every Saturday there learning new tricks.

Randi wrote several books on hoaxers and magic

Randi wrote several books on hoaxers and magic

A child prodigy with an IQ of 168, James was bored and disruptive at the Oakwood Collegiate Institute, and often cut class to educate himself at Toronto’s public library, where, among other things, he learnt to read hieroglyphics.

When he was 15 he was arrested for disrupting a meeting at his local spiritualist church, where the pastor’s party piece was reading out the contents of sealed envelopes. Young James rushed on to the stage and demonstrated how the trick worked, spending four hours in a police cell before his father collected him.

A shy child who stuttered and stammered, Randi found that performing magic tricks boosted his self-confidence, and at 17 he left school to join Peter March’s travelling carnival. His initial persona was as a conjurer, Prince Ibis, complete with goatee, turban and a mouldy suit of tails, but by the age of 20 he was styling himself The Great Randall, Telepath. His displays of “mentalism” (extrasensory perception or ESP) so convinced onlookers that he was asked to help find missing children and even pick winning horses; failing to convince people that his psychic powers derived from trickery, he returned to his rabbits and wands.

By the mid-1960s he had his own all-night radio show in New York, drawing up to 150 letters a day. It was then that Randi, realising the growing scale of public credulity about clairvoyants and faith healers, decided to mobilise a campaign against charlatanry.

As an illusionist he starred in his own television specials around the world, and made a memorable appearance in Britain on Paul Daniels’s television show, when he apparently passed through the solid wall of a partly demolished building.

Randi in the film An Honest Liar (2014)

Randi in the film An Honest Liar (2014)

Having completed three world tours as a performer and lecturer, in 1974 Randi performed for President Ford at the White House. He became a prolific journalist and writer of books, the most celebrated of which was Conjuring (1992), acclaimed as the definitive history of “the venerable arts of sorcery, prestidigitation, wizardry, deception and chicanery, and of the mountebanks and scoundrels who have perpetrated these subterfuges on a bewildered public”.

Indeed, he became a recognised authority on the history of stage magic and an even more celebrated debunker of false claims about the paranormal. Discussing Randi’s 1982 book The Truth About Uri Geller, the astronomer and author Carl Sagan acclaimed it “a witty and fascinating dissection of Uri Geller’s humbuggery … a healthy antidote to charlatanry at all levels”.

A more sweeping indictment of the paranormal was contained in Randi’s Flim-Flam! Psychics, ESP, Unicorns and Other Delusions (1980). His other works included Harry Houdini: His Life And Art (1976); Test Your ESP Potential (1982); The Faith Healers (1987); The Magic World of the Amazing Randi (1989); The Mask of Nostradamus (1990); and James Randi, Psychic Investigator (1991).

His Encyclopedia of Claims, Frauds and Hoaxes of the Occult and Supernatural was published in 1995 and he was the subject of a biographical film documentary, An Honest Liar, in 2014.

Like his hero, Houdini, James Randi escaped from notorious jails around the world, having been bound with ropes and handcuffs and entombed in boxes and coffins. It is likely, however, that Randi will be remembered more as a writer and a zealous guardian of legitimate stage magic than for his own performances.

In a coffin, again at West Ham Municipal baths in 1958

In his coffin at West Ham Municipal baths, 1958

Credit: Ron Burton/Getty Images

He continued his campaign against bogus practitioners well into old age, holding forth on their devious methods at such institutions as the American Association for the Advancement of Science, the Royal Institution in London and even at the American Parapsychological Association, an experience Randi likened to “Martin Luther walking into the Vatican for lunch”.

In 1987 the Academy of Magical Arts in Los Angeles created a special fellowship for Randi in recognition of his efforts to preserve the art of conjuring as an entertainment rather than for deception and fraud.

Randi considered hate-mail an occupational hazard, and dealt with several threats to his life by fortifying his house, wearing body armour and surrounding himself with large bodyguards in bulky suits. Whenever he was pointed out as a representative of Satan, he would bow and wave.

He became a naturalised American citizen in 1987 and settled in Florida in the company of “a mellow old red cat named Charles, several untalented parrots, numerous other unnamed creatures and the occasional visiting magus or sorcerer’s apprentice”.

Randi was a founding fellow of the Committee for the Scientific Investigation of Claims of the Paranormal (CSICOP), and received a “genius grant” from the American MacArthur Foundation.

He also set up the James Randi Educational Foundation, which gave prizes and scholarships, provided data for researchers and the media – and offered a $1 million (£750,000) reward to anybody who could prove supernatural or paranormal powers under scientific conditions.

The foundation stopped taking applications when Randi stepped down in 2015, and the money remained unclaimed.

James Randi married, in 2013, Deyvi Peña, who survives him.

James Randi, born August 7 1928, died October 20 2020     

Pictures of Sound: One Thousand Years of Educed Audio: 980-1980

Using modern technology, Patrick Feaster is on a mission to resurrect long-vanished voices and sounds—many of which were never intended to be revived.

Over the past thousand years, countless images have been created to depict sound in forms that theoretically could be “played” just as though they were modern sound recordings. Now, for the first time in history, this compilation uses innovative digital techniques to convert historic “pictures of sound” dating back as far as the Middle Ages directly into meaningful audio. It contains the world’s oldest known “sound recordings” in the sense of sound vibrations automatically recorded out of the air—the groundbreaking phonautograms recorded in Paris by Édouard-Léon Scott de Martinville in the 1850s and 1860s—as well as the oldest gramophone records available anywhere for listening today, including inventor Emile Berliner’s recitation of “Der Handschuh,” played back from an illustration in a magazine, which international news media recently proclaimed to be the oldest audible “record” in the tradition of 78s and vintage vinyl. Other highlights include the oldest known recording of identifiable words spoken in the English language (1878) and the world’s oldest surviving “trick recording” (1889). But Pictures of Sound pursues the thread even further into the past than that by “playing” everything from medieval music manuscripts to historic telegrams, and from seventeenth-century barrel organ programs to eighteenth-century “notations” of Shakespearean recitation.

In short, this isn’t just another collection of historical audio—it redefines what “historical audio” is.

How to Create App Clips for iOS 14

At WWDC20 Apple showed many exciting updates and innovations, but my favourite addition this year has been App Clips. With our phones bursting with installed apps, App Clips could be the right solution for iOS users that prefer minimalism, and for many day to day use cases, such as ordering food in coffee shops, short-term renting or location-specific experiences (like shopping mall maps).


An app clip is a lightweight subset of your app, available as a part of the same Xcode project. Each app clip should perform its particular flow quickly and only when needed. One app can provide multiple app clip experiences configured with App Store Connect.

An app clip experience on your device usually starts with performing an invocation, which can be done by scanning a QR code, reading an NFC tag, etc. Since app clips are small parts of the app (<10Mb), they can load very fast. If the user has the full application version installed, tapping the suggestion card on the screen will launch the app instead of the app clip.

Since the app clip’s code is located in an additional target of your Xcode project, your full app can share existing UI components, code parts, and frameworks with app clips. However, app clips have some limitations due to preserving user privacy: according to documentation, CallKit, CloudKit, HealthKit, Speech, etc. are not available for an app clip use. You can‘t access data from popular system apps such as Apple Music, Files, Reminders and Contacts. You can find full description of app clip limitations and available technologies on the Apple Developer portal.

App Clip Discovery

Users can discover an app clip in multiple ways. Each invocation type could be useful in different scenarios.

App Clip Code

This method might be the most interesting of all. As Apple states on their website, this code can contain an encoded URL and a NFC tag. At the time of writing (October 2020) we don’t know how to create these codes – Apple will provide more information later this year.

QR Code

Using the Camera app or a barcode reader, users can scan codes to open an app clip card.

NFC Tags

By placing your phone near an NFC tag, you can invoke an app clip card even with a locked screen.


You can open a shared app clip from the Messages app.

Place Cards

An app clip can be associated with a place in Maps and invoked from its description.

Smart App Banner

You may have seen this banner in Safari, but additionally, it can suggest an app clip after updating configuration parameters.

Creating an App Clip

We will demonstrate adding app clips to an existing app because it might be the most popular use case. Here is an example scooter rental app written with SwiftUI that lets you select a scooter on the map and access a support chat.

We created a simple model based on ObservableObject to store and update application data in runtime. Since we only wanted to demonstrate app clips features, there is no reason to setup a database and create a more traditional data layer. Instances of this model will be passed as an environment object to corresponding views.

The main screen is represented by a MapView based on MKMapView from MapKit framework. We’ve implemented the UIViewRepresentable protocol and a Coordinator class to make MKMapView work as a SwiftUI view.

When the user selects a scooter on the map the app shows a popup view with rental details.

For the chat screen, we added a SwiftUI view with dummy content.

All these models and views are located in the project’s shared folder, which means we can add them to both app and app clip targets.

The full Xcode project is available on GitHub. You can see the whole implementation and, of course, test it on your device.

Add an App Clip Target

First of all, you need to create a new target from the App Clip template. The overall process is quite simple.

In order to handle the invocation URL parameters in your app clip, you need to add the Associated Domains Entitlement both to the app and app clip targets. If you are familiar with Universal Links, this process should be pretty easy. Don’t forget to add appclips prefix to your associated domain name.

You need to apply configuration changes to the webserver too. Add an appclips dictionary with the app clip bundle identifier to your existing Apple App Site Association file.

Since we are going to reuse existing UI components, we need to add an active compilation condition to the app clip target. This value will allow us to separate parts of code not required for or not compatible with our app clips.

Responding to Invocations

As we mentioned earlier, to respond to user actions and show them the app clip state with correct invocation data, we need to handle the invocation URL in our SwiftUI App file. You can read more about the invocation URL structure and its association with App Clip launch experience on the Apple Developer Portal. Apple did a great job of explaining this topic. Because this code is only required for an app clip target, let’s add an if condition with our APPCLIP value check. In this code listing, we will implement a handler function for the webpageURL property of the NSUserActivity object. We will update our application data model after parsing the URL components path and query items.

In our case user can invoke the app clip with two possible URL paths:

  • /scooters?id={id} to select and show a scooter card by finding it using its identifier
  • /help to access support chat

Since our SwiftUI based components depend on the AppModel object data, the app will correctly handle updated properties and update its visual state.

Testing App Clips

Testing is an essential part of app clips development, and Apple provides various methods to do it.

Environment Variable

  • Click on the active scheme selector in Xcode and select Edit Scheme.
  • Select and set _XCAppClipURL environment variable value with the required URL.
  • Run the app on the device or simulator to test app clip invocation.


  • Upload a new build of your app to App Store Connect.
  • After build processing, select your app in the Testflight tab.
  • Add required URLs to the App Clip Invocations section.
  • You should find your app clips list to test in Testflight app.

Local Experiences

This method is only available on iOS 14.2 (or above) and Xcode 12.2. Local Experiences behave the same way as Advanced Experiences in App Store Connect.

  • Make sure that your device is in developer mode.
  • On you device open Settings and select Developer.
  • Go to Local Experiences and select Register Local Experience.

Here you can setup your app clip invocation properties the same way as in App Store Connect.

After local experiences setup, open the Barcode scanner and scan the QR code with encoded invocation URL to present associated App Clip Card.

We hope this tutorial will help you discover the potential of app clips experience for your current or future apps. We recommend you take a look at App Clips documentation on the Apple Developer portal to find out more information about various aspects of setting up app clips.

To sum it up, here is a small video where you can see how app clips can be useful in a real-world scenario.

[embedded content]

Don’t forget to subscribe to our Twitter account and keep up to date with the latest development news and tutorials.