
The chemfp project: problems selling free software - dalke
https://jcheminf.biomedcentral.com/articles/10.1186/s13321-019-0398-8#Sec24
======
dalke
I started the chemfp project to see if I could develop a self-funded free/open
source product in my field, cheminformatics. (In short, storing and searching
chemical information on a computer. Chemfp does very fast Jaccard-Tanimoto
similarity search for "short"/O(1024 bit) bitstrings.

The answer: no.

The paper includes a comprehensive background on the search techniques and the
software, which probably doesn't interest most here.

The section I linked to highlights some of the problems I had selling software
under the principles of free software. For examples: How do I provide a demo
if I always provide MIT licensed source code? Academics expect discounts, but
they are also the ones most likely to redistribute the code. Which is not a
wrong thing to do! But it affects the economics in a way I could never
resolve, compared to proprietary/"software hoarding" licensing models.

As an HN note, I contracted a couple people to help improve the popcount
implementations. HN user nkurz developed and tweaked the AVX2 implementation,
and proof-read the paper. Thanks nkurz!

------
greatgib
You have probably just not understood the concept of free software in the
first place...

I'm in the opinion that everyone is free to decide to do a proprietary closed
source software if they accept the consequences.

But just think about the fact that your software is built on top of other free
software and knowledge. Python for example. What would you have done without
it? If you had to pay thousands of dollars to get a visual studio + dev
licences, plus additional thousands of dollars of licenses of proprietary
libraries to use. You would not have been able to create something like that
without being in a big Corp.

Also, by being proprietary your are closing yourself a lot of opportunities
and contributors. Nowadays a lot of people will not touch your software if it
is not free. Even if some could get a 'no-fee' version.

The point being that open source is not the issue. The issue is that you have
not found the right model to finance it.

But as stated by you, you started first with the goal to generate money before
the goal to create something great. So chances were already good that it would
fail in the first place.

~~~
dalke
I think my paper shows my understanding of free software, but I'll elaborate.

I co-founded the Biopython project, an open source project for bioinformatics.
I was secretary of the Open Bioinformatics Foundation and helped organize the
Bioinformatics Open Source Conference for several years. I contribute to a
number of open source projects, including Python. You'll see my name in
Misc/ACKS , I was nominated to the PSF about 18 years ago, and code of mine is
in CPython.

So when you write "What would you have done without [Python]" ... the answer
is that I would have helped write it.

But I did not contribute to Python, or Biopython, or other projects with the
thought that the future would be in debt to me, or feel obligated to respond
in kind. Nor do I think most free software developers believe in that
obligation. For that's an obligation which can never be paid off. Worse, it
means my contribution to free software places the future in even more debt.

You wrote "by being proprietary". That is not quite correct. As I noted in the
section I linked to:

"All versions of chemfp are still available under the MIT license. What’s new
are proprietary licensing options for those who do not wish to pay the full
price, and pre-compiled binaries with a time-locked license key for evaluation
purposes."

I think the point you're making is that with a closed development model I am
closing myself to "a lot of opportunities and contributors." I touch on that
in the paragraph before the section I linked to:

"""While the closed model may inhibit collaborations with those willing to
contribute improvements, personal experience shows that it’s rare for most
FOSS projects to get more than occasional patches. The disadvantages of the
closed model may easily be outweighed by possible additional funding. For
example, funding from chemfp sales was used to pay two people from the small
community of popcount optimizers to improve chemfp performance"""

You write "Nowadays a lot of people will not touch your software if it is not
free."

This is very market dependent. All of my competitors are proprietary vendors,
with no option of free software licensing or even source code availability. I
certainly agree that it's very difficult to release (say) a new programming
language or text editor implementation which isn't free software.

You write: "The issue is that you have not found the right model to finance
it."

Yes, that is the point of the section. As I write in the abstract, "Several
product business models were tried, but none proved sustainable. Some of the
experiences are discussed, in order to contribute to the ongoing conversation
on the role of open source software in cheminformatics."

When you write "you started first with the goal to generate money before the
goal to create something great", do you mean my summary here? Or what I stated
in the paper?

My summary here was for what I thought HN readers would find most interesting.
The abstract starts with the overall chemfp goals, those being:

"""The chemfp project has had four main goals: (1) promote the FPS format as a
text-based exchange format for dense binary cheminformatics fingerprints, (2)
develop a high-performance implementation of the BitBound algorithm that could
be used as an effective baseline to benchmark new similarity search
implementations, (3) experiment with funding a pure open source software
project through commercial sales, and (4) publish the results and lessons
learned as a guide for future implementors."""

Making money was only third on the list, and much less important to me than #1
or #2. I make most of my money consulting and writing custom in-house software
for pharma R&D. But #1 and #2 are very specialist and not interesting to most
HNers.

