Jonathan Schwartz recently blogged about it and it didn't take, not too much any way. Why?
I am very excited about the Java App Store, really really excited actually. But I understand why many aren't. Sun hasn't got a very good track record when it comes to client related products, especially when usability and aesthetics are involved. Maybe that's about to change, but it hasn't changed yet, so people are hesitant, reluctant even, to believe the hype.
There seem to be a general consensus in the blogosphere; Sun's marketing team is nowhere near reality. True or not, it’s still seems to be the consensus. Maybe the reason isn’t so much bad public relations as it is failure to communicate. There simply is too much that have gone wrong the last couple of years for people to give them any slack.
We can talk about Java versioning confusion, default Java icons in the Windows gutter and JavaFX premature announcements, but it wouldn’t lead to much good. Nor would it lead to anything useful since of course there’s two sides of everything and if you’ve done it, you stick too it.
I think the main reason that developers (we are talking the early adopters here, we haven’t crossed the chasm yet) are hesitant is that since Sun has such a bad track record when it comes to spinning consumer related products the sensible course of action is to wait and see. Just the opposite of the iPhone App Store, for which Apple had much mojo to collect beforehand.
My personal feeling is that much of Sun’s bad rep is because of bad timing. Many projects have been announced too early and/or rushed out the door (JavaFX, Jini, Swing). Sun has been so eager to announce the next cool thing that the marketing-ish guys have gotten the take on the tech guys and basically tried to collect points before there were any to points given. The reason why, only Sun can answer, but my guess is that tech guys are too high in the ranks and the marketing guys can’t speak tech. Failure to comunucate, again.
Take JavaFX. It was announced almost two years ago and it’s still not usable. Sure, you can use it for Java2D-like demos, but there’re no components. The language itself was changed after demos were posted and books were written. A lot of things were missing from the 1.0 release. The upcoming 1.5 release should've been 1.0, and it should have been announced six month ago.
So I hope that Sun has learned its lesson(s) and will actually announce something that is actually ready this time. They can’t announce another half made thing with a big v0.1 sticker on it and having the marketing guys climbing allover each other trying to spin it as a done deal for developers. A simple demography/psychology of their first tier audience gives that they are dealing with highly intelligent and impatient people that in hours will test and criticize any flaws in the product, not giving it any chance unless it is near perfect. Not because the ealy adopters need that, but because there's no credit left on the client account (anyone that has read the excellent "Crossing the Chasm" knows that early adopters are actually quite lenient when it comes to usability and bugs, as long as they can fiddle with the product).
Only a flawless product with as good as Apple, or preferably better, usability will do it for Sun this time. There simply are no more leeway for Sun, they have to deliver, or the last credibility would be gone, at least when it comes to consumer related products.
I which I were more positive about the outcome of this one, I really do. Especially since it would help our next product a lot (secret as of yet). But, recent comments from Sun developers, that they are basically hurrying this one out the doors in time for JavaOne, makes me not hope for a new beginning. Doing development like that is bad at best. Conference driven development, or any time constraint driven development for that matter, is as bad for the long term as quarterly optimized financial reports. It might work for a couple of quarters but will fail miserably in a few years.
So why am I writing this? To try to reach the Sun decision makers and make them understand that good things can’t be rushed, neither can they be prematurely debited for goodwill unless there is a lot of goodwill to collect (there aren't). The only thing that will impress in the long run is a bug free, ready, and really really user friendly product. Apple has been doing this for a couple of years now and strangely enough no one has even been able to copy it.
Sun, listen to the people, but don’t put them all in the driver’s seat. Harness their knowledge but don’t design by committee. It’s a thin line, but it is possible to walk it. You start by holding your head high and looking firmly ahead, without fear of falling and with the mind set to do great things, not leaping ahead.
p.s. I think Java needs a better layout manager in the JDK. :)