Raspberry Jammin’

Last Saturday was the Linux User & Developer Raspberry Jam event at Poole RNLI college. I took the tank, of course, and Joseph too — worrying all the while that he’d be the youngest kid there by about ten years, and he’d get bored within half an hour.

How wrong I was.

We eventually escaped almost an hour after the scheduled end of the event, once Joseph and the other kids — many his age — had had their fill of Minecraft and the Raspberry Tank.

Along the way we’d met the awesome people from PiBorg with their much more impressive RPi tank, along with robot arm-wielding BigTraks and 3D LED matrices. We’d done a show-and-tell session, drunk a lot of coffee, and most importantly been part of a room of 20+ kids all learning to code for the first time using Python and Minecraft.

It was really an amazing thing to see and be part of, and my heartfelt thanks go out to the organisers from Linux User for hosting a fantastic day!

Here’s the kids playing with our tank:

Cyberpunk

The early years of the twenty-first century.

The boundaries between the real world and the cyber world grow thinner with each passing day. Megacorporations vie for our attention, our clicks, our hearts and minds; their walled gardens are their own private networks in which they suck up our data and sell it to the highest bidder.

In every citizen’s pocket is a communicator, a flat black slab of plastic with immense computational power, which ties them into the ebb and flow of cyberspace around them. Their lives are managed from afar by artificial intelligences living in the vast basements of the Megacorps. “Siri, when is my next appointment?” they ask, and far away, photons flicker in the heart of the vast machinery that will decide how their day will play out.

Some rebel against their devices’ secret corporate agendas, exploiting flaws to rip out their Megacorp guts and replacing them with something knocked up in a tech wizard’s basement — quirky, error-prone, but free.

Cyberspace leaks into the world in other ways too, with the rise of VR for socialising and escapism; with augmented reality overlays built into stratospherically expensive glasses; with always-on Orwellian cameras and microphones in our living rooms, lying dormant until they pick up on trigger phrases like “Xbox, on” or “kill the president”.

The high-tech terminals of the rich are assembled in Asian sweatshops for pennies, and two years later they are out of fashion, shipped back to Asia to be disassembled and stripped for Rare Earth elements in towns thick with carcinogenic smog.

Behind it all, larger battles are fought across the terrain of cyberspace. Shadowy government agencies hack companies and citizens wholesale, tapping into fibre-optic cables and stealing the privacy of nations on their futile quest to defeat a nebulous threat. Other hackers strike back under the pretense of defending the public interest, operating beyond the law and hiding beind digital masks.

Above and beyond them, the world’s militaries fight a shadowy online war of infiltration and sabotage; creating weaponised malware that lies dormant until its time to lay waste to a factory and a nation’s nuclear ambitions.

The year is 2014, and somehow, without realising it, we got exactly the future we were promised.

The Lego of Tomorrow

“All I’m doing is building stuff,” Joseph says.
“That’s what Minecraft is good for, isn’t it?” I reply. “It’s like Lego with infinite pieces.”
“Yeah,” he says, and turns back to his computer screen; back to the childhood task of creating the new.
I turn back to the washing up that I was in the middle of, back to my adult role of cleaning and tidying and preserving that which already exists.

It feels odd to be writing about Minecraft in 2014. Following its 2009 “alpha” release, it quickly became the darling of the indie gaming world. There’s not a lot to say about it that hasn’t been said by countless reviewers and bloggers over the intervening years. I’d played it myself a few times—I made my character wander around, mine some rocks, fight some monsters, craft a few things. But I never “caught the bug”. That’s the all-too-adult brain at work again—I looked at the landscape and appreciated it for what it was, not what it could become.

Today though, for the first time, I saw Minecraft through the eyes of a child.

Raised on a self-imposed diet of videogames since he was old enough to shake a Wiimote, our son has never had the enthusiasm for Lego that I did at his age. While I would disappear to my room for an afternoon to build, he always wanted to spend it with gamepad in hand. On occasion I despaired for him and his generation. I worried that their entertainment had become so pre-packaged and targeted that they wouldn’t want to create their own games. How could silent, limited, awkward Lego sets compare against a million man-hours of Nintendo’s finest creators delivering pure entertainment?

But now I sit and watch Joseph at work, and I know how wrong I was.

As night falls, his character flies up over the landscape and looks down to behold all that he has created. Torches spread out across the world like the fires of a nascent civilisation, casting light upon those things that human hands have built.

There are houses, now, where once there was only grass. Some of the roofs are made of coal and supported only by bookshelves and hay bales, but they are houses nonetheless. They are dry when the rain pours outside. There was a bed for his character to rest in, but now there are more than a dozen—for his character’s parents, siblings and cousins, Joseph explains.

There are railways that connect them over fragile bridges far from ground. There is a torchlit tunnel beneath the surface, joining the houses of the tiny village to the woods where sheep and cows roam. There was a spider that “freaked him out”, so Joseph’s character started to carry a sword with him at all times.

The environment, once wild and random, was being tamed.

Then Joseph noticed that water would flow if the ground around it was removed. The great lakes of his world could be channeled. The tunnel became a great underground river, bringing water near to the houses of his people.

He built a black-lined room carved out of a hill, and decorated each block with a torch.
“It’s a Christian place,” he explains. “My character is a Christian.”
I had just watched that nascent civilisation invent religion.

Dawn breaks. Among the high forest canopies there now stands something else—a tower, built on lowlands but rising taller than the hills. It is a vast structure of stone and glass and, for some reason, pumpkins. It is not built the way an architect would build, but nor does it look like a work of nature. It is the work of an almighty creator not restricted by principles of gravity or shearing moments. It is not utilitarian; not a house or a bridge or a water channel. It is something that was built just because it could be built.

The land was tamed, now; the world mastered. And so his one-man civilisation had reached for the stars.

I am no longer under the illusion that neat, rail-roaded videogame adventures will leave us a generation lacking the desire to create for themselves.

He may not spend his afternoons building Lego cars, but that’s okay. Within the last four hours I’ve watched him take a world of random-seeded entropy and transform it into a place where bridges of stained glass tower over the skies.

I think our children’s generation will be just fine.

By Distant Shores

We sit and eat lunch by the sea, our cars parked up on the sand, engines running, air-con on. In front of us, waves roll into the shore bearing an ocean’s worth of hydrocarbon flotsam. A nylon rope from a Malaysian yacht, perhaps; a Madagascan trawler’s fishing floats, or a sandwich carton blown into the sea from a cruise ship—it all washes up here, where the wide Indian ocean begins to narrow.

Further out, a tug boat steams slowly down the coast, pulling behind it a crane barge off to some new construction or oil project. Behind them, almost lost to the haze, a horde of tankers and vast cargo ships wait patiently for their turn to refuel from the vast offshore buoys that tower like houses over smaller vessels.

At night, their lights look like a mirror image of the city; a mirage of some other town on some other shore only a few miles away.

Behind us, a gale brings a country’s worth of sand through the mountains and down to the sea. We face towards the sea not just because it’s a good view—coming from a place without them, I would much rather see the mountains—but because we have more shelter than the sand that way. It stings the eyes, chafes the throat and sticks in patches on sweaty skin.

No wonder the locals think of the beach as a place to park their cars.

I am from Britain, a country which by global standards has a very odd relationship with its beaches. For many countries—the hot ones especially—the beach is where a desert or a salt flat unceremoniously meets the sea. Even in other countries with a coastal tourist industry, where the beaches are cleaner and cared for, they are at least a contemporary place where people come to have fun. But in Britain, we go full-on quaint.

In the British consciousness, beaches are intertwined with the idea of times past—perhaps a national reminiscence about seaside holidays. Our hotels are set back from the beach to make way for beach huts, places for the Victorians and those with their sense of modesty to change into their swimming costumes. Nowadays they cost as much as houses. There are beach-front bingo halls and arcades, concert halls on piers and helter-skelters and Punch-and-Judy shows. The beaches are policed by council litter-pickers; the town desperate to keep the “Blue Flag” status that could—in the councillors’ minds—make or break a seaside town.

The sheer suggestion of driving a car on that is enough to make a Brit squirm uncomfortably.

Our lunch finished, we drive the fifty metres or so to the industrial-size rubbish bin in the middle of the beach. As I throw in a stack of polystyrene cups, one of them slips from my grasp and tumbles away towards the sea. I chase it half-heartedly for a few seconds, but the wind carries it faster than I can run. It skitters off into the breaking waves, gone to join its plastic cousins that will still be washing against these shores a hundred years from now.

I have, unwillingly, become part of the problem.

But to my left stands a forest of oil tanks, millions of cubic metres in all, and a few miles offshore in front of me sail ships with millions more. Behind me four-by-fours screech along the sandy highway, burning petrol like it was as cheap as water—because in this part of the world, it is.

I am a very small part of a very big problem; a problem that easily escapes your mind when your beach is neat and tidy and every second lamp-post bears a recycling bin.

And So Into 2014

I could tell, as we headed back to our old haunts in our university town and the car stereo decided to play VNV Nation’s “Beloved”, that it was going to be a reminiscent sort of New Year. For the first time in many years, I spent at least part of the day with friends in Southampton—friends we have now known for 10 years, and who defined the time in which I came of age. And although we spent only a few hours—in some cases barely a few minutes—in their company, it was worth a lifetime.

2013 has been a good year.

It was a year that started in snow, triumphed in a summer just long enough and hot enough to be remembered, and finished with storms battering against the tightly-shut windows.

It was the year Eric and I finally had our honeymoon, only two years after marrying. It may have only been two days, but we filled them with joy and love and books and for some reason also geese. More than anything we felt young again, a rare experience among parents.

It was the year that I spent my summer by the sea playing with boats and getting paid for it, a year I was given so many opportunities to shine and took every last one of them I could.

It was the year we gained a neice, and Joseph a cousin, and my wife’s family were all together about a table set for ten with food for twenty.

It was the year that I missed RABIES, a party still going after nine years. No longer will there be some old git who has been to every one of them. But although there are some friends from whom I have drifted this year, there are others to whom I have drawn closer. When my regular roleplaying game came to an end in April, I discovered it had left me with a group of wonderful friends that even without the game have been at our flat every Saturday night since.

I have cooked more roast dinners and baked more cakes than in any year I remember, and in doing so brought friends and families closer.

And now I sit awake in a sleeping house, a glass of our own sloe gin in one hand and one of our own gingerbread biscuits in the other. In London, fireworks blaze and music blares across the city. Here by the sea, thunder rumbles and rain pours in chorus outside. But I have my friends and my family, my kith and kin, and that’s all I have ever needed.

I raise my glass, to family and friends near and far; to all away and at home; to the little gods of sloes and fireworks and cold January mornings; to all that changes and all that stays the same; to the spirit of the year departed and that of the one that begins tonight.

Happy new year.

A 50,000 Word Target I can Meet

One of the ways in which a number of my friends spend November is participating in National Novel Writing Month, or “NaNoWriMo”. This is its 15th year, in which some 300,000 amateur novelists signed up to write their hearts out over the course of 30 days.

It’s ten years since I first came across the idea, and in all ten of those years I have professed myself too busy to dedicate that much time to churning out my sub-standard fiction.

This year, though, I discovered a similar project I couldn’t help but have a go at—NaNoGenMo, National Novel Generation Month. The idea is simple—instead of spending November writing a novel, spend November writing a script that can write novels for you.

A lot of NaNoWriMo novels are fanfiction of highly variable quality, so in homage to that, my NaNoGenMo script uses exactly that as its source material: specifically, a user-selected category or search on FanFiction.net. It will scrape the stories it finds for sentences, store them all locally, then set to work mashing them together in various gramatically-reasonable ways until the 50,000-word goal has been reached.

During the course of writing the script I tested it mostly with Doctor Who fanfiction, some of which is not particularly bad. But then I discovered that FanFiction.net has categories for cross-overs, where authors borrow characters from two of their favourite ‘universes’. These are generally, shall we say, less well written.

So, if you’d like a glimpse into a world where Bayesian poisoning spammers hawk not Viagra but My Little Pony / Sonic the Hedgehog fanfiction written by 12-year-olds, look no further than the example output that my NaNoGenMo script generates.

If you’re up for some more bizarre fiction written by haiku-spouting drunken Markov chains, check out the list of NaNoGenMo competitors, quite a few of whom seem to have taken my code to new and stranger heights!

Whatever Happened to the Generic PC?

It doesn’t seem that long ago, perhaps only five or ten years, that you could buy or build your own computer and do whatever you liked with it. If you bought it, it would probably come with an operating system, but if you didn’t like it you could download another one and use that instead.

Nowadays… not so much.

My main computer is a Late 2007, 13-inch Macbook. You can install another operating system on it—so long as you keep the original OS to apply firmware updates. And you repartition the hard disk using Apple’s tools. And you install a custom boot loader. Oh, and even the custom boot loader can’t boot from USB.

My other computer is a Samsung Series 3 Chromebook. You can install another operating system on it—in a chroot, because you have to use Google’s kernel to get proper hardware support. You can try your luck with a proper dedicated install of another OS, but your hardware will be badly supported. Your choice of other OS is a two-year-old version of Ubuntu, or a current version of Arch Linux for which no-one knows how to build Firefox. It boots from USB when it feels like it. The rest of the time, it beeps and restarts with no error messages.

And these days our phones are computers too. The more capable they become, the more like a real computer, the more we resent their limitations.

I have a Droid Razr Maxx. You can install another operating system on it—so long as it’s pretty similar to the one it started with. And it’s compatible with the built-in kernel, which you can’t replace because it has to be signed. So you have to kexec your own kernel on top.

All I really want from a computer is a bunch of POSIX utilities, a tiling window manager, a copy of Firefox and a package manager, preferably APT-based. Ten years ago that didn’t seem too tall an order. But with the computers we have today, I can and have struggled for days to achieve that—before giving up.

Whatever happened to the generic PCs of years gone by? Computers were always supposed to get smaller and cheaper, but why did they also get less useful; less free?

Google for your Dinner

I run Google Analytics code on a number of my websites, as I like to know what’s popular—and maybe deserving of attention—compared to those sites and pages that languish unvisited. But while Analytics is handy for confirming the obvious and pointing out a few unexpectedly popular pages, it’s at its best when it reveals something surprising.

My most popular pages are on the Raspberry Tank—where over 50% of visitors are French-speaking, despite the content being only in English.

One other page stands out as unexpectedly popular, and this one is almost exclusively due to the British. My Great Roast Dinner Timing Chart regularly flirts with the top of Google’s search results, for no adequately-explained reason.

And so, British culture creeps into my visitor stats. Because Brits love their Sunday roasts, which means Sunday’s the day that a hundred or so of them hit the internet to figure out how the heck to make one. And against a background of stable trends from day to day, I get one that looks like this.

Fun with Quadcopters

Over the weekend, my friend Alex visited us and brought his quadcopter in tow. I’ve bee trying my best to dump ideas on the internet and avoid buying my own extremely expensive remote control toys, but I can see the day I give in getting closer.

Here’s my flight over Bournemouth beach, flown as cautiously as you might expect given that I had £500 of someone else’s money in the air!

Lost in Translation

This morning, a friend of mine linked to a great article on why “If you’re going to live in this country, learn to speak the language” is pretty insensitive.

It struck a particular resonance in me, because aside from her emigration, my experience of languages over the last few years has been much like the author’s.

I too had the dumb luck to fall in love with and marry a Spaniard, with no useful Spanish education to rely on when communicating with my newly acquired in-laws — none at all, in fact. While at school I eagerly studied the languages I thought would be useful in life: French, German and Japanese. Since leaving school, none of them have been anywhere as useful as would have been Mandarin, Arabic, Polish or Spanish.

Ah yes, Spanish. Like the author of the article I loaded up with about ten minutes’ worth of choice phrases before I went to meet my then-girlfriend’s family. In nervousness I forgot every single word of it. And then ran headlong into the problem of Spain’s several regional languages.

To communicate, I first have to ask my wife’s family to speak Castillian Spanish. And then I have to compound my embarassment by admitting that I don’t even speak much of that. Worst of all, the author of that article isn’t being that hyperbolic when she refers to herself as “speaking like a one year old” — my worst realisation of just how poorly I speak Spanish was helping my son talk to a five-year-old girl he was playing with on the beach. Not only did I not understand what she was saying, but I couldn’t even find the words to tell her that I didn’t understand.

I could only imagine the number of times I would be reduced to frustrated tears if I lived there.

I live in a town where thousands come to study English every year, hundreds or thousands of miles from friends and family. Daily I talk to Chinese baristas, Brazilian bus drivers, Italian chefs — always in English, without a second thought.

And every time they speak a word of English, they’re doing better at integrating into British society than I ever could into theirs.