Blog: 2009-02

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

Google "Protocol Buffers" in PLT Scheme, NOT

I just reviewed the spec for Google "protocol buffers," and had to stop myself from doing an efficient and elegant implementation in PLT Scheme. If anyone has need for fast language-independent IPC from Scheme, just bring your corporate checkbook. :)

Opening Jars

I sometimes remember this story when having especial trouble opening a jar...

Many years ago, we were at a company function with light refreshments, and the guys couldn't get a jar of salsa open.

I think one of the hefty guys tried it first, and he couldn't do it. So he handed it off to another guy in our group -- a towering tank of a man, and a former Navy SEAL. That guy grunted and strained but couldn't do it either.

So someone yells out [names changed to protect the innocent], "Let [Sandra] try," with a chuckle. 'Sandra' was my girlfriend, and a lithe vegetarian former dancer, who was tough as nails but had arms of figuratively similar diameter. I think she was wearing her cowboy boots that day. She seems receptive, and the towering guy hands her the jar. She accepts it nonchalantly and, in what seemed like a single practiced motion, inverts the jar, gives it two whacks, re-inverts, twists the lid right off with little effort, and hands it right back.

They weren't expecting that.

Soundex Scheme Library Finally in PLaneT

My old soundex Scheme library is now in PLaneT, and with the new documentation format.

Update: And updated numspell, levenshtein, and WebScraperHelper.

I figured I'd convert a few old, simple libraries to the system, before pushing out new and more complicated libraries with it.

Quack 0.35 Released

Quack 0.34 has a few changes, including recognizing Scheme scripts based on #! magic numbers.

Temporarily PLT-Only

Dear users of my Scheme libraries:

I'm changing how I administer the libraries, and there will be a bump during which I'll be distributing only PLT versions of the libraries. Then I will resume releasing portable versions of most of the libraries.

The first two steps of this process, I completed over the weekend: convert the source format for the Scheme libraries from R5RS to PLT (such that the portability translation will happen in the other direction), and write a translator from my embedded documentation format to the PLT Scribble language.

As a test case, I've uploaded a new PLaneT package for the csv library, and used the Scribble documentation as the official home page for the library.

These changes will help me to develop and release open source Scheme libraries more quickly with the limited time I have available.

Quack 0.34 Released

I have released Quack version 0.34.

Web Fast CGI Support in PLT Scheme

 screenshot of sample page in Web browser I now have a library that is implementing fast CGI support for PLT Scheme, using SCGI. A sample page that uses multiple modules loads instantaneously, even though it's not compiled.

I'll do some more work on it, and then release it, probably along with my new HTML templating library. I plan for all the libraries to be licensed under LGPL 3.

I had mostly implemented FastCGI with multiplexing, which is orders of magnitude more difficult than SCGI to implement correctly, before I decided SCGI was a better first step. SCGI does have a few limitations, so I always have the option of resurrecting FastCGI, if necessary.

ThinkPad T60 & FVWM & Gnome & NumLock

This evening, I had a bizarre problem on my freshly-reinstalled ThinkPad T60 in which my FVWM key and mouse bindings (which I'd been using since 1990) suddenly stopped working, and still wouldn't work after a cold boot.

After much experimenting, I found that some kind of phantom key modifier was excluding my bindings, and then that the FVWM command IgnoreModifiers 2 made the symptoms go away. Which meant that FVWM thought that NumLock was on, even though this state seems disconnected with the actual NumLock keyboard and LED behavior. For good measure, I added IgnoreModifiers L25 to my FVWM configuration file.

Knowing that NumLock was involved, I then found a ThinkWiki's "How to get special keys to work" page, which singled out the T60 as being particularly annoying with its NumLock implementation, and did not provide a workaround.

Then I found RedHat bug #385141 comment #22 by Peter Hutterer. The second part of the solution was to toggle off the Gnome registry key /desktop/gnome/peripherals/keyboard/host-HOSTNAME/0/numlock_on.

I have also added this line to my X startup:

gconftool-2 \
    --set "/desktop/gnome/peripherals/keyboard/host-${HOSTNAME}/0/numlock_on" \
    --type=bool \
    false

Additional keywords: Num Lock, NmLk, Num_Lock

How Are Your Fire Extinguishers?

 fire extinguisher Do you have enough fire extinguishers in your house, and one in each car? And do the gauges on each read good? I realized I didn't currently own any, so I picked up one at Target for $16.

Note that, in addition to the general-purpose Kidde A-B-C (US classes) extinguisher, Target has a white Kidde "Kitchen" model, but that is only B-C, and of the same ratings for B and C as the A-B-C, not a K. I decided to just get the A-B-C, and be covered for wood fires as well liquids and electrical. This is based on my very sketchy understanding after 10 minutes of Web browsing, so if you know better, please tell me.

Oh, if you buy a Kidde at a bricks&mortar store, open the box in the store and make sure that the needle on the gauge is in green and that there is no extinguisher residue in the box. I saw several customer reviews on the Web saying they received one that had leaked.

DealExtreme

I recently pointed a friend at DealExtreme, and his reaction was just short of orgasmic.

DealExtreme is great for finding dirt-cheap prices on low-quality but interesting gadgets. Be sure to read the reviews, and be aware that items are often described poorly, and what you receive might not even match exactly the description that is provided.

How to Lose Valuable Domain Names

Have a credit card that rejects a $36 charge from an established domain registrar -- for the renewal of three domains you've had for years -- and only learn of it when you call your credit card company about a different matter.

The registrar is offering to give me back my domains for a total of $375, but I can't cost-justify that right now. So I have resorted to dealing with the world's most sleazy and well-known domain name registrar, who happens to have a domain name "backorder" service, to get the .com and .net variants. I will save money by not trying to get the .org variant this way, since few people will want that one without the .com.

I'm calling up Al Gore and having him take away the Internet until my domain names are returned to me, and in good condition.

Blood Drive at MIT This Week

 American Red Cross logo The MIT Community Blood Drive is going all this week at the Student Center (the concrete building across the street from the big 77 Mass. Ave. entrance).


How To Wait For the T Without Complete Commitment

Sometimes the T (Boston subway) doesn't arrive in a timely fashion. When I enter the T station from the street, if I think there's a chance I'll want to give up waiting and decide to walk instead, I'll wait to go through the fare gates until the train is actually pulling up.

I encourage you to follow this practice, as well. If enough people do this, then MBTA personnel won't assume that people pacing beneath the surveillance cameras are fare evaders waiting to ride the coattails of someone else through the gate at the last moment.

Consulting

My consulting dance card is about to free up, except for doing occasional support on my last project.

If you think I might be able to do a good job on your project, let's talk.

Humidifying

The dry air was giving me dry, scratchy skin, so I decided to humidify my apartment. I'm mainly blogging this because sometimes I go a while before realizing that the air is dry and that I can do something about it, and I imagine some other readers might have the same problem.

Not having a humidifier or vaporizer right now, I did the obvious thing, and boiled water in a pot on the stove.

One of the times after I did this, I returned to my apartment from outdoors and noticed the apartment having an indescribable "boiling water" odor to it. So, the next time, I stuck in some Celestial Seasonings Bengal Spice tea, which gave the apartment a slight cinnamony odor.

Some cautions and tips...

Careful not to leave a boiling pot unattended, since you can destroy the pot and start a fire. Stay in the kitchen, as if you were cooking.

Careful not to make it too humid, or you can increase indoor allergens and even grow some dangerous fungus.

This might use a lot more energy than a vaporizer or humidifier device.

Using water run through your filter will avoid leaving behind mineral deposits.

Temporary Protected Status

[Gonlakpor Gonkpala's] stay of deportation expires in March, and the US government could either force him and 3,500 other Liberians nationwide to go home or grant them another extension under a controversial federal program that is attracting growing criticism on both sides of the immigration debate.
"If I leave here and go to Liberia today I am a stranger," said Gonkpala, a graying 56-year-old parking garage attendant with a weary voice. "I've been here in this country for 27 years, pretty close to half of my life. The only home that I know now is America."

—Maria Sacchetti, "Temporary immigrants forge enduring ties," Boston Globe, 2009-02-02

And check out the sympathetic news portrait by Globe photog Barry Chin. Gonlakpor Gonkpala sounds and looks like a good American. He's been here legally for 27 years. Who would tell him he has to leave?

Earlier to... 2009-01

© Copyright Neil Van Dyke      Contact