Apple & Java on the Mac - What we have here is a failure to communicate.

2 views
Skip to first unread message

cpa...@gmail.com

unread,
Jan 22, 2009, 3:57:45 PM1/22/09
to The Java Posse
I could be wrong, but I think most of us, as technical people, would
totally understand if there are technical challenges involved in
getting the latest JDK releases and updates ported to OSX.

What makes the current situation hard to take for Mac using Java
programmers is the lack of communication from Apple on the subject.

I wonder why Apple doesn't just have a Java dev team blog or similar?

Michael Kimsal

unread,
Jan 22, 2009, 4:14:54 PM1/22/09
to java...@googlegroups.com
The cynical part of me (and others I've talked to) seems to indicate that Java is a threat to the Objective-C approach Apple wants everyone to take.  The more people can write portable stuff on a Mac, the less tied to a Mac they'll be.  To the extent this is true, I don't see one whit of attitudinal difference between Apple's approach to Java and Microsoft's all those years ago.

Why Sun has ceded the writing of Java for the Mac platform *to* Apple is still a mystery to me, and probably always will be.  Since Sun has historically given Java short shrift on Linux, *new* Java releases still have tended to be a single platform affair.
--
Michael Kimsal
http://michaelkimsal.com
919.827.4724 - Skype
919.455.8488 - Cell

cpa...@gmail.com

unread,
Jan 22, 2009, 4:51:08 PM1/22/09
to The Java Posse
On Jan 22, 4:14 pm, Michael Kimsal <mgkim...@gmail.com> wrote:
> The cynical part of me (and others I've talked to) seems to indicate that
> Java is a threat to the Objective-C approach Apple wants everyone to take.
> The more people can write portable stuff on a Mac, the less tied to a Mac
> they'll be.  To the extent this is true, I don't see one whit of attitudinal
> difference between Apple's approach to Java and Microsoft's all those years
> ago.
>

I do. Microsoft effectively wanted to 'fork' the Java language,
adding their own proprietary and hence incompatible extensions into it
so that native Win32/COM calls could be made more easily without
requiring individual JNI interfaces to be created.

I don't see Apple trying to incompatibly fork the language.

> Why Sun has ceded the writing of Java for the Mac platform *to* Apple is
> still a mystery to me, and probably always will be.  Since Sun has
> historically given Java short shrift on Linux, *new* Java releases still
> have tended to be a single platform affair.
>

Is that really true? Doesn't JDK1.6_10 run on Linux already? I think
you might be a bit out of date, or perhaps I'm not aware of the
deficiencies in the most current JDK releases on Linux?

As to why Sun ceded JDK ports to Apple, I'm guessing the reason is
simply one of resources. The Java platform has always had interfaces
to the lower level graphics bits of Windows and UNIX since its
inception, so adding new features and evolving the language wouldn't
seem to be a major effort for Linux.

However, an OSX port is a different story, mostly because as you said
above the Cocoa/ObjectiveC/Aqua based environment is a fairly radical
paradigm shift from either Linux/X11 or Win32/GDI.

-Chris

Michael Kimsal

unread,
Jan 22, 2009, 5:00:40 PM1/22/09
to java...@googlegroups.com
On Thu, Jan 22, 2009 at 4:51 PM, cpa...@gmail.com <cpa...@gmail.com> wrote:

On Jan 22, 4:14 pm, Michael Kimsal <mgkim...@gmail.com> wrote:
> The cynical part of me (and others I've talked to) seems to indicate that
> Java is a threat to the Objective-C approach Apple wants everyone to take.
> The more people can write portable stuff on a Mac, the less tied to a Mac
> they'll be.  To the extent this is true, I don't see one whit of attitudinal
> difference between Apple's approach to Java and Microsoft's all those years
> ago.
>

I do.  Microsoft effectively wanted to 'fork' the Java language,
adding their own proprietary and hence incompatible extensions into it
so that native Win32/COM calls could be made more easily without
requiring individual JNI interfaces to be created.

I don't see Apple trying to incompatibly fork the language.


I have Java programs that don't work under Apple OSX, but the same program works under Windows and Linux.  The original author needs to look in to what's different about Java on OSX and make adjustments.  So the net effect is I have something incompatible from mainline Java.


> Why Sun has ceded the writing of Java for the Mac platform *to* Apple is
> still a mystery to me, and probably always will be.  Since Sun has
> historically given Java short shrift on Linux, *new* Java releases still
> have tended to be a single platform affair.
>

Is that really true? Doesn't JDK1.6_10 run on Linux already? I think
you might be a bit out of date, or perhaps I'm not aware of the
deficiencies in the most current JDK releases on Linux?

JDK1.6_10 was one of the first ones I can remember that was released on
Linux at the same time as on Windows.  So, historically, it's always been a little
behind.  When Sun keep this up for a few years, then I'll trust it's going to be
given the same support.  Still very odd desktop graphics issues with running
Java apps on modern Linux desktops.
 

As to why Sun ceded JDK ports to Apple, I'm guessing the reason is
simply one of resources.  The Java platform has always had interfaces
to the lower level graphics bits of Windows and UNIX since its
inception, so adding new features and evolving the language wouldn't
seem to be a major effort for Linux.

However, an OSX port is a different story, mostly because as you said
above  the Cocoa/ObjectiveC/Aqua based environment is a fairly radical
paradigm shift from either Linux/X11 or Win32/GDI.

-Chris

This just illustrates that Sun hasn't historically been all that concerned about Java.  If
this is their flagship technology, the one on which the entire future of the
company rests (they changed their ticker symbol to JAVA for goodness' sake!)
they should exercise more control over the experience of that technology both for
developers and for end users.  If the cutting edge stuff can't run on a significant
portion of machines that typically run cutting edge stuff (early adopters) they'll
continue to lose market- and mindshare.

Jess Holle

unread,
Jan 22, 2009, 5:07:04 PM1/22/09
to java...@googlegroups.com
Michael Kimsal wrote:
As to why Sun ceded JDK ports to Apple, I'm guessing the reason is
simply one of resources.  The Java platform has always had interfaces
to the lower level graphics bits of Windows and UNIX since its
inception, so adding new features and evolving the language wouldn't
seem to be a major effort for Linux.

However, an OSX port is a different story, mostly because as you said
above  the Cocoa/ObjectiveC/Aqua based environment is a fairly radical
paradigm shift from either Linux/X11 or Win32/GDI.

-Chris

This just illustrates that Sun hasn't historically been all that concerned about Java.  If
this is their flagship technology, the one on which the entire future of the
company rests (they changed their ticker symbol to JAVA for goodness' sake!)
they should exercise more control over the experience of that technology both for
developers and for end users.  If the cutting edge stuff can't run on a significant
portion of machines that typically run cutting edge stuff (early adopters) they'll
continue to lose market- and mindshare.
Really?  I think it shows that Sun hasn't historically been all that concerned about the Mac.

It is still a niche market for clients and a very, very small market for servers and requires a great deal of platform-specific code to do the right things GUI-wise.  Apple has been extremely slow, but since Java 5 the results have been decent when they finally arrive.

Given the incremental benefit vs. incremental cost, it seems like a no-brainer for Sun to leave this to Apple -- much as they leave AIX to IBM, for instance (which I'd personally be more excited to see change given the delays in JVM releases, frequent disparate behavior with respect to Sun JVMs, lack of JVM source code, etc, one has to deal with currently on AIX).

--
Jess Holle

Michael Kimsal

unread,
Jan 22, 2009, 5:17:05 PM1/22/09
to java...@googlegroups.com
Really?  I think it shows that Sun hasn't historically been all that concerned about the Mac.

Agreed - that too. They've wanted mass consumer markets handed to them, instead of doing mass marketing.  AOL managed to get software on everyone's PCs from 1995-2003, through mailers, magazine inserts, bundling dealings, etc.  Sun sued MS for *not* including the type of Java they wanted distributed. 
 

It is still a niche market for clients and a very, very small market for servers and requires a great deal of platform-specific code to do the right things GUI-wise.  Apple has been extremely slow, but since Java 5 the results have been decent when they finally arrive.

Given the incremental benefit vs. incremental cost, it seems like a no-brainer for Sun to leave this to Apple -- much as they leave AIX to IBM, for instance (which I'd personally be more excited to see change given the delays in JVM releases, frequent disparate behavior with respect to Sun JVMs, lack of JVM source code, etc, one has to deal with currently on AIX).

Again, if Java is key to their future, being more in control of how and when versions shipped would seem to be paramount.  Leaving these decisions to competitors (Sun and Apple and IBM all sell hardware, though admittedly to somewhat different markets at the moment) just seems like *really bad business*.  This is not me talking as a techie saying "ooh - I want the latest java".  It's me thinking "why would you leave your competitors in charge of how and when people get access to your differentiating factor?".



--
Jess Holle




Jess Holle

unread,
Jan 22, 2009, 5:31:55 PM1/22/09
to java...@googlegroups.com
Michael Kimsal wrote:
Really?  I think it shows that Sun hasn't historically been all that concerned about the Mac.

Agreed - that too. They've wanted mass consumer markets handed to them, instead of doing mass marketing.  AOL managed to get software on everyone's PCs from 1995-2003, through mailers, magazine inserts, bundling dealings, etc.  Sun sued MS for *not* including the type of Java they wanted distributed. 
More accurately they sued Microsoft for including something they called Java but with 2 key portability technologies (JNI and RMI) ripped out.  Microsoft was actively saying that JNI and RMI were no good and that one should simply use Windows-specific technologies instead.  This was an obvious and strong Windows-lock-in strategy.

The lawsuit was damaging, but I don't think Sun had any choice.


It is still a niche market for clients and a very, very small market for servers and requires a great deal of platform-specific code to do the right things GUI-wise.  Apple has been extremely slow, but since Java 5 the results have been decent when they finally arrive.

Given the incremental benefit vs. incremental cost, it seems like a no-brainer for Sun to leave this to Apple -- much as they leave AIX to IBM, for instance (which I'd personally be more excited to see change given the delays in JVM releases, frequent disparate behavior with respect to Sun JVMs, lack of JVM source code, etc, one has to deal with currently on AIX).

Again, if Java is key to their future, being more in control of how and when versions shipped would seem to be paramount.  Leaving these decisions to competitors (Sun and Apple and IBM all sell hardware, though admittedly to somewhat different markets at the moment) just seems like *really bad business*.  This is not me talking as a techie saying "ooh - I want the latest java".  It's me thinking "why would you leave your competitors in charge of how and when people get access to your differentiating factor?".
If you have infinite resources you'd push your stuff everywhere.

Given Sun's quite clearly limited resources, tiny high cost markets like OSX and AIX just have to be left to their own vendors.

Apple clearly does not care all that much about any portability technologies -- they care about their own branding, eye candy, and unique value proposition.  Portability is critical to real use, but it is "me too" stuff in Apple's book.

For just such reasons I don't personally own a Mac, though I was a devoted user thereof for a decade or so.  The Mac is what initially really inspired me to be a software developer way back in 89.  It's still got cool stuff, but there's a lot of coolness out there -- and Apple's not very helpful in ensuring cross-platform coolness (e.g. Java) is all it could be on their platform.

--
Jess Holle

Michael Kimsal

unread,
Jan 22, 2009, 5:35:06 PM1/22/09
to java...@googlegroups.com
On Thu, Jan 22, 2009 at 5:31 PM, Jess Holle <je...@ptc.com> wrote:
Michael Kimsal wrote:
Really?  I think it shows that Sun hasn't historically been all that concerned about the Mac.

Agreed - that too. They've wanted mass consumer markets handed to them, instead of doing mass marketing.  AOL managed to get software on everyone's PCs from 1995-2003, through mailers, magazine inserts, bundling dealings, etc.  Sun sued MS for *not* including the type of Java they wanted distributed. 
More accurately they sued Microsoft for including something they called Java but with 2 key portability technologies (JNI and RMI) ripped out.  Microsoft was actively saying that JNI and RMI were no good and that one should simply use Windows-specific technologies instead.  This was an obvious and strong Windows-lock-in strategy.

The lawsuit was damaging, but I don't think Sun had any choice.


There were 2 different suits AFAIR - one against MS initially for "changing" Java.  The second when MS decided to drop distributing Java altogether.  That's the one I was talking about.
 



Again, if Java is key to their future, being more in control of how and when versions shipped would seem to be paramount.  Leaving these decisions to competitors (Sun and Apple and IBM all sell hardware, though admittedly to somewhat different markets at the moment) just seems like *really bad business*.  This is not me talking as a techie saying "ooh - I want the latest java".  It's me thinking "why would you leave your competitors in charge of how and when people get access to your differentiating factor?".
If you have infinite resources you'd push your stuff everywhere.

Given Sun's quite clearly limited resources, tiny high cost markets like OSX and AIX just have to be left to their own vendors.

I guess I'm not sure how things like Firefox and libsdl, with clearly fewer resources than Sun, manage to get their stuff ported to OSX.
 

Apple clearly does not care all that much about any portability technologies -- they care about their own branding, eye candy, and unique value proposition.  Portability is critical to real use, but it is "me too" stuff in Apple's book.


Agreed, just like MS doesn't either, regardless of whatever rhetoric they put out.

Jess Holle

unread,
Jan 22, 2009, 5:43:08 PM1/22/09
to java...@googlegroups.com
Michael Kimsal wrote:

Apple clearly does not care all that much about any portability technologies -- they care about their own branding, eye candy, and unique value proposition.  Portability is critical to real use, but it is "me too" stuff in Apple's book.


Agreed, just like MS doesn't either, regardless of whatever rhetoric they put out.
Microsoft clearly has no more love for cross-platform anything than Apple -- and probably less.

The difference is that so many other people and companies care about getting all that cross-platform stuff running on Windows that most of it works there with little to no delay.  For instance, Sun has to release Java on Windows in a timely and quality manner -- or Java would be dead.

Windows near monopoly, however evil ensures that cross-platform technology makes its way there one way or another.

On the Mac, some things get there and some don't and some take their sweet time about it -- as there's no market force to ensure anything better occurs.

--
Jess Holle

Chris Adamson

unread,
Jan 23, 2009, 6:48:23 AM1/23/09
to The Java Posse
"Bias" disclosure: I've been writing a *lot* of iPhone code lately,
and it's the most interesting coding I've done since learning Java in
1996.

On Jan 22, 3:57 pm, "cpa...@gmail.com" <cpa...@gmail.com> wrote:
> What makes the current situation hard to take for Mac using Java
> programmers is the lack of communication from Apple on the subject.
>
> I wonder why Apple doesn't just have a Java dev team blog or similar?

Can you think of any other Mac or iPhone team in Apple that blogs or
otherwise has a public face? The only example I can think of is the
WebKit guys, and that's an open source project. For Apple's own
stuff, the corporate culture is one of "Apple does not talk about
unannounced products" (their stock PR line anytime they're asked about
stuff). That's just how they are.

Does it make it hard to make plans based on what they're going to do?
Yep. Does it also suck when more open companies pre-announce stuff
that you base your plans on, only to have those announcements turn
into nothing? That sucks too. Planning for the future is imprecise,
difficult, and loaded with hazards... and always has been.

On Jan 22, 4:14 pm, Michael Kimsal <mgkim...@gmail.com> wrote:
> The cynical part of me (and others I've talked to) seems to indicate that
> Java is a threat to the Objective-C approach Apple wants everyone to take.
> The more people can write portable stuff on a Mac, the less tied to a Mac
> they'll be. To the extent this is true, I don't see one whit of attitudinal
> difference between Apple's approach to Java and Microsoft's all those years
> ago.

Sorry to be blunt, but this is asinine, and this kind of
conspiratorial talk reflects poorly on the Java community. Java is
not being kept down by The Man and his nefarious plan to force
everyone to use Objective-C.

For one thing, Ruby and Python are first-class languages for Cocoa
programming on the Mac as of OS X 10.5.

What's keeping Java behind on the Mac is self-interest: Apple has been
a Sun licensee for over 10 years, has thrown many engineer hours into
their own VM, and it's really hard to say what they have to show for
it, other than WebObjects, which they use for their own enterprise
apps, like the iTunes Store. But they're not real big in servers, and
probably never will be. As far as the desktop goes, it's not like
there's an immense amount of end-user Java software out there that the
Mac has to stay compatible with. Heck, user-facing Flash outnumbers
Java by many orders of magnitude, and yet Apple was able to sell tens
of millions of iPhones with a full-featured web browser that *doesn't*
handle Flash. Do you think there's anyone who wouldn't buy a Mac or
an iPhone just because it didn't support Java (or in the case of the
Mac, the newest version of Java)? Of course there is: Java developers
wouldn't. But that's the only voice we ever hear in these arguments.
In the big picture of everyday users, there's very little value in
desktop Java, because there just aren't that many really important
apps and applets that require it.

Apple isn't a big company: its employment figures are bloated by the
fact that it runs all those stores. I've come to wonder if the big
delays getting Java 6 out last year had something to do with the
iPhone, as it seems they pulled nearly all their engineers into the
push to get iPhone 2.0 out the door. I had a tech support request go
unanswered for months, and found out last summer it was because they'd
pulled all the developer support engineers full time into the iPhone
push for months on end. So maybe Java's just a very low priority for
its engineering staff. When the only people who use it are the ones
hurling facile insults at the company (I'm going to smack the next
person who makes a crack about "eye candy") from the confines of their
own little world, I can understand why that might be the case.

--Chris

cpa...@gmail.com

unread,
Jan 23, 2009, 3:09:35 PM1/23/09
to The Java Posse


On Jan 23, 6:48 am, Chris Adamson <invalidn...@gmail.com> wrote:
> "Bias" disclosure:  I've been writing a *lot* of iPhone code lately,
> and it's the most interesting coding I've done since learning Java in
> 1996.
>
> On Jan 22, 3:57 pm, "cpa...@gmail.com" <cpa...@gmail.com> wrote:
>
> > What makes the current situation hard to take for Mac using Java
> > programmers is the lack of communication from Apple on the subject.
>
> > I wonder why Apple doesn't just have a Java dev team blog or similar?
>
> Can you think of any other Mac or iPhone team in Apple that blogs or
> otherwise has a public face?  The only example I can think of is the
> WebKit guys, and that's an open source project.  For Apple's own
> stuff, the corporate culture is one of "Apple does not talk about
> unannounced products" (their stock PR line anytime they're asked about
> stuff).  That's just how they are.
>
> Does it make it hard to make plans based on what they're going to do?
> Yep.  Does it also suck when more open companies pre-announce stuff
> that you base your plans on, only to have those announcements turn
> into nothing?  That sucks too.  Planning for the future is imprecise,
> difficult, and loaded with hazards... and always has been.
>

This is a very good point, and one I hadn't considered.
It's always important to take a step back and consider the larger view
on something you want like this. I'd guess that the number of Mac
using Java developers like myself has grown exponentially over the
last few years with more and more Mac laptops in the field, but even
still we represent a ridiculously small fraction of the Mac buying
population.

I wonder if perhaps it would be in Apple's best financial interest to
open source their JDK implementation so that we hobbyists could
contribute, providing the necessary man hours needed to get the latest
JDK running under OSX? If the Java market is truly unimportant to
them, but they want to not lose it entirely, this might seem like a
reasonable way to go.

-Chris P.

Michael Kimsal

unread,
Jan 23, 2009, 3:22:07 PM1/23/09
to java...@googlegroups.com
> On Jan 22, 4:14 pm, Michael Kimsal <mgkim...@gmail.com> wrote:
>
> > The cynical part of me (and others I've talked to) seems to indicate that
> > Java is a threat to the Objective-C approach Apple wants everyone to take.
> > The more people can write portable stuff on a Mac, the less tied to a Mac
> > they'll be.  To the extent this is true, I don't see one whit of attitudinal
> > difference between Apple's approach to Java and Microsoft's all those years
> > ago.
>
> Sorry to be blunt, but this is asinine, and this kind of
> conspiratorial talk reflects poorly on the Java community.  Java is
> not being kept down by The Man and his nefarious plan to force
> everyone to use Objective-C.
>
> For one thing, Ruby and Python are first-class languages for Cocoa
> programming on the Mac as of OS X 10.5.
>

Who created the OSX versions of Ruby and Python?  Did Apple do it?  I
think Ruby is bundled with OSX, but I'm not sure who did the port.   

"Java is not being kept down by The Man"

Up to date Java is being kept off the Mac by Apple, though.  Whatever the reason is,
they've taken on the responsibility of providing something, and aren't doing a
timely job of it.  Whether you think that warrants the notion of it being "kept off"
as opposed to "ignored" or "given lower priority", the net result is still the same.

I don't think anyone sees Ruby or Python being a threat to traditional 'desktop app'
experiences, as they're "just" scripting languages. 

Call it conspiratorial if you want.  It's not in Apple's best interest (business-wise
or tech-wise) to have head to head competition to their development platform of choice
(which, I do believe, today includes Ruby for some things).  Again, same as MS. 
If MS was tapped to develop an MS-suitable Java and handle distribution of it,
even on friendly terms, they wouldn't keep it up to date either, similar to Apple, as it
competes with their .NET platform

It again comes down to Apple *shouldn't* be the ones handling Java on Mac
in the first place (nor should IBM handle the AIX port).

Chris Adamson

unread,
Jan 23, 2009, 9:41:24 PM1/23/09
to The Java Posse
On Jan 23, 3:09 pm, "cpa...@gmail.com" <cpa...@gmail.com> wrote:
> I wonder if perhaps it would be in Apple's best financial interest to
> open source their JDK implementation so that we hobbyists could
> contribute, providing the necessary man hours needed to get the latest
> JDK running under OSX?  If the Java market is truly unimportant to
> them, but they want to not lose it entirely, this might seem like a
> reasonable way to go.

As a commercial licensee of Sun Java, Apple may not be able to open
source their implementation (remember, even Sun's Java 6 isn't open-
source... OpenJDK 6 is a separate back-port of OpenJDK 7). But in
general, I agree: I think a lot of people believe that if there is a
future for Java on the Mac, it'll come from OpenJDK, specifically the
BSD porters group.

--Chris

Mark Fortner

unread,
Jan 24, 2009, 12:02:42 PM1/24/09
to java...@googlegroups.com



I wonder if perhaps it would be in Apple's best financial interest to
open source their JDK implementation so that we hobbyists could
contribute, providing the necessary man hours needed to get the latest
JDK running under OSX?  If the Java market is truly unimportant to
them, but they want to not lose it entirely, this might seem like a
reasonable way to go.


I think Darwin is the closest that Apple has come to creating an open source project.  As I recall, Apple's implementation of Java includes a lot of hooks into the underlying operating system.   This is has it's pluses and minuses.  While it means that the Swing and AWT implementations are closely tied to the Apple's graphics toolkit, it also means that changes to the graphics toolkit also mean changes to Swing/AWT.  Since the OS is considered one of their crown jewels, they're not that likely to open source something that's closely tied to the OS.  And as mentioned previously, Apple has a policy of not disclosing what they're working on, it would be extremely difficult to work on OS changes without breaking an open source version of Java.

For the time-being, I think that Soylatte is the closest we'll come to having an open source version of Java running on a Mac.

In general though, I'd like to see implementations of Java on other platforms with native peers to not-only the graphics core, but also the File System, Speech, and Media APIs so that I could take advantage of the native APIs on each platform, but not have to write platform specific calls to make it work.

Regards,

Mark Fortner

robogeek

unread,
Jan 24, 2009, 12:35:15 PM1/24/09
to The Java Posse

There's a lot of misinformation in this thread ... so even though I'm
no longer in the JavaSE team I want to give some corrections.

"Why Sun has ceded the writing of Java for the Mac platform *to* Apple
is still a mystery to me, and probably always will be. " -- This is
really very simple. The idea for a long time around Java has been
that Sun licenses the rights to technology to companies who then port
Java source to their platform. It's up to the given vendors to port
and support Java on their platform. The original deal between
Microsoft and Sun was in that form, that Microsoft was the licensee
and were responsible for Java-on-windows but those of us with a good
memory for the history remember that Microsoft violated the license
agreement and Sun won a $2 billion judgment against Microsoft for
having broken that license agreement. In any case if you're crying
about why Sun has ceded writing Java for OS X to Apple, why aren't you
also crying about Sun ceding Java on IBM's operating systems to IBM?
Are you expecting Sun to do a good job of writing Java for z/OS ???

"Since Sun has historically given Java short shrift on Linux" ..
"JDK1.6_10 was one of the first ones I can remember that was released
on
Linux at the same time as on Windows. " ... This is pretty much
untrue. Beginning with 1.3.x Sun began shipping JDK's for Linux. I
don't recall when we started shipping them at the same time but it was
way way way before 6u10. Linux JDK's are tested alongside the other
releases and released at the same time and this has been the case for
several years. Until my RIF two days ago I managed the release of the
DLJ bundles, which are in turn used widely by Linux distros, and know
very well that at least for 1.5.x and 6uX the status of JDK releases
on Linux. There were sometimes delays in releasing the DLJ bundles
but that was due to the process for DLJ bundles had never been
automated. The release of the main JDK bundles (the ones you get at
java.sun.com and java.com) is run by a highly automated build farm.
Conversely the DLJ bundles were manually created by taking apart JDK
bundles and putting a different license file in, and then by using
rsync to copy to download.java.net. Sometimes there were delays in
getting DLJ bundles released but I had diligently worked on decreasing
that so that for the last several releases the DLJ version was
released within a couple hours of the main JDK release.

"As to why Sun ceded JDK ports to Apple, I'm guessing the reason is
simply one of resources. " -- There is a lot of truth to this concept
as it would not be a very scalable thing for one organization to
handle porting something like Java to all the different computing
platforms that exist. I think it was wise to license the technology
and let other companies do the porting work. The word 'cede' is
incorrect here as it is a technology licensing deal. IBM is properly
motivated to ensure Java runs well on z/OS but do you think Sun would
be as motivated to do so? I don't think so ... so why would Sun be
motivated to do an OS X port?

Actually that last point raises an observation from my work in the
JavaFX team. For JavaFX Sun did the OS X port themselves. The
reason? The JavaFX management sees all those graphical designers
using OS X as their preferred environment and ergo reasoned it's
important to have JavaFX support on OS X.

"Sun sued MS for *not* including the type of Java they wanted
distributed. " -- Please learn your history. Sun sued MS for
violating the contract and shipping a thing they claimed was Java but
did not match the Java specification. It's clear from the rest of
your writing you want Java to be Java on every platform but MS
basterdised it and if they had been successful you'd be bitching today
about how writing to MS's Java means your code is unportable just like
writing to Internet Exploiter today also makes your code unportable.

http://weblogs.java.net/blog/robogeek/archive/2007/08/java_is_doomed.html
-- has a blog post I made some time ago that retells some history. I
also suggest yahoogling "Microsoft Java Incompatibility" and look for
a ZDNET article from 1997ish which goes into excruciating details on
the differences someone would see by using Microsoft's implementation
of what they called Java.

"Again, if Java is key to their future, being more in control of how
and when versions shipped would seem to be paramount. Leaving these
decisions to
competitors" -- Yeah, there is a certain amount of wisdom to this.
For that matter are those competitors properly incentivised to support
Sun's technology? In the 1990's there was this coopetition word that
was coined, and Java is a great example of this. Cooperating with
competitors is a very tricky dance to play. I don't know what the
best is. However having been working within the OpenJDK project for a
long time my personal opinion is it would be advantageous for all
involved if the licensees were cooperating inside the OpenJDK project
rather than the old paradigm of technology licensing. But even making
that change would be extremely tricky to accomplish and it's not clear
whether everybody involved sees this the same way I see it.


"I guess I'm not sure how things like Firefox and libsdl, with clearly
fewer resources than Sun, manage to get their stuff ported to OSX. "
-- Open source volunteers have different incentive factors than
employees of a corporation. Further it's more efficient to cooperate
on a common code base in a shared source repository than having arms
length technology licensing and no sharing of code.

"Who created the OSX versions of Ruby and Python? Did Apple do it? I
think Ruby is bundled with OSX, but I'm not sure who did the port. "
-- Also the other P languages (Perl, PHP).. Apple could have done it
themselves but consider this. All those languages are much easier to
port amongst Unix-like systems than is Java. That's because JavaSE
drags along with it a requirement to support GUI technologies because
AWT, 2D, Sound, Swing, etc are part of the platform spec. That
requirement makes the port much harder than it would for those P
languages that don't have their own GUI toolkits.

Perhaps the new minimized Java profile ("??project jigsaw???") will
improve this situation as it's goaling includes support for a GUI-less
Java implementation.

"Up to date Java is being kept off the Mac by Apple, though. " --
Yeah. It's real irritating, isn't it. I know it has been irritating
to me. If you are so motivated there is a porting project underway on
the openjdk project, look for the bsd-port project. The goal is to
integrate support from the BSD/Java team into OpenJDK and one of the
side goals has been to integrate the SoyLatte work by Landon Fuller
into the same project. That team could use some help.

"As a commercial licensee of Sun Java, Apple may not be able to open
source their implementation " -- As I said there are many tricky
considerations to such a result.

Michael Kimsal

unread,
Jan 24, 2009, 1:31:58 PM1/24/09
to java...@googlegroups.com
On Sat, Jan 24, 2009 at 12:35 PM, robogeek <reik...@gmail.com> wrote:


"Sun sued MS for *not* including the type of Java they wanted
distributed. " -- Please learn your history.  Sun sued MS for
violating the contract and shipping a thing they claimed was Java but
did not match the Java specification.  It's clear from the rest of
your writing you want Java to be Java on every platform but MS
basterdised it and if they had been successful you'd be bitching today
about how writing to MS's Java means your code is unportable just like
writing to Internet Exploiter today also makes your code unportable.


http://www.betanews.com/article/Sun_Sues_Microsoft_Seeks_Over_1_Billion/1015645186

"Microsoft announced it would remove Java support last summer due to previous settlement terms with Sun, which allowed the software giant to only ship an older version of the programming language. Unprepared for such a move, Sun lashed out at Microsoft for hurting the development community and said it would offer a special Java download for Windows XP users. Unfortunately, the update has not had the mainstream acceptance the company had hoped."

The 'violating the contract' lawsuit was/is wholly separate from the 'you're harming us by not including Java on MS'.


mikaelgrev

unread,
Jan 24, 2009, 6:00:27 PM1/24/09
to The Java Posse
> In any case if you're crying
> about why Sun has ceded writing Java for OS X to Apple, why aren't you
> also crying about Sun ceding Java on IBM's operating systems to IBM?
> Are you expecting Sun to do a good job of writing Java for z/OS ???

Because OS X is now big enough to be self sustaining and don't need
Java anymore. Therefore Sun should take over the port, just as they do
for another similar self sustaining platform, Windows. OS X is now
some seven time larger than Linux on the Desktop, yet Sun is caring
for Linux, but not OS X. Strange business to me.

Cheers,
Mikael

Casper Bang

unread,
Jan 24, 2009, 6:20:12 PM1/24/09
to The Java Posse
On Jan 25, 12:00 am, mikaelgrev <mikael.g...@gmail.com> wrote:
> some seven time larger than Linux on the Desktop, yet Sun is caring
> for Linux, but not OS X. Strange business to me.

Where do you have those numbers from? Mac's might have gained growth
the last couple of years, but according to various sources (i.e.
http://www.w3counter.com/globalstats.php) we're talking about a 2x
difference. Sun obviously cares for all platforms, that's the whole
philosophy behind Java. But obviously they also have to prioritize,
it's not like all is rosy on Linux either where we're still waiting
for JavaFX support and proper browser support. It's a little amusing
these days to listen to all the Java developing Windows-refugees now
whining from their even more proprietary and locked down platform.

/Casper


mikaelgrev

unread,
Jan 24, 2009, 6:42:53 PM1/24/09
to The Java Posse
OK, sorry, I took it from memory.

This report seems to show it is 11 times more:

http://marketshare.hitslink.com/report.aspx?qprid=9

I guess it depends on who you ask. But I constantly read something
like 7-8% for Macs and < 1% for Linux when "normal" users, and not
developers, are counted.

Cheers,
Mikael

On Jan 25, 12:20 am, Casper Bang <casper.b...@gmail.com> wrote:
> On Jan 25, 12:00 am, mikaelgrev <mikael.g...@gmail.com> wrote:
>
> > some seven time larger than Linux on the Desktop, yet Sun is caring
> > for Linux, but not OS X. Strange business to me.
>
> Where do you have those numbers from? Mac's might have gained growth
> the last couple of years, but according to various sources (i.e.http://www.w3counter.com/globalstats.php) we're talking about a 2x

Reinier Zwitserloot

unread,
Jan 24, 2009, 9:18:26 PM1/24/09
to The Java Posse
About half of all sun engineers walk around with a macbook of some
sort under their arm. The suggestion that sun doesn't really care
about the mac, is, well, a few levels beyond idiotic. I hope your
excuse is that you don't meet sun people and don't listen to the java
posse, but given this forum's purpose that seems a bit of a stretch.

So why have they outsourced (and continue to keep the status quo) in
regards to apple maintaining the JVM on apple? Beats me. I can
guesstimate though:

Not too long ago, the apple platform was far, FAR smaller than it was
now for sun's target market (especially amongst programmer geeks,
where mac usage has exploded 50 fold in the past 4 years. Not kidding
on that number. The userbase of apple way back then was gfx designers,
mostly, which at the time had absolutely nothing to do with java).
Apple had, at that time, also indicated quite clearly they were going
to be vastly superior in porting and maintaining the JVM than sun
could ever be, for these reasons:

1) Apple publically stated their intent to take java seriously. At
one point apple was trying to (or at least seemed to, apple's usual
tight lipped-ness has been going on for about a decade) move from
carbon to the JVM and java for writing your average mac app. It
included loads of access layers for java to do things that work only
on macs, including QT4Java. Since then apple has cancelled this plan
and went to Objective C (with cocoa) instead, and has dropped support
for QT4Java and those other extensions, but at the time - it was a
near sure thing.

2) Os X was tiny, rapidly changing, and apple offered to take care of
it. No brainer.

3) The os x platform is very different from linux/windows. Apps
aren't just started by way of 'an executable' (there are app
packages), various menus really HAVE to be in specific places or you
really stick out like a sore thumb, you can't run the same app twice
(if that is a sensible use-case, the app must spawn another window
instead), and many other differences. For sun to port JVM to os x
properly, it would have taken them a lot of resources.



#1 and #2 are no longer true. #3 is true, but by now sun has plenty of
macheads, so its no problem. So why isn't sun taking back control?

I'm guessing that, with the openjdk and people like Landon Fuller
proving the usefulness of open sourcing java to sun, they (correctly,
in my opinion) assume that there isn't much value in spending the
resources. Sure, openjdk is just now becoming feasible, and the java-
on-os x situation has been a bit sour for a year or two now, but sun
knew all about open sourcing java 2 years ago. Business-wise, its all
sorts of sensible.


As far as user bases are concerned: Blanket comparisons are
ridiculous. Look at your target market, and try to figure out the
difference. Amongst hipster web 2.0 using early adopters and
developers, apple controls OVER HALF THE MARKET. If this group is
important to you, not having a mac app is suicidal. Not having a
windows app is not a good idea, but its been done before with success.

Social Media folk are similarly mac-heavy, as are designers and the
movie biz. On the other hand, your average office worker has odds
better than 99 to 1 that it's a PC, and linux has more penetration in
that market than the mac.

robogeek

unread,
Jan 27, 2009, 1:54:34 PM1/27/09
to The Java Posse


On Jan 24, 3:00 pm, mikaelgrev <mikael.g...@gmail.com> wrote:
> Because OS X is now big enough to be self sustaining and don't need
> Java anymore. Therefore Sun should take over the port, just as they do
> for another similar self sustaining platform, Windows. OS X is now
> some seven time larger than Linux on the Desktop, yet Sun is caring
> for Linux, but not OS X. Strange business to me.
>
> Cheers,
> Mikael

The reason Sun "took over the port" for Windows is because Microsoft
broke the license agreement and wouldn't cooperate with Sun on the
terms of the contract. Hence Sun was forced into taking over
producing the Windows port if Java were to credibly remain as a cross
platform software development platform. I am reasonably sure, having
been in the JavaSE through 90% of that era, that if Microsoft had
cooperated with Sun and abided by the terms of the contracts and
licenses, that they would have continued in the role of providing the
Java port for Windows. But they didn't.

Apple for all their other warts has cooperated with Sun and has abided
by the terms of the contracts and licenses.

From my view the reason Sun would provide a Linux port of Java is that
Linux is a very important server platform. Hence for Java to have a
reasonable presence in server side deployments it's necessary to have
a Linux port.

Casper Bang wrote: "But obviously they also have to prioritize, it's
not like all is rosy on Linux either where we're still waiting for
JavaFX support and proper browser support. "

Casper.. yes on the JavaFX and I believe there will be JavaFX-for-
Linux officially before too long. Perhaps the JavaOne target date.
However "proper browser support"??? Can you explain? If your Java
comes from the JDK's then the normal plugin is available, if you're on
32-bit Linux. But even on Windows there isn't a 64-bit plugin. Also
IIRC Flash doesn't have a 64-bit plugin either. If your Java comes
from OpenJDK/IcedTea, well, unfortunately Sun's plugin wasn't open
sourced and cannot be included in an OpenJDK build. That left the
IcedTea guys with developing an alternative one derived from the
GCJWebPlugin. However there are two sides of improvement coming
soon. The new plugin is in 64-bit 6u12 bundles and will be on the 64-
bit Linux JDK's, the FCS date for 6u12 is "soon". The second is that
Joe Darcy recently announced on an openjdk mailing list that agreement
had been made internally to open source the new plugin. I don't know
what the target date is for actually releasing the open sourced
version of the new plugin however an obvious date would be JavaOne.

Reinier Zwitserloot asked: "So why have they outsourced (and continue
to keep the status quo) in regards to apple maintaining the JVM on
apple?" -- well, again, it's not an outsourcing, it's a technology
licensing deal. Apple licenses technology from Sun.

Clearly there's some truth to your later assertions... Mac is a
smaller target market etc. Apple began doing Java for Mac before OS
X, recall, as it was also on OS9 and prior releases (MRJ).

Do you expect Sun to do the Java port for IBM's various operating
systems? Or to HP-UX? Or to Irix? Or do you expect Sun to provide
the Java implementation used by BEA or SAP? No. So then why do you
expect Sun to do the Java port for Mac OS X? Or, for that matter, why
do you expect Sun to do the port to Windows? How would Sun pay for
all that effort to port to so many platforms? Porting does not come
for free, especially the QA of the ports.

By the time I joined Sun (in the 1.1.8 timeframe) the pattern had
already been set in place. Licensees make contracts with Sun for
whatever business pursuit they're aiming to do, such as IBM and their
ports to their various OS's.

Perhaps with the OpenJDK project the pattern could be changed. But
there's a lot of license based entanglements and contracts to unravel
and new agreements to forge to make that happen.

"I'm guessing that, with the openjdk and people like Landon Fuller
proving the usefulness of open sourcing java to sun, they (correctly,
in my opinion) assume that there isn't much value in spending the
resources. Sure, openjdk is just now becoming feasible, and the java-
on-os x situation has been a bit sour for a year or two now, but sun
knew all about open sourcing java 2 years ago. Business-wise, its all
sorts of sensible. "

Huh? First, Landon Fuller's SoyLatte project was not using an open
source version of Java. It used the JRL source tree's. While the JRL
is a liberal license it is not an open source license. It took a fair
bit of internal legal work to get agreements in place so that his work
could be laundered into the OpenJDK. That work is coming in through
the OpenJDK BSD-PORT project.

Second, the SoyLatte project happened AFTER the OpenJDK project was
launched.

How I take the SoyLatte project is more that it waved before Apples
nose the seriousness with which OS X using Java programmers want the
Java implementation to be kept up-to-date. I'm not sure what it
proved to Sun, however.

Weiqi Gao

unread,
Jan 27, 2009, 2:34:36 PM1/27/09
to java...@googlegroups.com
robogeek wrote:
>
> The reason Sun "took over the port" for Windows is because Microsoft
> broke the license agreement and wouldn't cooperate with Sun on the
> terms of the contract.

The original Sun JDK was available on 32-bit Windows before Microsoft
licensed Java. And every version of the Sun JDK is available on Windows.

For a while, if you are on 32-bit Windows, you had a choice of which JVM
to use: Sun's, Microsoft's, or IBM's. And browsers came with hard-coded
embedded JVMs: Netscape Navigator used the Sun JVM and Microsoft IE used
the Microsoft JVM.

--
Weiqi Gao
weiq...@gmail.com
http://www.weiqigao.com/blog/

Reply all
Reply to author
Forward
0 new messages