• GemSpec.infoのコンセプト
設計するに当たって、コンセプトをまとめてみました。
FreeMindというマインドマップを描くためのツールを使ってアイデアをまとめているのですが、そのままの形で公開するのは適さないので、このWikiに内容を書き出します。(Twikiへのエクスポート機能を使っているのでなんか表現方法が変ですが・・・)



need

     * Gemの作者にとって
        * 利用者からのダイレクトフィードバック
        * バグ情報
           * 人によるかも知れない
           * でも、他のライブラリの影響で動かないとかは避けたいと思う
        * 次期機能要求
        * パッチ
        * 告知やアナウンスなどの一元化
     * 利用者にとって
        * Gemの用途別使い分け
           * このGemは何が出来るか
           * 同じ用途のGem同士ではドコが違うか
        * 障害情報
        * (Gem作者の)公式サイトはどこ?
        * 使い方の例やFAQ的なもの
           * PHPのオンラインマニュアルぐらいコンテンツが揃えば使いやすい
        * 情報が集約されれはココだけ探せば欲しい情報が手に入る
     * オープンソースとしての意味
        * 新技術を試したりリファレンス的に使う
        * 設計資料が揃った青果物の例として使う
        * ワールドワイドで使うアプリケーションの叩き台として

集約

     * メンテナンスされている度合いをわかりやすく表示
        * メンテナンスされてないGemはRubyやRailsなどのバージョンアップに伴い動かなくなったりする
        * 動かないまま放置されているGemもある
     * 障害情報の共有
        * RubyやRailsのバージョンアップなどで、たびたび動かなくなる
        * 原因やパターンがあると思うので、情報収集用Gemを作って、情報を集める流れを作ってしまえば集まるかも
     * Gemの使い分けに対する指標
        * 逆引き的なもの
        * 重複した機能を持った場合
           * 使い分けがあるならそれを示す
           * 同一機能ならレーティングによって使い分ける
        * レーティング
           * 5つ星スタイルでログインユーザだけから受け付けると、数が集まらずに偏る
              * 半強制的にレーティングしてもらう?
           * 1行メッセージ風にメリットとデメリットを集計しても良いかも
        * 1行でまとめる
           * このGemは何?
           * 何が嬉しいの?
           * どこに注意すればいい?
     * 使えるGemと使えないGemを分別する
        * 使えないGemとは
           * 機能が他のGemと被っていて
           * 開発が途中で止まっていたり(または動作不能だったり)
           * 全機能が他のGemで代用可能なGem
        * 数が多すぎて1つ1つ追うのは無理
        * RubyForgeだと検索機能も弱い
     * とっかかりとしてのGemの使い方を紹介
        * 突っ込んだ部分はソース嫁でいい気がする
        * オンラインで使い方を募ると集まらない
           * AdobeのFlexオンラインマニュアルは集まっていない
           * トラックバックとなどを受け付けるといいかも
           * 参照URlを入力してもらうと良いかも
           * オンラインでも一応受け付けた方が良いかも
        * GemCastsだけは別枠を設ける
     * Gemに関する情報の受け皿を用意
        * 受け皿があれば
           * 自分が使ったり、手の空いたときに情報を蓄積できる
           * 名が知れるにつれて情報が集まる
        * gem list -rとかで簡単にリストは作れそう

検索

     * 日本語で実用的な検索機能の提供
        * RubyForgeの検索機能が弱くて探せない
        * 必要だと思われる機能
           * 日本語での全文検索
             *そのGemにひもづけられた情報全てが対象ランキングの計算が複雑かも
           * Gemの中身(ソースなど)の全文検索
           * ライセンスでの絞り込み
           * レーティングでの絞り込み
           * Gemの最終更新日時での絞り込み
     * 全文検索機能は言語依存するかも

ワールドワイドシェア

     * このシステムにおける設計から運用までを世界中と共有
        * おそらくまだこういうシステムはないので、オープンソースにしてシステムやデータを共有すると面白いかも
        * 言語圏毎にサイトを作って、レーティング情報などは集約した方がいいかも
        * スパムの払い方をどうするか
        * 設計資料はブログで公開
        * ある国では情報が少なくても、同じシステム前提なら、ドメインだけ管理して他の国のコンテンツにとばしても良いかも
     * 言語が違うとコンテンツを共有できないので、言語毎にサイトを作る
     * 言語に依存しない部分は共有して情報を集約する

ユーザ毎のお気に入り管理

     * 興味はあるけど今は使わない場合のメモとして
     * Gem作者だけおこなえる管理機能があるといいかも

過去バージョンについて

たぶん、後でまたアップデートされるでしょうが、その都度最新版をアップするので、過程を知りたい方はFreeMindを使って見てください。

FreeMindについて

FreeMindの0.90Beta20を使って描いてます。
ダウンロードするならこちらからどうぞ

コメント

+ タグ編集
  • タグ:
  • gemspec info コンセプト

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2008年09月10日 04:12