Wednesday, July 23, 2008

Retrieving Your Lost Office Product Key

Someone asked me recently what to do if you have a copy of Office installed on an old, ready-to-be-decommissioned computer and want to move the software to your new box. Problem: you have lost the installation product key.

Interesting question. This has never really been an issue for me at work because we have a volume license (and therefore, all copies use the same key), but I could see how this could be a problem for a home user. So, I did a little research...

Let me start out by saying that if you own an "OEM" copy of Office (one that came with your computer), the license is tied to the hardware - you cannot install it on another machine. But, if you bought a boxed copy of Office, you are entitled to install it on another machine, provided you remove it from the old one.

OK, so we're established that you're allowed to move the license to a new box. Now what? We've lost the product key and won't be able to install it. You have two avenues from this point:

1) Contact MS and ask them for a new product key

2) Use a software package to retrieve the original product key from your old computer

The former case is pretty self-explanatory. For the latter case, you could check out Magical Jelly Bean (yes, it's really called that). MJB is an open-source package that will retrieve your original key for you.

Note: I assume that using such software does not violate any software laws, but I have no idea as to the degree of legality of this program. Just a friendly disclaimer... :)

Anyway, hope you find this info useful.


P.S. Thanks to the other Chris for telling me about MJB.

Monday, July 21, 2008

Link Evaluator Plug-In

I had an email forwarded to me recently pointing out an add-on for Firefox called Link Evaluator. I installed it and was really pleased with it. It allows you to do a quick spot-check of all of the links on any given page to check for broken links. You just navigate to a page, right-click on the body, and select "Evaluate Links." You'll then see every link on the page turn either green (good) or red (broken). That's it. Simple concept, useful tool.

Obviously, this wouldn't optimal for large-scale link checking, but for a few pages here and there, it is a nice addition to the toolbox.


Saturday, July 19, 2008

Google Alerts

I think I may be a little behind the early-adopter curve on this, but I just started using Google Alerts. Alerts basically monitors a given Google query and emails you when there are new pages about that topic. For example, if you want to know as soon as Google indexes a new chili recipe, you could set up an alert for "chili recipe" and you would get an email whenever Google finds a new one. Super easy.

You can even set the frequency with which you receive alerts - daily, weekly, real-time. And, you can choose to receive your emails in HTML or plain-text.

I'm ashamed to admit that I can be a little techno-narcissistic and *blush* tend to Google my own name regularly to see if anyone is referencing my blog or has written anything interesting about me. Google Alerts automates this for me! OK, enough about that...

Anyway, if you're doing research on some topic, this could be a great tool to learn about the latest sources for information on said topic.


Vi Assistant - Hilarious

If you've ever used the good ol' vi text editor in Unix, you will certainly appreciate this:

Thanks to Chris L. for sending.


Thursday, July 17, 2008

Finding all file types in a directory tree

So, this is going to be a pretty nerdy post - please avert your eyes if you're not into getting uber-geeky.

Today, I was working on a web migration plan and I needed to know all of the distinct file extensions that existed in our web directory. To do get the answer to my question, I executed a pretty sweet command that I learned from Vince, Master of the Unixverse.

find /www/my_folder | awk -F. '{ print $NF }' | sort | uniq -c

Here's a quick analysis of this command:

"find /www/my_folder" - lists all of the files, recursively, in /www/my_folder and all of its subdirectories

"awk -F. '{ print $NF }' " - get the file extension from each file (everything after the last dot in each file path)

"sort" - sort all of the resultant extensions alphabetically

"uniq -c" - list each file extension only once and print a count of how many times it occurs

Yes, this is a pretty oblique, archaic post, but you may need it someday!


Proofpoint Spam Filtering

One of the most amazing products I have seen in a long time is the Proofpoint spam filterieng appliance. I've been one of the first to use it before we roll it out to our user base, and I have to say that the result has been amazing. I literally get zero spam now that I am using the appliance to filter my mail.

It's actually a pretty novel concept as far as spam filtering goes. All mail passes through the Proofpoint appliance, which lives upstream of the mail server. The appliance grabs any messages it considers to be spam and passes the rest along to your inbox. Then, at some set interval (e.g. daily), you get a "spam digest," an email message delivered to your inbox listing all of the messages (subject line, sender, etc.) that the appliance caught. Next to each message listed in the digest, there are links which allow you to take an action on that specific message. For example, you can click a link to "release" a message, which will tell Proofpoint to let go of the message and deliver it to your inbox. You can safelist the sender of that message so that sender's messages will never be marked as spam again.

In addition to the digest, you can log into the web interface anytime and see the messages that Proofpoint has caught. From the web UI, you can perform any of the actions you can from the digest.

This model is a really nice way of dealing with spam, but the best part of this product is really its accuracy. I have experienced very few false positives and have been very satisfied with the product overall. I can't wait to roll this out to our users; they are going to love it.


Tuesday, July 15, 2008

Text Editors with FTP Integration

Even though it may be hard to believe in this world of blogs and wikis, sometimes one wants to create one's own web site from *gasp*....hand-written HTML! Yes, it still happens - and for the nerdiest among us, it provides a sense of great joy to be able to forge a web page using nothing but the simplest of tools, a text editor and an FTP client. But, I've discovered a new luxury that I believe provides simplicity, yet retains the coveted nerd cachet, the text editor with built-in FTP capabilities!

So, I remember in the old days (like 4 months ago) when I used to have to open my FTP client, download an HTML page from the server, edit it on my computer, and the re-FTP it back up to the server. In fact, I would usually edit my pages right on the server using "pico" so as to avoid this whole process. That us until, I discovered TextWrangler. TextWrangler is just for Mac, but in the process of helping my wife create the web site for her new dance studio, I came across PSPad for Windows.

UPDATE: I should have pointed out that PSPad does not support SFTP - TextWrangler does. Another text editor for Windows, JEdit, does provide SFTP. Thanks to Warren for bringing this up.

Both applications FTP clients built-in so that you can open files stored on a server (running FTP) just as easily as you would a file that resides on your local machine. For example, you could browse to the server, open an HTML file, edit it, and just click save. It will save back up to the server and you are done!

This technology has not only saved me a bunch of time, but has made working on web pages easier by providing a nice, syntax-colored environment within which to work. So, I would highly recommend installing one of these on your computer if you do any web work (or even write server scripts).


Wednesday, July 9, 2008 - Like TinyURL, but Better

I came across on Lifehacker today and probably would have passed right over it if it weren't for the fact that it helps to solve a current problem we are seeing. It was recently brought to my attention that Spamhaus has started blocking some emails that contain links to the domain because some spammers have setup shop on blogspot and sent out URL's linking to their sites. (Editorial on blocking the blogspot domain: Ridiculous. Here's an idea, let's block the domain because some spam has originated from it.) Anyway, sorry for the tangential rant here.

The point is that we had to figure out a way for someone whose blog resides in the blogspot namespace to be able to send out emails referencing his scholarly blog posts. My first thought was TinyURL. It would provide a good wrapper for him to get his links through. But, then I learned about

It functions exactly like TinyURL does, but it provides stats and tracking for your links. So, if I create a link to one of my pages and send it out to a bunch of people, I can actually see how many people clicked the link! Sweet. I am a major stats junkie, so this is right up my alley.


Searching your command line history (ctrl+r)

Recently, Warren showed me a trick that has saved me a ton of time. I frequently use Unix/Linux/Mac Terminal and there are some commands that I execute frequently - ssh connections to various servers, etc. I usually just hit the up arrow on my keyboard until the command that I want appears. Sometimes this is completely nonsensical because I find myself pressing the up key more times then there are characters in the command I want to execute!

But, Warren recently told me about using the Ctrl+R key combination to search my command history. It does a "reverse search" of the commands you have recently executed. So, for example, let's say you have recently executed the command "ssh" If, at the prompt, you hit ctrl+r and start typing "ssh...," it will auto-complete the rest of the command and you can just hit enter to execute it.

Anyway, if you use the command prompt a lot, I highly recommend this shortcut.


Monday, July 7, 2008

Union Square Green Market

I know this post is a little off topic for this blog, but I have to tell you what a great experience I had at the outdoor farmer's market at Union Square in NY this weekend. I was up in NYC for the holiday weekend to hang out and we visited the farmer's market at Union Square (17th & Broadway) en route to the Chelsea Market (home of the Food Network).

To make a long story short, it was incredible. All of the produce is locally farm grown and beautiful. And, to add to that, it is all very reasonably priced, some of it even cheaper than supermarket fare. I got a huge bunch of leafy, flowing broccoli rabe ($2), a bunch of carrots so fresh they still had dirt on them ($2), baby fennel ($3), etc.

I've been on a pretentious cooking spree all week. I enjoy telling my wife that for dinner we're having "sauteed broccoli rabe over fettuccine finished with a shallot butter." :)

The market also had eggs from real pasture chickens (i.e. old MacDonald's chickens rather than McDonald's chickens), organic milk, cheeses, meats, and seafood (one guy was selling diver scallops the size of coffee saucers for $15/lb!).

Anyway, if you find yourself in NYC anytime soon, I *highly* recommend you check out this market.


Friday, July 4, 2008

Addendum to Choosing Your Seat On a Plane - Southwest Extension

So, I've gotten some positive feedback on me previous post about choosing your seat on a plane, and I would like to present an extension to this theorem - The Southwest Postulate.

For those of you who do not know, Southwest Airlines has a boarding schema different than other airlines. With SW, you are not assigned a specific seat on the plane, only a board class - A through C. For example, if you have an A-class ticket, you are in the first cohort to board the plane and may choose any open seat. B-class boards second and can choose from any of the remaining seats, and so forth.

You can see from this model that our original theorem does not apply. But, never fear; I think there is a solution.

1. It's pretty important that you secure the A-class ticket. This is not required, per se, but will lead to a significant advantage. To the best of my knowledge the classes of ticket are handed out chronologically based on when one checks in for the flight. You can check in as early as 24 hours before the flight. Sitting in front of you computer hitting the refresh button in your browser 24 hours and 5 seconds before your flight is recommended. :) Just kidding, but not really, though - I do it.

2. Once you have secured an A-class ticket and it is your turn to board the plane, I would suggest doing the opposite of the original theorem - select a seat in the middle of an unoccupied aisle! Assuming that the plane is not full, no one will really want to climb over you to the window seat and someone may take the aisle seat because it is convenient.

3. Once the plane is in flight, move over to the window seat, creating the much-sought-after one-seat buffer. Sweet!

I don't think the row you choose matters too much, but wouldn't recommend the very front of the plane; I think there is a high demand for the ability to get off the plane first, so this area might prove to be an exception to our theorem.

Anyway, let me know if you are ever able to put this one into practice!


P.S. Thanks to Richard for helping me to devise this addendum!

Tuesday, July 1, 2008

Windows XP - Beginning of the End

As of yesterday, 6/30/08, you can no longer walk into a store and purchase a fresh copy of Windows XP. There was a lot of speculation that MS would grant XP an last-minute reprieve, but that, unfortunately, was not to be. Although, as a post in Lifehacker shows, you can still get your hands on XP in a couple of ways. While I do think that the much-maligned Vista is not as bad as it is made out to be, I think it's unfortunate that MS is bringing an end to XP.

I just wanted to take this, my 100th post, to take the opportunity to present my homage to XP. I think that XP is one of the finest operating systems ever created. I always had good experiences with it and never had any significant problems using it. In this nerd's humble opinion, it was leaps and bounds better than its predecessor Windows 2000 - and certainly better than it's immediate successor. XP took 2k's 'plug-and-pray' and refined it into a fine plug-and-play setup. I always joke that you can plug your toaster in XP and it will say, "Windows has detected new hardware, a toaster. How would you like your toast?" (Sorry, geek humor.)

Anyway, I won't drone on. If you are in need of a fresh OS install on your Windows box, I would recommend using one of the tips in the Lifehacker post to get your hands on a copy of XP before January, when it will be completely discontinued.

Goodbye, old friend. We hope that Window 7 will be as good as you were!