Owned by @Macarlo Networks, Inc.
ONLINE SINCE 1997

 

 
Now you can register your domain here at special price!

Java Lobby
Online


Macarlo Now Hosts 2 Shows:

http://macarlo.com
Hardware & Software, News & Reviews
OVER
30 MILLION VISITORS ON 2002!!
http://macarlo.net
Web Design & Hosting on UNIX Standard 

In Affiliation with CNET, Inc.

@Macarlo's Java Portal

Host for Very Special People?
 

HOST ME NOW!!

=@MACARLO MICROSOFT=  =@MACARLO YAHOO=  =@MACARLO WEBALIAS=  =@MACARLO ALTAVISTA=

 

 CodeBrain.com Free Java

NetBeans First Day Special Report 2005



JavaOne Day 2 Special Report 2005

Tuesday, June 28, 2005- Special Edition

21 Ways to Use Spreadsheets in Java Applications

Intersystems Logo Intersystems logo Deliver richly formatted Excel reports. Use Excel files on servers to manage calculations & business rules. Embed Excel-compatible grids in Java desktop & applet UIs.
See how 21 companies are already leveraging the Formula One e.Spreadsheet Engine.
Download our white paper, trial, and sample code!

Rick Ross, JavaLobby Founder

JavaOne is more than I expected, and I am really delighted to see how our industry is doing in the post-war era. There are a lot of people here, and there's a lot to see. If you haven't had a chance yet, then you may enjoy checking out the photo gallery we have put online. There are pictures of each of the two days so far, and we'll get more online as soon as we can all gather and share what we have seen today. It's colorful, it's fun, but most importantly at JavaOne 2005 the things we are seeing are REAL! For a long time it was the case that you would come to JavaOne and see things that you might eventually be able to use at some date in the indefinite future. It was useful to see where things were headed, but not especially helpful if you had a real task that you had to complete with a real budget and a real deadline. This JavaOne is different. People are showing tools and technologies you can use right now. In most cases you can even walk away from their booth with a CD of working product or download it with the free wireless internet Sun has provided.

I don't really know if I think JavaOne is bigger or smaller than last year's, but I think there's a lot more energy present in the crowd. This energy is decidedly positive, too. Developers are not talking about having to persuade managers to give Java a chance, but rather they are talking about the (often huge) scale of their real Java deployments and the ways they might like to improve them. These are smart, happy, employed people who are succeeding with Java in ten thousand ways. For someone who has the irrational love of this technology that I have it is a wonderful thing to see. I wish we could just put this feeling in a bottle and send it to everyone who ever feels isolated and alone in their use of Java technology. Each of us is a small part of a very big technology ecosystem that is changing the world more than we probably realize.

I need to keep it brief because I have to go to an appointment shortly and will not have time to write anything further until after the deadline for this week's column. There are two things I'd like to mention specifically, however.

The coolest thing I have seen at JavaOne 2005 is ICEfaces from ICEsoft. This product is a standard extension to JavaServer Faces that provides rich user interaction without the hassle of most of the AJAX kits I have seen. They have taken a really intriguing approach by injecting changes directly into the DOM tree structure of your web page, which pretty much allows them to isolate you from the need to do a lot of Javascript programming. You get all the benefits of an AJAX user interface, but you don't have to hassle with tricky, browser-dependent script code that may be harder to debug than your actual Java. ICE faces is basically a RenderKit for JSF that you can get started with quickly. I know I said everything is available right now just a moment ago, but ICEfaces Direct-to-DOM technology is still prelimary. You can, however, download it right now for free from ICEsoft's web site, and I will certainly be doing so as soon as I get a few moments free.

The second thing I wanted to mention is a respectably bold challenge that Sun is running at Pod 800 of their booth. The Solaris 10 group has some of their very experienced performance profiling guys showing how you can use DTrace on Solaris 10 to improve the speed of your Java applications. Their challenge is simple: bring them your Java app, and if they can't show you how to get a material improvement they'll give you an iPod! No, you cannot just show up with "hello, world" and challenge them to speed it up. Your application has to be a real app of at least a couple hundred lines of code. So far they have profiled a bunch of apps, and I think they have only had to give away one single iPod. If you're here at JavaOne and want a no-lose proposition you should take your application to Pod 800 and see what happens? You'll either leave with a faster application or an iPod, and that's a pretty good deal!

Until next time,
Rick Ross
rick@javalobby.org
AIM or Yahoo Messenger: RickRossJL

JavaBlackBelt

John Rizzo

Attendees
The first day of JavaOne always begins with a very long line of people, crossing 2 or 3 streets, slowly walking to get in. It's not that it takes so long to be registered and get the usual bag, most of these registered yesterday and show their bag and badge at the door. Rather, it's impossible for so many people to enter a building quickly.
When walking the streets of San Francisco it's easy to recognize JavaOne attendees, even when they don't wear their badge and Java bag. The typical Java attendee is a male programmer of around 30 years walking with confidence. But here, as compared to TheServerSide.com and JavaPolis conferences, there is also another kind of attendee: many nice looking women and even "groups of women", which I find quite encouraging for this male industry.
People are used to debating about the number of attendees. My first JavaOne was fairly recent, 2003, and I don't feel like there is less attendance this year, on the contrary I feel there is more. So I counted the seats in the main room myself: around 7140. During the opening keynotes Monday morning, 90% of them were taken and there were standing people in the back, plus others few outside the room. That's 0.16% percent of the 4.5 million developers making business with Java world-wide. During the last 12 months, this number increased by 12%. These are great numbers for Java, although nobody mentioned how well .Net is also growing.
I was surprised by the number of people returning to JavaOne. The speakers asked everyone to stand, then first time attendees to sit. Not so many people sat down, in fact. Then they asked for those who first attended in 2004 to sit, and so on back to 1996. Through this, I was able to see that most people at JavaOne are there for the 3rd time at least. On the other hand, if JavaOne always get the same attendees, you may ask why it interests so few new people. It's probably a matter of cost. Sun claims 1/4 million people were watching the keynotes on-line.

Come in, we are open !
What's the most important letter in F.O.S.S. (Free Open Source Software) According to Jonathan Schwartz, it's the F (Free). He said, "Most people can't code...". Was he thinking about the Apache Harmony project? People often ask, "Will Sun open-source Java?" Personally, I don't care, and in fact and I share Matt Schmidt?s opinion from a recent Javalobby newsletter that "free to download is open-source enough." But Sun does go further: they half open sourced Java today.

  • Mustang (Java SE 6) weekly snapshots are downloadable weekly. Sun welcomes contributions to the next Java versions.
  • JRL, JRL, JIUL. Sun revised the licenes. The JRL (Java Reseach Licence) let you read the source code. The JUIL (Java Internal User Licence) let you fix an urgent bug yourself and deploy internally (but not distribute).
  • GlassFish project, their application Server, is now free.
  • NetBeans has evolved much and you see NetBeans sessions and labs everywhere at JavaOne, and even a special dayof the conference was dedicated toNetBeans.

Free spec, free source code, free tools.
I guess Sun is challenging the "Eclipse-(Spring)-Hibernate-Tomcat-JBoss" de-facto standard. Will we still talk about Hibernate when EJB3 persistence APIs are widely used? It will be certainly an interesting open-source implementation, but will people learn EJB3 or Hibernate specifics? Java 5 EE proposes "standard" Inversion of Control (a core Spring feature).
Great people have made great software (JFace/SWT, Hibernate, Spring, etc.) because Sun has been unable to provide what developers want (faster/better Swing, easy persistence, lightweight container). Hopefully, these great guys showed Sun the right path to simplified and more productive Java development. But you need to be 200% better than the standard to attract people away from it, and the standard is catching up. Will these tools still exist when Java is good enough for the job?
I know this is a difficult and provocative question to ask. Java seems to have reached another step of maturity: EoD (Ease of Development). And it's not just Sun bull* marketing, it's real. Since 2000, Java teams often asked me which set of frameworks/tools to use for their Java developments. My answers evolution with years roughly is:

  • 2000-2002 don't dot that ! (Sun's Blue print)
  • 2003-2006 take this and that (Struts, Hibernate, Spring, JFace/SWT,...)
  • 2005-2010 do it the standard way.

Of course, every job is different and having a choice of different tools is great; here I just give a general feeling.

Overengineering
T-Shirt Launch From this Tuesday morning keynotes, I remember:

  •   Brazil healthcare IT system development in Java, lead by Fabiane Bizinella Nardon.
  •   Standing ovation to thank James Gosling driving Java for 10 years.
  •   The over engineered T-Shirt launcher from Cenqua team.

Cenqua may not mean anything to you. They make the "Clover" testing coverage tool that you probably know. They also showed me their last baby: FishEye, an impressive reporting tool gathering data from code repositories (CVS, Subversion,...).

This Australian team built a brilliant example of over-engineering: A T-Shirt launcher machine driven by a Java program. As you can see on the picture, t-shirts are placed into cylinders mounted on wheels. Each cylinder is closed by a little door. Somebody has to manually make the wheels (and cylinders) turn very fast. A Java program activates the doors opening and the centrifuge force ejects the t-shirts from the cylinders.

The Java program is needed to compute exactly when will the door open, which decides their direction. You can see on the lower part of the photo that a video camera is fixed on the machine, sending an image to the Java program. Before you activate the machine, you tune how far to launch the t-shirts.

Unfortunately, and as usual, a bug showed up during the demo: the infrared lens of the machine have been misguided by the flashes of the photographers. But after all, the purpose of over-engineering is to engineer, not to make things work.

You can view the machine making-of and test photos on Peter Moore's site .

Bonjour from San Francisco !
John Rizzo
www.JavaBlackBelt.com

Mike Urban After getting off to a rather late start, the keynote this morning featured Sun CEO Scott McNealy. Following the theme of “Eradicating the digital divide” for this year’s conference, McNealy made several requests for getting involved.

The first big area of request is the healthcare industry. 98,000 preventable deaths occur every year because of medical errors, according to McNealy. In addition, 300 billion dollars are spent every year on treatment that yields absolutely no benefit. Lack of available information on patient medical history is a serious problem in many parts of the world, often preventing doctors from being able to provide effective treatment. McNealy spotlighted the Brazilian Healthcare System as a Java success story when it comes to fixing this problem. Brazil has implemented a nationwide healthcare information network. No matter where a citizen goes in Brazil, as long as they have their medical card with them, the card can be scanned, and a record of the patient’s medical records can be pulled up. The system is also open source for public health centers, to make it easily accessible. Fabiana Nordon, one of the architects of the system, said there are other nations interested in implementing the Java based system, including several countries in Africa. When asked why Java was chosen for the project, Nordon stated that the Brazilian government made a decision that all new systems should be built on a standard platform, and that Java was chosen as that standard platform. As an interesting statistic, the system consists of about 2.5 million lines of code, written over a period of only four months. Those must have been some busy coders!

The second big area was education. With education budgets as tight as they are, many schools often can’t afford education applications. Furthermore, the average K-12 math textbook costs over $100, and many of them are of quite poor quality. Imagine, said McNealy, an open source math textbook, with open source tests, and immediate feedback after students take the test. Furthermore, the various chapters in the various textbooks would be voted on by a group of educators similar to the JCP, and scientific tests could be done to determine whether a given chapter is more or less effective than the same chapter written in different format by using a simple control experiment. Give one group of students the original chapter, and a second group the second chapter, and see which group does better on the exam. If this sounds like something you are interested in, you are encouraged to visit the Global Education Learning Community (GELC) Web site--a project sponsored by Sun, O’Reilly, and CollabNet.

There were also several awards given out for innovative Java applications. One of the recipients was the Brazilian health care system talked about above. Another one that I found particularly interesting because of my interest in biology, was a system for identifying whale sharks based on image recognition.

I was also able to attend a technical session by Dimitri Trembovetski on improving the performance of Java GUI applications. There are several things that can have adverse effects on performance, including garbage collection occurring during startup, (which can cause slow startup of Swing applications), trying to perform all operations from the EventDispatch thread rather then using SwingWorkers, poorly programmed custom JTable CellRenderers, and wasting memory.

Trembovetski talked about how to solve the garbage collection problem by changing the minimum heap size for the application. By starting the JVM in verbose mode, you can see how much heap is being used during startup, as well as how many times the garbage collector runs. Tweaking the minimum heap size can prevent garbage collections on startup and shave a second or two off the startup time.

Another thing he talked about to reduce startup time is turning off the Java byte code verifier, which can be done with -Xverify:none. Of course, if you turn off the byte code verifier, you nullify any guarantees about security since it would be possible for malicious byte code that was intentionally assembled to subvert the class loader and security manager, but with a trusted application, turning off the byte code verifier can cut startup time significantly.

One common cause of slow performance during runtime that Trembovetski mentioned are large JTables with different types of data that require different rendering pipelines. For example, if your JTable contains pairs of text and images, and you draw each pair by rendering the text and then the image, the video hardware will have to switch rendering pipelines hundreds, thousands, or even tens of thousands of times depending on how many cells are in the table. Switching the rendering pipeline can cause noticeably slow performance on large tables. If possible, it is usually better to draw all of one type of data first. For example, draw all of the images first, and then go back and draw all of the text. This way, the video hardware only has to switch rendering pipelines once.

The conference is about half over right now, and things are still going strong. Although I haven’t seen any actual numbers for attendance today, my gut feeling just from the “traffic” is that there are even more people here today than there were yesterday.

Kind Regards,
Mike Urban
murban@javalobby.org

Samples from the JavaOne Day 2 Photo Gallery

View these photos and many more from JavaOne 2005 at Javalobby's photo gallery...


Thank you for your continued support of Javalobby. If you prefer not to receive the Javalobby weekly newsletter, send an e-mail to unsubscribe-jlnews@javalobby.org Please be sure the actual email address to be removed is present.
Javalobby.org, 113 Legault Drive, Cary NC 27513 USA

 

 

 

@Macarlo, Inc.
@Macarlo's Shareware & Web
OS/2
Java Lobby Member
Java Site Accredited

[TOP] [HOME] [INDEX]