Category Archives: Design

The worst decision in the design of the Internet

The Internet is a frankly incredible design. The IP protocol, which is at its heart, is technology from 1974. TCP, which implements connections on top of IP’s packet delivery, is from the same year. Forty-two years on, both are essentially unchanged. Even DNS, the domain-name service, dates back to 1983, and is going strong 33 years in with only minor tweaks.

The only big change in this time has been the slooow migration (still in its early stages really) from IPv4 to IPv6 — something that has proven necessary as the Internet has been so wildly more successful and popular than anyone anticipated, and the 32-bit-wide host addresses are running out. But in the scheme of things, this is a minor tweak. We’re running the Internet on 1970s technology, not due to sloth, but because it’s good.

sushi-2

Continue reading

Get your “Kylo Stabbed First” T-shirts!

Every Star Wars fan knows that, contra George Lucas’s revisionism in the Special Edition of the original movie, Han shot first. The moment I came out of seeing The Force Awakens, I knew I wanted to make this T-shirt, but I held off for a month so I could avoid spoilering anyone who wanted to see the film:

kylo-stabbed-first--matt-wedel-modelling

Above we see my good buddy Matt Wedel modelling the shirt as only he can. Want one of your own? Course you do! Buy the Kylo Stabbed First shirt here!

Dear git: STOP CHANGING DEFAULT BEHAVIOUR!

My struggles with git have been well documented. One thing I didn’t touch on is its tendency to suddenly change the behaviour of core commands from release to release. I’ve got used, over the last months, to seeing this:

mike@thor:~/git/other/kindle-backup$ git push
warning: push.default is unset; its implicit value is changing in
Git 2.0 from ‘matching’ to ‘simple’. To squelch this message
and maintain the current behavior after the default changes, use:

git config –global push.default matching

Continue reading

Image

C++: the good parts

c++-the-good-parts

When good standards go bad

Years ago, I was on the editorial board for versions 1.1 and 1.2 an informal standard called SRU. It defined a way to do IR queries over HTTP with XML payloads: you’d send a URL like http://example.com/dbname?someBoringStuff&query=fish, and it would send back an XML document describing the search result — hit count, that kind of thing — and containing payload records.

sushi-payload

Since the payload records themselves were also in XML, it was often convenient to just embed them right in the response, where they could be extracted by XSLT or similar. Continue reading

… Or maybe they’re doing web-site registration completely right

A couple of weeks ago, I wrote that DeviantArt are getting web-site registration completely wrong by asking for the email address (which you can see as you type it) to be repeated, but not requiring confirmation of the password (which you can’t see).

deviantart-registration-small

A lot of people in the comments (both here and at Hacker News) pointed out that I was wrong.

Continue reading

Getting website registration completely wrong

I just got a Google alert that someone going  by the name of Teratophoneus on DeviantArt did rather a nice drawing of Brontomerus, one of the dinosaurs I co-described and named:

brontomerus_mcintoshi_by_teratophoneus-d6ar4v1

Continue reading

On the iPad’s charging cable

I bought my wife an iPad for christmas. The battery recharges via a USB lead, and a mains plug is provided with a USB port, so that you can charge directly from mains.

But the cable is ridiculously short — about one meter. It’s basically impossible to use the iPad when it’s plugged in, for fear of ripping the cable out of the iPad or the mains plug.

This is a very good thing.

It changes what kind of thing the iPad is. When I use a laptop, my default mode is to have it plugged in all the time, and just think of it as being able to survive for a while when isolated from its feeding trough. But with an iPad, the narrative is very different. It’s a device that isn’t wired into anything. It moves happily around the house with you, and just happens every now and then to need parking in its Special Place where the charger is.

Although these two usage models are identical in substance, the psychological difference is huge. I have been used to thinking of laptops as delicate super-powered entities that I must care for and love and cherish and worship. Whereas the iPad is just there for you. And since we’ve had it around, I’ve started to shift my attitude towards my laptop, too.

So the short charging cable is a clever piece of cultural engineering.

Has Apple gone too far with its iBrick?

I am a big fan of Apple’s minimalist design aesthetic, but I think they may have gone too far with their new iBrick:

Continue reading

Linear Narrative

Seth Godin has got me thinking again.  His post The extraordinary revolution of media choice makes this claim:

The idea that someone can program our consumption is becoming obsolete, and fast. The front page of the paper disappears in a digital world, where there is no front page — merely the page I got to by clicking on a link from a friend. The tenth minute of a sitcom isn’t necessarily the part that comes after the ninth minute, and in fact, I might never even get to minute nine.

Does that make sense?

Continue reading