[clug] Barriers to entry in FOSS (Was: Open Source Software's Dirty Little Secret)

Brendan Jurd direvus at gmail.com
Sun Sep 13 04:42:56 MDT 2009


2009/9/12 Jacinta Richardson <jarich at perltraining.com.au>:
> You *can* make FOSS a more fun place for the women who are already involved and
> for those who have the skills (or who want to develop them) to get involved.
> Making FOSS a more fun place for women should make it more fun for men too.
> There are lots of men who aren't involved in FOSS for similar reasons to the
> women; they find it exclusionary, cliquey, they don't like to be flamed for
> trying to learn, they don't want to dedicate 40 hours a week to a project but
> would rather be a more casual contributor...  There are lots of men in FOSS who
> stay despite disliking many of those characteristics.

I'd like to step away from the whole sexism thing and respond to
Jacinta's more general point about barriers to entry in FOSS.

If you'd rather not read a post that doesn't feature a transistor or a
shell command, you will find the "Delete" key on your keyboard most
helpful in this regard.

This is a long and anecdotal post, so here's the TL;DR version:

    Tearing down barriers to entry sounds awesome, but it might be a
double-edged sword.

After reading Jacinta's post, I spent some time thinking about the
FOSS project I'm involved with (Postgres), how the community behaves
and what I like/dislike about it.  Obviously I'm speaking purely from
my own personal perspective here.

The Postgres community seems to be pretty good at the whole
not-being-sexist thing, but it does have a rather deserved reputation
for a steep learning curve, and being tough for newbies to get into.
That's partially just the nature of the project (writing an RDBMS is
hard) and partially the way members of the community behave on the
mailing lists.  I'm not saying that newbies are "flamed", necessarily,
but if you appear on the Postgres hackers mailing list with a
half-arsed idea or something that's already been discussed ad nauseum
previously, you'll not get a warm reception.  To submit a patch, it
must meet particular standards, and to have a patch committed it must
be of exceptional quality.  If you fall short of either measure,
nobody is going to pull punches in telling you what you did wrong.

In considering how I feel about the Postgres community, those are
actually attributes that I respect and value very highly.  In getting
involved with Postgres, I had to learn (and continue to learn) some
lessons in humility, perseverence and patience.  I had to learn that
being willing to put time into the project doesn't entitle me to the
time of others.  The communication style, which some would find
brusque or rude, was to me refreshingly honest, no-bullshit and
matter-of-fact.  I saw how effective and enjoyable that style could be
when used (and interpreted) properly.  It was clear that nobody was
going to coddle me, and I relished the challenge of rising to meet the
project's standards on my own.  In terms of personal and professional
development, it's been incredibly rewarding.

But my experiences seem very much contrary to what you are espousing.
Frankly I think that if the project had been as you describe, more
welcoming, supportive and had a lower bar to entry, the pride and
satisfaction I get from being a part of the project would be
diminished.

Making the project more welcoming and supportive, and encouraging
casual contributions would also mean fielding more half-arsed ideas,
rehashed topics and bogus bug reports.  That places a drain on the
project's most precious resource; the time, headspace and enthusiasm
of the experienced contributors.

Of course attracting more contributors also means potentially more
brilliant ideas, new topics and legitimate bug reports, but those are
very much in the minority.

I also recognise that the environment I described may only be fun for
certain hacker types.  Sadly a FOSS project needs to attract other
kinds of people too, such as technical writers, testers,
advocacy/marketing types, planning/logistics types, and it seems to be
just plain hard to create an environment that is inviting for all of
them.

Postgres has taken the step of splitting the mailing lists up
somewhat, so you have the "hackers" list, the "general" list,
"novice", "www", "advocacy" and so on.  This works to some extent, but
there is necessarily a lot of interaction between the lists and a lot
of newcomers post to the wrong list on their first try.

I don't have anything resembling a solution, but I would be interested
to hear the thoughts of others on the list.  What's it like in your
FOSS project?

Cheers,
BJ


More information about the linux mailing list