The claim here appears to be that since Apple ships Windows apps that don't use that platform to its fullest, Jobs cannot claim that least-common-denominator middleware is unhealthy for a platform.
That makes no sense. I could see how it would be hypocrisy if Microsoft forbade middleware and Apple complained about whether or not it was right for Microsoft to do so.
But it is not hypocrisy to enforce different rules for your own platform product than those for a competitors. There are no moral claims involved here.
There exists an ideology of "open is always better than closed": open source is better than closed source, open formats are better than proprietary formats, etc. When Jobs talks about WebKit/SquirrelFish being open source implementations of open standards, he is, intentionally or not, appealing to that audience.
But obviously, Steve doesn't believe that open is always better than closed: for example, in the iPhone OS, in the AppStore, and in the H.264 video formats, he's relying on closed and proprietary systems for practical benefit. To those, like RMS, who want the open/closed heuristic used globally and without considering any other variables, this is hypocritical - you say you support openness in one area, but not another. To the people that care about end-user experience more than open/closed systems, such hypocrisy is just common sense.
Personally, I think we should strive for cooperation between the "pure morality" point of view of Stallman, and from the "practical morality" point of view of industry. I've been both a paying member of the FSF and a big fan of the Apple's ecosystem of products since high school: the two are free to pursue their own goals independently, and work together to the fullest extent that shareholder interests align with open-source morality.
A great example such a beautifully aligned interest is Google's rumored opening of the VP8 codec - it will both save Google oodles of bandwidth and storage in the long-run, and be great step for the open ecosystem. It's also important to remember, however, that the reason On2 was able to get investors to pay for the development of VP8 is because of the IP protections they received. Without those, Google would have had to fund/organize/oversee such development in-house instead of letting a free market of startups and investors do a lot of the managing/evaluating/choosing for them.
Edit: It has nothing to do with morality. It's my own vested self interest that makes me wary of Apple. To bring up morality is a way of minimizing my views.
In the medium to long term, end-user quality is negatively affected by adopting close standards.
hy·poc·ri·sy [hi-pok-ruh-see] –noun,plural-sies.
1. a pretense of having a virtuous character, moral or religious beliefs or principles, etc., that one does not really possess.
2. a pretense of having some desirable or publicly approved attitude.
3. an act or instance of hypocrisy.
I don't see how the author misuses the word "hypocrisy" at all. It appears to me that his case relates to #2 above - Jobs pretends to hold an attitude promoting open standards etc. when that is not the real motivation behind his actions at all.
What specific parts do you think suggest feigned virtue? The parts where he claims to want a better environment for developers? That's the only place where I think you might have a toehold.
It must sort of suck to be Apple community relations right now. If you act according to your business plan, you get railed at for being imperious and arbitrary. If you then explain that business plan and your rationale, people immediately see it's not all nobility and grace and get pissed. The brand perception and loyalty that Apple has spent so much time building can certainly be a double-edged sword.
Jobs said all standards pertaining to the web should be open, not all software. He admits that they have proprietary systems for native apps.
Apple believes that browsing the web should not require a proprietary plugin. I don't see any hypocrisy in that.
"You know, when I was a young man, hypocrisy was deemed the worst of vices," Finkle-McGraw said. "It was all because of moral relativism. You see, in that sort of a climate, you are not allowed to criticise others--after all, if there is no absolute right and wrong, then what grounds is there for criticism?"
...
"Now, this led to a good deal of general frustration, for people are naturally censorious and love nothing better than to criticise others' shortcomings. And so it was that they seized on hypocrisy and elevated it from a ubiquitous peccadillo into the monarch of all vices. For, you see, even if there is no right and wrong, you can find grounds to criticise another person by contrasting what he has espoused with what he has actually done. In this case, you are not making any judgment whatsoever as to the correctness of his views or the morality of his behaviour--you are merely pointing out that he has said one thing and done another. Virtually all political discourse in the days of my youth was devoted to the ferreting out of hypocrisy.
...
"We take a somewhat different view of hypocrisy," Finkle-McGraw continued. "In the late-twentieth-century Weltanschauung, a hypocrite was someone who espoused high moral views as part of a planned campaign of deception--he never held these beliefs sincerely and routinely violated them in privacy. Of course, most hypocrites are not like that. Most of the time it's a spirit-is-willing, flesh-is-weak sort of thing."
"That we occasionally violate our own stated moral code," Major Napier said, working it through, "does not imply that we are insincere in espousing that code." "Of course not," Finkle-McGraw said. "It's perfectly obvious, really. No one ever said that it was easy to hew to a strict code of conduct. Really, the difficulties involved--the missteps we make along the way--are what make it interesting. The internal, and eternal, struggle, between our base impulses and the rigorous demands of our own moral system is quintessentially human. It is how we conduct ourselves in that struggle that determines how we may in time be judged by a higher power." All three men were quiet for a few moments, chewing mouthfuls of beer or smoke, pondering the matter.
(http://fishbowl.pastiche.org/2006/03/21/hypocrisy_is_the_gre...)
I see a normative claim:
Software systems should do X, Y, and Z
Software systems that do not meet the norm are penalized or disallowed by Apple's platform(s). However, Apple's own software does not meet this norm either, even on Apple's own platform.It sure seems like hypocrisy to me, even if it is defensible.
"...we strongly believe that all standards pertaining to the web should be open."
Now, proceed from there.I would say it's hypocritical to hold those of a class including yourself to standards which you do not meet. That is, it's not hypocritical (however blameworthy it may or may not be) to say, "Everyone but me should do X, while I should do Y," but it is to say "Everyone should do X" while actually doing Y.
You can see Jobs trying to avoid hypocrisy in the original post by asserting that web standards should be open, while other software systems have no such obligation.
I mean Apple really does care about the user experience, more so than any other company that I can think of. And yet even they have not managed to put together a good user experience for their cross-platform app. On the Mac it isn't hooked up to all of the Cocoa hotness, and on the PC, well, the less said, the better.
It is Apple's firsthand experience with the problems you can have during cross-platform development that is informing their decision to strongly discourage such development on the iPhone platform.
And Mac apps. iTunes and Final Cut Pro are still 32-bit Carbon, with no indication of that changing anytime soon.
So I want to comment in favor of stressing the above comments, hard. Considering a substantial discussion of the semantics of the word "hypocrisy" followed, with some people taking one side, and some the other, let's make a correction to the original presumption so that even those who didn't believe it to be hypocritical can come into agreement.
"The claim here appears to be that since Apple ships Windows apps that don't use that platform, Jobs cannot claim that least-common-denominator middleware is unhealthy for a platform." is false. The claim is that since Apple ships major OS X apps that don't use Cocoa, it's hypocrisy to attack Adobe on those grounds.
Edit: Actually Jobs's words chide Adobe as "the last major third party developer to fully adopt Mac OS X", so the debate might be a little bit more than moot. I still think it's entirely fair, though, to ask of Apple in the same vein, "Hey, why so late for you guys to fully adopt Mac OS X?"
Many think the web has proven that cross-platform apps are fine. It hasn't — the web is its own platform.
That isn't true to the best of my knowledge, and a check of a handful of good dictionaries (online and paper) confirms this.
Here's one link, for example: http://dictionaries.cambridge.org/define.asp?key=hypocrisy*1...
Although the charge of hypocrisy often comes up in moral contexts, that isn't a requirement.
Therefore in order for a hypocrisy to be a useful word I think it needs a more rigorous connotation. I'm not saying the moral angle is the correct one, but I certainly think that Jobs' letter is far from any reasonably useful definition hypocrisy.
Indeed, "tu quoque" fail abounds.
"feigning to be what one is not or to believe what one does not; especially : the false assumption of an appearance of virtue or religion"
I'd say Apple's lambasting of Adobe for failing to provide open & reliable cross-platform software fits the bill perfectly. Steve's critique of Flash can be both accurate and hypocritical at the same time.
It's not enough, for example, for me to wax eloquent about how much I love the color green while I'm wearing a purple shirt. It is possible, after all, to love both open models and closed models in different contexts.
It's even worst if you are supposed to be leading by example, as cocoa is apple's own design.
† One that Jobs did not make, and that I do not agree with — I think any platform can make its own rules, and game consoles have set the precedent for the more closed model.
There were many good points in the article, and that's only one of them. Thoughts on the others, particularly the 'openness' of H.264 or lack thereof?
I used to think Apple did this on purpose to spite windows users, but then I got a mac and discovered iTunes sucks on OSX too.
Damn you beach ball!
That being said, the last time I used iTunes on Windows it was about as enjoybable as waiting for a Java Applet to load up.
It gives me the beachball anytime I do anything involving I/O (syncing, adding songs, retrieving album art, calculating gapless bullshit). That's bad UI programming. Do your I/O in a background thread.
I know it's doing it on the GUI thread because I'll command-tab to it and it won't redraw, which of course prevents me from cancelling out of whatever task-I-didn't-ask-for it's doing.
This, btw, is the same behaviour I hated on windows.
Managing iPhone, changing tabs, 5 seconds of beachball.
Go to iTunes store, 23 seconds of frozen app.
Trying to see if I have new podcasts while downloading music: 12 seconds of beachball.
If you EVER see a beachball on a Mac then either your hardware is failing or your application's programmer has failed. Your programmer should NEVER do an operation that can block and make the user interface unresponsive in the user interface thread. Ever.Beachball aside, why does it take 100 billion cpu clock cycles to switch from one tab to another?
I still can't believe Apple so thoroughly neglects 90% of their customers.
I do wonder if the trend to use WebKit for a lot more things will continue.
Their main point, that he's somehow a hypocrite because Apple haven't used the latest tech for everything, entirely misses the point he's making - Putting a 3rd party layer between your platform and developers can cause a lag in new features being used. He then states he's mostly worried that Adobe would have really amplified this lag, as "Adobe has been painfully slow to adopt enhancements to Apple’s platforms". He doesn't say it's bad that they've been this slow, just that they are this slow. If it takes them 10 years to adopt Cocoa, why would anything in iPhone 4.0 turn up in Flash till 2015? His claim is that middleware lag is a bad thing is not weakened by iTunes for Windows being crappy - if anything, it's strengthened.
He makes his position very clear - "we sell more devices because we have the best apps", and feels they get the best apps without middleware. There's nothing inconsistent with this position, whilst still taking advantage of other platforms lack of restrictions. I'm not even going to deal with the authors claim that h.264 is as proprietary as Flash: A standard that was developed by a committee, in the open, with many implementations and a licensing scheme for anyone, versus a commercial closed product developed by a single company and no competitive implementations? Sure, there's no difference at all there.
I hope we can all agree that Apple has never really been
an open standards company
We cannot. I strongly disagree. At least in the web space there is a lot of innovation comming from or strongly supported by Apple.Show me this for Flash:
Or this:
http://www.opensource.apple.com/release/mac-os-x-1063/
And check out paragraph 2:
http://webkit.org/projects/goals.html
Fire up Chrome to check out how many re-implementations of WebKit are out there based on this open source and open standards base.
It is really weird, before this everyone hated flash. It was pretty well accepted as a necessary evil that we all wished we could do without (at least that is the vibe I got). We are now almost able to do without it, and 1 OS maker is trying to push that trend.
The truth is that flash kinda sucks, and it makes the OS look bad, and that is bad for Apple.
Example - he basically says Adobe sucks because they just finally got around to releasing a full "Cocoa" binary for CS5. And yet Apple has the same problems. The Finder was Carbon until Snow Leopard was released, less than a year ago. And iTunes, arguably their biggest app, is still Carbon. Yet somehow because Adobe still had Carbon apps as of a few weeks ago, they are evil.
I'm sure Apple would rather not have to release a Windows version of iTunes, but it's necessary to sell more iPods.
Not that I agree with their policies, but this article's arguments aren't very good.
They want to keep flash out of the mobile device space, so arguing about creating crappy desktop apps is a red herring.
I miss the generally geeky articles on alternative operating systems, but ArsTechnica's open source coverage started to pick up about the time that I stopped reading OSNews that I had pretty much forgotten about it until today. Reading this article made me remember why I stopped going there.
Let me also guess - you own a Mac and an iPhone, and are mad because someone is saying bad things about your precious Apple. Correct?
With regard to the author’s points, they may be sincere but I don’t find them convincing. For example, no matter what you think of the quality of Windows iTunes, the idea was never to commodotise the underlying operating system. A calmer and more convincing argument against Job’s statement would simply be to ask what if Microsoft decided to “preserve their UX” by banning any agent that rendered HTML5?
... and though Apple's comments do mention Adobe taking its time to cocoa-ize its apps, this is clearly about the iPod Touches and iPhones and iPads.
Its sad, however, that in order to do this, Apple has forbidden the entire category of runtimes - including Scratch. Now Alan Kay might be the one going "Grrrrr..."!
If developers grow dependent on third party development libraries and tools, they can only take advantage of platform enhancements if and when the third party chooses to adopt the new features. We cannot be at the mercy of a third party deciding if and when they will make our enhancements available to our developers.
with respect to "private api" arguments made here: http://www.marco.org/500743718
That makes you a hypocrite too.
However I enjoy flash videos and flash games. I don't want someone telling me I can no longer play these games.
Example - he basically says Adobe sucks because they just finally got around to releasing a full "Cocoa" binary for CS5. And yet Apple has the same problems. The Finder was Carbon until Snow Leopard was released, less than a year ago. And iTunes, arguably their biggest app, is still Carbon. Yet somehow because Adobe still had Carbon apps as of a few weeks ago, they are evil.
Silverlight?