My JavaFX presentation at PanamaJUG 2007 (JavaFX en Español)

Last December I did a presentation about JavaFX in Spanish for the Panama Java User’s Group (JUG). This event took place in the city of Chitre, and was a lot of fun to participate in, specially since it gave me a chance to visit my native country. The presentation aimed to serve as an introduction [...]

The maximum number of methods in a class

The other day I saw a Java interface with well over 300 methods (with no inheritance). It’s one of these interfaces that is a single point of entry into a system, and I’m partly to blame. Really didn’t think about how the API should scale, and now that there’s years and years of development [...]

GenderRenderer, GenderEditor and unfortunate class names

 
So the other day I’m looking at somebody’s code and notice a class name that caught my attention; “GenderEditor”. I think it was just your normal JTable class to show a “gender” property, but I thought it was kind of funny because the class name implied you could use this program to switch a user’s [...]

New Java logo, Ruby style! (a few thoughts on programming language marketing)

No, I’m not proposing my brand new Java logo replace the latest one from Sun. As a matter of fact it’s hardly a good logo, and seems more like a book cover, but for some reason a very similar logo (the one mine is based on) was selected as the official one for Ruby.

People [...]

Beware of rotten apples

I like Apple, it’s a highly innovative company with great products. I passion for programming was developed as a kid when I had an Apple //c. I own a couple of iPods and wouldn’t mind having one of those cool MacBooks. A few years ago, and at this year’s JavaOne, I noticed lots of [...]

Bad dialog practices …

 
When I launch Netbeans 5.5, it seems I’ve installed some version control module that produces these two dialogs whenever I start the IDE. I still can’t figure out what the program wants me to do here. First of all, it has to be a bug and not a feature that it’s popping up 2 modal [...]

Magnetic Desklet v 0.1

 
I uploaded the first version of the “magnetic desklet”. If you have AB5K installed, it should install and start by clicking/downloading this:
http://sellmic.com/download/MagneticDesklet.desklet.
I have a blog entry that describes the concept of what this is trying to do (not everything is implemented), and another post on the desklet dev list with more details. The short description [...]

Usability matters

At work, I spend a lot of time talking about usability, and often find that people think I’m just talking about the aesthetics of a particular application. Usability is much more than that. At its essence, it’s a way to ensure that a product is really solving the needs of its intended users, in [...]

Game programming under 4096 bytes

So this year I decided to give the Java 4K programming contest a try. I’ve been learning some Flash game programming techniques lately, but decided it be fun to try to create a little retro game with the same code size as some of the old classics (Space Invaders, Asteroids).
So far, it looks like [...]

‘this’ can’t be null

 
This is the first entry on a category I’d like to name “Code bloopers”. I recently got a message about a piece of code that was throwing a null pointer, it was basically of this form:
synchronized(this.foobar)
This is an easy one. If you think it’s because “this” is null, you have to go back to [...]