Saturday, November 26, 2005

Xen and the desktop of tomorrow

Tomorrow's computing world will be dominated by servers hosting multiple different OS's as virtual machines, to which users log on by protocols such as VNC from their local thin client terminals, which are no more than a bit of RAM, flash memory, a marginal CPU and display and input peripherals.

I predict that in less than five year's time, the preferred practice for booting a computer will be by Linuxbios -> GNU/Linux -> Xen -> Virtual OSs; this will happen on a central server with parallel 64 bit CPUs and large amounts of RAM. By using virtualisation technology, the conflict over which OS is being used is avoided - users will be able to switch between Linux, Windows, and possibly Mac OS X (or Free implementations of Mac OS X) guest OSs effortlessly, as a pool of virtual OSs will be available for users to sign on to. Multiple users could log on to the same OS instance, or a new instance be created for each user; advanced users could request root-jail type sessions, for instance. It is clear that Linux with Xen will be the host OS of choice, since this combination has the lowest total cost of ownership (TCO).

Users will work at thin client terminals that have no more than a small amount of RAM and flash memory - no more than is needed to hold the kernel and sufficient graphics routines for a minimal VNC client; there will be a display and reasonably powerful video card, and fundamental audio hardware. Such hardware is already typical of today's thin clients. Linux, due to its virtues in embedded applications, is likely to be the foundation of such a thin client set-up.

As more services get transferred to the web - such as office applications in the guise of ThinkFree Office and GroupOffice; photo albums on Flickr; email services at Yahoo and Google, etc.; the browser will increasingly be the user's window to the world, and classical desktops will be displaced by the browser as the graphical user interface; tabbed and extensible browsers such as Firefox will gain in marketshare, but be themselves displaced by derivative projects that eliminate the "application" behaviour of the browser and implement the browser as the exclusive GUI to which the user signs on.

This presents a somewhat alternative scenario, in which the vast majority of virtual OS sessions hosted by the server would be a simple browser OS, allowing legacy hardware to drive the server and clients, with the labour-intensive services bought in from external service providers such as Yahoo and Google.

The niche for commercial desktop software is vanishing, then, with the advent of standards-compliant, Free browsing environments, that through high-level language-written web applications (in JavaScript and Java on the client, and Python, Perl and PHP, with an sql variant, on the server) achieve all of today's and tomorrow's objectives. Key to the success of this new way to using computers is the elimination of file traffic through the user's machine through sensible cross-integration of different web services and service providers with each other.

Friday, November 18, 2005

Technorati tag proliferation

Technorati (possibly along with other tag-based websites) urgently needs to address the problem of tag proliferation. I don't think it is justified to have "cell phone", "cellphone", "cellphones", "cell phones", "mobile phone" and "mobile phones" as separate tags. See wikipedia and its "redirected from" feature!

Technorati tags:, , (see?)

Mobile phone networks by P2P

About a year ago, I was at a conference (nothing to do with IT, actually) and jotted down some notes that I've just found.

There are two problems with mobile phones:
  • reception is not possible when too far from a mast
  • emittance is often high and suspected of causing brain damage or dysfunction
Both problems can be alleviated to at least some extent by having phones forward other phone's calls. In principle, in large cities, it should be possible to make within-city calls without ever using a mast, because there is a continuous and dense net of phones throughout the city that can pass on the call. There are other people who understand more about routing methods than I do, but I'll just take it as given that a call can reach its destination by this method. In fact, I heard a physics talk by Neil F. Johnson, in which he alluded to the optimal way for satellites to compete for transmission of a signal. I don't remember the details of his talk, and don't have time to look them up.

One of the main challenges in routing is how to ensure a) that the signal is passed on, and b) that it travels by a single route (i.e. does not fork). It is easier for now to think of a single data packet, such as a text message, travelling in one direction only (we'll pretend it doesn't send a "received" signal back; afaik this is a recent feature anyway).

One thing that helps is for a phone to be aware of other phones in its environment and haggle with these phones over how many milliseconds it should wait before passing on a signal it has just caught. This is necessary to prevent forking and overdubbing (again, this may not be a problem with current mobile phone data protocols, but I know nothing about mobile phone signal transmission).

It also needs to memorise the ID of all packets it has recently sent and not transmit them again when they come back to it (inevitable if all phones emit with the same signal strength). However, there may be other routing approaches that yield the same results.

A phone may also want to haggle for a larger delay if it has recently transmitted large amounts of data, to save battery life.

Further complications arise from phones that are switched off while data is in transit or while they are sitting on a computed route (it makes sense to first find the route and then send the data over it).

I'll also quickly admit that, as usual, some other people had the same idea at around the same time. It is a rather obvious idea, but it does surprise that it took so long... I'd like to learn how their protocol works. We've had walkie-talkies for so long, why did they ever think of putting base stations in?

tags:, , , , , , , , , , ,

Thursday, November 17, 2005

Sending calendar items over email

As far as I know, there is no standard format for sending calendar items over email. Such email items could be immediately put in the calendar without much effort on the user's part (at worst, clicking a "Yes" button). I could allow certain people's calendar submissions to be automatically allowed into my calendar ("Always" button). Granted, this requires a mechanisms such as PGP/GPG to establish authenticity of emails, otherwise one is vulnerable to "calendar bombs".

The same could be done for addressbook items.


Auto-reply interface priorities

Many current auto-reply setup interfaces don't have the following invaluable features:
  • Setting start and end dates (most now have this)
  • Displaying a big warning in the client to indicate that auto-reply is active
  • Setting a threshold to prevent replying to list emails; for instance, if the email is received by more than 10 ppl, do not send the reply; also, if it is received by addressees *@lists.*, do not reply.
Would be really easy to implement.


Tuesday, November 15, 2005

Intel and Apple

Finally, since a visitor to this site, rich, challenged me to find more reasons why the pears will turn sour for Apple (pun and reference to FOSS projects intended), I'm at it again.

Some critics have argued that had Apple put more effort into optimisation of ppc compilers, they would not have had to abandon the architecture. The PowerPC architecture, of course, will survive on the merits of its floating point registers, and GNU/Linux will likely be the most popular operating system for it.

As for Apple's switch to Intel hardware: Mac OS X is Apple's greatest asset, but the business model has always been "want the OS, buy the computer". Whether or not the current reports of such achievements are truthful, Mac OS X will be hacked to run on ordinary x86 hardware.

However, there are benefits from the move. I have been wondering what the next generation Mac OS will be like, and it's clear that Apple could now at any point choose to switch to a different kernel, such as Linux (which also exists for PPC), opensolaris (which does not) or more exotic plants, such as DragonflyBSD.

One thing is clear. Whatever they do, they're stuck with POSIX compliance as a minimum.

The OS wars are coming to a computer near you. And this time, MS-DOS is going to lose.

tags:,,, , ,,,,

Friday, November 11, 2005

Remote access to Mac OS X through osxvnc

At long last, I can now access my Mac OS X desktop remotely from Linux at home. The installation of osxvnc on the desktop and tightvnc on the laptop was trivially easy - much recommended!

If you're going to do this, choose a window manager on the client side that will support full screen mode, and change the keybindings of the window manager to something other than the default, so you can use the default bindings on the host. In my case, I found that the Alt key mapped to Apple's Cmd (command) key, and the Meta (aka Windows) key to Apple's Alt. Ctrl was as expected.

Tags: , , ,

Sunday, November 06, 2005

High impact blogging

There are a lot of blogs out there - how do you stand out? Some people, no doubt, are making money from Google Adwords et al., so how to be one of them?

Well, the first lesson, as always is, if you want something from people, you've got to give them something they want. Think hard about the content of your site - is it useful for the viewer? So far, so trivial.

The second obvious point is that you need to give people a chance to find your site. That's what this article is about - a basic outline of how I'm currently trying to promote my blog. [1]

The first rule in the modern world is that you need to include tags as you're writing the blog. Think of these as the analogues of keywords in the old world of simple, single html pages. I suspect that some blogging engines have a separate field for entering tags - can anyone confirm this?

You can further promote your blog by offering helpful advice in forums related to your blog subject, and have your blog url in your signature. This also ensures that web crawlers can find your blog. A similar and similarly important strategy is to link to other relevant blogs and websites from your blog. This gets you listed on "what links here" lists! Perversely, linking to popular blogs may just get you more hits, although they may also be less specific.

You'll also want to open an account on each of the online newsfeed aggregator and social bookmarking sites listed in my previous post, and add your blog or even, in the latter case, individual blog posts with appropriate tags. Especially that last strategy ensure that your blog entries will come up when people search for appropriate combinations of tags.

Technorati also allows you to alert them to new blog posts on your claimed blogs by "pinging" them [2]. I'd really like to see some data on the effectiveness of this.

I'll just close by saying that I am aware of ways to abuse this system, but will refrain from expanding on them here. Keep it fun for everyone - your gains, if any, would be ephemeral!

[1] Not to give the wrong impression - my actual objective is to attract the right sorts of viewers to my site and make an impact with my writing; I don't yet care about the advertising revenue - as you'll be able to tell from the absence, at the time of this writing, of any advertising on the site!

[2] Ping originally is a utility that allows you to test if you can reach a given server (technically, the question actually is whether the response packets make it back to you; the response is "pong").

Tags: , , , , , , , , , , , , , ,

Wild, wild world of blogging

If you're obsessive like me about choosing the best sites for managing your blogs and subscriptions, you may find this list a useful starting point:

Blog hosts

Blog rolls aka RSS Readers
Google Reader

Tag engines

In a class of its own

Image hosting

Tags: , , , , , , , , , , , , , ,