views:

40

answers:

2

I want our application to send some anonymous information (OS, Java version, etc.) to a server on the first startup. The only usage of this is to determine how many copies are being used, and to know what OSes are used most by our customers, so we know where to focus testing.

Should we ask the user's permission for this (by showing a allow/don't allow dialog), or is it not needed? Many applications I know send this type of information without asking permission, but even though it might be legal, I don't know if it's good behavior.

+3  A: 

The general attitude for phone-home code in local applications seems to be negative. Even large companies such as Microsoft have received heavy negative attention because of their compulsory information grabbing practises.

Therefore, I think you should either ask for permission or don't phone home at all.

Delan Azabani
+1  A: 

If the app doesn't need to communicate with your servers to actually perform the job the user ran it for... then you are in effect asking a favor of the user (use of their net connection, assisting you in testing, etc.) for which you certainly should ask first.

If the app already does communicate with your servers in order to do its job, you should inform the user what information is being sent and received, but you don't need to ask them for permission, because they already allowed communication with the servers by choosing to run the program in the first place.

JesseW