Simon Peyton Jones
simonpj at microsoft.com
Sun Sep 25 18:04:38 UTC 2016
One of the most precious attributes of the Haskell community over the last twenty-five years has been its supportive, friendly, and respectful dialogue. People have often drawn attention to this, and I have always felt good about it. (A great example is this hilarious exchange , which I came across in the wonderful but sadly-in-abeyance Haskell Weekly News). As I write this post I am travelling back from ICFP where the same high standards of discourse prevail. People certainly ask searching questions, but they do so as critical friends, not hostile adversaries.
There's no denying that our shared dialogue as a community has taken a nose-dive in the last few months. If this change of tone becomes established as a norm, I believe it will corrode our common life, perhaps permanently, and harm our shared purpose. I would be heartbroken if that happened.
Underlying these exchanges there are strong differences of opinion. Some are technical judgements; others are to do with an assessment of what will be most helpful to new users. These are matters about which reasonable, thoughtful people can differ. But in a community in which I believe that everyone is passionately motivated to do the Right Thing, I am certain that we can debate those differences in a more constructive way.
In writing this post, I am not seeking to discourage open debate, or expressions of concern. It's worth separating two things
1. Publicly debating an issue where judgements differ
2. Using offensive or adversarial language in that debate
It's fine to respectfully disagree with someone's judgement (i.e. 1). It's /not/ fine to imply that they have hidden (and bad) motives, or declare them incompetent or deliberately obtuse (i.e. 2). This has no place in our public conversations. The trickier the issue, the more careful we should be to express ourselves in a way that is respectful, and is visibly grounded in the assumption that the other person is acting in good faith.
I not attributing blame. There is no idle malice here, nor thoughtless trolling. It's no good each of us pointing the finger elsewhere: our shared conversation is our shared responsibility.
Nor am I trying to paper over the cracks, and pretend everything will be ok if we are just polite to each other. There are significant underlying technical disagreements, bruised feelings, frustration, and some anger. So there is work to do together, and I'm in active conversation some of with the main protagonists, working on some concrete steps forward. More on that anon, I hope.
Meanwhile, I am asking -- begging actually -- that we work on these issues using language that is respectful of others, that celebrates the work of both volunteers and companies, and that assumes that our dialogue partners are acting from the best of intentions.
More information about the Haskell