[OpenAFS-announce] OpenAFS Foundation Update

Russ Allbery openafs-info@openafs.org
Tue, 18 Aug 2009 14:15:46 -0700


The Mission
===========

Since the formation of the OpenAFS community in 2000, the OpenAFS Council
of Elders has been responsible for the overall direction of the OpenAFS
project.  Its mission is to:

1. cultivate an open source culture and community and an ecosystem of
   complementary tools, libraries, extensions, applications, and
   implementations collectively known as "OpenAFS";

2. promote the adoption of "OpenAFS" and associated technologies to
   members of the general public;

3. educate members of the general public in the application of "OpenAFS"
   and related technologies;

4. appoint, remove and provide management oversight and direction to the
   OpenAFS technical leaders known as "OpenAFS Gatekeepers";

5. raise and manage financial and other resources in support of the rest
   of its mission;

6. protect the intellectual property consisting of the interfaces, tools,
   libraries, implementations, and trademarks collectively known as
   "OpenAFS".

Satisfying this mission has proven to be quite challenging due to the lack
of a legal entity that can own property and enter into legally binding
contracts.  In 2008, it was therefore decided that the OpenAFS Council of
Elders should incorporate as not-for-profit Foundation.


Where We Are Now
================

After significant discussion of the creation of a Foundation within the
community from May until the end of 2008, there has been little to no
progress.  This letter is an update on the current status and future
plans.

There are three reasons for the failure to incorporate the Foundation:

1. The world financial crisis and its effects on potential funding 
   sources;

2. The use of the AFS trademark remains unresolved.  IBM so far has
   not been willing to release the trademark to the community or state
   that it may be used in other implementations of the AFS protocol;

3. Disagreement within the community about the best organizational
   structure for a foundation.

The second and third issues can be resolved, or at least can be addressed,
but the first issue is new and significant.


Financial Status and Foundation Postponement
============================================

The OpenAFS project has available what we believe are sufficient funds in
the OpenAFS Elders Fund (held by Carnegie Mellon University) to form a
non-profit foundation and run it for a limited period of time.  However,
the ongoing funding to support a foundation has largely dried up due to
the world financial crisis.  The companies, institutions, and
organizations that support AFS are going through budget cuts and layoffs
and have had to put many plans on hold, including rescinding verbal
committments of funding for OpenAFS.

The money entrusted to the project in the Elders Fund is held for two
primary purposes: to form the seed funding for eventual incorporation of a
non-profit foundation, and to guarantee payment of expenses for the annual
AFS and Kerberos Best Practices Workshop.  While we could launch a
foundation now, the OpenAFS Elders are concerned that we would not be able
to sustain the foundation until it became self-supporting.  Furthermore,
exhausting the current funds could endanger future AFS and Kerberos Best
Practices Workshops.

The OpenAFS Elders believe that the money the AFS community has entrusted
to the project should be used to create a sustainable ongoing non-profit
foundation to support and coordinate development of OpenAFS and related
software.  We want to be certain we can use that money effectively, which
means being fairly confident in our ongoing funding sources.  It would be
a tragedy to start a foundation now, burn through our resources, and have
to shut down before the economy has sufficiently recovered for ongoing
funding to appear.

The OpenAFS Elders have therefore voted unanimously to delay the formation
of a Foundation until such time as we have better guarantees of ongoing
funding.


Project Funds Management
========================

This leaves open the problem of how to manage the OpenAFS Elders Fund
until we can launch a foundation.

Carnegie Mellon University has graciously been willing to hold the project
funds since the 2005 AFS & Kerberos Best Practices Workshop.  Usenix has
been willing to accept tax-deductible contributions for OpenAFS and
transfer them to the CMU account.  However, this arrangement has several
problems:

1. It is difficult for CMU to maintain separation between OpenAFS project
   funds and internal CMU funds since their accounting procedures were not
   designed to handle this.  It is also difficult to pay bills from that
   account since project expenses are not university expenses.

2. Using the CMU credit card payment system for AFS and Kerberos Workshop
   registrations and project contributions has proven challenging from a
   reporting and receipt generation perspective.

3. CMU cannot sign contracts on behalf of the project to commit our funds.

4. Our arrangement with CMU is informal and based on the good will and
   assistance of Tom Dopirak and others at CMU.  Their work is greatly
   appreciated, but handling financial accounting via informal agreements
   is uncomfortable for all involved and quite fragile.

For the best and most efficient handling of project funds, we need an
entity that can:

 * accept and manage funds on behalf of the project
 * sign contracts on behalf of the project
 * hold project property such as trademarks, copyrights and equipment

The OpenAFS Elders have therefore voted unanimously to approach the
Software Freedom Conservancy and request membership.  The SFC is
affiliated with the Software Freedom Law Center, with which we've built a
working relationship while investigating how to form a non-profit.  They
provide this sort of financial service to free and open source software
projects and can accept tax-deductible contributions.

The SFC will need to evaluate the project to be sure that we're a fit.
Among the possible concerns is the AFS trademark, since the SFC Board have
a duty to protect their other projects against the risk of a lawsuit
against us.  However, since IBM also has a close relationship with the
Software Freedom Law Center and the Software Freedom Conservancy, we are
hopeful that this will also help us resolve the AFS trademark issues.

If accepted by the SFC, we will still need to review their exact terms and
be sure they fit our needs.  However, the Elders are hopeful that this
will be a good interim step for the project on the way to forming a
foundation.  More details will be forthcoming after we've discussed this
possibility further with the SFC.


Project Governance
==================

We are putting changes to the project governance structure on hold along
with formation of the foundation.  For the time being, the current
governance structure for the OpenAFS project will remain in place.
However, we fully intend to move forward with a foundation and with
changes to project governance once the economy is stronger.

The Elders have identified three rough groups with somewhat different
interests in governance of the OpenAFS project.  There is overlap and some
community members fall into multiple categories simultaneously.

* End users and AFS administrators.  They want the software to continue to
  improve and remains reliable.  They will be happy if we can finally
  achieve the goals we commit ourselves to.  We also expect end users to
  be our most significant ongoing source of funding, particularly for
  large projects that require significant effort but benefit the AFS
  community as a whole.

* Developers who are contributing code.  The project can best serve
  developers by improving the speed of review and integration of code and
  providing better direction and feedback for major changes.

* AFS support organizations.  They will benefit from growth in the AFS
  user base and hence the potential customer base.

Discussion on the mailing lists about project governance has been
primarily within the last two groups.  Many of the end users will not
participate in public discussion or argue persistently for their
perspective.  They will often at most comment privately and then vote with
their money and their installations instead.

At present, the OpenAFS Elders are the governance body that has gained the
trust of the AFS end users and administrators.  The Elders believe they
have the responsibility to represent the interests of the end users.  They
are our most critical source of funding and the least represented group in
public discussions.  The Elders have therefore made the following
decisions about governance for an eventual foundation:

* The Elders will appoint the initial Board of Directors for the
  Foundation rather than leaving it to the community to start from scratch
  and select a fresh board.  This will provide continuity of governance
  from the structure that the end users already trust.

* We will not be able to develop a governance structure via purely public
  discussion or public voting.  Our most important constituency simply
  will not participate sufficiently in either.  Instead, the Elders will
  take responsibility for listening to both the public discussion and the
  private feedback from end user organizations and developing a governance
  structure that satisfies the requirements of all parties as best as we
  can.  We will do this by producing a set of documents that describe the
  working processes of the foundation and are acceptable to our legal
  advisors and publishing them for public comment.  The Elders will then
  not only listen to all feedback but actively solicit it from
  constituencies that may not otherwise be heard or be willing to
  participate in public discussion.  All feedback, both public and
  private, will then be used as input to a revised set of documents, which
  the Elders will use to form the foundation.

* The Foundation Board of Directors will not be democratically elected.
  The Foundation will have a Technical Advisory Council that consists of a
  balanced number of representatives from three classes (large
  organizations making significant contributions, small and medium
  organizations contributing less money, and individuals, who we expect
  will be mostly developers).  The OpenAFS gatekeepers will be staff
  members of the Foundation as discussed in the spring of 2008.

Again, we will not be moving forward with these plans at the current time.
This is the plan for when the economic situation becomes more favorable to
forming a Foundation.

As discussed in the AFS and Kerberos Workshop in 2008, the Foundation will
not be involved in the standardization of the AFS protocols.  Protocol
standardization will be independent of this governance structure, and
plans for creating the protocol standardization governance structure can
and should proceed independent of the formation of a foundation.


Additional Next Steps
=====================

While we pursue the possibility of joining the Software Freedom
Conservancy, we have implemented or are implementing the following changes
and process improvements to improve the transparency and responsiveness of
the project:

1. Regular public release planning meetings via Jabber.  These have
   already begun and were successful for the 1.4.10 and 1.4.11 releases.

2. The OpenAFS version control repository has been converted from CVS to
   Git which provides developers and support organizations better tools
   with which to manage on-going development and derivative works.

3. Google's Gerrit web based code reviewing tool eases the submission of
   new patches to OpenAFS and permits anyone in the community to comment
   on any patch that has been submitted for review.

4. Improve the process for communicating the Gatekeeper reports and Elders
   meeting minutes to the community.  We are experimenting now with a new
   way of collecting meeting minutes during the Elders meeting.

We will also be looking at ways of implementing some form of the Technical
Advisory Board now in advance of forming a foundation.  The goal of these
changes is to make the OpenAFS development process more open and easier to
participate in.


Conclusion
==========

The OpenAFS Elders have voted unanimously to put on hold the creation of a
Foundation until the financial situation is better and we have more
certainty about ongoing sources of funding.  The OpenAFS Elders have also
voted unanimously to approach the Software Freedom Conservancy about
taking over management of the OpenAFS Elders Fund, which is used for the
yearly AFS and Kerberos Best Practices Workshop and will form the seed
money for a future Foundation.

This is a disappointing decision to have to make.  It puts on hold many of
our plans for expanding the AFS community, improving our project
governance, and creating a structure that can take on larger projects.
However, we believe it's the best decision we can make as stewards of the
community's financial contributions in the current economic climate.  In
the meantime, we hope a partnership with the Software Freedom Conservancy
will be a useful interim step towards a full independent Foundation.

Once we proceed with a Foundation, the OpenAFS Elders will pick the
initial Board of Directors.  The Elders will draft an initial set of
Foundation process documents, with legal advice, and post them for public
comment, while actively seeking out comment from constituencies who may
not otherwise be heard.  At the conclusion of that comment period, the
Elders will draft revised documents and use them to form the Foundation.
The Board of Directors will not be publicly elected.  There will be a
Technical Advisory Council that balances representation from large
contributors, smaller contributors, and individuals.

If you have any questions, concerns, or feedback about these decisions,
discussion is welcome on the openafs-info mailing list.  You can also
contact me or any of the OpenAFS Elders privately if you would prefer not
to comment publicly.

                                        Russ Allbery
                                        for the OpenAFS Elders