Archive for the ‘Uncategorized’ Category
Enough About Brett Favre!
Dear Jon Miller and Joe Morgan:
As you are marginally competent baseball announcers, I am only marginally interested in what you have to say about baseball during Sunday Night Baseball. What makes you think I care about what you have to say about Brett Favre and the Packers, especially while there’s baseball action happening right now in front of your eyes? If I wanted to find out about the latest in the Favre Drama, I wouldn’t be watching the baseball game.
That is all.
The Usefulness of Fact-Checking
In the news today, it was revealed that the University of Maryland accidentally printed Social Security Numbers of students on a mailing about on-campus parking, possibly exposing about 20,000 students to identity theft. The affected students were advised to put fraud alerts on their credit files, and generously offered some free credit protection, which is all well and good.
I was about to go all postal on UMCP for using SSNs as student ID numbers, but a quick look at the FAQ revealed that was not the case; a separate University ID number (explained here) is generally used. The SSNs got on the mailing accidentally. Why the application that generated the mailing labels for this particular mailing even had access to a table that contained students’ SSNs is a very good question, and a question that needs to be asked of the IT staff. But that particular error is not as jaw-droppingly stupid as using SSNs as student ID numbers, which was a common practice at universities about 10-15 years ago. Just a little bit of research beyond what I read in an AP wire story kept me from jumping to a completely wrong conclusion.
But if I did not blog about this incident, I likely would not have looked further into what was going on, and I would have continued to assume that Maryland was still using SSNs as student ID’s (they did when my wife did some graduate work there in the late ‘90s, but they apparently stopped the practice around 2005). Sometimes it’s easy to jump to conclusions about what you read, especially when you have a small amount of inside information about the subject at hand. Because of this, taking the time to fact check before going on a rant is a good thing. Even if it’s not a very bloggy thing to do.
Welcome to the Queens Zoo
Today is a lousy day to be a Mets fan.
After weeks of playing the “will-they-or-won’t they” game with Willie Randolph, they fired him today, or rather, early this morning, after a win no less. The reasons for doing the deed when it was done include “they didn’t want to fire him on Father’s Day,” and “they didn’t want him to hear about it from the media.” But it seems to me that the Mets’ brain trust could not make up their collective mind on What To Do about their underachieving team.
After last season’s epic collapse, it was pretty clear that Randolph was “on notice” – and despite public pronouncements like “Willie is the manager, and he has a contract,” there’s been a feeling that they might drop him the moment things went south. There were rumors floating around in the media such as, “if they don’t take this series, he’s gone,” or “another week like that, and it’s over.” Constantly. Since April.
Today I read that Omar Minaya may have been pressured by the Wilpons to act, and it very much reminded me of the Steinbrenner Way, particuarly the mid-’80’s edition. They called the Yankees’ organization “The Bronx Zoo” for a reason – and I certainly hope that something similar is not happening over in Queens.
Emacs and the Modern Desktop
I’ve been using GNU Emacs, an over-featured text editor for Unix-like systems, off and on since 1989. It has a somewhat primitive interface (at least for those who, like me, are accustomed to a mouse and menu-driven interface), and several quirks that are indicative of its pre-Mac and pre-Windows origin (for example, to find a string in a file, you use CTRL+S for “search” instead of CTRL+F for “find”, and the cursor is mysteriously called “point” in all the documentation). But it can’t be beat for the breadth of file editing tasks it handles well; from DNS Zone Files to Apache configuration files to shell scripts to Windows INI files to XML to source code for just about any programming language you care to name (even Ada!), it can syntax-highlight them all, and in many cases provide additional commands that make editing easier.
Its versatility and power – not to mention its essential “Free as in Speech” nature – has allowed it to survive over the years and function well as both a terminal application and a GUI application on many different platforms. But as the graphical capabilities of Linux workstations have evolved, especially in the last five years or so, Emacs hasn’t kept up. It has always been the odd window out on my desktop, with jagged fonts worthy of a early-to-mid-90’s Sun workstation and a Motif-ish scrollbar to match.
Fortunately, a few changes have been made on the “bleeding edge” that allows Emacs to use the same text rendering techniques that most other Linux desktop applications have been using for years, and a fellow named Alexandre Vassalotti has made Ubuntu packages of Emacs with this new feature, making installation a snap.
One problem I had with this tutorial is that he relies on setting the default font for text using X Resources. Since the new “pretty Emacs” is an alpha version, there’s always the possibility of something not working correctly, and so I keep both the new version and a “stable” version installed. Unfortunately, the older version uses a different naming convention for fonts, and since the X Resource Database setting affects both versions, his configuration suggestion doesn’t work for me.
I set the default font programmatically through the initialization file (“.emacs”), which is written in a programming language called Emacs Lisp. I accomplish this by setting an element in a List data structure called “default-frame-alist”, and I needed to find a way to set that element based on what version of Emacs was running. In Java, this would look something like:
AlistElement fontspec;
if(Emacs.getVersion().indexOf(“23”) > 0)
{
// Use new-style font name
fontspec = new AlistElement(“font”, “Liberation Mono-10”);
}
else
{
fontspec = new AlistElement(“font”, “7x13”);
}
defaultFontAlist.add(fontspec);
After shaking off some cobwebs (if you use Emacs enough to want to customize it, you can’t help but pick up a little bit of Lisp along the way), I figured out the the “if/else” part, but how to manipulate the alist (which is called an “Association List,” similar to a Java Map) was a bit tougher. But I stumbled upon someone who had a similar problem of adding things to an alist, and he suggested using the lisp push function. So my final Lisp code looked like this:
(if (not (eq (string-match "23" (emacs-version)) nil))
(push '(font . "Liberation Mono-8") default-frame-alist)
(push '(font . "7x13") default-frame-alist))
The Shrinking Bedtime Routine
It’s been nearly a year since we’ve instituted a steady bedtime routine with our 17-month old son, in a desperate attempt to get him to sleep through the night. (Luckily, he’s been doing that for about five months now, starting right after he turned a year old.) Over time, it’s become the highlight of my day, especially on non-telecommuting days when I don’t get a lot of time with him. The routine goes like this:
-
Bathtime
-
Read On the Day You Were Born, by Debra Frasier
-
Read Goodnight Moon, by Margaret Wise Brown (“Pictures by Clement Hurd”)
-
Play the 13-song, 57 minute “Baby Shutdown Mix”, sing along with it, and put him in the crib when he’s nearly asleep.
When we first started, most nights I’d put him down towards the very end of the mix; then I started putting him on a bed after the fifth song, stop singing, and cuddle him until he fell asleep. A few months later, and it was the third song (“Lullaby” by the Dixie Chicks). And then directly into the crib after the third song, regardless of whether he was anywhere near being asleep.
Recently, I’ve cut out he second song, and I think I might have to cut it down to just “Lullaby” very soon. Through most of the singing, he’s getting quite talky and wiggly, and last night he was saying “nigh nigh, nigh nigh” well before it was time put him down, which I think roughly translates to “that’s nice, Dad, put me down already.” I know that this will have to end sometime; I don’t think it would be healthy if we were still doing this when he’s 16. I just wasn’t expecting it to be so soon.
Leave a Comment
Leave a Comment
Leave a Comment




