Introducing the Freight Train
Not everyone contributes the same things in the same way to openSUSE. Some spend a few hours a week translating, others spend every evening packaging new software, some work full-time on maintaining core infrastructure and again others spend whole weekends during release time to Q&A the heck out of openSUSE. Conditions are different too, especially contrasting the volunteers-who-work-from-home and the paid contributors who sit in an office together. The former contribute as much as they can get away with - but often that's limited to evenings and weekends. And they work on what they want and consider important for openSUSE, with associated perfectionism, occasional full rewrites and limitations; while talking to others on IRC or the mailing list. The paid contributor, on the other hand, has a (product) manager telling him/her what to do with a time line and associated pressure; and sits 8 hours a day in an office together with many other engineers working in the same area, having meetings and that stuff.
This difference can lead to a schism: the corporate dudes have a plan and time line to follow and move on quickly, solving problems and making decisions in their face to face meetings, leaving the community behind, feeling disconnected, uninvolved and discontent. They loose control, nice projects are 'taken away', the corporate guys block things which don't fit the direction set for them, don't review patches ('too busy'?!?) etcetera.
This is called the 'freight train effect' of a corporate entity active in a community. It's obviously bad, happens everywere and we've all seen it, I'm sure.
openSUSE, the Freight Train and similar issues
Following the openSUSE:Factory development model we're a very flat organization where packagers feed packages into the devel projects and these in turn feed into Factory. Decisions are made by the Devel teams and by the Factory release team. Often, these decision makers are core contributors, long-time active and quite likely to be employed full-time (by either SUSE or one of the other companies active in and around openSUSE). That means there's a Freight Train risk!
Even without a Freight Train, there's a chance communication goes wrong. openSUSE, as our openSUSE:Conference_code_of_conduct states so eloquently:
We, as a community, value and respect people of all stripes - genders, orientations, races, abilities, shapes and sizes
So we're a bunch of colorful people and we like it that way. But that also means that those colors don't always match. People bump heads, be it due to personal, cultural or any other kinds of differences.
It absolutely is. And it won't go away, we have to deal with it, as adults. Central for that is that technical decisions have to be made on technical grounds - and the results have to be communicated properly and publicly. Input, from anyone, has to be welcome. And nobody should be blocked in his or her contributions!
When it goes wrong...
If somebody is blocked from contributing:
- by a maintainer who doesn't have time
- by someone taking over his/her work
- by others undoing/removing what he/she did
He or she can and should turn to the Freight Train Team. They will look at the issue, talk to those involved and try to come to a solution.
The team can:
- try and get maintainers to pay attention to merge requests (or give up maintainership if they can't!)
- Try to avert a freight train trampling community efforts
Note that if you have a personal issue with someone, this is not the right place. You should talk to each other and if that doesn't work you should contact the openSUSE board. The Freight Train Team is not here to settle scores or solve conflicts, just to try and remove roadblocks in the way of community members who want to contribute.
You can contact us on firstname.lastname@example.org