勉強方法
Plone/Zope/Pythonの熟練者になるために、どのように勉強したらいいのかを書いています。実のところ最先端の情報技術分野ではこれといって定まった方法はありません。先駆者たちは検索エンジンでひっかかる文書を片っ端から読みあさったり、ソフトをいろいろといじくり回して覚えたりします。筆者らの主観に基づいた助言と思っていただければいいと思います。
Ploneの熟練者、自由自在に拡張したり変更したりできるようになるためには結局Plone/CMF/Zope/Python全域にわたって熟練者になる必要になります。それなりに長い時間がかかることでしょう。ですが悲観することはありません。PloneやZopeは非熟練者でもそれなりにカスタマイズできるのですから。
学習の段階
「Ploneのカスタマイズ」、あるいは「熟練度」にはいくつかのレベルがあります。
● レベル1:Ploneのユーザーインターフェースだけを使ってできるカスタマイズ
● レベル2:ZMI(Zope管理インターフェース)を使って「Ploneの部分」をカスタマイズ
● レベル3:ZMIを使って「Zopeの部分」をカスタマイズ
● レベル4:Pythonコードを書き換えたり書き加えたりするカスタマイズ
レベル1はPloneのユーザーインターフェースだけを使ってできるようなカスタマイズのレベルです。きちんとしたカリキュラムでトレーニングすれば1日で卒業することでしょう。
レベル2はZMIというZope管理インターフェースを使って「Ploneに関係する部分」をカスタマイズするレベルです。セキュリティの設定はここに入ります。このレベルでかなりの機能が実現できます。さらに数日程度かかるでしょう。
レベル3はZMIを使って「Zopeそのものの部分」をカスタマイズするレベルです。Zopeはかなり奥深いもので見かけは簡単そうだし、実際知っていれば簡単なんですが、Zopeの動き方と変数の意味を理解するのにそれなりに時間がかかります。それにZMIで設定できる範囲と内容は膨大です。ZopeBookの読破は必須でしょう。数週間はかかるのではないでしょうか。
レベル4は「PloneやZopeのPythonコード」をカスタマイズするレベルです。場合によってはcやJava等の外部プログラムを使う事もあるでしょう。これこそオープンソース製品の醍醐味であり、無限のカスタマイズを可能にします。このレベルに卒業はあり得ません。
現在のところ各レベル毎の教育プログラムはありません。雑多な方法で少しずつやっていくしかありませんが、文書を読みながら実際にパソコンで試してみるのが一番効果的です。手を動かして実際に入力したりボタンをクリックしたりして画面の動きを観察するとよりよく「動作原理」が理解できます。
日本語の文書やコミュニティ
● PloneBook 1.0日本語版がhttp://homepage.mac.com/tyam/jp/plonebook-j/にあるので、まずはとっかかりとして見てみるといいでしょう。もうじきPlone 2.0が出ようとしている現在では多少違うところもでてきていますが、まだまだ参考になります。
● Plone 2.0をベースにしたPloneガイドをPlone研究会が中心になって日本語で現在書いています。plone.jpサイトでできた部分から公開していますのでそれを見るのもいいでしょう。これを読んでいるあなたも何か書いて参加してみてください。
● Zope技術入門 ピアソン・エデュケーション 2002/7 3600円 Zopeを使ってサイトを開発するにはという観点から書かれた本です。実務的な技がいろいろと書かれているので、実際にサイトを開発しようという人にとって有意義なものだと思います。
● Zopeガイド 毎日コミュニケーションズ 2002/9 3200円 ちょっと古いバージョンZope2.5をベースにしていますがZopeが2.7になった現在でも内容はとても有意義なものです。Zopeのコンセプトや基本的な機能を理解するのに良い本です。Zopeを大局的に網羅的にカバーしています。
● Zopeパーフェクトガイド 技術評論社 2003/2 3280円 ご存知日本Zope界の大御所、mojix氏の監修した本です。実際のコードや図表がふんだんにあり、読みやすい本となっています。事例を多用した説明はWeb開発にとって有用でしょう。
● 初めてのPython オライリー・ジャパン 2000/9 3800円
日本のコミュニティに参加する
● JZUGに参加する。日本Zopeユーザーグループ(JZUG)が古くから活動しています。http://zope.jp/です。こちらのメーリングリストに登録するといろいろとライブな情報が入ってきます。1000人以上も登録している大きなリストなので何か聞くと大抵は何か返事があります。大丈夫、初心者でも噛み付かれません。:-) イベントも時々あるのでそれに参加するのもいいでしょう。Zope界は面白いですよ。
● plone.jpに参加する。私企業であるiccm inc.がPloneの発展と普及のために開設しているこのサイトです。登録会員には定期的にニューズレターを送る予定です。
● PZP友の会に参加する。http://sukima.ddo.jp/Plone/にはとても参考になるPlone/Zope情報がいっぱいあります。要チェックです。
● Zopeジャンキー日記 http://mojix.org/を見ると日本のZope界の様子がわかります。
英語の文書やコミュニティ
英語が使いこなせれば情報源は飛躍的に拡大します。
● The Zope Book 2.6 やはりこの本が最も重要な本でしょう。毎日コミュニケーションのZopeガイドはこの本の初期版を翻訳したものです。最新の2.6は大幅に内容が増えて500ページ近いものになっています。http://www.zope.org/Documentation/Books/ZopeBook/ からダウンロードできます。
● Plone Book 1.0 日本語訳の元となったPloneBook 1.0は、http://plone.org/documentation/にあります。
● plone.orgサイト plone.orgサイトは情報の宝庫です。http://www.plone.org/にアクセスして右上にある検索フィールドにキーワードを入れて探してみてください。Plone/Zopeの検索能力に驚くと同時に、何らかのヒントが見つかる事でしょう。plone.orgサイトのタブやナビゲーションボックスを使っていろいろと中を探索してみといっぱいお宝情報があります。
● plone.orgメーリングリスト plone.orgのメーリングリスト記事をアーカイブしているGmaneを探してみる事です。Gmaneはニュースリーダーのインターフェースを使ったメールアーカイブで、Ploneのメーリングリストに流れた過去すべてのメールを保管しています。ここでキーワードを入れて検索すると何らかのヒントが得られるでしょう。ブラウザで http://plone.org/development/lists/にアクセスして好きなテーマのところの Subscribe and post via news をクリックします。ニュースリーダーが起動し、ニュースとして過去のメールが表示されるはずです。もちろん事前にニュースリーダーを使えるようにしておく必要があります。もし答えが見つからなければこのメーリングリストに英語で質問を書いてみます。Users, Announcement, Documentation, Developers, Website, Archetypes, Internationalization, eduplone, CVS, Zope&CMFとカテゴリーが分かれていますから気をつけてください。時間は少しかかりますが大抵返事があります。
● plone.org IRCチャット グローバルPloneチームの日々のコミュニケーションはIRCチャットを中心に行われています。24時間365日いつも80から120人ぐらいが参加しています。ログを流し読みして開発の進捗を見るなり、質問して疑問点を晴らすなりとても役に立ちます。http://plone.org/development/chat/からリンクがあります。あるいは irc://irc.freenode.net/ サーバーにアクセスし #plone セッションに参加します。日本時間の夜から明け方にかけてが一番盛り上がってる時間帯です。
● zopezen.orgサイト http://www.zopezen.org/はPloneBookの大部分を書いたAndy McKayのサイトです。PloneやZopeに関する「重要な議論」がなされておりZope界ウォッチには欠かせません。
以上、他に知っていたらぜひコメントを付けて教えてください。内容に反映したいと思います。反映後はコメントを消去させていただきますので、あらかじめご了承ください。
