The September 2005 Blog
send me a comment

Serenity: The Signal (Wednesday, Sep 28)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

So, you've caught up on the whole Serenity phenomenon this week, right? Watched the Firefly DVDs, bought the trading cards, and even took a peek at the script.

You think you're ready? You think you've totally geeked out?

Think again. There are people who are way more into this than you are. Take a listen to some of the podcasts at The Signal -- now those guys are hardcore. (One of the guys is named Kevin Batchelder... I wonder if he's any relation to Ned...)

But you know what, even if you're just a casual observer, you'll still enjoy the show. Just like how you probably liked Star Wars, even though you didn't show up with a home-made lightsaber.

Another Wonder Woman Tie-In (Tuesday, Sep 27)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

Wonder Woman Movie Graphic So, as a Serenity Week follow up from yesterday. Joss Whedon is writing the script for an upcoming Wonder Woman movie. We've established that.

It also turns out that Adam Hughes (who drew the Wonder Woman movie graphic to the right, and also has a rockin' Wonder Woman art gallery page on his site) is having a giveaway related to the Serenity movie.

If you send in your opening weekend Serenity ticket stub, you get entered into a drawing to win some original Adam Hughes art. In his own words:

Yup. You heard me right. Go see Serenity the weekend of September 30th. Save your ticket stub (to prove you went and that you went opening weekend) and mail it in. Heck; mail in as many as you'd like. Go as often as you want, take as many friends as will give you their stubs. All the stubs we get will be entered into a drawing, and one lucky movie-goer's name will be drawn to win a fully rendered, finished piece of art by Adam.

Details and mailing address here.

Excuse Me, Wonder Woman (Monday, Sep 26)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

My kids have several of the superhero action figures from the current Justice League Unlimited cartoon series, and when we were playing with them the other day I noticed an interesting thing:

Batman, Wonder Woman, and Superman action figures

It seems that Wonder Woman sits a bit... um, funny. Compared to the other superheroes, anyway. We've probably got 8 different characters, and Wonder Woman is the only one who sits like that. Huh. Must be an Amazon thing.

Anyway, since I declared this to be Serenity Week, I'll need a tie-in. And I've got one for you, darn it. Joss Whedon, the guy behind Serenity (and Buffy, and plenty of other things) is working on a script for a Wonder Woman movie. There's a good mention of it in this interview from "In Focus" magazine, about halfway down. It's a pretty long interview, but also pretty interesting if you have the time to read it.

Serenity Week (Sunday, Sep 25)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

It's Serenity Week!

If you forgot to mark your calendar, the movie Serenity (based on Joss Whedon's short-lived series Firefly) hits the theaters this Friday. Even my Tivo reminded me a few days ago:

Serenity Trailer on Tivo #1 Serenity Trailer on Tivo #2

I'm not sure what the advertising budget is for this movie, but they've been doing a fantastic job promoting Serenity on "alternative" channels. Besides Tivo and the Internet, they also did a three-part comic series (which I've heard will be compiled as a graphic novel), a role-playing game, and they even released the entire movie script along with interviews and background information earlier this month.

So here's what you need to do: go to Amazon.com, Blockbuster, or your local library and buy/rent/borrow the Firefly series on DVD, watch all the episodes and the special features, and go see the movie this weekend. You'll be a better person for it.
;-)

soapUI Testing Tool (Monday, Sep 19)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

If you're a developer who's playing around with Notes 7 at all, one of the more interesting things to play with is the web service provider functionality that's now built-in and very easy to implement in both LotusScript and Java. For a quick start, you can download Wild Bill's "world's simplest web service example".

So creating a web service in Notes is now very easy, since all of the heavy lifting is done for you. But calling a web service... still a pain. If you want to call it from Notes, you still need to use MSSoap (not bad as long as you are using Windows and can read a WSDL file) or try to hack an Axis client together or (if you're like me) just write the raw SOAP message yourself and parse the response.

Well, just today I saw a link to the soapUI website, sporting the following tool:

soapui is a java-swing based desktop application for inspecting, invoking and functional testing of webservices over HTTP. It is mainly aimed at developers/testers providing and/or consuming webservices (java, .net, etc). Functional testing can be done interactively in soapui or within a CI-process using the soapui maven-plugin. soapui currently requires java 1.5 and is licensed under the LGPL license.

It's really a pretty slick little program. You feed it a WSDL page, and it gives you a breakout of all the methods you can call from it. Click on a method, and it will give you an example of the raw SOAP message that should be sent as a request. If you feel like prodding, you can enter values for the request parameters and click a button to send the request off and see what you get back.

So how does this help you, the Notes developer? Well, two things:

If you want an example of how to send and receive a raw SOAP message using Java, you can take a look at the source of my SoapTester tool for starters. You should be able to use that as the basis for the sending/receiving code, including dealing with proxy servers and socket timeouts.

iPod Nano Ad Campaign? (Wednesday, Sep 14)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

Russell Beattie posted a hilarious mock ad for the iPod nano. Ha! Sounds like he's thinking more along the lines of "iPod nah... no thanks". Or, in his own words:

The nano is a converged device that forgot to bring along the rest of the functionality.

In other advertising news, Ed Brill put up a shot of the new Lotus ad campaign, which is right in line with the IBM ads I was talking about the other day. I think that's for all the people who said that IBM never promotes Lotus Notes: a full page color spread in the Wall Street Journal. Hopefully more to come.

Security Versus Reliability (Tuesday, Sep 13)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

I was searching through some of my old files tonight, trying to find some information I had stashed away a few years ago, and I ran across this little snippet I copied out of a Crypto-Gram Newsletter long ago. It's a reader comment about software security versus reliability (well, the comment uses the word "safety", but in software it's really security):

From: "Douglas St.Clair"
Subject: RE: CRYPTO-GRAM, February 15, 2002

I taught the course in Systems Safety Analysis at Picatinny Arsenal to nuclear, biological, chemical, and conventional weapons designers in the late 1960s. There are two points I want to make based on this experience.

First, the distinction between safety and reliability is based on time and place, not the design. For example, consider a faulty door on a manned NASA vehicle. If the door falls off while the vehicle is being moved to the launch site, it is unreliable. If the door fails in space and men die, then it is an unsafe door.

Now consider how things get designed. Let's consider weapons systems because, for one reason, it gets us away from the love/hate Microsoft issues. Somebody wants to put a missile on a Humvee. The safety guy wants at least two switches be thrown before the missile fires and he wants them placed so it takes two men to do it at the same time. The reliability guy wants switches all over the vehicle so that if one of them is thrown the little rascal is underway. Both guys can argue reasonably for their position. In the end, since they can't agree, some manager who may not understand the technical issues will make a decision.

I think that the issue also revolves around the genetic makeup of the players. The ideal safety guy measures risk in terms of the magnitude of regret. The ideal reliability guy considers magnitude of risk. If the risk is less than some limit he will accept it. Managers are encouraged to make decisions, in the absence of good data, no matter what the risk. I think these traits are coded in the genes of the principals.

Before any substantial change can be made in Microsoft, the company's culture needs to change and that means the players will need to change too. I don't see Microsoft firing and hiring the substantial number of people required to make a change in culture possible. In the end, Barne's Law, "If nothing changes, everything will remain the same," will win out.

I thought that was pretty interesting, from the software development standpoint. You're always looking for a balance.

The Gloves Are On (Monday, Sep 12)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

By now, many of you have probably seen the image of the lady in boxing gloves on the Notes 7 launch page. It's a cool concept, Lotus/IBM with boxing gloves, ready to rumble. It's a good competitive, fighting message that a lot of Lotus users are quite happy to hear.

While I was searching for information on a few of the computer news sites today (InfoWorld, NetworkWorld, etc.), I got blasted by several more boxing glove IBM Flash ads for Websphere, Tivoli, and Rational:

So I guess that there's a marketing campaign. Boxing gloves, fighting... throw some sex and drinking in there and I'm sold.

On an only vaguely related note, I also noticed a link on the Lotus site to The Story Of Notes video that they played at the Lotusphere opening session this year (or last year, I can't remember now). That's a fun little clip, especially if you've been a Notes programmer for a while.

Since that put me in a nostalgic mood, I went looking for the old "I Am" spots and Denis Leary commercials, but the page that Ed linked to a while back gives a 404 error. I found a link to the current tv ads, but none of the old stuff.

Oh well. At least I've still got the old R5 rally video laying around.

UPDATE: In the comments, Christopher linked to a site that has a lot of the old Denis Leary commercials and Wild Bill has (for some reason) an ancient History of the Internet video that was shown as part of this equally ancient Jeff Papows speech. Great links guys!

Installing Notes 7 Next To Notes 6.x (Friday, Sep 9)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

I haven't tried this yet, but according to this LDD post you can install the Notes 7 client "next to" an existing Notes 6.x client using the following steps:

Like I said, I haven't tried it yet (caveat, and all that), but I thought I'd pass it along. I have the Notes 7 client installed to a virtual machine, and I know that everyone doesn't have that luxury.

UPDATE: Wild Bill said it works for him, and if Bill says it works then by golly I believe it.

Notes Client Status Bar Logging (Thursday, Sep 8)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

Here's a cool new Notes.ini variable for the Notes 7 client (from the ND7 Administrator Help):

Syntax: LogStatusBar=value

Description: Controls the default behavior for logging client status bar messages. For use by administrators and developers for debug purposes. Use the following values to set this variable:

0 - do not log status bar messages (default);
1 - log status bar messages to log.nsf. Messages will still be displayed on the status bar.

What that means is a Notes client with LogStatusBar=1 in the Notes.ini file will get all those little messages that appear in the status bar logged in the local log.nsf file as well. So you'll get entries like this:

09/08/2005 05:40:08 PM  Status Msg: Prompting for password
09/08/2005 05:40:15 PM  Status Msg: Client Execution Security is enabled.
09/08/2005 05:40:17 PM  Status Msg: Using database on Local
09/08/2005 05:40:18 PM  Status Msg: Logged on to instant messaging.

where all of the status bar messages are prefixed with "Status Msg:". That will come in really handy when I do things like manual refreshes of database designs, which cause dozens of messages to fly by with information about all the design elements that are updated, added, or deleted.

The bad thing is that the log.nsf file on the client isn't self-cleaning like the one on the server is, but that's a small price to pay. And I should be able to set the replication settings on the database to delete all the docs that are more than 30 days old or something, to keep it relatively clean.

Almost as nice as the new "debug LotusScript" button/indicator.

Using Wink for Screencasts (Monday, Sep 5)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

As I'm trying to get an internal application ready for pilot, I've been thinking about a good way of doing some quick documentation for the users. Nothing too long, because I don't think anyone will actually read anything, but something they can turn to for help before they call me, anyway.

I've been toying with the idea of having a handful of screencast movies they can click to -- the kind where you get a shot of someone else's screen, and you see the mouse moving and clicking on things, and maybe there's some commentary or informational bubbles that come up. Like Lance did with his Domino Ajax presentation a few weeks ago.

I looked around for some good software to do that with, and was pretty impressed with Wink. You pretty much launch the program, start recording with a keystroke, move your mouse around and do stuff, and then use the same keystroke to stop recording. You can choose to record the whole screen or just a section, and once the recording is done you can edit and add callouts. When you're finished editing, you just export to a Flash file. Quality is very good.

And it's free. It even works on both Windows and Linux, if that's important to you.

So I'm going to give it a shot and see if I can generate any meaningful user help with it. I have a feeling I'll spend more time playing with the software than I will actually generating presentations, but that's all part of the fun (I mean "job").

Rich Text Button Class (Friday, Sep 2)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

Okay, one [hopefully] last update to the Append a Button to a Rich Text Field tip. I changed the code from a function to a class, because it made more sense that way. I also fixed two problems: one where an ampersand in the button label was causing an error, and another where long labels would be truncated.

All done now. Have a good weekend.

Update to Append Rich Text Button Code (Thursday, Sep 1)
[ permalink ] [ GoogleTrack ] [ e-mail me ] [ >> ]

Okay, now I remember why I haven't posted any code in so long -- because I always find bugs and have to update it. Stupid bugs. Two things wrong with yesterday's code:

So all that is fixed, and there's a slightly newer version of Append a Button to a Rich Text Field out there for you.

Also keep in mind that the trick of importing funky rich text into a temporary new document using DXL and then appending it to a rich text field in another document is a technique you can use for other things too. Sometimes the DXL is actually easier to work with than all the rich text classes. Or you could buy a Midas license and be done with it...