views:

166

answers:

6

I have an idea for an application that is firstly totally sweet and secondly completely absent in the market. It is fairly simple, and I think it won't cut into my studies too deeply to write it. However, I would like to make some pocket money on this, so I've decided to ask my fellow programmers for some idea concerning licensing. First, some background:

  1. I will not make this an open source product. As much as I love open source and as much as I love using it, I'm a fallible human being who needs food, shelter, and occasional alcohol, none of which are free. So please, if there are any among you who read this just to tell me to open source it, thanks but no thanks.

  2. This idea is actually pretty neat. Everyone I've mentioned it to had exactly the reaction I was hoping for: "Why the hell didn't I think of that?" among the programmers and "Ooh that would be useful" among the laity.

  3. But it's not like this is the next photoshop, so I'm thinking the price will want to be low enough to be a cross between an actual purchase and an impulse buy, but high enough for me to actually make something from it. In other words, in the single digit range.

Now, my main concern is: piracy. There is no way to keep people from stealing software, just as there is no way to keep them from stealing music. I do not want to be a dick and impose a draconian anti-piracy system because one, it would have to be based on my own cryptosystem (and everyone knows that those are the worst kind) and two, because someone will crack it eventually, and there's no need to build a false sense of security.

What I was thinking is to have some sort of system with which a copy of the program can identify itself as having been pirated, at which point it will notify the user. Of course, the user probably doesn't give two shits about this, and if they really wanted to use my software they could, so the message would just have a "Whatever leave me alone" button. It's like nagware, but much more stoic.

So what do you think? Any good ideas would be welcome.

+1  A: 

You can use "Activation-based" licensing, which would be a good idea if your application is required to always be connected to the internet. If not, well, this is not an option.

The following scheme can be implemented.

  1. You read a determined value on the computer - Computer Network MAC or Computer GUID if windows (or both)

  2. It sends the data to a custom web service which activates the data (verifying that this data is coming from your application would be a good way to stop attacks to get the activation crypting - This could also be faked but you have to be clever enough)

  3. The web service returns the result of the activation, encrypted with the unique pc data as a part of the encryption (seed, perhaps?)

That would leave a lot of people outside of the most obvious cracking methods, but will leave the process automated, you don't want to spend 10 min on each activation, if you plan to sell this in a big volume.

jpabluz
A: 

Couple of ideas:

  1. Make a free but hobbled version that's mildly useful. Turn on the full version when they pay.
  2. Set up an affiliate program. If they like it, they can refer their friends, and have it paid for after three of their friends buy.
  3. Monetize it some other way. Make signing up for your opt-in newsletter a requirement to downloading a trial. Sell the full version (and related products) in that newsletter. Optionally check every three months to prompt them for their registration e-mail if they haven't paid. Bug them every time they open the program if they don't have an active e-mail address in your mailing list.
John at CashCommons
With (1) and (3), you're almost asking for people to crack the program to unhobble it and/or remove the nagware. If you have the newsletter as a condition of download, people will either supply phony addresses or report it as spam, and you really don't want lots and lots of people accusing you of spam.
David Thornley
Just ideas David. ;) A proper opt-in newsletter service will help you defend against spam complaints. Aweber is such a service. They make sure you comply and will come to bat for you to tell the complainer, "Well, you signed up on 08/09/10, and confirmed your e-mail address on 8/10/10 at 6:03:45 UTC from IP Address 127.0.0.1. So what's the issue?" Anyway, basically if you're concerned about not making enough from direct sales, look for other ways to make money with your SW. There are plenty. Good luck!
John at CashCommons
+3  A: 

I think the best idea is to make the price low enough. Most people won't bother to look for a crack if the software is cheap enough. It will also reduce the risk of someone else making a similar product and selling it for a lower price.

kotlinski
+4  A: 

The problem is that any safeguard you put in (nagware, for example), can be bypassed. There will be fully functional unauthorized copies going around sooner than you'd expect. There will be pirate copies going around, and there's nothing you can do about it, aside from making something nobody would actually want. (This doesn't apply to iPhones and the like, but it does to pretty much everything more open.) If you can automatically register copies for paying customers, that's good, but trying to limit functionality simply won't work.

What you want to do is maximize sales, not minimize piracy. Most people who get the pirated version probably weren't potential customers, and it really doesn't matter for your finances whether or not they have a copy (except for the potential of free advertising). So, you want to make people want to buy.

First, don't charge too much. The iTunes store and Amazon music stores sell a whole lot of music, despite all sorts of music-sharing schemes.

Second, make it easy to buy. Ideally, have an easy-to-find website that will accept money and allow people to download, and have that information available with each copy. If potential customers can't conveniently buy your software, they're likely to get annoyed.

Third, make sure your distribution is full-functioned. Don't give the pirates an opportunity to distribute a better product. Whenever I buy a DVD with non-skippable FBI warnings and "You wouldn't steal a bicycle" announcements, I feel like something of a chump, since I wouldn't have to play those things if I'd just pirated the movie rather than spending real money and staying legal.

Fourth, don't treat your customer pool like criminals. Don't set up expectations of behavior you don't want. Keep positive.

David Thornley
A: 

Take a look at the article Developing for Software Protection and Licensing. It covers six important points to consider when developing software that you intend to sell.

Obligatory disclaimer: I co-founded OffByZero, & we produce the OffByZero Cobalt software licensing solution for .NET.

Duncan Bayne
A: 

The following tips can be helpful when implementing licensing in your software:

8 Ways To Make Your Software Hacker-Proof and Crack-Proof With CryptoLicensing

logicnp