Monday, February 18, 2013

Book Review: Mr. Penumbra's 24-Hour Bookstore

This is a wonderful book about the nature of books, technology and eternity. A young man loses his job as a designer for a bagel company and falls into a position at a bookstore. I turns out that the bookstore is a front for ... Okay, there we stop the book review. Other than bagels, I haven't mentioned anything about food.

There is food speckled and spackled throughout this novel from the beginning where Clay, our protagonist, is working for a bagel company, talks about a room mates kitchen obsession, runs into Google food oddness and ends the book proper with desultory sushi just before the denouement. That's not what struck me.

Robin Sloan, in the first part of Mr. Penumbra's 24-Hour Bookstore, has his hero Clay is trying to explain the programming language Ruby. It has caused me many hours of thought.
"Imagine that you're cooking. But instead of following the recipe step-by-step and hoping for the best, you can actually take ingredients in and out of the pot whenever you want. You can add salt, taste it, shake your head, and pull the salt back out. You can take a perfectly crisp crust, isolate it, and then add whatever you want to the inside. It's no longer just a linear process ending in success or (mostly, for me) frustrating failure. Instead, it's a loop or curlicue or a little scribble. It's play."
 I have been fascinated by the idea of cooking as being modular for a while now. I think of it more like one of those wheels that turn to mix and match pieces to form something funny - madlibs or maybe exquisite corpse. I have had several ideas to turn a dish into components that can get swapped in and out depending on style of cooking, ingredients at hand, national or regional flavour profiles or some other type of whimsy. The blog posts labelled How to Read a Recipe are an attempt at coming up with a structure that would work.

This analogy of programming to cooking is apt. It speaks to me as a man of a certain age who works with computers and coding. I use SQL for moving data about in databases. The same effect (dish or desired query outcome) can be achieved multiple ways. Even the same person coding the query might change it due to small change in effect or just doing it a different way.

The thoughts could have stopped there but that word language always throws me into overdrive. Computing languages are a way for people to tell machines what to do. In that way, they are simplified mathematical/logical instructions. Programmers are kind of like recipe writers. Programming languages are not really languages and I am not sure that recipe cooking by itself would qualify the person cooking to be a chef. In programming, the equivalent would be script kiddies. These are people, usually young people or novices, who find code on the web to do their bidding and run it without necessarily understanding the code.

Let's pull back and talk about linguistics. Maybe cooking is like a generative grammar, a series of instructions for a given culture's cooking. Anything that is created using these rules would be -- let's say an Italian dish.

Instructions for grammar are things like subject verb agreement, whether a language has feminine/masculine words and that sort of thing. Instructions for cooking would be more like techniques that are acceptable or certain food taboos. Ingredients are the vocabulary. Sometimes foreign vocabulary is used but it never quite means what it does in the original language. More could be expanded but I leave that to you to waste your hours.

The funny thing is that grammar and food histories are often related. The techniques of the Romantic languages are shared. Slavic cultures share some common grounds in language and food as well. This further spirals into thoughts about whether language itself shapes food culture. These are the questions that I am ill equipped to answer or even begin to posit any theories but damn, do they ever make me feel like a little kid finally figuring out how big the sky is.

Anyways, this book is a fun read. It seems as if someone has discovered this treasure trove of stuff that makes 40 year old geeks go squee. This book, along with Ready Player One, tickles me. Food, coding, fantasy novels and books are threaded throughout this book and it kept me entertained for a few hours. What else can you ask a book to do?

No comments:

Post a Comment