Introducing Painters
September 20th, 2006
One of the temptations of design is to not show your work until it's ready. Not until every edge is smoothed and every bolt is tightened should anyone be allowed to see it. While this might be okay for paintings or sculpture, in the world of software it often leads to bad APIs. An API is the user interface for other programmers. I'm a firm believer that user interfaces must be tested with real users, and as early as possible.
LA-stravaganza
September 17th, 2006
One of the great things about my job is that I get to go speak to customers and other groups of Java developers. Even more amazing than the fact that Sun pays me to do this is that people actually show up to listen to me. I'm sure you've all had those times where you feel like you are still the dumb kid who just graduated and somehow you have to make everyone around you think you actually know what you are talking about. While I know that I'm a Java expert and have interesting things to say, a little part of me is still scared. What if I say the wrong thing? What if someone asks me a question that I can't answer. What if I walk into a room full of SWT lovers?! The agony!
Source to the Magnifying Glass Hack
September 11th, 2006
In response to my Meet the Engineer interview on Sun.com a reader asked for the source to my magnifying glass component (originally detailed in this blog). I haven't given it out because it was meant to be part of a larger framework for managing the glasspane and implementing other cool hacks. Alas I have simply not had the time. Java 6 and Java 5 updates combined with my SwingLabs and community work simply have taken up all of my available resources.
The best is yet to come
September 9th, 2006
Yes the best is yet to come, and won't it be fine...
Windows L&F Bugs: Part 2
August 31st, 2006
Welcome back to the Windows Look and Feel Show!
In this segment we'll dive right into some of the bugs directly. In this series I won't cover all of the bugs because some of them involve structural changes that didn't directly fix visible bugs. For example, the XPStyle class was significantly changed by adding enum support. Enums let us more closely model Microsoft's UXTheme API and it's list of part constants. Also, I'm only covering bugs that were fixed. There are quite a few bugs which were closed as not reproducible or no longer a bug because they were fixed by another fix or simply can't happen any more because of other code changes under the hood. With that in mind, let's take a look at a few.
Painter Trailer
August 24th, 2006
Coming soon! Hard hitting, action packed, and full of effects you probably never asked for.
The Big One
August 17th, 2006
So you have probably wondered where I've been. It has been quite some time since my last post and I have been very lax in talking about what's going on. Well, the big news is that we are almost done with Java 6. Not really, of course, since there still emergency fixes that could go in, but we've hit our final build of main development. This means that my work is mostly complete for Java 6 and I can start working on the update releases and Java 7. However, scheduling and builds is not what I'm here to talk to you about.
I need help tracking down a bug with the WindowsTableHeaderUI
July 18th, 2006
Chances are no one reading my blog will be able to answer this question but hopefully in the future someone will run across this post in Google and respond with the answer.
Do We Need Databases on the Desktop?
July 17th, 2006
Recently Simon Morris posted a blog called In defence of the desktop where he asks :"If SE is truly the edition of Java aimed at the desktop, and most real desktop applications (browsers, players, word processors, video editors) are not database heavy, why is Java DB being included in the SE JDK?". I'd like to challenge the idea that real desktop applications don't need databases. They may not be database heavy (in that storing data is not their primary function) but I do think that there are a lot of desktop apps which use databases, or could be improved by doing so.
Getting started with the Aerith Mapping Component
July 11th, 2006
A few days ago we released the code to Aerith, our JavaOne demo that combines photos, mapdata, and 3d effects. We worked very hard to get the code out to you and let you see how everything works. However, if you've downloaded the code you may have noticed that the code for the map parts is missing. Only the binaries are provided in the JXMapViewer.jar
file. That's because the map component has a brighter future than just a JavaOne demo. It is now the first component in our new SwingLabs project: The Swing Web Services components, or SwingX-WS.
Aerith Code is Go!
June 28th, 2006
It look more work than expected (doesn't everything?) but at long last we have released the source code to Aerith, our killer 2d/3d/webservices mashup demo that we showed at the JavaOne 2006 keynote, and later in the SwingLabs booth and at the Apple BoF. The response to the demo was very positive so we made a commitment to release the code ASAP. Finally that day has arrived and it's today. Go download the code at the new Aerith homepage.
Java One, Future Projects, and Back to Work
June 22nd, 2006
So you have probably wondered where I've been. Possibly even missed me. Or maybe you haven't and are glad I haven't wasted any of your precious packets during the last month. In either case: I'm back with lots of interesting things on the way. I've been on vacation, traveling, spending time with family, and then back on the job working on Aerith and getting Mustang ready for Vista. So let's dive in to the good stuff:
Aerith Updates and the End of Java One 2006
May 19th, 2006
I just arrived home after a both grueling and exciting week of JavaOne. I'm taking the next two weeks off, though I will be blogging a bit and answering the occasional emails. Don't be surprised if I'm a bit slow to respond though as I'll be in Oregon most of the time sipping coffee and enjoying the beautiful outdoors.
Aerith: live from the floor
May 16th, 2006
I'm sitting in the audience watching Tuesday's keynote where Romain Guy and Richard Bair are on stage showing the new Swing demo we built called Aerith. It's a roadtrip slideshow builder that combines Google Maps, Flickr, and Yahoo Geocode to let you make your own slideshow of photos you took on your trip. Once you are doing setting up the slideshow you can share the trip with your friends as an applet.
Pretty Pictures
May 15th, 2006
I'm doing lots of pre-JavaOne work right now and I could easily bore you with details of our Java.net Community Leaders meeting on Saturday, but instead I'll tease you with our demo.
Why we are here
May 4th, 2006
We are getting closer to JavaOne and companies are preparing to announce their latest and greatest products. We will also have lots of discussions of Java vs AJAX vs Flash vs other hot tech of the day. Before we go down these and other rabbit hole discussions I'd like to take a moment to sit back and look at the big picture: Why are we here?
Swing Hacks in Japanese Ships
May 3rd, 2006
I'm going to be a complete nerd for a second and expound upon how amazingly cool it is that something I wrote has been translated into Japanese. I mean, writing down words that someone else pays for is cool and all, but it's even cooler when someone else translates my words into another language. The book even looks cooler. It's a tad smaller and has a very nice book jacket. The paper has a very different feel from the english printing; manga-esque actually.
How to get code completion with Javadocs in Netbeans on Mac OS X
April 30th, 2006
I'm sure I'm the last Mac Java developer here to figure this out so I'm posting it not so much for you but for future generations intrepid googlers to find.
Swing Hacks goes East
April 26th, 2006
I'm always amazed by how big the Java ecosystem is. It really is a global community. When Chris and I wrote Swing Hacks we did it out of love for Swing, not to sell a lot of copies or make a lot of money. I'm always amazed when someone will pay for something I've written. When we hit an Amazon score of under 1000 (for a couple of hours anyway) I was bowled over.