Search this blog

2009-07-30

Why Firefox Will Remain Relevant With Gecko

Firefox, is my favourite browser. I guess the same sentiment is shared by a significant bit of the world population, since Firefox's download number is quickly reaching up to 1 billion. This is a very important and commendable feat by any software, specially for an open source one.
But I am taking this instance to see, how can Firefox remain relevant in the days to come. You wonder why I should I be bothered about it? Isn't numbers everything? Well even IE had numbers on its side and today its numbers are getting depleted like the life out of a fail-whale. So instead of simply saying, Firefox is the best, lets strive to see, how can the "greatest" still remain that smashing in the years to come.
If you have read Aza Dotzler's blog on the impact of Firefox, you could not be anything but be moved. An awesome bar that every browser immediately implemented in their own ways, HTML5 to support one of the most vibrant and viable add-ons community and the most important thing, without Firefox's initial market share, all these other single-digit share-holding browsers that are now coming in would not have mattered.
You can pretend that everything was OK without Mozilla but that's fantasy land. Everything you care about is possible because you're not being fucked by Microsoft's 99% monopoly of the Web because Mozilla took them on and succeeded.
You don't get it, (...). Opera would be dead on the desktop without Mozilla opening the playing field. Mac would be dead on the Web without Mozilla opening the field. Chrome wouldn't have even happened. Hell, Google's search dominance probably would have fallen to Microsoft if Microsoft had been able to maintain its 98-99% browser monopoly.
So, rightfully, the fox-lovers are real proud. But why is it, that this wonderful, innovative, world class browser is receiving so much flak from a sub-section of its erstwhile users? Instead of criticizing them, I guess the best approach would be to see, how Firefox dev team proposes to integrate some of these must have features, the reasons why these users are moving from Firefox and using something else. After all, at the heart of innovation and relevancy would lie the capability to adapt.
Gecko vs Webkit:
I will not bring in Trident (of IE), Presto (supporting Opera) or KHTML (used in Konquerer) here because in all fairness, Mozilla's Gecko layout is mostly compared and contrasted with Safari and now Chrome's WebKit (of course we know, WebKit was developed by Apple with code from KDE's KHTML project)  rendering engine.
When it comes to Gecko it is backed by over 10 years worth of solid development going into it. Gecko is a complete solution. It can provide a complete web-experience which goes well above and beyond the calls of a rendering engine. But although, the architecture was lightyears ahead of its competitors, like Mozilla ziner, Pinkerton puts it, it was in no way well-designed. For a developer to work with Gecko, the learning curve is immense and a real challenged at that. What is more of a problem is that Gecko is very difficult to understand and much more difficult to fix. It has its flaws which come wrapped within its benefits. Gecko is impenetrable yet admittedly bloated (although the latest version leaves very less to be desired).
On the other hand, by the insider's own admission, he finds, WebKit, much more developer friendly. Its sleek, less bloated, has an elegant embedding API and definitely finding and fixing bugs are extremely easy. Its a developer's dream. But why not implement the same for Mozilla? Wouldn't faster bug-fixing and a faster rendering rendering engine definitely benefit the end-users too?
This is because, as this well-researched article reasons points out: when objectively viewed, Gecko is clearly capable of achieving parity with WebKit in power,performance, and low memory consumption, while still providing unique and highly advantageous features that can't be found in other rendering engines or easily added to WebKit. Despite the belief of some critics that WebKit is categorically better, there is no technical basis for arguing that Firefox should drop Gecko.
Apple is not known for its open-ness. If a company like Mozilla were to switch to WebKit, in the unforseeable future conflict of interest may result. Moreover the architecture of WebKit is still very fragmented. It makes no sense, to shift from Gecko just to jump into the new band wagon and in doing so lose all the things a user and the deveoper has come to expect out of Firefox and its allied suite of software.
As rightly pointed out by Mike Shaver, the VP Engineering of Mozilla,
"We follow WebKit as closely as anyone in the world, and we cast as critical an eye towards our technology stack as anyone in the world,but a brain transplant is neither practical nor likely to be useful."
My two cents:
If something works at the end-user segment, then very few things matter after that. The ease of use, the security of web usage and the ability to do anything with their browser is what most users of Firefox (and to some extant other browsers) have come to expect. They want a single powerful platform around which their entire web-experience and partly a significant portion of their desktop work-flow can be based upon. Not being able to support an average user's basic needs when he or she goes about surfing, is not only not cool, but actually pathetic. 
Firefox through its open architecture and by the use of Gecko has made the notion of a complete web-package possible. Today there are so many wonderful uses of the XUL engine of Gecko (Songbird, Miro to name a few) to create much beloved and useful softwares that WebKit is simply not in a position to deliver yet.
Lastly, Fennec has ported well into mobile devices, something that Gecko dissenters thought could never be achieved. Surmise to say, Mozilla's dev team and community support will pull through, breaking more grounds than any other platform can, simply because there are more people passionately working towards it. The cultural milieu has made it possible for more innovative things to surface than would have otherwise.
As of now, the road looks pretty well poised. The roadmap to Firefox 3.6 is ambitious and clear. As always, performance, customizaton, task based navigation and superior web-application support are top priority. In using Gecko 1.9.2, the aim is to achieve human-perceivable (>50ms)speed increases not only on start-up but also whilst the user is doing common tasks. Firefox would also have better tab handling (hopefully one of the wonderful tab handling ideas from the Summer '09 Design Challenge would be integrated into this), capability to play more rich media content, better support for native theming and the ability to install themes and extensions without a restart: "no restart". I have been using Linux now for a while, and believe it or not, the no restart grows on you, and you yearn for everything to be able to just as adept at handling plugins. Lastly if you have used Ubiquity, you know how easy life is going to get once Taskfox is completely implemented.
I am not saying to choose speed over usability is a bad thing. I am not saying that a bloatware should not be hacked down. By all means. Gecko's streamlining will only be possible when added pressure from other layout engines force people to think ahead. But herein lies my question: I want to know if any other browser can do all of the things that Firefox can without screwing up my surfing experience to even the most basic sites. A very obvious necessity at the end-user level, isn't it?

Related Posts: