There is a lot of great open source compression software that gets posted here, but there is also a lot of great closed source compression software. I'm pretty deeply involved in open source so perhaps I'm just having trouble seeing things from another perspective, but I'm having trouble understanding the reasons why people would choose to develop closed source compression software. Therefore, I thought I should ask those of you who are doing so and releasing it for free here: why not release the source code?
The potential reasons which I could come up with, as well as why I have trouble accepting them, are listed below. I'd love to hear your thoughts, especially if you disagree or have reasons I haven't thought of.
Commercialization
Obviously, commercializing open source software is more complicated. That said, there are some really great open source solutions across the spectrum (from fast to slow but with high compression ratios), which makes me wonder how much of a market there really is for proprietary solutions. Are there many people choosing to pay to use your software when there are open competitors which are very, well, competitive? Why not use a dual-licensing scheme (like LZO) to try to popularize your implementation while maintaining commercial viability?
Code quality
I know a lot of people are, frankly, a bit ashamed of some of their code quality. This has certainly stopped me from releasing source code on more than one occasion, but wouldn't it be better to just include a disclaimer that the code quality is questionable and hope that someone else finds the code interesting enough to use, and maybe even improve, in spite of that?
Inclusion of 3rd-party IP
Lots of proprietary code includes content licensed from third parties which cannot be released. I have trouble believing this is a significant issue given how low-level most of the software in question is.
Maintaining trade secrets
Isn't the whole purpose of this forum to share information on data compression? Why even post anything at all?
So, what am I missing? I know some people have some strong opinions on the matter, and I really hope this doesn't turn into a flame war—if it does I'm sorry, and hopefully the mods will close the thread.