Detailed thoughts on the State of the .NET Foundation #60
Replies: 7 comments 19 replies
-
When I worked towards the current design for the .NET foundation I tried to borrow as much as possible from the Gnome Foundation and the structure of control. The major areas where it differed you identified clearly: the permanent seat and the veto power. The latter is intended to prevent a scenario where the assets of the foundation were relicensed under a license like the GPL (I think there are reasons why this couldn't happen, and also I think it doesn't matter in practice, as a fork can achieve the same), but this was the rationale for it. The transition from the old model to the new model was a major concession from Microsoft, and my main desire was to have the members elect the board, and the board appointing the executive director, who would report to the board. That said, I was exhausted at the end of this process, and did not run for the first reformed .NET board and didn't have a chance to communicate to the new board the design, beyond "it is like gnome". As a shortcut, rather than start life with a fund raising effort, and recruiting an executive director, we leveraged the offer to have Microsoft appoint someone to work on this role. This was a intended to be a short term arrangement, but like I said, I didn't coach the incoming board on this. I still think that the Gnome foundation design is a great design, more egalitarian, an worth aiming for it - but likely difficult to negotiate. |
Beta Was this translation helpful? Give feedback.
-
Hello folks, hope you're doing well I think the governance model created by Cardano (Project Catalyst) can help us to build a community with more transparency and easy access to make decisions together so as not to depend on someone (Microsoft, etc) and in this way avoid having a bureaucratic system that affects the continuous effort of the community and the value it brings to projects 🙂 Hope this can help you! Best, |
Beta Was this translation helpful? Give feedback.
-
Thank you for taking the time to write this in a thoughtful and well written way, with some actionable and addressable feedback. |
Beta Was this translation helpful? Give feedback.
-
I will echo what @devlead said. You bring up excellent and addressable points. The current Board is hard at work reviewing these and other items. So having these thoughts come from an ED provide a lot of insight into what we can change the Foundation into. It would be ideal to have the board turn from operational to strategic. And like you said, it is a lot of work but not impossible. I will only speak for myself here, but I know the feeling is similar, I am up to the challenge as we work towards our future. |
Beta Was this translation helpful? Give feedback.
-
Is .NET bigger than Microsoft, or is Microsoft bigger than .NET? That's the real question being asked here. The philanthropic energies of the open source community are often in direct conflict with command-and-control corporate structures and even the legal system itself. Pretending like the conflict doesn't exist is how these folks got into this mess. Microsoft has a chance here to generate a huge amount of goodwill not only in the .NET community but also the open source world by choosing to relinquish the "company behind the curtain" aspect apparent in the Bylaws. Articles and blog posts will be written about what happens here. The usual comments of "embrace, extend, extinguish" might themselves be extinguished by Microsoft choosing philanthropy. Without the philanthropic energies of projects and maintainers, what is the purpose of the Foundation anyway? If .NET as a brand is too important to risk tarnishing by people not on Microsoft's payroll, then abolish the Foundation altogether. |
Beta Was this translation helpful? Give feedback.
-
Thanks for all of the detailed explanations. Unfortunately, at this stage, the more people dig into things the more questions it raises. I don't know if anyone else is getting the same impression that I am at this point. Between Microsoft's secrecy, the choice of nonprofit incorporation, and recent Foundation actions, I get the distinct impression that the .Net Foundation's purpose is to support commercial .Net applications. If a project isn't a commercial project, the Foundation will either assist or co-opt that project in an attempt to transform it into a commercial project. Failing that, it will be cut loose. Now that's all well and good if that's the type of foundation they want to be. Where my concern lies is that until very recently Microsoft appeared to be proclaiming the .Net Foundation as the place for the community to rally around for all things .Net. This would include opensource as well as commercial endeavors. It feels like Microsoft wanted the .Net Foundation to garner the good will of a truly inclusive independent organisation like the ones @ReedCopsey listed earlier while at the same time maintaining a stranglehold on the direction of the development of .Net outside of Microsoft, steering that development in a way that furthered their commercial interests. Even if doing so was counter to the health of the community at large. As has been recently revealed the .Net Foundation should more accurately have been named the Microsoft .Net Foundation, as it's nothing more than a thinly veiled extension of Microsoft, existing solely to further Microsoft's commercial interests. At this point I think that Microsoft needs to come clean with the community and drop the pretense. Either restructure the .Net Foundation as the open anchor of the .Net community, completely independent of Microsoft, supporting commercial and opensource endeavors equally, or admit that it's nothing more than a collection of companies engaged in the development and promotion of exclusively commercial .Net endeavors. I am not sure about anyone else, but I would be upset having been snookered by Microsoft into wasting my time and energy with an organisation that not only isn't designed to help myself and the greater community, but tricked me into working against my own self interests. |
Beta Was this translation helpful? Give feedback.
-
I opened pull requests removing this claim from the landing page and few other places: dotnet-foundation/website#1098 |
Beta Was this translation helpful? Give feedback.
-
Why am I writing this?
For the last nine years, I've served as the Executive Director of the F# Software Foundation. Given the recent controversies, I have had quite a few people reach out to me and ask my opinion or advice on recent discussions surrounding the .NET Foundation. In order to give the most complete opinion possible, I've been trying to do some research on the .NET Foundation, and have seriously struggled with being able to get clarity on its purpose, structure, and governance.
Part of me dreads bringing this up, but as somebody with a lot of experience in non-profit governance and operation, I feel that there are some significant issues at play.
First off - I want to say that I truly want the .NET Foundation to succeed. I also know that the Board of Directors has the best intentions, and that there are a huge number of people putting a lot of effort into the Foundation and its activities. I applaud the effort of everybody involved, and do see it as a very good sign that the Foundation has the potential to be hugely successful. There is definitely motivation and a large, active community - key aspects to bringing long term sustainable success. I also know, from personal experience, that getting these things right is very hard. It's also an aspect of management outside of most developers' typical experience. Non-profit issues are a unique challenge, and I do have a lot of sympathy for the current, former, and especially new Board members and the struggles involved in trying to make things right.
However, when going through the Foundation's documents and website as well as some of the recent communication, I can't help but find myself in a position where I have significant concerns. As things stand today, I find myself unable to honestly recommend anybody put time or effort into the Foundation, or recommend joining as a member. I hate that I currently feel unable to recommend the Foundation. There are far too many red flags that arise when I try to read the available documents. I hope that bringing this to light might help bring forth change, at which time I'd love to be able to revisit my recommendations. I will be listing some concrete ideas on potential changes below.
What is the .NET Foundation really?
There seems to be a large disconnect between the governance of the Foundation and the public opinion of the Foundation's purpose. Members, and even key projects, have been repeatedly surprised by what is happening. I've even spoken with people who were running for Board positions, but who had little to no understanding of how things really work internally.
Much of the recent difficulties seem to center around this as well. There is a large misunderstanding about what it means to join the Foundation as a project. There is little or no clarity from the membership in terms of who is responsible and who has power to actually "do things" in Foundation projects.
This has, unfortunately, resulted in a loss of trust between the Foundation leadership teams and the membership.
In looking through the public material (at least the semi-easily discoverable documents and pages), the following issues stand out:
Moving forward
As a very active .NET community member, my fervent wish is that some of these issues can be straightened out before more trust is eroded.
I would like to offer some advice to the Board - Here are some concrete actions to consider:
Prioritize transparency
Please make the governing documents public and discoverable ASAP. Consider publicly publishing meeting minutes, ideally doing so in a timely manner from when the minutes are approved. For most organizations, minutes for any given meeting are, worst case, often approved at the start of next meeting, so if you have a monthly meeting cadence, the minutes are only "one month" behind. This will help everybody have a better understanding of where things stand and where things are moving at any point in time.
Build clarity of purpose
Think about and discuss: "What do you want the .NET Foundation to be?" "What is the Foundation today?" I suspect you'd be surprised at how different the opinions within the Board on this stand today.
Is the goal truly to be "an independent, non-profit organization"?
If so, there will need to be some seriously difficult conversations. The Bylaws, as they stand, prevent this from ever truly being a reality. The good news is they can be changed, but this would require getting Microsoft, as the "Founding Member", on board with any real change. Non-profits thrive when their members are empowered - but that requires letting go of control to accomplish effectively over time.
Update governing documents
The Bylaws really need updating. There is a huge lack of clarity, which can only lead to confusion over time. I don't know who is being used for the current legal counsel - but my guess, by looking at the public information, is that it's a lawyer specializing in corporate law and not one that deals directly with non-profits. Engage with counsel or even the many non-profit support organizations with experience in member organizations, and make sure that the rights, roles, and responsibilities are well defined in your governing documents.
This is especially crucial with respect to Member rights and responsibilities and, in the case of the .NET Foundation, "Project" rights and responsibilities. Projects, in much of the language surrounding the website, is almost its own class of member, but there is nothing in the bylaws that even defines a project.
Bring in the right talent
In order to ease and assist with the changes in structure and governance, I'd also recommend focusing the search for a new Executive Director on finding somebody with experience in non-profit management and governance. They don't have to even be very technically savvy - a good developer does not necessarily make a good executive officer. Look for understanding of non-profit structure and governance. Ideally somebody close enough to the development world to relate, but most importantly, somebody who can help guide you all in making the right choices to future proof the Foundation itself.
And again, clarity of purpose
Finally, if the goal isn't to be "an independent, non-profit organization", or there is no legitimate motivation within Microsoft to allow for change to make it that way, be transparent about this. If the .NET Foundation will forever be largely controlled by a single entity, don't try to hide that, as it will only cause more strife in the long run. It's okay to have an organization structured this way, but being clear as to the purpose will only help members and projects decide if the .NET Foundation is a good fit for them.
Final thoughts
My hope is that the Foundation can succeed. Personally, I'd love to see it as a truly independent organization - community backed and trusted. I'd like to see clarity and transparency brought to the forefront. My fear is that community effort put into this with misguided expectations will continue lead to damage over time. Please consider putting things on the right footing now, before you try to grow or expand.
I also want to reiterate - I know the Board and the community at large has the right motivations, and is putting in a huge amount of effort. I am happy to discuss and help in any way possible, so feel free to reach out as well.
Thank you.
Beta Was this translation helpful? Give feedback.
All reactions