Subversion Rename Rocks!
March 24th, 2005
I don't like revision control systems
I should start off by saying that I'm not a big fan of revision control systems. What I want out of an RCS is simple. Let me check files in and out so that my code is backed up and I can revert and merge as needed. I have found that branches rarely get used except in the biggest of projects. Though your RCS system can probably handle it, developers are still people and you can end up in a lot of trouble when you work on more than one branch at a time. Over the years I have used PVCS, RCS, Contiuum, Source Safe, Star Team (I think that was the name) and a few others. I keep coming back to CVS because it does exactly what I want (backup and store revisions of a tree of files) and does it with a few simple commands. It also has the advantage of being supported everywhere.
No Session-y Goodness for Me.
March 13th, 2005
As many of you have discovered, your submissions to JavaOne were rejected. Don't feel bad. Only one of my 6 proposals were accepted, and I'm now a Sun employee myself. I the competition was fierce. The upside is we should have a really rocking JavaOne conference coming up.
Big news. I'm going West.
February 23rd, 2005
Hello All. I know it's been a while since I've been posted, so I'd like to let you all know what I've been working on. Lots of good things have happened or are coming soon. First of all....
Apple's latest efforts are the triumph of software over hardware.
January 12th, 2005
Normally I don't comment on new products, especially hotly anticipated ones that a million others will pontificate endlessly. However, I'm breaking my rule because I'm quite amazed by the new iPod Shuffle and iMac Mini. Not because of the products themselves but because of what they represent. They are both the triumph of software over hardware.
XML to Swing and the Gradual API
December 7th, 2004
I know it's been a while since I've posted, and sadly it's going to be a while until I do again. Work, my opensource projects, and my book are keeping me slammed. I've lots of good stuff cooking, so stay tuned.
Webstart Rant
October 25th, 2004
Send me your ideas of what you'd like to see out of webstart. What are the missing features. What are the most important bugs? I want to figure out what we can do through addons and what requires changes from Sun.
Please: think of the users!
October 18th, 2004
Usability is the number one concern when designing software. And I don't mean "today with modern computing and the lack of new types of software usability is easier and growing in importance". I mean computers have no other purpose than to serve humans, and a better computer serves humans better. End of story. Software that doesn't conform to the way humans do things is bad software. (bad!) I don't care how cool and awesome your software is, if it's not understandable then it's useless.
Countdown to Christmas: a Customizable MiniApp
October 3rd, 2004
Back when the Web was just emerging (you know, from the primordial soup of standards) many developers put effort into making it easy for lay people to create websites. While most focused on WYSIWYG development tools or content management systems, some developers tried to sell Applets and JavaScript libraries. These were small programs that could be embedded easily into a website and customized without the use of code. No need to write your own tree control: just set a few properties on this library and you're good to go.
Weather Watcher: Release Deux
September 29th, 2004
One of the things I love about Java is that I can quickly change things. With an army of libraries and Java's renowned platform independence I can quickly hack on a new feature or move code from the client to the server. A couple of days ago I showed off a webstart app with, umm, a few issues. I now proudly present :
A New Rich Client: WeatherWatcher
September 27th, 2004
I think this MiniApp idea is starting to have legs. Thinking about all that Java Web Start provides we can start to imagine an application category: the so called "Rich Client". The key to a successful rich client is that it must do something that neither webapps nor native programs can do well. It must exist outside of the webrowser (the rich part), use the network for something (the client part), and not require installation (or as minimal as possible). I think my new MiniApp does this quite well.
New MiniApp: Storm Drain
September 22nd, 2004
While playing around some more with this miniapp idea, I came across geographer Tyler Mitchell's weblog post about hurricane tracking using Web Map Service urls. I thought this would make an interesting MiniApp and give me a good opportunity to play with a few webservices. Starting from his base (and with some greatly appreciated clarification emails from Tyler), I've created StormDrain, a simple program that loads WMS data and displays it graphically. Here's what it looks like:
mouth.whereIs().put(new Money())
September 10th, 2004
Hmm. Perhaps it should have been mouth.getLocation() instead. That would present a more consistent BadJoke API. :)
Visions of truly portable applications.
September 5th, 2004
I've been thinking about the miniapps idea some more. I still think it's a good idea, but I want to extend it a bit. Miniapps are great and all, 'cause they're, well, mini.. but I want more. Java is supposed to by write once run anywhere, but in practice any given program only runs on one computer. I'm not talking about whether it can be on Mac or Windows. I mean that I typically install the software on one computer and that's it. If we've got this great portable runtime then why aren't our applications truely portable?
Unleash the MiniApp
August 23rd, 2004
It's gonna be a busy week so I'll keep this short. I've been thinking a lot about moveable applications and the idea of rich clients. This is mainly on my mind because the Flying Saucer team has been hard at work on the next version of XHTMLRenderer. (We're shooting for an August 31st release) An embedded rendering component has pretty much one core use: applications with both GUI and html interfaces. But what do they look like? What creatures live in that shadowy borderland between the desktop and the web?
My 1 year anniversary at Java.net: the social side of software.
August 20th, 2004
It's been a little over a year since I've been here, and what a year it's been. Or something along those lines.
Quick Radial Blurring w/ Java2D
July 26th, 2004
I have to say that Java2D is amazing simply for it's productivity. The other day I was watching the psychedelic display in iTunes when I thought, I wonder how hard it would be to do that? I know it's a blurred and stretched out from the center, but that was pretty much it. I found some demoz that did something similar but I didn't feel like pawing through badly documented C++ code to figure it out. Instead I went to Java2D and wrote this in about half an hour:
Myth: There aren't any commercial apps written in Java.
July 19th, 2004
The last few months have been great for client side Java. With the release of JDIC, JDNC, Java 1.5 betas, and more support than ever from Sun, I think we are seeing a revival in interest for client side Java. Still, I hear the usual refrain: "If Java is so good on the desktop, then where are all of the commercial apps?" If I point to something like LimeWire I get: "No. I mean big applications, like Word." Well, I never have an answer for that one. I didn't seven years ago and I don't know. Speed and API support isn't an issue anymore, but there still aren't any well known commercial applications written in Java. That finally led me to the question "Is any big name application written in anything other than C/C++?"
My new opensource project: Flying Saucer, an all Java XHTML renderer.
June 18th, 2004
I normally try to be even handed, un-biased, and bi-partisan; but today I'm going to shamelessly use my muchly vaunted position as a highly skilled blogologist in field of java.net to plug my new project: Flying Saucer, an all Java XHTML + CSS renderer.
Swing Hack 8: An eyedropper tool
May 18th, 2004
On the plane back from California I decided I've had enough with politics for a while and I'm ready to get back to coding. One thing I've always thought was missing from Swing is a good color chooser. Swing provides a color chooser model and a default color chooser, but it's always felt unfinished. Another 3rd party opportunity I suppose.
An Analysis of Open Sourcing Java
May 3rd, 2004
I'm going to try to really tackle the issue of opensourcing Java and state my opinion of why it's a bad idea. Then I'll propose a way would could do it without all of the problems. It's a long one but please read to the end and provide your feedback. This is an issue that many feel strongly about and has the potential to influence Java's long term future. And as a career Java developer, it's something that personally concerns me.