Wednesday, November 02, 2005

Firefox and the future

I just thought I'd make a personal note to myself on how fascinating the growth of Firefox is turning out to be. I'm not sure what future lies ahead for Firefox, but it does seem like its path is tied in deeply with that of the open-source movement itself, and its adoption by the general public. Microsoft will respond in due course with IE7, but will it offer anything new (ah, but it doesn't have to, since it is the choice by default)? Right now, it seems unclear how Microsoft will be able to respond strongly; I think the current popularity of Firefox as a flagship among the OSS community means there's little danger of it losing steam over the next few years. I doubt that MS will be able to speed up development times too, at least without compromising quality.

I guess the flip-side is that it will take a lot for some people to change, and that MS need only take a user to a comfort-zone in terms of usability and functionality to prevent "conversion"! For instance, I'd imagine most people would be comfortable with XP; even some techies, like me (at the moment, going back to Ubuntu is a no-no, since it has too many memories of the project)! There's less of an initiative then to try and choose to go against the norm for the average user. But in the case of Firefox, it seems like lots of people are advocating its use for the user at large, certainly more so than people who advocate the use of Linux to the general public. Heck, even at the Psychology department at uni, students are told not to use IE! Who would've guessed!?!

Now, if it takes a lot for someone to change, does that mean it will take a lot for me to change back to IE? Or is it "it takes a lot for someone to change to something new"? I remember an old friend saying that he would ditch Firefox the day IE came out with something that had tabs, and better security features. I can't say I'll do quite the same, but if IE7 does indeed have everything Firefox does, I'm not sure what I'll choose to do. In all likelihood though, by the time it is out, Firefox will be at 1.6, with some small new enhancements over the current versions. Which means that we might see MS forced to play catch up!

Since the majority of my project involved looking at OSS (game development) tools, I feel like commenting a little on my experiences. One worrying observation was the number of tools I checked out, only to find that they had been abandoned early on in development, either because the developer changed his mind about the philosophy, got bored, or, well, just left. No doubt this is a point that is made by people in the closed-source movement; I'd be interested to read statistics on project completion rates. Of course, the fact is that there are just so many developers out there that some projects are just bound to go through (it's understandable if this intuitive notion is just not good enough in the real world). The most successful projects I came across garnered a large base of users and developers, hopefully securing its lifetime for the forseeable future (or until some strange new techonology comes along).

The lack of structured documentation is still my biggest complaint. Quite a few projects saw it fit to include the Doxygen files as being enough of a reference, which I don't agree with. Yes, of course it's possible to look at them and then struggle to a solution, but surely the goal should be for simplicity from the user's point of view? Even if the tool is aimed at programmers, it seems a stretch to suggest that it then doesn't need documentation. Programmers are human too! I was however heartened by the number of Wikis I saw, where the users of the tool contributed to help improve the documentation on installation and usage. The ones where this was present proved to be the best ones of the lot. Wikis are just so cool.

But as for the long term prospects, I'm not entirely sure. It certainly seems as though OSS will be here to stay, and in fact it also seems as though it will grow very powerful. I think the successful projects are most likely the ones where there is a lot of internal structure. Single-person projects of any sort of non-trivial scope tend to be the ones most likely to fail; probably because the developer is the one that undoes himself. I suppose tools like BugZilla are a very good mechanism of control and structure, but what about working towards a picture of an overall extensible design? Strict reviews and moderation of commits also seems essential. It is of course difficult to give a structure to an OSS project where the team is situated all around the world, but I think it's probably the key to the movement taking it up to the next level.

Interesting times ahead.

Aside: Of course, I will still dislike computers. My favourite experience of the last few weeks was when I accidentally removed a PPT (yes, I'm a sinner) file for my final presentation when I was trying to remove a PDF file. What's better is that I was removing the PDF file so that I could commit to SVN and keep a backup of the PPT file, in case something nasty happened. Like, you know, accidentally deleting it. Sigh.

2 comments:

xiaodai said...

this post shows that you are an exceptional genius. You analysis is so indepth that I have nothing more to add. What a genius you are!

Anyway, i remember when I abadoned Netscape 4.7. It was just too slow, then i tried IE 5.0, the difference in speed is so easy to notice. I never went back. Then came Firefox, i only IE for websites that are compatible with firefox now.

AKM said...

Hmm me sarcasm meter's going off the charts...! I find most of my posts to be lacking in any sort of clarity of thought or analysis, and of late I've tried to change this by spending more time "crafting" posts. Unfortunately, re-reading most of them, I feel that there is still not enough substance.

I still think I'll switch back to IE if IE7 is of comparable quality with Firefox!