Free as in Marketable?
An anonymous reader asks: "I work in IT at a research university. A few of my co-workers and I are in the process of planning a piece of software that we would like to release to the public under the GPL license, but we're running into issues with our "intellectual property" office which thinks we have a potentially marketable product. We would rather give the product away for free and see our university get some credit for the product. How have others dealt with this problem? It's a shame that money is more important to a research school than sharing research with others."
- Be a large company that can affort to market the heck out of your products. (ie the current capitalist method).
- Be a niche developer selling a useful product to a small market. This usually works for a solitary developer. The market won't be big enough to support much more than that.
- Really target a niche market hard - Mathematica, Matlab. This is almost an extension of the first category, cause its still all about marketing.
- Be a small group of friendly talented developers who labor for love. (I'm thinking OmniGroup here)
- Do some sort of value added open source thing. The profits are probably directly proportional to the marketing muscle.
No software will be perfect, therefore, no software will sell itself. Unless your university plans on making the financial risk of targeted advertising, the money just won't come. Ask them to generate a plan on how they intend to sell your software. If they won't commit, then give them some examples of the last category (sleepycat, apache, mysql, zope, etc.)sean
Its easy to force or make it very difficult not to release the source of a project once you are the coder. The easyest way is to link in a few GPL librarys (LibBFD is my favorite in this area) and make their use so essential that the software cannot be unbundled from them. Then state that if the product is to be released to the public it has to be open sourced due to its use of GPL'd librarys. Doesn't stop you writing it but if the university wants to distribute it then it needs to open it.
Mouse powered Chips, Open source Processors and Lego
If the university is ever going to make any money of off this, they need you to help. They just don't have an in-house software shop that can take your code, fire you, and crunch it into a well oiled and QA'd product and provide tech support, etc. They need you to write it; they need you to use your expertise in what it does to market it, by finding the company that is willing to buy a commercial license to it; etc, etc.
Point them to the kermit project at Columbia university. You need to talk to your boss, department heads, whomever, and graciously make the point that the university is not going to make a red injun cent off of this if you are not happy.
Then tell them you think the best way to market it is to release a GPL'd edition, and advertise a separate closed source license for sale to a companyt that want's to commericially develop it.
Look around carefully and talk to friends, and find a company that makes vaguely similar products that is not a nasty place to work. Get in there, be persistent, seach the company phone directory until you make it past generic business contacts to the people who matter, and market it to them. Offer your services as a consultant on the side. Because in this economy, even if you are working for a univesity, it never hurts to have another job lined up on the side.
The only problem with this, which may or may not be serious, is the possibility of competitors stealing code from your GPL project.
Of course outright copying would be illegal, but how are you going to prove it? Are you going to have to constantly throw money at lawyers to get subpoenas to look at your (closed-source) competitors' code? Will the legal system even allow you to do that?
Plus a competitor could "contaminate" their code with yours without really taking it line-by-line; a patent may be helpful against this but you can't stop it completely.
Whether or not these threats are significant depends on what kind of software you are writing. It think there is a case for making "ancillary" code (GUI/command-line interfaces, cross-platform libraries, etc) GPL, while keeping "core algorithms" secret.
(most of the bugs and flaws I find in commercial software are in the "ancillary" stuff like I/O code anyway; I'd love to have access to the source for those things, even if I didn't have access to the "core")