Skip to main content

Tim Boudreau

Tim Boudreau had his first startup when he was 13, and has been hooked since, with brief departures to play rock and roll, write and play music and do graphics and photography. He is the coauthor of NetBeans, the Definitive Guide from O'Reilly and Associates. Tim was part of the team that open sourced NetBeans, Sun Microsystems' Java(tm) development environment, and currently work as a developer on that project. Originally from Massachusetts, he lives in his adopted home city, Prague, Czech Republic.


timboudreau's blog

Trademarks and Open Source

Posted by timboudreau on May 10, 2009 at 10:19 PM PDT

Simon Phipps posted a URL to this interesting article on PCWorld, Trademarks: The Hidden Menace.

Sneak Preview: Java Card tools for NetBeans 6.7

Posted by timboudreau on May 10, 2009 at 1:07 PM PDT

I've spent the last few months collaborating with the Java Card team to create Java Card plugins for NetBeans.

Per-object workqueues - is this a thing anybody needs?

Posted by timboudreau on May 5, 2009 at 10:05 PM PDT

A couple of years ago, at OOPSLA '06, I think, I had a lot of fun hanging out with Jarda Tulach and Rich Unger and writing a generic library for enqueueing a batch of jobs that run against an object on a background thread.

The fun part was really getting to dig into the java.util.concurrent cl

What do you call a...well, that's the problem

Posted by timboudreau on May 5, 2009 at 6:45 PM PDT

A few of months ago I blogged about a simple but powerful pattern for working with Objects not key/value pairs - use dynamic proxies to generate an implementation of an interface, which delegates to the backing storage transparently. It's ready to become a small open source project.

How evil would it be to enforce direct subclasses only?

Posted by timboudreau on May 1, 2009 at 11:43 AM PDT
Every now and then I get tempted to do this:
public abstract class AbstractType {
    protected AbstractType() {
        if (getClass().getSuperclass() != AbstractType.class) {
            throw new AbuseOfInheritanceError();

I've seen so much code that was made less readable and more complicated

Converting objects from A to B and back - there ought to be a library

Posted by timboudreau on May 1, 2009 at 11:33 AM PDT

One pattern that is an incredibly frequent recurring theme is converting an Object of type A into an object of type B for something that understands B to consume. Tons of libraries have something like this embedded in them - beans binding, pretty much anything that validates strings.

Too bad about IBM and Sun...

Posted by timboudreau on April 27, 2009 at 6:43 AM PDT

Now I won't get to surreptitiously replace the NetBeans splash screen with this...



"Fisheye View" plugin for NetBeans

Posted by timboudreau on April 27, 2009 at 2:57 AM PDT

While I'm on my plugin-writing rampage, I just committed a plugin I was working on a few years ago to NetBeans source base. It's a fisheye view of the editor.

A few new NetBeans modules - VNC, Breadcrumbs, License Header Changer, a better Java Navigator and more

Posted by timboudreau on April 26, 2009 at 11:21 PM PDT

I just uploaded a bunch of modules I've been working on to the NetBeans Plugin Portal, and put their source code into NetBeans source repository.

A simple library for Swing UI validation

Posted by timboudreau on April 14, 2009 at 2:14 PM PDT

I recently created a project for Swing UI validation, which is now available on Sun's new open source hosting site, Kenai. I'd love to get some feedback on it.