Cleek has moved to
Update your treasure maps accordingly.

Wednesday, June 01, 2005

Serve the server

The registration scheme for one of the products my company* sells uses a license file - made uniquely for each customer. The license creator, a little Windows program, takes the user's name, email address, etc., puts that through a rather complicated cryptographic process and spits out a license file.

The credit card processing company we use has a copy of our license creator. When they get an order on-line, they send the user info to our license creator which creates the license file; then they attach the license to an email message and send it to the customer. It's seamless.

Well, it was until today. Today, after years of relatively trouble-free operation, the credit card processor told us they can't handle the license creation any longer (no explanation), and that we'll have to find another way. Umm... ?

So how to fix this?

The place we use to host our web site run on some flavor of Linux / Unix, so we can't put our license generator on those servers (because it's a Windows app). They also don't let you compile executables on their machines, so we can't build a Linux/Unix version of our license creator. They let you write your own apps in scripting languages (PHP, Perl, etc), but there's no way to handle the cryptographic tasks in any of those languages (at least not with the packages our hosting service provides), so we can't write a PHP version of our license creator.

We could change hosts, and move our site to a place that does .Net hosting so we could write a .Net version of our license creator (assuming we can find a way to do the crypto stuff in .Net), but changing hosts is always a gigantic nightmare. That's really not an option.

We could change the application license scheme into something we could handle in a scripting language like PHP or Perl. But generating 10,000 new licenses for existing users is less appealing than changing hosts, and we just changed license schemes a few months ago.

So, we're stuck.

It looks like we're going to have to generate these licenses manually. This will cause much anger among customers, who, for some reason, seem to expect that everything on the internet is instantaneous. We've had to handle licenses manually in the past, when servers are down, or for special cases, and some people absolutely freak the fuck out when they don't get an immediate response. Having to wait until one of us gets around to checking our email means someone might have to wait 12 hours or more (depending on how late I sleep).

But, I see no choice, so let the bitching begin.

* - of which I am an employee, and do not speak on behalf of.

All images Copyright 2004-2005, cleek.