S h o r t S t o r i e s

// Tales from software development

Archive for July 2014

My TortoiseSVN icon overlays have disappeared

with 16 comments

For no obvious reason, the file icon overlays used by TortoiseSVN have disappeared from Windows Explorer on my PC today. This is very odd as I’ve never had this problem before and, as far as I’m aware, nothing has changed in the past few days.

A quick search of the internet suggested that the problem might be due to the fact that only 15 icon overlays can be used and Windows reserves at least 4 for its own use. The overlays are defined in the registry at:


The registry editor showed the following keys:


With Windows needing 4 of the available 15 overlays, only the first 11 in this list (sorted alphabetically) will be used.

It’s interesting to speculate that different vendors are trying to force their overlays to the top of the list. The first three keys belong, I think, to Adobe and have a space character prepended to the name. The DropBox overlays start with a double quote which, by a happy coincidence (or perhaps not), bumps them up the list. Even TortoiseSVN may be guilty of doing this as their keys are prefixed with numbers.

As I’m not particularly interested in the Adobe and DropBox overlays, I renamed them using a “z_” prefix to force them to the end of the list:


I then used Task Manager to end the explorer.exe process and re-started it using Task Managers File | New Task (Run…) menu item.

And the TortoiseSVN overlays are now back:






Written by Sea Monkey

July 30, 2014 at 8:00 pm

Posted in Environments

Tagged with

Calculating typical network data rate

leave a comment »

I have a Windows service that monitors internet connectivity by periodically fetching a web page from a well known web site.

As I’ve recently been having problems with the speed of my internet connection I thought it would be useful to also download a reference file a few times each day and time how long it takes in order to monitor download speeds.

The service is configured to run the download speed test several times, at half hour intervals, in the early hours of the morning.

So, I now have a set of download speed samples for each day but how should these speeds be reported ? The minimum, maximum, or average ?

The problem with the minimum is that it may be spurious. Most internet connections suffer reduced download speed from time to time and it’s also possible that a low download speed may reflect bandwidth limitations in the local network or higher than usual CPU activity on the server where the test is running.

To some extent this applies to all values less than the maximum sample value. The download speed samples should, ideally, all be a single consistent value rather than a range of values fitting, for example, a normal distribution curve. But in the real world, there will be a range of values and I’d like to reject any samples that are perhaps not an accurate reflection of typical download speeds.

There are some statistical methods for rejecting outlier samples such as Chauvenet’s CriterionGrubb’s Test and Peirce’s Test but they are all questionable techniques, especially when applied without any consideration of the nature of the data and its distribution.

Fortunately, I didn’t need a rigorously correct method, I just needed a means to reject low value samples that were not an accurate reflection of download speed and would skew any attempt to determine a typical download speed.

I decided that Chauvenet’s method would be quick and simple to implement but with a small twist. This method relies on calculating the standard deviation for the sample set and then rejecting any samples that are more than one standard deviation from the mean. However, while this sample set may contain spurious low values, the high values are accurate because it’s not possible to have values beyond the actual maximum download speed that the connection is capable of. So, rather than reject all samples more than one standard deviation from the mean, the method I implemented only rejects samples that are below the mean and more than one standard deviation from the mean.

The mean of the remaining samples is calculated and presented as the ‘typical download speed’.

An example set of samples looks like this (download speed in bits per second):


A graph of these values helps show that while most of the values are in a fairly narrow range, the first and last samples are, arguably, outliers:


Plotting the absolute standard deviation shows that the first and last values, with standard deviation greater than 1, are definitely candidates for outlier values and that sample three is right on the threshold:


The first value, 6391320, is 1.25 standard deviations greater than the mean of 5818570 while the last value, 4742675, is 2.35 standard deviations below the mean. Both these samples would be rejected when using Chauvenet’s Criterion but the modified version I’ve implemented only rejects the lower value sample.

An average of all the samples gives a value of 5818570. Applying Chauvent’s Criterion and rejecting the first and last samples results in an average of the remaining samples of 5881463, while using the modified version and rejecting only the last sample gives a sample average of 5938114.

While this modified version of Chauvent’s Criterion skews the result towards the higher value samples, I believe that this is correct for this connection speed data.

Written by Sea Monkey

July 16, 2014 at 6:00 pm

Posted in Environments, General

Tagged with ,

How to lose customers fast. Really fast…

leave a comment »

Auction Sentry is an ebay bid management tool that I’ve been using for the past eight years. The annual subscription is $10 and although I don’t use it much, it’s been very useful when I have needed to use it. Over the years the product has had its problems, usually caused by ebay making changes, and the developers have sometimes lagged behind in resolving issues. However, I felt loyalty to the company as I’d used its product for years and the support team were helpful and responsive and bugs were usually addressed and resolved quickly.

Last week I went to use the software only to find that it had expired. I was a little surprised as I hadn’t received a subscription renewal reminder email. Even more puzzling, when I tried to renew my $10 annual subscription I found that the only option offered was a monthly renewal for $4.95. Thinking that this was some sort of trial offer, I repeatedly tried to renew my annual subscription but each time only the monthly renewal option was offered.

A quick Google search showed that I am not alone and that many other users have encountered the same problem. It appears that the company has decided to increase its subscription fees by 500% with no concession to its existing subscribers. This seems so ridiculous that I raised it with the company’s support team.

No annual renewal offered

Category:  Renewals

Case Status:  Closed

Last Updated: 6/30/2014 9:01:05 AM

Case Topic:  No annual renewal offered


Posted Thursday, 6/26/2014 3:22 AM

I've been an Auction Sentry user since 2006 and have purchased either annual or 3 year subscriptions renewals when required to continue to use it. I only use Auction Sentry occasionally and when I just tried to use it I received a message indicating that it had expired and that I need to renew my subscription. However, the only option that I'm being offered is for a single month at $4.95. I've received no emails indicating that my subscription was due to expire or that it had expired and I don't understand why I'm not being offered a one year or three year renewal option ?

Best regards.



Posted Thursday, 6/26/2014 3:19 PM


I am sorry to hear that you have encountered difficulty with a renewal.

Unfortunately, we no longer offer subscriptions for durations longer than one month, so the currently monthly subscription you see is the only one we have remaining.

Apologies for any inconvenience this may cause.

Please let me know if you have other questions or encounter further difficulty.

Auction Sentry Support



Posted Friday, 6/27/2014 12:14 AM

After 8 years as a loyal customer, I'm very disappointed to be treated this way. Clearly your company has no regard for its long term customer base and so I will be joining the many who have deleted your software from their computers and found an alternative product from a company that cares about its customers and doesn't treat them with such contempt. I'd like to be able to wish your company every success but the truth is that I think it deserves to go out of business as a result of losing customers because of the way it is treating them.

Best regards.

Todd K.


Posted Friday, 6/27/2014 11:56 AM


Thanks for following up on this matter. I am sorry to hear of your disappointment. I will pass your comments on to our management team but, my understanding is that our fee structure is permanent and will not be changing.


Todd K.



Posted Monday, 6/30/2014 1:33 AM

Thank you for your follow up. I do strongly feel that Auction Sentry has got this badly wrong and is treating its existing customers with contempt. It's a basic rule of business that you retain existing customers because it's very costly to acquire new ones. I suspect that most existing customers will be as annoyed and disappointed as I am with the new subscription pricing and will take the same action – find an alternative product. For what it's worth, I have uninstalled Auction Sentry and started using Xellsoft's HarvEx. It may be a less polished product but it offers similar functionality and is more than sufficient for my needs at a price that was what I was previously paying for Auction Sentry.
Todd K.


Posted Monday, 6/30/2014 8:59 AM

Hello again,

Thank you for your additional comments.


Todd K.



Posted Monday, 6/30/2014 9:01 AM

Auction Sentry has lost another customer.


Written by Sea Monkey

July 1, 2014 at 7:00 pm

Posted in Comment, General

Tagged with ,