On Fri, Mar 23, 2007 at 12:43:30PM -0400, M. Adam Davis wrote: What an excellent post! I'll throw a couple a nickles at it. > 1) Do not put credit card info into anything that you distribute. Not > only is this a bad idea from a number of perspectives, chances are > good that if you read your merchant agreement with your CC processor > you'll see this sort of thing is expressly forbidden. > 3) Unless you have deep pockets for lawsuits, any protection you add > that helps you find the perpetrators is useless. You must add > protection that prevents an unauthorized user from executing or using > your program. > Agreed on both points. It's simply not workable. > 2) Whatever you come up with will be cracked by someone who has just > as little cracking experience as you have software protection > experience. Many software protection utilities, programs, shareware, > etc that you can add to your program have standard cracks. Sometimes I think crackers simply take it on as a challenge to see what it takes to circumvent. > 4) You will be expected to provide support for your product. Price it > accordingly. This isn't like most shareware where the user knows what > it does and how to use it - you're going to get all sorts of questions > about how to get a particular junk CNC machine to run your code. Put > a lot of thought into the price, and how much support you can provide. Or you may want to consider pricing support as a separate item when the target falls outside of certain parameters. Support can be a black hole when the target is unknown. > Create rich documentation for users of all levels of experience. Absolutely. Also try to foster an online community where users can help support each other. > 5) For production, maintenance, and support reasons, I and many others > actively avoid software that requires activation (what if the company > stops supporting?), dongles (oops, new computers don't have parallel > ports, or vista doesn't support the USB dongle driver yet), or tie > themselves to the hardware. Consider whether your market will stand > for any of these schemes. This is a tough call. The problem with protection is that it drives the honest folks away and offers little real protection to the dishonest ones. You really need to examine protections schemes that are transparent until violated. > Keep in mind that not only will you have to > support the software, but your own protection through time. Trying to stay ahead of the curve. > The best protection scheme I've seen is to put decent software license > protection on each release, and release a new version with major > features at least once a year, while releasing the older versions for > free to hook new users. Ideally you'll have updates and fixes > released several times per year. When you find a key that's been > distributed, make sure the new versions don't allow that key. When > you see a cracked version of the software, change the internal scheme > a bit so they have to start all over again. Since you have fully > functional free versions the need to crack is not as strong, yet > compelling features will bring paying customers. Schools and > hobbyists will use the free version, and when they go into the > industry will buy the official version. That's lots of work. Also I'd bet that the user pool is too small in this instance to allow for free versions to float. > Of course, that requires work, and it sounds like you're more > interested in releasing it and just getting another source of income, > without a long term plan for the software. Make sure that whatever > you do is in line with your business goals. Agreed. How about another angle? Instead of selling software, why not consider selling a service? Have folks send you their plot files, you convert them, and you send them back results? Charge per use though subscriptions would be nice. Now you're not selling software that you have to try to protect out in the wild. It generates a revenue stream that you can get a better handle on. You can even offer the free hook of a limited test service so that folks can be sure that it works with their equipment before buying. Just a thought. BAJ -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist