views:

143

answers:

6

We have a very small, specialized user base. No community. My boss wants to find out who is using it. And his approach is to simply make a hidden connection, maybe an auto update function, enabled by default WITHOUT notification when there is no update ... I don't really like the idea and try to come up with something different.

There is a registration, then you can download a free trial. No other limitations, but the time limit.

Sold licenses are usable across an ip-range - universities. So the registration and licensing itself is no indicator of usage. Not to speak of that the devs have no feedback about sold licenses whatsoever.

I would like to have some advice how you would, or better have actually, approached a problem like this.

€: I rephrased the approach of my boss

+5  A: 

"Simply call home" to notify you that someone is using your software is probably not a good idea, indeed : users don't tend to like that. And it can be bad for the reputation of your company/software.

A solution would be having some kind of good reason to "call home" ;-)

For instance, what about some kind of auto-update-mecanism ? That users could disable, of course, if they want (so not 100% percent efficient) ; but most won't disable it.
And it's really a good idea of reason to do a request to your server :-)

Just don't send anything that could identify the user ; some unique-id key, maybe (to make a distinction between users), but that cannot be used to identify a user ?

I don't like when software I use say to people "hello, this guy is using me!", but I really like the auto-update feature in Firefox, for instance... Event if it says I'm using the software ;-)

Pascal MARTIN
I'm not sure that by "call home" he meant having the software contact his server. I thought he meant actually telephone the customers and ask them if they're using it (I could be and probably am wrong).
MusiGenesis
Oh ; I thought by "home" he understood "our company" ; well, if I understood wrong, sorry ^^ (But this doesn't change my answer -- except for the meaning of "calling home", of course ;-) )
Pascal MARTIN
doh. I mean connecting to a server and sending things. I'll edit
Ronny
Yeah that's the idea, kind of. But he wants to not notify the user when there is no update. But it is disable-able. Mh it kind of is against my ideals, I wouldn't like that.A user experience program as in VS, would be a way. But it would be way harder (and maybe not useful)
Ronny
The auto-update without notification when there is no new version is what Firefox does by default (either for the browser itself and its extensions) ; and I see no problem with it -- but I would hate it those request were just to say I'm using the software. Disable > of course ; but if you are doing updates the right way (not too often, with a not too instrusive mecanism like "apply the update later and don't bother me anymore for a couple of hours"), the majority of people won't disable the functionnality ;-)
Pascal MARTIN
It is sneaky :(. I want something more transparent.
Ronny
+1  A: 

My software has a licensing scheme where each installed copy generates a unique product ID, and I then email the customer a matching code that unlocks the full program. So I know exactly how many (paying) customers I have.

This doesn't count people using cracked versions, but I'd rather not know how many of them there are anyway.

Since you can have multiple users on a single license, the only thing you can really do is add something to your software that sends a notification to your server every time the application starts. Obviously this won't catch people who aren't connected to the Intertubes, but there's no way to measure them anyway (short of calling them, as you've mentioned already).

MusiGenesis
That email thing sounds interesting. You could even automate it. – hydroes 40 secs ago.I mean generating a key, sending it to a page, returning a key to then input to unlock the tool.And it's manual. No hidden things.
Ronny
A: 

Well I would certainly hope you know who you're selling your software to if you're keeping licenses like that, and that you have their phone numbers. Give them a call, sit on the phone with them for a while, ask them what they'd change, what they don't like, what bothers them.

That would truly be going the extra mile, and would most likely impress whoever is using the software. When you call, make sure to let them know you aren't some 3rd party calling on your company's behalf, let them know you actually work on the software that they're using, and that you really want to know what they think, and that their opinions have some form of influence on future versions and features.

You could also send out a mass e-mail to do the same thing, but that's lazy, imo.

Auto-Update w/ usage stats is a GREAT idea.

Sneakyness
+2  A: 

This is extremely subjective, and I'd strongly suggest you go and ask some of your actual users how they feel about it, instead of a bunch of opinionated programmers (unless your program is oriented towards programmers who frequents stackoverflow.com). If you make clear it's anonymous, light-weight, and your users like your program to begin with, maybe they'll be just fine with contributing data to build a better version. But there's no other way to know, then to simply ask them.

Concealing (to use a loaded phrase) your activities under some unrelated pre-text seems highly disingenuous.

Svend
We/the Devs do not know most of our clients directly.The people who buy are department heads, who install a ton of software - they are not interested. Students/programers use it. Idk. I think we shouldn't ask them for an opinion. They'll be ok with it.But as you said it is disingenuous.
Ronny
+1  A: 

If you're selling to anywhere that might have a competent IT setup, like a university, then I wouldn't even think about a sneaky don't-tell-them route. If you do, you're lining yourself up for bad publicity as soon as someone's firewall spots the unexpected connections

Gareth
Good point! thanks
Ronny
+2  A: 

I start almost all my programs with a shell script that emails me who is using the program, what version they're running, and some other stuff. If nothing else, it's useful for the bean counters who want to track software usage to see if your job is worth keeping.

xcramps
How do you technically realize the mailing?
Ronny