Déjà-vu – kind of.
Some months ago I had an interesting discussion with a fellow Gentoo Developer. His proposals were quite similiar (at least partially) to the ones Donnie wrote about in his post “Steps toward improving Gentoo“. Well, still … for me this proposal(s) sounds like a good (probably even the best) way to demotivate people and make them stop spending their rare spare time working on Gentoo.
Gentoo is about having fun, period. I’m doing this for fun, I bet you do as well.
Setting expectations and removing “underperforming” Developers won’t solve anything, well … it would make things even harder for the few ones left. Remember, every little minute we do spend for working on Gentoo is spent for fun and because we want to do so, not because we’re on Gentoo’s payroll. For now Gentoo’s biggest problems these days aren’t not met expectations or underperforming Developers, the biggest problem is a huge lack of man-power. Simply put, Gentoo needs you!
Bringing new people aboard should be Gentoo’s main goal for now. Identify areas we’d need more help with, start to more actively recruit people for these areas, one by one. That would improve Gentoo.
I wholeheartedly agree.
I agree up to the point that Donnie’s strategy is obviously flawed. I don’t think, however, that slapping another 100 developers against the problem will help. What we need instead is decentralisation. Exherbo only has 20 developers, but a lot of packages in trees, because you don’t need to be a developer of any kind to make a new tree. Hence, a lot of trees are born, and the good few stay alive. Similarly, I think projects should break out of Gentoo for a bit, so that they can compete, no longer depend on Gentoo’s bureaucracy (of which there is too much: a bit) and evolve in to bigger projects which can no longer be tied to Gentoo.
Now, I see how this could become a bit more difficult for the arch teams, but take the several DE teams for example. If they’d just be separate projects, related to the Gentoo Foundation but not to the Gentoo project, I think they could work in a much more efficient and fun way, since you wouldn’t feel like being part of a huge company-like structure. Ever wondered why the Linux project isn’t a bureaucratic sub-project mess? I think it’s because that only reminds people of work, which may not be a present memory for some.
Now, for projects which would be cut out of the Gentoo project like explained above, it would be obvious that their only intent would be to work for the Gentoo project, but that doesn’t mean they should be deeply woven into the project, does it?
I think that Gentoo has reached the state of those huge companies that struggle to grow at those same two-digit percentages they used to when they were young.
Gentoo already provides much of what you can possibly wish for — it’s the closest I can think of to a metadistribution. I don’t see any need for major restructuring anywhere or fancy new features — and I must say I’m definitely not the easily satisfied kind of person, especially with operating systems.
Gentoo is already very mature. Of course it can improve — any mastodontic-scale enterprise can –, but it won’t probably be very different from regular-paced organic growth. The Gentoo project is very broad both content- and goal-wise. If users and devs miss the attention their favorite metadistribution gets nowadays, I really believe marketing is the way to go — do we have a community manager already? Any new tutorials, business cases, success stories and stuff like this would be a great way to tell everyone outside the Gentoo community that the project is alive and well, and also VERY mature.
Back to the project, this very organic growth is a challenge: keeping the Portage tree up to date requires lots of users bumping packages and commited devs commiting those bumps. Apart from that, I believe that any specific action by any individual herd or project within Gentoo should be free to act as its members wish, and at the pace they wish. After all, devs really do it for fun.
I’m agree with you and disagree with Donnie. The lack of manpower is too obvious when you take a fast look at bugzilla. But IMHO there is a deeper problem with this:
I’m somewhat active in bugzilla: I file bugs, fix some of them, make some ebuilds and that kind of things. I think I’m qualified enough to bump in portage some non-system non-critical-for-many small apps, like, for example, soundkonverter, or to mark them as stable. However, because I’m not a dev, I can’t do that kind of things, and there is a huge probability that the assigned dev doesn’t do anything with that in months or even years, because he has a lot of more important work, because he’s the only one that can keyword an app for SuperH and he has +5000 open bugs or because he’s simply a slacker. I bet that >70% of open bugs are things like that, non-critical but important for some people.
The problem is that to become a dev you must practically work for at least 2 hours/day in non-trivial things, live in at least 3 IRC channels and be active in gentoo-dev mailing list. There is no place for people that only can/want to fix small things, wrangle bugs, summit trivial patches or bump a bugfix release for a stupid app.
In the Donnie’s post about improving one-self there is a comment writen by Richie that has a great solution IMHO:
“Another idea would to split packages in various categories from A to D, where packages of category A are critical for the system integrity, where others of category D can be overtaken by some freshman.”
I’m sure there is a lot of people that can and want do this kind of almost trivial stuff. With the current way of doing things, you will have a bunch of deps with a huge to-do pile and some missing devs, probably fed up of working in gentoo. Just like the current status.