Open pne3 with_symfony
by Kousuke Ebihara on Oct 02, 2010
- 1,300 views
Accessibility
Upload Details
Uploaded via SlideShare as Apple Keynote
Usage Rights
© All Rights Reserved
Statistics
- Favorites
- 1
- Downloads
- 8
- Comments
- 0
- Embed Views
- Views on SlideShare
- 1,195
- Total Views
- 1,300
OpenPNE 3 with symfony ということで、 symfony を使ったオープンソースのソフトウェアについて紹介をします。
symfony でこんなことができる!という発表になって、 symfony ユーザがこの発表で増えたら嬉しいなと思っています。
よろしくお願いします。
OpenPNE 3 を作って、そのリードを勤めています。
あとこの PHP Matsuri のスポンサーである手嶋屋に勤めています。
Twitter のアカウントは @co3k で、これコウスケのつもりなんですけどみなさんよくコミケっておっしゃられるんですよね……興味があればフォローなどよろしくお願いします。あと、 GitHub は ebihara で活動しています。
それと symfony, Doctrine, Chiara_PEAR_Server にはパッチ提供をしていて、そのパッチが実際に使われています。
OpenPNE はオープンソースのソーシャルネットワークプラットフォームと言っています。日本では SNS エンジンと言った方が聞こえがいいですね。Apache ライセンスで提供されています。
PC と、日本のフィーチャーフォン、いわゆるガラケー用のインターフェースを持っています。
主にコミュニケーションのための機能が充実していて、非常に拡張可能です。
この図は、 OpenPNE が対象とする組織の一部をあらわしたものです。縦軸は組織の人数で下から上にいくほど大人数になります、横軸は組織の特徴で、左にいけば行くほどビジネス寄り、真ん中が日常生活、右がエンターテイメントです。
大企業、中小企業、学校、国際交流、宗教、政治、地域、家族、オンラインゲームやファンクラブ、そしてmixi, gree, モバゲー, facebook のような巨大なエンターテインメント向けのコミュニティサイトがありますが、 OpenPNE はどちらかというと特定の目的や属性を持って集まったグループに対してよりリーチしています。
OpenPNE 3 は 2009 年の 4 月から集計をはじめ、いままでに 6734 サイトで使われています。
いまのところ週におよそ 120 サイトのペースで増えています。
それから漫描きという、漫画コミュニケーションサービスと言って、参加者で自由に漫画を描いて投稿できる、ちょっと変わったサービスがあって、こちらも去年くらいから?サービスを提供していらっしゃいます。
それから、ゲームを主体としたいくつかの某コミュニティサイトでも、 OpenPNE が使われています。これらのサイトのうち、たとえばデイリー数百万から数千万 PV 、それから、会員数が数十万から数百万のものがあります。
また、 OpenID や OAuth、 OpenSocial や RESTful な Web API など連携のための機能も備えています。
ID や Email アドレスや OpenID などの複数の認証方法を使うことができます。
あと、不完全なところはありますが国際化も進んでいます。
OpenPNE はかなり柔軟に拡張することができ、機能追加はもちろん、認証方法を追加したり、スキン(見た目)を変えたり、既存のアクションやテンプレートの挙動を変更することもできます。
まずシステムが充分に拡張可能でなく、機能追加するのに本体を書き換える必要がありました。そうするとあまりユーザに使われないだろうと判断される機能追加や、統一的な UI を崩すような機能には消極的にならざるを得ません。多様なニーズに応えることができなかったのです。有用な機能かどうかという線引きは手嶋屋がやっていたので、ここの公平感も薄かったです。
また、独自フレームワークのドキュメントがなく、開発者を募ろうにもハードルが高く、こういう状況がソフトウェアの発展を阻害していました。
そして本当に柔軟で、コアの挙動もほとんどが拡張可能です。OpenPNE 3 ではこれまで symfony を書き換えることなく開発を続けています。
そして、豊富なドキュメントも魅力でした。 symfony のドキュメントを読み作法を理解してもらえればほとんどすぐに OpenPNE の開発に参加することができます。
信頼の置けるサポート体制も重要で、 symfony ではリリース時にメンテナンス期間を明示し、安定版での機能追加は一切おこなわれません。
また、 symfony のコアの挙動の変更や機能の追加をソースコードを書き換えずに拡張することで実現できました。
また、インストールにはモデル作成などのためにコマンドを叩かなければならないため、敷居が上がってしまいました。これも Web インストーラなどを準備することにより早急になんとかしようという動きがありますが、なかなか進んでいません。
それから、 symfony 1.4 があと二年でサポートが切れてしまいます。直近では問題になりませんが、いまのうちからどのように対処するかを考えておかなければなりません。
とはいえ、このなかにはいくつか重要な点があるものの、まあ一番上とかは symfony のせいではまったくないことだし、どちらかというとメリットの方がおおきくて、デメリットの方は……まあサポート期間は、ともかく、他はとにかく頑張り頑張りで解消していけるので、総合的に見ると symfony にすることによるメリットの方が圧倒的に大きかったなと思っています。