Shareware Beach

Wednesday, 29 December 2004

Safe and Sound after Earthquake

Filed under: Personal — Jan @ 16:43

Thanks to everybody who expressed their concern for our safety after the recent earthquake in South-East Asia. Ubonratchathani is a province in North-Eastern Thailand, bordering with Laos and Cambodia. We are over 1,000 miles away from the devastation on Thailand’s West coast. All our friends and relatives are safe and accounted for, and our business is unaffected.

Lonely Planet’s map of Thailand indicates Ubon at the right hand center of the map. The tourist centers hit by the tsunami, Phuket and Krabi, are indicated in the lower left corner of the map. Phang Nga, the worst affected area, is immediately North of Phuket (not indicated on the map).

Thursday, 23 December 2004

Eric Rice Finds Google Suggest too Suggestive

Filed under: Cyberspace — Jan @ 19:39

Last week I commented on Google Suggest, a new feature of the popular search engine that is in beta. Google is obviously censoring the suggestions, since a particularly popular three-letter-word yields no suggestions at all. On the other hand, searching for many popular software products, including my own, causes Google to suggest to search for pirated copies.

I’ve sent my comments to Google using the feedback link on the Google Suggest page, but received no response. I carefully avoided using the three-letter-word in question, so it should have passed their spam filters.

If your name is Eric Rice, however, the picture is even uglier. It seems that one particular Eric Rice has been the recipient of quite a number of insults on a message board that’s being indexed by Google. Google Suggest cheerfully displays the list to anybody searching for “Eric Rice”, including to children under 13 who don’t know how to spell these words, even though they can spell and even guess the three-letter-word I won’t mention today. Eric Rice the podcaster doesn’t like it at all.

I wonder what Google’s intentions are with this new feature. By filtering out some search terms, but not others, the argument that it’s all done by a machine is no longer valid. Google filters, so Google is liable.

At least I know now I’m not the only one whose feedback is being ignored. And searching for “Jan Goyvaerts” yields no suggestions other than my name. But even then Google Suggest is not helpful. There are a number of variations of my last name, so even fellow countrymen often fail to properly spell it. Typing “Jan Go” (all variations identical up to that point) does not bring up my name as a suggestion, even though my name yields 4 times as many results as “Jan Gossaert” (never heard of). Google Suggest doesn’t know any “Jan Goovaerts” at all (the name Goovaerts is more common than Goyvaerts).

What I haven’t talked about is how Google Suggest is linked to AdWords. I have no idea, but it does look like a “clever” way of increasing the number of searches for keywords that get many high bids. I’m an AdWords advertiser, but I’m not thrilled with Googles way of trying to show them everywhere. AdWords was originally promoted as being highly targeted, since only people actively searching for your keywords would see them. But that is no longer true, at least if you don’t disable the “content network” option.

Saturday, 18 December 2004

Backup Strategy to The Test

Filed under: Software Development — Jan @ 18:45

As tends to happen when my computer reaches a certain age, my two-year-old computer’s hard drive was getting a little full. Actually, I still had plenty of free disk space, it just wasn’t arranged conveniently. So I decided to partly repartition the hard drive last night. Of course, I started with making sure all backups were up to date. I made new backups of all the data on the disk. I decided the OS backups I already had were recent enough.

After clicking an incorrectly labeled button in the partitioning software, I conveniently wiped out the hard disks partition table. The button was labeled “cancel”, which means “abort, and revert to previous state”. It should have been labeled “screw you” instead. Inexperienced programmers often label buttons “OK” and “cancel”, even when things are not OK, or when the button does not revert the situation to the last known good state. But that’s a subject for another day.

With the partition software indicating the whole hard disk as unpartitioned, I decided to put my backup plan to the test rather than waste time trying to figure out how to cancel the partitioning. (Partitioning doesn’t take effect until the computer is rebooted, so theoretically I should have been able to cancel it.)

So last night I spent over an hour repartitioning the hard drive from scratch, and restoring all the OS images. Everything went smoothly, and I spent most of the time using the laptop to catch up on my reading. The OS backups were about half a year old, and didn’t include the Delphi 7 SP1 update, and the move from IE to Firefox. So I had to reinstall that this morning, plus copying all the data backups from DVD to the hard disk. All in all, everything went smoothly. I now have a clean PC, with plenty of free hard disk space, and I can be confident that in a real emergency, my backup plan works.

A good backup plan should allow you to recover from three situations. The most frequent problem is “operator malfunction”, also known as “shooting yourself in the foot with the Save or Delete button”. The second problem is hardware failure, usually the hard drive going for an early retirement. Finally, natural disasters like a thief making off with PC plus backup disks can really ruin your day. I will never forget the story I heard about the shareware author who diligently made his backups every day, only to lose his entire business when a burglar gave his desk an early spring cleaning.

A good backup plan also takes into account that some files are updated far more frequently than others, and that some files are far more valuable than others. Finally, “operator malfunction” can also affect the backups. Backups should be extremely convenient to make, so you won’t be lazy and skip any.

Making a backup is only convenient if it runs unattended. That means you’ll need a large storage device to make backups to. I use a DVD writer which can burn 4.5 GB to a single layer disk.

Backing up the whole hard disk every time doesn’t work, since I can’t fit my 80GB hard disk onto a 4.5 GB DVD. A backup of your complete disk is also not very useful when you need to recover from operator malfunction. If you back up your whole disk to a second hard disk, and the next day you find out that you deleted the wrong file last week, you won’t find it on the second disk either.

To be able to backup the disk in pieces, I use the following strategy. First, I partition the hard disk. I create one 8 GB partition for each operating system I want to install. Currently, my PC runs Windows ME (for testing), Windows 2000 (for development), and Windows XP (for testing and beta software). I back up these partitions only a few times per year. Before I do, I make sure it’s running smoothly and is squeaky clean (deleting the recycle bin, browser cache, etc.). I back these up to DVD-R and keep them forever. This way I can always go back to a previous known good configuration. Since Windows tends to slow down after installing and uninstalling lots of software, I often restore one of those backups when I’ve been testing beta software or engaged in other risky behavior. No registry first aid or Windows fixer tool can beat a clean backup. The backup software I use copies the whole partition, not just individual files.

The remainder of the disk is my big data partition. I never save any data on the OS partitions, so I can restore the OS without losing data. Different kinds of data are stored in separate folders, and backed up to DVD+RW separately. That way I don’t have to back up data I didn’t work with. E.g. after a day of programming, there’s no need to back up my digital photos. I don’t bother to compress the data when backing it up. That enables me to easily read the files from the DVD with the original software, if I ever have to recover from operator malfunction. I rotate multiple DVDs to make the backups, so I can easily go back a few days if I messed up and don’t discover it until after I’ve made a new backup. Since CDs and DVDs are not indestructible, I’ll also lose only one extra day should the DVD with the latest backup become unreadable when I need it. Don’t think this can’t happen. I’ve had several CD-Rs become unreadable already. Fortunately, none of them contained my only copy of the data.

Rotating removable media is good protection against hard disk and backup media failure, but is not sufficient against operator malfunction for files that are frequently modified. I never modify my digital photos (I create a new file when editing photos), but I modify my source code all the time when programming. And programming mistakes can go undiscovered for quite some time. So every time I release an update, I will make a copy of the whole source tree plus binary distributables. I keep these backups on the hard disk, and copy them to DVD as well. If I break something in my source code, even if it is a corner case that isn’t detected until several versions of the product later, I can always go back to a previous version and compare the source code.

With operator and device malfunction taken care of, the last step is to make sure you can recover from serious disasters. If your house burns down, that’s terrible. If you lose your shareware business, that’s terrible. Make sure you don’t lose your business when your house burns down. The only solution is a geographically separated backup. An easy way, what I do, is to regularly mail a DVD to my parents. All they need to do is keep it somewhere they can find it if it’s ever needed. As a side benefit, those DVDs, and CDs before it, are a nice time machine showing the growth of the data I’ve gathered and produced.

This backup strategy has saved me numerous times, both in case of operator malfunction like yesterday or hardware malfunction. Just two weeks ago, one of the two RAM modules in the laptop died. In the process, Windows crashed with a blue screen, damaging some vital system files preventing the computer from booting. After discovering the chip was bad (by running Memtest86 from a bootable Linux CD), I removed the chip, restored the OS partition from backup and was up and running in no time. Transcend seems to need more time to honor their lifetime warranty.

If you don’t feel so confident about your backup strategy that you’re willing to risk to wipe out your whole hard disk like I did yesterday, then you need to rethink that strategy right now. Tomorrow, your PC might have gone to greener pastures.

Thursday, 16 December 2004

Google Suggest: Too Suggestive or Not Suggestive Enough?

Filed under: Cyberspace,Shareware Industry — Jan @ 21:37

Google Suggest is a new feature of the popular search engine that’s currently in beta. I have mixed feelings about it.

So far it does not strike me as particularly helpful in quickly finding the information I want. If I type “beethoven”, I get 10 suggestions including “beethoven opus 20″ (107K results), “beethovens opus 20″ (11K results) and “” (1 result). That’s two redundant suggestions, and one useless suggestion. But it doesn’t suggest “beethoven symphony”. If I type “beethoven sym” it suggests “beethoven symphonies” (328K results), “beethoven symphony” (1,120K results) and then 8 times “beethoven symphony” followed by a number. Might be useful to quickly compare the popularity of certain keywords on the web (on web pages, not in search queries!), but doesn’t help me to search faster. It’s not really useful as a type assist tool, since it updates too slow.

The suggestions have been filtered, though. If I type “sex”, I get no suggestions at all. Same deal with “safe sex”. “Drugs”, “murder” and “massacre” yield plenty of results. Twisted morality police at work? At least “Hitler”, “Holocaust” and “nazi” return plenty of suggestions. Even “Mein Kampf” is in the list, which isn’t even English. (Note: Holocaust-related subjects are very sensitive in many countries, even more so than sex-related subjects.) Guess which of all these keywords has the most results when actually performing the search?

But where Google gets really suggestive is when I type in the name of one of my products. E.g. “HelpScribble” shows me “helpscribble”, “helpscribble download” and “helpscribble crack”, the latter two with various version numbers. Same story with all my other products, and many Surely people are typing these keywords into Google, and Google is finding pages containing those keywords. But should Google suggest people to look for cracks when they are innocently typing in the name of a product? I know from my web logs that many people do arrive at my web site by typing a product name into Google rather than typing the product domain name (e.g. into the address bar. I also know that I frequently do this myself. Google usually gives the proper site as the first result, which may not always be

Google has already shown the ability and willingness to filter the suggestions. Surely, some people would be offended if Google made suggestions about safe sex. But as far as I know, safe sex is still fully legal in California, where Google is based. But software piracy is not. Yet Google hides safe sex, but offers to search for pirated software for almost any product name (mine or other people”s) that I can think of. I know I don’t like it. More people looking for cracks is the last thing the software industry needs. I wonder what Google’s legal department has to say about this. They can’t claim to be mechanically aggregating what’s already out there, since they’re not.

Let’s see whether an email message with “sex” in it to Google’s feedback address will get past their spam filters.

Next Page »