Categories
Etc

What a perfect day

I took today off from work. I’ve been working like mad for the last few months to get a rewrite of our help system out the door, and it finally went out two weeks ago. I’ve spent the last couple weeks getting my sanity back and doing some general spring cleaning around the product, fixing up the stuff we decided to cut for launch. All in all, it’s been better, but still stresful. Coming down out of that crazy place takes some time and I’m slowly readjusting and getting ready for the next push, whatever that happens to be.

Anyway, this post was supposed to be about today. Today was great. I slept in for a while, then got up and had a slow morning of coffee, posting here, and reading my news feeds in SharpReader. Just a good, slow morning. Mandy hit up TJ Maxx for some pants and returned about 11. We then headed out to the country club for the school golf outing.

First, I have to say, I was very surprised and happy to find out that I was going to be able to play; I don’t teach at the school Mandy teaches at, and this was supposed to be faculty only. However, they had an open spot after everyone had signed up, so I got to play. Thanks to all that made it happen. The course (Sleepy Hollow CC) was amazing: well-kept grounds, a magnificent club house, Titleist range balls, immaculate greens and fairways, and a great short game practice area. It was easily the nicest golf course and grounds I’ve been to, and it’s right here in my back yard. Too bad I’m not a member… The course itself was very well laid out, with excellent views of the Hudson river valley below us. I took some pictures that I’ll have up as soon as I find the time. The best part though was really the overall experience.

We had a caddy (Clarence) who has been caddying at the club for twenty-seven years. I’d never had a real caddy before, and this guy was astounding. He never misread a putt all day and knew right where to put the ball off the tee and on the greens. For example, on one par 3 (180 yards, downhill) he told me to aim 25 yards to the left of the pin, at the edge of a bunker. I did and hit it right on the suggested line. To my amazement, the ball hit on the green, then slowly rolled almost dead left, right up to about six feet from the pin. It was like that all day. In addition, he was just a great guy to have along for 18 holes of fun golf. All three of us in my group (Mandy, Chris, me) had an awesome time and hope to get the change to play there again.

Categories
Etc

NYC Bicycle Drag Race???

I happened across a movie of a bicycle drag race in NYC, looks like sometime in the winter. They seem to be posing as bike messengers (day job?) and they race from Central Park, through the busy day time streets, to some finishing place.. I’m having problems getting the whole video, but it’s fascinating to watch. Now I’ll always be wondering, are those insaneo bikers delivering packages, or in a race?

Categories
Etc

Impressions on GMail

A couple days ago, I was invited to pick up a GMail account (blowery AT gmail DOT com). I’ve been playing around with it and here’s what I’ve found:

  • The default, conversation-centric view is really fantastic. I’ve gone back and forth with a friend of mine a few times to see how it tracks the conversation and how it displays the messages. The current message is displayed in full, while previous messages are displayed in chronological order, with only a small summary of that message showing. I like how it shows the conversation in chronological order. I also really dig on how they collapse previous messages to save space and bring the information together spatially. You can also click on a previous message to show the whole thing. One thing to keep in mind with all this is that it’s all happening in-page. It doesn’t feel like they’re going back to the server to fetch the full page; they may be fetching the full message, but it’s still quite snappy. Because they don’t do traditional page refreshs, it really doesn’t feel like a web app, other than the lack of rich editing controls. Interestingly, they do use page refreshes at some points, which seem to be carefully laid out to correspond with the possible use of the back button in your browser. For instance, click on a conversation thread does a full refresh to show the thread, but clicking on individual items in the thread refreshes in place. When you hit the back button, you move back to the list of conversations, which is really quite nice. I wouldn’t expect back to simply undo my expand/collapse choices within the thread, and it does not. They really spent a lot of time thinking about interactions between the browser and the application.
  • Quoted text is hidden by default. Citing the previous point, the conversation-centric view really makes it unnecessary to have each message contain some little bit of context. You have the full context of the conversation sitting in front of you; why bother with quoted text?
  • The UI is really really slick. It’s one of the better examples of making a web UI truly dynamic and reactive to the user. The UI includes keyboard shortcuts for common commands (u = refresh and show me the inbox for example) and is laid out very well.
  • Macintosh support is pretty spotty. It doesn’t appear to work in Safari at all. However, it works quite well in Camino (and I would guess by extension, any Mozilla-based browser). The sign-in page explicitly states that the app does not work with IE5/Mac. If you want to use GMail from a Mac, you’re going to have to install something based on Mozilla.

I think Google has a winner on their hands. It’s certainly better than Yahoo mail or Hotmail, and the gig of storage is pretty handy. I don’t have enough messages yet to really make the search bits stretch their legs, but I’ll report back when I do.

The only thing I really wish it had that it doesn’t is the ability to map onto a non-gmail e-mail address. I would love to use this interface on top of my blowery.org e-mail accounts.

Categories
Etc

Sets in .NET

One thing I often lament is the fairly poor collection support in the .NET framework.  Sure, we have the workhorse classes like ArrayList and Hashtable, but we’re missing lots of other things.  I big thing missing is a Set abstraction.  I use Sets fairly frequently and I miss not having them built-in.

Thankfully, Jason Smith has implemented some Set collections in c# and made them available as source.  I’ll have to go through these and turn them into CodeSmith templates so I can have strongly-typed Set goodness!

Categories
Etc

System.Xml.XmlDocument = Voldemorte?

While Mike and I were preparing for a training session this weekend, it occured to me that the XmlDocument is turning into the Voldemorte of the System.Xml namespace.  No one really recommends you use it, in fact, most tell you to avoid it if you can.  It’s really a pretty evil class, and I’ve had to brow-beat more people than I can count out of the XML-is-slow mindset.  XmlReader and XPathNavigator are your friends.  Use them.

Henceforthe, XmlDocument shall be the class-that-shall-not-be-named, especially once System.Xml 2.0 hits the streets.