What Next to Learn: Embedded Java
Dr. James Gosling, who led the early '90s Sun Microsystems team that created Java, and his colleague, Sun senior staff engineer Greg Bollella, addressed the audience at the annual Embedded Systems Conference in San Francisco in April of this year and suggested that embedded Java will be the fastest-growing use of the language in the years to come.
"In languages like C and C++, when things fail in mysterious ways, as they often do, it's often very difficult to get to the source of the problem," Gosling said. "Java, while being derivative of the C language, is much more transparent in its architecture, meaning that it is easier and faster for people on a development team to find and kill the bug. This speeds up the project and makes the app more stable. With so many new embedded systems about to go into things like cars, phones, handhelds—you name it—we need good, clean, simple apps that work, that are reliable, and that work across many systems." (You can get more from Java creator James Gosling in our exclusive Q&A interview.)
Gosling and Bollella described embedded systems development as "the new frontier in which predictable execution takes precedence" over other system attributes, such as speed, bandwidth and payload-carrying ability. They explained how Java enables this through its Real Time Specification for Java (RTSJ), which will provide developers with the advantages and productivity gains of the Java language and platform. The specification is being debated and edited by the Java Community Process and still has a ways to go (most likely several months) before final approval and implementation.
The take-away message: Smart developers will get familiar with this spec sooner rather than later. The number of jobs and the salaries they will pay will continue to be very attractive in the years to come.
Where to Get Java Training
Many programmers learn new languages on their own time, either by reading books on the subject or using tutorials. A more efficient way would be to learn Java through class instruction and/or online courses. DevX, Sun Educational Services, jGuru, LearningPatterns.com, DevelopMentor, and others provide formal training at various levels.