JavaOne - Day Three - More friends, JXTA, epackaging of an app server and open source
We can't solve problems by using the same kind of thinking we used when we created them - Albert Einstein
A Paper Airplane made of JXTA
I got to attend Brad Neuberg's tech session on P2P Sockets and Paper Airplane. Paper Airplane is a Mozilla plugin written with JXTA. It is a great example of extending a known metaphore into the P2P world. Brad talked about a shared Wiki and other services like SOAP via the JXTA network. Check out http://p2psockets.jxta.org/ and http://paperairplane.dev.java.net/ for more info. I really think this is a great way of doing things. There is a freedom from servers and a freedom to communicate. There are a few things to work out, but Brad has a lot of great ideas in this area that need to be explored.
Got to meet more people today. From the JXTA community, to my book readers, to business customers. Most I have never seen or talked to except via email. Some of these people have been emailing me for years and this is the first time I have seen them in person. JavaOne is getting to be a watering hole where everyone meets. Forget the sessions, it's about meeting the smart people of the world in person.
I also got to teach a short class on UML today for NoMagic and ExitCertified (Sun's education partner). I had room full of people willing to learn UML and we had some fun too. Speaking of UML, I overheard someone say that the white-board is the best place to do UML. All I have to say is that is misleading. Using a white-board to think about a design is nice, but you need to capture the design for the long run. A white-board can't be emailed to your customer. A white-board can't be filed away to be referenced years later by a maintenance developer. You can't edit the same white-board to change the design over the course of ten years of maintenance. Use tools, free or otherwise and be a professional.
Creating an Artificial Einstein with JXTA
One of the more visionary people I met today (well... yesterday because it is now 2:00am) was Jeff Zhuk of ITS Inc. Jeff is using Open CYC and JXTA to create a distributed knowledge system and expert system. How cool is that? I have done similar things, but Jeff is going for a massive solution that integrates thousands of people to build an expert system via peer to peer computing. In addition, Jeff teaches Java, JXTA, and JINI. He has all the pieces and is looking for help.
Einstein and Java Enterprise Server
Spent the morning at Sun looking at Java Enterprise System (JES). JES is a new way to deploy and license the infrastructure of an internet business. Sounds innovative, but I would say it just shows that there are finally some smart people at Sun thinking about doing things right. JES is built on the idea that most portals are really built of a dozen or so applications like the portal application framework, web server, application server, calendar, email, instant messaging, LDAP, single sign on and many others. All of these pieces are usually put together one at a time and with a lot of work dedicated to getting them to actually work as a single unit. My past is littered with the with the wasted and long hours or complete failures because of applications not mixing well. What Sun has done is create a clean integration of all of these tools that runs smoothly and is tested as a unit to discover integration problems. The end result is a lot of the core business software is up and ready to use in a few hours. Think about the Integration of all the software components that make up the infrastructure. They are like building an airplane from little pieces and a blueprint. Instead, JES is a fully assembled and tested Lear Jet.
Like I said, not really innovative, but it takes a lot of work and politics to integrate all your standalone products into a single install, with a single interface for management, and one application to license, and get maintenance agreements on. My hat is off to the guy that proposed such a departure in the Sun way of doing business.
But now to the second part of the innovation of JES that might give JBoss a run for their money. The JES set of componenets in the common install management tools is available with a cool procing model. Think about
having it all with a portal application framework, web server, application server, calendar, email, instant messaging, LDAP, single sign on and many others for just $100 a year per full time employee. This is just the business model for pricing and not some magic number that is part of the CPU count, the number of gigabytes of storage, email accounts, your first born child, and a chariot that turns into a pumpkin at midnight. The key is that this is just a way to price the system, it is not the price for the number of actual users. This just buys support for the tool and your software updates.
This is more cool and obvious if we look at a company that has 100 employees for a cost of 1000*$100 (it is free up to 99 employees but there is no maintenance). Now even though the company bought the 1000 employee license, they can have a million customers and their 1000 employees use the system without any additional costs(except for the pesky hardware). A good example is Google with 5,000 employees and 7 million customers would only need to pay for the 5,000 employee license. The economies of scale look like open source with maintenance.
The tools are all based on open standards, not open source. Seeing and modifying code is not an option. But when you have a good maintenance agreement, the risk and cost of maintaining open source verses a maintenance contract is about the same or better since most of the components are usually used as is and not customized. Because they are tested as a suite, there is even less need for the IT department to be fiddling with code that should be considered infrastructure rather than custom applications. Of course this is still a modular system and you can swap out almost any piece with an open source or commercial alternative (like the application server).
Is Sun really a winner with JES? Hard to say at this point. They have happy customers so far with the first release and a model that is hard to ignore. The application server and all those component parts are newly rewritten and running fast and seem scalable. They could be a market leader in their own J2EE market. Really! Stranger things have happened. Stay tuned.
One more day
One day to go here at JavaOne. Time to pull out all the stops and meet as many people as you can and collect ideas and business cards. Make friends, learn from them, and help them as much as you can. We are all in this together and we are a community. Get out there and make the Java world a better place!