Blog: 2009-10

Latest  2010  2009  2008  2007  2006  2005  2004  2003  2002  2001
-12  -11  -10  -09  -08  -07  -06  -05  -04  -03  -02  -01

echotime.el

I remembered that I'd been missing being able to check time and date from Emacs at the lab (it sure beats mousing over to the clock on my Windows XP development system and then hovering until the date is displayed in a tooltip). So, while waking up this Sunday morning, I packaged up echotime.el.

Adobe AIR

I recently used Adobe AIR to implement a specialized Web browser for running an AJAX-y Web app that needed to do privileged things on the Windows client side. Specifically, it needed to talk with a local C++ process through a socket using a JSON-based protocol, and to create some config files for a Java-based RDP client that it served.

A few random notes...

Accepting that closed-source AIR was an acceptable tradeoff under the circumstances, I was fairly happy with Adobe AIR.

(In the end, for reasons that weren't in our initial requirements, the AIR part was removed and the code was moved into the C++ process, which included an embedded MS IE control. That C++ code is currently a sluggish nightmare to work with, compared to AIR, despite using new-fangled lazy-kids C++ reference-counted string streams and such.)

For AIR development, I used Aptana Studio for editing, running, and debugging. When, after getting familiar with Aptana, I still found it clumsy for some kinds of edits, I'd use Emacs for when I had non-small edits to make.

For deployment, Aptana seems to want to push you to use their commercial hosting service, and Adobe seems to want to push you to use their closed-source IDE to build an installer. Adobe does make a free "SDK" available as a .zip file, which will scare away anyone not comfortable with command-line tools. I used this "SDK" and a .cmd script to build installers.

The Adobe AIR installer works OK, except, if you're self-signed, Adobe puts up scary warning in a white-on-charcoal window, about how the application can have its evil way with the user's computer.

The other drawback I recall to AIR development is that documentation is so-so. If you Google, you're likely to find out-of-date information. If you browse and find the right manuals, you're likely to get in confusing space where you accidentally start reading about ActionScript when you're programming in AJAX, or you get to old versions again.

If I'd been willing to take more risk, I probably would've gone with open-source Mozilla XUL.

PLT Scheme on both server and client would've been a win for development productivity.

Caloric Psychology

Being in my 30s, and my super metabolism being less super than it used to be, I decided to try calorie-counting.

The first three Nutrition Facts boxes I looked at each read "Calories: 110."

Coincidence? Or is 110 calories the other side of 99 cents?

Remembered Gestures

I started working at a young age. After moving up slowly, almost from the proverbial mailroom, I hit one of those points of punctuated equilibrium. I was transferring from the division of the company in Oregon to the East Coast headquarters, to work in a secretive R&D group. I had started at that company as a teenager, and arguably still was "the kid."

There was a going-away lunch, but it was at the Friday At Four office beer party (I was still too young to pull anything but a soda from the steel tubs of beverages) that one of the engineers approached me. At the time, I would've guessed he was mid-30s, and he had a family man vibe to him. I'm not sure we ever talked before. I still remember his name. He approached me, and said, like he felt it was important to convey, but that, being a modest Oregonian, he felt awkward doing so... that, if he could do it over, he would've traveled more.

He'll never see this, but I appreciated the gesture then, and still do.

How Not to Torch Your Apartment

This morning, I was applying a special anti-slip epoxy spray paint to part of my bathroom floor, spraying for approx. 60 seconds. Just as I finish, I am suddenly aware of a tide of gaseous flame heading along the floor towards me in my socks from the adjacent kitchen.

I saw the surreal wave advance at me in slow motion, and I recall thinking something like, "Fire shouldn't be coming from that direction." But I must've simultaneously leapt over the flames and grabbed the fire extinguisher from the cupboard, since perhaps one second later I was hitting the fire. The flames were up to four feet high, but the extinguisher knocked them down so quickly that much of the paper I'd taped up to mask the walls had not finished burning.

Immediately afterwards, I realize that gases from the treatment must have scooted along the floor to the gas oven, where the oven's pilot light was low enough to ignite them.

I called the fire department to inspect. One of them seemed a little surprised when he said something about "flash fire" to the others, and told me I was lucky. Not even a singed hair. Now that I've spent a few hours cleaning up, I just have to do some repainting.

That fire extinguisher was purchased only in February (see 2009-02-14). Didn't expect I'd actually need to use it on a fire that I started. I'm the one who has a cupboard door in the kitchen labeled prominently, "FIRST AID & FIRE EXTINGUISHER," and thousands of safety protocols internalized. You can bet that, even before commencing cleanup this morning, I went to Target and bought another fire extinguisher.

I'd humbly once again suggest to any Gentle Readers that they make sure they have working fire extinguishers at home. It's a no-brainer.

Earlier to... 2009-09

© Copyright Neil Van Dyke      Contact