RealTime IT News

Sun's Real Time Java Challenge is � Slot Cars?

MENLO PARK, CALIF. -- Sun Microsystems is going to have a bit of fun at its JavaOne conference later this month with the first Slot Car Programming Challenge.

The purpose behind the Challenge is a bit more serious, however. Sun says it wants attendees to experience the Real Time Java (RTJ, also known as RTJS, or Real Time Java Specification) version of Java.

"One of the problems with Real Time Java is that everyone says it's really hard to use," said Greg Bollella, a distinguished engineer at Sun involved in the Slot Car challenge. "We're saying it's very easy to get started with, though it can get harder later [depending on the complexity of the project]."

He said RTJ should be mostly straightforward to work in for experienced Java programmers.

Sun doesn't expect a large number of RTJ programmers to be at JavaOne and readily admits the programming language has a narrow following. But where it is used and can be used are in significant areas of the economy, such as stock trading and telecommunications.

"Stock traders tells us they are in a technology arms race versus the competition," said Bollella in an interview at a major Sun facility here where a demo track connected to a programming workstation is installed.

While Java and other languages are suitable for Web and business computing needs, Bollella said RTJ has advantages in areas where speed isn't always as important as predictability. In a transportation or stock trading system, for example, you want to be able to predict certain conditions like scheduling and precise timing.

One example of RTJ's potential, Bollella predicts that in ten years emergency vehicles won't have to stop for red lights. "We'll have real time telemetry and the emergency vehicles can just go without sirens or waiting for red lights."

Although there are sensors programmed for street lights now, Bollella said they generally don't work very well.

"We've all had the experience of being the only car around and we still have to wait for the light to change. I suspect the reason is [the system's designers] used crappy programming languages."

So why the Slot Car Programming Challenge?

"We want to get engineers to think about something else," said James Gosling, a Sun vice president and Fellow, who did the original design of Java and implemented its original compiler and virtual machine. Gosling has also been a recent contributor to RTJ.

Slot car racing, though a long way from its glory days in the 1960s, is still popular in some circles.

The Slot Car Programming Challenge involves the small, 1/24 scale cars with electric motors that move around on a track. Normally, these cars are driven through a small handheld controller that you push down to send voltage to the car to make it go faster, and lift up to slow it down.

As in the classic controller-driven race, the challenge for RTJ programmers is to make it around the track as fast as possible without going so fast around the corners the car wipes out.

However, the Slot Car Programming challenge is a little different. At JavaOne, Sun will have 100-200 feet of race track embedded with 200 sensors. The program can detect whether or not the car is over a sensor, but it can't tell which sensor. All the sensors will be merged together.

Developers who enter the Challenge have to write a polling loop that gathers the sensor data and continually monitors whether the car is over a sensor. Sun will give prizes to the top ten best times and plans to have the three finalists race on stage at the event.

"A lot of [developers] have an amazingly weak grasp of physics," said Gosling. "We've become a much more connected world and there's a lot more to program for than Web services."