Daniel Eran Dilger
Random header image... Refresh for more!

Are Java and Flash doomed on the Mac?

Daniel Eran Dilger

Apple left Sun’s Java and Adobe’s Flash off the iPhone in 2007, resulting in a death-stroke for both in the mobile arena as the iOS attained its influential position. Will the same happen on the Mac?
Regular readers will recall I was unique in predicting that Apple would turn the mobile world upside-down by omitting support for Java and Flash, which at the time were viewed as the most promising mobile middleware platforms (next to the similarly ill-fated Symbian and BREW. I recall one reader sending me incendiary hate mail at one point insisting that an iPhone could only possibly make sense were it to be based upon Symbian).

Apart from my bleak outlook for Flash and Java among mobiles and on the iPhone in particular, everyone else in 2007 seemed quite confident that Apple would “any day now” deliver a version of Flash for the iPhone. My prediction was quite easy to make, however, because Apple was already quite unequivocally adamant that its developers not use Java or Flash because it had no plans to support either.

I’m often right, not because I’m so smart, but because I’m liberal-minded enough to accept that obvious changes are in progress, rather than conservatively maintaining that things can’t possibly change because the way they’ve always been is the only possible way they can ever be.

The iPhone Threat to Adobe, Microsoft, Sun, Real, BREW, Symbian
Gone in a Flash: More on Apple’s iPhone Web Plans

But what about the Mac?

The fact that Apple didn’t want Java or Flash on the iPhone in 2007 is almost completely unrelated to the company’s recent efforts to avoid bundling Flash on new Macs, or its stated intent to deprecate its own implementation of the Java Virtual Machine for Mac OS X and likely stop bundling it with future versions of the OS.

On the iPhone, Apple was launching a new platform it wanted to mold and own. There was little to no benefit to adding a mobile Java VM, which would only have enabled the uncertain promise of compatibility with some existing trivial Java ME software. On the other hand, adding a Java VM would have doubled the size of the iOS while requiring more resources to actually run this alternative software in tandem with Apple’s own Cocoa Touch platform. It would also have required Apple to devote a significant portion of its development resources to maintaining this substantial amount of low value code.

On the Flash side, a functionally-useful mobile variant of Adobe’s platform didn’t even exist. Steve Jobs correctly summarized at the time that there was only Flash Lite, which didn’t do what users expected of Flash, and the desktop version of Flash, which wouldn’t fit on the iPhone. Cynical critics assailed his explanation in various ways, but Jobs was right and they were wrong. Three years later, Adobe still hasn’t been able to deliver a very usable version of Flash on any mobile device, even with the help of three years of dramatic increases in the amount of processing power and memory resources available on them.

Why Steve Jobs Loves Adobe Flash

Jump ahead to 2010, and the Mac has a very different set of circumstances. Mac OS X’s Java VM isn’t really used by many desktop applications, but it is valuable to developers working on web and other server-side products that are often based on Java. Flash on the Mac is also significantly more useful and less of a performance issue on a desktop or laptop (relative to a mobile device), even if it is still a bit of a pain on the Mac.

Apple’s explanation of why it isn’t bundling Flash on new Macs isn’t that Flash isn’t well suited to run on the Mac, but rather that users can obtain the latest version directly from Adobe, just as they can obtain the latest version of Silverlight from Microsoft. Unlike iOS devices, Macs have no problem downloading a Flash runtime from Adobe.

Java is a different situation, because Apple doesn’t merely bundle Oracle’s code (as it does with Adobe’s Flash plugin); rather, Apple has historically managed significant customizations to the standard Java distribution that enable it to fit into the Mac OS X environment. This has resulted in Apple’s implementation of Java for Mac OS X trailing the official release by a significant delay, one that has increased as Apple’s interest in maintaining Java has waned.

Apple would prefer that Oracle or the community would take over Java on the Mac, because it no longer offers much value to Apple. A decade ago, having an up-to-date Java VM on the Mac was an important part of Apple’s development strategy, particularly as Java rapidly developed on its own. Apple assumed ownership of the Mac version of Java just as it later took over maintenance of the Mac’s web browser, because it didn’t want to leave this critical piece in the hands of others who might drop it due to a lack of interest.

As with Flash, Apple isn’t opposed to having Java on the Mac, it just doesn’t want to have to maintain it any longer. Rather than immediately dropping it, Apple has signaled that it will be putting its own Java implementation into maintenance mode and might possibly not even include Java in Mac OS X Lion, leaving Oracle or the community to pick up the slack. Recall that open source advocates always maintain that the community will rush in and take ownership of valuable software when it’s openly available; this will certainly test that concept.

How Oracle might kill Google’s Android and software patents all at once

Will the end result be the same as with iOS?

While Apple won’t be doing anything to block Flash or Java on the Mac, will its actions have any effect on the viability of either on the desktop? One could argue that there’s little benefit to having an older version of Flash preinstalled on new Macs given the savvy of today’s users to download plugins and updates. One could also argue that Java on the Mac is important enough to users (and to Oracle) that planets will align to deliver a functional, up-to-date version of Java for Mac OS X going forward. However, I’d like to point out that Apple is the tail that wags the dog.

Now that Apple has effectively erased any hope for Flash on mobile devices (by uprooting it on the most valuable smartphone, media player and tablet platforms, and then salting the iOS soil it would hope to grow in), the act of passively failing to preinstall it on new Macs seems downright friendly. Considering that Mac OS X only amounts to 10 percent of the PC market, the initial absence of a Flash plugin on new Macs will have much less of an impact on notebooks and desktops compared to the complete lack of Flash on iOS, which represents the most valuable majority of mobile devices. Outside of the iOS, Adobe is struggling to launch betas of Flash for the various other operating systems on mobile devices, while it enjoys a strong presence on desktop PCs, nearly of which run Windows.

However, that situation would change dramatically were Microsoft to follow Apple’s lead in dropping Flash from pre-installation on Windows PC. Apple’s “it’s for user security” explanation could give Microsoft a pass against any sort of legal challenge by Adobe, and Microsoft would certainly benefit from being able to bundle Silverlight exclusively. If Microsoft copied Apple, the installed base of Flash on the desktop would drop precipitously, putting the onus on Adobe to market and distribute Flash just like Apple has to sell QuickTime and iTunes rather than rely on Microsoft to do it for the company. Recall that Macromedia attained its initial popularity for Flash because of a bundling deal with Microsoft. What the company gives it can take away.

Even if Microsoft were to fail to follow Apple’s lead, the relatively small market share of the Mac is more influential than it may seem. Mac users are not only more influential as a marketing demographic due to greater wealth and education, but they also make up disproportionally high numbers among consumers and in education. NPD’s retail market share numbers already give Apple more than 20 percent of US market share among consumers, and in education Apple owns half or more of many segments. Turning Flash into an opt-in platform among these users would have a significant impact on how attractive Flash is to developers and advertisers, compounded by the conspicuous lack of Flash on the iPhone, iPod touch, and iPad.

It won’t take much to further erode the already stagnant mindshare of Adobe’s Flash, particularly as mobile devices continue to replace and expand upon the plateauing market for PCs. And as Apple continues to eat up market share in the mature market for PCs, the lack of Flash on new Macs will only hasten its demise. Adobe has always relied on third parties to distribute Flash for it; now it needs something to sell Flash the way the iPod helped Apple to spread the installed base of iTunes and QuickTime among PC users. I do not see Adobe successfully pulling anything off along these lines.

What about Java?

Apple doesn’t really have a adversarial relationship with Java in the way it does with Flash. Apple isn’t trying to push some Java-alternative against an established status quo the way it is working to push web standards to replace Flash. True, Apple would rather have developers use Objective-C and Cocoa rather than build Java apps, but there isn’t much direct competition. Java is already dead on the desktop, and there’s no threat to Apple’s Cocoa from Java on mobile devices. Conversely, Apple doesn’t offer any Cocoa-based server side products that challenge Java in that market; the company actually makes extensive use of Java itself in its WebObjects and other custom server-side products and services.

The reason Apple is pulling away from maintaing Java for Mac OS X isn’t to starve the platform to death (as it would like to do with Flash) or to focus attention on Cocoa (the two aren’t vying for any shared spotlight). Apple is just working to save itself some effort. Recall that somewhere around half of the vulnerabilities reported for Mac OS X by the very disingenuous group at Secunia are actually problems in Java.

Microsoft likes to make hay about vulnerability counts, and has regularly made completely false comparisons between the “vulnerabilities” in Apple’s entire distribution of Mac OS X (and all the third party and open software included in it, including Flash and Java) and a portion of the software included within the definition of Windows.

Vista vs Mac OS X Security: Why George Ou’s ZDNet Vulnerability

By not bundling a Java runtime, Apple can save itself a lot of work, shed some weight in Mac OS X, and drop responsibility for all the vulnerabilities discovered within Java itself and in Apple’s customizations to Java on the Mac. Users can keep using Apple’s existing version of Java and transition to newer builds released either by Oracle itself (which uses Java to deploy its own products on the Mac) or the community at large. Unlike Flash (or Java ME among mobile devices), nothing Apple does related to Java within Mac OS X is likely to have a significant impact on how Java is used in the server and enterprise markets where it currently thrives.

For end users however, Apple’s pulling out of Java maintenance means the company will have more resources to devote to core OS development, user interface enhancements, and new software such as iWork, Pro Apps, and the Mac App Store initiative. Issues around Java for Mac developers should solve themselves, while the question of Flash is likely to answered by a succinct “no.”


1 stormj { 10.25.10 at 4:22 pm }

The thing I don’t understand about this—and pieces talking about Apple not focusing on the Mac because its “resources” were focused on iOS—is why a company of Apple’s size has such limited resources.

Especially in this labor market, what on earth is the problem keeping them from adding resources? We’re talking about a company with billions of cash sitting around, with rumors about it buying Facebook going around, etc. etc.

Can’t they walk and chew gum at the same time?

2 radumas { 10.25.10 at 4:23 pm }

I hope SOMEBODY steps up to maintain Java on Mac. The last update murdered an important application and calls to Apple end up being answered by people who don’t know what Java is.

3 stormj { 10.25.10 at 4:24 pm }

p.s. In other words, I don’t buy that explanation, at least not without more. It’s part of a broader strategic plan in both cases.

4 stormj { 10.25.10 at 4:26 pm }

@radumas: Java has always been an overhyped resource hogging piece of shit. It’s long since past time to deprecate it. It never did what it promised, it was never any easier to code, it was always just a fail.

5 radumas { 10.25.10 at 4:33 pm }

@stormj: no matter if it’s a pos. THere are apps written in it that ran until a couple days ago. As a user, I can’t decide to switch the language of a key application that I use and there is no substitute. Better to have no update than a half-assed one that breaks things.

6 JulesLt { 10.25.10 at 4:48 pm }

Few thoughts :
1) Apple are a commercial licensee of Java, so as well as the maintenance cost, there’s a financial cost to shipping Java with each Mac sold. I would presume that the proportion of Macs that don’t run any Java software is increasing.

2) With 10.7 it looks like Apple are about to finally make a break with the Aqua GUI, which is actually where most of the work in their JDK is (and a lot of it is about producing something that looks the same as native widgets, rather than actually using native Cocoa widgets). I have a hunch that even Carbon may not be updated for 10.7, and is likely to join the list of deprecated technologies too.

3) The community will not be able to produce a Java version that offers the same native look & feel as Apple’s version without Apple’s assistance, for a lot of the reasons already identified (they won’t be able to link GPL’d code directly into Apple’s code either, meaning any open-source solution will be slightly ‘crippled by design’). None of the other commercial parties, like Oracle or IBM, will care much about spending effort on a Mac-only Java either.

My expectation is that any future versions of Java will be pretty much a baseline Java-for-Unix via X11.

4) An alternative to using OS X’s X11 implementation, could be supplying a JVM that is actually a Linux+Java VM – a similar approach to Classic Mode. Oracle already have VirtualBox. This would probably be the cheapest option to supply the ability for Macs to run desktop Java apps – at the cost of significant loss of interactivity with the native environment. (On the other hand, Parallels shows how far you can go to make a virtual OS integrate with a native one).

Neither 3 or 4 are good news for people doing Java development using Macs, but you have to admit that’s an increasingly small number of people. And option 4 would be no ‘worse’ than completely switching over to Linux (i.e. your Eclipse UI would be an X-Windows one, but you would still be able to use, say, a native OS X graphics program alongside).

7 John E { 10.25.10 at 4:58 pm }

well, for Java it’s become pretty much, who cares? it’s consumer use is minimal and generates little or no revenue for anyone, and the pros can still load it when they need to.

Flash of course is a legacy issue. consumers still need to use it and lots of people make money off it. just like i still have to install Adobe Reader because some people’s PDF’s still won’t open in Preview. pain in the butt. probably be stuck with it for 5 more years until it really dies a slow death while Apple starves it.

wish Jobs would take all that Apple cash and just buy Adobe and clean up this awful mess. Announce the end of Flash and Reader in, say, 2 years. And turn Illustrator and the rest into great products once again.

8 JulesLt { 10.25.10 at 5:10 pm }

Radumas – good point about the business/enterprise/education market – there might be little consumer software written in Java, but in some places it’s been the only way companies have been able to maintain Mac support. It’s also the type of decision that makes big budget buyers nervous about Apple.

9 FreeRange { 10.25.10 at 7:18 pm }

@stormj – what kind of a moron are you? Apple has no problem making significant developments and improvements to any of its products or its OS. Just ask the buying public. Get off you high horse and actually learn something about this company before you make such stupid comments. MSFT has 10’s of thousands more employees and spends over $3 Billion on R&D every year and look at the crap they put out. Its not about resources per say but how you deploy them and my retirement account filled with Apple stock says they are doing quite well at how they are performing at every level.

10 ashwindollar { 10.25.10 at 8:08 pm }

An important thing to note about Flash is that Microsoft hasn’t been shipping Flash with Windows either since Windows XP. That Apple includes Flash out of the box is simply a matter of convenience. If you bought a PC with Flash pre-installed, it was the OEM that did it for you. Of course Microsoft doesn’t ship Java with Windows either, but that’s because .Net competes with Java.
Oh, and it’s nice to see you writing more frequently again. I was starting to miss your unique insights.

11 harrywolf { 10.25.10 at 8:20 pm }

Apple are about quality – it wouldnt be a good idea to buy Adobe or hire more staff, if the people acquired in either case are second-grade.

The difference between a great company and an ok one – the people.

12 Mike { 10.25.10 at 8:34 pm }

Glad to see you writing more. Much better than the radio.

13 brew57 { 10.25.10 at 9:01 pm }

The way SJ handled Flash Is reality distortion field at it’s best.

iPad’s processor is barely powerful enough to browse the Web comfortably let alone handle Flash the way Laptops can. If you’ve owned an iPad for more then a few weeks, you know what I mean. So he repositioned Flash as “old” technology, just to avoid shipping an unusable tablet. And no one said that the emperor has no clothes. Now that’s magical and revolutionary indeed.

14 enzos { 10.25.10 at 9:14 pm }

Possibly it may be that the number of crash reports received by Apple involving Java has decided the issue. For example, http://forum.vodafone.co.uk/topic/70096-vmb-crashes-my-macbook-pro/

15 brew57 { 10.25.10 at 9:19 pm }

“Three years later Adobe has still not been able to deliver a usable version of Flash on any mobile device”

One may say that three years later no end or has been able to deliver a powerful enough mobile device to run Flash effectively, or browse the web as smoothly as PCs/laptops can.

It is how you look at it isn’t it? Only SJ was brilliant enough to just re-position Flash away and get away with it at least so far. It didn’t hurt to eliminate an intermediary paltform in the process. But the story is far from over. Flash won’t fade away so quickly, and once next gen mobile devices with far more capable Arm cores hit the market, the Flash absence on iOS devices may turn into a serious drag.

16 danieleran { 10.25.10 at 9:43 pm }

Hey let’s be civil in the comments.

There’s always a scarcity of resources. As long as Apple acts poor, it will efficiently distribute resources efficiently. Once you start acting like you have money, you begin throwing cash at stupid things.

That said, there are lots of things I’d rather Apple spend its money on more than a custom installation of Java that’s only being used by Eclipse server developers who don’t care about slick UI experiences anyway. I wish Apple would throw some effort at apps like Image Capture and ideas like embedding Bonjour-ready web servers in devices and licensing technologies broadly. And any number of other ideas that I’d prioritize well ahead of a Mac-native Java runtime that nobody uses apart from Limewire.

17 gus2000 { 10.25.10 at 10:41 pm }

“The other thing about Steve was that he did not respect large organizations. He felt that they were bureaucratic and ineffective…Steve had a rule that there could never be more than one hundred people on the Mac team. So if you wanted to add someone you had to take someone out. And the thinking was a typical Steve Jobs observation: “I can’t remember more than a hundred first names so I only want to be around people that I know personally. So if it gets bigger than a hundred people, it will force us to go to a different organization structure where I can’t work that way. The way I like to work is where I touch everything.” ”
– John Sculley on Steve Jobs

There are tasks that are simply impossible to accomplish without using thousands and thousands of people; the Pyramids come to mind, as does the Great Wall of China and the Hoover Dam.

But software developers are not digging ditches. They are designing and creating. Tight code requires a tight group. You start throwing thousands upon thousands of coders at a project and you get…Windows.
This is why Apple ships regular updates instead of trying to ship it all at once, with new versions every 10 years or so (cough*XP* cough).

If it sounds confusing and counter-intuitive that a small team can accomplish more than a large team, you must go immediately to Amazon.com and buy a Scott Adams book.

18 lowededwookie { 10.25.10 at 10:54 pm }

Sorry Brew57 but you’re so wrong you couldn’t be more wrong if it was the wrongest day of the wrongest month of the Chinese New Year of Wrong Wrong.

I’ve been using my iPad daily for the past month or so since I bought it and I can tell you you’re talking out a hole in your bum if you think the iPad is a slouch. I’m using Bento and FileMaker Pro, Pages, Numbers, Safari, and Mail on a daily basis and I have yet to see it slow down to unbearable like you seem to suggest.

I punish my gear gear everyday and all my gear handles it well. If developers developed slim code then you wouldn’t need huge amounts of resources. Proof was with the Amiga which I had running 16 applications in 1MB of RAM and those apps included 3D renderer, spreadsheet, paint app, word processor and a game or two.

More resources as Dan points out creates sloppiness. Look at the crap that is coming out in the gaming sector. Huge RAM and HDD resources have released pathetic games with nice graphics and linear paths instead of stunning games with amazing AI and immersive paths where you can go anywhere and do anything you want. Why can’t I blow a hole in a wall and go through that when I have a rocket launcher? Because all the processing power and RAM and HDD space have gone into pre-rendered graphics that limit the gameplay making a boring and pathetic experience.

Meanwhile some German coders develop a game that makes Quake look like the launchpad for the shuttle that moves about as quick and yet their game uses on the fly graphics generation, advanced AI, and great looking graphics and how much space is needed? 1MB of HDD.

Refinement is more important than supporting bloatware.

19 addicted44 { 10.25.10 at 10:57 pm }

@stormj – Software development is notorious because simply adding more developers does not help in development. In fact, as pointed out in many places (most famously in the book The Mythical Man Month) rapidly adding new devs (without appropriate training, and time for them to integrate) can actually cause the product quality to drop, and deployment to be delayed.

@Dan – MS will not be following Apple’s lead in dropping Flash. In fact, MS has never included Flash in Windows, and its always been a plugin that has to be added separately.

Its possible that OEMs (Dell, HP, etc) might be pre-installing Flash (I wouldn’t know. All my PCs were assembled by me) but MS doesn’t do it.

20 addicted44 { 10.25.10 at 11:00 pm }

Also, the removal of Flash from default installation is a huge deal for Apple.

It was only a few months ago that Apple was getting lambasted by the press, because the default version of Flash on Snow Leopard was one version behind the latest Adobe version, and therefore contained a huge security hole which Adobe had issued the new version for.

21 beanie { 10.25.10 at 11:29 pm }

Flash for Windows is an ActiveX control. When a user browses to a webpage with Flash, it tells you it needs Flash and ask if you would like to install it. Assuming user has admin. The user clicks install and it installs from Adobe’s site directly without the need to close the browser. Works about the same for Silverlight for Windows.

That is why Flash has such a large base on Windows. It is small and easy to install and update to new versions online for Windows. No need for bundling on Windows.

I think you do not understand how Flash is distributed on Windows. It is NOT go to Adobe, download Flash setup, shutdown browser, install Flash, and restart browser. On Windows, you install online from the browser.

22 gctwnl { 10.26.10 at 12:27 am }

I understand the rationale, but especially in the area of apps that cross the OS X / Windows divide, some are quite good. CrashPlan is a brilliant backup program, various iTunes sync programs, etc.

OS X lives in a heterogenous world, not having Java would make it less interoperable. As you say, Apple does not want an OS X without Java, but they don’t want the effort. Fine, but without that effort already being in place (as with Adobe), dropping Java does slightly damage the interoperability of the OS X platform.

As you wrote: “Apple assumed ownership of the Mac version of Java just as it later took over maintenance of the Mac’s web browser, because it didn’t want to leave this critical piece in the hands of others who might drop it due to a lack of interest.”

The question is: why do they drop ownership now? Why make yourself dependent on others? Do they think they are big enough by now that they do not need Win/Mac portable apps to attract development? Do they think dependable others are available?

23 nikster { 10.26.10 at 1:13 am }

With both products, the only thing that matters is: Are they strategically important products for Apple? And in both cases the answer is no.

Java will continue to work on OS X. I imagine what will happen now is that developers can bundle their Java apps with a Java runtime, and the whole thing makes a nice, standalone app. Previously, that wasn’t possible on the Mac, which caused major headaches as system updates might break your code. Steve Jobs thinks that Oracle will step in – but who knows. Java is certainly important for many business applications – I’d dare say a large majority of business applications that are not Windows-only.

With Flash, Apple probably figured there’s absolutely no reason in this day and age to include it in the OS. In Snow Leopard, because of overlapping release schedules, Apple shipped an old version with known security problems. Apple doesn’t want to be in that situation. And users can easily download Flash – so what’s the big deal?

24 enzos { 10.26.10 at 2:43 am }

Purity (suddha) is an important concept within much of Theravada and Mahayana Buddhism… The aim is to purify the personality of the Buddhist practitioner so that all moral and character defilements and defects (kleshas such as anger, ignorance and lust) are wiped away and Nirvana can be obtained.

Just a thought…

25 Raymond { 10.26.10 at 5:18 am }

This should make for an interesting CanSecWest contest. Without all those Flash and Java bugs to exploit how are the tech press going to come up with all those sensational headers about macs getting hacked in seconds. I bet they change the rules to have a “typical” mac used instead of a fresh installation.

26 warlock7 { 10.26.10 at 5:26 am }

As a developer, I would hate to see Apple drop Java. I find it to be an incredibly useful tool to verify that my code is truly portable, as I expect it to be.

27 mi_nielsen { 10.26.10 at 5:44 am }

Hi all

Dan is spot on with Apples reasons for not supporting Java…almost. I am a J2EE developer and only use Java as a server coding environment. Mac os X is the best desktop developer machine with its BSD layer and good command line. Eclipse works OK and for Java server development it is a good setup.

I agree with some of the other comments on that it is the desktop part of Java that is making the ports take time, but who needs Java desktop apps today. I do think that Apple with this move seek to have the community / Oracle to do the ports, and the GUI part will look ugly, X11 etc. This will remove Java as a alternative Mac App development environment, and make XCode Obj-c and cocoa that the only platform.

I do think that Apple still wants a up to date version of Java so that tomcat etc. works well on the Mac.

28 radumas { 10.26.10 at 6:55 am }

Re: latest version of Java from Apple is buggy.

Per counsel, I submitted my crash log for the application that Java now breaks to bugreports.apple.com, which itself has bugs:
“An error has occurred. Please report the error to Apple Inc. by emailing the error detail to devbugs@apple.com

When you sent to that email address, it responds that bugs are only accepted via bugreports@apple.com

No wonder they have no bug reports. Everything is perfect.

29 SkyTree { 10.26.10 at 8:05 am }

Let’s get down to basics. Extensions or Plug-ins such as Flash or Java were developed to compensate for the FAILURE of computer operating systems, web browsers and other software to offer the functionality that users demanded.

Macromedia’s Flash allowed users of various OS versions and web browsers to view video or simple games over the internet when their OS or web browser could not. Now modern computer OS and web browsers can handle video or simple games over the internet without extensions or plug-ins, so the choice is between OS+browser+plugin versus OS+browser. If the latter works, the plugin is obsolete.

If the choice is that obvious, why is it that Apple gets it and others do not?

30 kdaeseok { 10.26.10 at 11:11 am }

“However, that situation would change dramatically were Microsoft to follow Apple’s lead in dropping Flash from pre-installation on Windows PC.”

But what do you mean? Windows never had Flash pre-installed. You always have to install it.

31 rufwork { 10.26.10 at 11:43 am }

Ah Dilger, the Jim Rome of Apple journaltisement.

The only problem is that developers use Java, not just to develop, but also for using xplat coding apps — like Eclipse or phpStorm. Or SQuirreL-SQL. Java’s a place that xplat partnerships can happen, even if the end result is a tool for coding [non-Java] rather than an end-user, client-facing app.

And the more Java developers you have on OS X, the more developers you’ll have considering and learning Objective-C.

So either Apple already knows Oracle’s going to support Mac Java (which is a perfect world) or they’re potentially misstepping, taking one too many lessons from the iPad back to the Mac.

32 Maniac { 10.26.10 at 12:40 pm }

@rufwork “And the more Java developers you have on OS X, the more developers you’ll have considering and learning Objective-C.”

The more iOS programmers there are, the better for Mac OS. Because iOS programmers already know Objective-C and Cocoa.

33 Maniac { 10.26.10 at 12:43 pm }

@ SkyTree “If the choice is that obvious, why is it that Apple gets it and others do not?”

Inertia and fear are why others do not. Apple isn’t afraid to kill off legacy technologies and transition their developers and users to new ones (if necessary.) Other companies are afraid to do that.

34 rufwork { 10.26.10 at 1:21 pm }

@Maniac “The more iOS programmers there are, the better for Mac OS. Because iOS programmers already know Objective-C and Cocoa.”

That’s my point. I’m learning Obj-C *because* I could code xAMP stack and Java on the Mac and already had OS X handy to install XCode. This isn’t an either-or, and I’m not one that thinks putting XCode on Windows is a good idea. Having Java and Java tools for other platforms brings in more potential Obj-C developers. Having a Mac be *the* “kewl” dev platform for all short of .NET is A Good Thing. That’s what OS X now, with disproportionately high representation at JavaOne, for example.

I don’t think Apple would throw that away unless they knew Oracle was coming through with some support. Jobs could be strong-arming Oracle — as you say, Apple’s not scared to pitch serial into the gutter or resist Blu-Ray — but I hope not.

35 MobileGeorge { 10.26.10 at 3:26 pm }

“Apple doesn’t really have a adversarial relationship with Java in the way it does with Flash.”

That’s putting it mildly. Apple’s WebObjects framework which is used to power the iTunes Store is written in Java.

36 MobileGeorge { 10.26.10 at 3:41 pm }

…should have stated that you mentioned WebObjects too but wanted to point out to people who may not know that the iTunes/App Store, through WebObjects, relies on Java running on Apple servers.

37 jdeleon { 10.26.10 at 3:47 pm }

Daniel. Can I ask you a question way out of left field?

Will it ever be possible that the Internet as we know it will be replaced by ‘The Grid”. I know it was a connection point for all the Academia for that Cern Project. ( Don’t hear much about that now).

If that were to happen anytime soon. Wouldn’t that change a lot of things technically speaking?

Sorry again for the interrupt in this subject. Feel free to ignore me.

38 gctwnl { 10.26.10 at 4:23 pm }

All of Cocoa, including all the kits like EOF, WOF (WebObjects) older deprecated kits like SoundKit, MusicKit were developed in Objective-C, not Java. At some point, NeXT believed that it was important for their success in the enterprise that they had to add a Java-API to the frameworks. I think, this was during the OPENSTEP period when NeXT collaborated with Sun. Java (the language) as a way to access the frameworks was never a huge success, technically. Apple later decided to drop Java support in Cocoa again and rely on Objective-C only.

So, the store uses WebObjects. But I would not be so sure they are using Java to access the WOF (WebObjects Framework) nor that WOF itself is written in Java (it was developed in Objective-C after all).

39 gctwnl { 10.26.10 at 4:27 pm }

Hmm, I seem to be mistaken. According to Wikipedia, WOF was written in Java.

40 danieleran { 10.26.10 at 10:59 pm }

(Correct me if I have anything wrong, but…) WebObjects was originally Obj-C, essentially a client/server version of NeXT’s Yellow Box (Cocoa) where apps ran on a web server with their interface rendered in HTML for the remote client.

It wasn’t until years after Apple bought NeXT that WO was completely rewritten in Java, at release 5.0 in 2001. After that, WebObjects apps were implemented as serverlets that could run on any Java app server.

While Apple’s other attempts to court Java developers on the Mac OS X desktop were mostly scuttled (such as the Cocoa-Java bridge), there was no benefit in doing all the work to revert WO to Obj-C.

Portions of the WO technology portfolio were salvaged for the desktop however, such as EOF, which was essentially reimplemented on Mac OS X as Cocoa’s Core Data.

41 gctwnl { 10.26.10 at 11:36 pm }

I would have called DO (Distributed Objects) the client-server version of Cocoa (née AppKit etc.) and I think Yellow Box was the name for NeXT’s frameworks and an Obj-C runtime running on Windows, but essentially I think you are correct. But I am not certain.

Still, I think Mac OS X is substantially better off with Java, won’t you agree?

42 brew57 { 10.27.10 at 11:44 am }


>>Sorry Brew57 but you’re so wrong you couldn’t be more wrong if it was the wrongest day of the wrongest month of the Chinese New Year of Wrong Wrong.

Browse browse the web web much much? If you do, you’d probably notice how iPAD Safari often freezes downloading certain websites or even playing (non Flash) video. Same on iPhone (and I suspect all current ARM-powered devices), but it is much more of an issue on an iPAD – an otherwise ideal device for Web browsing.

You got to hand it to Steve for being able to ship an otherwise crippled web-browsing device without anyone noticing.

And publishing loud statistics about how most of Web video has moved to html5, doesn’t help one in the real browsing world where one constantly encounters Falsh video and Flash-p0wered features. (Browse popular news and financial sites much? How about Yahoo Interactive Stock chart? I can go on an on.)

On can call Flash all kinds of bad names, but the reality is that it is a part of the real-world Web and is not going away anytime soon. Steve Jobs has done a masterful marketing job diverting the press to discussing Apple vs Adobe “spat” and away from the fact that iPAD (and all current ARM-based devices) are underpowered to run the real Internet as it is.

But once the next gen of ARM devices hits the market and combined with Adobe’s Flash improvement, the lack of Flash support on iOS will be exposed for what it is – a big gaping functionality hole for the rest of us who just want to browe the real web.

PS. As for your reference to my “a hole” – I am sure it is much cleaner then your mouth or typing fingers.

43 lowededwookie { 10.27.10 at 8:21 pm }

Sorry man you fail again.

I have no problems surfing the net or watching video at all. It must just be you.

The only times it has issues is when I’m in a poor signal area which will always affect downloading of anything.

I suggest if it gets too much for you move to an area that has great cellphone coverage but stop spreading FUD because I can name heaps of people who have no issues and they’re using it for just normal stuff not what I’m doing.

44 berult { 10.27.10 at 8:23 pm }

The process of learning to deal with a Flash-free Web is well under way. 125 million idevices and counting; 54% HTML5 web penetration and growing. And easy, de facto access to Flash plug-in through OSX has been cut off from future OS installs.

Flash and Java’s counterculture within Apple’s business rationale is rapidly eroding while Apple’s mindshare is on exponential mode. Flash is “prime mindshare” crippled, a crucial step into assured oblivion. Nothing personal, a pure Business Model sequitur execution. 

45 Brian Willoughby { 10.27.10 at 10:46 pm }

You weren’t wrong, so Wikipedia must be. Their history starts in 2005, but I have documentation dating back to 1996, and I got started late. WOF was originally written purely in Objective-C, and EOF was already available on the desktop as a replacement for DbKit.

When Java was first added to WebObjects, it stood alongside Objective-C. You could actually create ObjC classes which inherited from Java, and Java classes which inherited from ObjC. The problem with Java, though, is that it required a monolithic library due to the lack of categories and other polymorphism. In any event, ObjC was eventually dropped, but Apple had to maintain the ObjC version in their catalog of purchasable items for those customers who had developed sites in ObjC. So, WOF was not written in Java, it was written in ObjC and ported to Java.

P.S. Dell got huge in 1996 as a WebObjects-based internet site.

46 gctwnl { 10.28.10 at 2:02 am }

Wikipedia has the whole story, I was wrong to assume that WOF is still in Obj-C.

I was there too (as of 1990)


47 macsdounix { 10.28.10 at 7:59 pm }

Because I admire your writing quite a bit I promise to try never again after today to rip you for your political leanings. That said, I must tell you that the following probably is the most-tortured paragraph, from a logic perspective, you ever have written:

“I’m often right, not because I’m so smart, but because I’m liberal-minded enough to accept that obvious changes are in progress, rather than conservatively maintaining that things can’t possibly change because the way they’ve always been is the only possible way they can ever be.”

OK. OK. We get it. You think “liberal” is good. You think “conservative” is bad. Now, get over yourself and stick to discussing things about which you can write intelligently, like, say, about Flash and Java.

48 Brian Willoughby { 10.28.10 at 8:52 pm }

I have to agree with MacsDoUnix. I don’t want to turn this fine column into a political debate, but it has been clear for decades that both liberals and conservatives suffer from viewing politics within a one-dimensional perspective. Society, including politics and economics, is way more complex than just conservative and liberal. Just like it’s more complex than Motorola vs. Intel, or ARM vs. Intel, or Adobe vs. Apple, or Microsoft vs. Apple.

When you write about the areas of the technology industry where Apple plays, I very rarely have even the slightest of complaints about your information and understanding. But every political comment in this column so far has been so ill-informed that it has made me doubt your technical abilities. Everyone seems to be sending a consistent message: Stick to what you know well, because you’re clearly ahead of the rest of the press when it comes to technology. The rest is just a soap box.

49 gslusher { 10.28.10 at 9:38 pm }

@rufwork: “So either Apple already knows Oracle’s going to support Mac Java (which is a perfect world)”

Purportedly, Jobs & Ellison are good buddies, so they may have worked this out in private. Oracle may be waiting to announce until they have a Mac version of Java ready to distribute.

@macsdounix: Do look up the definition of “liberal-minded.” It has nothing, at all, to do with left/right politics. Modern political conservatives are often NOT “conservative” in their thinking, as Daniel described it. In politics, liberal vs conservative refers to opinions/stances on issues like the proper role of government, individual freedoms (economic and civil), and the role/position of corporations. That’s NOT what Daniel was talking about, though I suspect that he knew that he’d raise some hackles on those who are always on the lookout for any whiff of politics.

50 berult { 10.29.10 at 9:14 am }

Every once in a while Life leads us across an inflection point of sort. Jobs’ vision is one such. Henceforth, in tech and ancillaries, what was once complex and out of a layman’s reach becomes so transparent and obvious to many.

Mozart to the Classical Period; Einstein to Classical Physics; John Stewart Mills to Economics; … : all inflection points from the inaudible to a sweet sounding simplicity. And the World hops along from those points on, the same old self and yet forever different.

It’s a rare moment in History when two such inflection points congregate into momentous causality. The present President of the United States, whether one accepts it or not, shrinks the World to its inherent human simplicity. I feel it, the World at large feels it.

Jobs and Obama tweak the World to their visions. The dialectical empowerment is too great to easily dismiss a bandwagon cross-pollination. Don’t blame the messenger, laud the bridge over effort between his message and the morphing timeline!

You must log in to post a comment.