in reply to Protecting our work

On closed programs: it is really hard to distribute a perl program which cannot be read by someone determined enough. The same can be said for most interpreted/vm-based languages by the way, including Java and .Net.

You can try to build copy-protection in a program, but a) if it's popular, it will be cracked anyway and b) companies (assuming you're selling to companies / institutions) don't like the idea of having illegal software around, so they'll buy it eventually, even if they start out with an unauthorized copy. The situation might be different for consumer software, but MS office can be copied without modifications and microsoft is doing pretty good compared to most companies. I agree with the posts that say you should assume your customers are honest. You can always sue them if nessecary :-)

Of course, none of that applies if you're not distributing the program itself.

Having said that, selling "boxed" software is not the only way to make money. I currently make most of my money developing (from scratch and extending) and deploying open-source products for companies. If you can get your CMS popular enough (and giving it away helps a lot there) there might be good money in development, deployment (as in setting up sites with the CMS) support contracts etc. Basically charging for the work you do with the software, not the software itself.

If you're considering making the software "open", take your time to figure out which license you'll want to use. I'd recommend taking a popular license over inventing your own - if only because it'll save potential users a lot of head-ache if they don't have to figure out the fine-print of some unknown license.

Open source licenses are abundant and they are not all the same; it takes a while to get at the differences. Two of the popular ones are the GPL license, which basically states that if you want to distribute a GPL program - or anything based on a GPL program - it should have the GPL license itself (keeping any derivative code open/free), and the BSD license, which more or less gives the reciever the right to do what they want with the code, as long as the original producer is mentioned (so you can build a "closed source" program based on BSD code).