Firefox Lead Engineer Scolds KDE Project
trent42 writes "Firefox lead developer Ben Goodger has had harsh words on his blog for the KDE project, in light of its public tiff with Apple over the KHTML rendering engine. Goodger says 'Safari's renderer is vastly superior to the KHTML used by Konqueror,' and that the KDE developers should follow Apple's lead and focus more on the needs of users, instead of insisting on software perfection."
I have always found Konq to be the best alternative to FireFox on sites that are "IE-only". (including my companies intranet.)
As a general web-browser I find Konq to be slow and kludgy, but it has never dissappointed me on the stubborn sites.
Anybody found similar situations?
"The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
Safari only passed the Acid 2 Test because the developer David Hyatt spent time over two weeks to make it pass.
I'm not saying that this is a bad thing, in fact it's an excellent thing. But the fact is Safari, Mozilla and MSIE all failed the Acid 2 test when it was released. Using MSIE I see red. lol.
Now Safari passes. And no doubt each would fail several more tough tests. No one test can prove a superior rendering engine, unless it was 10 MB big and tested every [X]HTML/CSS1,2,3/JavaScript specification in various scenarios.
I'm looking foward to getting a Mac Mini and seing how good Safari is. It will also allow me to develop web pages against Safari for the first time.
Of course, Apple hasn't really gotten into any significant agreement with the KDE people either. People who have been paying attention may have noticed the KDE developers saying that although Apple hasn't cooperated with them as much as the might have liked, they are within their rights to do that.
For all that has been said about a feud between KDE and Apple, the real feud is between the KDE developers and the users and slashbots who think that any new features in Safari should be in KDE too, and if they aren't it's because the KDE developers are slow, lazy, whatever.
It's worth noting that (from what I've heard, at least) the other open source projects that apple has used code from haven't gotten back much more in the way of useful contributions than the KDE team has.
If I don't put anything here, will anyone recognize me anymore?
Wasn't that the purpose of the Acid 2 test? To give an example of common rendering problems so that browser developers could see what their browser was doing wrong? Now, I'm not saying that passing the Acid2 test means the rendering is perfect, but the challenge was placed out there, and the Safari developers took it up. It's exactly what Mozilla and MS and KDE should do, too.
Now, if after all that, we can come up with a new series of serious rendering errors not addressed by the Acid2 test, then let's make an Acid3 test, or whatever. But I don't see the grounds for complaint. It's like saying, "well the only reason Firefox renders HTML properly is because the Mozilla team spent time to make it render HTML properly." Well, good. That's what they should be doing.
"...quickly, cheaply, or correctly..."
This is not quite that software dilemma. Lifting something quoted in an earlier post:
"the KDE developers should follow Apple's lead and focus more on the needs of users, instead of insisting on software perfection."
This is about writing something that is correct to spec by the design document (i.e. the needs of the user--or maybe it is about getting the design document right?) vs. technically correct (i.e. perfect software--correct to the language spec, elegant, robust, no flaws, easily readable and maintainable, etc.)
Ideally, one's software would be both of these, and thus fit in the third category "correct".
I therefore propose that this old adage be modified thus: "On schedule, on budget, on spec, or few flaws--pick two"
Feel free to change those words to make it flow better. OT: in my limited experience, the scope of the project is always changing, so really none of those apply, therefore one can only really try to achieve #4, as few flaws as possible in what actually does get done.
More music, fewer hits
Also keep in mind that KHTML and Konqueror are two separate projects. Konqueror is probably the most usable browser of all time from a functionality standpoint. User interface wise, it could be better. but its no worse than FF or IE. Once gecko is properly ported as a kpart, konqueror will be extremely powerful. being able to switch between renders on the fly, saving sessions will be awesome. It may actually kill KHTML, although KDE devs firmly deny that =)
;)
This argument made more sense 3 years ago. Then KDE was laying the foundation for 3.x and focusing little on the UI (In my opinion). Now with Qt4 (seriously, read the new featureset) and KDE4 due out in a year, KDE/Konqueror/KHTML is going to get a major boost. In case anyone hasnt noticed, KDE and Gnome have been exploding in the last 2 years.
Now if I could only get a Mac clone theme for KDE
Are you intolerant of intolerant people?
And don't even think about their initial CSS stab, the web still suffers from that today.
Practically everybody has dropped Netscape 4 support by now.
Their "initial CSS stab" was a rushed job. They had decided that JSSSL, a stylesheet language based on Javascript, was a better choice than CSS. The W3C decided to adopt CSS rather than JSSSL, and so they had to back-pedal and add support for CSS quickly.
Interestingly enough, one of the big criticisms of JSSSL is that it violated the "Principle of Least Power"; that it provided the full power of a procedural scripting language when only a declarative language was really needed. Of course, once Microsoft had killed Netscape, they added in a bunch of proprietary expression extensions to their implementation of CSS, neatly violating the principle themselves, after nobody could stop them.
But it wasn't the "initial stab" that was such a problem for the web. If Netscape 4 had have been followed up by a timely Netscape 5 instead of the Mozilla people going off and writing a whole fucking platform instead of a browser, then nobody would have really cared, because the Netscape 4 users would have moved on to Netscape 5 fairly quickly, which, presumably would have had decent CSS support.
It's the same problem that we are seeing with Internet Explorer today. It's not the fact that Internet Explorer 6's CSS support is so crappy that is the problem. It 's the fact that once Microsoft killed Netscape, they didn't have to bother with improving Internet Explorer, so they disbanded the development teams and discontinued the software. This means that there was no timely Internet Explorer 7 with improved CSS to upgrade to, and everybody using Internet Explorer is stuck with a version that is four years out of date.
This is one of the reasons why an abusive monopoly is so bad. The moment Firefox started to make serious inroads into the browser market, Microsoft paid attention and reformed the Internet Explorer development team. There will now be an Internet Explorer 7.0 beta for Windows XP at the end of the summer. But in the meantime, and until people upgrade, us web developers will be stuck with "the new Netscape 4" - Internet Explorer 6.
Other way around, dude. Agile methodologies come from open source ideas, like release often, listening to customer (or other developers).
Remember what it was like before Agile? Companies and consultants would develop big blocks of software, check it in, QA it, and show the customer who'd get pissy because it didn't work the way they expected. Yes, Agile prevents that. But seeing what is happening, I'd say that KDE does is very Agile, unlike what Apple just did.
Oz
Actually KHTML has the biggest security hole of all. It does not follow current standards so there are time when you HAVE to use another browser. So in effect you have any security holes in KHTML and what other browsers you are forced to use.
I actually like the KDE browser better than Firefox. I love the built in spell check and it is fast.
But I can not use it with Google maps or the full version of gmail.
Has Safari introduced any huge security holes? The latest Firefox hole seemed less that huge to me. Yes it could be exploited by a white listed site but the only white listed site I have is Mozilla.org
It was also patched very quickly.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
There are other things marked as recommended (such as OpenGL and OGG Vorbis), and there are others marked as optional (such as LAME).
The problem isn't KDE is bloated, its the way the distros package it (huge monolithic packages that contain a load of different programs), though some distros like Gentoo now provide 1 package per app (which allows you to trim most packages off.
Also comparing KDE to XFCE makes no sense, XFCE is an extremely minimalistic desktop environment (its just a bit more than only a Window Manager). Only comparing KDE to GNOME would make any sense since both are complete desktop environments.
Along comes some big company that grabs your code, renames it, and puts it into their product publically. They submit some patches. Then, they basically stab you in the back.
Slow down cowboy, I think you are talking about SCO here, not Apple! Someone creating a new project based on your free code is a compliment, not a stab in the back. KDE developers should just take any portion of Apple's changes they find useful and let the rest stay in a separate project. If later Apple wants to take advantage of improvements in the new version of KHTML, they will then do the work of integrating their own dirty patches without any prodding.
In the meantime, the rest of us can hope for a GNUStep webcore-based browser and saying goodbye to bloated Linux desktop environments that try to look like Windows.
Both of those approaches have points of value, but they are both extremes. The Agile way seems to be more appropriate for contracts for time, whereas the "Fragile" approach is more applicable to fixed price contracts.
Agile works as long as the customer is willing to pay for the changes. Agile is good because the customer sees progress. Agile is bad because an indecisive customer can flip-flop on features and cause significant headaches.
Fragile works better where the customer needs a specific solution. They list their demands and your company realizes those demands for a price. Changes are discouraged, but that should be fine as long as the customer knows exactly what they want. The company's process ensures that what is contracted for is met. This is not good for research type projects, where the best solution is not known and needs some experimentation.
Note: One would have trouble applying the Agile paradigm to any kind of regulatory environment. Telecom, medical, and military/government contracts pretty much mandate the use of the "Fragile" system.
Remember, You are unique...just like everyone else.
But a big part of that is supplying what the users need. I think all three sides of this discussion could learn a thing or two by listening to the others.
You don't get involved in an open source project to write crappy code. You get involved in order to fix a problem that bugs you, show off your coding skills, or do a little good for the community. One of the benefits of coding for open source is that you really can take the time to get it right.
Businesses often fail to pursue excellence in coding because they believe that by taking shortcuts they save money. That's almost always wrong. One of the reasons that Netscape got beat by IE was (and I know I'll get beaten for saying this) that IE was written in a modular way that allowed it to be used more flexibly than Netscape. The IE code was better planned and executed. The developers who joined the Mozilla project took the original Netscape code and hammered on it for a long time to produce the successful browser that we now have. Even so, it was bloated and in need of a lot of trimming. So the Firefox project fixed those problems and now Netscape is based on the Firefox core rather than the original Mozilla core. (Sharing is a good thing.)
Apparently Apple believes that by taking short cuts they save money because the FOSS community will come in behind their engineers and clean up the code for them the way they did for Netscape. Why shouldn't Apple take advantage of the same mechanism?
What happens too often in corporations and is apparently happening in this part of Apple, is that they have forgotten that they are dealing with people. The FOSS crowd seems to have more than it's fair share of idealists, and they dont' like being taken advantage of. Hopefully Apple has figured this out by now and is working on a plan to mend fences. Otherwise it might be very hard for them to get help from the community in the future. It would be a shame for OS/X to fail because of foolish management mistakes on the Safari side.
Open Source can learn a lot from what Appled did, though, even if we don't like how it turned out. Appled focused on fixing things that were causing problems for their customers. They also focused on becoming standards compliant. A lot of FOSS projects come up short in that area. What gets attention is whatever is cool to code or bugging a particular developer. Not enough of the FOSS projects have any real central focus.
Listen, learn, and move on. The best thing that could come out of this whole mess is a good discussion on how FOSS and regular software companies can work together to mutual benefit. Perhaps we need some kind of template agreement that makes responsibilities clear so that the companies involved don't make bad assumptions like the ones Apple seems to have made.
-All that is gold does not glitter - Tolkien
www.ra