sunday-labの日本語訳版です。英語版のXOOPS Cube関連記事を翻訳作業中...

2008年3月15日土曜日

GET INVOLVED!!

XOOPS Cube というモノは、プログラム、デザイン、ドキュメント、デバッグ、テストいずれも有志によってまかなわれています。開発の進行スピードや安定度は有志の頭数に左右されるといっていいでしょう。 "GET INVOLVED" とは「参加しよう!」という英熟語で(お前ら巻き込まれろ!ではありません)、オープンソースのプロジェクトではよくみられる合言葉です。

XOOPS Cube はアナーキズム(権威を可能な限り廃した自由)を念頭に置いていますが、これはセントラリズム体制をとっていたXOOPS財団へのカウンターとして用意した言葉であり、 XOOPS Cube がやっていることは他のオープンソースと大きな違いはありません。

ただ、最近、(特にIT関係では)財団や企業がきっちりソフトウェアを仕上げてリリースするケースが少なくないため、完全な市民レベルの活動である XOOPS Cube の運営がピンと来ないユーザーさんも多いかもしれません。大枠はプロジェクト Wiki の GET INVOLVED にまとめられていますが、これは英文の翻訳の枠を出ないため、このエントリでは日本の習慣やこれまでの XOOPS の経緯を踏まえた上で知っておいて損はないことをまとめておきたいと思います。


開発者には誰でもいつでもなれる

日本の XOOPS 周辺では開発者=プログラマという感覚がかなり強いようですが、デザイナはもちろん、ドキュメント、テスト、バグレポートなどに関与するすべての人が開発者になります。もともと「開発者(Devloper)」はモノを作り上げたり発展させていくすべての職分を含んでいます。

たとえば、ゲームのビジュアルさんはゲーム"開発者"ですし、ゲームの企画さんもゲーム開発者ですし、デバッガーさんもゲーム開発者です。対外的にはゲーム開発者で、そのくくりの中に職責や職分があると考えてよいでしょう。

開発者とは特定の集団や管理者の承認によって取得する「資格」ではありません。できそうなことをやってしまえば、誰でも開発者になることができます。


ボランティア活動≠奉仕活動

XOOPS Cube はボランティア活動によって維持されていますが、 XOOPS Cube のボランティア感は、邦訳として使われがちな「奉仕活動」とはニュアンスが異なっています。私達は別に利他的な目的でユーザーやコミュニティに宮仕えしているわけではなく、ビールを飲みたい時にビールを飲むように、好きなことをやっているだけです。感謝されることもなければ、別に何か義務を背負わされることもありません。

XOOPS Cube の日本語では「有志」という言葉をボランティアの対訳にあてています。


スタッフはリリースごとに

XOOPS Cube プロジェクト自体はチーム制度をとっていないので、固定スタッフはいません。リリース毎に開発に関与した人の名前をリスト化して ABC 順にまとめて発表しています。このリストは、長いためか xoopscube.jp のニュース文には含まれていませんが、 xoopscube.org のリリース文や、 sourceforget.net でのリリース文で確認できます。



また、 XCL 2.1.4 からはチェンジログに含まれることになりました。


チーム制度がないことはスピーディなチーム制度と同じ

チーム制度がないというのは、単に対外的なチーム制度をとってないという意味で、やっていることは他のオープンソースとまったく一緒です。

チーム制度の場合、セミリタイア(非常勤化)した人はチームから抜け、手が動かせる人に新たに入ってもらう形で運営すると思います(えてして人間関係がそうそう事務的な展開を許さず、こじれますが)。下の図のように、セミリタイアした人には何らかの規則か事務手続きか、あるいは投票か、あるいは直接交渉するのか、幽霊メンバーとして留まらせるのか、ケースバイケースでしょうが、チームから抜けます。そして必要な人数分は、またどういう基準でやるかはプロジェクト次第でしょうが、志願者からチョイスしてチームに入ってもらいます。



XOOPS Cube の場合は、セミリタイアした人は自動的に作業に参加しませんし、手が動かせる人にはいつでも参加してもらうというスタンスです。それを図にすると下のようになります。単に枠組みが無い(チーム制度が無い)だけで、やっていることは同じですが、こちらのほうがスピーディです。セミリタイアした場合、自動的に作業に参加せず、復帰した場合も特になにもなく自動的に作業に復帰できます。



もちろんこれは XOOPS Cube の特殊なやり方というわけではありません。むしろ星の数ほどあるOSSでは、 XOOPS のようにプロジェクトやチームに関してフォーマルな感覚を演出しようとする運営体制の方が少数派といえます。


Legacy

Legacy は XOOPS2 の互換を可能な限り担保するための Base で、独自の発展は基本的に行いません。専門チームは上記の通りなく、担当メンバーの概念もありません。独自の発展は、有志がこの Base から交換可能な派生 Base を作成し、担当者としてチャージして進めるという進め方を前提としています。 Legacy は派生の作成に影響しそうな点やバグの修正を積極的に行っています。


開発への参加

XOOPS Cube に限らず、ほとんどのオープンソースでは、有志というものは「増やす」ものではなく、「増える」ものだと考えています。市民が市民を拘束して、活動に加わることを強制することはできませんからね。 (^^;
開発は全面的にオープンになっていますので、いつでも参加してください。ほとんどの作業はすぐに始められると思いますが、システム上の権限が必要であればコミット権を「手続き用トラッカー」から申請します。コミット権取得に関する情報も GET INVOLVED に書かれています。


プロジェクト

XOOPS の本家では、XOOPS にまつわる存在は基本的に中央の管理下に入らなければいけませんでした。 XOOPS のコントローラに反したものは、公式サポートサイトの看板を取り上げたり、情報サイトを独自に立ち上げると、 *.xoops.org への集約を乱すものとしてフォーラムで問題視されるなど、かなり官僚的な体制になっていました。個人的によく覚えているのが、 xoops.org へ批判的だったという理由から、ブラジルの公式サイトを別のサイトと交換したうえで、公式アナウンスで"旧"ブラジル公式サイトをさんざんなじったことでした。
e-XOOPS ブランチのときもまともではなかったと聞いていますが、ともかく海外のプロジェクトとしては珍しく、体面上の一体感を強要してくるプロジェクトです。



他方、 XOOPS Cube のほうは、当たり前のことですが、XOOPS Cube プロジェクトの範囲内に加わるかどうかということと、 XOOPS Cube の有志活動者であるかどうかということは、別の話です。プロジェクト自体、全体の活動の一部でしかなく、プロジェクトのフォーラムで活動することも、ローカルコミュニティで活動することも意味するところは同じです。



旧 XOOPS は完全に逆の考え方を持っていたため、 sf.net Wiki などではいろんな場所でこのポリシーを説明しています。そういった要素を分かりやすくアナーキズムと総括しているのですが、そもそも sf.net プロジェクト単位を勢力とみなして陣取り合戦をする人たちのほうが珍しいですから、別に XOOPS Cube が何か特殊なことをやっているわけではありません。 XOOPS との対比のために、 Third party や official といった言葉を無くして、みんなでリハビリを行っているのです。



なんにしても、みんな9時-17時の仕事をしているわけではありませんので、開発が主目的の人でも一日30分〜1時間、月累計20〜30時間程度調達できれば御の字でしょう。フルタイム2〜3営業日ぶんくらいです。ひとりひとりはその程度の動きしかできないわけですから、多くの人が参加して全体としての作業時間を大きなものにできるかどうかです。

もちろんサイト管理者の方は、まず自分のサイトをしっかり運営することが第一で、余裕がある時にテスト版を自分のサイトで試したり、バグをレポートしていただければ十分です。それができれば XOOPS Cube 以外のオープンソースプロジェクトにもどんどん参加できるでしょう。

0 件のコメント: