Next OmniWeb to be based on Safari Engine?
An anonymous reader writes "A MacFixIt article includes a quote from the Omni Group's CEO Ken Case: 'The wonderful news for OmniWeb is that Apple has based it on a fast, compatible (and small!) rendering engine which is tuned for Mac OS X, and which they are making available to the entire Mac OS X development community! [...] This means that we may be able to reach our compatibility and speed goals for OmniWeb much more quickly than when we were working alone, and then return our focus to doing what we do best: providing a rich browsing experience. Thank you, Apple!'"
The one response you'd never expect from a commercial company that was just (superficially) trumped by a platform vendor: Gratitude. Kudos to Mr. Case for recognizing the long term potential and not griping about 'being cut off at the knees' or other shortsighted objections.
An object at rest cannot be stopped!
Nearly everything you said is wrong.
1. Yes, Safari is free. No, it is not open source. WebCore (which is KHTML plus some other stuff) and JavaScriptCore (which is KJS, more or less) are open source, and you can download them from here. WebCore is basically a software component, not an application.
2. OmniGroup is excited because Apple has given the OS X developer community a solid, fast, and very (though not yet perfectly) compliant HTML component. This will allow OmniGroup to write OmniWeb 5 (or whatever) around WebCore and JavaScriptCore-- which takes care of turning HTML into stuff on the screen and handling the JavaScript runtime and whatnot-- so they can spend all of their time and effort on the features. This is basically the story of Mozilla, Chimera, and Phoenix, and others. One rendering component, lots of apps built around it to suit different needs.
3. OmniWeb has some cool features that frankly don't belong in Safari: built-in regular-expression URL filtering, for just one example. Some kind of MDI ("tabbed") interface could possibly be another.
4. OmniWeb has never "force fed you banner ads." It's just a browser. You can use it for free, but OmniGroup prefers that you pay for it. No big deal.
Are we a little more clear now, at least?
I write in my journal
The great thing about WebCore is that it's entirely isolated from the browser itself.
Most of the bugs users have encountered in Safari have been in WebCore-- stuff not rendering properly. As Apple continues to improve WebCore, with community help, the reliability and performance of all WebCore-based browsers will climb. All you have to do to take advantage of a new version of WebCore is to link in the new framework when it becomes available. Then you're done.
So basically there's no reason for OmniGroup, or anybody else, to wait.
I write in my journal
Actually, the open source status (or more accurately, not) of the internet explorer code is rather irrelevant to the development of windows browsers...
The rendering engine in IE is a component - you can embed it into other applications... theoretically at least, you can build your own rich browsing experience around it as you see fit (as evidenced by the MSN browser vs. IE)... exactly what hooks are available to you, and therefore how rich an experience you can create, I am not familiar with...
The 'big issue' with IE source is not one of how you can re-use the layout engine, but one of not being able to fix any bugs that exist, or to extend it's basic functionality (ie. more complete implementation of standards).
For those without access to a Mac, here's the error message.
I write in my journal
All you have to do to take advantage of a new version of WebCore is to link in the new framework when it becomes available.
I feel kinda dirty replying to my own post like this, but I wanted to offer more details on this to anybody who's interested. I've just posted a journal article describing how to use custom-built JavaScriptCore and WebCore frameworks with Safari. In addition to being a really cool way to get in there and start playing with the new frameworks, this illustrates just how easy it's going to be for OmniGroup to build their browser.
At some point in the future, Apple may even choose to ship WebCore.framework and JavaScriptCore.framework as part of the core OS, so anybody can use them to render HTML and handle JavaScript in their Cocoa applications. (WebCore presents an Objective C interface, so it's callable from Cocoa, but not from Carbon. I think.) Of course, thanks to the way packages and frameworks work on OS X, anybody who wants to build their own version of WebCore or JavaScriptCore and ship it with their application is free do to so.
This is really exciting, y'all. This is the way free software is supposed to work.
I write in my journal
If you notice, all of the dialog box buttons in MacOS have verbs (action words) on them. Buttons are never specifically answers to questions, but are rather the action which will be taken when you click on them. For example, a traditional dialog box would say:
The proper MacOS dialog box would be something like this:
The traditional dialog box does not actually tell you what is going on when you press the button and it is easily confused with other dialog boxes that may be the same size, look the same, and have the same answers. For example, the following two dialogs could be confused and someone could accidently hit the wrong button thinking it was the dialog they expected:
A better set of buttons would be like this:
There is very little confusion there as to what action will be taken. Hit the [Feed] button and the fish gets fed, hit the [Eat] button and the fish gets eaten.
Sapere aude!
"OmniGroup is excited because Apple has given the OS X developer community a solid, fast, and very (though not yet perfectly) compliant HTML component."
Well, uh, KHTML is already under the GPL. Shouldn't these guys be thanking the KDE Project for writing the code in the first place?
In fact, since Apple based WebCore/JavaScriptCore off GPL code, they must make the code public. I'm not so sure that they would have released the code back to the community if it was under a BSD-style license.
Don't get me wrong - I think it's great when corporations enhance existing FOSS projects. I just think that the gratitude is misplaced in this instance.
Well, uh, KHTML is already under the GPL. Shouldn't these guys be thanking the KDE Project for writing the code in the first place?
Sure, appreciation all around. But from OmniGroup's perspective, what Apple did was more significant. (Not more important, not better, just literally more significant.) Apple removed the dependency on Qt and created an Objective C API for KHTML. That was a ton of work, not to be underestimated. Without it, KHTML wouldn't have been of any use to any Mac developer.
In fact, since Apple based WebCore/JavaScriptCore off GPL code...
Let's be precise. KHTML and KJS (and by extension WebCore and JavaScriptCore) are LGPL, not GPL. This is an important distinction. If either of those components had been GPL only, Apple would not have been able to use them.
I write in my journal
Depends.
/System/Library/Frameworks, you'll find stuff like AppKit.framework, which every application on your computer (Cocoa, anyway) links to at run time. If Apple puts WebCore and JavaScriptCore (and maybe WebKit) in the operating system-- in other words, puts them in /System/Library/Frameworks in a future version of OS X-- then programs like OmniWeb will be able to link to them at run time. Future improvements to those frameworks will apply to those programs automatically.
;-)
WebCore.framework and JavaScriptCore.framework work like DSO's or DLL's, if that means anything to you. The difference is that a framework can be bundled inside an application or available externally. If you look in
But as of right now, WebCore and the others aren't part of the OS. They're bundled right inside Safari. If Apple decides to leave them out of the OS, then OmniGroup will still be able to use them, but they'll have to distribute the frameworks inside of the OmniWeb package. In that case, updates to the frameworks would have to go from Apple to OmniGroup to the user.
I imagine Apple is going to make WebCore et al. part of the operating system real soon. It's just too darned useful; even apps like Project Builder need to be able to parse HTML to display documentation and whatnot. The million-dollar question is whether they're going to do the same thing with WebKit. If so, expect to see about a hundred special-purpose Cocoa web browsers for OS X in the first week after release. It'll be so easy to write your own web browser, what with PB and IB and all, that you'll hardly be able to avoid it!
I write in my journal
I'm not so sure that they would have released the code back to the community if it was under a BSD-style license.
Well, that's a silly concern since they realeased their commercial operating system even though it wasn't under the BSD license- it was owned by them free and clear.
How soon people forget that Apple is the first, and so far, only company to open source its commercial operating system.
And not only does it help scores of open source projects around the world (as well as make use of them- after all that is the POINT of open source) but it does work to make it so that people who want to can run completely Open software on their platform more easily without paying apple any money,-- by supporting X11, and other stuff they don't ahve to that goes against their bread and butter OS sales.
Gee, I wonder why. They sure are GREEDY those bastards!
And yet all you Open source self-proclaimed advocates still hate them. could it be that you really don't care bout open source so much as you love linux? (Not bashing you, Phexro, just the broader group that irrationally hates apple becuase it "doesnt support open source.")
Yeah, and you guys panned the ipod too: http://apple.slashdot.org/article.pl?sid=01/10/23