Why Mozilla Is Committed To Using Gecko
Ars Technica has published an article about Mozilla's commitment to use the Gecko rendering engine instead of using Webkit, which was adopted by Apple and Google for use in the Safari and Chrome browsers. I have been using Chrome on my work PC and find many of its features compelling, and wonder how soon we will see its best innovations in Firefox. Why is Gecko worth keeping if it is outdated and bloated?
Holy begging the question Batman!
Yes, I did check Wikipedia to make sure a million angry slashdotters weren't going to kill me for its usage.
The whole of the Mozilla code tree is tied into a framework called XPCOM. It is a Cross-Platform reimplementation of Microsoft's COM. The XPCOM influence is extremely pervasive throughout the whole of the Mozilla/Firefox/Thunderbid/Sunbird/Gecko code trees.
WebKit would not fit in very well with the existing ecosystem because it does not tie into the XPCOM framework which is used to tie all of the Mozilla group's projects together. A lot of the potential performance benefits of moving to WebKit would be lost because of all the bridging between WebKit and XPCOM that would be required.
-- There are three kinds of mathematicians: those who can add and those who can't.
I think it's more that WebKit is the new buzzword in browser dev. Plus, Apple uses it, so it's *obviously* the holy grail. I think Gecko is fine; if it's the bloat, maybe the competition from WebKit will whip it into shape.
Show this to your friends and family that don't know what a real hacker is
Ya know what I'd like to see? Standards revision. It's great to tote out "standards compliance" as the holy grail, but the problem is that there are plenty of things that the standard just does not define.. and those things get discovered by web developers who work around the issues and it never gets back to the standards drafters. For example, how do you prefetch images? For a long time there was no standard way. Now there's the link tag but it's optional.. yeah, that's right, the standard says that a browser can optionally implement the tag.. what kind of standard is that anyway? So no-one used it. Instead, they use the img tag and set the width and height of the image to 0.. unfortunately, the standard never said "if the width of the image is zero, thou shalt not render anything." Yeah, yeah, I know, should be implied, by some browsers render a white pixel and figure that's good enough.. the fact that this isn't good enough should be fed back to the standard and made explicit.
Thankfully the interest in Acid tests has taken on this role. Unfortunately even a lot of stuff that is in the acid test never makes it back to the standard, so browser developers have to reverse engineer the Acid test!
How we know is more important than what we know.
https://wiki.mozilla.org/Gecko:DeCOMtamination
Nerd rage is the funniest rage.
Your post is a perfect example of why designers constantly need to be kept in check. Looking really good is an admirable aim but is not an "excellent reason" to harm functionality. A designer's role is secondary to function. Making something which just looks good is an artist's job, not a designer's job. Designers have to make things which look good and work well. Failing at either one is a total failure. Many designers are frustrated artists and would love to be able to just make something pretty, which would be so much easier if the damn thing didn't have to work too.
Car designers hate having to have boots (trunks) which can hold a set of golf clubs, because it means cars have to have high, fat arses. They hate having to cater for tall people in the back seats because it ruins the roof line. They hate laws about how high your bumpers (fenders) need to be, the fact that an airbag makes the steering wheel fat and the need for fat pillars so the occupants don't get crushed to death in a rollover. The car industry is more mature than the web design industry and there's a lot more money at stake, so the wannabe-artists get weeded out, re-educated or (only they're phenomenally talented artists) set to work on concepts which don't really need to work properly. We need to get rid of the wannabe-artists from the world of web design too.
Sorry if designing for the web is a hard job, but the notion that the web should get harder for everyone to use so it's easier for a few wannabe-artists to design for is only appealing to wannabe-artists.
Chernobyl 'not a wildlife haven' - BBC News
Funny, just tracked down a bug earlier today related to a similar issue... A static instance of Class A is instantiated, and called by multiple processes... Class A had a class level instance of Class B... Class B had a class level variable that method X used. Method X would modify Class B's variable while running... On occasion the wrong information was shown to the user... Why, a static instance where a child object's methods weren't threadsafe... even though they weren't really designed to be, but because of being called from a static instance, used by multiple threads... just a major issue about 1/100,000th of the time.
Building anything that is multi-threaded, even if un-intentional can cause issues... in this case, making the Class A's instance inside the method was the solution... in other cases locking is. Just depends.. it's just amazing how many people don't understand, or realize how these issues pop up.
Michael J. Ryan - tracker1.info
Reading those it is not apparent to me that they are due to WebKit issues. Are they?
Maybe you're a really good coder and can handle all the issues related to threading.
However the browser you write won't just be running your own code. It will be running code written by Adobe, Facebook 3rd party apps, and so on.
Given that, it's wiser to design your browser to use processes, so if you or somebody else screws up, the offending tab can be killed without affecting the other tabs, and also the memory used gets freed up (this is quite important given the large amounts of memory a tab can use nowadays).
You could in theory have your browser threaded, but use processes for the plugins, javascript and future junk^H^H^H^Hfeatures the W3C comes up with, but at that point how much do you really gain?
Why do you think Microsoft sees Google as the enemy? They are right. Google have just launched a new "operating system".
It's wise for Google's "operating system" aka browser to have process isolation, so that it is harder for one misbehaving instance to take down the rest.
Cooperative multitasking is so 1980s.