Thursday, January 25, 2007

Copy and Paste doesn't work on the internet

Copy & paste is a crucial user interface metaphor in modern operating systems. It works both within files (for example, copying a sentence from one Word document to another), and on files themselves (for example, copying a file from one directory to another). It's always by value, rather than by reference - when I update a pasted sentence, the original doesn't automatically update too.

Copy & paste is commonly used in several different ways:

  1. Re-ordering a document, for example moving a sentence from one paragraph to another
  2. Creating lists of similar items, for example copying a spreadsheet formula then editing the copy slightly
  3. Managing versions, for example copying a document then archiving the copy
  4. Re-using content, for example copying an image into a presentation
  5. Creating personal copies of documents, for example copying a file from a USB drive
There are problems in using copy and paste for cases 4 and 5. For example, in case 4, the BBC website reuses the BBC logo on every page. But this isn't done with copy and paste - otherwise, they'd need to store it thousands of times, and they'd have to find and update every single copy whenever the logo changed. Instead, each web page copies it by reference (using its URL), rather than by value.

Similarly, corporate email systems use copy and paste for case 5. Consequently, if I send a 1MB attachment to 50 people, it uses up 50MB of storage. When the master version changes, everyone still has the old copies.

And frankly, copy and paste is a poor tool for version management (case 3), especially in the enterprise. Rather than relying on file names and saving copies, a version management tool can show proper audit history and tracking.

Copy & Paste is very personal - it's rooted in the old paradigm where everyone worked on their own PCs (with their own copies of files) and communicated every so often, rather than sharing content as a community from the very start.

The internet is different, because of the URL. Rather than emailing that 1MB attachment to 50 people, if you put it on a website it will only use up 1MB of storage. And when it's updated, people will automatically see the most recent version. That's because the URL works by reference, not by value.

This requires a shift in mindset. For example, in a connected world, what is the point of having more than one copy of any song? There should be a single URL - for example,, and everyone in the world should access this URL every time they want to listen to the song (you can imagine aggregation sites cataloging and presenting songs together). Except for temporary cacheing, there would be no other copies - browsers would not allow it, unless explicitly stated. Your phone, stereo, TV and PC would all access this URL, with the same user profile to control permissions.

Without copy & paste, a solution to Digital Rights Management is possible. If someone wants to copy and edit a song, for example to make a cover version, they should have to apply to get copy permissions.

If you look back at the list above, only 1 and 2 - content creation, rather than re-use - are appropriate uses for copy & paste on the internet. Copy & paste don't work well on the internet, because of the power of the URL.

Tuesday, January 23, 2007

Citizens own their data, not the government

For the last couple of years, there have been arguments in the UK about how much personal data government departments should hold, and how they should manage it. These arguments increased recently when Tony Blair announced that existing databases, holding police records, social security files, tax information, and pensions data, would be integrated.

From Tony Blair’s perspective, this will lower costs and enable new uses for existing data. His critics say that this is yet another invasion of our privacy with potentially dangerous consequences – what if a hacker or a bad government got their hands on the information?

Both sides are correct. It makes no sense to cripple government departments with overlapping databases that don’t link to each other, especially if this means citizens having to repeat the same information to each department. But no one is convinced that there are adequate safeguards.

What’s worse, no one knows the scale of the issue. Who can tell me exactly which pieces of information the government knows about me, which departments have access to it, and what they are using it for? Until I’m told, how can I (or indeed a senior civil servant) sensibly pass judgment as to how and when the databases should be joined up?

It’s my data (and yours) in these databases – the government is holding it on our behalf. So I think I have a right to know exactly what’s in these databases about me, who has access to them, and what they’re using it for. There should be a secure website where I could conveniently check my details from all government departments, and update them as necessary.

This right of data ownership would provide the safeguards necessary for me to trust the government to join databases up.

Any time the government asks for more data, it would be immediately obvious, and it would have to be justified. Existing information should be used instead where possible. This avoids the current ‘creep’, where more and more information is held – this week the police DNA database, next week satellite car tracking – without adequate debate.

By putting citizens in control of their own information, and showing how it is used, data quality is likely to go up (always an issue with databases), and trust in government will increase (as suspicions about data usage are replaced with facts).

There’s even an opportunity for government to grant data access to external organizations, too (with my approval). For example, when I fill out a magazine subscription, there could be a button saying “get address from UK government”. Then whenever I move house, the magazine subscription is automatically updated based on UK government data. And on the government website, I could see all the external organizations that can look up my address. Providing a standard ‘user profile’ would give a massive boost to the internet economy.

The government should continue to press for efficiency and integration in its IT systems. But it should ensure that all citizens have the right to see all their data, edit it where appropriate, and find out exactly who else can see it and what they use it for.

Thursday, January 18, 2007

Connecting Digital Devices

The biggest problem in the consumer electronics industry is reportedly how to get devices to work together.

Everyone wants to sell the 'central device' that coordinates all others in the house, but no one can agree on what it will be - the PC, the set-top box, the games console, or even a new 'home server'.

What's more, no one can agree on what it will do - centrally store your photos, music and video, allow appropriate access to iPods and other computers, administer fridges, ovens and other objects, or just enable content to be shared across devices.

None of these ideas sound particularly enticing to me. Why would I want a complicated machine that manages all others in my house - can't they manage themselves? So long as I can listen to the same music on my iPod and stereo, or use the same address book on my phone and my PC, then I'm ok. If I really wanted to turn my oven on remotely, I would want to do it via any device - phone, PC, console - not just the central one.

What’s needed is not a central device, but a way for each device to publish content and services for the others to consume.

The solution is maddeningly obvious! We already have the technology - it's the humble URL! Why not give each device a URL, and why shouldn't each device publish its content to the web, for example via RSS feeds?

For example, my phone should offer its address book, call history, photos, and music via authenticated RSS (or Atom) feeds. And my PC should be subscribed to this RSS feed, keeping it automatically synchronized.

The beauty of this model is that it’s straightforward – people are used to typing URLs, and there are plenty of browsers around to enable it.

And it’s flexible. For example, rather than installing a web server on your phone, Google or Yahoo or Vodafone could host its content for you, by asking you to download synchronization software onto your phone. Then, you could see your phone’s photos and address book in Gmail or Yahoo! Mail. And from there, you could access them from any other device.

It’s also manageable. My web hosting company manages data backups, rather than me fiddling around on a PC or set-top box. If a device breaks or gets stolen, then I still have the data and I can turn services off, or delete content, remotely. If my train goes under a tunnel, then I use the latest RSS data cache for my email, rather than a live link.

Of course, subscription can work both ways. My phone could also be subscribed to my Gmail contacts RSS feed, so rather than fiddling around with phone keypads I could type my address book in Gmail, and it would synchronize automatically. Either Microsoft’s SSE extensions to RSS, or the Atom Publishing Protocol, could handle this.

I don’t think the power of the URL has sunk in, especially in the consumer electronics industry. The REST approach should be drilled in to product designers, and in particular the use of RSS / Atom for subscriptions and synchronization.

The whole problem of connecting digital devices boils down to publishing and syndication, and the solution to this problem is to use the internet.

There's one trick the iPhone is missing

When I saw Steve Jobs demonstrating the iPhone's stylish music playlists, picture album and phone interface, one thought crept into my mind - could this be done in a browser?

It's a question about the limits of HTML and CSS, which are still being explored by the industry. Personally I think there's plenty of mileage left in these standards, and developers will learn to exploit them far better. HTML was deliberately designed to work with all user interfaces, and the hyperlink approach (though not the javascript mouse object) seems ideally suited to touch screens.

But it also highlights the main weakness of the iPhone - it's a closed platform. Device synchronization, and developer innovation, will be weak. On the iPod this didn't matter, but the iPhone is a generic 'personal computer', and the history of personal computers is a lesson in the importance of developer ecosystems.

As it did for Ajax, Microsoft circa 2000 provides the clue - long ignored - to a better approach. Remember the 'Active Desktop'? In Windows 2000, Microsoft allowed you to replace your desktop with a web page stored locally.

Why wouldn't you use a browser to display everything in the iPhone? Selecting a music track, making a phone call, and viewing a video would be done via locally served HTML in a browser. Every screen would have the standard back, forward and home buttons.

In an instant, this would create an enormous developer ecosystem for the iPhone - every web developer on the planet! You could open up the contacts, calendar, music, photo and video playlists as local web services, for example via RSS / Atom feeds and the Atom Publishing Protocol.

It would also open up the iPhone to other devices - you could log on to your iPhone from your PC, just by going to your iPhone's URL. And you would see exactly the same screens and commands, because it's just HTML.

For example, my phone address book should be automatically synchronized with my Gmail contacts. This should be a simple matter of matching two RSS feeds, so whenever I update one, the other is automatically synchronized.

I doubt Apple will take this step - although in the light of the iPhone, it's intruiging that SVG is being adopted in Safari, Apple's browser - because it has a tradition of selling closed systems.

But if someone did produce such a device, I wouldn't bet against them. Smartphones must one day turn into full internet devices.

The iPhone is a Tablet PC

No one would have predicted it, but the two biggest IT innovations of the last 6 months have been new user interfaces - Nintendo's Wii, and Apple's iPhone.

It seems the old metaphors of mouse and keyboard are getting some competition.

I particularly like the iPhone's 'pinching' feature - you can use two fingers to squeeze a window down from both sides. It's a natural instinct, yet it would require using two mice simultaneously on a desktop PC!

Actually, the keyboard is safe, for now. It appears, albeit in software form, in the iPhone. It's the mouse that's under pressure, and not before time - there are serious mental gymnastics in moving an object across a horizontal surface, in order to direct another object some distance away at a different scale on a vertical surface.

Touch-screen interfaces are not new - the iPhone is really a small Tablet PC with phone functionality. Steve Jobs made this clear when he boasted that it gets rid of the mouse - most phones don't come with mice! The real innovation is in merging a Tablet PC with a phone.

So, three predictions - first, Microsoft will take the opportunity to remind everyone about the Tablet PC, and who invented it. Sometimes, Apple learns from Microsoft, not the other way round!

Second - sales of Tablet PCs will finally take off once people get used to the iPhone. They will want a larger version that opens their Word Documents and allows them to synchronize with corporate applications. I don't believe anyone has found laptop nipples or trackpads perfect, and the Tablet PC will provide a solution. Microsoft will benefit from this (unless Apple releases a high-end iTablet? ...)

Third - I'd be very surprised if we didn't see a Tablet variant of Windows Mobile coming soon. After all, Microsoft has had the software ready for a couple of years.

The end of the mouse is nigh, and user interfaces are evolving rapidly.

Monday, January 08, 2007

My Bank's Website

When I logged on to my bank's website last week, I was struck by how dated it appeared. My statement appeared in a pop-up window, recognized as bad practice five years ago; by default I got a monthly view with a clunky "type your start and end dates" forms for viewing other data when it hasn't been "archived"; there were no reporting or charting functions; there was no search; and the user interface was from 1998.

I happen to know this bank spends several billion dollars a year on IT. A pretty poor performance for all that money! But most other banks are no better.

The irony is that having spent so much time and money fixing and integrating their core systems, banks are not taking advantage of it. They've done the hard bit, all they need now is a bit of simple javascript and HTML!

An imaginative approach to retail banking would use best practice from the likes of web email providers (e.g. Google's gMail), financial portals (e.g. Yahoo Finance) and communications apps (like Skype). That's because although banks see themselves as different, in fact they're just another consumer services industry.

Here are some ideas for breathing new life into ancient-looking bank websites:

  • Allow me to tag statement entries into categories, star them for follow up, and add comments against them. If gMail can do it for my email, then so can my bank
  • Enable search, as per Google. Why shouldn't I be able to quickly find that payment to my phone company?
  • Introduce interactive charts and graphing on every page. If Yahoo Finance can do it, then so can my bank
  • Discard the monthly statement paradigm - the internet is on-demand. I should be able to drag a graphical timeline to view all the entries between two dates, and set my own default (1 year, 3 months, 1 month, 1 week etc)
  • Enable mobile internet access
  • Enable authenticated RSS feeds of my statement
  • Create alerts - I should be able to set thresholds and receive emails, texts or phone calls when they are passed.
  • Use email, IM, phone and videophone technology for sales and customer services, 24 hours a day. Why shouldn't I click on a link to be called immediately? Or even, as a premium service, be put straight through to a personal advisor via web cam?

This may sound straightforward - and it is, from a technical perspective. But from a cultural perspective, it requires a major shift from the attitude "we are the masters of huge enterprise IT systems that need integration" to "let's improve our website".

That's why I predict there is still scope for new internet banks to disrupt the industry. The internet has changed, and it's time that banks caught up.


Conventional wisdom is that the BBC will struggle in the digital age; unable to justify the license fee "tax", unable to maintain market share against innovative competitors, and (eventually) unable to convincingly state what it is for, against political pressures from their paymasters.

But the BBC has a saviour: the internet.

The BBC's mission to "inform, educate and entertain" has never been more relevant or important. The BBC, at its best, still produces material of a quality or nature that no commercial provider could attain (which, after all, is the point).

And Auntie is in a great industry. As disposable incomes rise, information, education and entertainment will rise in value much faster than inflation. Paychecks for producers, writers and actors will increase rapidly, but so will the commercial rewards.

The biggest problem the BBC has is not the government, or satellite TV, or its mission. It's the limitations of the TV and radio channel, which have forced Auntie to:

  • Augment their great material with padding of questionable quality in order to fill a day's schedule
  • Wage a peak-time ratings war using material that any commercial broadcaster could produce
  • Schedule minority shows for the small hours, thus ensuring they are even more 'minority'
  • Negate their incredible back catalog - who can predict when a particular show will be repeated?

Each of these limitations prevents the BBC from attaining its mission. They have lowered the average quality of material and made the BBC seem like just another commercial broadcaster.

The BBC have introduced new channels to fix the third limitation (minority interests), but of course this makes the first one (too much padding) even worse! Their problem is the underlying, inflexible technology of the broadcast channel.

The saviour of the BBC is the internet. Already, the BBC news and CBeebies websites are fabulous resources for information, education, and entertainment, suffering none of the above limitations .

Now, the BBC is opening up its TV and radio back catalog for download on demand via the internet. Nothing could better prove its public service value than providing a vast, searchable, free database of high quality shows. Imagine working on a project at school, and being able to search and download any number of programmes; or imagine being able to see the performances of your favourite band, at the click of a mouse!

Within five years, the BBC will work like the iPod. You will be able to download and watch (or listen) to any show you want from a vast catalog, continually updated with live shows and events. You will be able to set a "playlist", and watch a series of shows in order. Or you will be able to choose "shuffle", and it will select a range of shows based on your interests, like a personalized TV or radio channel.

In this way, the old constraints of the TV and radio channel will disappear. There will be no need for padding; the BBC will be able to produce a tighter, more selective output. There will be no such thing as peak time (except for live events), and minority interests will be available at the click of a mouse.

Of course, it's only BBC-produced content that you'll see. There will be no Hollywood classics or US sitcoms - you'll have to visit commercial websites for these. The BBC content will become more obviously unique, and more obviously aligned around its public service mission. There will be fewer productions, but with higher average quality.

The internet will enable the BBC to be re-invigorated, streamlined, and re-organized more clearly around its mission.