Do we rely too much on XP?
Earlier this year I decided to renew my commitment to learning something about Java ME. I went so far as to get a RIM Blackberry device when I had the opportunity to update my cell phone. Finding a Blackberry oriented session at JavaOne was just bonus material! I was excited to attend the session. I really wanted to learn how to develop apps for this excellent phone.
So I attended the "Developing Java ME Applications for BlackBerry" session yesterday. They have an SDK plugin for Eclipse...and they said that some have even installed the SDK under NetBeans. Great. I can develop Java applications for the BlackBerry using my favorite IDE. Perfect.
What? The Eclipse plugin only works on Windows XP...maybe Vista. Why's that? The BlackBerry session speaker says that the BlackBerry emulator was designed for XP. Won't run on the other platforms that Eclipse and NetBeans run on -- Solaris, Linux, Mac OS X. Sure, you can develop applications using Eclipse running on any OS, but you won't be able to use the emulator. Now why is that? Really, why? So, why use Eclipse as the development tool? Might as well be a Visual Studio plugin.
There's another device with an SDK that works from an Eclipse extension. Those Sentilla devices, the ones on sale here at JavaOne. Excellent. Again, I can develop a Java application for a very small device with temperature sensors, an accelerometer, and even a radio. Very cool. I can write those Java applications using Eclipse...on Windows XP only because, well hell if I know, but that's what the booth worker says.
By the way, have you noticed the preferred operating system for most of the presentations around JavaOne? It's Windows XP by far. That's my observation anyway. Your mileage may vary.
Why is that? Why is XP the preferred OS? I have an idea, but you won't like it. Linux and Solaris are just too difficult to install and maintain for the typical consumer and even the typical developer. If you know how to tweak a kernel, or compile your own driver, maybe you'll get the mouse pad to work correctly. Maybe you'll get that bluetooth headset or bluetooth mouse to work if you find and edit the right config file.
Before coming to JavaOne, I decided to replace XP on my laptop. I put Ubuntu on it. Seemed like a good idea at the time. The application package installer was easy to use. Installing Java SE 6 and then NetBeans was easy. Ubuntu found my wireless card too. No problem. No problem until yesterday. For some reason, Ubuntu refused to display my desktop taskbar and application menu at the top of the window after I logged in. Strange for sure. Since I'm new to Ubuntu, I didn't know how to debug that. I couldn't recover.
After getting my Open Solaris disk at Community One, I figured I could install Solaris. I did. It's installed. Looks a lot like Ubuntu's desktop by default, very similar. Installing the JDK wasn't as easy. I had to install the JDK from a .sh script. There wasn't any clean, easy graphical installer. I felt a little pathetic at having grown so dependent on the easy installers we have on Windows. Although Open Solaris found my wireless card, I don't think the network tools are as easy to use as on Ubuntu. And the power manager doesn't seem to work. The os sucks the battery down way too fast. And I can't get my bluetooth mouse to work either. If I were a Linux or Unix guru, maybe I'd know the right place to find the correct settings or drivers.
After I return home, I'll definitely replace XP on this laptop. Even if I could get used to the new tools, simple installers, and the idea of compiling my own applications on Linux or Solaris, I can't use the applications I really want right now. After all, I'd really like to use that Eclipse SDK for developing BlackBerry applications. I might also want to try my hand at writing an application for some other cool Java device. Too bad the tools only run on XP.