[Python-Dev] project culture: take responsibility for your commits

Stefan Behnel stefan_ml at behnel.de
Wed Oct 2 20:58:39 CEST 2013


Hi,

I'm looking back on a rather unpleasant experience that I recently had in
this developer community. Actually, twice by now. Here's what I take from it:

You should take responsibility for your commits.

Sounds like a simple thing - in theory. People make mistakes, that's
normal. You can't always know what others do with your code, and so
something that might sound like a great idea when you come up with it, may
turn out to have a negative impact that you didn't, and sometimes couldn't
possibly, anticipate.

So, people will come to you and complain. Let's assume these complaints are
reasonable (and they certainly aren't always). What do you do in that case?

Do you tell them that what's in is in? Do you tell them that you are a core
developer and they are not? That they can try to do better, and if they are
lucky, find someone else who applies their patch? That's what happened to
me recently.

Here's what I'd like to see people do instead.

1) You should discuss the issue with them. If their complaints are
reasonable, you may simply have been wrong. Or you may have been right, but
couldn't know that there was more beyond the visible. Be open. If you're
lucky, the discussion will make the problem obvious to someone else, and a
patch will come for free.

2) You should invest a reasonable effort to fix the issue yourself. After
all, you produced it by changing something, even if you couldn't possibly
see it coming. Take responsibility for your commits.

3) If you can't fix your change, consider reverting it. No change is often
better than a bad one. Maybe the time wasn't right for it. Maybe there's a
better way to do it that isn't obvious yet. Taking a change back is not
showing the white feather. It's showing responsibility.

I know that these things aren't always easy. Sometimes people come yelling.
Sometimes their complaints are plain wrong. Sometimes the huge impact they
see is actually minuscule compared to the upsides. And sometimes the real
size of the impact may not actually be visible to you. Be open and they
will be, too.

Stefan




More information about the Python-Dev mailing list