This is the third blog in a series on architecting applications. In
the first blog I discussed the application I'm going to develop,
how it would be architected, and briefly went over the model. In the
second blog I motivated the need for an Application class that is
suitable for typical Swing based Apps, as well as the functionality it
should provide. In this third installment I'll go over the...
on Mar 6, 2006
I'm listening to JavaPosse #37 which is part 2 of their interview with Bruce Eckel. The interview is highly interesting and I highly recommend it. This is my first exposure to this guy, and it's clear he knows his stuff and is very articulate. Must be why his books are popular.
There's a thread in what he's saying that I want to respond to. Namely that a Good Language is one which makes it...
on Mar 4, 2006
The other day I made a blog posting concerning Bendy classes and dynamic programming, discussing a meme I'm seeing in developer blogging. That idea is there are various dynamic or scripting oriented languages which make it easy to write quick programs with loose binding (there are probably other benefits to those languages). Supposedly Java is a dinosaur with its rigid binding, compile time...
on Mar 3, 2006
Mustang, a.k.a. Java SE 6, is getting ready to bolt out of its corral. We've done a lot of good things in Mustang. There's a recent article published on devx.com giving an overview of changes in Mustang, plus we've published the official docs which you can browse.
There's one new feature that I want to talk about today, and that's the support for scripting languages in Java. I have some...
on Feb 28, 2006
Jack Herrington has published this article: Going dynamic with PHP claiming to show some things PHP can do which Java can't.
Okaaaay... This is another of the articles in the meme that dynamic languages are great, and rigid languages are uncomfortable. I don't know if I got the analogy right this time, let me know please?
The problem he poses is about implementing the database interface...
on Feb 22, 2006
Three weeks ago I launched the Mustang Regression Contest. The grand prizes are five Ultra 20 workstations, which are to be awarded for the "best" regressions submitted during the contest. The other day Ray Gans and I brought them from the a storeroom in the Menlo Park campus to one in the Santa Clara campus. So while moving them I thought to post a picture to show you guys what you're...
on Feb 21, 2006
These Are Some of my Favorite [Mustang] Things is a listing by Chet Haase of improvements in Swing, Java2D and AWT. Makes for a good read.
on Feb 19, 2006
Weiqi Gao has a blog posting with early impressions on Mustang, a.k.a. Java SE 6. In all it's very positive talking about several applications he tried which worked fine.
He talks a little about the adoption rate for Java 1.5 (a.k.a. Tiger), and says "I have a feeling that the lack of a 5.1 version has really hurt the adoption of JDK 5".
I want to mention that, what would have been "5.1" are...
on Feb 18, 2006
As this effort appears to be a duplication of effort with Mark Reinhold's Mustang Beta Blog Carnival blog I have removed the content and refer the readers to his blog at http://weblogs.java.net/blog/mreinhold/archive/2006/02/mustang_beta_bl.html.
on Feb 16, 2006
I think these should make for a nice extension to the existing Java 5
From an Annotation, one should be able to navigate back to the programming element that it annotates.
For example, a method annotation clearly marked with a Target
of ElementType.METHOD cannot say getAnnotatedElement().getName(),
There are two problems here. The first is the lack of the
on Feb 15, 2006
As you'll no doubt have read elsewhere,
the Mustang Beta Release is now available. There are
plenty of improvements in plenty of areas, including the JMX
The improvements to the JMX API are incremental changes to
existing functionality, rather than entirely new features. The
new features will arrive in Dolphin (Java SE 7), as defined by
JSR 255. (The...
on Feb 15, 2006
Java SE 6 (a.k.a. "Mustang") has reached Beta status. The sharp eyed will notice the Beta is based on build 59 while the current build available as "early access" is build 71 (or thereabouts). There's a long story behind that which I can't tell other than to say the declared Beta build kept having showstopper bugs which prevented us from shipping the beta.
Details are on the...
on Feb 15, 2006
Mustang Beta (JDK 6) was released today and contains many new security features:
JSR 105, the Java XML Digital Signature API and implementation.
Native Platform GSS/Kerberos Integration. This feature allows Java GSS applications to take advantage of features in the native GSS/Kerberos implementation available on the platform.
Support for Smart Card I/O API. The Sun JDK bundles the Smart Card I/O...
on Feb 15, 2006
I'm taking a brief hiatus from my series of blogs on application architecture to join in the mustang blog carnival extravaganza that is celebrating the beta release of mustang. The bulk of the major features have already been covered. Chet and myself have covered true double buffering, Shannon has covered the dnd work, SwingWorker was covered in an article, table's sorting and filtering API was...
on Feb 15, 2006
One of the important new features of the JMX API in Mustang
(Java SE 6) is the ability to create MXBeans. MXBeans
provide a convenient way to bundle related values together
without requiring clients to be specially configured to handle
the bundles. Here's the complete story about MXBeans.
Bundles of values
When you are designing an MBean, you sometimes want to have a...
on Feb 13, 2006
Curious about the Mustang Collaboration effort, I decided to give it a try. Sun is a big company, they're asking for public collaboration on a huge software project, and I wondered if public submissions would actually find their way into the product.
I found a bug in Mustang, fixed it, and submitted it to the Mustang development team. Today, I'm happy to report that the fix has been integrated...
on Feb 11, 2006
Let me give y'all an interesting hint on entering the regression contest ... Suppose your application has a unit-test suite ... Simply run your test suite on a Tiger build (1.5 update 6 is the latest) and then on a Mustang build (JDK 6 build 70 is the latest) and compare the results.
If every test gives the same result on each then that's wonderful. But if some test gives a different result...
on Feb 9, 2006
TechDays in Chennai was fun. I can't get over the energy of the attendees, and the city around the conference. Not to mention the energy of the Sun Technical Outreach folks that put these events on.
TechDays are just like JavaOne, except instead of taking BART into San Francisco, I flew halfway around the world to get here. There were 3 tracks: roughly JavaME and JavaSE, JavaEE, and Community...
on Feb 8, 2006
In this weeks javaposse podcast they expressed confusion -- Happy 15th Birthday, Java! (javalobby, and computer history museum), but wait, didn't we just celebrate the 10 year anniversary last summer? What's going on.
Well, what's going on is there's two dates to consider.
One date is when they began creating the Java language. Except, it wasn't yet called Java, but called Oak (supposedly...
on Feb 7, 2006
A question that's come up around the Regressions Contest is:- Why are various countries restricted from participating?
This has to do with laws and lawyers. No doubt you'll have seen this in other contests, especially if you've read the fine print. The phrase is: "void where prohibited by law" ...
In designing this contest we went through an interesting and probably excruciating exercise. We...
on Feb 6, 2006