| Sign In/My Account | View Cart |
It's great being a senior here at Java University. Hanging out during breaks with familiar faces, comparing notes on the different classes. Catching up with a favorite instructor from years gone by. Checking out the new classes and the changes to existing classes. What a great way to spend the two days before JavaOne. Pick a topic or two that I'd like to know more about and take an intensive, code-based, lecture-style class taught by an instructor with real experience with the topic.
Attendence is down this year. Although these courses scaled well when there were 500 or more students in a class, the more intimate setting this year meant that instructors were able to take more questions from the audience and were able to better tailor their presentations to the reactions of the students. Two hallmarks of Java University are the accessibility of the instructors and the responsiveness of the administrators. The Sun Ed. staff constantly checks with students to make sure attendees' needs are being met.
The best advice my dad ever gave me before I headed off to college was that I should find out who the really good instructors were and take their classes, even if I wasn't really interested in the subject matter. You may not have that freedom; but in the future, if you're trying to decide between two equally-appealing classes at Java University, try to find out a little about the instructors. All of the Java U. faculty is competent, qualified, and knowledgeable. Some, however, communicate this knowledge better than others.
Peter Haggar -- a senior software enginner with IBM -- is a popular instructor whose course in "Advanced Java Programming Language Techniques" provides a wide assortment of tips for writing efficient and robust code. While he presents code examples and explanatory slides, much of the impact of Haggar's presentation comes from actually seeing his "before" and "after" code running. Based on his book, Practical Java Programming Guide, the course is refreshed and updated each time he presents it.
Philip Heller, a Java consultant and trainer, has presented the Sun Certified Programmer preparation class for years. The course has been boiled down from two days to one, which allows students to take a different class on the other day of Java University. The course is designed for experienced programmers who are interested in preparing for the exam. Heller presents material that helps point out common places where points are lost on the exam. Heller's examples are memorable and his presentation makes it clear why he continues to be a favorite instructor at Java U.
It's hard to teach classes on emerging technology. Todd Greanier's course on "Developing Solutions Using Java" was full of material relevant to most Java developers that are beginning to use XML in their applications. Grenier, a longtime Java developer and trainer, is an engaging instructor who works well with his class. His examples were clear and could easily be modified to the needs of the students. They were, however, beginning to show their age. His last section looked forward at coming technologies that, by now, are already released and widely used. Grenier could take a page from Haggar's book and refresh his slides for each semester. In addition, there are technologies, such as the widely used JDOM, that could be integrated in the class.
|
Related Reading
Java Enterprise in a Nutshell |
The staff at Java University are very good at choosing domain experts to teach their classes. For the class in "Servlets and JavaServer Pages," they chose Marty Hall, senior computer scientist at Johns Hopkins University's Applied Physics Lab and the author of three books for Sun Press, including Core Servlets and JavaServer Pages and More Servlets and JavaServer Pages. For the components course, Java U. invited back Sam Patterson, CEO of Component Source, and Faiz Arni of InferData Corp.. Patterson delivered the business case for using components, while Arni delivered the EJB tutorial. Sun employees taught the course on "Design Patterns for J2EE" and the preparation course for the Architect Certification exam.
Jim Farley, author of O'Reilly's Java Enterprise Computing and coauthor of Java Enterprise in a Nutshell, compared Sun's J2EE with Microsoft's .NET. Considering that the class was on Sun's dime, you might expect such a comparison to be biased, but Farley was very even-handed. He compared the agendas of each side, as well as the frameworks, development philosophies, value propositions, and handicaps. For J2EE, he argued that open standards mean that Java evolves at a "consensus pace," while the market moves at a quicker pace. Farley pointed out the need to balance the needs of participants in the community process with the realistic requirements of getting things done. For example, he said, the Logging APIs spec ignored some of the input from the community in favor of a quicker release. On the other hand, .NET can innovate more easily, but developers are dependent on Microsoft, and an exit strategy is difficult. Much of the day was spent comparing code from actual enterprise applications.
Keeping with JavaOne's emphasis on Web services, Java U. hosted a day-long class by Sun Java technology evangelists Sang Shin and Carol McDonald. Following a furious pace of more than a slide per minute, the duo alternated in presenting details of much of the underpinnings of Web services. After a Sun-oriented introduction, the evangelists gave introductions to SOAP, WSDL, and UDDI. Most of the remainder of the day was spent on ebXML and the Java APIs for XML Messaging, Remote Procedure Calls, and Registries (JAXM, JAX-RPC, and JAXR). The material featured frequent demos and pointers to the relevant JSRs.
Now that JXTA is a year old, there is more interest at JavaOne in finding out what this technology is about. Members of the Sun JXTA team presented an introduction to writing JXTA applications. They presented JXTA as an organic, peer-propogated, resilient community with no central point. In differentiating JXTA and Jini, the speakers said that JXTA is a network infrastructure, while Jini is a service infrastructure one level up. The speakers brought many interesting examples from their experience in developing the technology. Engineering manager Bernard Traversat explained why you may want to base your trust model on behavior rather than credentials. For example, Traversat said, if someone with a police badge demands you to hand over your money, you might reconsider whether you trust them just because they have a badge; behavior can negate the trust brought by credentials.
Part of JXTA's security results from information being replicated; there is no single target to attack. Having no centralized servers also mean that security for the entire system can't be compromised because of a breach on a single server. The day was full of examples like these, coupled with code and explanations.
I've learned a lot in the past four years. I'm glad that I've been careful not to accumlate enough credits to graduate. That way I can come back next year.
Peter Haggar's Practical Java Programming Guide (Addison-Wesley)
Marty Hall's Core Servlets and JavaServer Pages and More Servlets and JavaServer Pages (Sun Press)
Jim Farley's Java Distributed Computing (O'Reilly)
Daniel H. Steinberg is the editor for the new series of Mac Developer titles for the Pragmatic Programmers. He writes feature articles for Apple's ADC web site and is a regular contributor to Mac Devcenter. He has presented at Apple's Worldwide Developer Conference, MacWorld, MacHack and other Mac developer conferences.
Return to ONJava.com.