Dear all,

This is a somewhat unusual message for this list and I wanted people to
know that Andrew and I had talked about it (and his proposal) first and
that I completely agree that it's an appropriate message for the
rdkit-discuss mailing list. We don't agree about everything here, but
Andrew is exploring options for how to support himself while working with,
and producing open-source software, and I have a ton of respect for that
and think that it's something that's likely to be a long-term good for the
RDKit community.

So, if you have an objection to this kind of thing showing up on the list:
please reply to Andrew and I privately. I don't think a public email
"debate" about the topic is likely to be fruitful. If you want to talk
about it in person and are planning on being at the UGM: Andrew and I will
both be there and we can have a long fun argument in the real world.

Best,
-greg




On Wed, Jul 31, 2019 at 7:02 PM Andrew Dalke <da...@dalkescientific.com>
wrote:

> Hello RDKit users,
>
>  As some of you know, I have been exploring ways to fund commercial open
> source software projects in cheminformatics. I plan to try a crowdsourcing
> model to help develop and support the mmpdb matched molecular pair system.
> In short, I'm looking for several people or organizations interested in
> funding specific new mmpdb features.
>
> At this point I am looking to see if there is enough interest to be worth
> my time and effort. If you are potentially interested, or have feedback,
> please respond in private email.
>
> I am starting with a small trial.
>
> One company contacted me asking if I could add Postgres support and a way
> to export the property rules. I can deliver that to them. However, it
> typically takes 2-3 times as much effort to develop software for general
> use than software for a single customer. (For example, the people who asked
> me to develop a feature don't need much documentation about what the
> feature does.) It doesn't seem right to ask them to pay twice as much just
> so I can add the result back to mmpdb.
>
> In addition, others may be interested in those features, and be willing to
> pay for them. If I contribute the new features back to mmpdb immediately,
> then they have no reason to pay me since the features are there. While if I
> wait, I might get more consulting work for redoing the same work.
>
> Even better, if several companies pay me for a feature, then the surplus
> can help fund general mmpdb maintenance beyond those specific features.
>
> Crowdsourcing
> =============
>
> I am planning to run the trial as a Kickstarter-like system. For those who
> are unfamiliar with Kickstarter, it's a crowdfunding platform. A project
> creator comes up with a funding goal, and a deadline. If enough people
> commit funding, the project starts. If there isn't enough funding, then no
> one does or pays anything.
>
> For example, if each of three companies commits to paying EUR 5 000, then
> the total commitment is EUR 15 000. That exceeds the basic funding goal of
> EUR 14 000, which means I will develop a new version of mmpdb with the
> features listed below, and deliver the new version to those backers.
>
> Like most Kickstarter projects, I also have a set of concrete stretch
> goals. I honestly don't think I'll get EUR 50 000 of funding for this
> trial, but if I do, then I'll be able to make many improvements to the
> mmpdb project, and make it all available through the main mmpdb repository
> as soon as it's ready.
>
> Goals and Funding levels
> ========================
>
> Here are the provisional goals and corresponding funding levels. At this
> point I am looking for feedback before committing to them.
>
>   o  Basic level - EUR 14 000
>
> This pays for my time to add support for:
>
>  - Postgres database support
>  - rule and property rule export
>  - provide environment fingerprints as SMILES fragments, instead of or in
> addition to SHA256 hashes
>
> Everyone who joins the crowdsourcing consortium would receive the new
> features, under the existing 3-clause BSD license. However, in order to
> incentivize people to join, this new code will not be sent upstream to the
> main mmpdb repository hosted by the RDKit project. (See the Q&A below.)
>
> Feedback question: are there any other minor modifications that several
> people would like, and are willing to pay for?
>
>   o  Delayed upstream level - EUR 20 000
>
> Within 6 months of completion, I will contribute the new features back
> upstream to the main mmpdb repository for anyone to download and use.
>
> The delay is meant to encourage people to fund the project now, rather
> than wait until it is available for free.
>
> Feedback questions: is this a reasonable enticement? Is the delay too
> short or too long? Perhaps I should consider something else? The main
> problem with open source funding has always been in trying to get people to
> pay for things which are already available for free.
>
>   o  Documentation level - EUR 25 000
>
> At this level of support, I 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.
>
>   o  mmpdb/GitHub support - EUR 29 000
>
> At this level of support, I will be able to handle support questions on
> the mmpdb project page on GitHub for a year.
>
>   o  Instant upstream level - EUR 37 000
>
> At this level of support, the code is distributed upstream at once, with
> no further delay.
>
>   o  Test suite level - EUR 50 000
>
> At this level of support, I develop a reasonable automated test suite for
> the project. Currently there are only a few tests to assure that the basic
> functionality works. This must be fleshed out in order to support long-term
> development. Good test suites often find new bugs, which I'll also fix.
>
>
> How to join
> ===========
>
> To start, email me to say that you are interested, and how much you are
> willing to fund.
>
> Kickstarter allows people to set their own donation levels, which is
> likely difficult to explain to the financial department. I can understand,
> because I know I'm weirded out by the restaurants which allow you to pay
> what you think the food was worth!
>
> Instead, here are the funding levels:
>
>   Academic/Individual - EUR 1 000
>   Research group - EUR 3 000
>   Organization - EUR 5 000
>
> All crowdsourcing consortium members will receive the mmpdb source code
> under the existing 3-clause BSD license.
>
> Those wishing to pay an additional EUR 3 000 will receive 1 year of
> support. That EUR 3 000 will added to the sum used to determine if a
> funding goal is met.
>
> The funding status will be made public. Funders can be left anonymous or
> agree to have their names used.
>
> I generally use purchase orders, paid to my company's Swedish bank
> account. I can accept credit card payments through PayPal, though will
> charge 10% more because of the overhead.
>
> If enough people commit to the project, I will send out a formal quote to
> the backers, and start the purchase order process.
>
>
> Timeline
> ========
>
> As a rough timeline:
>
>  Today - Pre-announcement on the RDKit list for planning purposes
>  1 September - Announcement on the RDKit list
>  28 September - Lightning talk at the RDKit UGM
>  1 October - Second announcement on the RDKit list
>  1 November - Call off the trial if there has not been enough interest
>  1 December - End of fundraising / see which funding goals are met
>
> Note: I define "interest" as people sending me an email saying they/their
> company wants to join, at a given funding level. It does not mean that I
> have a purchase order from everyone. It should be seen as a verbal
> agreement, not a written or financial commitment.
>
> Project work will likely start shortly after the interest level meets the
> basic level goal.
>
> If this trial proves very successful (over EUR 30 000 or so), then one
> likely future crowdsourcing project will be to develop a web interface for
> mmpdb.
>
>
> Questions & Answers
> ===================
>
> 1) Is it really "open source development" if it isn't available to
> everyone for free?
>
> Most well-known open source software is also available at no cost.
> However, open source, and free software, describe the rights and freedoms
> available to the person who receive the software. They do not require that
> the software be made available for no cost.
>
> Think if you modify a GPL project like Open Babel, and distribute the
> changes to a friend. There's nothing about the GPL, or the principles of
> open source, which require you to also distribute that code to anyone else.
>
> I am influenced by Stallman's essay at
> https://www.gnu.org/philosophy/selling.html . He states "if you are
> redistributing copies of free software, you might as well charge a
> substantial fee and make some money. Redistributing free software is a good
> and legitimate activity; if you do it, you might as well make a profit from
> it. ... Distributing free software is an opportunity to raise funds for
> development. Don't waste it!"
>
>
> 2) What happens to the code if the 'Delayed upstream level' goal of EUR 20
> 000 isn't reached?
>
> That's a tough one. At the very least, any of the backers who receive a
> copy of the code could contribute the code to the main mmpdb repository in
> the RDKit project.
>
> If there is little interest, I will likely release it after 9 months or a
> year, and also reduce my involvement in developing open source
> cheminformatics software, as I cannot continue to do things for free or low
> wages.
>
>
> 3) What about Oracle support, or feature X?
>
> Then let me know. Part of my goal now is to figure out which to include as
> the features to implement at the basic level.
>
> If there's more interest, I might have two feature levels.
>
> In any case, I am also available for consulting work.
>
>
> 3) Where should I send questions and suggestions?
>
> Right now, private email to me is the best. I'll set up a mailing list and
> project web page if I get preliminary feedback that it's worth my time to
> go further with this trial.
>
> Thanks for reading to the end!
>
>                                 Andrew Dalke
>                                 da...@dalkescientific.com
>
> _______________________________________________
> Rdkit-discuss mailing list
> Rdkit-discuss@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rdkit-discuss
>
_______________________________________________
Rdkit-discuss mailing list
Rdkit-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rdkit-discuss

Reply via email to