typelevelのCode of Conduct問題

え、問題発生してるの?という感じですが、事実炎上気味なので、自分の知ってる限りの経緯や個人的意見まとめ


「Code of Conduct」ってなに?という話ですが、できれば実際のこれ

http://typelevel.org/conduct.html

ちゃんと読んでもらうとして、書いてある内容とか目的とかは、このまえScala祭の件でのあのblog

ScalaMatsuri 行動規範を掲げた経緯

とか読んでもらえば、大まかには似たものでしょう。カンファレンスじゃなく、ソースコードというか特定のライブラリ開発だったり、typelevelという組織について適用されるものなのでしょうか?

そもそも「typelevelという組織」とはなんなのか?が曖昧で個人的にはモヤモヤしています。具体的には

  • 最初たしかscalazとshapelessとspireではじまった
  • その後ライブラリ増えていった
  • べつに属しているからといって、なにかあるわけじゃない?
  • ライブラリが属するものなのか、人が属するものなのか(そしてその場合の属する、とは何か)
  • 具体的には、以下のことくらい?
    • ドキュメントがtypelevel.orgのもとに公開されていることがある(が、それぞれ独自にページあったりもするし、現状単なるリンク貼ってあるだけとか?)
    • いくつかのライブラリは https://github.com/typelevel にある
    • べつに https://github.com/typelevel にないものもあるし、 https://github.com/typelevel へすべて移そう、という話もない
    • sonatype経由でmaven centralにpublishするidを持っていない場合は、org.typelevelのidを利用する場合がある?
  • このあたりは、実が自分が知らないだけで、なにかあるかもしれない



そして、丁度Scala祭の前日くらいに?、typelevelのorganizationでScalaコンパイラのforkがありましたが、

http://www.infoq.com/jp/news/2014/09/scala-compiler-forks

このforkも「typelevelのorganizationの名の下」に行われましたが、typelevelのライブラリの一覧の人たちが、そのforkのコンパイラ開発に全員参加してるわけでもない?し、やっぱり色々もやもやします。



そして、問題(?)とは、まずは具体的に以下のtweetとか

基本的な情報をまとめておくと

  • Tony Morris (dibblego) さんは、Scalazの原作者
  • 謎のtypelevelの組織作ってワイワイやろう、的なのは他の人が中心になってすすめただけで、Tony Morrisさんはおそらくほとんど関わってない

なのですが




今回具体的にどういう経緯でCode of Conductがでてきたのかよくわからないが、それに対して、もしくはそれそのものではなく、それがでてきた経緯とか話し合いの過程で、なにか意見があわなくて怒っているらしい


そして以下のtweetが、わからない人には意味不明だと思いますが

以前紹介しましたが

再度適当訳を載せておくと

  • 2008年、Scalaを仕事でつかうことにしたけど、ゴミみたいなライブラリしかない
  • 同僚と、オープンソースで作ることに
  • 最初は内部的にscalaxという名前だった
  • しかし、scalaxという名前のライブラリは他に存在してた
  • 見てみたけど、それもまたゴミ
  • よって、scalazになった
  • (結局zの意味は語られていない・・・?)

という経緯です。上記のtweetにreplyするかたちで「zの次は何か?」というプチ大喜利twitter上で行われてたみたいですね。





さてScalazでは、freenodeでのIRCがわりと使われてるわけですが、普段自分もほとんど見ないのですが、ちょっと見てみたら、この件に関してだいぶ直接的な話がされていました。あれなので、発言者部分は伏せて画像として一部貼り付けておきますが



「Tony violated it multiple times」
Tonyは複数回(Code of Conductに)違反した (名指しではっきり言う派?)


とか


「I don't think a code of conduct is necessary」
code of conductが必要だとは思わない


とか



「i've never seen dibblego violating CoC」
dibblegoがcode of conductに違反したのを見たことがない (擁護派?)




などあります。もちろん(ある程度焦点にはなってますが)べつにTony Morrisさんだけがあれなのではなく、そもそもCode of Conductなんてわざわざ掲げるべきものなのか?など、色んな観点で議論になってるようです。



そんな中、Haskellの超有名な人で、過去にはScalazにコミットしていたり、Scalaz仕事で使った過去もある、ekmettさんが以下のような発言していて印象的でした



もちろん、Scalazという今となっては有名ライブラリの原作者という意味ではとても尊敬すべき人だし、かといって議論するときにあれなのはよくないし、Code of Conduct掲げることによって平和になるならいいけど、逆に一部の人に対して不快感というか結果的に締め出す、やる気をなくさせてしまうのは本末転倒感あるし
みんな仲良くしよう(小並感




で、個人的にはこんなことがあってもなくても、Scalaz始めshapelessその他の関数型なライブラリや関数型の考え方は素晴らしいと思うので、今後も貢献と普及活動していきたいですね・・・Code of Conductの議論に参加できる気がしないし、参加する必要もなさそう(?)なので、いつも通り見守ります