[erlang-questions] Announcing Erlang.org Code of Conduct

Tuncer Ayaz <>
Tue Mar 24 13:08:36 CET 2015

On Tue, Mar 24, 2015 at 5:52 AM, Joe Armstrong wrote:
> I view discussion CoC to be a light diversion from discussing
> programming problems. A form of relaxation.
> Hearing my learned colleagues point of view on such matters is
> enlightening.
> If I had one rule it wouldn't be "be nice" it would be "try not to
> be boring" - but niceness and boringness are in the eye of the
> beholder ...

I hope we can refine things like that in the CoC to be more precise
and less ambiguous. Writing the draft, we tried our best, but certain
words may carry a different meaning given changing audiences. Also, a
words's meanings will change over time, but that's what a timestamp is
for. For example, we thought we made it clear that cursing/swearing is
only acceptable if it's in a non-hateful manner directed at
non-personal things, say, a piece of code. The idea was that one
shouldn't go full emotional and curse at each other, while still
allowing you to vent your frustration regarding a piece of code (or
tech), if you *really have to*.

However, text communication loses most of the nuances present in face
to face conversations. That's why staying focused and avoiding
formulations that are likely to be mis-interpreted given everyone's
different backgrounds is a good idea, in terms of having a productive
conversation. Writing "that function is ****" certainly conveys the
point for most people, but you're highly likely to offend the author
or somebody else, and in that process steer the conversation from
technical facts to something based in emotions. That said, it's
imortant to clearly state opinions, but there are many ways to do that
which do not involve cursing/swearing.

Actually, a statement like "this is ****" has to be followed by an
explanation anyway, so formulating it as follows is more productive:

"This looks wrong to me. Are you sure that....?"

If explaining to someone that their code is completely wrong requires
callig it names, as they would otherwise not understand the severity,
there is a deeper communication problem, although it may sometimes be
the only way. However, if somebody doesn't understand "it's completely
wrong", I doubt they will have an easier time grasping "this is ****".

Joe, returning to "be nice", I wasn't aware of the meaning this might
have to somebody having grown up in a British household. In order to
avoid that, maybe we should have used the long form "treat others as
you desire to be treated" (or the "do not ..." version of it). I'm sorry
about that, but it can be fixed.

Just like writing code, it's almost always the best option to allocate
more time to thinking about some statement you're about to make than
trying out variations until one passes the crash test. In any
situation, trial and error is seldom the right first action to take.

More information about the erlang-questions mailing list