Firefox Gecko Engine: What’s behind your browser?

It is widely acknowledged that the rendering engine is the most critical in the experience provided by a web browser. If you have been watching the development scene closely, you would have definitely heard about the current buzzword on the horizon, “WebKit” – which powers Apple’s Safari browser and Google’s Chrome browser. Now for a general idea, we narrow down the workings of Gecko and WebKit to two distinct points – the process architecture and extensibility.

The Gecko process architecture is such that it handles all of the concurrent tabs on a single process thread. While this results in a comparatively slower interface, in the long term, it pays off to not fork a new process for every little task that needs to be accomplished – the model commonly used under the WebKit architecture. What this means is that while the first few tabs with WebKit would seem faster, it’s because the engine is only utilizing a few extra resources from the computer to parallelize the work and bring with it the overhead involved, but when you go up to double digits in tabs opened, with some of them doing resources-intensive work, such as playing videos or working with comprehensive web-apps, this model returns to cripple the overall performance of the system, and by the extension, of the browser itself, due to the sheer number of the processes that are now being requested to be forked and maintained by the system.

Firefox, as has often been cited, tends to do much better at handling such high pressure loads, because the entire browser’s working are restricted to a single thread, which is much more maintainable at a system level. The difference in the memory footprint increases almost exponentially between the two, as we make our workings more and more resources intensive.

Then, there’s the concern about online privacy. Although not directly relevant to the browser engines, it is worth noting that due to Firefox not being tied into any particular ecosystem, it offers an unparalleled sense of security due to an absolute lack of conflict of interests. The ‘Firefox Sync’ feature remains one step ahead of the usual username/password combination, and provides an encryption key that is stored locally on your device, which, when passed on to a new installation of Firefox, provides your data to you remotely, via Firefox Servers, with nobody else being able to peek at the exact information. Also, Firefox pioneers the campaign to hamper the ability of online commodities to track the actions of users via a combination of IP address re-routing, and blocking other user-identifiable data. This has been reflected in the aftermath of the recent NSA-spying revelations by Edward Snowden, with users responding by exponentially increasing their downloads on non-conglomerate entities such as Firefox and Opera.

Of course, there will be entities who believe that this can be used for illegal activities, but then again, so can regular phone call.

Mozilla Firefox

Mozilla Firefox has undergone an enormous rebirth over the past two years. Since Firefox 4 debuted in March 2011, the browser has been hell-bent on improvements. These have come in large part on the rapid-release cycle, which sees a new version of Firefox every six weeks. Many people like them, but a vocal minority has pooh-poohed the increase in version numbers. That’s hardly a legitimate complaint in a world where mobile apps also update silently and effectively, but the transition for Firefox hasn’t been an easy one.

As you can see, Firefox is on version 15 at the time of this review. As a point of comparison, Chrome is currently on version 21 even though it only launched in 2008. The benefit, of course, is a browser that is safer and sleeker, with fewer problems because bugs get fixed on a regular basis.

The Good
The best feature of Firefox is without any doubt its ability to integrate third party addons, making the original software expanding in unimaginable ways.

I am a Firefox power user and this means that mostly I need functions that are not available in the default package. The add-ons community is so large that it’s almost impossible to want something and not find it.

Another important feature of Firefox is the Awesome bar. Maybe it has a flashy name, but I have to give props to Mozilla. It’s pretty awesome! It uses all the history to make searching easier, it modifies according to usage to make links that are accessed more frequently pop up at the top of the list, and users can just type some of the words and not the exact link.

The third and probably one of the features I wanted most and which came to Firefox a year ago is Firefox Sync, a functionality that is not yet perfect, but is getting close. This function makes a backup of your bookmarks, cookies, history, and most importantly, add-ons, in the Mozilla cloud server.

Before Firefox Sync, when transiting from one operating system to another, there were some third party solutions, but they never worked quite the way they should and just moving a profile from one OS to another produced some problems.

The Bad

The best feature of Firefox, the multitude of add-ons, is also its greatest problem. The fact of the matter is that some features should be available by default and not introduced with third party extensions.

In theory, add-ons sound great, but they can also slow down the browser and even the operating system, especially when there are a lot of them, like in the case of a power user.

The other major issue with Firefox is the fact that it’s quite a resource hog. One of the improvements I noticed when I reviewed Firefox 4.0 was a slight improvement in resource management and it got better over the past year, but it’s still a major problem.

Conclusion

Some users have criticized the version policy of Mozilla and I even have friends that still use Firefox 3.5. I can safely say that it was a great decision to increase the pace of development, and it shows in the number of features and the overall feeling of the application.

I hated Firefox in the pre 3.5 versions because of the memory issues and because I had to install numerous addons just to make it the way I like it. Now, I can’t imagine how I could do my work with any other browser, although there is some fierce competition out there.