Some years ago (I have the awful feeling it was 1999) I was stricken with a bout of tingly numbness in my right hand. When you’re a computer programmer, the thought of being unable to type, and thus unable to program isn’t something you ever want to deal with. Terry Pratchett’s words about gnawing the arse out of a dead badger if it would make it better spring to mind. So, I replaced my mouse with a trackball, got a better chair and invested three hundred and some pounds of my own money in a Maltron keyboard.
I had such fun. Though I’m never, ever, livecoding half an unwritten talk in an Emacs window again.
You want proof?
Also. I’m not dead, I’m just writing a book on Higher Order Coffeescript for O’Reilly and I alternate between bouts of horrid mental block and massive splurges of disorganized content where everything seems to be more important than everything else.
Today is Alan Turing’s 100th birthday. I’ve been thinking about him lately, in particular about a story that demonstrates the perils of working with genius.
The story goes that, when Turing was working with the Manchester Baby (the first stored program computer ever built. Just) a colleague wrote the first ever assembler which would turn (relatively) human readable assembly language and turn it into the ones and zeroes of machine code that the machine could actually execute.
Two bulls were grazing at the bottom of the big pasture, when the farmer let a load of heifers in at the top gate.
“Hey,” said the young bull to the old, “What do you say we run up there and fuck us a couple of heifers?”
“Well,” said the old one, “You’re welcome to do that if you want to, but I plan on walking up there and fucking all of them”.
I sometimes think that I should have published the lyrics to Child of the Library with a bibliography. The references in the second verse are all obvious to me, but I’m a white middle class English boy who grew up around boats. My childhood reading and yours may not intersect all that much.
So…
The Walkers and the Blacketts Also known as the Swallows and Amazons. Swallows and Amazons is the first ‘big’ book that I can remember reading for myself.
Or… what I did this summer.
Summer as been frantic. Mostly joyous, but frantic.
I had talks accepted at both YAPC and OSCON. Because YAPC was in Asheville, and the Swannanoa Gathering Traditional Song Week fell the week after YAPC, that meant I flew out to Asheville for an intense fortnight of Perl community engagement followed by a week spent singing myself hoarse and being blown away by Sheila Kay Adams’s singing and her stories of mountain life and listening to future stars like Sam Gleaves and inspiring activists like Saro Lynch Thomason.
So, on Saturday, the opening line, and pretty much the entire tune, of a song banged on my head as we went to our local Library to fill our boots with books and generally get with the “Save our Libraries” message. Here it is. Sing it out. Sing it loud.
Open Ears, Open Mind, Open Mouth. Music Making Made Easy Blurb Our bodies are the most versatile and sophisticated musical instrument we know. From the complexities of making at beat with our hands and feet to the surprising simplicity of harmony singing, we are all of us musicians.
Abstract Musicmaking isn’t some kind of sophisticated profession that requires the intervention of gatekeepers and techno priests. You don’t need autotune, you don’t need a record label, you don’t need drums, a guitar or anything else but your hands, feet, ears, brain and mouth to make music that will satisfy you for the rest of your life.
I’m working on a web service, and that means that I need to build lots and lots of mildly different looking HTTP requests with various combinations of headers and requested URLs. The camel’s back got broken this morning when I realised I didn’t want to be writing a method called ssl_request_from_uk_with_bad_cert, which builds me an HTTP::Request with a particular combination of headers, that I can use with Plack::Test to test our webservice.
In Higher Order Javascript, I introduced Streams and showed how to use them to implement a lazy sort. I think that’s neat all by itself, but it’s not directly useful in the asynchronous, event driven execution environment that is the average web page. We’d like a structure where we spend less time twiddling our thumbs as we wait for force to return something to us. Non blocking streams What if we change the protocol of our stream to something more asynchronous?
To my surprise, several people have asked for the slides from my Øredev talk on Higher Order Javascript, and I’ve followed my usual practice of saying “Sorry, no”. Slide decks are a terrible teaching medium - they’re fine if they come with the presenter, but if they contain enough information to read as if they were a book, then I’m prepared to bet that they made a terrible presentation. Good presentations have a synergy; slides illustrate what the speaker is saying and neither the speech nor the slides should really stand alone.
Crikey! What an intense few days.
Last Friday, I got some email from Giles Bowkett saying that he’d had to flake on a conference in Sweden and could I take his place. The brief was to “be interesting, and I know you can nail that in your sleep”.
Last Saturday, I read it. And being flattered by Giles’s silver tongue answered to say “Probably, when is it?”.