Archive for February, 2008

Thiefhunters in paradise

Friday, February 29th, 2008

My good friend Bambi has finally begun to blog in earnest! Fantastic.

She and her husband/partner Bob Arno have hundreds of true tales of their extraordinary, amazing, adventures all over the world.

They hunt thieves. They travel constantly. They get into all sorts of hot water. Bambi wrote a book: Travel Advisory! How to Avoid Thefts, Cons, and Street Scams While Traveling. And, of course, they have a web site.

I have an interesting literary tale of how I met Bambi & Bob, and our subsequent adventures. But those will have to wait.

Meanwhile, go sign up for Bambi’s blog, Thiefhunters in paradise. I hope it will be a big success. Bambi & Bob have so much engrossing content that they could put online by simply documenting their everyday lives. Lives that I think regular stay-at-home folks will really enjoy experiencing – from a safe distance.

Amants de Lulú

Friday, February 29th, 2008

I’ve not been blogging much recently, but that may change before long.

Today I was having a nap and awoke to hear music on the street downstairs. I went down to take a look, and took the camera along for your benefit. I should film more of this sort of thing, I like it so much, and there are lots of groups playing around here. But I’m often sitting around in my slippers working and I figure they may end before I get there.

Here’s Amants de Lulú playing about 50 meters from my front door. I hope they don’t mind appearing on YouTube. I bought their self-titled CD for €10 after filming them for these few minutes.

Keynote is good

Friday, February 15th, 2008

roman numerals in keynoteI’ve been playing with Keynote to make a presentation. There are a lot of things I don’t really like about using a Mac, but Keynote is not one of them.

It makes really attractive presentations. It’s easy to use. The help actually helps. You can export to multiple formats (Quicktime, Powerpoint, PDF, images, Flash, HTML, iPod).

And, it’s fun to use. I’m going to miss it when I head back to Linux.

Worst of the web award: Cheaptickets

Thursday, February 14th, 2008

Here’s a great example of terrible (for me at least) UI design.

I was just trying to change a ticket booking at Cheaptickets. Here’s the interface for selecting what you want to change (click to see the full image).


As you can see, I indicated a date/time change on my return flight. When I clicked on the continue button, I got an error message:

An error has occurred while processing this page. Please see detail below. (Message 1500)

Please select flight attributes to change.

I thought there was some problem with Firefox not sending the information that I’d checked. So I tried again. Then I tried clicking a couple of the boxes. Then I tried with Opera. Then I changed machines and tried with IE on a windows box. All of these got me the exact same error.

I looked at the page several times to see if I’d missed something – like a check box to indicate which of the flights to change. I figured Cheaptickets must have an error server side. Then I thought come on, you must be doing something wrong.

Then I figured it out. Can you?

How the democrats could blow it. Again.

Thursday, February 14th, 2008

The race to be the US democratic nominee is pretty interesting. As has been pointed out though, it’s going to come down to what the superdelegates decide to do. Here’s a timeline / recipe for the Democrats to really blow it.

  1. Obama’s popularity and momentum continue to climb. The popular vote is with him.
  2. Hillary is unable to accept that she’s not the chosen one, and refuses to concede.
  3. Instead, she and Bill pull strings and twist arms to get the superdelegates to vote for her.
  4. The superdelegates cave, and Hillary wins the nomination despite losing the popular vote. The irony is unbearable.
  5. Regular democratic voters are absolutely infuriated, the party is split, blacks, the young, and all sorts of other Obama voters don’t bother.
  6. John McCain is elected president.

I think that’s a not-unlikely scenario. And wouldn’t it be perfect? Once again, the triumph of politics-as-usual, money and influence over hope, change, fresh air, and the will of the people. Just what the jaded populace needs! The republicans, cashing in on the never-ending fumblings of the craven democrats. Hillary calling for party unity, for us to put our differences behind us, for one and all to support her, now that she’s been democratically elected as the nominee. Plus ça change.

I can see it all so vividly. It makes so much absurd sense and is so historically fitting that it must be inevitable.

One can always hope that the superdelegates will tell Hillary and Bill to take a hike. I wouldn’t bet on it though.

I think it’s more likely that by then Hillary’s campaign will have had the good sense to collapse around her.

The power of representation: Adding powers of two

Wednesday, February 13th, 2008

decimalOn the left is an addition problem. If you know the answer without thinking, you’re probably a geek.

Suppose you had to solve a large number of problems of this type; adding consecutive powers of 2 starting from 1. If you did enough of them you might guess that 1 + 2 + 4 + … + 2n – 1 is always equal to 2n – 1. In the example on the left, we’re summing from 20 to 210 and the answer is 211 – 1 = 2047.

And if you cast your mind back to high-school mathematics you might even be able to prove this using induction.

But that’s a lot of work, even supposing you see the pattern and are able to do a proof by induction.

binary-addLet’s instead think about the problem in binary (i.e., base 2). In binary, the sum looks like the image on the right.

There’s really no work to be done here. If you think in binary, you already know the answer to this “problem”. It would be a waste of time to even write the problem down. It’s like asking a regular base-10 human to add up 3 + 30 + 300 + 3000 + 30000, for example. You already know the answer. In a sense there is no problem because your representation is so nicely aligned with the task that the problem seems to vanish.

Why am I telling you all this?

Because, as I’ve emphasized in three other postings, if you choose a good representation, what looks like a problem can simply disappear.

I claim (without proof) that lots of the issues we’re coming up against today as we move to a programmable web, integrated social networks, and as we struggle with data portability, ownership, and control will similarly vanish if we simply start representing information in a different way.

I’m trying to provide some simple examples of how this sort of magic can happen. There’s nothing deep here. In the non-computer world we wouldn’t talk about representation, we’d just say that you need to look at the problem from the right point of view. Once you do that, you see that it’s actually trivial.

Talking about Antigenic Cartography at ETech

Tuesday, February 12th, 2008

ETech 2008Blogs are all about self-promotion, right? Right.

I’m talking at ETech in the first week of March in San Diego. The talk is at 2pm on Wednesday March 3, and is titled Antigenic Cartography: Visualizing Viral Evolution for Influenza Vaccine Design.

You can find out more about Antigenic Cartography here and here.

Here’s my abstract:

Mankind has been fighting influenza for thousands of years. The 1918 pandemic killed 50-100 million people. Today, influenza kills roughly half a million people each year. Because the virus evolves, it is necessary for vaccines to track its evolution closely in order to remain effective.

Antigenic Cartography is a new computational method that allows a unique visualization of viral evolution. First published in 2004, the technique is now used to aid the WHO in recommending the composition of human influenza vaccines. It is also being applied to the design of pandemic influenza vaccines and to the study of a variety of other infectious diseases.

The rise of Antigenic Cartography is a remarkable story of how recent immunological theory, mathematics, and computer science have combined with decades of virological and medical research and diligent data collection to produce an entirely new tool with immediate practical impact.

This talk will give you food for thought regarding influenza, and move on to explain what Antigenic Cartography is, how it works, and exactly how it is used to aid vaccine strain selection—all in layman’s terms, with no need for a biological or mathematical background.

In case you’re wondering, no, I didn’t go so far as to make the “I’m speaking” image above. I chose it from the conference speaker resources. Self-promotion has its limits.

Talking at TTI/Vanguard Smart(er) Data conference

Monday, February 11th, 2008


I’ve been invited to speak at a TTI/Vanguard conference in Atlanta on SMART(ER) DATA on Feb 20/21.

Here’s the abstract.

Representation, Representation, Representation

In this talk I will argue for the importance of information representation. Choice of representation is critical to the design of computational systems. A good choice can simplify or even eliminate problems by reducing or obviating the need for clever algorithms. By making better choices about low-level information representation we can broadly increase the power and flexibility of higher-level applications, and also make them easier to build. In other words, we can more easily make future applications smarter if we are smarter about how we represent the data they manipulate. Despite all this, representation choice is often ignored or taken for granted.

Key trends in our experience with online data are signalled by terms such as mashups, data web, programmable web, read/write web, and collective databases and also by the increasing focus on APIs, inter-operability, transparency, standards, openness, data portability, and data ownership.

To fully realize our hopes for future applications built along these lines, and our interactions with the information they will present to us, we must rethink three important aspects of how we represent information. These are our model of information ownership and control, the distinction between data and metadata, and how we organize information. I will illustrate why these issues are so fundamental and demonstrate how we are addressing them at Fluidinfo.

My twitter stats

Monday, February 11th, 2008

twitter statsI seem to be done with Twitter, at least for now. The graphic shows my monthly usage graph (courtesy of tweetstats) – click for the full-sized image.

I do find Twitter valuable, but I don’t want to spend time on it. It’s a bit like TV or video games for me – I quite enjoy those things, but there are almost always better things to do.

I’ll probably subscribe to some form of Twitter alert or digest at some point. I do find it useful to know when people are coming to Barcelona. But I don’t want to monitor Twitter. Like IM, I find it too distracting and waste too much time just going to check if anything’s new.


Social Graph foo camp was a blast

Saturday, February 9th, 2008

foo camp logoI spent last weekend at the Open Social Foo camp held on the O’Reilly campus in Sebastopol, CA. The camp was organized by David Recordon and Scott Kveton, with sponsorship from various companies, especially including O’Reilly. I was lucky enough to have my airfare paid for, so lots of thanks to all concerned for that.

The camp was great. Very few people actually camped, almost everyone just found somewhere to sleep in the O’Reilly offices. Many of us didn’t sleep that much anyway.

There’s something about the modern virtual lifestyle that so many of us lead that leaves a real social hole. It’s been about 20 years since I really hung out at all hours with other coders. It’s something I associate most strongly with being an undergrad, with working at Micro Forté, and then in doing a lot of hacking as a grad student at The University of Waterloo in Canada.

So even though it was just 48 hours at the foo camp, it was really great. It’s not often I have the pleasurable feeling of being surrounded by tons of people who know way way more than I do about almost everything under discussion. That’s not meant to sound arrogant – I mean that I don’t get out enough, and I don’t live in SF, etc. It’s nice to have spent many years hanging around universities studying all sorts of relatively obscure and academic topics, and sometimes you wonder what everyone else was doing. Some of those people spent the years hacking really deeply on systems, and their knowledge appears encyclopedic next to the smattering of stuff I picked up along the way. It’s nice to bump into a whole bunch of them at once. It was extremely hard to get a word in in many of the animated conversations, which reminded me at times of discussions at the Santa Fe Institute. That’s a bit of a pain, but it’s still far better than some alternatives – e.g., not having a room full of super confident deeply knowledgeable people who all want to have their say, even if that means trampling all over others, ignoring what the previous speaker said, not leaving even 1/10th of a second conversational gap, and just plain old bull-dozering on while others try to jump in and wrest away control of the conversation.

I could write much more about all this.

I also played werewolf with up to 20 others on the Saturday night. In some ways I don’t really like the game, but it’s fun to sit around with a bunch of smart people of all ages who are all trying to convince each other they’re telling the truth when you know for sure some are lying. I was up until 4:30am that night. I went to the office I slept in on the Friday night, but found it had about 10 people still up, all talking about code. When I got up at 8am the next morning, they were all still there, still talking about code. I felt a bit guilty, like a glutton, for allowing myself three and a half hours sleep. Nice.