Becoming an Apache Lucene subproject

108 views
Skip to first unread message

Mauricio Scheffer

unread,
Mar 2, 2012, 5:16:22 PM3/2/12
to sol...@googlegroups.com

Hello SolrNet users and contributors,

A member of the Apache Software Foundation recently contacted me about SolrNet, suggesting to apply for becoming a sub-project of Lucene. 
In the interest of keeping things open and doing what's best for the project, I'd like to request everyone's opinion about this: should SolrNet try to become an Apache/Lucene project?

Cheers,

Mauricio

[mRg]

unread,
Mar 2, 2012, 5:34:11 PM3/2/12
to sol...@googlegroups.com
Very interesting Mauricio.

What would need to be done to gain entry?

What are the advantages of being part of Apache ? 

Would anything change with the project, would it still be on github etc?

Stephen
--
You received this message because you are subscribed to the Google Groups "SolrNet" group.
To post to this group, send email to sol...@googlegroups.com.
To unsubscribe from this group, send email to solrnet+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/solrnet?hl=en.

Mauricio Scheffer

unread,
Mar 2, 2012, 5:57:53 PM3/2/12
to sol...@googlegroups.com
Hi Stephen,

Answers are inline:

On Fri, Mar 2, 2012 at 7:34 PM, [mRg] <ema...@gmail.com> wrote:
Very interesting Mauricio.

What would need to be done to gain entry?

ASF projects start in the Incubator: http://incubator.apache.org/
The Incubator website has lots of information about the process and a guide to create a proposal, the initial project document.

 

What are the advantages of being part of Apache ? 

A very brief summary from the Apache website: http://apache.org/foundation/ :
The ASF provides organizational, legal and financial support for OSS projects.
See also "How does the ASF help its projects?" http://apache.org/foundation/faq.html#how
Also, the Apache brand.
 

Would anything change with the project, would it still be on github etc?

Lots of things would change. ASF uses its own mailing list, SVN, and JIRA or Bugzilla as issue trackers (see http://incubator.apache.org/guides/proposal.html#template-required-resources )
Also it would have to comply with the ASF development process and policies:
etc.
 
Cheers,
Mauricio

[mRg]

unread,
Mar 2, 2012, 8:58:07 PM3/2/12
to sol...@googlegroups.com
I can see why it would be advantageous to join the Apache program, I think it would cement SolrNet as the default project for working with Solr in .NET (you could argue it is already anyway!) and could enable SolrNet to be aware of and be more in-step with the main Solr project.

I think the biggest disadvantage i see is that moving to SVN seems a little bit of a step backward. This isnt for a Git vs SVN reason but mainly for the fact that (personal opinion) github is a great eco system for gathering contributions from new developers as its a much easier workflow to fork the project, tinker and submit work back. I can only speak from personal experience but i know my contributions have been aided by how quickly i can grab the latest version, branch for my feature and pass changes back. Once its in the ASF the process of managing individual patch submissions is a turn off for contributers and maintainers. Given the current level of development this argument may be considered moot as it wouldnt currently be a challenge but i worry it would add a lot of extra process to a small project. 

My 2 pence/cents worth anyway ;) I think I'm still on the fence about it. Interested to hear others thoughts.

Stephen 

Mikeg250

unread,
Mar 2, 2012, 11:12:32 PM3/2/12
to SolrNet
After browsing through a lot of vague descriptions/processes on the
ASF links, I would approach it with cautious optimism. Aside from T-
shirts and user conference, the main point in their FAQ was some scare
tactics about legal issues. Since you're in Argentina, I can't see
how it would be very cost effective for any US/Euro company to
actually bring a lawsuit against you. Plus, what damages could they
actually sue for? Your current Apache license plus an industry
acceptance of "open source" code should pretty much nullify most
liability claims against you for your code. I'm not a lawyer, but I
did raise $25 million from VC who promised the world and then didn't
deliver, so I'm just naturally skeptical I guess.

You've done a terrific job building and supporting a great piece of
code that MS and the .Net community would and should be proud of, so
give it a lot of thought before you sign away any of your rights or
control. Reach out and ask others if the ASF program has been worth
it. Solrnet is already pretty easy to find online, so what other
exposure/validation can they provide you? How much time/money have
they really spent helping to defend other from said "frivolous
lawsuits"? Do you need help with donations and tax issues that you
couldn't get from a good local CPA (accountant) in Argentina? Does
ASF have any lawyers or accountants that are actually familiar with
Argentina law? Ask these types of questions and you will come up with
the right direction.

From their FAQ: "In addition, the Foundation provides a framework for
limiting the legal exposure of individual volunteers while they work
on behalf of one of the ASF projects. In the past, these volunteers
have been personally vulnerable to lawsuits, whether legitimate or
frivolous, which impaired many activities that might have
significantly improved contributions to the projects and benefited our
users."



On Mar 2, 8:58 pm, "[mRg]" <emar...@gmail.com> wrote:
> I can see why it would be advantageous to join the Apache program, I think it would cement SolrNet as the default project for working with Solr in .NET (you could argue it is already anyway!) and could enable SolrNet to be aware of and be more in-step with the main Solr project.
>
> I think the biggest disadvantage i see is that moving to SVN seems a little bit of a step backward. This isnt for a Git vs SVN reason but mainly for the fact that (personal opinion) github is a great eco system for gathering contributions from new developers as its a much easier workflow to fork the project, tinker and submit work back. I can only speak from personal experience but i know my contributions have been aided by how quickly i can grab the latest version, branch for my feature and pass changes back. Once its in the ASF the process of managing individual patch submissions is a turn off for contributers and maintainers. Given the current level of development this argument may be considered moot as it wouldnt currently be a challenge but i worry it would add a lot of extra process to a small project.
>
> My 2 pence/cents worth anyway ;) I think I'm still on the fence about it. Interested to hear others thoughts.
>
> Stephen
>
> On 2 Mar 2012, at 22:57, Mauricio Scheffer <mauricioschef...@gmail.com> wrote:
>
> > Hi Stephen,
>
> > Answers are inline:
>
> > On Fri, Mar 2, 2012 at 7:34 PM, [mRg] <emar...@gmail.com> wrote:
> > Very interesting Mauricio.
>
> > What would need to be done to gain entry?
>
> > ASF projects start in the Incubator:http://incubator.apache.org/
> > The Incubator website has lots of information about the process and a guide to create a proposal, the initial project document.
>
> > What are the advantages of being part of Apache ?
>
> > A very brief summary from the Apache website:http://apache.org/foundation/:
> > The ASF provides organizational, legal and financial support for OSS projects.
> > See also "How does the ASF help its projects?"http://apache.org/foundation/faq.html#how
> > Also, the Apache brand.
>
> > Would anything change with the project, would it still be on github etc?
>
> > Lots of things would change. ASF uses its own mailing list, SVN, and JIRA or Bugzilla as issue trackers (seehttp://incubator.apache.org/guides/proposal.html#template-required-re...)
> > Also it would have to comply with the ASF development process and policies:
> >http://incubator.apache.org/incubation/Incubation_Policy.html
> >http://incubator.apache.org/incubation/Roles_and_Responsibilities.html
> >http://incubator.apache.org/incubation/Process_Description.html
> > etc.
>
> > Cheers,
> > Mauricio
>
> > Stephen
>
> > On 2 Mar 2012, at 22:16, Mauricio Scheffer <mauricioschef...@gmail.com> wrote:
>
> >> Hello SolrNet users and contributors,
>
> >> A member of the Apache Software Foundation recently contacted me about SolrNet, suggesting to apply for becoming a sub-project of Lucene.
> >> In the interest of keeping things open and doing what's best for the project, I'd like to request everyone's opinion about this: should SolrNet try to become an Apache/Lucene project?
>
> >> Cheers,
>
> >> Mauricio
>
> >> --
> >> You received this message because you are subscribed to the Google Groups "SolrNet" group.
> >> To post to this group, send email to sol...@googlegroups.com.
> >> To unsubscribe from this group, send email to solrnet+u...@googlegroups.com.
> >> For more options, visit this group athttp://groups.google.com/group/solrnet?hl=en.
>
> > --
> > You received this message because you are subscribed to the Google Groups "SolrNet" group.
> > To post to this group, send email to sol...@googlegroups.com.
> > To unsubscribe from this group, send email to solrnet+u...@googlegroups.com.
> > For more options, visit this group athttp://groups.google.com/group/solrnet?hl=en.

Jan Høydahl

unread,
Mar 4, 2012, 7:25:16 PM3/4/12
to sol...@googlegroups.com
Hi,

I initiated this discussion by email with Mauricio. For the record, I'm not an ASF member but a Lucene/Solr core committer, and also a happy user of SolrNET through several commercial customer projects. SolrNET is the only current .NET API for Solr and we'd all like to see it thrive in the future. To ensure it does, the developer community needs to be strengthened (in my opinion at least), so that the project does not fall over if the lead committer accounting for 95% of the commits decides to do something else with his time. That CAN happen, just look at SolrSharp and hundreds of other open source projects with tiny communities out there.

That's why I encourage you to focus on building a true community. While possible on your own I strongly believe that joining the ASF would be a big boost, for many reasons also touched upon in this discussion so far. It is true that you'd need to go through incubation first, like Lucene.NET currently is; this is a process where you'll be mentored in building a healthy community of committers, which should not be too hard since you would on-board your current committers right away. Goal would be to graduate into a full Lucene sub-project.

Mikeg250, you write


> "You've done a terrific job building and supporting a great piece of code that MS and the .Net community would and should be proud of, so give it a lot of thought before you sign away any of your rights or control."

Unfortunately clinging to "rights" and "control" is also a common reason for projects dying. There is one person controlling everything, unwilling to entrust the code in the hands of a community. One of the key reasons that the Apache projects have succeeded as they have, is the "ASF way" where the community decides. There are established rules for voting and for managing a project in all ways.

When it comes to infrastructure, you'd need to use SVN. If you prefer GIT, there is a GIT mirror too: http://wiki.apache.org/general/GitAtApache as well as a sync to GitHub. The ASF has also begun a pilot with native GIT for projects since last fall, http://wiki.apache.org/couchdb/Git_At_Apache_Guide but we don't know when this could be available for any project.

--
Jan Høydahl, search solution architect
Cominvent AS - www.cominvent.com
Solr Training - www.solrtraining.com

Martijn Laarman

unread,
Mar 5, 2012, 3:13:11 PM3/5/12
to sol...@googlegroups.com
The apache branding process is a very powerful one and having an ASF seal of approval carries a lot of weight. Still i'm also a bit on the fence wether solrnet should become an incubated project or not.

Solrsharp was also once offered to the ASF:
https://issues.apache.org/jira/browse/SOLR-205

And not much has come of it. Lucene.NET has also had a very rocky history and its forks are too numerous to enumerate. I actually view the apache branding and mentorship regarding OSS as a an inviable resource but when it comes to pushing bits around its a very nontransparent and cumbersome process. There's a high barrier to follow all the jira issues, creating and sending patches.

If the ASF branding is important i'd say go for it but i have high doubts regarding any community claims seeing how .NET projects have worked out in the past.

With 23 comitters, numerous forks and a high level of transparency right now there might even be a community to lose instead of gaining one too.


On Friday, March 2, 2012 11:16:22 PM UTC+1, Mauricio Scheffer wrote:
> Hello SolrNet users and contributors,</p>
>
> A member of the Apache Software Foundation recently contacted me about SolrNet, suggesting to apply for becoming a sub-project of Lucene. 
>
> In the interest of keeping things open and doing what&#39;s best for the project, I&#39;d like to request everyone&#39;s opinion about this: should SolrNet try to become an Apache/Lucene project?
> </p>
>
> Cheers,</p>
>
> Mauricio
> </p>



On Friday, March 2, 2012 11:16:22 PM UTC+1, Mauricio Scheffer wrote:
> Hello SolrNet users and contributors,</p>
>
> A member of the Apache Software Foundation recently contacted me about SolrNet, suggesting to apply for becoming a sub-project of Lucene. 
>
> In the interest of keeping things open and doing what&#39;s best for the project, I&#39;d like to request everyone&#39;s opinion about this: should SolrNet try to become an Apache/Lucene project?
> </p>
>
> Cheers,</p>
>
> Mauricio
> </p>

Mauricio Scheffer

unread,
Mar 5, 2012, 3:23:12 PM3/5/12
to sol...@googlegroups.com
Hi everyone, thanks for contributing to the discussion.

My views on OSS development differ quite a bit from Jan's and the Apache Software Foundation in general.

I prefer that a project attracts users because it's useful, and contributors because they need to add some feature or fix a bug (scratch their own itch!), or simply for fun; not because it has a certain name behind it. The status of "de-facto standard" is one that must be earned, not imposed.

The community around an open source project should grow organically. This also means *dying* organically: if a project decreases in activity, users and contributors, it may mean it's becoming irrelevant, or that a better alternative has come up. If this happens to SolrNet I won't want to keep it alive just for the sake of it. I want it to die a natural death.

If SolrSharp died it's either because people started preferring SolrNet or because nobody cared enough about it. I said before that someone should fork SolrSharp and continue working on it ( http://groups.google.com/group/solrnet/msg/91cbf461bacc7378 ) and some time ago I found that someone did: http://solrcontrib.codeplex.com/
There's also EasyNet.Solr, another .NET Solr client, which looks pretty good: http://easynet.codeplex.com/wikipage?title=EasyNet%20Solr . I wrote a short review a couple of months ago: https://plus.google.com/106809220438980646520/posts/H6f69uvCcJN
So it's not true that SolrNet is the only .NET client for Solr. And I'm really glad it's not.

It could also happen that a project is simply "good enough" for most users, and in that case, there's no need to bloat it with artificial activity, adding features that probably nobody will use.
A committee trying to impose a minimum number of committers or a minimum acceptable level of activity (as infamously happened to Lucene.NET some time ago ( http://mail-archives.apache.org/mod_mbox/lucene-lucene-net-user/201010.mbox/%3C083FF0A3-CE11-4EE...@apache.org%3E ) is, as explained above, fundamentally at odds with the organic evolution of a project. Moreover, open source in .NET just doesn't have the same level of activity as in Java or other platforms. At least not yet. 
The development process should adapt to the project. Big projects involving lots of people may need a more formal process. Small projects, like SolrNet, don't need it. But Apache seems to want every project to follow the same process.
So in these regards, the ASF would be harmful for SolrNet.

About "rights" and "control": SolrNet lives on github, where in principle, any fork is as valid as my repository. It's only by social convention that people follow my repository as the authoritative source. I am the original author after all. But if I got hit by a bus, you could just go to the network graph: https://github.com/mausch/SolrNet/network , see the most active fork, and work off it.
Over the last years I encouraged people to fork the source code and work on it, providing guidance along the way. So by now, there are many people out there who are comfortable with the codebase and more than capable to be maintainers (it's a small, simple project really).
I don't and I can't control everything in SolrNet. As Linus explained, git keeps me honest ( http://lwn.net/Articles/246381/ ), the community can trivially decide, without any technological limitation, that a certain fork is the authoritative one. SolrSharp didn't switch to a DVCS so it made it more difficult to be forked, but even so, it was forked. A git *mirror* doesn't really work the same. About CouchDB, it was only after quite a struggle that the ASF agreed to set up this git experiment. See http://www.mikealrogers.com/posts/apache-considered-harmful.html about this (and I also agree with the author's opinions). DVCS has been vastly superior to centralized VCS for several years now, yet the ASF is only now starting an experiment about it. So ASF policies impose *more* limitations about "rights" and "control" than SolrNet currently has.

In a nutshell: The Apache Software Foundation is IMHO, at best, obsolete and useless; and at worst, harmful, at least for SolrNet.

Still, if SolrNet users and contributors agree that moving to Apache is in the best interest for the project, I won't oppose and I'll respect the decision (that's why I made this discussion public and tried to remain neutral until now). I probably won't help with the move either, as it doesn't scratch any of my itches and I'm clearly against it. But it seems that the SolrNet community isn't very excited about this either.

Cheers,
Mauricio


--
You received this message because you are subscribed to the Google Groups "SolrNet" group.
To view this discussion on the web visit https://groups.google.com/d/msg/solrnet/-/RLBKAlJ6qC8J.

Mikeg250

unread,
Mar 20, 2012, 10:53:59 PM3/20/12
to SolrNet
Hi Mauricio,

I was just rereading the Forward by Doug Cutting in the "Lucene in
Action" book and thought maybe it would be worth your time to contact
Doug to get his take on going "the Apache" way. Seems like he had a
good experience with the process, although that was back in 2001.
Just a thought.

- mike

On Mar 5, 4:23 pm, Mauricio Scheffer <mauricioschef...@gmail.com>
wrote:
> Hi everyone, thanks for contributing to the discussion.
>
> My views on OSS development differ quite a bit from Jan's and the Apache
> Software Foundation in general.
>
> I prefer that a project attracts users because it's useful, and
> contributors because they need to add some feature or fix a bug (scratch
> their own itch!), or simply for fun; not because it has a certain name
> behind it. The status of "de-facto standard" is one that must be earned,
> not imposed.
>
> The community around an open source project should grow organically. This
> also means *dying* organically: if a project decreases in activity, users
> and contributors, it may mean it's becoming irrelevant, or that a better
> alternative has come up. If this happens to SolrNet I won't want to keep it
> alive just for the sake of it. I want it to die a natural death.
>
> If SolrSharp died it's either because people started preferring SolrNet or
> because nobody cared enough about it. I said before that someone should
> fork SolrSharp and continue working on it (http://groups.google.com/group/solrnet/msg/91cbf461bacc7378) and some time
> ago I found that someone did:http://solrcontrib.codeplex.com/
> There's also EasyNet.Solr, another .NET Solr client, which looks pretty
> good:http://easynet.codeplex.com/wikipage?title=EasyNet%20Solr. I wrote a
> short review a couple of months ago:https://plus.google.com/106809220438980646520/posts/H6f69uvCcJN
> So it's not true that SolrNet is the only .NET client for Solr. And I'm
> really glad it's not.
>
> It could also happen that a project is simply "good enough" for most users,
> and in that case, there's no need to bloat it with artificial activity,
> adding features that probably nobody will use.
> A committee trying to impose a minimum number of committers or a minimum
> acceptable level of activity (as infamously happened to Lucene.NET some
> time ago (
> http://mail-archives.apache.org/mod_mbox/lucene-lucene-net-user/201010.mbox/%3C083FF0A3-CE11-4EE2-8EBA-1D62CE95C...@apache.org%3E)
> is, as explained above, fundamentally at odds with the organic
> evolution
> of a project. Moreover, open source in .NET just doesn't have the same
> level of activity as in Java or other platforms. At least not yet.
> The development process should adapt to the project. Big projects involving
> lots of people may need a more formal process. Small projects, like
> SolrNet, don't need it. But Apache seems to want every project to follow
> the same process.
> So in these regards, the ASF would be harmful for SolrNet.
>
> About "rights" and "control": SolrNet lives on github, where in principle,
> any fork is as valid as my repository. It's only by social convention that
> people follow my repository as the authoritative source. I am the original
> author after all. But if I got hit by a bus, you could just go to the
> network graph:https://github.com/mausch/SolrNet/network, see the most
> active fork, and work off it.
> Over the last years I encouraged people to fork the source code and work on
> it, providing guidance along the way. So by now, there are many people out
> there who are comfortable with the codebase and more than capable to be
> maintainers (it's a small, simple project really).
> I don't and I can't control everything in SolrNet. As Linus explained, git
> keeps me honest (http://lwn.net/Articles/246381/), the community can
> trivially decide, without any technological limitation, that a certain fork
> is the authoritative one. SolrSharp didn't switch to a DVCS so it made it
> more difficult to be forked, but even so, it was forked. A git *mirror*
> doesn't really work the same. About CouchDB, it was only after quite a
> struggle that the ASF agreed to set up this git experiment. Seehttp://www.mikealrogers.com/posts/apache-considered-harmful.htmlabout this
Reply all
Reply to author
Forward
0 new messages