Zazzle Shop

Screen printing

Friday, February 29, 2008

Developer finds API's to make Firefox work better on MAC OSX

In an effort to make Firefox 3 faster on a Mac, Mozilla developer Vladimir Vukićević stumbled across several private, undocumented APIs used by competitor Safari. The good news is that Vukićević was able to fix the Firefox 3 bug he was after using a publicly documented method, but the existence of the hidden APIs have already led many to conclude the Apple is unfairly crippling non-Apple software.

To be clear, that’s not what Vukićević thinks, but with Microsoft having long been accused of doing the same, it’s not surprising that the conspiracy claim is making the rounds on Slashdot and elsewhere.

However, perhaps the best explanation for the private APIs used in WebKit and Safari, comes from Safari developer David Hyatt who commented on Vukićević’s post, saying, “many of the private methods that WebKit uses are private for a reason. Either they expose internal structures that can’t be depended on, or they are part of something inside a framework that may not be fully formed.”

In other words, Apple takes advantage of its latest API hooks before it recommends that outside applications do the same. The flip side of that is that Apple is limiting access to potentially better tools, in favor of more stable tools. Indeed, were Apple to take the opposite position, developers would complain that their applications were break with every OS update.

Slashdot conspiracy theorists aside, Vukićević has point when he writes that developers have much “more reason to complain when they use something undocumented that changes in the future, vs. using something that’s explicitly documented to be subject to change.”

And to that end David Hyatt claims that the Safari/WebKit team is working on documenting the other, mysterious APIs as best it can.

As for Firefox 3’s newfound speed boost, look for that to show up in the fourth and final beta.

0 comments: