Plone Symposium Tokyo 2015 参加レポート

第2回Plone Symposium Tokyo 2015―Day 2:開発スプリント&インタビュー編

Day 2:開発スプリント

スプリントには、海外からのゲストであるPlone/Zopeのコア開発者たちを含む15名が参加しました。ここではいち参加者である筆者(田原)の視点でスプリントの報告と感想を書きたいと思います。

スプリントは、基本的にはみんなで対象のソフトウェア(今回であればPlone関係のもの)の開発に関わる作業をするための集まり、といった感じのものです。前日のTres Seaver氏のゲストキーノートで説明があったとおり、新規の参加者たちを助けてこれからコミュニティーで活動してもらえるように応援することが一番大事で、あとは参加者から話しを聞いてコア開発者がそれを開発に活かす、そういう機会がスプリントです。

参加者が同じ部屋に居ても別々に作業しているだけだったらスプリントじゃないよ、ということですね。

写真1 田原悠西、Tres Seaver、Eric Steeleの3氏
写真1 田原悠西、Tres Seaver、Eric Steeleの3氏

そういったわけで、今回参加してくれたPloneやZopeのコア開発者の皆さんは、筆者を含む日本の参加者たちにたくさん時間を割いてくださいました。筆者自身はZopeの大量にあるライブラリー群のメンテナンスをしてくれているTresさんから、彼がどうやってそれらをメンテナンスして、テストの自動実行の仕方とか、リリースマネジメントをどうやっているのかなど、初歩的なところを含めて色々教えていただきました。

写真2 Sprintテーマを書いたホワイトボード
写真2 Sprintテーマを書いたホワイトボード

今回スプリントに参加して一つ気がついたことがあります。それは、コミュニティーの外にいる門外漢はコミュニティーの今の課題を共有していないため、どんな作法で対象のソフトウェアをメンテナンスしているのかを知らない。このため、たとえプログラミング的なことができる技術があったとしても、何をどんな作法でやればいいのかの基礎に触れるだけで丸1日経ってしまうということです。スプリントの場で海外から来てくれたコア開発者の方々と一緒にコードを書きたかった、1日しかないスプリントは物足りないなという気持ちになりました。1週間くらいスプリントをやることも海外では実は割と普通なので、日本でもそういうことができるようになるといいなと思いました。

スペシャルインタビュー

さて、ここからは開発スプリントの合間を縫って行ったスペシャルインタビューをお届けします。インタビューは寺田学、村岡友介、安田善一郎の3名が担当しました。

まずはゲストキーノートでお話いただいた Tres Seaver(トレス・シーバー)氏へのインタビューから。

Tres Seaver氏インタビュー

Tres Seaver氏は、Ploneを動かすための土台であるアプリケーションサーバーZopeの開発者で、このコミュニティ最大の貢献者の一人です。自身で立ち上げたAgendaless Consultingを運営しながら、現在もZopeと、WebフレームワークPyramidの開発に携わっています。Zopeの普及活動を行うZope FoundationのPresidentであり、またPython Software Foundationのフェローでもあります。

写真3 Tres Seaver氏
写真3 Tres Seaver氏
―― はじめに、Zopeの開発をはじめたきっかけを教えて下さい。

Tres:1999年に、多くのユーザがWeb上でコラボレーションできるような仕組みをつくるプロジェクトを手掛けたんだけど、これが始まりかな。zwikiという名前でこれを動かすためのプロダクトが後にZopeになった。

当時メンバー数が40~50人のメーリングリストがあって、そこで意見を交わしながら開発を進めた。Zopeという名前はこのメーリングリストのメンバーが提案したんだ。PythonでWeb上でコラボレーションをする仕組みを共同で進めるというのはとてもエキサイティングな体験だったよ。

―― いろいろなWebフレームワークやCMSがありますが、その中でZope/Pyramid の強みはなんですか。

Tres:PloneをはじめとしてZopeは多くの場合CMSのアプリケーションサーバーのような使われ方をしているけれども、決してWebのためだけのものというわけではないんだ。昨日田原悠西さんが発表した、ERP5のような統合型の業務アプリケーションの構築にも使えるし、CRMの事例もよく耳にする。

Zopeが向くのはこういう複雑なツリー構造のモデルを扱うこと。だから、ニュースサイトとか、大規模な社内イントラネットシステムなどが得意だね。

もしテーブルで表現できるならRDBを使うことを考えたほうがいいかもしれないね。

―― なるほど、ありがとうございます。ところでAgendaless(アジェンダなし)って面白い社名ですね。

Tres:このアジェンダは、ミーティングのアジェンダのことなんだ。

普通のコンサルティング会社はアジェンダを用意するけど、その中身っていつもコンサル会社が儲けるためのアジェンダであって、必ずしも本当に顧客のためになることが書かれてないことが多い。

昔、そんな経験をしたことから、私たちは本当に顧客のためになることを提供しよう、と話し合って「アジェンダなし」っていう社名にしたんだ。

―― そんな由来があるとは思いませんでした。素晴らしい!
―― 最後に、日本の読者に向けてメッセージをお願いします。

Tres:どんな人が読者なの?

―― そうですね、Pythonエンジニアで、Webに関わっていて、でもみんながZopeやPyramidのことを知ってるわけではないと思います。

Tres:よしわかった。Pyramidを使おうよ、と言いたいかな。

PyramidはFlaskやDjangoと同じようなフレームワークだけど、もっと柔軟性があって、より大きなサイト構築にも向いているんだ。だから、⁠小さく始めて終わりは大きく、そして終わったらそのままに」⁠Start small, finish big and stay finished)だね。

―― 終わったらそのままに、ですか。

Tres:そう。だって大きな規模のサイトをまたはじめに立ち返って作りなおすなんて嫌だろう?

―― 確かに。そのとおりですね(笑)。ありがとうございました。
写真4 Tres Seaver氏とインタビュアーの3人
写真4 Tres Seaver氏とインタビュアーの3人

Plone Foundationメンバーインタビュー

続いて、Plone Foundationからゲストで来られた3名の方へのインタビューをお届けします。キーノートを担当したPaul Roeland氏とEric Steele氏、⁠パネルディスカッション:大学教育とPlone」に登壇されたAlexander Loechel氏の3名がインタビューに応じてくれました。

―― お名前とFoundationでの役職を教えてください。

Paul:ポール・ローランド、Plone Foundationの代表です。

Alexander:アレクサンダー・ローヘル、Plone Foundationメンバーです。今は特にFoundationでの肩書はありません。

Eric:エリック・スティール、Ploneのリリースマネージャーです。

―― みなさん住んでいる国が異なりますが、地元でローカルなコミュニティ活動はされていますか。

Eric:アメリカのペンシルバニア州でState College Plone Users Groupというローカルユーザーグループを運営しています。メンバー数は15~20人くらいで、月に一度ミーティングをしています。ミーティングでは新しいプロダクトや機能の紹介をしたり、トラブルシューティングをしています。

Alexander:私はミュンヘンから来たのですが、いくつかのコミュニティが重なっている状況です。主なものはGZUG(German Zope Users Group⁠⁠、Plone Users Group、Python Users Groupの3つで、そのうちPlone Users Groupは毎月第2火曜日にミーティングを行っています。ドイツではPloneを使っている大学が多くGerman High Education Plone Users Groupという団体もあります。

Paul:私の地元のアムステルダムにもDutch Plone Users Groupがありますが、こちらは年に一度ミーティングを行う程度です。アムステルダムにはグローバルに活動するNPOの本部が数多くあるのですが、これらの団体のテクノロジー担当者のミーティングが月に一度開かれています。ここに参加するNPOの多くがPloneを利用しています。

―― NPO団体のCTOのミーティングというのはアムステルダムならではですね。ありがとうございます。
―― さて次の質問です。いつごろ、どんなきっかけでZope/Ploneを使い始めたのでしょうか?

Eric:2002年にとあるプロジェクトでPloneを使うことになり、それをきっかけにずっと関わり続けています。はじめて使ったのはPlone 2.0.5でした。

Alexander:私の場合は2004年、まだ学生だったのですが、学内でメインに使用するCMSの選定に関わりました。その際に、100以上の機能についてTypo3をはじめ様々なCMSを比較したのですが(⁠⁠ドイツだなあ」とポールから)最終的にPloneリリース1をフォークして使う事になりました。それが始まりですね。

Paul:2001年か2002年だったと思います。当時私はNGOでシステム管理者をしていました。Novell NetWareを使っていたのですが、古いしお金もかかるのでオープンソースで良いものがないか探し、Ploneにたどり着きました。

―― ありがとうございます。続いて、モチベーションという観点でお話を伺いたいと思います。Ploneコミュニティでの活動にコミットし続けるモチベーションはどこから来るのでしょうか?

Eric:コミュニティーの存在自体に得難い価値がある、ということに尽きると思います。いつも現実的でフレンドリーな人たちが集うコミュニティが作り出している、ということ自体が価値だと思います。私はここで生み出されたソフトウェアが本当に気に入っています。

Alexander:同じような回答になりますが、コミュニティの人、でしょうか。お互いをよく知り、信頼できる仲間が大勢います。彼らが相互に関わりあう中で新しいアイデアが生まれ、それがソフトウェアに反映されるということが、ここではうまく行われていると思います。

Paul:コミュニティ自体に価値を感じている、という点は全く同感です。

私自身のことで言えば、多くの恩恵を受けているPloneコミュニティに対する恩返しという側面もあります。

私が関わっているNGOプロジェクトでは18ヵ国にわたる250の組織でPloneを使っていますが、ほとんどコンピュータを利用したことのないインドネシアの農村のユーザでも、わずか2時間のトレーニングでシステムを使えるようになりました。他のソフトウェアを使っていたら、このようなことは実現できなかったと思います。

―― コミュニティの存在自体がモチベーションという点はみなさん共通しているのですね。NGOでの活用も大変興味深いです。
―― 次の質問ですが、Ploneで一番気に入っている機能について。またPloneが他のCMSより優れているところについてお聞かせ願えますか? まずは、機能について。

Eric:セキュリティモデルですね。特定のオブジェクトについてのワークフローがどのようにでも柔軟に設定できること。このページは誰でも見ることができるけど「ジムはダメ、嫌いだから」とかもできちゃう(笑⁠⁠。

(⁠⁠Dislikeボタンもつけるといいよ⁠⁠:byポール)

Alexander:管理画面と公開画面が統合されていることですね。あまりコンピュータに詳しくないコンテンツ作成者が多くいる場合、この点は非常に重要になってきます。管理画面が別になっていると混乱しやすいのですが、Ploneの場合は直感的に理解してもらえます。

Paul:コレクション。これに尽きます。

―― Ploneの優位性については?
写真5 Eric Steele、Alexander Loechel、Paul Roelandの3氏
写真5 Eric Steele、Alexander Loechel、Paul Roelandの3氏

(3者みな話し出そうとして)

Alexander:実際のところ、今はどのCMSも機能に大差はなくディテールの集まりで違いが出るのではないでしょうか。その中で選定の決め手になるのは、⁠自身のユースケースにあっているかどうか」だと思います。Ploneが大学など高等教育機関、政府、NPOでの利用が多いのは、それらの組織・団体のユースケースにあっているからだと思います。Ploneの優位性うんぬんよりも、ユースケースに適合しているかどうかが重要なのではないでしょうか。

Paul:全く同感です。私の場合はシステム管理者の観点になりますが、セキュリティとメンテナンスのしやすさという点でPloneが自分のユースケースに合っています。実は小規模なWordpressのサイトも5つほど運用しているのですが、セキュリティアップデートなどの手間は100以上あるPloneサイトよりも時間を取られています。

―― なるほど、わかりました。しかし、Ploneはどちらかと言えばあまり知られていないと思いますが。

Paul:確かに。これは、現在カバーできていないターゲットに対して、コミュニケーションできていないことが原因だと思います。今はこのエリアを担当するマーケティングセクションがありません。

また、Ploneは難しい、というイメージが先行してしまっていて、これを払拭することもうまくできていません。Plone3のころはカスタマイズが難しかったのは事実ですが、Plone4ではWeb画面ですべて変更が可能になりましたし、この部分はPlone5でさらに強化されます。サーバ環境についても仮想化が進んで月5ドルでPloneのホスティングが可能になっています。これらはいずれもイメージの問題で、マーケティングの強化は今後の課題と考えています。

―― ありがとうございます。確かにPloneは必要以上に難しく見えているような気がします。さて、最後の質問です。今後、日本のPloneコミュニティに期待することを教えてください。

Paul:2020年にPlone Conference Tokyoでしょ!(笑)

―― そう来ましたか。

Paul:はい、ぜひお願いします。そのために、というわけではありませんが、Plone Foundationは日本のコミュニティを育てるためにさまざまなお手伝いをするつもりです。たとえば、この10月に行われるPython Conference Japanに誰かスピーカーを派遣するといったことができると思います。私たちのコミュニティには、本当に良い人物が揃っています。人自体が最高のマーケティングツールと言っていいくらいです。

Alexander:新しく来る人を排除しないで、歓迎して、どんどん取り込んでいってください。リラックスして、楽しみながら入っていけるように。

Eric:今回の日本でのイベントは地域カンファレンスの初回としては大成功だったと思います。よくオーガナイズされていたし、発表内容は驚くほど幅広いし内容も濃かった。

Paul:本当にそうです。お茶の水女子大学での事例には感銘を受けました。その後のパネルディスカッションも素晴らしかった。

Eric:ぜひ、シャイにならずに国際的なカンファレンスに来て、日本でのこの素晴らしい取り組みを発信してほしいです。そして、助けが必要なときはなんでも言ってください。

Alexander:そう、そして、もっとスプリントをやりましょう! スプリントは本当に大事です。

―― ありがとうございます。とても貴重なお話が聞けたと思います。忙しい中、ありがとうございました。

一同:ありがとう。ブカレスト[1]で会いましょう!

写真6 Plone Foundationのみなさんとインタビュアーの3人
写真6 Plone Foundationのみなさんとインタビュアーの3人

おわりに

2回にわたってお届けしたPlone Symposium Tokyo 2015レポート、いかがでしたでしょうか。

インタビューを担当した筆者としては、Plone Foundationメンバーの「コミュニティの存在自体がモチベーション」という話は大変印象的でした。また「Ploneは機能の比較ではなくユースケースが適合するから選ばれる」という話もとても参考になりました。そして、言葉は違えど4名のゲストの方それぞれが「開発スプリント」の大事さについて何度も話されていたことも興味深く思います。

今回Plone単体での初めての国際イベントでしたが、多くの収穫があったと思います。これで終わらせることなく、Plone Foundationとのコミュニケーションも密に取りながら、日本のPloneコミュニティが育つよう、活動を続けたいと思います。

日本のPloneユーザーグループは月に一度Plone研究会を開催しています。最新の情報はhttp://plone.jp/に掲載されます。興味のある方はぜひご参加ください。

お申し込みはhttp://plonejp.connpass.com/からどうぞ。

もチェックしてみてください。

おすすめ記事

記事・ニュース一覧