Now that’d be funny…

So, we’ve just finished eating at Arby’s and are backing out of the parking space when suddenly we see white van whip behind us at incredible speeds, clueless that we were in motion backing out.

“He almost hit us!” exclaimed our driver.

I looked out the rear view matter and read the sign on the van, which as now in drive thru. Point it out to the others, I stated “wouldn’t have mattered, it’s a Progressive auto insurance evaluator — we’d be reimbursed on the spot.”

What I meant to type was…

I just had another keyboard mishap moment this afternoon.

A keyboard mishap moment is when you go to press one key, and you get two. Or you type one letter, and you’re off by a keystroke. Or, perhaps, you press the key, but it doesn’t register. Either way, you’ve hit the return key and the message is sent before you notice what actually was typed.

eMail saves us from such events. Instant Messaging, however, makes such mistakes permanent.

Here’s my earliest KMM memory, followed by today’s.

Back in college we had a classic computer room, with a mainframe sitting behind glass, run by operators, while the students were at lab benches working on terminals. I was friends with a number of the assistants. Of particular notice was one named Shelaine, who was a good computer scientist and an even better biologist that happened to have long blonde hair, legs to match, and who was one of the few people I ever knew who’s figure made spandex look good.

Each time she’d sit down at the console, someone would come up to the divided door and ask for a printout off the line printer. This continued for a quite a while, and at was apparent we were not going to be able to hold any real-time conversation at the time.

What I meant to type was: You look busy!

What actually happened was… my finger hit the Y key just to the left, and what I ended up typing and sending was: You look busty!

Of course there was no undo, my face turned red, and she grinned as she erected the most perky and flattering posture in my direction. She knew exactly what had happened, and played up every moment of it. Pretty evil, as neither of us ever had a thing for the other.

Today’s KMM might have been worse.

I work with an intern named Paul, and he’d been tasked with a very demanding job and and even more demanding deadline.

So, rather than bothering him for a status report, I thought I’d have a co-worker check on Paul without disturbing him.

What I meant to type was: How’s Paul doing?

What actually happened was… my finger hit the key, as I rolled off the O, but it didn’t register, and what I ended up typing and sending was: How’s Paul dong?

The answer I got back was along the lines of, “I don’t think that’s a very appropriate question for a work environment.”

Clever Bulk Rename Trick in Windows

Stumbled into a clever way to rename a bunch of files to have the same prefix and a sequential numbered suffix… from the Windows GUI no less.

Ever want to rename a bunch of files to the same prefix, but have an incremental count after them?

From Explorer, select all the files that you want to bulk rename, right click, and select Rename.

While all of the files will be selected, only one is editable. Give the file a name, let’s pretend for the sake of discussion you typed ABC.jpg.

All of the rest of the files will be renamed ABC (1).jpg through ABC (n).jpg, where ‘n’ is the number of files minus one, since the first one doesn’t get a number.

Knowing this, you can do some clever stuff. Create one bogus file renamed to ZZZZZZZZ.TXT at the end of your list; select all the files, and bulk rename them as shown above. Then delete the bogus file, it should be the only one without a number, and you’ve just made a sequence of files.

Is AVG killing windows Remote Desktop?

Today terminal services stopped working, and I could no longer remote in to my Windows box. At the moment, speculation suggests it appears to be a false-positive by AVG.

This morning Anti-Virus Guard,AVG (not the free version), decided that TRMSRV.DLL in the System32 directory was threat and copied it out of the directory.

The result was that Terminal Service no longer works. That means that software like Remote Desktop Connection 2 (RDC), can’t connect, although the machine responds to pings and Samba requests.

Placing a exception in AVG to not check that directory (sounds bad, eh?), and restoring the file from another machine seems to have temporarily address the problem.

I wonder if AVG knows about this.

We’re also seeing that Cygwin and the System Restore Point is also among the collateral damage.

UPDATE 11-Nov-2008: Looks like AVG is now flagging Windows as a virus.

Selenium: HTTP Status 404

Warning, another geeky log entry.

Today I was working with Selenium, the free web testing tool.

I ran into an interesting problem where I was trying to connect to an SSL connections, but I got this error:

HTTP Status 404 – /selenium-server/core/RemoteRunner.html

If you don’t know why /selenium-server/ is being stuck onto your destination URL, or why you are passing a URL to the class constructor DefaultSelenium in the first place, then you need to go read the Selenium RC: Tutorial and not casually browse it, specifically the section entitled The Same Origin Policy.

  • Advice about certificates wasn’t working.
  • I discovered Firefox 3 Beta wasn’t working with Selenium IDE, and switch back to Firefox 2.0.0.16, which at least allowed http connections to work.
  • I used my own Firefox profiles with *custom instead of *firefox

I even installed the Cyber Villians CA certificate, which is mentioned in the Selenium RC: Tutorial under Support for HTTPS.

Still, I was getting the 404 Error when using https, but not http.

Then I found it.

Firefox’s profile got messed up as I was switching between versions. Under Tools / Options…, Network Tab, Settings…, Manual proxy configuration, while HTTP Proxy had localhost and port 4444, the “Use this proxy server for all protocols” became unchecked. It should be checked.

Made sense, too. If https is not going through the proxy, then Selenium couldn’t do it’s magic.

Also, make sure that No Proxy for is blank, this is normally localhost, 127.0.0.1, and other local resources; only in this case, you do want to go through your local Selenium proxy.

LIBLDAP2 Not Installable

Unable to find a solution related apt-get failing on Ubuntu while trying to upgrade packages depending on the libldap2 (>= 2.1.17-1) package, I figured out what was causing the problem… additional repositories in my /etc/apt/sources.list file. Here’s what I did to finally be able to upgrade cleanly.

Warning this is a very geeky entry aimed at apt-get users of Ubuntu, readers seeking humorous content should skip this post. Remember, this is a technical blog.

If you’re still with me, then I suspect you’ve just been plagued by the message:

Depends: libldap2 (>= 2.1.17-1) but it is not installable

I’m using Ubuntu 8.04 LTS Server Hardy Heron, specifically on a 64-bit AMD system.

Normally, when I do an $ sudo apt-get update things go very smoothly, but not today. Here’s what I got.

The following packages have been kept back:
alpine dovecot-common dovecot-imapd dovecot-pop3d libpq5 postgresql-8.3 texlive-base-bin trac

The following packages have unmet dependencies:
alpine: Depends: libldap2 (>= 2.1.17-1) but it is not installable
dovecot-common: Depends: libldap2 (>= 2.1.17-1) but it is not installable
Depends: libpq4 (>= 8.1.4) but it is not installable
libpq5: Depends: libldap2 (>= 2.1.17-1) but it is not installable
postgresql-8.3: Depends: libldap2 (>= 2.1.17-1) but it is not installable
texlive-base-bin: Depends: libpoppler0c2 (>= 0.4.2) but it is not installable
trac: Depends: python-genshi (>= 0.5) but it is not going to be installed
E: Broken packages

Unfortunately, where ever I went, I didn’t find a solution. [1] [2] [3]

The ‘recommended’ solution is: $ sudo apt-get -f install
This did not work for me, nor others.

Neither did: $ sudo apt-get dist-upgrade

At this point, I went on an apt-get remove and apt-get autoremove binge. This didn’t help either.

This got me into a horrible loop, where packages sysvinit-utils, sysvinit, and initscripts needed to be installed, but could not because:
Unpacking sysvinit-utils (from …/sysvinit-utils_2.86.ds1-47~bpo40+1_amd64.deb) …

dpkg: error processing /var/cache/apt/archives/sysvinit-utils_2.86.ds1-47~bpo40+1_amd64.deb (–unpack):
trying to overwrite `/usr/share/man/man1/mesg.1.gz’, which is also in package sysvutils

I even tried manually installing packages one at a time. Didn’t work. I was even so desperate as to move the file mesg.1.gz elsewhere. That didn’t work.

Then I tried the following and things got a little better:

$ sudo apt-get clean
$ sudo apt-get autoclean
$ sudo apt-get check
$ sudo apt-get purge
$ apt-get -f upgrade

But I now had a problem where packages, specifically alpine, depended on on libdlap2, and it was telling me that it couldn’t install it, so upgrading wasn’t possible.

I made the mistake of $ sudo apt-get remove alpine, which would not let me undo that mistake by reinstalling.

My hunt brought me to libldap2-dev, but while this installed, it didn’t help alpine’s dependencies.

Even with the super-duper do-everything command, nothing helped:

$ sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get dist-upgrade -y

Then it dawned on me, perhaps some of the repositories that I added to /etc/apt/sources.list were giving conflicting dependencies. Luckily, I annotated heavily what I had ever added to this file.

There were only two things: Subversion, and Mono. Here they are. You want to comment out these lines:

## Subversion obtained from https://edge.launchpad.net/~clazzes.org/+archive
deb http://ppa.launchpad.net/clazzes.org/ubuntu hardy main
deb-src http://ppa.launchpad.net/clazzes.org/ubuntu hardy main

## Mono added by request of FogBugz installation
## http://www.fogcreek.com/FogBugz/docs/60/topics/setup/UnixGettingYourServerRead.html#deb
deb http://www.backports.org/debian etch-backports main contrib non-free

Then, I did a $ sudo apt-get updatee, followed by a $ sudo apt-get dist-upgrade, then a $ sudo apt-get dist-upgrade.

All of my problems were solved. No package dependency problems what-so-ever, and I was able to install alpine, and all the others, bringing me up to the latest and greatest.

Finally, I uncommented my sources.list file back to the way it was and tried the upgrade again. No errors. Everything was fine.

The solution was that something, and I don’t know which one, was causing conflicts. Reverting back to the virgin sources.list file state was enough to get Ubuntu happy to do the upgrades.

Unfortunately, since re-commenting the lines didn’t reintroduce the problem, I’m unable to tell you which repository caused the problem in the first place.

Ok, ow. That hurt.

As I’m leaving the local Sushi bar, one of the cooks notices me limping away and asks, “What happened to your foot?”

My answer back caused the entire restaurant to go quiet, “A firefighter kicked me.” Which, as it turned out, was the gosh-honest truth.

Here’s what happened.

As I’m leaving the local Sushi bar, one of the cooks notices me limping away and asks, “What happened to your foot?”

My answer back caused the entire restaurant to go quiet, “A firefighter kicked me.” Which, as it turned out, was the gosh-honest truth.

Here’s what happened.

A Firefighter Kicked Me, Stealing a Home Run Ball

My brother-in-law was helping to set up a commercial fireworks display for a local baseball game, and I got permission to go on site and take some photography of the crew and the display.

While I’m back there, I hear the crowd go wild, and a baseball comes flying over the fence. It lands and rolls away. After a few moments of talking, I ask, “Should I go get it?” And they indicate ‘why not,’ as that always happens and they pointed to one back over by the wall sitting in the grass.

So, I start walking over to it. As I do, I notice that there’s some lady (a term I’ll revoke shortly) way off in the distance behind me who’s running toward the ball. Turns out, it was one of the local firefighters who’s there every night there’s fireworks.

Figuring she’s had ample opportunity all season to pick up things flying over the fence, I sprint for the ball and easily get to it before her. As I go to reach down and pick it up, she shoves me.

Having a camera in one hand, I knock the ball away from both of us, run over to it, and plant both feet tightly around the ball so it can’t be dislodged.

She comes running over, and while I want to surmise she was “playfully” trying to kick the ball out from between my feet, she ended up kicking my heel in. And, from what I’ve recently learned, those boots have steel toes in them.

Eventually, I relented, deciding that to me it was just another piece of worthless clutter; I stepped back and let her have it. The ball, not with the back of a shovel, like I now contemplate.

Muppet Bodies: The Exhibition

The display you really want to see is “Muppet Bodies,” where they take a bunch of preserved, dead muppets and puppeteers and cut them in half, showing you the insides…

Jerry Carr is a cartoonist, known for monkeys, babes, and the graphic novel Cryptozoo Crew, which looks like it may be made into a movie, amongst other things.

While visiting Jerry’s Facebook page, I saw his status message was set to this:

Jerry is freshly motivated after a day at the Jim Henson Muppets display at the Smithsonian!

Unfortunately, I couldn’t help myself. I had to comment on his wall:

Muppet Bodies: The ExhibitionThe display you really want to see is “Muppet Bodies,” where they take a bunch of preserved, dead muppets and puppeteers and cut them in half, showing you the insides.

You can see how the tendons connect to the distal phalanges in order to produce more articulated facial expressions.

Note, though, there’s a special baby muppets section, which shows the progression of muppet fetuses, starting from a simple spool of thread and piece of fabric. A word of caution, it’s pretty emotional, because at the end are a small number of muppets with birth defects; it’s very sad.

Forgive me Jerry.

Aurora Feint: Recovered

For some unexplained reason, Aurora Feint would no longer start on my iPhone. Starting the game exited back to the main menu. Here’s how I restored the game and recovered my previous game play.

Aurora Feint won’t start.

I’ve been playing Aurora Feint on the iPhone, and all of the sudden, it quit working. The game, not the phone. I’d go to start it, and then get returned to the main menu. Seems other people were having a similar problem. Some were lucky to get the game working again, others lost data.

Here’s how I recovered mine, preserving game play. Your mileage may vary.

0. Back up your iPhones by syncing it with iTunes.
1. Hold down the Aurora Feint button until the icons jiggle.
2. Press the (X) delete button over the Aurora Feint icon.
3. Acknowledge that you’re deleting the game and that all game files may be lost.
4. Hold down the power button on the phone, slide to Power Off.
5. Power phone back on.
6. Immediately go into App Store, select Search, enter Aurora Feint, and Install.
7. Acknowledge dialog that you already purchased this item and want to install again.
8. Let the game download and install.
9. Again, hold down the power button on the phone, slide to Power Off.
10. Power phone back on. For me the phone went through a very long boot cycle with the Apple logo.
11. Press the Aurora Feint icon to start the game.
12. For me, the screen went blank and stayed there — tap the center of the screen, movie controls appeared.
13. Unpause movie intro and let play to completion.
14. After a moment, I was returned to the map.

I’ve found that I always have the best of luck restoring the game when I’m at the map. Exiting while at the character page or in the middle of a mining activity does work, but not always; this causes the game to be fussy and exit prematurely to the main screen after start (unless you can intercept with a tap in the upper right corner).

Good luck.

Chase Me, Pervert

A cute little girl asks me to chase her… so, I do. Next thing I know, she’s running to an adult for protection. D’oh.

So I’m visiting my sister’s church, and after the service I go into the nursery to see if she needs help cleaning up. There’s one little girl left who’s about two years old and cute as a button; she takes an instant liking to me, sharing with me her impression of a lion right after accidentally bouncing a toy off my head.

The adults clean the room and my sister says she knows the parents and scoops the kid in her arms, heading back to the sanctuary to find them. The little girl waves to me playfully as she’s carried out the door to come join them.

When we get to the destination, there’s still a lot of people standing about and having conversations. My sister puts the little girl down who then looks up at me with doe eyes and says “Chase me!”

I tell her I’m tired. But, she insists, “Chase me!”

Fine. I take a false step toward her, and she squeals in delight and goes running down the aisle a few steps before she notices I’m actually not in pursuit.

Stomping her little foot, she declares, “Chase me!”

So, complying, I start to chase her at a slow pace where she’s sure to get away safely. She’s giggling and having the time of her life. She turns the corner, looks over her shoulder, and sees me.

“I’m gonna get you…” and I wiggle my fingers at her. She grins and runs off, with me slowly following.

Then the unexpected happens.

She turns the next corner, goes running up to some set of couples in a post-service conversation, and declares “He’s chasing me! Protect me.” Next thing I know, they’re putting themselves between her and me in a very “I need an adult” kind of manner. I quickly discover that this is one of the pastors’ daughter. While, I, on the other hand, am a stranger that no one at the church recognizes.

Great. Just great.

“She told me to…” I start to explain, and now it’s clear that it’s my veracity that is being tested. The fact that people have cell phones in their hands and 911 on speed dial isn’t helping.

That’s when I see my sister and the pastor who’s the father having a really good laugh at my expense across the room.

Once the group saw that, and joined in, the little girl’s asylum was forfeit; now the chase was real.