I “m typing this while sitting at the Sun “s Worldwide Education and Research Conference and listening to the early morning talk by James Gosling in New York City. I do not have time to make my notes pretty, so here “s a raw version of the notes:
There are Java universes: Enterprise, Standard, Embedded, Card
The USA is a third-world country when it comes to cell phones
There are 1.2B Java cell phones and 1.5B smart cards
Java is a homogeneous view of a heterogeneous reality
Java is a conceptual framework
Brazilian healthcare: 120 mil people in LDAP database and access it with Java
Java is taught everywhere. Taken over from Pascal: you can learn the language and actually use it after school.
People learn Java and get employed
James uses OS X , cause Apple makes laptops that do not suck.
With Java you learn once, work anywhere
Complexity hurts Java. The language itself is simple, but the enterprise edition is getting complex. Tools make the whole environment work smoothly.
There are 5M m professional Java developers in the world
Java has standards:
a) Spec lead and expert group (what is it for? What does it do?),
b) reference implementation (can it be built? A sample code)
c) compatibility test suite (is my implementation correct?)
Engineering teams work in every continent Engineers from StPetersburg, collaborate with engineers in CA, results are amazing
Java tools:
For the corp developer: Java Studio Creator
For the enterprise developer: Java Studio Enterprise
For the C/C++/Fortran developer: Sun Studio, full native environment
For the Java Expert: NetBeans, Open source dynamic Java IDE
All these tools are cross platform and free!
BlueJ IDE is designed for teaching programming and now it “s integrated into NetBeans, which allows you to go from your basic learning lessons to development of the Enterprise systems.
Project Mackinac: the real-time Java platform
Real-time Java is used in the extreme vewrsion of real time, i.e. flight control systems: Real time hotspot, controlling physical systems, complex sensors controls, highly deterministic timing (despite garbage collection). The airplane is a Web service
It “s disturbing how few people take algorithm courses. Pay attention to multi-threading when you write your components. Frameworks do multi-threading, but developers do not.
Service component architecture (SCA) is about how you manage and support SOA.
Java is not a product of Sun Microsystems, it a community process driven by multiple institutions around the world.
There was about 200 people in the auditorium. I was the only person who got to ask James a question.
Q: There are many new programming languages these days. Do you feel that Java is in danger?
A: No, Java is not in danger. Scripting lang like PHP and Ruby get a lot of power in specialization. If you need to develop a Web page, they are good, but they do not scale. a+b+c in Java has huge lead in terms of performance over all these languages. Sun is trying to develop tools for simplicity while maintaining the power.With PHP you can write a Web presentation layer, but not interplanetary navigation.C# it “s hard to criticize, they just copied the Java spec, and hopelessly stuck in the only platform.
That “s all folks!