Tuesday, February 27, 2007

After the Desktop – What?

For decades the desktop PC has been the public face of computing to most folk. It has delivered a dazzling array of applications to us, but at a cost – it has tied us down to desks. Unless you are chained to your desk by your job, this can be pretty inconvenient. The workforce is becoming increasingly mobile, courtesy of the Internet which connects most places, and the mobile phone. Desktop PCs are anything but mobile.

The IT industry responded to mobility needs with the laptop, which was a big improvement over the desktop, but even so there are lots of places we go where laptops aren't convenient. Think of a ball game, bar, bicycle, or bathroom. So industry built palm tops or PDAs. Small enough to fit in a pocket or purse, and with enough smarts to handle many of our common computer needs – email, calendaring, address books, some calculation. But communication was a problem, until PDAs started incorporating mobile phones. Now mobile phones have returned the compliment, and incorporate the functions previously found in PDAs. The relentless miniaturization of electronics has enabled manufacturers to cram more and more function into mobile phones. They now offer fairly good web browsers, email, organizers, instant messaging, plus built-in cameras, videos, sound recording, music downloads and playing, and a few TV channels. Growing amounts of local storage allow users to take their favourite images and music with them.

Mobile phones are small and light enough to take with you almost any place with little inconvenience. They have a huge advantage over desktops, laptops, and the classic PDA – they have communication built in. You don't have to find land lines, modems, LANS, or cyber cafés to access the web. Almost anywhere you go, your mobile can connect. These factors are going to make mobiles the most widespread, heavily used human-computer interface.

Mobiles will replace the desktop.

"But wait, this cannot be!", I hear you say. "The mobile's screen and keyboard are too dinky, and its pointing device is too clunky! It cannot compete with the convenience of a big screen and keyboard."

Suppose you could have the best of both worlds. That when you're on the road, you could carry most of the files that you're currently working on in your mobile; that if you really need to access them and you don't have a big screen handy, you could still do so, slowly; but when you do get to your office, or your home, or to a cyber café, you could access the files and application on your mobile through a big screen and keyboard, with a proper pointing device. It wouldn't be that hard to do. When laptops first came out, they were challenged for storage space, modems, and other conveniences that were standard on desktops, so manufactures built docking stations for laptops. The laptops were as small and light as possible, the docking stations were bigger and heavier, but they held the extra goodies that couldn't fit into early laptops. Since then, shrinking electronics have enabled manufacturers to put pretty much everything we need into the compact form of the laptop.

So what would a docking station for a mobile phone look like, ideally?
  • It must have a fair-sized screen and keyboard, and a good pointing device
  • It must talk to the mobile wirelessly, like Bluetooth but much faster, and encrypted
  • It should be interchangeable:
    • any mobile should talk to any docking station
    • any docking station should allow access to any application on any mobile
Of all the requirements, interoperability is the most important – otherwise we'll all end up dragging our own docking stations behind us on airport trolleys, which would defeat the purpose. But how can one docking station talk to any application on any mobile? Surely that can't be done, it would require us to develop a universal terminal, which is clearly impossible – no, wait, we've done that already – it's called the browser.

So the mobile phone of the future will incorporate a small web server! No big deal, most modern electronic appliances like network switches already do so. The mobile user will be able to walk up to any available docking station and click a menu item on his or her mobile phone. It will connect securely via local radio to the (nearest) docking station(s). A prompt will appear on the docking station screen, the mobile user will type in credentials to authorise access, and the job will be done. The user can then interact with applications on his or her phone through a big screen and keyboard, and a proper pointing device. Apart from the applications that we have on our mobiles today, we would also get many of the applications that we need PCs to access today, such as word processing, spreadsheets, and other office automation software. Google Apps has already shown us that it's possible to deliver pretty good office automation apps through a vanilla web browser. And the response times would be great, we would be on a local wireless link.

Mobile users would be able to access files on their phones, update them, and save them plus new ones. These would be the files that they are currently working with. They could keep their other files on file servers that their phones could access securely through the Internet. Docking stations may offer fast broadband Internet connections, but if they didn't, the mobile phone would revert to its own network operator.

So where could we hope to find docking stations of this type in the future?
  • On desks at home, and in offices for those folk who are tied to offices
  • In cyber cafés, hotel lobbies and rooms, and airport lounges
  • In kiosks on street corners
  • In aircraft and buses, in the back of the seat in front of you
  • In cars
What software will the docking stations be running? They will be pretty simple appliances, and everything that they need to do can be done today with open source solutions like Linux and Firefox. If some manufacturers want to compete in this market space with software they pay for, that's their funeral. And what software will the mobile phones be running? That's up to the manufacturers. There will probably be a diversity for some time to come, but free open source options now exist that provide most of the function required by a mobile phone, and it's hard to beat free. Most of the new development on mobile phones is adding applications rather than re-inventing how phone calls are made. It's getting increasingly more difficult for manufacturers who use proprietary operating systems on their mobiles to source or develop all of the applications that are already available free in the open source space. Their problem will only get bigger as time goes by.

Once we have access to most of the PC applications that we use today in this convenient format, the need for most desktop and laptops PCs will fall away. No doubt there will still be power users who will need fairly powerful computers, lots of storage, and big screens, and who find it most convenient to get this in the shape of a desktop PC, but they will become the exception rather than the rule.

I would suggest that the open source community should stop obsessing with the battle for the desktop, and start focusing on the battle for the platform that will replace it. As I have said before, the day will soon come when the notion of having to go to a particular machine on a particular room every time you need access to information or computer power will be as obsolete as the notion of having to go to the hand pump over the well in the front yard every time you need water.


Blogger James said...

I really like the concluding analogy to water access and I really hope that less rot sets in on the desktop's successors than did on the desktop.

Some bots have defecated in the comments of your first post.

12:47 pm  
Blogger Eric said...

I see this already occurring with the Nokia Tablets (Linux) maemo.org I have been using one for since they first came out. The newest is reportedly much improved, but the point is that such a device does exist, and there are people working on docking solutions. I had actually thought of much the same design and now SBC are cheap and powerful enough that this could easily be done. Provided you have a capable phone and service contract the device will connect via bluetooth, and when available uses wifi. After adding a few packages from the community the device handles all of my needs I can write my code and compile it on servers using ssh. I have a VNC client and server that makes administering a network much easier. It does MP3's Video's many I have only found a few sites that did not work correctly when I hit them with minimo (miniature Firefox) but they were heavy with ajax (I expect to see this improved soon). You also have Gaim, a good text editor, UPNP client, torrent clients, and on and on. It has a card reader for extra storage and with usb shows up as disk on MS, OSX, and Linux. As you suggested it takes some getting used to but the an 800x400 screen it is not bad at all on its own. It can even be made to pair with some bluetooth folding keyboards.

7:34 am  
Blogger Jon said...


I have given this very same topic a lot of thought and as far as I can see there are two main hurdles to overcome.

Firstly there is storage space. The current generation of laptops have hard drives in the 10's of Gigabytes. Your average phone on the otherhand is more in the range of 100's of Megabytes.

I realise that your proposition would allow for the docking station to contain additional space but you would also want to ensure the device itself had a reasonable amount of storage space for you to be able to carry around at least the files that are relavent to you at the present moment.

Having said that, models like Apples new iPhone do come with 6 or 8 GB hardrives. Benefitting from Apples experience with developing the iPod have raised the usefulness of such phones. You can now store reasonable amount of data on a mobile.

Also if we are talking about additional storage being held in the docking station then it is important to develop some kind of syncing software. Similar in a way to the media libraries that are used with mp3 players. The main difference being that the sync would need to work in both directions and be able to determine that most recent version of a file.

This can easily be achieved with todays technologies but would perhaps require a change in the way users think about their documents.

The second and in my opinion far more pressing problem is processing power. Admittedly for the kinds of applications you have dicussed, a mobile phone processor is more than adequate. However, if you are proposing that the mobile phone actually replace the laptop there is a huge range of additional software that would require much greater processing power. This is my opinion is a far more pressing problem and there are least two ways in which I can see it being handled.

Firstly the main problem with simply putting a faster processor into a mobile is power comsumption. Faster processors use more power. Laptops have, for a long time now, included processors that are able to throttle their speed (and therefore power consumption) as needed. What I would propose is that the same be applied to mobile processors, except to a much higher degree. When powered the processor runs at its full speed of xGhz and when running on battery power it would scale back to a few hundred MHz. This would of course mean that you would be limited to what was possible while on the move, the phone would act more like a mobile phone or PDA. However when docked/powered it becomes a full blown laptop like system. I am no electronic engineer so I am not entirely sure how feasible this is at present.

The second option is a distributed system. The mobile itself have little processing power. About the same as current PDA's and mobiles. However, the docking station would contain a more powerful processor or even something link the Sony Cell processor. When docked the mobile would automatically shift the majority of its processing to the docking stations. This sound a lot more difficult than it is or could be. For example the openMosix project can do just that. It silently and more importantly shifts processes around a network of pc's, automatically balancing the load as it goes.

1:49 pm  
Blogger Jon said...

After a little more research on your idea. It might be as far away as you think. Take a look at Nokia's
Mobile Web Server
which is a port of Apache to Symbian and also EyeOS which is a web based desktop operating system.

Both of these projects are open source and active.


2:04 pm  
Anonymous Anonymous said...

Thanks for the sharing this website. it is very useful professional knowledge. Great idea you know about company background.
web application development

2:46 pm  

Post a comment

<< Home