Are you working on a desktop software?
andrewf: I'm not but I have in the past - downloadable with a time-limited trial, and also available in boxed form via mail order and some distributors.The biggest difference I've noted since moving to the web is that on the desktop (Windows at least), you need beta testers.Your users are more distant and therefore disengaged (they got your app from download.com and have no idea how to contact you), older versions of your app will float around forever, and user's systems are varied enough that you can never do adequate testing inhouse.Pay attention to those users that do contact you, because for every one of them there's several that had the same issue with your trial version and walked away. At the same time, learn to recognise unique problems and fucked up Windows machines and walk away - they're just time sinks.Entice people with screenshots and a sales pitch, then make download and installation as painless as possible. Try and keep the installer size down. Definitely avoid making people download and install any sort of runtime environment separately.Tying registration codes to identity (regcode = hmac_sha256(secret + emailaddress)) will cut down on regcode sharing a bit during your early days, but keygens and cracked versions will eventually appear. There are a few turnkey anti-piracy / activation / etc solutions about these days, I never evaluated them.A retail version with a CD, box and a little printed manual will appeal to lots of people who wouldn't go for a download. Some may not have internet access at home, and most won't upgrade. Make your retail version once that's proven itself as a download for as long as is feasible :)