Mozilla Project Hurt by Apple's Decision to use KH
Anonymous Coward writes "I Read this article from ZDNet claiming how some of the Mozilla developers were hurt by Apple's decision to use KHTML over Gecko. I can see both their points. Mozilla was made for cross-platform compatibility, and this probably adds to the bloat, however that's not what they were looking for. They wanted small and fast."
Apple's R&D people are some of the best and their research showed which path was 'best' based on some checklist spawned from some meetings somewhere in the depths of Apple. Would we have a similar story if the KHTML kids were hurt because Apple went the other way? No. Their project is seen as less-significant. Do they have their own icon on /.? Similarly, no. For the same reason.
Send your friends messages of love at fuck-you.org
I mean, if the Apple folks were able to port KHTML to OpenStep^WMac OS X from that whole Linux-QT-KDE mess, it can't be that bad, can it?
Let's call it like it is -- Gecko, while a noble effort, is really a failure. It was YEARS late, and completely missed its goal (a lightweight, fast. cross-platform rendering engine). One bit of that (cross-platform) does not a success make.
I have to say, I'm absolutely impressed with Apple's Safari. It's FAST as all getout, and it's the first browser that really makes me think twice about having paid for OmniWeb. I've been using Safari daily since release and while, yes, it has some bugs, it's still better than Chimera, OW, & Mozilla combined. IE also has its rendering issues, and I detest lots of other things about it.
Safari's what a browser should be -- small, lightweight, and out of my face. The interface is slim & sleek, and, like the rest of Apple's software, lets me focus on the CONTENT rather than the delivery.
I really think that's why OSX is so wonderful -- it just stays out of my way and lets me do what I gotta do. And I have to admit, running a DVD authoring program alongside several terminal windows on a Mac (!) is still impressive to me.
Apple didn't buy NeXT. NeXT swallowed Apple whole.'
--NBVB
"Translated through a de-weaselizer, (Melton's e-mail) says: 'Even though some of us used to work on Mozilla, we have to admit that the Mozilla code is a gigantic, bloated mess, not to mention slow, and with an internal API so flamboyantly baroque that frankly we can't even comprehend where to begin,'" Zawinski wrote.
Well, no offense, but is Melton wrong?
I mean, download the source for both and look at the difference. The sheer volume of Mozilla is overwhelming even for the experienced programmers.
There has been an enormous effort gone into Mozilla and it shows, but I think it still has a way to go.
And I love this quote:
"Gecko is already embedded and distributed in real-world applications from Red Hat, IBM, OEone, Netscape and CompuServe, and we look forward to the upcoming releases of Gecko-based products that are currently in development."
Yes, and of course KHTML is not used in the "real" world.
Why are we using xpcom considering the huge bloat/threading issues on non-win32?
Why do the signatures on our api make almost no sense to outsiders?
Why do we compare our performance almost exclusively to IE?
If Apple wont use our code because it's too big, do we have any real chance of being used on small devices?
Why are we still using xul now that we ifdef out platform-specific ui code?
I'm sure there are more questions that someone more knowledgable than I am can come up with, but these are questions that haven't been taken very seriously up to now, because there has not been a high-profile alternative to gecko.
I've been using mozilla/phoenix for several years (I've even submitted a few patches), and I think it's an absolutely amazing peice of software, but it *is* huge and hard to understand. It is hard to recognize the size and complexity for what it is without a highly visible comparison like khtml.
There aint no pancake so thin it doesn't have two sides.
Exactly. Everybody here seems to be using the excuse that mozilla is cross-platform, and can expect to be bloated. Well khtml works across unix/x, linux/framebuffer, and now osx as well. it's based on qt, which works on windows just fine. The Safari developers even noted how easy it was to port (all they basically did was sit it on top of a small framework that was a substitute for the kde-specific bits).
The QT toolkit is one of the reasons this can be done in an efficient, easily understandable way. It's a great toolkit, and it's a shame the mozilla project decided to ignore it in favour of gtk/xul/javascript/etc.
I wouldn't go that far. It's a very useful, very standards-compliant, cross-platform rendering engine. The fact that somewhere along the line the project fell prey to creeping featuritis doesn't change this.
On the other hand, this usenet post sums up how I feel about the whole thing.
OK! Gecko supports more standards! Gecko is fast (enough)! Gecko is portable!
So... make a Gecko based webcore replacement. Apple has given us a slick framework to implement in order to drive Safari's backend. We can already patch and update our KHTML based webcore... if Gecko would be better, use it. You still get the slick Apple GUI. Right?
I think (WARNING: dumbass user demanding major architectural changes) Chimera should make their Gecko variety use the WebCore framework design, so that their backend would be pluggable with Apple's. Then we could end this argument. There'd be no argument.
There are no trails. There are no trees out here.
Alternative browser development came to a standstill when netscape released the code.
Years from now, when documentaries are written and case studies developed I think we will see many eyes looking at that moment. It didn't come to a standstill, it took off very quickly and then something wierd happened. I remember it well...
Netscape opens the code, and in the Gtk v KDE flame wars two teams take to porting the code to their framework. the problem? It was built off of Motif, a non-free gui toolkit.
With the swiftness of the Open Source community, all of a sudden we had three "almost there" choices for a completely free Netscape. Seemingly just as quickly all were abandoned by the freedom offered by this software movement.
QT-Mozilla and the subsequent KMozilla (if I remember right) was finished in a month by porting it to the QT toolkit of the day. Not to be outdone GTK-Mozilla announced that whatever they could do, we could do better and a sole programmer began the effort, with a few joining later.
Back at the ranch, JWZ felt that it would have be far easier to pound out the last few details in "Lesstif" and link off of that. The Lesstif people were very close to binary compatibility with version 1 of Motif.
Then for all the work going on it then it seems to have run out of steam. As far as I know (someone please correct me if I'm wrong), lesstif still can't dynamically link to netscape, GTK was abandoned, and the KDE people abandoned Netscape code entirely.
So why it those three easiest paths were abandoned so quickly is the stuff that PBS is made of, and I'll probably never know until someone takes it up.
I normally agree with what you post, but I'm going to have to disagree here.
I've attempted to get involved in the Mozilla project multiple times, and I still don't understand how pretty much anything in their browser works.
I've been interested in KHTML for a week, and I have a very solid understanding of the renderer and the basic flow of information. I already see how the "final 20%" will be implemented without becoming hackish like Gecko feels.
I think KHTML has Gecko beat for engineering simplicity by about a mile, I do hope Gecko continues to improve, but it's no where near what KHTML is like now. I think one of the Mozilla engineers said it best (this is misquoted since google can't find the quote I'm looking for) "There are a handful of people who understand Gecko in the world", KHTML on the other hand just has that "clean code" feel to it, all the way through.
I live in a giant bucket.