Does Anne of Green Gables Dream of Electric Sheep?

Caroline M Yoachim – A Rabbit Egg For Flora 

Adam Berman – Egg Tooth

Philip K Dick – The Preserving Machine

In an early Philip K Dick fairy-tale, an eccentric scientist invents a machine for turning musical pieces into animals. It works quite well, at least when the animals are kept inside, as pets. The animals can be easily converted back into recognizable entries of the classical canon. Yet the point of the project is preservation for the ages, across scores of generations, and when released into the nearby forest, the animals change. Some are eaten. Some turn wild. When the pipe-organ-like machine is used to convert them back, the result is strange, disturbing, sounds, barely classifiable as music at all.

A Rabbit Egg For Flora, by Caroline Yoachim, feels like it is set in one of these PKD worlds, while telling a story that the great man seemingly never could. In The Preserving Machine, for example, the vivid clunking fact of the machine breaks down for the characters, while reality of the world grows for the reader. Character reality frays and reader reality intensifies. Rabbit Egg is not about fraying, but repair. A single parent and her daughter play a game, discovering artificial eggs. It’s Pokémon, but for nanotechnological wonders which restore ecosystems.

“What do you think it will be?”

“Bobcat!”

I laugh. “I don’t think our local ecosystem can support a predator that big.”

“Deer!”

“Lobster!”

The dark-haired boy snorts. “The sea-life expansion got pushed back three months because ocean acidity is still too high.”

Behind the children’s game, this is a world of catastrophic loss. It is perhaps decades or centuries in the future: probably billions of people died as supporting natural systems collapsed around them, before everything finally bottomed out. It is perhaps a few decades on from the dayglo dystopia of Do Androids Dream of Electric Sheep?, where, unlike Blade Runner, Deckard had an obsessive hobby of trying to find pet animals, and where even dogs and cats are so rare they are fabulously expensive. Rabbit Egg, daringly, takes this place as the setting for a charming childhood romance. It’s in a solarpunk collection, and this is the solarpunk gambit, really: envisioning repair instead of doom. Eventually, in Androids, Deckard finds a frog, which he doesn’t recognize is actually a mechanical simulacra. He is always a childlike assassin. You can imagine him enjoying searching for eggs.

Egg Tooth, by Adam Berman, is an uneasy, meticulously crafted, story that doesn’t show its cards early. It could be set in a more orderly, Australian, corner of that same collapsing world, albeit without any androids. If the voice of Rabbit Egg is Anne of Green Gables, the voice of Egg Tooth is clearly Kafka. This is not the cartoon avatar of bureaucratic frustration found in popular culture. (Is it a red tape? Is it a show trial? No – it’s Kafkaman!) This is the baffled observer-protagonist of The Castle or the A Country Doctor, intensely moved, evicted from his own head.

Between the apartments were skyscrapers in varying styles and states of decay. Whereas the oldest buildings tended to be the most complete, more recent projects appeared unfinished, with large black tarps covering jagged upper floors. The older buildings paid their penance in other ways, being covered in higher concentrations of graffiti and torn nylon banner advertisements. 

I am cagey about sharing the details of Egg Tooth, lest I inadvertently pick apart its fine weave. There are plenty of stories about the future being horrible, and they generally don’t interest me. What makes Egg Tooth compelling, and a little sickening, is the implication that among the collapse, this society is a relative success: a place of orderly utilitarian kindness among more general chaos, with famine and death just off-screen.

Both of these stories appear in collections of solarpunk science fiction, though Egg Tooth is by far the glummest boat in the sunny tech nouveau solarpunk regatta. Despite the revolutionary names of solarpunk, or even Extinction Rebellion, green politics is often forced to be conservative, or even reactionary – stop doing this, stop killing that, restore what was good and beautiful and pure. Flora wants rabbits back; in Egg Tooth the platypus may just be saved. Indeed, we need to stop and restore! But this is also why, politically, it’s so easy to slip from green to ecoreactionary; to the idealization of past social and technical forms. (And from there, ecofash is but a short goosestep away.)

Solarpunk is a countermovement of repair. It does not idealize feudal peasant tech and social mores, but puts the technology of the sun in its name. If we need romanticism, well, this is a far better romance. I hope Flora gets her rabbit egg, given she lives in North America, where it is not a pest. But the clever nanites that build the rabbits are also little conservatives, rebuilding what once was. Though both of the stories I’ve talked about here are great, and take risks in their own ways, most solarpunk plays it safe. Solarpunk is usually solarcozy. Quite a lot of it is secretly Egg Tooth wearing sunglasses – the literature of the precautionary principle and managed decline.

Most solarpunk I’ve seen – and much of these two collections – is good at the local, the relational, and the romantic – the Mrs Brown stories of the Turkey City Lexicon. This is a strength where science fiction traditionally had a weakness. It is good to have stories like this. The two stories I’ve named don’t span all of the weird creatures of the subgenre. But I wonder, based on what we’ve seen so far, whether this cozy vision can encompass the radically changed, and the truly planetary.

There are two and a half stories I imagine could only be written if solarpunk writers stopped playing it safe. The half is Fully Automated Planetary Solarpunk, a setting with Green Stack crisis management and universal basic services, which writers like Kim Stanley Robinson have at least had a crack at. The second is a Neo-Edwardian High Tory Solarpunk, with Art Nouveau aesthetics, solar industrialists, plucky aristocratic Indian adventuresses, and imperial confidence in multi-generational stewardship. I have to admit I name this one partly for the joy of the cognitive-political dissonance it implies in a community which can be painfully earnest at times. But beyond that, stories which deal with the age of Dadabhai Naoroji and the first National Parks also ask what it means to wield and abuse power across global networks, to preserve ecosystems, and to valorize traditional and indigenous continuity. The third, often quite incompatibly with the other two, would be a xenofeminist solarpunk, a solarpunk of unprecedented scale, cunning, and vision, a tech-subverting, wilderness-unleashing liberatory force, that like punk, would celebrate the strange, wild things that hatch from future eggs.

A Rabbit Egg For Flora by Caroline M Yoachim is published in Multispecies Cities. Egg Tooth by Adam Berman is published in And Lately, The Sun.

Kafka As Deterritorializing Stream Function

Sometimes he accompanied her on her errands in the city, where everything had to be carried out in the utmost hurry. Then she would almost run to the next subway station, Karl with her bag in his hand, the journey went by in a flash, as if the train were being carried away without any resistance, already they were getting off, clattering up the stairs instead of waiting for the elevator that was too slow for them, the large squares from which the streets flowed out in a starburst emerged and brought a tumult of streamed lines of traffic from all sides, but Karl and Therese hurried, tightly together, to the different offices, cleaners, warehouses and stores which weren’t easy to contact by telephone in order to make orders or complaints, generally trivial things.

– Kafka, Amerika, Hofman trans.

“No one is better than Kafka at differentiating the two axes of the assemblage and making them function together,” say Deleuze and Guattari, and though they are referring to the Czech writer, it applies quite well to the open source distributed message queue too, even though the quote was written thirty years before its invention. Kafka in either form effects both decoupling of components and a disintegration of content. Models, formats and codes are first broken down, then made available to be reassembled in other ways.

I admit that when I first heard of it, naming an information processing system after a writer famous for depictions of absurd, violent and impenetrable bureaucracy did strike me as bold. It evokes The Departure (Der Aufbruch) as router documentation, or An Imperial Message (Eine kaiserliche Botschaft) as a Service Level Agreement. Perhaps we can think of the system developers as finally addressing Franz’s eloquent, frustrated, bug reports. Jay Kreps, the namer of Apache Kafka and one of the co-creators (with Narkhede and Rao), simply explains that he wanted his high performance message queue to be good at writing, so he named it after a favourite prolific writer. Fortunately complete publication and reading doesn’t also require the process dying of tuberculosis, followed by a decades-long legal case. Even if Kreps did have a deeper correspondence in mind, if I were forced to explain the name all the time, I might just smile and point at my Franz fridge magnet too.

The D/G quote is from the Postulates of Linguistics chapter, concerned with the way meaning is imposed on communicating agents and their intertwining systems.

On a first, horizontal, axis, an assemblage comprises two segments, one of content, one of expression. On the one hand it is a machinic assemblage of bodies, of actions and passions, an intermingling of bodies reacting to one another; on the other hand it is a collective assemblage of enunciation, of acts and statements, of incorporeal transformations attributed to bodies. Then on a vertical axis, the assemblage has both territorial sides, or reterritorialized sides, which stabilize it, and cutting edges of deterritorialization, which carry it away. No one is better than Kafka at differentiating the two axes of the assemblage and making them function together.

– Deleuze and Guattari, November 30, 1923: Postulates of Linguistics, A Thousand Plateaus

Deleuze and Guattari are secret pomo management consultants at heart, and as their dutiful intern I have accordingly expressed the great men’s vision as an Ansoff Matrix slide for distribution to valued stakeholders.

Compare this Jay Kreps slide from Strange Loop 2015, itself entirely representative of a million whiteboard sketches accompanying middleware everywhere:

For middleware, what D/G call the cutting edges of deterritorialization, we might call a payload codec. The data structure used within the producing process is disassembled, scrambled into a bucket of bytes, then carried away along a line of flight – in this case a Kafka topic. A Kafka topic is a transactional log, a persistent multi-reader queue where the removal policy is decoupled from reader delivery, and retention is instead controlled by time or storage space windows. (Blockchains are public transaction logs optimised for distributed consensus and no retention limit. Hence their inherent parliamentary slowness.) The consumer then uses its own codec to reterritorialize the data – making it intelligible according to its own data model, and within its own process boundary. Though nowadays the class signature of the messages may match (say both sides use the JVM and import the definition from the same library), at a bare minimum the relationship of those messages to other objects and functions within the process differs.

In Anti-Oedipus, D/G call reading a text “productive use of the literary machine”, and it’s along those lines that the quote continues:

No one is better than Kafka at differentiating the two axes of the assemblage and making them function together. On the one hand, the ship-machine, the hotel-machine, the circus-machine, the castle-machine, the court-machine, each with its own intermingled pieces, gears, processes, and bodies contained in one another or bursting out of containment (see the head bursting through the roof). On the other hand, the regime of signs or of enunciation: each regime with its incorporeal transformation, acts, death sentences and judgements, proceedings, “law”. […] On the second axis, what is compared or combined of the two aspects, what always inserts one into the other, are the sequenced or conjugated degrees of deterritorialization, and the operations of reterritorialization that stabilize the aggregate at a given moment. K., the K.-function, designates the line of flight or deterritorialization that carries away all of the assemblages but also undergoes all kinds of reterritorializations and redundancies – redundancies of childhood, village life, bureaucracy, etc.

 – Deleuze and Guattari, ATP ibid.

Cataloguing these correspondences between D/G’s description of Kafka and the software that bears his name is not intended to ignore that their contact is a kind of iconographic car accident. Kafka is a famous, compelling writer, and frequent cultural reference point, after all. The collision of names reveals structural similarities that are usually hidden.

In the Kreps talk above, titled in Deleuzian fashion “Apache Kafka and the Next 700 Stream Processing Systems”, he also introduces a stream processing API to unify the treatment of streams and tables. The team saw this as crucial to Kafka’s identity as a streaming platform rather than just a queue, and delayed calling Kafka 1.0 for years, until this component was ready. Nomadic messages escape through the smooth stream space, before capture and transformation in striated tablespace as rows in data warehouses.

First version of Tetris.

This unification of batches and streams echoes a similar call in computational theory by Eberbach. Turing computation is built around batches. Data is available in complete form at input on the Turing machine tape, then the program runs, and if it terminates, a complete output is available on the same tape. The theory of computability and complexity are built around this same encapsulated box of space and time. Much of what computers do in 2018 is actually continual computation – the reacting to events or processing streams of data that have no semantically tied termination point. That is, though the process may terminate, that isn’t particularly relevant to any analysis of computational complexity or performance we want to do. When editing a document on a computer, you care about the responsiveness keystroke to keystroke, not the entire time editing the document as if it were one giant text batch.  

By contrast, modern computing systems process infinite streams of dynamically generated input requests. They are expected to continue computing indefinitely without halting. Finally, their behavior is history-dependent, with the output determined both by the current input and the system’s computation history.

 – Eberbach, Goldin and Wegner – Turing’s Ideas and Models of Computation

Streams are a computational model of continuation, and therefore infinity. In their wide-ranging 2004 paper, Eberbach and friends go on to argue for models of Super-Turing computation. This includes alternative theoretical models such as the π-calculus and the $-calculus, new programming languages, and hardware architectures.

We conjecture that a single computer based on a parallel architecture is the wrong approach altogether. The emerging field of network computing, where many autonomous small processes (or sensors) form a self-configured network that acts as a single distributed computing entity, has the promise of delivering what earlier supercomputers could not.

 – Eberbach et al, ibid.

These systems are now coming into existence. Through co-ordination with distributed registries (Zookeeper here), and with the improved deployment and configuration baseline devops techs have brought in, spinning up new nodes or failing over existing nodes is autonomously self-configured. Complete autonomy isn’t there, but it seems a high and not particularly desirable bar for many systems. Distributed systems and streams predate Apache Kafka, nor shall it be the last one. Yet is marks a moment where separate solutions for managing streams, tables and failover are concretized in a single technical object, a toolbox for the streaming infrastructure of infinity.

References

CCRU – Ccru Writings 1997-2003
Cremin – Exploring Videogames with Deleuze and Guattari: Towards an affective theory of form
Deleuze and Guattari – Anti-Oedipus
Deleuze and Guattari – A Thousand Plateaus
Eberbach, Goldin and Wegner – Turing’s Ideas and Models of Computation
Kafka, Hofman trans. – Amerika (The Man Who Disappeared)
Kreps, Narkhede and Rao – Kafka – A Distributed Messaging System For Log Processing
Kreps – Apache Kafka and the Next 700 Stream Processing Systems (talk)
https://youtu.be/9RMOc0SwRro
Narkhede – Apache Kafka Goes 1.0 https://www.confluent.io/blog/apache-kafka-goes-1-0/
Pajitnov – Tetris (game)
Stopford – The Data Dichotomy: Rethinking the Way We Treat Data and Services https://www.confluent.io/blog/data-dichotomy-rethinking-the-way-we-treat-data-and-services/
Thereska – Unifying Stream Processing and Interactive Queries in Apache Kafka https://www.confluent.io/blog/unifying-stream-processing-and-interactive-queries-in-apache-kafka/