I *did* seriously consider it...
First, it was determined that I was a valid nominee for the trustee election:
Dear Daniel,
I talked to Grant Goodyear (g2boojum) about your status.
It turns out that you are a member of the Gentoo Foundation. You
became one automatically as the original President.
You not being on the list of the Foundation members which was posted to the gentoo-nfp mailing list after 2006 elections was a mistake. We used that list and assumed you are ineligible. This was a clear mistake for which I apologize.
So now, on Grant's authority, I'm informing you that you are eligible
to both running and voting in the upcoming trustee elections.
with regards,
Łukasz Damentko
Election Official
I received this email last night, and I did seriously the nomination. I found Seemant on IRC and bounced the idea off of him of having both of us accept our nominations, post a platform to -nfp - basically saying "if you elect us, this is what we will be doing. x, y, z." The platform would have been blunt, to-the-point, likely extremely popular with users, and likely very controversial with developers. Seemant and I are in basic agreement on what is wrong with Gentoo and what needs to be done to fix it.
The short answer is that Seemant was more interested in pursuing a more independent and non-political direction to help Gentoo, similar to the path I outlined in a prior blog post - working with the community. So I think that by the end of our discussion, we both realized that we would have much more fun and many more opportunities to work together to improve Gentoo by focusing our efforts outside of the existing project.
I do want to sincerely thank Grant and the election officials for clarifying whether I was a valid nominee or not, as well as those who nominated me. I considered the nomination seriously because I do care about Gentoo and I am open to consider ways to improve the project. Ultimately, I did not think that the trajectory of trusteeship would have had a high likelihood of actually making a difference for Gentoo.
To fix the official Gentoo project, two key things need to be changed that are currently very hard to change. The first is to have the Foundation take a more active role in monitoring and improving the health of the project and the overall community. This is difficult because nearly everyone on the project has convinced themselves that this is not the role of the Foundation.
The other is to fundamentally change how key decisions and appointments are made on the project. It's my opinion that this pseudo-democratic developer self-rule model that has evolved in the last several years is a failure in concept and practice, and needs to be replaced with something that works better.
And making those changes would be extremely hard, even as a trustee. The only way I could see it working would be to return with a majority of trustees in favor of the changes, and even then it would cause a great amount of turmoil on the project.
So it makes sense to focus in more a productive direction - outside of the cathedral. And I realize I haven't exactly spelled out what this means. While I hope to give you some tangible details in the coming weeks on what I will personally be working on, I don't consider myself to be the center of the Gentoo universe either, just maybe the loudest cheerleader for the community right now.
Here is the big picture. I really believe that we - the Gentoo users and the larger Gentoo community - have the power to improve things, even if don't feel like we do. I think that we need to start shifting our focus away from the Gentoo cathedral and start thinking about how we can all work together to make Gentoo better.
Yes, I do support and encourage those working to make Gentoo better from inside the cathedral, but I also don't want anyone to think that I'm suggesting that we place our trust in the cathedral reforming itself. If you feel motivated to join the Gentoo project and make a difference, by all means do so. I support your efforts and you may very well succeed but at the same time I'm am not asking the larger community to wait around for the cathedral to fix itself.
Our challenge as a community is to develop a new model for large-scale collaboration, integration and innovation that will serve the larger Gentoo community and result in growth. I think the first step is to for smaller independent projects to build positive relationships with one another and look for ways to help one another and work together, while maintaining independence. Things can be decentralized and relationships can grow organically. The tools to support this kind of collaboration already exist. Mechanisms to get these improvements to users already exist.
Also - I know that I personally will collaborate only with those who I really enjoy working with - this is volunteer time, after all. We need to keep it fun. I encourage everyone else to do the same. By doing this, we also help to encourage the larger community to be friendly and helpful.
9 comments:
The first is to have the Foundation take a more active role in monitoring and improving the health of the project and the overall community. This is difficult because nearly everyone on the project has convinced themselves that this is not the role of the Foundation.
I'm not quite sure what you are suggesting here. Right now the Council is Gentoo's governing body, and the Foundation takes a very limited role. Are you suggesting that the Foundation should really be the governing body (essentially displacing the Council), or are you suggesting that the Foundation should be governing some particular aspects of Gentoo, with the Council controlling other aspects, or something entirely different? Your previous posts have somewhat suggested the first, but then it's not clear to me what makes having all of the authority in the Foundation fundamentally different from having all of the authority in the Council.
The other is to fundamentally change how key decisions and appointments are made on the project. It's my opinion that this pseudo-democratic developer self-rule model that has evolved in the last several years is a failure in concept and practice, and needs to be replaced with something that works better.
Such as? I'm not being glib; I'm quite genuinely curious. The current model has evolved to what it is now mainly because it appears to be "less bad" than any other models that folks have come up with. That said, the current governing structure has been changed significantly twice since you were in charge, and there's nothing fundamentally preventing it from changing again if a really good idea comes along. The developers would have to buy into it, but that would be true for any purely-volunteer organization. (Even if there were a single benevolent dictator, the developers can always "outvote" that person by choosing to walk away. That aspect of "pseudo-democracy" is, I think, unavoidable.) I understand that you're currently focusing on how to effect change from outside Gentoo, but I'm still interested in what you think should be done inside the "cathedral".
Grant, I have exceeded my maximum bandwidth for Gentoo-related conversation for today, but your comment deserves a detailed answer. So I will give you a short answer for now and can elaborate on it more in a future comment or post.
Ultimately, I think the Foundation can improve by simultaneously reforming itself and transforming Gentoo into a lighter-weight distributed organization of independent development teams.
For the reforming aspects, I believe the Foundation should be caretakers of the project in the sense that they know what a healthy open source project looks like, and are actively monitoring Gentoo to ensure that it meets that definition.
Any concerns that the trustees have that Gentoo is not a healthy project should be addressed by some action, which could be independent effort handled by the trustees themselves or involve working with developers or the community to resolve the issue. Is that specific enough? I expected the initial batch of trustees to have an interest in doing this due to their track records.
As for how to make decisions, first, there needs to be chain of command so that decisions can be made.
Those making the decisions need to weigh the opinions of developers, current users, Gentoo-based projects, commercial Gentoo users, and even future potential Gentoo users (ie - what is required to expand the usefulness of Gentoo.) So the mechanism can either include those parties or appoint people who will listen to those parties.
As for how appointments are made, I don't think that having developers elect developers generally results in a group of people that are looking out for the big (not just developer) picture.
Overall, my suggestion would be to reduce the need for bureaucracy by moving to a more distributed and independent model of development where possible - a true de-centralized model. This will help to alleviate a lot of the issues by reducing the number of issues that need to be decided in a centralized way.
I may be way off the mark but it seems to me that a problem such as this can be common among organisations unexposed to the harsh laws of market economics.
In the same way as a centrally planned socialist government has trouble organising its economy and allocating resources efficiently red tape and political overhead seem to find their way into any overly planned and non transparent organisation.
I believe that once upon a time the idea was to find a business model for gentoo, which would have been nice, many successful linux distributions are made up of a corporate body and a community body which seems to provide many of the advantages (and few of the disadvantages) of both.
I think Daniel is on the right track, in the same way that a corporation is accountable to its customers and various other stakeholders gentoo needs to open itself more to its users (and even to anyone willing to create a derivative distribution or use gentoo as part of a larger product). In the real world, diversity is strength.
Daniel,
as for the new roles for the foundation and council, what do you think about the idea discribed here:
http://forums.gentoo.org/viewtopic-p-4718339.html#4718339
Is that something like what you were thinking of?
As for the de-centralized development model:
When you talk about that with current devs, you will most likely hear something like "overlays cant work, you cant garantee inter-repo deps". And I fear they are right - at least with the current design. To change that, technical changes are needed. One idea might be that overlays will need to provide a list of "external deps" on sync. After the sync all inter-repo deps are checked. Of cause that would only be a first step. But its one that need to be supported by current devs. Or the packagemanager will need to be extended/forked. Its a bit like "Devs: We cant live with them, we cant live without them.". What Im trying to say is: Whatever you do you will need to have at least a limited support for it by devs. That means bureaucracy - lots of it.
Have Fun,
Björn
Daniel, according to this page: http://www.gentoo.org/proj/en/elections/foundation-200802.xml
you are still eligible to be nominated. We are with you for the good or for the bad but please consider being a part of the team once more.
All that fuss for nothing ?!
Now that you *may* have the opportunity to make change on the inside, you don't want to ?
I found it a little bit "coward".
Daniel,
Since that was your "short" answer, it was of course lacking some detail. If my "independent" you mean something akin to the current mess of having independent repositories for various ebuilds and too many top-level projects, I frankly hate the idea.
One of the biggest problems I see with Gentoo right now-- as a user-- is that Gentoo has become too spread out and unfocused. There are currently 32 top-level projects[1]! When I left in 2005, there were a total of 15[2], most of which were very high-level and designed to steer the direction of Gentoo in some way.
TLP's today have become very development-centric, rather than project-centric. When I say "project-centric", I'm referring to high-level goals of Gentoo as a whole-- like portage or kernel maintenance. Development-centric TLPs foster the mindset that many users are complaining of today-- developers are disconnected from users. They aren't developing for what users want, they're developing for what developers want. I recognize that developers work on Gentoo on a volunteer basis. But developers have to consider the needs of the users FIRST because without users Gentoo will fail. We're seeing that with the current outcry from users. If the user community doesn't get what they need, then they'll move on to a distribution that does. Gentoo is unique in some of its features for now, but what if something comparable comes along? Users are fickle and often quick to move on the the next thing.
To explain that comment, there is a TLP today called simply "Python". It maintains just python stuff. I can appreciate that python is an important, integral part of Gentoo since it's used in portage, but in the context of "project-centric" TLPs, it shouldn't exist. Why was Gentoo-specific maintenance python ever split off from the portage TLP, which was a project-centric TLP that steers the direction of portage and ultimately Gentoo? There's a "Gentoo Programming Environments" TLP. Why isn't python part of that group?
Other examples of TLPs that probably shouldn't exist: eselect, Java, Kolab, Lisp, Perl, PHP, Python. Most of these should be under larger groject-centric TLPs.
Thoughts? comments?
[1] http://www.gentoo.org/proj/en/index.xml
[2] http://web.archive.org/web/20050302041805/http://www.gentoo.org/proj/en/index.xml
I think we are talking here of a management organization rather than object tailored one.
Grant, I've posted some additional perspective to the -nfp mailing list which I hope is helpful.
But I also need to refocus over here. As I explained in my last -nfp post, one of the reasons why I constructed my offer in the fashion I did is because it would have reduced my requirement to communicate internally with Gentoo developers. I could consult individually with respective subject matter experts without having to build developer consensus (see my most recent blog post, "Refocus", for more perspective on that.)
At this point, I have shared quite a bit of my perspective and need to refocus on work as well as on my plan of working with the larger Gentoo community. I don't want to sound dismissive as that is not my intention and I wish you the best, but I will freely admit that one of the things I was dreading about returning as a simple trustee is this kind of "death by conversation" that can result in trying to appease all the people on the project, or even try to simply answer all of their (often valid) questions. Just because the questions are valid and productive doesn't mean I can legitimately devote my personal time to answering all of them.
Right now, I am getting too close to running the Foundation by proxy, so I need to basically stop my posts. I think if you go through what I have posted on my blog, on -nfp, and in my comments here and reflect on it, you will get a good sense of what I think needs to be done to help the Foundation and you will also be able to figure out a mechanism by which to accomplish this.
Post a Comment