One of the biggest features we did in 1.5 was revamping the java look and feel by providing a new theme (OceanTheme). Love it or hate it, Ocean requires a bit more graphics support than the line primitives of yore. In order to make Ocean the default we needed to make sure performance was in line with the old theme (Steel). All of our internal tests show that we succeeded, Ocean performs as...
on Sep 6, 2005
on Sep 5, 2005
Does Sun's use of the Microsoft Visual C++ compiler limit participation in the funfest that is the Mustang Collaboration effort. The Linux and Unix guys have free development tools. The Unix and Linux builds utilize open and free compilers. Not so for Windows. Windows participants must use MS VC++...nothing else will do. That means that if you want to help out in the Mustang effort, you must have...
on Sep 4, 2005
(Note: this entry is cross-posted on my personal blog site -- galbraiths.org/blog.)
If a system's glitches can be compared to fish, I want to tell you about my white whale.
A while back, I was working on a system feature that read in some XML from the filesystem, XSLT'd it into HTML, and served it up to a browser. The XML had a bunch of characters from the higher Unicode ranges (i.e., >255), and...
on Sep 3, 2005
When you ask a String for its length with
the method will return the number of char code units in the String. That's ok, but it may not be telling you exactly what you wanted. There are several ways to determine the length of a String. Here are a few interpretations:
number of chars in the string
number of characters in the string
number of bytes in the string
on Aug 21, 2005
One of the stumbling blocks I have run into, in my few years of using Java is Java's lack of flexible access visibility mechanisms. The access mechanisms are strictly constrained within the semantics of private, package, protected and public access modifiers. However, in ceratin scenarios this can be a bit constraining.
A good example if often when you use light-weight domain modelling using...
on Aug 21, 2005
If you've been sitting on the fence wondering when you should migrate your product to J2SE 5.0, your wait might be over. This month is Tiger Migration theme month over at java.sun.com. You're sure to find more than one reason to migrate to this updated platform. Find out more at the Tiger Adoption home page.
on Aug 17, 2005
There was a lot of hype and predictions in 2000 that C# was going to be the #1 programming language. All that we could do at Sun was to listen to what Java users wanted and build the best release we could, that was JDK 5.0. Ironically it probably energized us, which is something to be said for competition.
Yet here we are 5 years later with a new wave of languages getting the attention. Python,...
on Aug 16, 2005
Wondering where ODBC, ADO.NET Futures, XQuery and XQJ Futures and of course JDBC Futures are headed? DataDirect's Design Previews may just be the thing for you
on Aug 6, 2005
We launched two new free open source projects over the weekend. The first is a simple automatic Java boundary testing tool, called Testgen4J http://www.spikesource.com/projects/testgen4j/.
Although the enterprise market has a choice of full functioning Java test generation tools there is little to none for the open source community.
Testgen4j is functioning alpha version that takes Java class...
on Aug 1, 2005
Ken Arnold makes a good case for generics being poorly thought out. I take issue, though, with the claim that we should avoid them.
He makes the statement that "But we have a demonstration proof that we can live without it, namely that we have for nearly a decade." This is specious, IMO. Prior to the introduction of Java, we lived without a cross platform language with library support for...
on Jul 21, 2005
The JSR 270 Expert Group
recently decided upon the set of component JSRs that will appear in Mustang,
a.k.a. Java SE 6.
Here they are, grouped together by area:
Java Class File Specification Update
Java Compiler API
Ease of Development
Pluggable Annotation Processing API
Javadoc Tag Update
Scripting for the Java Platform...
on Jul 19, 2005
In "Evolving the Java language" technical session during the last JavaOne, Mark Reinhold shed some light on the future of Java XML support.
The slides for the technical sessions have been finally uploaded to conference webpage, so download the PDF for session TS-7955. The executive summary of the relavant slides is:
DOM is excellent feature-wise, but requires too much code to be written, and...
on Jul 16, 2005
And so, last evening I set out to provide 1.4-compatible version of my Substance look-and-feel library. What promised to be an easy task (a couple of changes per file, given not too excessive use of generics), turned out to be a frustrating and valuable experience not only with Swing classes, but with Java 5.0 features in general.
First off, I should say that at work we write for JDK 1.4.2. For...
on Jul 15, 2005
I've been waiting all conference to see something that can be exciting about the future of Java itself, not just for individual subparts of the Java community.
So now I've found something. Apache is starting a serious project to create an open source implementation of the Java VM. Folks have tried this occasionally, but it usually dies quickly because it's a mess o' work, and only gets to be...
on Jun 30, 2005
Watching the keynote. Nice to see a reference to Morgan and Edison. We often forget our technology roots.
Note to Moscone. You need about 4.8 billion more power plugs scattered around the convention center. Everyone here has a laptop and they need juice! (Insert conspiracy theory about Tesla's wireless power technology being squashed by Big Coal).
Working at the SwingLabs / JDNC Booth
on Jun 28, 2005
I don't know how to ease into this gently. So I'll just spit it out.
Generics are a mistake.
This is not a problem based on technical disagreements. It's a fundamental language design problem.
Any feature added to any system has to pass a basic test: If it adds complexity, is the benefit worth the cost? The more obscure or minor the benefit, the less complexity its worth. Sometimes this is...
on Jun 27, 2005
We've made some updates to the Java platform names.
Here's what has happened, and why.
What has changed?
We're modifying the names of all three Java platform editions.
First, we're dropping the "2" from the full edition names. They are now:
JavaTM Platform, Standard Edition
JavaTM Platform, Enterprise Edition
JavaTM Platform, Micro Edition
Second, we are emphasizing "Java" in...
on Jun 27, 2005
Well. Here I am getting ready for my first real JavaOne. Actually, I attended back in 1999 and had the rare fortune to see Douglas Adams speak, but this is the first time I will be speaking as an author and attending as a Sun employee. It's going to be exciting. And since most Java developers can't attend JavaOne (where would they all sit?) I expect these Java.net blogs to light up like a...
on Jun 24, 2005