“The Hype Cycle describes the way that new technologies and projects are perceived over time, if they do a good job of handling themselves, going from a technology trigger, inflated expectations, disillusionment, enlightenment, before arriving at “the plateau of productivity” – a state where there is no more hype and the new technology is simply a normal part of our lives.”
The perception over the past few years that Gentoo is dying is in reality Gentoo’s arrival at the plateau of productivity. Hype has gone away and remaining is a distribution with a true niche that fits into the broader Linux ecosystem.
Similarly, you need to quickly build the same level of trust with our community. Do you have the tools it takes to hack into the code? and do you know how to use them? When a contributor uploads a patch to our mailing list or to our tracker (preferred, but to make sure you get noticed please post a link on the mailing list too) he builds instantaneously the same level of trust that the unknown cab driver builds with every new customer: he implicitly shows that he has the tools (hardware, operating system, internet connection, coding environment, repository access) and that he can use them for basic operations.
I think you should fire this person immediately. Okay, maybe give him exactly one warning.
You’ll find someone else who really knows this stuff. No doubt about it. And firing one intransigent bully is a lot less painful than shutting down an entire division next year because he paralyzed your decision-making.
Deep technical competency is overrated compared with the ability to make excellent decisions and to create a culture where forward motion is valued and personal initiative is rewarded.
The good news is that the bully knows this, and the only reason he gets away with being a bully is that he thinks he’s got you bluffed. Call his bluff and odds are you’ll have a much more cooperative team, top to bottom.
The goal of leadership is to produce superior results on purpose and that makes leadership a results contest. The challenge of leadership is to persuade and motivate those they lead to produce the results they want. When people voluntarily and enthusiastically do what their leaders ask them to do and the desired results are achieved, leaders are considered to be effective and successful! The question is how do leaders really get others to voluntarily and enthusiastically produce the desired results? There are many parts to this puzzle, but there is none greater than a condition I describe as Strategic Presence.
A post I made on the Gentoo development list last night deserves your attention because it illustrates a key aspect of Gentoo. I want to make sure it’s preserved instead of lost in mailing-list archives. This is in reply to a proposal to move a significant portion into a series of variables instead of being written as scripted functions:
I think the idea of ebuilds as scripts showing directly how to build software is a core part of the Gentoo build-system philosophy. This proposal pushes ebuilds toward a formatted file that is not a script. Instead, it is more like an Ant XML file that more abstractly describes a build. I think this is the wrong direction for ebuilds because they should directly resemble how software is built by hand.
One of the key reasons people use Gentoo is that ebuilds are so easy to “get” for anyone who has ever built software by hand. I will continue to vehemently defend anything that I think retains this key advantage of Gentoo over other distributions.
Gentoo is a distribution for advanced Linux users, or those who want to become advanced. Having packaging scripts that are easy to learn lowers the barrier to entry to editing them, which vastly increases our number of potential developers. It additionally comprises a key part of Gentoo’s ease of customization by allowing people to easily write their own packages or modify existing ones for their purposes. When users do this, it creates a natural pathway from building software by hand to editing ebuilds to becoming a Gentoo developer. The more difficult it is to learn how to write packaging scripts, the more of your potential developer base you repel.
“OSS concentrates on the software, not the problems the software can solve: Take a look at an OSS site, any OSS site. You’ll see a whole lot of talking about the software, the implementation of the software, the source code for the software, how you can contribute to the software, etc. You’ll almost never see anything about the problem domain — the assumption is that, if you’ve stumbled upon the site, you already know you have a software problem.”
Innovation is not the job only of the leader. For innovation to happen at all levels and from followers as well, a leader must look to steer what is needed for a change or direction, but should never limit how to come about doing that. The adversity that exists in a team is far greater than any leader will ever have and so the possibilities and ideas generated from the whole group are always more than the leader could generate on their own. For this reason, it is especially important for a leader to not only allow innovation at all levels, but encourage and promote it as well. This will bring forth more ideas, more possibilities and enable more people amongst the followers to start having practice and interest in the decisions, risks and change as well.
True leadership is about taking people to a place that they would not go to by themselves. Good leaders provide that by delivering and demonstrating purpose, direction, goals and guidance that is well beyond a supervising role alone. These are the areas that I feel make direction vital to leadership.
Planning and Communication
Direction cannot be given if it is not known by the leader in the first place. And a leader cannot lead if they don’t give a direction for people to follow them. This creates a big requirement to do something about that by using techniques, tools and resources to provide and develop that direction.
2. As the team or project leader, pay extra attention to the basic mechanics of good meeting and project management. The importance of agendas, role clarification, project charters, action items, and documentation all magnify when leading a virtual team. For a one hour conference call, expect to spend 4X the time in “administrative” preparation and follow-up.
“What many people don’t realize is that the bikeshed effect is, in fact, a form of procrastination. And it can suck in highly technical developers, along with everyone else.”
This year, let’s try something different! I posted a rough draft of our organization application on the Gentoo wiki, in hopes that we can all work together to improve it over the next week. Applications are due starting March 9, and earlier is better. Here’s a list of questions that you can help answer:
- Why is your group applying to participate? What do you hope to gain by participating?
- What criteria do you use to select the members of your group? Please be as specific as possible.
- Has your group participated previously? If so, please summarize your involvement and any past successes and failures.
- What questions/requests do we want in our application template for students, in addition to the GSoC application?
- What is your plan for dealing with disappearing students?
- What is your plan for dealing with disappearing mentors?
- What steps will you take to encourage contributors to interact with your community before, during, and after the program?
- What will you do to ensure that your accepted contributors stick with the project after the program concludes?
Go to the wiki, and help Gentoo’s application rock!
To compete with Remi’s post about getting xorg-server 1.5.3 stable in Gentoo, here’s one about getting xorg-server 1.6, which was released today, into testing in the main tree. We’ve been maintaining the 1.6 release candidates in the x11 overlay for a while now. Tonight I added the final release to the overlay. (Update for Google users) What’s new in 1.6, you ask?
- RandR 1.3: Panning, transforms (fixing projector keystones, etc.), primary outputs
- Xinput 1.5, including input device properties
- Predictable pointer acceleration
What’s left before it can move to the main tree? Here’s what I can think of, offhand:
- The new XRandR stuff needs to get released upstream (randrproto, libXrandr, xrandr). Right now we’ve got the xrandr userland tool depending on live git of libXrandr, which won’t work for the main tree. (Update: randrproto and libXrandr 1.3 are out, just waiting on the userland tool xrandr)
- We need to sort out the issue with XCB’s Xlib library renaming forcing recompiles of practically everything. This is becoming more and more of a blocker because now libXext 7.0.5 requires a new libX11. I think giving ourselves a hard blocker on 1.6 from this will help us get it fixed. See bug #248743 to track progress on this. (Update: solution in x11 overlay for testing)
- The server now has a fix to keep looking for HAL if it’s not running when started. Should we change /etc/init.d/xdm to compensate for this change by no longer depending on hald, thus allowing gdm/kdm/etc to start earlier? This will give us one of the steps taken by the fastboot work seen lately in Moblin and elsewhere.
- I think Remi’s going to add xf86-video-intel 2.6.2. (Update: done)
- Our xinit is crazy stale, mainly because we patch it like crazy and I don’t like porting those. I’d like to get it updated to a current release for 1.6. In the longer term, we need to merge distro-neutral parts of our work upstream, but that’s not a 1.6 blocker.
To sum up, you can try xorg-server 1.6 now by adding the x11 overlay with layman, or you can wait for the above issues to get solved, and it will show up soon in testing in your main tree.