Things that suck about Java

Many common tasks take an absurd amount of code. For example, try producing a date in RFC2822 format, in the local time zone. Isn’t Java supposed to be a good language for Internet programming? What’s with the special types that aren’t objects, like int? I just want to have integers, and leave the compiler to determine the appropriate implementation. In the worst case, I don’t mind specifying how wide I want my integers in advance, but please, can we have them act like proper objects (i.

Eclipse and SWT: What’s missing

The Eclipse project has developed a toolkit which allows you to write Java applications via an application toolkit called JFace. This in turn uses a toolkit called SWT to provide native user interface objects to your Java program. End result: native look and feel, faster applications. So, if you’re a software developer, go take a look at the Eclipse web site. See if you can spot what’s missing. Hint: It’s something incredibly important.

Learning J2EE, continued

I’ve just successfully written an EJB, deployed it, and called it from a servlet and some JSP. Right now, it looks like the EJB specification has the highest complexity-to-benefit ratio I’ve ever encountered in a programming API. Sure, I’m a beginner to J2EE, but I’m an experienced software developer, and over the years I’ve developed an intuitive ability to recognize a pile of steaming crap when I see one.

Up and limping with J2EE

Today I decided that writing my own application deployment descriptors was unnecessary drudgery, so I tried out xdoclet. It doesn’t work, I get various stupid error messages that I see (from the mailing list) have been reported by other people too. I strongly suspect crapulence on xdoclet’s part, since its API changed between release 1.1 and 1.2, and will change again completely for 2.0, which is a complete rewrite. (A lot of Java projects are like this.

Cocoa better, not Cocoa butter

Spent the afternoon and early evening improving the screensaver and learning my way around Cocoa better. (As opposed to cocoa butter, which would probably have been much more enjoyable if used appropriately.) I now have a preferences sheet with various sliders and a color selector, and code to load and save preferences in the correct way. In the process, I triggered yet another bug; tracking it down revealed yet another way in which the reality of the screensaver API differs from the documentation.

Java dream

Last night I dreamed about work. It wasn’t even an interesting dream about work; I just dreamed about tradeoffs in API design for Java class libraries. It was practically unpaid overtime. I’d try to claim for it, but they’d probably just dream that they paid me.

Takeout, delivered

The following are extracts from transcripts of two tape-recorded conversations between undercover investigators from the Office of Special Investigations at the US General Accounting Office and two gun dealers in Nebraska and Oregon, respectively. The calls were part of an investigation by the House Committee on Government Reform into the availability of long-range .50-caliber sniper rifles and armor-piercing ammunition. With an effective range of four miles an the ability to pierce several inches of steel, .