「PHP」タグアーカイブ

Drupalコミュニティが中心人物の一人をSM趣味を理由?に追放

Drupalコミュニティから広がって今議論となっている事件について、日本語の情報ではわかりにくいところがあったので調べてみました。

要点

PHP製のオープンソースCMS として人気のある Drupal のコミュニティが、長年のコントリビューター ラリー・ガーフィールド氏(Larry Garfield)をコミュニティから追放。背景に男尊女卑SF小説のファンコミュニティやSM愛好コミュニティへの参加があるということ。

個人の無関係な性嗜好でコミュニティから排除することに反発の声が上がっている。

登場人物・用語

ドリス・バイタルト氏(Dries Buytaert)

Drupalの設立者。

2016秋来日時の記事

個人ブログ

ラリー・ガーフィールド氏

ハンドル名Crell

バイタルト氏も突出した(prominent)と認めるDrupalコントリビューター。コミュニティ歴12年

Drupal 7のDBアーキテクト、Drupal 8 のwebサービスリーダー

Twitter @Crell

クラウス・プーラー氏 (Klaus Purer)

Drupalコミュニティメンバー。ガーフィールド氏が黒幕と見ている。

反地球シリーズ (Gorシリーズ)

ジョン・ノーマン氏による1966年から現在まで続くSF小説シリーズ。

エドガー・ライス・バローズの「火星シリーズ」に影響を受けた宇宙SFだが、特徴の一つとして男尊女卑的な価値観の強さが挙げられるということ。

今でこそ、SFやファンタジイやホラーの中で、かなり過激なセックス描写がある、なんてのも、それほど珍しくはなくなったけれども、このシリーズが出た当時は、「SFではなくSMだ」とか、かなーり本国アメリカで物議をかもしたそうだ。

手当たり次第の本棚

日本語への翻訳はシリーズの途中で止まっている。

ファンコミュニティでは、小説に影響を受けて「片手で拍手する」「”be well”という文で会話を切り上げる」などの奇癖があり、ガーフィールド氏もそれらを実践している。

Gorシリーズ公式サイト

1987年公開の映画 Gor – IMDb

時系列

2016/10頃 要登録のコミュニティ(登録者500万人)でガーフィールド氏が7年前に主人(D/)仲間の結婚式に寄せたコメントのスクリーンショットを誰かが外で流し始めた(ガーフィールド氏による推定)。

2016/10-11 複数のDrupalコミュニティメンバーから、Drupalのコミュニティ・ワーキング・グループ(CWG)にこの件での問い合わせが送られる。議題に上がるもCWG「問題なし」との結論。CWGはバイタルト氏へ報告。

11/24-27 プーラー氏、チェコのプラハで開催されたDrupalイベントIronCampでガーフィールド氏とこの件について(非好意的に)話す。

プーラー氏、前期のBDSMコミュニティサイトや同種の出会い系サイトに登録し、ガーフィールド氏の過去の投稿を探して記録し始める(ガーフィールド氏の推測)

1月 プーラー氏とガーフィールド氏、Google Hangoutで(非好意的な)会談。プーラー氏はDrupalコミュニティでの役職やリーダー的役割から降りることを要求。

2/24 バイタルト氏がガーフィールド氏に電話し、「プロジェクトの価値に反するところがある」という理由でDrupalプロジェクトを去るよう通告。(ガーフィールド氏は2/27のDrupalConに出ないことを期待してのことと推測)

2/27 メーガン・サニッキ氏(Megan Sanicki)から、「バイタルト氏との会話の結果、」DrupalCon イベントのスピーカーから外したとガーフィールド氏に伝える。

3/22 ガーフィールド氏がブログ記事「情報が多すぎる(TMI About me)」で公開反論。コミュニティが私生活の情報を基に自分を排除しようとしていると述べる。同時にSM愛好(主従関係の恋愛, hierarchical relationships)の趣味があり、BDSMのコミュニティとGor愛好家(Gorean)のコミュニティに所属し、特に規模の小さな後者で活発に活動していることも。

3/23 バイタルト氏がブログ記事を公開。「ガーフィールド氏の私生活を尊重して非公開で解決しようとしたが、本人が公開し議論もされているので」と。ガーフィールド氏がブログで述べた件が追放の原因ではない、決断のための証拠を広く公開することはないが、とも。

3/23 Drupalがコミュニティとしても声明を発表。こちらも「ガーフィールド氏の私生活や個人的な信条でカンファレンスから降ろしたわけではない」と述べています。
しかし判断の基となった秘密情報については、関係者を害するかもしれないので公開しない、と。

reddit の/drupalでの議論(400+コメント)

reddit の/phpでの議論(200+コメント)

3/23 Drupalコントリビューターの一人Mikkel Høgh氏(mikl)、Drupal Association への不信任をブログで表明

3/27 「Drupalイベントに昔『奴隷』を連れて来ていた」というreddit上での指摘にガーフィールド氏本人が回答しています。この自閉症の女性とは合意の上で主従関係にあり、家に住ませていた時期もあると。プログラミングに興味を示し、Drupalのパッチ書きも手伝ってくれたが内向的で自分ではコミットしなかった、とか、シカゴ周辺のカンファレンスにいくつか連れて行った、とか

また、ガーフィールド氏自身にもCWGがDrupalのボードメンバーに渡した「証拠」は共有されていて、そこにはバイタルト氏らがほのめかすような秘密の証拠は含まれていなかった、と。それら「証拠」とされる過去のネット上での書き込み等でも、実在の人物を傷つけたりするような行為はまったくない、と反論しています。

[追記 4/14]

4/9 バイタルト氏のブログ記事「Drupalコミュニティへの謝罪」。「BDSMなどのコミュニティに属する人が攻撃されたと感じていたら申し訳ない」と語り、今回の件はガーフィールド氏個人についてのことでしかない、と。

ガーフィールド氏の事件については特に新しい情報はありません。

4/10 同ブログの次の記事Drupalのガバナンスを進化させるための次の一歩で、1. バイタルト氏一人によって何かが決定されないようにすること、2. 「行動規範(Code of Conduct)」をもっと明瞭なものに直すこと、が宣言されました。このためにオンラインおよびオフラインでのミーティングを開催するとのことです。
ガーフィールド氏の事件については特に新しい情報はありません。

4/13 100人を超えるDrupalに関係する起業家・役員・コアコミッター、オープンソース開発者らが、サイト DrupalConfessions.org(Drupalの告白) を公開。バイタルト氏に対しての意見を述べています。寛容と非差別を求め、ガーフィールド氏の内心を問題とし、違法に収集した証拠を基に追放したことへの抗議集です。「前の二つのバイタルト氏のブログ記事で書かれた対策で問題が解決するとは感じられない」とも語っています。「バイタルト氏が協力しないならば、この中の相当数はDrupalコミュニティを永久に去ると考えてもらっていい」との言葉も。

(続報があれば追記します)

考察

バイタルト氏は、「ガーフィールド氏がブログで自己弁護したところではない何か他の問題を起こしている」ように書いていますね。しかし、証拠は被害者に迷惑が掛かるので一般公開できない、と。

しかし、一般公開しなくても第三者に検証などしてもらわないことには、何の証拠もなくガーフィールド氏を貶めようとしているだけと言われても仕方がないところもあります。

また、バイタルト氏は、Drupal コミュニティの方針としてGorの小説内の価値観を受け入れられない、などと述べているところもあり、フィクションの嗜好で他人を罰するという問題に陥っているようにも見えます。いろいろな趣味嗜好を持つ人もいるであろうプログラマー界隈でこれに反発する声が上がるのも仕方がないのではとも思います。

via Slashdot

[メモ] Docker + Spress で静的サイトを作る

PHP製の静的サイトジェネレーター Spress を、Windows 上で Docker で実行しました。

ソース

PHP製の静的サイトジェネレーターSculpinを使ってみたのですが、開発が思ったほどアクティブでなさそうなのと、Spress が Sculpin の影響を受けた後継者である、みたいなことを言っている人がいたので、こちらも試すことにしました。

今回も、Docker Compose を使ったセットアップのメモを、Spress自身を使って静的ブログにしてみました。

SpressをDocker(+Compose)で動かす

しかし、日本語のタグやカテゴリーに対してファイルを生成しないので、非ヨーロッパ諸語に関してはSculpinよりも手入れが必要という印象でした。slugを作るところの関数が、UTF-8一般には対応しておらず、マッピングテーブルを使ってウムラウト等を消しているだけ。

明治150年だけじゃない! 毎年和暦のキリ番を祝いたい人のためのキリ番情報

今日のニュースより

菅官房長官は閣議のあとの閣僚懇談会で、「再来年は明治元年から150年を迎え、わが国にとっても一つの大きな節目だ。明治の精神や日本の強みを再認識することは極めて重要であり、明治以降の歩みを次世代に残すことが大事だ」と述べました。

官房長官 再来年の「明治150年」へ施策検討 | NHKニュース

2000年のときに江戸400年を祝った覚えないな。なぜ明治だけ?

はてなブックマーク – yamaisan のブックマーク – 2016年10月7日

年号はいっぱいあるのに、ってことですね。明治が好きで明治に戻りたくてしょうがない人が政治家に多いのかもしれません。

それはともかく、「年号はたくさんあるので、毎年何かしらキリのいい〇〇周年になってるのでは」と思い、計算してみました。前後10年ずつ20年分です。ソースコードはこちら

2006年(平成18年)は

2007年(平成19年)は

2008年(平成20年)は

2009年(平成21年)は

2010年(平成22年)は

2011年(平成23年)は

2012年(平成24年)は

2013年(平成25年)は

2014年(平成26年)は

2015年(平成27年)は

2016年(平成28年)は

2017年(平成29年)は

2018年(平成30年)は

2019年(平成31年)は

2020年(平成32年)は

2021年(平成33年)は

2022年(平成34年)は

2023年(平成35年)は

2024年(平成36年)は

2025年(平成37年)は

今年2016年は享保300年だそうです。暴れん坊将軍の時代ですね。そして、検索したら出てきました。享保300年を祝ってる人たち。明治だけじゃなかった!

造幣局 : 享保の改革300年2016プルーフ貨幣セット~貨幣の改鋳~の通信販売について

300年に一度の企画【享保の会 大感謝祭】開催のご案内 | ジャパントラディショナルカルチャーラボ

来年2017年は、応仁550年。応仁の乱も550周年というわけですね。

来年はまた、養老1300年でもあります。「養老」って年号だったんだ。関係ないけど養老の滝は今年60周年だそうです。

スーパー切りの良い年ということだと、来年の寛仁1000年や、2021年の治安1000年がとても切りがいいですね。「治安」なんて年号もあったんだ。

[メモ] Docker + Sculpin で静的サイトを作る

PHP製の静的サイトジェネレーター Sculpin を、Windows 上で Docker で実行しました。

ソース

サンプルのテーマを派生させて差分で日本語+自分用のテーマを作ろうとしたけど、theme の仕組みはまだ実験的です、とある通り、サンプルテーマもテーマ内のアセット読み込みに対応してなかったりまだまだでした。

セットアップのメモをSculpin自身を使って静的ブログにしてみました。

Home — Docker ComposeでSculpinを動かすブログ — ついでにサンプルテーマを日本語に

使えそうなら自分用で必要な Theme と Bundle を作っていこうかとも思っていましたが、他のツールも触ってみた方がいいかもという結論になりました。

ズンドコキヨシ問題をPHPとFSMで解く

先週一部で流行していたズンドコキヨシ問題

ランダムな結果の中から特定のシーケンスが出たら「キヨシ」を出し、終了する、という要件で、解き方はいくらでもあると思いますが、自分が考えたのは有限オートマトンを使ったもの

まずはPHPでFSMを扱っているパッケージを探します。PackagistFSM で検索。ダウンロード数が多いパッケージをいくつか見てみて、使い方が好みなものを選びます。今回は Stagehand_FSM を選びました。業務ならここでパッケージの中を精査するんでしょうけど、まあここでは省略します。


{
"require": {
"piece/stagehand-fsm": "2.4.*"
}
}

Composer で持ってきて呼び出します。楽ちんですね。


require 'vendor/autoload.php';
use Stagehand\FSM\StateMachine\StateMachineBuilder;

ドキュメントにありますが、ステートマシンのインスタンスを作り、状態と遷移と開始(や終了)を与えて動かすだけ。

ということで、与えるデータを作るために、次はズンドコキヨシ問題の遷移図を考えます。”online FSM editor”で検索すると、ブラウザで遷移図を描けるページが見つかりました。これは便利。

zundokokiyoshi_FSM
(間違いがあり、画像を差し替えました。@qckanemoto さんありがとうございました。)

あとは図を基に状態と遷移を与え、それぞれの状態で「ズン」や「ドコ」、あるいは「ドコキヨシ」を表示させれば完成です。

FSMを使う意味

今回のチャレンジを最短の手数で解くだけなら、必ずしもFSMみたいなものを使う必要はないでしょう。ただ、遷移図や遷移表みたいなものを書いて、それをただコードに落とし込む、というのは、抜けを減らせる安心感があります。

# 図を間違うこともありますし、コード化するときに間違うこともありますけどね。テスト書いてないので、業務レベルなら失格です

もし、キヨシが出る条件が頻繁に変わるとか、ズンとドコを使って新しい曲を作りたいとか、同じコードのデータ(遷移表)だけをさまざまに切り替えて別の動作をさせたいとか、そういう方向に仕様の変化が予想される場所なら、使うといいのではないかなと思います。ゲーム系のプログラマーはたぶんこういうの日常的に使ってるのでは。

あとは、描いた遷移図や遷移表からそのままJSONなりの定義が出力できて、それを直接食わせたら動くライブラリ、みたいなものがあると、もっと楽で間違いもないんだろうなあ、と思いました。さらに手間を掛けるならそういうツールやライブラリを探すか、作るかするんでしょうね。

Depressed? 自分が憂鬱かどうかをAPI提供できるオープンソースアプリ

AreYouDepressed は、自分の状態が鬱かどうかを知らせるためだけのサイトと、そのAPIを提供するためのソフトウェアです。

デモサイトにアクセスすると、鬱なら”Yes”、そうでないなら”No”が、色やバックグラウンドのアニメーションをそれぞれ変えて、表示されます。

is-evan-depressed-no

設置者には、4時間置きに指定したアドレスにメールが届き、”Yes”か”No”をクリックすることで状態が更新されます。

JSON APIで現在の状態や、

is-evan-depressed-api

最近の履歴を取得することもできます。

is-evan-depressed-api-all

メールだけでなく、管理画面から更新したり、状態を問い合わせるメールを送らない時間帯を指定したりする機能もあります。

is-evan-depressed-admin

PHPのLaravelフレームワーク上に構築されたアプリのソースはGitHubで公開されていて、自分用の同種のサイトを公開することができます。

鬱状態を広く世界に通知する以外にも、状態を伝えるという単機能のサービスとして何か使いみちがありそうな気もします。

https://depressed.evan.netsoc.co