Dear Mr. Jobs,
As I think about this Mac Java deprecation issue, I'm reminded of my own story of making the switch to the Mac platform, and how your investment in the Java platform led to that switch.
Rewind the clock six years, and ten developers at work were developing a large, multi-year, cross-platform Java Swing application. Until this time I had always used DOS, Windows, and many different Unix computers, but in 2005 nobody on the development team wanted to test on the Mac platform, so I stepped in and started working with it myself. While I grew to like the Mac OS X UI and the real Unix shell, and I thought many OS X features were years ahead of Windows, the PowerPC systems were relatively slow, and Office integration was not very good.
That being said, as a developer, I liked that the Mac worked with Java, Ruby, C, and many other programming languages, and at some point I vowed that if Mac systems ever ran faster on Intel chips I'd buy a laptop.
In 2006 Apple made the switch to Intel, and I bought my first Mac, one of the first generation MacBook Pro models. While people at work ridiculed me for buying a Mac, I started writing writing Mac/Java/Swing code on the Mac with IntelliJ, and life was good. Our large Java/Swing project was rolling along, and since I was now comfortable with OS X UI, I learned all I could about making Java apps work like native Mac apps. We also started other Java/Swing projects that needed to run on both Mac OS X and Windows.
While buying my first MacBook Pro was essentially an experiment, once I was satisfied with the experience, I also bought an iMac to develop on, and eventually helped buy iMac and MacBook systems for friends and family. Shoot, I even helped sell some MacBook systems at BestBuy one day when I thought the salesperson was doing a terrible job of demonstrating them.
Over time I also learned AppleScript, and then started digging into Cocoa and Objective-C development, eventually writing apps for the Mac and iPhone platforms.
The summary of my story looks like this:
- I needed to learn to use a Mac on a Java development project at work because nobody else wanted to touch a Mac in 2004.
- I bought my first Mac when Apple switched to Intel chips.
- I enjoyed developing Java, Ruby, and PHP apps on the Mac.
- As a result, I helped other people buy Macs.
- As a result of being a developer and owning a Mac, I learned AppleScript and Cocoa, and started writing native Mac and iPhone applications.
I hope you can see that this issue of Java support on Mac OS X isn't so much a "ball and chain" as it is goodwill (or a marketing investment, if you prefer). There is a lot of goodwill karma in this cycle: Apple has been good to Java developers with their Mac Java support, and developers in return have been good to Apple, both in promoting the Mac platform and in adding Cocoa to our toolbelts.
With continued Mac Java support you will continue this cycle of goodwill, but without Java support, the Mac will no longer be a great developer environment, and when I need to develop Java applications, I'll be forced to use Windows again (*shudders*).
My company makes a client/server iPhone app. The client side is Objective-C. The server side is Java. Today, using a Mac, I can work on both projects at the same time on the same computer. Even on a single laptop if need be.
Next year, I'm going to have to have a Mac for client side and Windows for server side. If I'm traveling and working on my laptop, I'll have to reboot to switch between client and server development. Ugly.