Last weekend, BERG invited a selection of friends to participate in their first Little Printer hackday. Over the course of a short Saturday, we were asked to explore the API for making “publications” for Little Printer, and test them out on sample devices.

I had a few ideas, but decided for expediency to return to my “Hello World” of connected things: Tower Bridge.

My publication would be something you could schedule at pretty much any time, on any day, and get a list of bridge lifts in the next 24 hours (if there were any).

I could have made this a very small, simple paragraph, to fit into a busy list of publications. Instead, I decided to explore the capacities of the Little Printer delivery as a medium.

I was interested in the visual capacity of the Printer: what could I communicate on a 2-inch wide strip of paper? All of BERG’s publications to date have been very beautiful, and the visual design of publications feels important – it’s one of the many things that distinguishes Little Printer, and I wanted to try to aspire to it at the very least.

So I built an Observer’s Guide to Tower Bridge, based on a chlidhood of Observer’s Guides and I-Spy books. As well as listing lifts for the next 24 hours, I’d show users pictures of the boat that would be going through, so they could identify it.


I also visually communicated which direction upstream and downstream are. I don’t think it’s immediately obvious to most people, and so the “downstream” icon shows that it’s towards Tower Bridge, whilst the offset of the “upstream” icon illustrates that it’s towards Big Ben and the Millennium Wheel. It felt like a natural way to make this clear visually, and was economical in the vertical dimension (which is one of Little Printer’s bigger constraints).


Early versions showed a photo for every lift, which turned out to make the publication too big: I needed to shrink that vertical axis. I did this by only including photos of an individual boat once per delivery – you don’t need multiple pictures of the same boat. The second time a boat passed through the bridge, I instead displayed a useful fact about it (if I knew one) – and otherwise, just the lift time.


By making the publication shorter, I also avoided an interesting side-effect of running the printhead too hard. The grey smudging you see above is where the printhead is running very hot having printed eight inches of bridge lifts and photos (it prints bottom-to-top, so the text is the “right way up”). Because I’d printed so much black up top, it seemed like the head had a bit of residual heat left that turns the paper grey. This is a side-effect of how thermal printers work. You don’t get this if you don’t go crazy with full-black in a long publication (and, indeed, none of the sample publications have any of these issues owing to their careful design) – a constraint I discovered through making.

The Observer’s Guide was an interesting experiment, but it made me appreciate the BERG in-house publications even more: they’re short and punchy, making a morning delivery of several things – bridge lifts, calendar details, Foursquare notes, a quote of the day – packed with information in a relatively short space.

I was pleased with my publication as an exploration of the platform. It’s not open-source because the LP API is very much work in progress, but rest assured, this was very much a live demo of real working code on a server I control. If I were making a functional tool, to be included with several publications, I’d definitely make something a lot shorter.

It was lovely to see Little Printer in the world and working away. It was also great to see so many other exciting publications, cranked out between 11am and 4:30pm. I think my favourite hack might have been Ben and Devin’s Paper Pets, but really, they were all charming.

Lots of fun then, and interesting to design against the physical constraint of a roll of thermal paper and a hot printhead.

Buried, somewhere in the inbox I use for the Tower Bridge account, was an email from Twitter Support. So, let’s get the apology out of the way: Twitter did contact me. It was buried in an old GMail account. And, sure enough, on the first of June, here we go:

Twitter responds to reports from trademark holders regarding the use of trademarks that we determine is misleading or confusing with regard to brand or business affiliation. It has come to our attention that your Twitter account is in violation of Twitter’s trademark policy:

This account has been suspended.

Let’s see what they have to say at the URL:

Using a company or business name, logo, or other trademark-protected materials in a manner that may mislead or confuse others with regard to its brand or business affiliation may be considered a trademark policy violation.

OK, I can see the reasoning behind that. There’s not much space in the Bio field to explain that it’s not official, but their policy is clear: it doesn’t matter if you were attempting to mislead; if there’s any likelihood of confusion, you’re breaking their rules.

They go on:

  • When there is a clear intent to mislead others through the unauthorized use of a trademark, Twitter will suspend the account and notify the account holder.
  • When we determine that an account appears to be confusing users, but is not purposefully passing itself off as the trademarked good or service, we give the account holder an opportunity to clear up any potential confusion. We may also release a username for the trademark holder’s active use.

OK. So, what they did was the first thing.

There was no intent to mislead. Seriously, what else would you call a bot that did this? I can think of several alternatives, but in 2008, it seemed obvious.

Does it break the current terms of service? Perhaps.

What I’m really, really annoyed by is this: I have not been giving opportunity to clear up the potential confusion. I’ve just had the account suspended, the username taken, and, well, that’s it.

The account didn’t pretend to pass itself off as a trademark, or a registered company, or as anything related to the exhibition that runs within the edifice. If it passed itself of as anything, it was the structure itself. And everybody knows that really, bridges don’t talk, and certainly not that politely. There’s an interesting question – perhaps for a separate, less emotional post – about the relationship between the Instrumented City and the corporations that own the things that are Instrumented – but that’s not for now.

For now: I’m going to pursue this with Twitter, and at least resurrect the bot somewhere. When it comes back, it seems unlikely it’ll be at the original account name.

  • '"We have a real culture of thrift," [Kotick] said. "The goal that I had in bringing a lot of the packaged goods folks into Activision about 10 years ago was to take all the fun out of making video games." And then, to ensure there was no confusion in his message, he added that he has tried to instill "skepticism, pessimism, and fear" of the economic downturn into the corporate culture at Activision. "We are very good at keeping people focused on the deep depression," he said.' Bobby Kotick. What a guy. What a CEO. What a leader.
  • "Designed by Oliver Rokison a teacher at St Paul's School. This project connects to the Tower Bridge twitter account and mimics the movements of the real tower bridge." Fun.
  • "Larva Labs proposes an intelligent home screen that creates a meaningful hierarchy out of a user’s information. Designed for an Android-based handset, our home screen is intended to appeal to Blackberry owners and people struggling with information overload." An interesting experiment; I like being able to vary the level of personalisation on the fly, but am not sure the screen is nearly dense enough for people with "information overload" – it only handles a couple of items in each category without drilling down. The Blackberry's appeal in part is due to its hyper-dense list of information.

Making bridges talk

28 February 2008

I’ve written before about how wonderful Twitter can be as a messaging bus for physical objects. The idea of overhearing machines talking about what they’re doing is, to my mind, quite delightful.

So when I found an untapped data source for such an object, I thought it was worth having a poke. Half an hour of scripting later and Tower Bridge was on Twitter. It tells you when it’s opening and closing, what vessel is passing through, and which way that vessel is going. The times are determined by taking the scheduled time for the “lift” and subtracting five minutes for the opening, and adding five minutes for closing – the official site suggests that, at rush hour, lifts should take five minutes to open and close tops.

That’s it, really; it’s just a simple case of scraping some data and outputting it. It’s not a hugely frequent event, so won’t disturb you very much; if anything, it’s just a little insight into the heartbeat of the Thames.

As a note on its design: it’s very important to me that the bridge should talk in the first person. Whilst I’m just processing publicly available data on its behalf, Twitter is a public medium for individuals; I felt it only right that if I was going to make an object blog, the object should express something of a personality, even if it’s wrapped up in an inanimate object describing itself as “I”.

And, if you want proof that it works… how about this:

Tower Bridge on Twitter

I’d set the server up yesterday; suddenly, this morning, it twittered into life, and we charged out of the office around the corner to the bridge, where the MV Dixie Queen was getting into position for its lift. As it went through, I took a picture. That was a very satisfying moment.

(Thanks to Tom for helping me bash a crontab and a few other server-shaped things into shape. If you’re interested in the technology, which is really not very relevant, it’s about thirty lines of Ruby that glues together a combination of: wget, Hpricot, John Nunemaker’s Twitter gem, and cron.)

Updated June 22nd 2011 with the new URL for the bot, following this whole series of events.