The Browser as Operating System

I've just upgraded to Firefox 1.5 and that made me think a little about how I use my browser. Some peope have argued that one can see the browser as an operating system in itself with urls providing the file system. Recently more and more web based applications have popped up which makes it possible to start using the browser more and more as an operating system. I've been trying to move as many applications as I can to be used inside the browser lately to try out this idea. I use the browser to read mail (via gmail), read news (via google reader), write blogs (via blogger), search my hard drives (via Google Desktop) and handle my torrent downloads (via azureus' HTML WebUI plugin). And I must say that I'm pretty happy with doing things inside the browser. It gives a common framework to all the applications. I like the way tabs work and now I can even reorder them in the new Firefox 1.5.

But moving more and more applications to the browser will place higher demands on the usability of the browsers and how one can interact with them. But to me it seems that the browsers are continuously improving in this respect and adding capabilities such as SVG. It will be interesting to see how the new browser Flock is going to affect the rest of the browsers as it does a very good job of integrating and supporting web based applications.

It's funny how web based applications have created a kind of standard for how to design programs. Most web based applications come with their layout written in CSS, the client side data in HTML or XML, client side logic written in Javascript and they communicate to a server via XMLRPC. It is interesting to see how that this creates a very nice separation between the looks of the application and its data. This is something that one could wish more of from ordinary applications even though the Model-View-Control paradigm tries to realize this. It seems though that ordinary applications are learning from this. Microsoft has announced a new language for specifying interfaces which seems to me to be related to CSS.

I should also mention that I'm still using Firefox. I tried to switch to Opera a couple of weeks ago. But many of the things I use my browser for doesn't work properly in Opera and that is a showstopper for me. I use Opera for one thing though, Amazons Mechanical Turk. But we will see if Opera will improve further with their upcoming version 9. Perhaps I'll switch then.


History's worst bugs

Wired has an article on history's worst bugs. It gives a chronological list of the 10 worst bugs in the history of bugs. I found it an interesting read. Furthermore they also give the etymology behind the word "bug" which was fascinating.

A random silly fact about the article is that the authors name is very similar to Simon Garfunkel. I misread it several times.

But what I'd like to expand a bit upon is what they write in the first paragraph of the article. There they report on the fact that Toyota had to recall a number of their Prius cars due to a bug in the software of the car. I find it interesting that Toyotas name shows up here because few company's are so tightly associated with high quality and robust things. Here in Sweden someone even tried to put a Toyota logo on his car when he had it inspected in the hope that it would pass more easily. (He didn't come up with this himself though, Toyota is running a commercial which shows people doing just that.) "The Toyota Way" is a corporate model for (among other things) increasing the quality and reliability of the products. Examples of how they work is that finding a problem is considered a success. They keep asking "why" when a problem shows up to really find the root of the problem. This had the effect that a small pool of oil on the factory floor changed the bonus program for people in the buying department. This way of long term thinking reminds me of the thinking I blogged about a while ago in Getting Software Right. What I would like to see is a Toyota Way for the software industry. Now that Toyota need software in their cars maybe they can improve the field of software engineering. I should point out that I don't think it is possible to use the Toyota model right off the shelf since it is aim at producing physical stuff, not computer program. These two things are inherently different.

Winners of the 18th IOCCC

I can't help my fascination for the International Obfuscated C Code Contest. The kind of code that the contestants produce is just mindblowing. The winners of the 18th version of the competition was just announced. The code of the winning entries has not been published yet but ruling from the titles of the entries they're better than ever. The following picture was generated from one of the winners.

Finally, I can't mention the IOCCC without boasting about the fact that I have my office across the corridor from a three time former winner of IOCCC.