Ballmer "Interested" In Open Source Browser Engine
Da Massive writes "'Why is IE still relevant and why is it worth spending money on rendering engines when there are open source ones available that can respond to changes in Web standards faster?,' asked a young developer to Microsoft CEO Steve Ballmer in Sydney yesterday. 'That's cheeky, but a good question, but cheeky,' Ballmer said. Then came the startling revelation that Microsoft may also adopt an open source browser engine. 'Open source is interesting,' he said. 'Apple has embraced Webkit and we may look at that, but we will continue to build extensions for IE 8.'"
One reason for using WebKit over Gecko would be the licensing...I know that for lots of corporations, BSD-licensing is much favored over anything related to GPL...(Gecko is MPL)
Parts of WebKit are under the LGPL and parts are under a BSD-style license (I don't know which parts and I can't be bothered picking through the source code to find out), Gecko is all MPL/GPL/LGPL tri-licensed. You're going to have to adhere to the conditions of the LGPL if you actually want to use all of WebKit, so what's the difference? Gecko could be said to be better as you get to choose between a library-level or file-level copyleft, since you only have to adhere to one of the licenses.
Choosing WebKit over Gecko would probably be more about speed (WebKit is definitely faster), code-cleanliness (I hear Apple chose KHTML over Gecko to base WebKit on because of this), and simple bad feelings. A lot of people at Mozilla still don't like Microsoft, and the feeling may well be mutual among the browser developers on both sides. Apple probably just seem a more palatable choice to be working with for Microsoft.
Webkit is LGPL. As long as they have the engine separated into the same sort of controls they have today, it should meet the LGPL license just fine. Perhaps with a bit of wrapper code released as LGPL.
Javascript + Nintendo DSi = DSiCade
So what did Microsoft do to Apple that was that terrible?
Got two words for you there: "look" and "feel."
MS was an early developer for Macs and had some of the first prototype machines. While assuring Apple that they weren't, they were using their knowledge of the thing that made a Mac a Mac, the Toolbox, to build a GUI on top of DOS. This GUI was released later as Windows, and although apologists try to play it off as based on Xerox's interface (whose designers were at Apple by then anyway), there is much evidence that they ripped Apple off. Apple put a ton of R&D into the interface, it was not much like Xerox's at all -- it was very much an "invented here" mindset as opposed MS's "NIH."
Thus was born the Look and Feel suit; Apple sued Microsoft for ripping off their interface, but in the meantime, Apple's then-CEO, John Sculley, had given Gates a badly-worded agreement that was construed by the judge to be a license to produce Windows using Apple's "intellectual property." Then again, part of the settlement was that MS couldn't use overlapping windows; that's why they were tiled until version 3.
All this actually didn't matter much; Apple made the bulk of its revenues on the Apple II line until 1987 or so, and Microsoft could likely have parlayed Apple's BASIC license into permission to use Apple's interface R&D anyway ("applesoft" BASIC was developed by MS, Woz did the superior "integer" BASIC but never upgraded it to handle floating-point math).
Here's what I consider the main point: Apple saw the Xerox work, and took some of the key people who created it, but they totally improved it. Quickdraw did real regions, roundrects, and other stuff the Smalltalk interface didn't. Microsoft may have seen the Xerox work, definitely saw the Apple stuff, and then put together a half-assed, hackneyed piece of shit.
This is what Microsoft has done ever since. Apple runs Microsoft's interface R&D, in a way. I think that's the real reason MS bailed them out in 1997. Bill Gates famously said, "I want Mac on a PC! I want Mac on a PC!" They always get pretty close, but somehow stay so far.
Linux seems to be much closer, using technology (X) that really was developed independently on a parallel track; thus they have their own thing that isn't some wanna be copy and stands on its own.
Er. More like...
KDE's Webkit which trails behind Apple's, but is "stable" in that it's not a moving target, it's simply not as up to date.
Apple's Webkit which trails its internal builds by anywhere from months to years.
Google's Webkit which could be anywhere from two months newer to two months older than Apple's, and demonstrates that no such proprietary hacking is necessary to get ActiveX to work.
MS's Webkit which would probably be a direct copy of Google's, with a hack to require all sorts of extraneous metadata to turn it on. MS won't do any other hacking because they believe it is not possible to do.
> If they put a GPL engine into IE, they would have to GPL IE, and that isn't happening.
Both Gecko and Webkit rendering engines are licensed under LGPL. I think you seriously need to find out what that means, before trying to FUD the place up like that.
Basically, IE could link to the LGPL rendering engine, and remain as a proprietary application. The only bit that needs to be re-distributed as open source is the original open source code ... either the Gecko or Webkit rendering engines part.
GPL prevents only those who want to prevent others.
"It is surprising how different the versions of webkit are."
This is untrue, and mostly a product of misunderstanding but partly a product of FUD as well. More on this below...
"the current release of Chrome is almost 4 times faster than the current release of Safari"
This really has almost nothing to do with Webkit, and does not demonstrate a difference in the rendering engines at all. Ultimately what we're looking at here is a comparison of JavaScriptCore (Safari's current* ECMAScript interpreter)â"released 19 June 2008, with only minor changes from the major version from more than a year earlierâ"and V8 (Google's ECMAScript-bytecode translator engine)â"released 5 September 2008 against a codebase that was nearly brand new; while it's true that JSC is a [legacy] part of Webkit, V8 is not a part of Webkit at all. Comparing the two isn't really meaningful.
Moreover, Chrome is not released, it's a very, very early, unpolished beta.
A more apt comparison would be...
"It would be interesting to see if the Safari nightly builds have closed this gap." ... the nightly builds, which use a similar engine (SFX is somewhat different in its approach, but ultimately in the same class as V8). And in fact, performance is roughly the same. It's not like this information isn't widely available, either.
I can't speak to the particular benchmark in question or whether it even has merit as a general browser benchmark (note, Google's benchmark has little merit here, as it strictly tests JS language speed, rather than DOM performance [which is extremely important for nearly all browser performance experiences]), and I don't have an environment which would be suited to finding out for myself, but I encourage you if you're that curious to try a nightly build on the test yourself.
With that said, there are existing browser benchmarks (eg Dromaeo 2) that tell a story much more interesting story.
John Resig on JS engine performance
This shows JSC (not SF or SFX) beating V8 on a bunch of DOM tests
But I want to reiterate, this is hardly a good example of differences in Webkit releases. These are differences in browser releases and over a very wide stretch of time (in the current JS engine war, especially).
* By "current", I mean "released"; it is current in that sense, but actually two generations old in the Webkit project. The Webkit team has since produced SquirrelFish and SquirrelFish Extreme, the latter being much closer to (and often faster than) Chrome's performance on every task except (if I recall correctly) recursion.
Acid is a lot of freaky corner cases that will never actually occur in the real world.
You're full of shit and have no clue what you're talking about.