HallmarcDotNet

Marc Elliot Hall's Blog

Headlines

Thomas wrote about our community Saint Peters, Missouri...

Christmas card is up Check out the Flash...

Blog-o-licious We've got blogs...

Site Redesigned HallmarcDotNet has a new look...

 

Welcome to Marc's Weblog

— also known as my vanity gripe page

Although I'm currently working in Anchorage, Alaska, you may be interested in my abilities for your project. If so, please view my résumé and Open Letter to Recruiters if you are looking for an experienced, senior technical manager, project manager, business analyst, team lead, software engineer, web application developer, webmaster, system administrator, technical writer, or technical editor.


February
Sun Mon Tue Wed Thu Fri Sat
     
7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      
2012
Months
FebMar
Apr May Jun
Jul Aug Sep
Oct Nov Dec

Tue, 07 Feb 2012


Anchorage Days 3 and 4

Everybody Back to Work!

Sunday and Monday were kind of all mooshed together. Breakfast was the usual waffle/oatmeal/juice at the hotel. Dinner was at the Slippery Salmon again, with the Arctic Cuban Panini during the Superbowl and Chicken and Ranch Pizza on Monday night, late. Dr. Brown's Cream Soda (diet!) to wash it down.

Aside from the Superbowl and eating, I looked at two condos on Sunday. Nothing fantabulous, but they were both passable. One was just a little too expensive and one was just a little too far away from the office. 

On Monday, though, I actually met my new colleagues at GCI, including my manager there, Mark Hall. No kidding. Also, I got my desktop system set up and accounts on some development servers, got a quick walk through the datacenter (that makes my basement server closet look well organized), and then dove right into some Perl code. The day flew past at a frightening pace.

We're on a tight schedule to meet our go-live date; so everybody on the team is under some stress — but they seem like a good group. 

Then tonight I looked at one last condo. I think this is the one I've decided on. It's at the low-end of expense, but has a reasonably good vibe and is only 1.4 miles from the office. 

Time to make a decision!

posted at: 01:01 |


Sun, 05 Feb 2012


Anchorage Day 2

Snowed in?

After my nap, I got up and saw that the snow was still falling. Discouraged but not undaunted, I organized my luggage and sorted through all my email and other messages from two days. Then I called my contacts with Bergaila & Associates and GCI to confirm everything for Monday and learned that the work site was not where I was originally told. Fortunately, I had not yet signed a lease for an apartment; so I went online to find a long-term place to stay that would be closer to my office. 

I had done this before and had some contacts, but a couple of the places I had been considering had already been rented. Not deterred, I scheduled a couple of showings for Saturday. 

At about 17:15 I went down to the Slippery Salmon, the restaurant adjacent to the Ramada, and ordered a TBLT wrap and root beer for dinner. After eating, I went up to my room and crashed again until about 04:00 on Day 2 of my Anchorage Adventure.

Knowing I wouldn't be able to sleep, I got up, showered, shaved, dressed, and logged in again to look for places to stay and catch up on my news. I munched on a complimentary breakfast in the pre-dawn dark. 

Sunrise came, eventually, and I got my first glimpse of mountains east of town. They were black against the horizon until the sun was fully over the horizon in the southeast. 

In the growing light, I bundled up and went out to see how my rental car had fared.

It was bad: 

20120204_001.jpg

See how lonely it looks? This is after the parking lot had been plowed once the night before. 

Fortunately, Alamo had included an ice-scraper and brush with the car, so I was able to get it cleaned up enough to run some errands around town. Here's the car (the one in front) after my return from Fred Meyer and other locations around Anchorage. As you can see, I don't really even need a car, as Anchorage has the People Mover bus line that runs all year 'round. This is the view from my third floor balcony (where I keep my ice cream wrapped up so the snow monkeys don't pee on it) looking east. 

20120204_010.jpg  

Note that these streets have been plowed multiple times during the night and into the morning; I took this photo in the afternoon. 

After my errands, I visited a couple of condos to see if they suited. Cheap rent is not available in Anchorage, even in the dead of winter; a furnished studio starts at about $1350 a month and goes up to around $1800, depending on location, amenities, and length of stay. The less expensive ones tend to be old, miles away from everything, or in bizarre configurations — or all three.

Fortunately, the weather was clear and relatively warm — high reached about 30 degrees. Totally bearable and overall quite pleasant after the previous day.

I made a few more appointments to see condos on Sunday and then went back to the Slippery Salmon for dinner — the battered halibut chipotle wrap is pretty good when washed down with a Dr. Brown Cream Soda. 

posted at: 12:44 |


Sat, 04 Feb 2012


Anchorage, Day 1

My Adventure Begins…

Now I’m in Anchorage, where the snow isn’t afraid of falling and the drivers aren’t afraid of six inches on the roads. What a contrast with Missouri! But I’m getting ahead of myself…

I arrived in the wee hours of the morning on Friday, February 3. The plane was full (I was on the aisle, fortunately, but didn’t get more than fifteen minutes of sleep while in the air), which made things a bit uncomfortable. Fortunately, we landed nearly 30 minutes early… which was also a first for me. Just as I exited the parking garage with my rental car, it started to snow.

And snow.

And snow.

Fortunately, at 02:30 a.m., there aren’t many cars on the roads, so I had plenty of room to get my snow driving skills back up-to-date. Despite the snowfall, it was nearly as bright as daylight — the phase of the moon and the albedo of the snow made it easy to see.

Anchorage is one of the few cities in Alaska that is laid out on a grid, so finding my way around was relatively easy. My Tom Tom came with maps for Alaska, too, so I was able to navigate without any trouble.

Knowing my hotel room wouldn’t be ready for me when I was ready to crash, I drove around, exploring the land in the falling snow, practicing my driving technique, and marvelling at the sheer quantity of snow as it fell.

At about six-thirty in the morning, about six inches had fallen on the roads, and traffic was starting to build up. Being both tired and uncomfortable with the taffic volumes, I decided that the iced-over windshield in my little front-wheel-drive Chevy Aveo wasn’t going to give me enough visibility to compete with rush hour.

So I pulled into the parking lot at the Ramada in downtown Anchorage and approached the front desk. “Good morning!” I said to Angie, the manager in charge. “I know my room won’t be ready, but I have a reservation for tonight. Can you help me out?”

Angela was very accommodating. She said, “The room you reserved won’t be ready until about noon, but I can store your luggage behind the desk here and you can join us for breakfast around the corner.” She also offered a different room in the interim, but I demurred, deciding that I didn’t want to move my luggage twice if I could avoid it. Instead, I said, “If I could just change my shoes, that would be great.”

So I brought my luggage in through the snow (two trips, snow over my knees), commented on the uselessness of wheeled bags in the current conditions (Angie laughed at that), opened up my big bag to get out some dry boots to replace my soaking airport security-friendly shoes, and left everything else with her.

Breakfast wasn’t particulary exciting, although they had the usual oatmeal and hot chocolate packets, a variety of cold juices and milk, boiled eggs, fruit, and muffins. The make-your-own waffle irons were nice; I made a couple and topped ‘em off with syrup and whipped cream.

Later, as I was nodding off for the third or eighth time in the lobby, Angie announced that my room was ready. I dragged my bags onto a luggage cart and into the elevator to my third floor room.

The bed was wonderful, and I slept until about three in the afternoon.

At three, though, I got up, showered, dressed, and looked outside to see what the weather was like.

The snow was still falling.

posted at: 17:06 |


Thu, 18 Feb 2010


Tripping Myself Up

Caught with My Pants Down

At about 4:15 yesterday afternoon I received an unusal phone call. The guy at the other end didn’t identify himself at first. He just asked me if I was the site admin for eldoradotech.org, which I am. He then somewhat murkily explained that he’d received a phishing email from a third party. Further, the email linked to my web site. No big deal, except that my web site was in fact serving up a page that looked just like a JPMorgan Chase login page. Not good.

After determining that there was a problem, I immediately deleted the unauthorized files from the server and then shut it down. Unfortunately, this resulted in all of my web sites, email, and other services being unavailable, which is a hassle for my millions thousands legions hundreds scores dozens of two friends and fans. However, it was necessary because whoever had put those files on my server the first time could always put them back a second, and could further exploit not only that server, but the other servers in my gleaming, high-tech ghetto basement datacenter as well as the desktops and laptops around the house.

Fortunately, my workday was largely over; so I rushed out to my car at 5:05 to get home and check things out. All the way there I considered the many possible vectors an attacker might have used to break in to my server. Some of them are difficult and unlikely, while others would simply require access to my password. I generally keep close tabs on my password, but you can never rule out some kind of a slip-up. This is why changing your password regularly is a good idea, even if it is a pain in the ass.

During transit I also thought about the varying consequences of the attack: if it was just the one system, damage could be limited. However, if the attacker had been in the system a long time before using it for nefarious purposes, he or she might have logged other passwords, confidential business information, financial records, or other valuable data. This worried me.

When I arrived at home, I first turned off all the other computers in the house. That’s three other servers, three desktops, and two laptops, currently. This was to prevent the attacker from using one of them to re-infect the first system if he or she was already loose on my network.

After this first step, I booted up the infected server from a clean Knoppix CD image and analyzed the logs. It looks like two IPs were running a dictionary attack against a weakly-passworded mythtv user account:

58.177.188.213
172.173.83.246

Neither IP is responding to ping, now.

The attacker appears to have gained access to the brand-spanking-new mythtv account (no this server wasn’t being used for MythTV, but I keep accounts synchronized across my hosts to keep things simple) and then used a privilege escalation exploit to create a new user, ‘ftpd’. Then the attacker gave the new ftpd account a UID of ‘0’ (essentially, the same access level as root). From there, it was all down hill.

Logs don’t always tell the truth, because they can be edited, deleted, or corrupted. Having something to track back through was nice, but it’s not sufficient. Because for all I know the attacker was leaving a false trail, I elected to nuke the site from orbit. It’s the only way to be sure. So, for remediation, I wiped the system and reinstalled the OS and applications from known clean sources, removed the unauthorized ftpd account, changed passwords left-and-right, then restored user data from my latest backup.

I’m lucky that this was all it took. If my not-quite-anonymous caller hadn’t clued me in, it might’ve been several hours, or possibly several days, before I noticed a problem. And if the attacker had been more sophisticated about covering tracks, I might still not know what vector had been used to break in to my system. In other words, relatively little damage was done (at least to me; I can’t speak for people who may have been phished) and this was a relatively easy system to get back up and running. Now I just need to be more conscientious about my passwords.

posted at: 13:48 |


Mon, 08 Feb 2010


Money is Speech?


The Free Speech Rights of Corporations

In late January, the Supreme Court of the United States ruled in Citizens United v. Federal Election Commission that corporations have a right to free speech and that limiting their ability to spend money to publish political opinions is an infringement of that right.

The Supreme Court is divided on this issue, with a “conservative” majority of five overruling the other four justices. The five also are the youngest and (mostly) newest members of the high court. One result of this is that none of them are likely to die or retire any time soon. My expectation is that this decision, then, will stand for at least a decade and possibly much, much longer.

Despite the clearly superior legal and scholarly credentials of the majority justices, I believe they have missed three critical issues in making their ruling:

  1. Corporations are not “natural people”, whatever Santa Clara County v. Southern Pacific Railroad says. Rather, they are groups of people operating in aggregate for a common goal. The legal organization is simply a shield that prevents any individual investor from sufering a liability larger than his or her investment in the corporation. Individuals within the larger group are free, as always, to voice their opinions however they wish. Further, corporations are for all intents and purposes immortal; they can act on strategies that may take multiple human generations to execute (although, it seems, they frequently are unable to see past the next quarter’s financial results).
  2. Regardless of one’s view on coporate personhood, the right to free speech does not include a guarantee to individuals of a right to an audience. Moreover, governments are empowered, both morally and legally, to prevent speech that infringes on the public’s right to be left alone. For example, noise ordinances may prohibit amplified music from public areas, and proselytizers may be prevented from trespassing to deliver their messages.
  3. Money is not speech. Money is property, symbolically representing economic value. As such, Congress has the power to regulate it under the Commerce Clause. Although Thomas Jefferson wrote in the Declaration of Independence that we are entitled to Life and Liberty, all but the final draft (which uses the word “happiness” instead) only specified the “pursuit of property.” Pursuit, meaning a striving for, a searching for, a chase after. Not the posession of. True, the Declaration of Independence does not have the force of law; however, it is a founding document explicitly stating the principles upon which this nation was — and is — established.

The media have been in a frenzy about this decision ever since, each outlet with its own slant.

For example, Michael C. Dorf writes in Findlaw that the chief impact of the Court’s decision will be a perception that the Court itself has been corrupted.

Meanwhile, Bruce Ackerman and Ian Ayres of the Washington Post believe that Congress will still be able to regulate campaign finance.

However, other organizations are not so sanguine. The New York Sun reports that the ACLU may flip-flop on regulation of campaign spending limits.

The Daily Show’s Jon Stewart apparently believes that this decision will be disasterous.

National Public Radio reports that President Obama and the Democratic Party are very unhappy about the decision.

In all, then, this decision appears to represent a watershed moment, when the current way of funding campaigns will be entirely restructured. Time will tell.

Related Links

The Supreme Court Rejects a Limit on Corporate-Funded Campaign Speech

Despite court ruling, Congress can still limit campaign finance

A Quest to End Spending Rules for Campaigns

A bold conservative step by Supreme Court

ACLU May Reverse Course On Campaign Finance Limits After Supreme Court Ruling

Jon Stewart slams recent Supreme Court ruling giving corporations free speech rights

Court Ignores Precedent, Creates Corporate Monster

Supreme Court Lifts Campaign Spending Limits

Campaign Finance Ruling: Hard To Reverse

Democrats Follow Obama’s Lead On Finance Ruling

Supreme Court Left Donor Disclosure Rules Intact

posted at: 16:02 |


Tue, 19 Jan 2010


Blog Coding Updated

Although I've based the code for this blog on the Blosxom framework, and use the Tiny MCE JavaScript library to handle editing chores, the fundamentals are significantly modified from the original.

Among other things, I've custom-coded the blog to support picture uploads, automagically create thumbnails and link to the full-sized images; added an authentication mechanism; and configured custom blogs for each member of the family. 

Unfortunately, due to a misconfiguration on my part, Tiny MCE was substituting a relative path for the absolute path on each of the image includes and links. This worked just fine, until I added the ability to browse the blog by category or by date. When these features are active, it causes the blog script to generate temporary subdirectories in the URL, and in conjunction with Apache, redirects requests for the category- or calendar-based pages, breaking the images.

When I discovered this problem, I did a little research and determined that I could simply tweak the Tiny MCE configuration to eliminate the issue on all new blog posts. However, this did not fix any existing entries. 

Because Blosxom generates web pages based on the datestamp on the individual files created when a user writes a post, simply running a search-and-replace against all files to change the relative paths to absolute paths would result in all existing blog entries showing up as being new as of the time I executed the change.

Obviously, this is not good.

Further, although I could individually modify the files one at a time to restore their original datestamps, the volume of files involved made that a non-starter. 

To resolve the issue, I have written a Perl script that parses through all of the existing blog entries, corrects the paths, and then saves the file with the original datestamp. This wasn't rocket surgery; but it was a new endeavor for me. On the off-chance that you might encounter a similar problem, I am making this script available under the GPL. Feel free to use it, but be sure to make a backup copy of your data before executing it. 

posted at: 17:43 |


Sat, 02 May 2009


Social Networks

The latest rage on Facebook apparently is apps that ask you to list five of your favorite things in a category. I don't think I can even name five wrestlers, so it's probably just as well I'm not on Facebook. Although my wife is, and she thinks it's wonderful. I did once, long ago, join Classmates.com. None of the people I would have considered renewing relationships with ever seem to have joined. Before I reached my current viewpoints on Internet-enabled social networking, I also joined Friendster.com; but it has been nearly a decade since then.

Facebook, though, for me, is just not a draw. Yes, I do have a blog, which I even occasionally update; but as you can see, it's on my personal website, where I have total control of the context and copyrights. But when it comes to interpersonal relationships, I like to keep my one-on-one communications confidential. The idea of a "wall" where I get drive-by comments from acquaintances, or having the entire subscriber base (or even just the people already on my friends list) know who is in my social network, or having people tag pictures with my name, with or without me actually being in them — even with the "privacy" controls Facebook provides —  just leaves me cold.

Further, having to maintain personas on multiple networks (Linked-in, Facebook, Classmates.com, MySpace, Friendster, Orkut, etc.) to maintain separation between professional and personal lives, as well as hit the "right" sites so that the "right" people see I'm a member of the same communities… well, it's burdensome. The MySpace people want to use MySpace; the Facebook people want to use Facebook. It's just too much work for me. The single option of Geocities in the '90s was easier.

Finally, I've had a website since 1996. My Google PageRank is excellent. If people I already know want to find me online, it's a piece of cake. If people I don't already know want to find someone with my skills (e.g., recruiters), my resume is at or near the top of Google's results in all the markets I care about.

That being said, for many, Facebook and its ilk are pretty darn good. They have reasonably featureful interfaces, a critical mass of users, and the backing of major corporations to ensure they stay available. And that's fine; it's just not for me.

posted at: 01:49 |


Thu, 19 Mar 2009




Unlocking Cryptography

Generating SSL Keys on Debian Linux

As reported in my last entry, I recently created updated SSL keys for my server. This is a somewhat arcane process, involving wizardly incantations on the command line. As a service to the community, I will now describe this process and provide a simple script to stramline the process.

First, the reason it was necessary to generate these keys is that the default Debian install creates keys that are only good for one year. Further, these keys are “snakeoil”; that is literally what the configuration calls them, which serves as a reminder to sys-admins that they are the default configuration (generally more exploitable), they are not part of a chain-of-trust (nobody else is vouching that you are who you say you are), and they potentially do not uniquely identify your server (setting up a series of servers with the same configuration can cause confusion among various connecting hosts).

These instructions apply to generating a self-signed key: just as with the default Debian key, nobody else is vouching that you are who you say you are. If you want to get an “official” key, you have several options, of varying expense:

Unless you are going to be selling something to the general public, or will be accepting payments from people you don’t personally know, however, these are all overkill. A self-signed cert will work just fine for you if you are using this server inside an organization where you have control over browser deployments, or if you are working with a technical audience of people you already know.

On to the steps!

Remember, these are specific to Debian GNU/Linux default installs. If your system is on another version of Linux, you’ve customized your install in some unusual way, or you’re using another OS, you will have to modify these instructions to match your environment.

Login as root:

sudo su -

Change directories to your SSL configuration directory:

cd /etc/ssl;

Create the seed for your private key:

openssl genrsa -out example.com.key 1024;

Use the seed to generate a public/private key pair request:

openssl req -new -key example.com.key -out example.com.csr;

Generate and sign the keys:

openssl x509 -req -days 365 -in example.com.csr -signkey example.com.key -out example.com.crt;

copy the old/default key to a timestamped file:

mv /etc/ssl/example.com.csr "/etc/ssl/example.com.csr.`/bin/date +%Y%m%d`";

Copy the old/default apache certificate to a timestamped file:

mv /etc/apache-ssl/apache.pem "/etc/apache-ssl/apache.pem.`/bin/date +%Y%m%d`";

Copy the new private key to the apache-ssl certificate:

cp -p example.com.key /etc/apache-ssl/apache.pem;

Sign the new apache-ssl certificate:

cat example.com.crt >> /etc/apache-ssl/apache.pem;

Change permissions on the certificate to avoid security issues:

chmod 600 /etc/apache-ssl/apache.pem;

Delete the originals:

rm /etc/apache2/apache.pem;

link the apache-ssl certificate to apache2’s, so you don’t deal with multiple certs when you don’t need to:

ln /etc/apache-ssl/apache.pem /etc/apache2/apache.pem;

copy the apache cert to the generic ssl cert library:

cp -p /etc/apache-ssl/apache.pem /etc/ssl/certs/ssl-cert-example.com.pem;

copy the private key to a restricted area:

mv ./example.com.key /etc/ssl/private/;

Change permissions on the private keys to ensure they remain private:

chmod 600 /etc/ssl/private/*;

change ownership on the private keys, as well:

chown root.ssl-cert /etc/ssl/private/example.com.key;

Move the public key into the certificate directory:

mv example.com.crt /etc/ssl/certs/;

Change permissions on the public keys, also:

chmod 600 /etc/ssl/hall*;
chmod 600 /etc/ssl/certs/example.com.crt;
chmod go+r /etc/ssl/certs/example.com.pem;

Restart Apache and your mailserver (I use Postfix rather than Exim) so that they reload their keys:

etc/init.d/./apache2 restart;

/etc/init.d/./postfix reload;

All done!

I’ve also written a script to automate this process. Feel free to use it, but remember I’m not responsible if it breaks anything.

Comments, criticisms, and corrections are welcome.

posted at: 01:00 |


Mon, 16 Mar 2009



Marvelously Modified Mailserver

Geeky Fun!

After spending a whole week of classroom time in a “System p LPAR and Virtualization I: Planning and Configuration” training session, this weekend I was feeling motivated to make a few changes. As I’d been deferring the (completely unrelated) migration of my email and SSH server to a new platform, it was time to take action!

This is a relatively large change for my small environment. Currently, I’m running a web server (Apache), a mail server (Postfix with SpamAssassin), a remote access server (SSH), Windows (Samba) and Unix (NFS) networking servers, some monitoring utilities (Monit), and various smaller functional programs.

Fortunately, the migration process was to be relatively painless. As I had planned for this, I already had mirrored the configuration from my “Old and Busted” system (based on an Intel Pentium III running at 800 MHz, and although rock solid, dreadfully slow), to the “New and Kewl” system (based on an Intel Xeon dual core, dual processor running at 2.3 GHz). All that needed to be done, then, was:

  1. At the router, stop accepting inbound email for the duration of the migration.
  2. Disable the Postfix daemon on OldAndBusted.
  3. Copy the user mailboxes from OldAndBusted to NewAndKewl.
  4. At the router, set inbound email connections to be directed to NewAndKewl.

And that should do it!

Except for the small item of ensuring that my users’ individual email clients are all configured to talk to NewAndKewl instead of OldAndBusted. Not a problem! I use DNS for my internal network, so I updated the DNS configuration to point mail.hallmarc.net at NewAndKewl, and everything was good.

Except the email clients were using the IP address rather than the fully-qualified domain name for the mail server. Uh. Dumb. Ah! but I can modify the configuration from the command line for all the kids accounts by logging in remotely and changing all of Thunderbird’s instances of OldAndBusted’s IP to NewAndKewl’s IP. Done and done. (Yes, I did have to use the GUI on my wife’s Windows XP PC to do this. One more reason not to support Windows.)

About using that GUI… Apparently my wife for months had been clicking through a dialog box every time she collected email. The dialog indicated that the mail server’s SSL/TLS certificates had expired. I only learned this because, yup, I used the GUI to change her server setting. So now I needed to update my server certs. Which will be the subject of my next blog entry.

posted at: 19:33 |


Thu, 19 Feb 2009



small, backup cat

Lola Update

As referenced in an earlier posting about Lola, the demon-spawned cat from Hell, We had cat problems. If you’ll recall (or just read again to refresh your memory), Lola had behavioral issues. I left the story hanging with Lola being taken to the vet for a health evaluation. Her final disposition was pending the outcome of that examiniation.

(Un)Fortunately for Lola, no health issues were evident. The shelter from which Lola had been adopted was willing to take her back; but she will never be permitted to leave the shelter again to be adopted by a caring family.

Yes, we got another cat.

No, I’m not particularly happy about it.

But Runway is cute.

Runway the adopted cat

posted at: 19:51 |


Thu, 12 Feb 2009


Time’s up!

Unix time is fun! As I noted in a previous entry about the nature of timekeeping in the computer world, Unix tracks time by counting seconds since January 1, 1970.

The latest milestone for Unix time is at 23:31:30 UTC on February 13, 2009. People who like patterns in their numbers will rejoice as Unix time reaches 1234567890 seconds since the beginning of the Epoch. By coincidence, this day falls on Friday the 13th on the Gregorian calendar.

If you're using a Unix or Unix-like system, you can see how this works:

[on GNU]

>$ date -ud@1234567890

[on BSD]

>$ date -ur 1234567890

That will look like this:

PuTTY_date_screenshot.gif

For more information see the time_t entry on Wikipedia, the free encyclopedia.

posted at: 12:16 |


Sat, 03 Jan 2009


Saturday Chores

Here in the Hall household we have a tradition of assigning chores by random lot. It works like this:

In an old plastic frosting container, we keep 18 Popsicle  sticks, each with a chore written on it. They range from "clean basement bathroom" to "vacuum stairs to second floor". There are three sticks labeled "Freebie", too. On Saturday mornings, each of the kids draws three sticks from the container. If we parents are feeling particularly mean, we might remove the "Freebie" sticks, first. If some of the easier chores have been done several weeks, but the more important ones are being neglected, we sometimes take out some of those easier chores.  

Generally, this works out pretty well.

Unfortunately, this morning we had a few issues with kids thinking that this system is unfairly administered. Usually, when this happens we start adding chores. Sometimes we do this by selecting a specific stick, and other times by having the rebellious child do the drawing. After a few rounds of this, the kids usually accept that they've got it pretty good and ought to stop while they're ahead.

If chores are finished by noon, the kids receive their allowances for the week. Then it's either free time or we do something as a family.

 

posted at: 12:30 |


Wed, 24 Dec 2008


Happy Holidays

I've been terribly out of the habit of writing in this blog. Mostly, this is because I've been busy developing other aspects of this website. Among other things, I've added the capability for all of my family members to have their own blogs, and to add text entries and photos from their web browsers rather than manually keying in HTML.

Here's a picture of the family that we dumped in our holiday Flash presentation:

photoshopped family2008.jpg

That's me in the upper left.

We've also been working on a bunch of other stuff around the house, like removing a fallen tree and generally getting ready for the holidays.

Speaking of which, I hope yours are happy. Merry Christmas!

 

posted at: 16:06 |


Tue, 08 Jul 2008




… Also, Clarifications

Continuance for the Cat

In legal terms, a continuance is a judge’s decision to allow the parties in a dispute to have additional time to prepare before a hearing, trial, or other legal proceeding.

I have granted Lola a continuance before her final disposition is decided, so that Jan can take her to the vet first. Jan’s contention is that it’s not normal for a cat to defecate anywhere it can’t bury it’s feces; therefore Lola must be sick.

Recognizing that a sick animal is entitled to compassionate care rather than punitive action, I have conceded to Jan that an exam is appropriate. Jan has conceded in response that if no medical issue is found, the cat must be returned to the shelter, as we are both unwilling to suffer the additional stress of following Lola around to be sure she’s not polluting our home.

On to the clarifications.

  1. Lola is a brown-gray tabby, not simply gray as I stated in my last entry.
  2. As previously noted, Lola is a friendly, social, and occasionally playful cat.
  3. Upon reading my last blog post, Jan was concerned about my characterization of her motives for adopting a cat. After some discussion, she has convinced me that Melody’s wish for a cat, expressed on an almost daily basis, was Melody’s idea, and not Jan’s. Therefore, Jan is absolved of the onus of being the instigator in the adoption.
  4. Yes, I did feed Lola twice a day, even when she was confined to the laundry room.

Not one to be hasty about decisions that cannot be changed, I am prepared to accept that I may be wrong about Lola’s fitness to stay in our home, provided that evidence of illness is found.

I expect there will be further blog entries on this subject.

posted at: 13:46 |


Tue, 01 Jul 2008




Appropriate use of the word “shit”

Lola, the demon-spawned cat from Hell

So, my daughter finally convinced me to let her have a cat (which we adopted from the local Humane Society, an eight-ish gray cat with a white breast and white socks, who would be adorable except for a problem, which I’ll get to in a moment); but it turns out that it was Jan’s idea all along and she’s the one who’s been taking care of it. At least, she was until she took the kids and drove to California early in June to visit the family out there, including both her father (who came home from the hospital after knee replacement surgery the day Jan arrived) and stepmother, her mother, my parents (who are in-country in between foreign affairs and are leaving for 18 months in Kiev, Ukraine, at the end of August), and most of my sisters and their husbands and children. Which is to say that I’ve been the one looking after the cat for most of June.

You see, the cat — normally a well-behaved, friendly, cuddly, short-haired, mostly quiet, good-tempered beast — started pooping around the house the week before Jan left.

At first, Jan was afraid to mention it to me; but I think she figured that if it happened again while she was gone, she wouldn’t be able to play ignorant. So she told me, and I said, “that’s not acceptable” (I really, as a general rule, despise cats, but was willing to compromise since it meant so much to both daughter and wife.), which she understood. Jan advised me that I should keep newspaper on the sofa where Lola (that’s the cat’s name) was prone to shit, so that if Lola shat there again, it wouldn’t be difficult to clean up. I responded that I was unwilling to put portions of the house out of use for the benefit of a cat and that I would damn well sit on my $1200 leather sofa, and refused to cover it.

This proved to be a mistake, and on the first Saturday after Jan had left with the kids I discovered exactly how serious a mistake it was.

Given that I knew Jan and the kids were going to be gone, and that I have a tremendous number of projects in the works at the hospital, in the garage, in the basement, and upstairs, I didn’t actually go into the living room until that Saturday, after I’d mowed the lawn, cleaned up the kitchen, done the laundry, and cleaned the litter box. I thought the litter box was particularly easy — there seemed to be almost nothing in it, compared to the week before when I’d cleaned it! So I went into the living room after all these chores so that I could unwind at the piano, when I discovered them.

In the precise center of each of the three seat cushions of the leather sofa, Lola had left a little surprise for me. Also, she left me one surprise on the carpet at the corner of the leather loveseat. Now the reason for the surprisingly clean litter box was obvious to me.

Oh, so obvious.

I shut Lola in the laundry room, cleaned up the mess, and called my wife. “Look up how to deal with it on the Internet,” she said.

“No”, I said. “This is your cat. We agreed that she was your and Melody’s responsibility. I am doing you a favor by watching her while you go off and play. I will not research her behavioral problems.”

I was livid.

“You must tell me exactly what to do about it. This is your problem, and you need to fix it. Now,” I said.

Jan told me to leave Lola in the laundry room. And to cover the sofa. “That would be pointless,” I said. “If she’s in the laundry room, she can’t shit on the sofa.” Jan agreed that this was true. “I can’t leave her in the laundry room indefinitely, that would be cruel,” I said. “I’ll keep her in there for a day or two, then let her out to see if she’s learned anything.”

As you may guess, there were no incidents for almost a week, before Lola shat on my sofa again, between the time I got up at 6:00 a.m. and fed her, and 6:30 when I came down from my shower.

After rounding up Lola, putting her nose in her shit and proclaiming, “No! No! No!”, I threw Lola back in the laundry room and cleaned up the mess.

Then I texted my wife. “Cat did it again. She goes or I go.”

Again, the advice: cover the sofa with newspaper. Put the cat in the laundry room. Already halfway there…

So I left Lola in the laundry room all day and overnight to stew, and covered the sofa with newspaper. I let her out while I got ready for work the next morning, but shut her back in before I left. When I came home from work that evening, I let her out. She was aloof, but had clearly used the litter box again. I praised her, fed her some dry food, and went through my evening routine. Just before I went to bed at about 10:30, I shut her back in the laundry room. In the morning, I let her out while I grabbed some breakfast, but shut her in the laundry room while I went to work.

Again, I let her out when I came home, again praising her for using the litter box, and gave her food. Then overnight I let her stay wherever she wanted on the main floor of the house. All good. In the morning, no mess. I praised her, and gave her a dab of wet food with her breakfast before I left for work.

When I came home, no shit. Instead, pee. On my sofa.

Strictly speaking, it was pee on my newspaper, but the principle is the same. Back in the laundry room Lola went, post nose-to-pee, “nonononononono!”

I texted my wife again, “Newspaper didn’t work. She peed this time. Find a shelter, or I’ll have her put down.”

When we talked a bit later, Jan accepted that if there were any further incidents, she would support my decision to send Lola back to the Humane Society, and back me up with the kids.

I am such a soft touch. I should have sent Lola back right then.

But, no, I was going to be flying out to California to be with Jan, the kids, and extended family for five days, and had to get ready for that, and had a zillion things going on at work that needed my attention, and didn’t have time to deal with Lola.

Mostly, though, I didn’t want my daughter to cry about Lola. The last time Melody went to California, her pet rat was dead when she returned (that’s a story in itself, and to be reserved for another time). She’d never leave the house again if her cat was gone after this trip…

So, I didn’t take Lola back to the Humane Society. Instead, I re-covered the sofa, left Lola in the laundry room overnight, and gave her another chance. There were no further incidents before I flew out of Saint Louis to Sacramento via Los Angeles. The evening before I left, I called a neighbor, whom Jan had convinced to watch Lola while I was gone, and disclosed the situation. She has three cats (who apparently have never shat on her furniture), so she was comfortable with care and feeding. I told her to call me or Jan if there were any similar events while we were both gone, but never heard from her.

As of this moment, I still haven’t spoken with our neighbor, although the day after I returned home I did leave her a voice message thanking her for her service.

However, it has become clear to me that Lola peed on the sofa in my absence, as this morning when I did my now habitual visual inspection of the living room, I noted that some of the newspaper had turned yellow overnight, as though cat urea had chemically altered the cellulose fibers over a period of several days, finally having visible results. Since I had let Lola wander the house freely for the previous 48 hours, It was not really useful to do the nose-to-pee negative reinforcement thing. Instead, I changed the newspaper and went to work. Lola had free rein in the house.

That was another mistake.

While I was at work today, Lola shat on the sofa again. This time, the newspaper caught the mess, which made it much easier to clean up. Before I did so, I grabbed Lola, put her nose in her shit, exclaimed “No! No! No! No! No!”, and shut her back in the laundry room.

Which is where she is now, meowing plaintively (Lola is very good at plaintive).

I called Jan (she and the kids are at Mount Rushmore today). She didn’t answer, so I left her a voicemail… She’s supposed to be back tomorrow night, very late. She’s going to have to deal with Lola’s return to the Humane Society on Thursday. In the meantime, Lola stays in the laundry room.

Sucks to be me. I should never have agreed to adopt an animal that can’t be kept in a cage all the time, like such previous pets as snakes and rats. Damn me for a fool.

posted at: 22:53 |



Marc Elliot Hall St. Peters, Missouri 

Page created: 21 January 2002
Page modified: 31 December 2009

spacer About Us | Site Map | Privacy Policy | Contact Us | ©1999 - 2009 Marc Elliot Hall