Wednesday, February 20, 2008

Sizer - nice little window sizing tool

I was just looking at the blog of Jeff Winkler, another member of the Boston Java Meetup and saw his entry, "Fix Offscreen Windows Easily with Sizer". Using a screencast, he describes a cool little app called Sizer, which allows you to set the exact size of an application window on a Windows machine (looks like it doesn't support Vista yet), but also helps you make lost/off-screen windows visible again. It comes with three preset window sizes (640x480, 800x600, and 1024x768), but you can easily add your own by right-clicking on Sizer's System Tray icon and choosing "Configure Sizer...". I've added a few which subtract the approximate height of the taskbar (30 pixels on my machine) so that I can see what an app would look like at other standard monitor sizes. I like my widescreen monitor, but I know not everyone has one. I hope you find it useful.

Sunday, February 17, 2008

Battlestar Galactica - the new series

Quite a while ago, maybe as much as a whole year back, friends of ours recommended the new Battlestar Galactica series to me and my wife. They knew from past discussions of Star Trek: Deep Space Nine that we were really into what you might call "serious Sci-Fi", science fiction with interesting and complex stories. We like beautiful visuals and impressive explosions, but what we're really looking for are good, inventive stories. With Deep Space Nine, we really love the way it brought together politics, religion, ethics, and science and how those forces can complement and compete with each other. The Mars Trilogy novels by Kim Stanley Robinson (Red Mars, Green Mars, and Blue Mars) about humanity colonizing Mars painted a similarly complex picture of how future society might function. I was somewhat hesitant to watch the new Battlestar Galactica series because I still remember the original one from the Seventies, which I watched as a little kid. Even then, I think part of me recognized how dumb it was.

So, with all that as a backdrop, we finally decided we should watch it. But, before we started with the new series, Beth and I discovered that the original series was available on the Netflix Watch Instantly streaming video service and we thought we'd sample it for some perspective. As I expected, it was painfully stupid: poorly written, poorly directed, poorly acted, and at the same time very sexist and dated. That was a bit discouraging, but we pressed on and got the first DVD from the new series this week. It was actually the pilot mini-series, which was definitely the right one to start with. We watched the whole three hours on Friday night and were blown away. It was incredible! It's based on the same root story as the original series, but the character of it is so different. It's much darker and the people feel so much more real. I'm so glad they cast Edward James Olmos as the battle-weary Commander Adama (I remember first encountering him when he played Lieutenant Castillo in Miami Vice). What a great choice! I don't want to ruin any surprises for new viewers, so I'll just say that the new series seems very engaging and does a good job of combining the same sort of story elements that I described above for Deep Space Nine and the Mars Trilogy. If you like either of those, I'd highly recommend the new Battlestar Galactica to you. Probably my only complaint is that there's one female character who's rather over-sexified. If you can forgive that, I'm pretty sure you'll like it.

So, next in line for us is the first season! I'll keep you posted.

Wednesday, February 13, 2008

Groovy and Grails

Since I'm interested in increasing my RAD repertoire, I've decided to spend some of my research time on Groovy and the associated Grails web app framework, in addition to Scala. One nice thing about Groovy for an experienced Java developer is that its syntax is closer to Java than Scala's, while still running on the JVM and integrating nicely with Java. While familiar syntax isn't everything, it definitely can make your first steps into a new language a little easier. Grails follows a similar philosophy to that of Ruby on Rails, a well-known "coding by convention" web app framework, but integrates with established Java technologies like Spring and Hibernate. I wish they hadn't chosen a knock-off name like that, but it still looks pretty interesting. In order to learn Groovy, I decided to buy the book Groovy in Action, after seeing a lot of positive reviews for it on Amazon. I'm also checking out various articles I can find online, including the following: Any other suggestions for me?

Friday, February 8, 2008

Firebug and Ajax

Last night, I attended a NEJUG (New England Java Users Group) meeting which featured a talk titled "Designing for Ajax" given by Nathaniel T. "Nate" Schutta who has apparently spoken at several No Fluff Just Stuff conferences and co-authored the book Foundations of Ajax. It was an excellent talk, one of the best ones I've seen at a NEJUG meeting. He discussed a few Ajax JavaScript libraries/packages (Prototype, Scriptaculous, YUI, and Lightbox, for example) and coded several examples in front of the audience. He definitely made Ajaxifying what were previously flat web pages look quite simple. There were always caveats (to paraphrase, "In a production environment, you'd need to add a delay here so that you wouldn't get tool-tips popping up all over the place."), but the libraries seem to handle that mostly with sensible defaults. Although it wasn't directly related to Ajax, he also pointed out while doing the coding demos that he was using Firebug and YSlow for Firebug, very cool add-ons for Firefox that help you tune your web pages. Firebug includes a JavaScript debugger, powerful CSS helpers, and a bunch more. If you haven't used them before, you should check it out.