It is interesting how much debate the iPad has caused. I have to admit that I have actually found this thread pretty therapeutic, because I had very mixed emotions about the announcement myself. On one hand I could see the iPad as a next generation device that brings an innovative new form factor and opens up hundreds of new potential applications. On the other hand I had a very guttural reaction to the closed nature of the device... something I have had a hard time putting in words.

I finally figured out what I really feel, and it is a sinking disappointment... This is exactly the same feeling that I had a decade ago when I made the decision to go 100% with Java and retire my Macs, and I can see the same mistakes being repeated here.

First a little background on me... like a lot of you I grew up on a keyboard, writing applications on my computer (a little Macintosh 512K Enhanced) while the other kids were busy in the playground. My family didn't have a lot, but they were able to feed my habit with programming books (I have the full Inside Macintosh collection), IDEs (Pascal and C++), and a small hardware upgrade here or there. I was always looking for ways to push the edge of what the hardware was capable of, and built some very useful applications for myself and the schools I attended.

When I got to college I was exposed to a much larger ecosystem of computing. Seeing real multi-processing on Unix systems was a dream come true (it was hard to imagine how I lived with unprotected memory where my application bugs caused the entire machine to crash...). Also, the gamut of applications and software available to my PC using friends was mind boggling compared to the walled garden I was living in. The outlet which brought all these things together was Java... it was still in its infancy, but it ran on all my Macs, the university Unix systems, and my friends' PCs equally well. It also brought in a whole new level of programming productivity with garbage collection and a fully Object Oriented set of libraries.

There was one big difference between Java support on other systems and Macs... and that was the long lag time in upgrades. I am sure you have all experienced the pain of trying to develop or release applications across multiple platforms only to be thwarted by features or capabilities you need in the latest Java release, but are not supported on Mac OS. In the early days the rate of change of the language and libraries was tremendous, so this was more than just an inconvenience, it was a showstopper for anyone who was serious about Java.

As a result I made the hard decision to break up with Apple and move on to a mainstream PC. For Java development it was a dream... I could buy a lot more hardware for my money and the Windows builds of Java were released simultaneously with the Sun Unix releases. Also, I was just starting out with open source software and being able to dual boot with Linux and run 100% free software was lots of fun. The biggest disappointment was that Apple could not open up their platform fast enough to take advantage of all the great advances happening around them.

Fast forward to today, and I see a lot of the same mistakes being repeated. I want to love the iPhone, iPad, and their mobile platform, but it is a closed, proprietary system. It doesn't run technologies that matter to me (Flash / Java), app development is still in the stone age (Objective C pales compared to Java/Dalvik), and it is starting to face some serious competition from devices that understand that multi-tasking is important. Apple has produced a market condition under which the entire industry is conspiring against them from the handset manufacturers (who cannot produce devices that run the Apple OS) to the carriers (who don't get a dime from the millions of app sales happening).

So in the end I would love to see Apple succeed and bring in a new era of modern computing. I hope they can see the light and start to reduce restrictions on app deployment and supported technologies so that they are competitive going forward. However if they don't, I am afraid that their platform will become a niche player once again.

Cheers,
--
--Steve
blog: http://steveonjava.com/

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Reply via email to