Insert Witty Irony Here

vince kraemer's Weblog


20070730 Monday July 30, 2007

Monkeying with the GlassFish Issue Tracker

I am a Firefox user but have never really gotten into customizing it with add-ons. That changed a couple days ago, when I came up with a punk hack that I wanted to enable on Google search result pages.

I started to look at Firefox add-ons that might already perform my hack... which would kind of ruin the fun of implementing it... or help me implement it.

One of the add-ons that I found was Greasemonkey. It doesn't perform my hack, but it has allowed lots of people to implement customizations of web-pages that are similar to what I want to do.

I installed it and started to look for scripts that would teach me how to monkey-around. I found this script by Jesse Glick that modifies the page title for Issuezilla entries. Direct link to Jesse's actual script. If you have Greasemonkey installed clicking the link to Jesse's script will ask you if you would like to install it.

I read through the script and took it for a testdrive... and I liked it. Then I remembered that the NetBeans Issuezilla is hosted by the same folks that host the Issue Tracker for the GlassFish community. So, I decided to try an experiment.

I opened the Greasemonkey Manage User Scripts... dialog and saw this.

I used the Add... button to update the Included Pages list to look like this.

I went to Java.net and logged in and went to look for some GlassFish issues that I need to VERIFY. I have been very lazy about that...

When I clicked on a link to see the details on an issue, this is what my Window title looked like.

Then, I figured I would share this with folks in the GlassFish community.

And now, I am done
(2007-07-30 20:00:00.0) Permalink

20070729 Sunday July 29, 2007

How fast for free....

My investment in a wifi modem has broken even, after I said buhbye to my DSL line a couple months ago.

To be honest; I don't always get these kinds of throughput numbers.
But things have been really snappy the last few days, on a regular
basis.
(2007-07-29 18:26:08.0) Permalink

20070727 Friday July 27, 2007

Java API design antipattern and tip

The Antipattern: Don't Create an Event Object for Your Listener Interface's Methods

I discovered this while trying to implement against a Listener interface that just sent in the "interesting" parts of the event... A String or two.

I needed to find out the source of the event (which is a pretty standard member of an Event interface), so that I could react to the event. This is easy to resolve by creating the listener with an additional member for the "expected" source. Or it is easy to resolve until you try to garbage collect these listeners that know their source...

An Event/Listener pair helps your API mature gracefully. Additional members/accessors can get added to the Event side of the interface without requiring changes in code that implements the Listener, unless the listener wants to USE that new member/accessor.

In the interest of transparency and honesty; I have to admit that I helped review and approve the Listener interface that lead to this entry. It just goes to show the value of having to write REAL code against an interface before you say, "Oh. That looks fine."
(2007-07-27 13:48:26.0) Permalink

20070726 Thursday July 26, 2007

Learn another real language, young American programmers!

Joel has an entry with Advice for Computer Science College Students. His first piece of advice is "Learn how to write before graduating".

Advice I wish I had heard and heeded, back in the day...

I would say this is even more important than when Joel went to college or joined Microsoft. As development teams become more diverse, people who didn't learn American English and idiomatic usages will be reading the documents that you write. You will be able to work more effectively with folks that have learned English as a second (third, fourth) language if you can write clearly in English. That makes the team that you are part of more valuable to your employer.

I work with folks who speak many different languages on a daily basis. Most of the communication between us is written (as e-mails and IMs). Your communication will probably be written, too.

I would add a corollary to this advice, targeted at American C.S. students:

Study a Language other than English
I don't have advice on which language you "should" study. The software development world is changing too fast for such specific advice to useful or relevant by the time you read this.

Studying another language will improve your ability to "see" that you are not "on the same wavelength" with a peer. That is a valuable skill... The faster you realize there is a problem in your communications, the faster they can be corrected and the "real work" can happen. This even applies to situations where you are both speaking English.

Full disclosure: I studied French for a couple years in high school. 
   I can say crepe with the worst of them.  I studied Mandarin for a
   couple years in college. I still eat with a fork when I go to a
   Chinese restaurant. 
(2007-07-26 18:53:43.0) Permalink

20070724 Tuesday July 24, 2007

New GlassFish Integration Feature: XML Multiview editor for deployment descriptor editing

In my New GlassFish Integration Features screencast, I touched on this, but it went by very quickly.

In earlier releases of NetBeans, the vendor specific deployment descriptor was "managed" by leveraging JSR-88. Some of this management spilled into the editing experience for these descriptors. It was significantly different than the editing experience for the "standard descriptor".

Here is a screen shot of the XML multi-view descriptor editor for the ejb-jar.jar file.

The editor for the associated sun-ejb-jar.xml was radically different.

In the NetBeans 6.0 release, we finally bit the bullet and threw out most of the "management" aspects of JSR-88. This has allowed us to create an editing experience for the sun-ejb-jar.xml file that is similar to the experience for the standard, ejb-jar.xml editor.

This screen shot is from the same project as the previous image, but shows the editor from NetBeans 6.0.

Follow this link to a search for all of my entries about new GlassFish integration features for NetBeans 6.0.
(2007-07-24 23:12:07.0) Permalink

20070712 Thursday July 12, 2007

Unusual Customer Service

Today, my wife ran into some good customer service... With a twist that made it worth mentioning...

She called Southwest Airlines to rebook a flight, since their web site was a bit finicky about the flight that she wanted to change. (It was the second half of a round-trip, where the first half of the trip had been completed).

She got connected with an agent and started to explain that she needed to rebook a flight. The agent said, "I'm sorry, we cannot rebook flights on Thursday". This statement was obviously a joke... and maybe not a very good one, considering the "state" that most folks are in when they need to speak to an agent...

But, my wife is a problem solver and a has a bit of pirate in her.. Think Jack Sparrow... and was able to reply, in almost the exact same deadpan as she got from the agent, "I am sorry to hear that. Lucky for me the flight I want to change is on a Monday".

The rest of the transaction went without a hitch and, I hope, both sides of it got a bit of a chuckle from it... I know we both did.

(2007-07-12 16:21:12.0) Permalink

20070702 Monday July 02, 2007

GlassFish Integration Features Screencast

I have written a number of entries about new features in the GlassFish Integration for NetBeans 6.0. Many of them have included screen shots and others have just been text.

Since NetBeans 6.0 Milestone 10 was released earlier today, I figured that I would post a quick screencast tour of the features that I have blogged about.

I was using the GlassFish V2 b53 promoted build as my Java EE platform. Both the IDE and application server were running on a dual processor 2GHz PowerMac G5, with about 2.5 GB of RAM.

Note: my machine doesn't have a microphone, so the screencast is more of a silent movie than I would like. If I do another screencast I will probably have to get a microphone, so I can provide a bit of narration.

(2007-07-02 23:05:20.0) Permalink

Calendar

« July 2007 »
SunMonTueWedThuFriSat
1
3
4
5
6
7
8
9
10
11
13
14
15
16
17
18
19
20
21
22
23
25
28
31
    
       
Today

RSS Feeds

XML
All
/5 in 5
/Compile Time
/Ease of Evolution
/General
/GlassFish
/Gotchas
/Java
/Music
/NetBeans
/Sailfin

About Me

Photo of Vince Kraemer
Short Bio

Search

Links


Navigation



Subscribe with Bloglines Add to Technorati Favorites

Referers

Today's Page Hits: 383