The overall goal is to test if a crowdfunded consortium is a viable way to raise money for mmpdb development. If at least EUR 40 000 is raised by 1 February 2020 then there will definitely be future crowdfunding efforts, perhaps to add a web interface, or add support for categorial statistics. Email me about new features you may be willing to fund.
I don't expect companies to just donate money to the mmpdb project. Companies (or at least their accountants) want something more tangible. I expect companies will pay for features. If multiple companies pay for those features, then the extra revenue can fund the other parts of mmpdb development which are hard to fund directly.If more organizations agree to fund the project, then more improvements will be made. These improvements will be distributed to funders at no additional cost to the funder.
No matter what happens, if you join the crowdfunding consortium then you will receive a new version of mmpdb with the following features:
- Postgres support, as an alternative to the existing SQLite support;
- The new '
mmpdb proprulecat' command to export the property rules in the database (transformation + statistics) in CSV form;
- The new proprulecat command will also export a fragment SMILES for the given environment, instead of using the hashed environment fingerprint.
In order to incentivize people to join, this new code will not be made public, and will not be sent upstream to the main mmpdb repository hosted by the RDKit project until receiving at least EUR 23 000 in funding.
My Swedish company will send you an invoice for the delivery of a new version of mmpdb with these features. These improvements will be distributed to you under the existing mmpdb open source license terms (a mix of 3-clause BSD and MIT licenses).
Environment fragment SMILES - EUR 16 000
The local chemical environment may affect a transform. Mmpdb currently stores the circular environments around each transform as a SHA256 hash of the RDKit Morgan fingerprints for each radii, which is used to check for identical environments. (These are not similarity fingerprints.)
An environment hash like 59SlQURkWt98BOD1VlKTGRkiqFDbG6JVkeTJ3ex3bOA
makes little sense to a chemist, who often wants to know the actual
chemical environment. The environment's fragment SMILES can be
computed in a post-processing step, like the above
proprulecat' command, but post-processing limits the sorts
of data exploration which can be done directly from the database.
With at least EUR 16 000 of funding, I will deliver the above new features (Postgres and proprulecat), plus add support to store the fragment SMILES for the environment directly in the database. The existing commands which output the environment hash will be changed to output the fragment SMILES.
Public release after 9 months - EUR 23 000
The idea behind this crowdfunding effort is that people will pay for new features. If the features are released to the public as soon as they are ready, then people won't (and often can't) pay for them.
If at least EUR 23 000 is raised, then I will contribute the new code changes for the above features to the main mmpdb repository within nine months of reaching this funding goal, or no later than 1 October 2020.
The delay is to provide incentive for people to fund more mmpdb development, while still promising to release the code for free to the rest of the world.
Documentation - EUR 29 000
If at least EUR 29 000 is raised, I will rewrite and update the documentation from the current README into a better form that can be hosted on "Read the Docs". Of this, USD 400 will go to sponsoring Read the Docs.
mmpdb/GitHub user support - EUR 34 000
If at least EUR 34 000 is raised, I will be active in handling support questions on the mmpdb project page on GitHub for a year.This means that your purchase of the new mmpdb features will also fund me to help others who have questions with mmpdb.
Test suite development - EUR 40 000
I believe many organizations are interested in using mmpdb as part of a wider in-house deployment. As is often the case for research projects, mmpdb has a minimal test suite. It must be fleshed out in order to give a solid base for long-term development and to improve software stability.
If EUR 40 000 is raised, I will develop a reasonable automated test suite for mmpdb. Good test suites often find new bugs, which I will fix.
EUR 40 000 is also the funding level which guarantees that there will be future mmpdb crowdfunding efforts.
Immediate public release - EUR 50 000
If EUR 50 000 is raised then I will contribute the code to the main mmpdb repository "immediately", that is, within a few days instead of waiting nine months.
I'll continue to accept funding beyond this point, though without specific mmpdb development goals in mind.