Transitioning

Max Kanat-Alexander mkanat at bugzilla.org
Thu Nov 15 08:42:30 UTC 2012


	Hey Bugzilla Developers.

	I love working on Bugzilla, and I'm totally thrilled at the 
unbelievable changes we've made it it. I'm pretty sure that in 2004, 
most people thought that this project was going to die and be crushed by 
all the major commercial competitors that suddenly arose. And yet, here 
we are, still one of the most widely-respected and used  bug-tracking 
systems in the world, all based on volunteer efforts and open-source 
principles.

	This isn't to say that the project is totally out of danger--it's very 
likely that some significant changes have to happen in order to keep the 
project alive (myself and other reviewers discussed this a few months 
back), and the Pretty project needs to be completed in order for us to 
retain a broad userbase. But the sort of things we've accomplished 
(particularly the degree of improvement in code quality without a full 
re-write) with this codebase have possibly never before been achieved by 
any software organization in the world, let alone one populated across 
nearly every timezone by people working in their spare time. So I think 
we deserve a little pat on the back from ourselves.

	I personally had a major goal of bringing Bugzilla's code up to a high 
level of quality and learning enough from that process to develop a 
series of broad principles for software development as a whole. With the 
completion of my book, I believe that I have accomplished this, and now 
it's time for me to start focusing on bringing that message to the 
world, as well as time for me to start focusing on my career at Google 
where I may also be able to have a significant and important impact on 
the world of software development.

	In reality, LpSolit and others have actually been managing the project 
entirely without me for the last several months (in fact, for pretty 
much the entire 4.4 release cycle) so I think there's excellent evidence 
that the project can both survive and flourish without me. I will 
definitely miss the Bugzilla community and the great work that we've 
done together, but I think the best thing to do at this point is to 
transition away all of my duties to others so that I can focus on what I 
need to focus on, and so that the project can have somebody holding all 
of the positions that need to be held.

	If I had to supply only three pieces of advice to the Bugzilla 
community that should live on and be kept in force always, they would be:

	(1) Make sure you keep intact all of the principles of an effective 
open-source community. It's most important that we gain and retain 
developers faster than we lose them. I wrote up the results of my 
research into this at: 
http://www.codesimplicity.com/post/open-source-community-simplified/

	(2) The most important thing to focus on when prioritizing features is 
"how much does this help people track bugs?" I wrote this up as "The 
Feature Acceptance Test" once, and I think it helped us have one of the 
most successful releases we ever had. I would suggest keeping this in 
operation for every release: 
https://groups.google.com/forum/#!topic/mozilla.dev.apps.bugzilla/hHoJ3IqN0ns

	(3) Remember that code quality is king. Without code quality, we can't 
deliver features in time that actually end up helping our users. Losing 
code quality almost killed the project once; letting that standard slip 
could end us up there again.

	With that said, it's time to give away all of my duties! As near as I 
can tell, here's a list of all the things I'm currently in charge of, 
with who they should go to:

	* Infrastructure (Sysadmin)

	This is already being handled by wicked.

	* CVS-to-bzr sync

	wicked, could you please take this over? It runs on landfill from my 
personal crontab.

	* webmaster at bugzilla.org

	Also being handled by wicked.

	* Twitter

	justdave has volunteered to take this over.

	Note that I routinely search for the word "Bugzilla" on Twitter and 
reply to people who have genuine questions or problems. I don't feed the 
trolls who have pure complaints that aren't useful, but sometimes I do 
offer to help them or ask them for specifics so that I can be helpful to 
them. Doing this search is also a good way to get an idea of how people 
feel about Bugzilla. Generally, the longer it's been since we released 
anything, the more negative they feel. Anybody can help in this fashion, 
as long as they actually know enough about Bugzilla and are willing to 
be polite and positive to every single person they Tweet at.

	* The Bugzilla Update (blog)

	I believe I have transitioned this to LpSolit.

	* Extensions module owner

	I think timello should take on my work on this with oversight from the 
other reviewers, if he's willing. I don't think there should continue to 
be a module owner.

	* DB module owner

	I think LpSolit should take over maintaining the DB layers. I don't 
think there should presently be a module owner.

	* Release Manager

	dkl, as has been happening anyway.

	* Authentication module owner

	Nobody. Should be maintained by the community for now. Perhaps wicked 
could look into this, though, as I recall he had some patches and interest.

	* WebServices

	dkl. Note that API reviews should remain very strict. The API should 
retain TOTAL consistency and reviewers should always think about
forward-compatibility so that we have a stable API where we (ideally)
never have to break backwards-compatibility. Also, all WebService 
methods must be fully unit-tested before a Bugzilla release can be 
called stable. Every single release, we have discovered problems during 
unit testing that would have prevented backwards-compatibility if not 
fixed before the release.

	* Installation and Upgrading

	LpSolit should probably take over generally directing this work. There 
should probably be no module owner for now.

	* Chief Architect

	I suspect that this title should simply disappear until it's clear that 
somebody else is doing this specific job. Essentially this role is 
implicitly held by the project's leaders.

	* Community Lead

	This is essentially the job of making sure that the community stays 
healthy and that each member of the community is enjoying working on the 
Bugzilla Project. I think justdave is probably best positioned for this, 
or he can assign that job away to somebody else who really wants to do 
it and seems well-suited for it.

	* Maintaining the Developers Guide.

	In general, this probably won't change much, particularly the
guidelines for new contributors that are on the Wiki. However, I suspect
things will need to change over time, and I'm guessing that LpSolit
would be the best person in general to maintain this. It's probably
going to partially be a community effort, too, I imagine. But
particularly anything having to do with coding style should generally
have a single maintainer who makes the important decisions about
consistency for the whole app.

	* UI coordination

	Perhaps glob or dkl would like to do this? Essentially I have always 
coordinated with our UX people and given them my input and guidance 
based on experience with lots of Bugzilla users. I helped Jonathan 
revise the mocks for Pretty, as an example.

	* The xt/ search test.

	I would suggest dkl or glob. Please maintain this test; it took 
tremendous effort and it's the *only* way to know that the Custom Search 
system is behaving as it was intended. We spent 10 years with a 
continuously buggy system because this test didn't exist. Don't let it 
fade away and let us go back to that parade of endless bugs.

	* Reviewer

	There exist many other reviewers, they can still do reviews. I will 
unfortunately not be available for reviews.

	* My bugs

	Should mostly go back to their default assignees. Some should be taken 
over by individuals, particularly the P1 enhancements.

	If there's anything else that I've missed, please let me know!

	Once again, I've loved working with you, it's been an incredible 
adventure, and I will miss you all.

	-Max
-- 
Max Kanat-Alexander
Chief Architect, Community Lead, and Release Manager
Bugzilla Project
http://www.bugzilla.org/



More information about the developers mailing list