Interesting debate I had in cryptography today (We got off topic). I was wondering which one is the most efficient and why?(Hardware accelerators etc etc). Which is most secure of the 3 browsers why? Which is the best all around? I've got the whole history from netscape to IE to firefox now with chrome coming up it's more competitive then previous years. Anyone with knowledge feel free to shed some light.
P.s. Didn't proofread any of that above(ending sentence in a preposition. Consider revising)..(... - ellipses have 3 dots, you either have an extraneous period or a missing one, please revise.)dDan
From what I've read (not much), Chrome is the fastest of the three browsers, Firefox uses the least resources, and IE is just bad, or something like that.
All of those are pretty loaded questions, and there are definitely no "correct" answers to any of them. That said, browsers vary pretty significantly in design and function, so they each have strong points and weak points.
In order to better understand browser quality, it is important to understand how browsers load resources and run the scripts on webpages. I apologize in advance if this is too dumbed down for some of you:
When you access a new website, your browser must first determine how it should render that content for you. It checks the headers that are returned in the server response to figure this out; most of the time it serves up HTML, but it can also serve up a ton of other content such as binary files (images), rss feeds, etc. I'm going to focus on HTML.
When parsing HTML, every single time the browser sees a new javascript file (for all the dynamic stuff you see), a css file (the reason the website looks nice), or a link to a binary file such as an image, it must execute an entirely new HTTP request for that file. That means it needs to send a request out across the web to the server, the server needs to process that request, and then the server needs to send back the content requested. To make matters worse, if the website stores cookies on your computer (at this point, pretty much every website does), those cookies are sent with every request that is to the same domain as the website you're visiting. This might not seem like a big deal, but if you are executing 100 HTTP requests on a page load, then you are increasing the amount of data (and time) for sending all of these requests by 100 times your cookie size. It adds up. HTTP requests are pretty much the biggest reason websites take time to load -- they are incredibly expensive.
After your browser receives the content from an HTTP request, it can then embed that content wherever it is supposed to be in the page. If the request is for a javascript file, then the browser passes that javascript off to its internal javascript engine. This is also really important to remember: older javascript engines are indescribably slower than newer ones. I'm talking magnitudes here. Since javascript is used infinitely more now than even a few years ago, this means an older browser is going to crawl on newer websites.
To make matters worse, javascript is doing more and more of its own HTTP requests in the form of ajax these days. This allows for extremely complex dynamic functionality on websites without a massive initial load time, but it means your browser has to be that much better at handling concurrent actions (a lot of shit happening).
Standards compliance is also really important for a browser. If your browser supports more advanced standards such as CSS3 and HTML5, it means your browser will be able to do more with less reliance on javascript, http requests, and even bulky third-party terrible-as-shit technology such as flash and java applets. This can dramatically improve performance on websites since in 9999 cases out of 10000, your computer has more than enough power to handle what's going on on the web and the bottleneck is entirely on http requests, bandwidth, and javascript. This is becoming even more true as operating systems and browsers are beginning to use all of their resources more wisely (hardware/graphics acceleration). Moreso than ever, standards are key.
Security is a tough beast, and I don't have a ton of expertise here. It is a huge concept though -- if one browser only has a single "hole", but it allows a hacker to gain complete access to a person's computer, how does that compare to a browser that has 5000 holes that allow you to do an incredibly large amount, but not necessarily take control of the entire computer. A lot of "exploits" out there have to do with the way websites are coded too. Browsers are becoming more and more involved with combating these, but can the fault really be placed on them if the websites you visit aren't written securely? I'm not even going to touch this one other than to say that I'd choose any modern browser over IE on this one if for no other reason than that IE is the biggest target by far -- it has the most users and you know those users are running windows.
So, all that said, here's a very basic breakdown of browser pros and cons:
Internet Explorer has been around forever, and you know it is on most personal computers around the world. I guess that's a plus? Over the past decade, Internet Explorer has consistently been dramatically slower than the others. Once again, we're talking magnitudes here. It would make Microsoft look significantly better (but still bad) if we were to only consider the most recent version of their browser, but the fact is that their last three versions are all still used extensively, so you must consider them all.
IE6 is awful in every regard. There is literally not a single thing worth mentioning about it. At the moment, it simply doesn't work on a huge number of websites, it is so much slower than even the next slowest browser that it is hard to describe. It only allows TWO simultaneous HTTP requests at a time, and it is by far the slowest browser to process what is returned. It is the most insecure, least standards compliant, slowest piece of shit out there. And no tabs...
IE7 is only marginally better than IE6. It is built upon the same antiquated technology and stupid principles, and it too can only process 2 HTTP requests at a time. Fortunately, IE7 is rapidly declining since those users are generally fine with upgrading to IE8.
IE8 is still awful. It is magnitudes faster than IE6 but at the same time magnitudes slower than its current competition (ff, chrome, safari). It is still inferior in every regard. However, it at least can support up to 6 simultaneous HTTP requests on boardband.
IE9 is still in beta, but it is worth mentioning since its release is just right around the corner. It is a monumental step up from previous IE versions in nearly every way. They completely rewrote the javascript engine, and it is fast. That said, it still is not faster than its modern competition. Microsoft has also recently stated that they score better on apple's sunspider javascript benchmark than the other browsers in beta, which I was very excited to see. Unfortunately, it looks like they may have written certain parts of their engine specifically to do well in the sunspider benchmark rather than doing well as a result of the quality of their engine. Regardless, I am eager to see what IE9 can offer. I guarantee I won't be switching to it since all the other browsers are faster in most cases, but it will do a lot for the web to have IE users at least on a platform that works marginally well. IE9 does have a leg up with hardware acceleration though. This could be huge down the line, but the technology is so new that it likely won't have any significant effect for a long while. Since the other major browsers are already developing or considering developing similar technology, I imagine most browsers will have it available once the web as a whole really starts to benefit from it.
Firefox is widely used as well, albeit not nearly as widely used as IE. Firefox uses the gecko engine which is really solid for plugin infrastructure, but it also makes firefox as a whole harder to manage and develop. Gecko is pretty fast, and the Spidermonkey javascript engine that it uses for parsing is kind of quick, but it definitely leaves a lot to be desired. Tracemonkey added a much welcomed speed increase, and Jaegermonkey looks really promising, but all of this is kind of like slapping lipstick on a pig. Firefox is fast enough for many, but after using a faster browser for a few weeks, most people that switch to chrome or safari end up cringing whenever they have to use Firefox again. Firefox is available on the three major types of operating system though, so that is excellent.
Safari is fast. It is very very fast. Webkit is screaming fast, gets frequent updates from a large open source community, and offers up the SquirrelFish javascript engine which is pretty amazing. Its security has its ups and downs though. It is a solid browser on OS X, but since the windows version is basically just a port of the OS X version, it doesn't get a ton of attention. I'd basically just consider Safari to be a one-OS browser like windows.
Chrome is fast. It is very very fast. It also uses webkit (thank you apple!), but it uses its own Javascript engine called V8. V8 is neat. It compiles javascript to native machine code, so it executes nearly as fast as a compiled binary. That is geek talk for "super sexy". Chrome forces updates upon people, too. There is no window that pops up asking you to upgrade or anything like that. If you use chrome, it will update entirely in the background whenever you open the browser. This means you don't have a problem with the chrome community getting split up between versions, and pretty much every chrome user gets the latest security patches as soon as they become available. For that reason, I'd consider chrome to be pretty damn secure. It also isolates each tab to its own process, so if something fucks up a webpage you're on (*cough* flash), you can usually just close that tab rather than your entire browser crashing.
The amount of resources your browsers use varies entirely based on how much you're doing. Ultimately though, the amount of resources that your browsers use is pretty tiny. If you're running a 6 year old machine, you're going to notice lag whether you're using IE8, chrome, safari, or firefox. That's just the way it is. I'm not even really going to bother comparing resource usage across browsers since it is, for most cases, not important.
All in all, I consider Safari and Chrome to be very similar in speed. Your experience while browsing the web in either of those two browsers will be very similar, and it will be very very fast. However, what puts Chrome on top for me is the extras -- it updates constantly without me even realizing it, it isolates tabs to processes, and its initial opening is basically instantaneous.
Firefox would be nice if it didn't have a huge memory leak.
IE is bound to be the most exploited because it's the most used and activeX is a fucking joke. It's also a pain in the ass to program websites for. I've heard IE9 is supposed to be sick though. We'll see.
Chrome is very fast.
Opera is fast as shit too but takes a little bit to get used to.