Little by little…

Little by little the machine will become part of humanity. Read the history of the railways in France, and doubtless elsewhere too: they had all the trouble in the world to tame the people of our villages. The locomotive was an iron monster. Time had to pass before men forgot what it was made of. Mysteriously, life began to run through it, and now it is wrinkled and old. What is it today for the villager except a humble friend who calls every evening at six?

The sailing vessel itself was once a machine born of the calculations of engineers, yet it does not disturb our philosophers. The sloop took its place in the speech of men. There is a poetry of sailing as old as the world. There have always been seamen in recorded time. The man who assumes that there is an essential difference between the sloop and the airplane lacks historic perspective.

Every machine will gradually take on this patina and lose its identity in its function.

— Antoine de Saint-Exupéry, Wind, Sand, and Stars

Tough and Competent

On January 27th 1967, the Apollo 1 spacecraft suffered a catastrophic launchpad fire at Cape Canaveral, killing the three astronauts aboard. The following Monday, 44 years ago today, Gene Kranz gave this speech to his team:

Spaceflight will never tolerate carelessness, incapacity, and neglect. Somewhere, somehow, we screwed up. It could have been in design, build, or test. Whatever it was, we should have caught it. We were too gung ho about the schedule and we locked out all of the problems we saw each day in our work.

Every element of the program was in trouble and so were we. The simulators were not working, Mission Control was behind in virtually every area, and the flight and test procedures changed daily. Nothing we did had any shelf life. Not one of us stood up and said, ‘Dammit, stop!’ I don’t know what Thompson’s committee will find as the cause, but I know what I find. We are the cause! We were not ready! We did not do our job. We were rolling the dice, hoping that things would come together by launch day, when in our hearts we knew it would take a miracle. We were pushing the schedule and betting that the Cape would slip before we did.

From this day forward, Flight Control will be known by two words: ‘Tough’ and ‘Competent.’ Tough means we are forever accountable for what we do or what we fail to do. We will never again compromise our responsibilities. Every time we walk into Mission Control we will know what we stand for. Competent means we will never take anything for granted. We will never be found short in our knowledge and in our skills. Mission Control will be perfect.

When you leave this meeting today you will go to your office and the first thing you will do there is to write ‘Tough and Competent’ on your blackboards. It will never be erased. Each day when you enter the room these words will remind you of the price paid by Grissom, White, and Chaffee. These words are the price of admission to the ranks of Mission Control.

Kranz was one of the unsung heroes of the space race, and the Apollo 1 incident in particular marks a transition from a sloppy, hurried engineering culture into the well-oiled machine which managed to bring the Apollo 13 astronauts back alive.

Peer-to-Peer Lending with Zopa

I’ve been a user of Zopa for about 15 months now. If you’re not aware of it, Zopa is a peer-to-peer lending exchange: they’re a market where people who need money can borrow it from people who can lend it. (Working for a different kind of exchange myself, I like the concept.)

I spent some time working out how much interest that Zopa has been paying me since I joined last August. One of their downsides is that they don’t seem to make it very clear what annualized interest you’ve actually been earning.

It turns out that I’ve been paid slightly more than 7.4% AER, net of bad debt (there was none) and Zopa’s 1% annual fee. During that time, the Bank of England base rate has been 0.5% and the best savings rate has barely brushed 3.5% on average.

Of course, the FTSE All-Share made 22% AER over the same period, but Zopa is still a nice fixed(ish)-income way of diversifying.

One thing which is a bit annoying with Zopa is that you have to constantly adjust your offer price to follow the market and get the best rate for your money (which can be coming back in as repayments from other borrowers). Zopa has 5 different creditworthiness markets with different prices, and I worry about ending up with skewed exposure towards one category. It would be great if Zopa had an API so I could adjust my prices automatically.

Laser Etching my Macbook Pro with Science

At London Hackspace we got a laser cutter a month or two ago. Despite being cheap (for a laser cutter) and of anonymous Chinese provenance, it’s pretty reliable, very useful, and great fun to use.

I recently got a new Macbook Pro, and I was thinking of what to etch the lid with. (Most metals won’t etch — let alone cut — on our 40W laser cutter, but anodized aluminium is the exception.) Laser cutters work best with vector drawings; you can etch raster images but on our machine this leaves a “shadow” on anodized aluminium due to the laser starting up.

So I wanted a cool vector image to etch my laptop with, and I decided to use a picture of a particle collision in a bubble chamber. I found this image and traced it using Inkscape. I’m pretty happy with the result.

Laser Etched Macbook

More photos

Fusion in the Evening

A couple of weeks ago, I headed to Paddington and jumped on a train along with a notably large group of geeks. An hour later, we got off at Culham, a leafy little Oxfordshire town which happens to also be home to Europe’s largest fusion reactor.

It was one of the Culham Centre for Fusion Energy’s free public open evenings, and they proceeded to take us on an excellent tour of the facilities. As well as being home to the European-run JET, Culham has the smaller UK-run MAST experiment, and we saw both. Photography was encouraged.

I’m a sucker for big infrastructure, and JET did not disappoint. Both reactors at Culham are currently shut down for upgrades and, in a move which would have given most health and safety officers an aneurism, the public tours were allowed right into the reactor halls. This is especially impressive for JET, which is currently being fitted with new tiles made of pure Beryllium — a particularly toxic metal.

The sheer scale of JET was impressive, and unfortunately I couldn’t adequately capture it due to my lack of a wide-angle lens. JET requires nearly 1GW of power input when running (half the peak output of nearby Didcot power station, stored by two massive flywheels) to produce an output of ~15MW.

The tours weren’t dumbed down — I got the feeling that anyone with less than an A-level understanding of physics might have been slightly out of their depth. We learned quite a bit about the intricacies of how the reactors were run.

I was seriously impressed by how open and comprehensive the tour was. A lot of other places could learn from how to make uninvolved but curious members of the public happy.

More photos at Flickr.

The State of the Open Rights Group

I’ve been a paying supporter of the Open Rights Group — with a brief PayPal-induced hiatus — since it was founded in December 2005. I’m sad to note that I’ve just stopped my monthly membership payments, and I’d like to expand a little on why.

Firstly, some of the reasons which aren’t behind this decision: I’m not quitting because the Digital Economy Bill was passed — with Labour’s three-line whip and the Tories apparently whipping to abstain it was arguably inevitable regardless of the amount of campaigning. I’m not quitting because I agree with the inflammatory Mr. Orlowski’s rant on the Register, although it’s certainly good for a chuckle. And I’m certainly not quitting because I think digital rights are dead in the UK.

The reason I am quitting is that the ORG really doesn’t seem like an organisation I can identify with any more. At the moment if you hit up their home page you’re greeted with a picture of a giant middle finger entitled “What parliament thinks of your right to internet access”. Cute, maybe, but it’s not clever and it’s been greeted by many of my (young, tech-savvy) friends with a similar amount of disdain. At any rate, politics doesn’t operate by telling people to go fuck themselves (at least not so overtly).

I also think the ORG should, before everything else, be trying to help its members to make a well-reasoned point about legislation it opposes. None of the clear, plain-language explanation I’ve seen on the Digital Economy Bill and the complex tangle of amendments it generated has been from the ORG. One of the key rules about writing to your MP is that it’s much better to make a point in your own words. I’ve been surprised at the number of people who wrote to their MPs about the Digital Economy Bill but still didn’t understand the key points, and I fear that it might have given a slight impression that we were a desperate group of copyright infringers.

Lastly, I’m absolutely not a fan of the ORG’s shouty, spammy emails:
ORG Emails

All in all the ORG today feels like a condescending, unprofessional organisation, and that’s exactly the opposite of what it needs to be to convince people that it’s a worthy cause.

Barclaycard’s Short Downtime

I have a Barclaycard credit card. I didn’t use it much, but they sent me a new one recently which had contactless payment support which was novel, so I started using it some more. Around the same time, about the beginning of February, I started having problems logging into their web site.

I use credit card web sites quite a bit to get at my transaction data, so I gave them a call — they were quite helpful and they said they were aware of the problem and working on it.

Today I got an email:

Dear Mr Garrett,

You were recently upgraded to a Barclaycard Cashback card.
We noticed that you recently tried to log in to mybarclaycard to manage your account online, but were unsuccessful. We’ve discovered that this is a technical issue and we’re working to resolve this, but it will take until 1st June 2010.

Yes, that’s four months’ downtime on a web site which handles my financial data.

On BeautifulSoup

I’m doing some fairly hardcore screenscraping using Python, so I decided to use BeautifulSoup. After all:

Beautiful Soup won’t choke if you give it bad markup

Oh yes it will:

<html>
 <body>
  <a href="/""></a>
 </body>
</html>
  File "/usr/lib/python2.6/HTMLParser.py", line 115, in error
    raise HTMLParseError(message, self.getpos())
HTMLParser.HTMLParseError: malformed start tag, at line 3, column 14

lxml parses this fine.

The other issue I’m seeing is the old document.write('<scr' + 'ipt>') trick. Even if it’s enclosed in a CDATA block, BeautifulSoup chokes on it.

lxml, again, parses it fine. And it has built-in CSS selector and XPath support.

Semi-Realtime Satellite Desktop Backgrounds

Snowy Great Britain

Snowy Great Britain

A few days ago, a beautiful satellite photo of snow-covered Great Britain got quite a lot of press coverage (and garnered me a couple of hundred retweets). The image was taken with the snappily-named MODIS camera which flies aboard two NASA Earth Observation System satellites: Terra and Aqua.

Turns out these are pretty neat pieces of kit — they actually record images in 36 frequency bands ranging from blue to thermal infra-red. The two satellites are in a sun-synchronous polar orbit which means they each record an image of the whole earth every day: Terra in the morning and Aqua in the afternoon.

All the image data is collated and released into the public domain by NASA on several sites, but the most interesting outlet for the data is the semi-realtime site here.

It struck me that it would be pretty cool to have the most recent image on your desktop, updated twice a day. So I wrote a slightly hacky little script to do it. NASA provide georectified true-colour images for a selection of regions, including most of Great Britain, so I’m just co-opting that. It does mean I don’t have a full image of GB, but my screens aren’t really the right aspect ratio for that anyway.

Here’s an example of the image it produces (for my dual 19″ monitor setup at home).

Here’s the script.

I’ve just learned that the MODIS satellites constantly downlink their imagery in the clear, so I think the next step is to build a receiver and grab the data directly ;).

Open Hardware and Top-Down Design

A couple of weeks ago, I dropped by the Open Hardware Conference in my capacity as hackerspace founder and general interested hardware hacker. I’m a bit disappointed that I didn’t stay longer — I had to split my time with ScaleCamp — since there was a really interesting mix of people in attendance.

One of the companies present, and indeed sponsoring the event, was 40Fires, who are taking on the audacious task of building an open source car. There was a lot of discussion about how to get more people involved with this project, especially considering that the CAD software used to design the car costs £20,000 per seat.

There was discussion about the best way to organize a community to build an open-source car. The Apache project was mentioned several times as an example of a project to emulate. The point was raised that most open source developers are “scratching their own itch” (which I don’t believe to be true — I suspect most open-source code written today is by people employed to do so).

The point which everyone missed (myself included) is that if you want to emulate the success of the open source software community, you can’t just decide how things will work in a top-down fashion. And these guys weren’t just talking about designing the hardware top-down, they were talking about designing the community. Open source hardware is sufficiently — radically — different from open source software that we can’t just copy the community patterns wholesale and hope they work — that’s not even a great idea for a software project. We have no idea of the best way to build an open hardware project of that size. It’s never been done before.

(Of course this isn’t even considering the engineering quality benefits that bottom-up design brings. See Richard Feynman’s brilliantly prescient appendix to the Challenger disaster report, comparing the design of the Space Shuttle’s software to the design of its hardware.)

Linus Torvalds didn’t write Linux in order to build an enterprise, server-class operating system. He started it as a toy project and the community built up around it. Open source software has evolved organically, with the tools used to build the software evolving with it. Crucially, as Richard Stallman would repeatedly remind you, Linux would have not even been born if it wasn’t for the open-source GNU toolchain used to build it. The toolchain completes the feedback loop which is essential for open source to thrive.

Attempting to build an open source car when we don’t have a capable open hardware toolchain is jumping the gun. That doesn’t just mean decent CAD software, although that’s certainly got to be a priority, but also open source manufacturing tools. The RepRap and associated commercial versions are a great indication that this is really possible — now let’s see an open source milling machine.

So, let’s start building what we can build with our open source tools today. That feedback loop which fuels open source software, and the RepRap wants to bring to the world of hardware, is just starting to kick in. Our Makerbot Cupcake is in the post, so come join us. It looks to be an exciting new decade.