What's hot in James' Tech Day at JavaOne
The huge projection screen at the front of the hall seemed to be a cut above what it's been in the past, in terms of brightness, color gamut, and resolution. When will I be able to turn the wall in front of my desk into a giant display? Sun Labs showed me a demo some months ago which mosaics several LCD projectors together to do just that. I'm ready... somehow staring at even a 20-something-inch LCD seems so quaint, really...
Siemens has a Java-enabled cell phone with serial and digital outputs, intended for OEMS to design into their own devices. It looks like a typical development board with easy access to system signals for quick protoyping. If the price is right I want one. This sort of product turns a GSM cell phone into a pluggable network-enabling functional block for hardware which can't attach to ethernet.
GE Healthcare showed some spiffy looking graphics screens of x-ray and CT data, all programmed in Java. It's nice to see that Java's graphics APIs are considered mature and rich enough for a major corporation to design a whole line of mission-critical products around them.
JSR-209 - Advanced Mobile Development - promises to make mobile devices look a lot more like standard J2SE apps with a subset of Java 2D and Swing. This includes "real" threads, I/O, and network stack. Let's face it, the resources in cell phones have come a long way since the J2ME and MIDP specs were conceived, so the hardware capability has been in the phones for a year or two. Phone color screens can now be as good as the best PDAs - in fact, in devices like the Treo, they are one and the same.
JSR1 - Real Time Java - is getting a major enhancement with 2.0, which adds things like realtime garbage collection (based on work at Lund University in Sweden). Threads which need to, can pre-empt the GC, while including provision to be sure those threads don't run out of available heap while doing so. Greg Bollella has been the real-time evangelist at Sun for the last several years. It's good to see Sun recognize the importance of real-time, industrial applications. If Java is to be truly pervasive, it can't just settle for the "80% solution" - it also needs to address the more arcane areas of the market. In reality, real-time systems are almost always connected to non- real-time systems, and you'd like to be able to use the same language and APIs across your entire multi-tier application.
The slot car contest (using real-time Java) was won by a group of German high school students.
Perrone Robotics' "Tommy" Darpa Challenge Vehicle was a big draw, the subject of a Tuesday Technical Session, and won a 2006 Duke award. The vehicle uses real time Java, running on low-cost, off-the-shelf hardware, including two JStamp controllers. Paul's basic approach is "simplicity" and it works very well. They spent $60,000 on the whole project, and went from start to finish in about 10 months. This is a fraction of the time and resources spent by other teams. Tommy 2 is gearing up for the 2007 Urban Challenge. Paul is definitely a "the cup is half full" kind of guy. Sun is now officially one of the sponsors of Perrone Robotics, so Java should be a major contender in the Urban Challenge.