Hey all,
I said in last night's meeting that I'd start work on a draft of content to go on the join page, to clarify the process and make it more useful. This is what I have so far, but is it too wordy? (Lol, of course this is entirely text, but is it too long!)
Best,
Jon
-----------------
Join Fedora
There are many great reasons to join Fedora, and many different ways you can get involved. This page aims to explain what you need to do to join and highlight a few of the ways you can help us. It will also explain some of the tools that Fedora contributors get access to and how to go about accessing them.
Fedora Accounts
No matter what role you want to fulfill in Fedora, you are going to need a Fedora account. Signing up is easy, and everyone is welcome.
When signing up you will be asked to agree to the Fedora Contributor's License Agreement (CLA). The purpose of this is to establish copyright control under Red Hat, providing a number of benefits to the project. Chief amongst these is that it makes it easy for us to ensure that all contributions to Fedora are free and open, as well as providing a means for us to handle any potential law suits. You can read more about the CLA here.
Joining A Team
Fedora is a very diverse place and no matter what your skills are, we probably have a team you can get to work in. Take a look at the skill sets below, the teams that come under them, and pick the one that interests you most.
Once you've decided on a team that suits you, sign up for their mailing list and introduce yourself. Once you've done that, they will advise you about the best way to proceed from there and how you can best help.
NB: Many teams have their own "group" within the account system. Membership of these is often required to access some of the tools and to be eligible to vote in elections. Once you've decided on a team, you will also want to apply for the relevant groups, but remember that applying for a group does not automatically mean you will be given access. Although each team works slightly differently, the best way to gain access is to make yourself known and to get involved, maybe even asking somebody to mentor you through some initial tasks.
-- List of roles here, along with teams that come under each role, their mailing list and their related groups --
Contributor Tools
-- Information about Planet, Talk, Gobby, People etc etc goes here --
On Tue, 2008-07-22 at 22:41 +0100, Jonathan Roberts wrote:
Hey all,
I said in last night's meeting that I'd start work on a draft of content to go on the join page, to clarify the process and make it more useful. This is what I have so far, but is it too wordy? (Lol, of course this is entirely text, but is it too long!)
[...snip...]
What is the purpose of this page? What should the user be doing on this page?
2008/7/23 Paul W. Frields stickster@gmail.com:
On Tue, 2008-07-22 at 22:41 +0100, Jonathan Roberts wrote:
Hey all,
I said in last night's meeting that I'd start work on a draft of content to go on the join page, to clarify the process and make it more useful. This is what I have so far, but is it too wordy? (Lol, of course this is entirely text, but is it too long!)
[...snip...]
What is the purpose of this page? What should the user be doing on this page?
To me, the purpose of this page is to explain the process of how one becomes an active Fedora contributor.
As it is now, it provides very little information beyond signing up for an account and a link to a wiki page with very little information about each role and the associated teams. To become an active contributor I think one needs to know at least a little bit more than what's currently there.
Best,
Jon
On Wed, 2008-07-23 at 08:36 +0100, Jonathan Roberts wrote:
2008/7/23 Paul W. Frields stickster@gmail.com:
On Tue, 2008-07-22 at 22:41 +0100, Jonathan Roberts wrote:
Hey all,
I said in last night's meeting that I'd start work on a draft of content to go on the join page, to clarify the process and make it more useful. This is what I have so far, but is it too wordy? (Lol, of course this is entirely text, but is it too long!)
[...snip...]
What is the purpose of this page? What should the user be doing on this page?
To me, the purpose of this page is to explain the process of how one becomes an active Fedora contributor.
As it is now, it provides very little information beyond signing up for an account and a link to a wiki page with very little information about each role and the associated teams. To become an active contributor I think one needs to know at least a little bit more than what's currently there.
I agree this page is wrong as is.
I think the right way to do this is to simply direct people to the account system first from this page, without any fanfare. At the completion of the process, the user should then have a choice of:
1. self-service information, by choosing a role that holds interest and landing on a page with actual useful data about what to do next 2. full-service information, where the user is presented with some selections that present a task list.
This page fails on #1 because the paths to the self-service data lead the user away from the account system, and not just one click either. The place the user lands has nothing truly useful, so the user is forced to click repeatedly to find other information, making it more unlikely to return to where the path started. The self-service information should be stripped from this initial join.fp.o page, and be presented as a link following account creation. No reason the join.fp.o page couldn't have a small but obvious link like "Why sign up?" leading to a general page like: https://fedoraproject.org/wiki/FAQ#For_Fedora_Contributors ...or a better page including text similar to what you laid out earlier.
You should talk to Luke Macken about #2, because he has some amazing ideas about what to do there.
I agree this page is wrong as is.
I think the right way to do this is to simply direct people to the account system first from this page, without any fanfare. At the completion of the process, the user should then have a choice of:
- self-service information, by choosing a role that holds interest and
landing on a page with actual useful data about what to do next 2. full-service information, where the user is presented with some selections that present a task list.
This reply largely made sense to me, and having reflected on it I mostly agree with it :) I'm hoping Luke will get back to me with a few details about the ideas he's had you mention - would love to help improve this process.
The one point I disagree with is that there shouldn't be "any fanfare" on the join.fp.o landing page. The idea that people arrive at this page and are simply pushed along to FAS seems like a bad one to me, and leaves the user guessing at exactly what they're getting themselves in for and how to go about doing it if they do want to push forward with getting involved.
I certainly see now that my post was far too verbose to fulfil this role, but we need *something* IMHO to get the user started, perhaps a series of quick bullet points:
Why Join Fedora?
* Scratch your itch * Help the community * Make a reputation as an open source superstar
How Do I Join?
* Get an account (link) * Pick a team * Get involved/Do something!
The page could then be split in two, with this on one side and on the other a huge great big link to FAS & the roles. NB: these bullet points are quick and off the top of my head!
Beyond this, the parts of the process where we're really tripping up are turning people from account holders into useful contributors, at least as far as I can tell. To improve this, and this I guess is where Luke's ideas might come in, we need to ensure that people have something to do. I have some further thoughts on this (your response got me thinking about this quite a lot - good work :)) but I'll hold out to see what Luke has to say first...
Best,
Jon
On Wed, 2008-07-23 at 20:56 +0100, Jonathan Roberts wrote:
How Do I Join?
- Get an account (link)
- Pick a team
- Get involved/Do something!
This still feels a bit backwards to me. Getting an account isn't the first thing that you should do to get involved with Fedora. Instead, it's actually finding that area of your itch to scratch, picking your team or whatever phrasing you want to put around it. And then you probably want to be on the mailing list/irc channel/whatever and communicate with them. And then, once you're more sure it's something you want to do and are really getting involved and "doing" things, *that* is when having the account matters.
This gives us a few useful benefits 1) It avoids the "I have an account, now what" problems (well, moves them at least) 2) Ensures that those we have with accounts are _contributors_. Which then lets us use the number of accounts as a meaningful number 3) Lowers the barrier to finding what you're interested in and seeing that you want to get involved
Jeremy
2008/7/23 Jeremy Katz katzj@redhat.com:
On Wed, 2008-07-23 at 20:56 +0100, Jonathan Roberts wrote:
How Do I Join?
- Get an account (link)
- Pick a team
- Get involved/Do something!
This still feels a bit backwards to me. Getting an account isn't the first thing that you should do to get involved with Fedora. Instead, it's actually finding that area of your itch to scratch, picking your team or whatever phrasing you want to put around it. And then you probably want to be on the mailing list/irc channel/whatever and communicate with them. And then, once you're more sure it's something you want to do and are really getting involved and "doing" things, *that* is when having the account matters.
My thought was that by having an account and have signed the click through CLA, it's then possible for new contributors to really get stuck in and do some actual work once they've found the team they want to help. The art team does this very well as is: a new person gets an account and then applies for the art-group, they are then asked in a welcome e-mail to introduce themselves on list and work on an item in the art team's design request queue. This is a model that I think we want to try and pursue in other areas.
If we deal with it carefully then we can avoid the "I have an account, now what?" situation, or so I believe.
I definitely agree with your point, however, that the most important thing is to get a new contributor interacting and working with the other members of the team they would like to be a part of. Signing up for an account with the CLA is so easy now though, why restrict the work they can do by pushing this to a later point in the process?
Best,
Jon
On 2008-07-23 09:58:02 PM, Jonathan Roberts wrote:
I definitely agree with your point, however, that the most important thing is to get a new contributor interacting and working with the other members of the team they would like to be a part of. Signing up for an account with the CLA is so easy now though, why restrict the work they can do by pushing this to a later point in the process?
Don't forget that some FAS groups are attached to access to things. This definitely raises the barrier for entry, which is one reason that we suggest getting involved with the people (list, IRC, etc.) first.
Thanks, Ricky
On Wed, 2008-07-23 at 17:07 -0400, Ricky Zhou wrote:
On 2008-07-23 09:58:02 PM, Jonathan Roberts wrote:
I definitely agree with your point, however, that the most important thing is to get a new contributor interacting and working with the other members of the team they would like to be a part of. Signing up for an account with the CLA is so easy now though, why restrict the work they can do by pushing this to a later point in the process?
Don't forget that some FAS groups are attached to access to things. This definitely raises the barrier for entry, which is one reason that we suggest getting involved with the people (list, IRC, etc.) first.
The interface could probably make it a bit clearer that we don't expect a new account holder to go applying for a ton of groups before doing anything else. Maybe I should file that as an enhancement?
On 2008-07-23 09:19:15 PM, Paul W. Frields wrote:
The interface could probably make it a bit clearer that we don't expect a new account holder to go applying for a ton of groups before doing anything else. Maybe I should file that as an enhancement?
Definitely. I think we had some interface version coming, but unfortunately, we had to concentrate on privacy policy stuff for this coming release. There's a ticket open at https://fedorahosted.org/fas/ticket/4. basically, we want to give people a step-by-step wizard for getting involved. Here's my quick mental dump of steps so far (feel free to add ideas to the ticket):
0. Take a look at mailing lists and IRC channels, introduce yourself, get familiar with how they work. 1. Create account 2. Read welcome email, click confirm link 3. Change password 4. Fill in detailed account information 5. Sign CLA (may need to be made optional, as some accounts, like mirrormanager accounts, don't require it) 6. Depending on how each group does things, sign up for groups for tracking/access to stuff
This is one of the reasons that I made that post on marketing-list about collecting contributor stories (https://www.redhat.com/archives/fedora-marketing-list/2008-June/msg00225.htm...) I'd like to see how people typically get involved, and see if we can make our processes fit how they work (it'd also be cool for marketing, both internally and externally).
Thanks, Ricky
On Wed, 2008-07-23 at 21:19 +0000, Paul W. Frields wrote:
On Wed, 2008-07-23 at 17:07 -0400, Ricky Zhou wrote:
On 2008-07-23 09:58:02 PM, Jonathan Roberts wrote:
I definitely agree with your point, however, that the most important thing is to get a new contributor interacting and working with the other members of the team they would like to be a part of. Signing up for an account with the CLA is so easy now though, why restrict the work they can do by pushing this to a later point in the process?
Don't forget that some FAS groups are attached to access to things. This definitely raises the barrier for entry, which is one reason that we suggest getting involved with the people (list, IRC, etc.) first.
The interface could probably make it a bit clearer that we don't expect a new account holder to go applying for a ton of groups before doing anything else. Maybe I should file that as an enhancement?
But what's the value in me having an account before I'm wanting to "contribute" something?
Jeremy
On Wed, 2008-07-23 at 21:58 +0100, Jonathan Roberts wrote:
2008/7/23 Jeremy Katz katzj@redhat.com:
On Wed, 2008-07-23 at 20:56 +0100, Jonathan Roberts wrote:
How Do I Join?
- Get an account (link)
- Pick a team
- Get involved/Do something!
This still feels a bit backwards to me. Getting an account isn't the first thing that you should do to get involved with Fedora. Instead, it's actually finding that area of your itch to scratch, picking your team or whatever phrasing you want to put around it. And then you probably want to be on the mailing list/irc channel/whatever and communicate with them. And then, once you're more sure it's something you want to do and are really getting involved and "doing" things, *that* is when having the account matters.
My thought was that by having an account and have signed the click through CLA, it's then possible for new contributors to really get stuck in and do some actual work once they've found the team they want to help. The art team does this very well as is: a new person gets an account and then applies for the art-group, they are then asked in a welcome e-mail to introduce themselves on list and work on an item in the art team's design request queue. This is a model that I think we want to try and pursue in other areas.
If we deal with it carefully then we can avoid the "I have an account, now what?" situation, or so I believe.
I definitely agree with your point, however, that the most important thing is to get a new contributor interacting and working with the other members of the team they would like to be a part of. Signing up for an account with the CLA is so easy now though, why restrict the work they can do by pushing this to a later point in the process?
Yes, and there are easy targets someone can hit, like wiki fixing, that it doesn't make sense to shunt people away from. This is especially true since people in general are getting more exposure to that model of jumpin in from other well-known sites.
I do agree that following up with tasks (for data-oriented people) or introductions (for social-oriented people) is an important part of this puzzle. And that, according to Luke, is the primary goal for one of the projects he's working on.
On Wed, 2008-07-23 at 21:07 +0000, Paul W. Frields wrote:
Yes, and there are easy targets someone can hit, like wiki fixing, that it doesn't make sense to shunt people away from. This is especially true since people in general are getting more exposure to that model of jumpin in from other well-known sites.
But that's the thing -- if someone sees things on the wiki that need fixing and they go to edit and are told they need to login/create an account, that's the time for it to be done. Not at some point before hand when they don't know what they're going to be using it for
Jeremy
On Wed, 2008-07-23 at 21:58 +0100, Jonathan Roberts wrote:
2008/7/23 Jeremy Katz katzj@redhat.com:
On Wed, 2008-07-23 at 20:56 +0100, Jonathan Roberts wrote:
How Do I Join?
- Get an account (link)
- Pick a team
- Get involved/Do something!
This still feels a bit backwards to me. Getting an account isn't the first thing that you should do to get involved with Fedora. Instead, it's actually finding that area of your itch to scratch, picking your team or whatever phrasing you want to put around it. And then you probably want to be on the mailing list/irc channel/whatever and communicate with them. And then, once you're more sure it's something you want to do and are really getting involved and "doing" things, *that* is when having the account matters.
My thought was that by having an account and have signed the click through CLA, it's then possible for new contributors to really get stuck in and do some actual work once they've found the team they want to help. The art team does this very well as is: a new person gets an account and then applies for the art-group, they are then asked in a welcome e-mail to introduce themselves on list and work on an item in the art team's design request queue. This is a model that I think we want to try and pursue in other areas.
The opposite is the case in a lot of cases where dealing with code -- I don't want to give people access to a group (which gives them commit access) until they've proven that they are actually writing good patches, etc. Or access to cvsextras until they've shown they can build packages and had them reviewed.
So maybe it's a difference between groups which are "hi I'm interested" and "this group gives me access to something".
If we deal with it carefully then we can avoid the "I have an account, now what?" situation, or so I believe.
I definitely agree with your point, however, that the most important thing is to get a new contributor interacting and working with the other members of the team they would like to be a part of. Signing up for an account with the CLA is so easy now though, why restrict the work they can do by pushing this to a later point in the process?
How does it restrict the work they can do if you move it to later? In the case of the art team, the flow would be something like 1) Become interested, find out about art group, get on mailing list/irc/whatever 2) Start to work on some cool new needed piece of art 3) To take the contribution, we ask that you sign the CLA
as opposed to
1) Become interested, sign CLA, create account 2) Find something you're interested in, find out about art group, ... 3) Work on cool new thing
Given that in the first case, I'll actually be talking with people who can help me with the account process, it feels a bit better.
But maybe
Jeremy
On Wed, Jul 23, 2008 at 09:13:34AM -0400, Paul W. Frields wrote:
On Wed, 2008-07-23 at 08:36 +0100, Jonathan Roberts wrote:
2008/7/23 Paul W. Frields stickster@gmail.com:
On Tue, 2008-07-22 at 22:41 +0100, Jonathan Roberts wrote:
Hey all,
I said in last night's meeting that I'd start work on a draft of content to go on the join page, to clarify the process and make it more useful. This is what I have so far, but is it too wordy? (Lol, of course this is entirely text, but is it too long!)
[...snip...]
What is the purpose of this page? What should the user be doing on this page?
To me, the purpose of this page is to explain the process of how one becomes an active Fedora contributor.
As it is now, it provides very little information beyond signing up for an account and a link to a wiki page with very little information about each role and the associated teams. To become an active contributor I think one needs to know at least a little bit more than what's currently there.
I agree this page is wrong as is.
I think the right way to do this is to simply direct people to the account system first from this page, without any fanfare. At the completion of the process, the user should then have a choice of:
- self-service information, by choosing a role that holds interest and
landing on a page with actual useful data about what to do next 2. full-service information, where the user is presented with some selections that present a task list.
This page fails on #1 because the paths to the self-service data lead the user away from the account system, and not just one click either. The place the user lands has nothing truly useful, so the user is forced to click repeatedly to find other information, making it more unlikely to return to where the path started. The self-service information should be stripped from this initial join.fp.o page, and be presented as a link following account creation. No reason the join.fp.o page couldn't have a small but obvious link like "Why sign up?" leading to a general page like: https://fedoraproject.org/wiki/FAQ#For_Fedora_Contributors ...or a better page including text similar to what you laid out earlier.
You should talk to Luke Macken about #2, because he has some amazing ideas about what to do there.
If we want Fedora development to efficiently scale to a large number of new contributors, we cannot expect someone to always be there to hold peoples hands and effectively task them with work to do. Saying "Welcome! Here is Bugzilla and a dozen mailing lists" is possibly the best ways to scare someone away, and yet I see it being done far too often. The only way that Fedora development can scale to an infinite number of contributors is if Fedora can properly delegate its own tasks to its contributors. Fedora is enduring some growing-pains at the moment, and I feel that now is the time to take a step back and take a serious look at what we are doing, how we are doing it, and how we can improve.
Problems ======== - Our current new contributor process leaves people in the dark. "Ok, I have a Fedora account...what do I do now!? Meh, I guess I'll just troll mailing lists in the mean time..." - Our current process expects people to keep up with a ridiculous number of high-volume data stream: IRC, Email, commits , wiki changes, etc - A serious lack of formal task delegation. - We lack a cohesive list of high level goals. The Feature process is the closest thing we have, but there are no clear actionable items associated with any given feature. - No clear tasks that new people can easily pickup. Issues in bugzilla have default assignees, which don't encourage people to grab bugs and help out. - Our 1-to-1/1-to-many package maintainership model does not scale. - There is no easy way to find someone to help you if you have a problem or a question. This leads to the current state of fedora-devel-list, with an extremely poor signal:noise ratio. - "Special Interest Groups" do not properly accommodate or even encourage new members, nor do they have clear goals, tasks, accountability, documentation, or communication channels. Most are inactive and stale. - Not only is bugzilla an awful workflow tool, but with the amazing growth of fedorahosted, our tasks are spread out even more. - Our communication channels are lacking IRC. No easy way to reference or search conversations. Mailing lists. Overhead of joining and setting up filters. Not easy to reference or search conversations. Threads get stale and die very quickly. An abundance of trolls and ad hominem. Rational discourse is sparse. It's obvious that people do not have anything better to do -- so lets change that :) - Lack of meritocracy. If we don't effectively track what is getting done and who is doing it, it is extremely difficult to give credit where credit is due.
Solutions ========= - Fedora needs to know the skills of its contributors. We could add these details to FAS, and make it a part of the new contributor process. I would also love to see this checkbox: [X] I am willing to help people with these subjects (Instant mentorship) - Packages/projects/tasks should know what technology it is comprised of. This way, we can easily funnel people with various skills to the places that need them - A list of high level goals that we wish to accomplish, with a cohesive list of actionable items associated with each goal, organized by the skills required to complete it. - Each action item needs to have associated with it: * The skills required to complete it * Difficulty level / estimated time to complete * A higher level goal associated with this task * A team that is accountable for this task * A team/person that can help with questions regarding this task * A person/group that is working on it - if no one has chosen to work on it, we need to make it dead simple for anyone to say "Hey, I'll give this a shot" - This system needs to automatically touch base with people after a given amount of time. "Hi, I noticed that you've signed up to work on $TASK, but you have not made a status update in $TIME. Click here if you have completed this task. Click here to make a status update. Click here to get help from a mentor Click here to give the task back to the community" - Allow for teams to easily be created and destroyed. Make it simple to create sub-communities. - Allow people to easily join or leave a team. - Funnel bugs/tasks/communication to the appropriate team - Make it trivial to grab tasks - Make it trivial to communicate - Each team should have a Standard Operating Procedure. "Welcome to the $TEAM, here is a handbook containing everything you need to know to start becoming a useful contributor" - Revamp our current maintainership model. We went from a 1-to-1 package to maintainer model to a 1-to-many model. The only possible way to scale is to have a many-to-many model where we have teams of people that are responsible for groups of packages. - Allow for rating of goals/features/etc -- let the community prioritize the goals of the project. - Making our bug and ticket lists much more open, available, and easier to navigate. - Create a simple "I want to work on Fedora" wizard that holds users hands through the new account process, and points them to the right projects/sub-communities/teams/groups/SIGs to get involved with.
This is not a comprehensive list by any means; it's merely a braindump that will hopefully be food for thought. I'd be interested to hear what you all think of my various assertions and "solutions". I would love to hear about more problems that people see with the current Fedora community architecture, along with other potential solutions.
Cheers,
luke
websites@lists.fedoraproject.org