Lucid Community Team Review

One thing I have been working hard to continue to grow and refine with each cycle is how I manage my team at Canonical, the projects that we are working on, and how we coordinate ours and other projects with the wider community. As I have focused on improving this project management approach, I have been working to help better structure and plan our projects.

While I started doing this with my team specifically, I was keen to see if I could improve this in the wider community too. As such, at the last Ubuntu Developer Summit I worked to better socialize the idea of teams developing a firm idea of what they want to achieve in a cycle, planning that work out, assigning the work across the wider team and making steady progress on those goals throughout the cycle.

To do this I encouraged teams to build roadmaps with a core set of goals, divide those goals into blueprints and to track actions inside those blueprints. Some teams embraced this more structured approach and were successful in achieving their goals.

As part of this work I approved a set of blueprints that I would manage as part of my team. This core set of blueprints, a mix of my team’s and other community goals, set the primary goals and workflow for my team throughout the cycle, and my role was to keep everything on track.

At the start of the Ubuntu 10.04 Lucid Lynx cycle I blogged about these plans for my team in Lucid. They included these blueprints:

Engage in outreach with targeted upstreams to build support for Application Indicators into their code
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-application-indicators-outreach

Help communicate needs of upstreams to Launchpad team
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-launchpad-upstream-improvements

Continued documentation for Upstreams
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-upstream-documentation

Upstream Contacts
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-upstream-contacts

Adopt-an-Upstream initiative
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-adopt-an-upstream

Get Harvest more production ready
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-harvest-next-steps

Improve Kernel community patch flow
https://blueprints.edge.launchpad.net/ubuntu/+spec/kernel-lucid-bugs-with-patches

Facilitate transition of Permissions Reorganisation
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-permissions-reorg-process-changes

Help the IRC Council in being effective
https://blueprints.edge.launchpad.net/ubuntu/+spec/irc-council-lucid-plans

Improve translation status reporting
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-improving-translation-status-reporting

Increase community participation in coordinating translations
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-community-participation-in-coordinating-translations

Definition of translations best practices and policies
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-translations-best-practices-and-policies

Improve Quality Assurance on translations
https://blueprints.launchpad.net/ubuntu/+spec/lucid-qa-community-testing-translations

Increase community developer contributions in Launchpad Translations
https://blueprints.launchpad.net/ubuntu/+spec/community-lucid-increasing-lp-translations-dev-community-contributions

Raise awareness of LoCo team work
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-loco-stories

Help the LoCo council to be successful
https://blueprints.launchpad.net/ubuntu/+spec/loco-council-lucid-plans

Make LoCo Directory usable for the LoCo Community
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-loco-directory-development

LoCo Council
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-loco-council-nominations

EMEA Membership Board
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-emea-board-changes

Americas
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-americas-board-changes

Asia/Oceania
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-asia-board-changes

Kubuntu
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-kubuntu-council-changes

Ubuntu Open Week
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-open-week

Ubuntu Developer Week
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-developer-week

Release Party Coordination
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-release-party-coordination

Ubuntu Global Jam
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-global-jam

Ubuntu Free Culture Showcase
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-ubuntu-free-culture-showcase

Improve UDS Scheduling
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-summit-improvements

Team Sprint Planning
LoCo Docs Day(s)
Release Name Announcement
Governance Assessments
LoCo Week
Debian Relationship
LoCo Stories
UDS Planning
DebConf
Desktop Events

The Fridge
https://blueprints.edge.launchpad.net/fridge/+spec/community-lucid-fridge-improvements

summit.ubuntu.com
https://blueprints.edge.launchpad.net/ubuntu/+spec/community-lucid-summit-improvements

LoCo Directory
https://blueprints.edge.launchpad.net/loco-directory/+spec/community-lucid-loco-directory-development and https://blueprints.edge.launchpad.net/loco-directory/+spec/loco-directory-event-registration

Harvest
https://blueprints.edge.launchpad.net/harvest/+spec/community-lucid-harvest-next-steps

So, we had a large set of blueprints with an even larger set of actions and I was keen to ensure I could provide as much support guidance across these different communities and blueprints.

I did by using the burndown chart approach that we in the Ubuntu platform management team have been experimenting with recently. I decided to trial this for the Lucid cycle to see if it would help me provide a sense of perspective and oversight over the team, and more importantly, help optimize my team and the community for success.

As we draw the Lucid cycle to a close, the burndown looks like this:

For those unfamiliar with a burndown chart, the Y axis is the number of committed actions in all of the projects I am managing, and the X axis is the time until the end of the cycle. Each bar on the chart indicates the number of items yet to do (red), the number of completed actions (green), and the number of postponed actions (orange). To use the chart effectively I need to keep the number of completed actions under the thick black line; this then provides a constant stream of progress across the collection of actions.

Doing this effectively is not as simple as saying “make sure you complete two actions every day until the end of the cycle”. Some actions take seconds to achieve, some actions take days to achieve. As such, while using the chart, I found myself developing a better awareness of the size and scope of tasks so I could better plan for the team. This was particularly important around vacations, holiday periods and other downtime.

I already have a pretty structured way of managing the team; we have weekly calls, I sent out call notes, create new actions, review outstanding actions etc, and the burndown just factored into our weekly workflow in a fairly non-invasive way.

While the burndown is primarily a useful tool for me, when I look at that chart I am hugely proud at how the team was responsive to keep the various projects on track. While this certainly applies to horsemen Castro, Holbach, and Planella, this also applies to the wider community. Take a look at the assignment summaries:

Let me explain what we have here. Across all of the blueprints that we committed to with their included actions, this is a list of who had actions assigned that affect the burndown. Naturally Jorge, Daniel, David and I have the largest assignments, but I am hugely proud to see that (a) we had lots of community participation and (b) those who did participate were hugely successful in completing their actions. Even there many folks only had a few actions to complete, this experiment demonstrated to me that the tool is useful for helping raise the opportunity for success.

As such, in the Maverick cycle I am going to use the same approach, but continue to encourage more community participation in these structured blueprints. I think that the burndown approach not only helps me guide all these projects and keep them on track with a regular flow of achievements, but it also helps raise my visibility on the different actions which helps me easily identify the next pieces of low-hanging fruit and coordinate with the community around completion of those tasks and unblocking any problems.

So, in a nutshell, I am proud of everyone’s achievements and I look forward to even more success in the Maverick cycle :-)

  • Zac

    You maybe proud of everyone’s achievements but we are just as proud of yours. Yours enthusiasm and efforts are very appreciated all around the world. Congratulations on this excellent release cycle.

  • http://okiebuntu.homelinux.com/blog/?p=155  | okiebuntu

    [...] cycle Jono and his team used Work Items and burndowncharts and found them to be very useful. These Work Items are a little different and [...]

  • http://jeffsussman.co.cc/2011/05/29/community-team/ Community team | Jeffsussman

    [...] Lucid Community Team Review | jonobacon@homeI decided to trial this for the Lucid cycle to see if it would help me provide a sense of perspective and oversight over the team, and more importantly, help optimize my team and the community for success. … Natty Community Team Plans … cprofitt on Natty Community Team Plans… [...]