I still remember watching the Keynote and expecting Gecko and then they had KHTML. I'd played around with Konqueror before, on various Linux distributions, and wasn't overwhelmed by its standards support (or quirks mode support, after all this was 2003). But Safari really enhanced it, and was so damn fast.
As an early user of Chimera/Camino, Phoenix/Firefox and Safari, the way I recall it was that KHTML was too good at standards, hence causing practical problems with actual web content which was built for IE. (A big part of Mozilla's energy at that time was in evangelizing websites to actually use standards and not block them for no reason, but they'd also done a lot of reverse engineering)
I also vaguely remember David Hyatt saying that they (edit: and by they I mean the Safari team that he'd moved from Mozilla to join) had taken some component from Gecko though I can't remember the details and his old Surfin Safari blog at http://weblogs.mozillazine.org/hyatt seems to have been superceded by the Webkit team's Surfin' Safari blog and it now just gives a broken redirect.
I remember using Konqueror and I always liked how fast it was. Indeed, many websites had problems when rendered with KHTML, but all that was needed was some polish.
+1 There's still far too many people in the tech community who seem to think that WebKit was created from scratch by Apple who just felt like being generous by making it Open Source.
And the end of KHTML. Apple changed WebKit enough that the patches couldn't be merged upstream since kdelibs has to maintain ABI compatibility across minor releases, so it gradually became more unmaintained and less usable. The KDE project couldn't kill it off since other applications relied on it being there, but they couldn't find enough developers to actually keep it working either.
After Android changed from being Blackberry-like to being iPhone-like, Eric Schmidt stopped attending Apple board meetings where the iPhone was discussed due to conflicts of interest.
I'm sure that this is where Steve Jobs' "Android is stolen" idea comes from.
I really miss the old Google. The purity of their vision and the frequent, crazy projects that came out of Google Labs. At one point it seemed like every good idea was coming from Google.
Ever since Larry Page's chat with Steve they really haven't been the same.
"Also, we'll be sending you another email soon which details our changes and additions to KHTML and KJS. I hope the detailed list in that email will help you understand what we've done a little better."
I am surprised at how heavily the number of lines of code factored into the decision to choose KHTML. It makes sense that a smaller codebase is much easier to jump into, and usually means cleaner architecture, but I didn't expect to see it addressed as such an important factor.
At the time the minimum RAM requirement for Mac OS X was only 128 MB. WebKit was to be a system component, so it would be active in memory much of the time. Under these circumstances every MB of code counts, so it's easy to see why the leaner codebase of KHTML was found appealing.
However, I think there was also the psychological factor of Mozilla's reputation at the time as an open-source quagmire. The Netscape 4 code they had inherited was deemed unmaintainable, and so Mozilla started over with a rewrite that many thought was too complex and tried to reinvent everything under the sun (e.g. it contained a version of Microsoft's COM). Mozilla turned out fine eventually, but back in 2002 this wasn't quite so obvious.
Not exactly. There's a reason WebKit saw wild adoption by all sorts of projects, while Gecko adoption stagnated. The Mozilla codebase is still too complicated for most people.
Arguably, though, even if Gecko's code base were taken down to be smaller and easier to use than WebKit (and I have no idea how it actually compares today), it would be at a tremendous disadvantage because so many projects have incorporated WebKit.
If I want to use WebKit in a new project today, I can find a ton of people online who have done so in the past and use their experience to get me through it. If I want to use Gecko in a new project, I will have a considerably smaller amount of outside experience to lean on.
just in case you're wondering why you were downvoted (I can't do that myself) -- size of code has almost 0 relation with CPU time. A small algorithm could be extremely computationally intensive
They didn't release anything willingly. KHTML was LGPL so they were forced by the license to release it as open source. However the LGPL allows building apps on top of libs without releasing them as open source though and that's what apple did, they did not release Safari as open source, only webkit. So everything they could release as proprietary they did, they only open sourced the parts they were forced to.
To be fair, they later rewrote KJS as JavaScriptCore and released it as open source using the BSD license, and also WebCore and more. See http://apple.com/opensource/ for more. By that time, many companies including Microsoft realized that releasing and contributing to open source was not only beneficial but also unavoidable.
Well this was also after a year of working on a fork in seclusion. The project by then had diverged quite a bit, and had quite a differing philosophy from the original.
Back in those days, Apple was all about open-source - I still have an OSX 10.2 (Jaguar) box somewhere where the main headline is about Apple and open-source.
While there might be less shouting about open source contributions nowadays, arguably the contributions themselves are much more useful.
Certainly WebKit has been widely adopted outside Apple, clang/llvm is slowly, but surely gaining converts, and libdispatch is IMHO deserving of wider interest, even though it may not be widely adopted on non-Apple platforms.
I think they were just trying to piggy-back on BSD reputation as stable and mature system, so they played the buddy-buddy card. Once OS X settled in its place, this was no longer needed, so the open source love faded.
Actually open source has been a huge part of Apple ever since they acquired NeXT (or was it the other way around). The majority of OSX/iOS is open source and they have contributed in big ways to a number of projects e.g. LLVM, OpenCL, GCD, LaunchD, ZeroConf.
That said, it is rather simple to consider : as a general idea, the UI layer (Cocoa for OS X, CocoaTouch for iOS) and a few other things are closed. The rest is pretty open, as darwin in general is OSS.