Developing developers: From end-user to developer

We've seen how to gather some people and create a community (at least that's the quick tutorial on how it worked for us in Greece).

The product is cool (any product) but here we have people. They should know WHY they join a community as volunteers. Is it because they want to help FLOSS to make the world a better place? Is it because it is Fun? Is it because they like the pros that open source provides? Is it because they like to help other people? Find out WHY people want to join-form a community.

The key to increasing the number of members is to attend events. Here is a quick tutorial on how to do that. The best possible scenario is for a developer to come to your booth and join the team. But this is 1% possible to happen (maybe less). Usually, developers we're searching, have their favorite distro/project and they don't change so easily.

The best thing is to join events where you can find end users (end users = users they're computer science students where they focus on windows, users that their computer being used for facebook/twitter/office suite). Why? Because those users can do some work that the developers hate. What's that?

0. Junior Jobs. Write a junior jobs list where someone can find exactly what to do and how to do it. The list could have the following.
1. Report bugs to bugzilla. So developers can fix it (of course developers have to be polite and help end-users to provide possible broken data etc).
2. Documentation. Developers just hate to write documentation.
3. Translation. Usually, developers use some "strange" language. So if someone asks you, please be polite and reply.
4. Promotion. Everyone calls it marketing. The term marketing seems that the distro/project earns money out of promotion. Maybe the best term is engagement. This is needed because if it's the best distro/project among others, how more potential users will learn about it? And if it's the best, if no one uses it, then it's useless.

Usually, end users join the community not because of the product but because of the people (remember to find WHY people should join the community). They stay in the community ONLY because of the people. If he/she doesn't feel good, then he/she leaves. Unfortunately, the community is a number of volunteers. There's not someone that orders them to do something. If there's someone that will present the result of the community as his/hers, then people will leave and the community terminates.
Sometimes, members expect something in return. If there's a company that supports your open source project, then maybe they expect material or money. It's not like that because as a volunteer you're doing your hobby. If your hobby becomes your job later, that's the best for you.

So the question is how to keep the community together? The answer is you can't.
If everything is ideal, everyone grows. The time they spend as volunteers, is limited. They have a personal life. They have careers.
So what's the workaround? Find more people before your time will become limited.

But why the article has a title:
From end-user to developer

Well, as I mentioned before, it's impossible for a developer from Fedora to decide to do development only for openSUSE. So every project has to "develop" developers. How to do that? Volunteers in the community join as end-users. They like the various aspects of the project and want to search more. They can find a way how to contribute to bug fixing (there should be an end-user to report a bug). Then they learn a programming language and they learn also how to package. So they become developers. Maybe the community is -1 person (because he/she might be tired-boring to travel and promote) but the project is +1 developer.

Develop developers. Help end-users to grow.

Δεν υπάρχουν σχόλια

Από το Blogger.