Folks, family, and friends may have noticed I’ve been fairly absent from posting, chatting, and general socializing for the last few days. A chunk of this mysterious quietness can be attributed to digging my fingers into a coding project I’ve been thinking about for a while.
I’ve just released JRemoteforMyth. This is a webstart-enabled app for folks who tend to hang around on their laptops or desktop machines, with a MythTV box nearby. It allows for a small ‘remote’ application to sit on their desktop and control the Myth box remotely via normal “up” “down” “enter” buttons.
There were a number of challenges writing this. I haven’t written Swing applications in a few months, and I’ll be needing to get back in the saddle shortly for some consulting work I’m doing. This was a great ‘simple’ defined application I could whip up that had a fairly definite design, goal, and completion metric.
The second challenge was this was my first full webstart-enabled app written entirely inside Eclipse. For the most part, this didn’t present any particular problems, and went quite smoothly. I’m still ecstatic about Eclipse’ SVN and CVS repository integration. Using CVS to hold my working files, I was able to switch from my laptop to my desktop machine with only a Project->Team->Commit on one machine, and a Project->Team->Update on the other. Yay!
Last but not least, a grump. When writing a Webstart enabled app, the resulting ‘jar’ file that containst he app is published onto a webserver, and the JNLP descriptor file tells webstart well to download it. Webstart, however,will only install and run ‘signed’ jar files. Eclipse provides no mechanism for signing jar files internally. It can generate the jar file for the application, but several command line tools need to be run to actually sign the file. Very annoying.
I’ve announced the app to the mythtv-users list, and I’m seeing downloads, so SOMEONE is interested in it.
Next will be some basic enhancements to it, adding things like keyboard entry, an multiple tabs so the ‘keypad’ can be displayed along with normal navigation keys.