パスワードを忘れた? アカウント作成
13352 story

リリースは政治パフォーマンス? 164

ストーリー by mhatta
昔々あるところにリリース延期を繰り返していたディストロがありました 部門より

Anonymous Coward曰く、"オープンソースだと特にそうだが、ソフトウェア開発の現場の近いところ にいるとリリース作業を行うことが面倒くさく感じられてしまうもの。 CVS(SVN)から拾え、と言いたくなる時もあることだろうが、 Matz氏がふとRuby 1.8.5でのリリースエンジニアリングに関して 遅れても困る人はいないという言葉も含めたことからちょっとした 議論になっている。

これに反応したのは、mputの日記の リリースは政治パフォーマンスなんだよという項目だが、 ここではリリースを 「技術革新だけではどうにも解決できない儀式的・政治的要件から 行われているのである」とし、現代では 「儀式的な傾向はより先鋭化していると感じるし、儀式としての リリースがつつがなく執り行われるという事自体の重要性が増していると 思う」ということであり、リリースが遅れることは 社会的信用が目減りすることとしている。

これに対して、 Matz氏の反論では 「「期日通りのリリース」を選ぶか「期日は遅れるがいくつかバグが少ないリ リース」を選ぶか、だ。期日通りのリリースには社会的信用を勝ちえるという メリットがある。一方、バグにはその存在自身に社会的信用を失わせる働きが ある。」として、Matz氏としては後者の方を重視するとのことことだ。 リリースのタイミングは難しいものだが、妥協点?はどこかにあるのだろうか?"

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 要約すると (スコア:4, すばらしい洞察)

    by Anonymous Coward on 2006年09月08日 21時23分 (#1014855)
    “バグが取れるまでリリース時期を発表するな”
    ってトコですね
  • by Anonymous Coward on 2006年09月08日 23時16分 (#1014931)
    品質と納期の兼ね合いは、ケースバイケースが一般論だろう。

    rubyもかなり成熟しているようだし、今回のリリースを、
    「ただ使うだけ」のユーザが待ち焦がれているとはちょっと
    想像し難い。
    そうでないユーザはsnapshot版などでなんとかしてきた筈。
    つまるところ、リリース日を死守する意味合いは、この場合
    あまり見えない。

    つーことで、mput氏の意見に分がないように感じられる。
    mput氏の日記 [mput.dip.jp]も(スコア:-1, 慇懃無礼)だし。

    > はぁ。Ruby 1.8.0 のリリースから何も
    > 学ばれなかったようで慶賀の至りです。
  • 期日より頻度? (スコア:3, 参考になる)

    by akira_t_t (31146) on 2006年09月08日 21時16分 (#1014850) ホームページ
    ふつーに使っているだけのユーザだと、言語にしてもアプリにしても
    新リリース予定の機能はあらかじめ知っていても、リリース日は
    スラドで取り上げられてからリリースを知るなんて人も多いきがする。

    無論、新機能がxx日に使えるようになるから、それにあわせて開発プロジェクトを...
    っていう、つんだプロジェクトで働いている人は別だけど。。

    まぁ、陳腐化しない頻度でちゃんとリリースされてれば良いかなって思う。
    その頻度も難しいという話もあるけれど、、

    #仕事で新発売のチップのリリース日をあてこんで失敗したのは内緒。
  • もう、表題そのままですが。

    ある程度ならリリースの遅延はかまわないと思います。はい、ある程度にならね。

    それにしても今回はmputさんの感情的な文章のほうが、より問題なのでは? 彼、ことばづかいだけで読者に相当マイナスの印象をあたえてしまって、損しちゃってるいるように見えます。あえて子供臭い言いまわしを用いて炎上させて、訴求力を得ようとしたのかしら。
    としたら、スラドにピックアップされて見事目的達成。なんだか、私は、個人的に残念ですが。

    • by Anonymous Coward on 2006年09月08日 22時50分 (#1014912)
      彼の文章が感情的かはともかく、過去のことを持ち出して責めるのはいただけないよね。オープンソースプロジェクトの燃料が何かを知らないわけじゃないだろうに。北風と太陽じゃないけど、いい結果を出したかったら作者のやる気を引き出すのが一番なんだからさ

      今回の件に限れば、Matzだってパーフェクト超人じゃないんだから、苦手なものだってあるよ。彼がリリースエンジニアリングが苦手なことを認めた上で、誰かが補佐してあげるとかもっと前向きな方向に議論が進んで欲しいなぁ。
      親コメント
      • Matz以外にもザクザク仕事できちゃうひとたちが現われる、とか。いや、いまでも結構いるよね。

        Matzだけにやる気燃料(例;根拠無いけど「あんみつ」「大福餅」)とかを投下しても限界っつーもんがあるわけで、Matz本人以外の有志のやる気、も大事。

        とはいえ、もちろんMatz本人にやる気は常人の100倍以上あるでしょうけれど。なんてったって自分が作りはじめた言語なんだし。

        しかし、会社全体でRubyの発展に社会人として責任をもって寄与しつつ、それを自分の会社の業務にFeedBackできる会社が現れる。というのは、夢、だ、ね。(他の言語だと実例があったりするのかしら)

        親コメント
  • 慣習? (スコア:3, 興味深い)

    by stricting (30765) on 2006年09月08日 22時40分 (#1014905)
    私のいたゲーム製作会社は量産業者に出してから発売日を設定していました

    期日を切らないと出来ない、というのはどこから出た発想なのでしょうか?
    • Re:慣習? (スコア:1, 参考になる)

      by Anonymous Coward on 2006年09月09日 0時42分 (#1015005)
      市販品とかならともかく、オープンソースものならある程度リリースの目処が立った時点で
      リリース期日を決めても何の問題も無いと思うのだが。それを目処が立っていないのにも関わらず
      期日をアナウンスするということをやっちゃってるのが問題なんでしょう。

      市販品だとそれ売って食わないとならないから、期日ありきで逆算して物を作るというのはありがちだけどさ。
      親コメント
      • by stricting (30765) on 2006年09月09日 0時55分 (#1015016)
        リリースの目処…をつけるのは船頭か船員か乗客か。
        セルフ船頭多くして船が雲にでも乗りましょうや。

        ソフトウェアの生い立ちによる貴賎の話はまた別の機会に…
        親コメント
  • by kitakitsune (25416) on 2006年09月08日 23時37分 (#1014952) 日記
    「高度な技術的理由は政治的理由と区別がつかない」ということが、世の中たまにあったりします。
  • by esumi (15966) on 2006年09月09日 1時03分 (#1015020)
    問題は守れない納期を事前に約束するところにあると思うんですが。
    「マトモになるまではある程度納期が当初の約定より遅れても仕方ない」
    というのは、要するに当初の見積もりが甘かったという事でしょう。
    開発側が納品先への言い訳にしてはならない筈。
    バグのある状態で出荷するよりマシと開き直るなど、
    論点のすりかえに過ぎず、もっての外ではないでしょか。
    まず素直に当初の納期設定の甘さを認め、それについてちゃんと
    誠心誠意謝罪してから対応策として語るのが筋かと。事象を一般論化して誤魔化すなど、
    責任ある態度とは思えません。

    #とりあえずタレコミ見て「6年のノウハウがあります大丈夫です心配要りません」
    #とかいいつつ開始当初から大コケし、結局1ヶ月有償ベータサービスになってしまっている
    #どこかのMORPGとかが頭に浮びました。
  • リリース日=バイナリが配布される日というとらえ方が少なからずあります。
    UNIXなどの場合は「リリースされたソースコードをコンパイルして使うのなら、SVNとかから取ってきた方を使っても手間はほとんど同じでは?」という考え方もできますが、Windowsのように「バイナリでのソフトウェア配布が常識」の場合では、バイナリ リリースがないとユーザーを減少させる事になりかねません。
    • by typer (9666) on 2006年09月09日 17時34分 (#1015299) 日記
      FreeBSDですが、リリースにはちゃんと意味があります。
      ・リリース予定の1ヶ月程前には「コードフリーズ」といって、新機能追加を止め、デバッグ中心の期間を設ける
      ・リリース版は最低何時までセキュリティ対応を行なうかが明示される
      ある程度定期的にこのリリースサイクルを回す事により、安定性向上とバージョンアップ時期の予定を立て易くする効果があります。
      参考:http://sel.ist.osaka-u.ac.jp/~lab-db/betuzuri/archive/421/421.pdf [osaka-u.ac.jp]
      ちなみに、このリリースではアプリケーションの管理システムであるportsのフリーズも行なわれ、バイナリ版であるpackagesの作成も行なわれます。

      これを技術的に必要とみるか、開発工程の政治的理由とみるかってのはありますけど。
      親コメント
  • by fiercewinds (22740) on 2006年09月09日 13時01分 (#1015188) 日記
    結局、Ruby自体が巨大になったにもかかわらず、今だに旧態然としたリリースしているのが問題ですな。

    matz日記から [rubyist.net]
    • 8月半ばにリリースしようと決めたのは私だが、「キリがいい」という以上の理由はなかった。ので、遅れても困る人はいない
    • (snip)
    • 本気なのはコミッタやアクティブユーザのうちごく一部で、残りは本気でないというのが原因だと思う。この辺をどう徹底させるか。コミッタ全員が参加しているbasecampはある程度役には立っているが、それでも、一度もログインしていない人もいる今後のことを考えると、全員が進行状況が分かる手段が必要Wikiか? BTSか? それともグループウェアか?


    ツールに頼るまえに、まずはプロセスを見直すのがよろし。明確な目標もなく明快な計画もない。チームの誰も知らない。

    そんなんじゃ遭難するのがオチですな。
  • 宿題と同じ (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2006年09月08日 21時08分 (#1014844)
    期日を切らないと、なかなかやりませんよ。

    //ええ、私がそうです
  • by Anonymous Coward on 2006年09月08日 21時15分 (#1014848)

    現代では「儀式的な傾向はより先鋭化していると感じるし、儀式としてのリリースがつつがなく執り行われるという事自体の重要性が増していると思う」

    Oracle,Oracle~!

    #ごめんなさい、ゴメンナサイ、ゴメンナサイ!

  • とりあえず (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2006年09月08日 21時35分 (#1014860)
    http://www.atmarkit.co.jp/fwin2k/itpropower/admin-kun/008/adminkun008.html [atmarkit.co.jp]

    「がんばれ!アドミンくん」置いときますね。
  • PHP (スコア:2, 興味深い)

    by gonta (11642) on 2006年09月08日 23時09分 (#1014924) 日記
    PHPバージョン5のリリースが、某PHP関連企業の株式店頭公開と前後していたことは、この記事と全く関係のない話だろう。
    --
    -- gonta --
    "May Macintosh be with you"
  • 思うに場合によって種別が明確ではない様に見える時があるからからややこしくなるような気がする。

    信頼できるマイルストーン(stable)
    最新の機能の提供(betaもしくはdeveloper,unstable)
    定期リリース(nightly,weekly,monthly)
    機能は入るが、互換性があるもの(あえていえばfeature?)
    互換性がある程度あるいは完全に無くなる直前(同上でsplit?)
    問題点とくにセキュリティや危険な動作の修正(bugfix)

    どこまでやるかによるでしょうが、ユーザー層によって必要なレベルが違う気がする。

    ただ日時を守るのは定期リリースでしかないし、機能提供で不安定はstableじゃない。
    でも非互換が出たらそこまでで区切ってリリースも必要だけど。
    bugfixを指して新リリースも違う気がする。

    でも、なあなあになるといけないからstable目標日時はあるべきだし。

    次のリリースはどんなもので、目標の内どれだけを達成したらリリースするかが明確だったらいいんだけども。

    # 普通に必要なのはstable + bugfixだと思うので、
    # 自信が持てないならbeta + bugfixのバックポートにするほうがよい気がする。
    ## いやまあ、大変なのはわかるんですが

    でもこれはただの愚痴になっちゃうか。

    # ここでWindowsのSPを話しに入れると、フレームかなぁ...
    --
    M-FalconSky (暑いか寒い)
  • by Anonymous Coward on 2006年09月09日 1時35分 (#1015033)
    これって元々の話は、スケジュールと品質の妥協点を探る中で、Matz氏とmput氏に意見の相違があったという話ですよね。
    実際にコードを書いているプログラマーであるMatz氏が、品質の方を重視するのはそりゃ当然の話であって、RubyがMatz氏のものである限り、最終的にMatz氏の意見が通ってしまうのはどうしようもありません。

    ここで、RubyがMatz氏のものであるのは何故か?という事を考えてみます。
    それはMatz氏がコードを書いたからではありません。Rubyがオープンソースだからです。
    商用プロダクトは対価を得るために社会的な信用を必要としますから、スケジュールと品質の妥協点を見出す時に、
    ・問題を完全に解決するスマートな方法よりもスケジュールを優先した間に合わせの方法を採用する
    ・重要度の低い問題を出荷時の制限事項とする
    等の方法で(まあエロゲのような例外はありますけど)スケジュールを重視する事がよくあります。
    しかし、これはMatz氏のような職人気質のプログラマーのプライドを挫く行為です。言い換えればMatz氏にとっての「イヤなこと」です。
    Matz氏は、Rubyをオープンソースにする事で、対価を得ない事と引き換えに社会的な信用の必要性を減らし、品質に対する妥協を可能な限り減らす事を可能にして、開発のモチベーションを保っているというのがここまでのまとめです。

    さて、RubyはMatz氏本人が「先立つモノ」が必要だという事を認める程大きくなりました。
    Matz氏が今回「先立つモノ」として念頭に置いているのは「お金」である事は、ご自身の日記のコメントに記載されています。
    しかし、Matz氏が念頭に置いているのは、「出資金」なのでしょうか? それとも「募金」なのでしょうか?
    スケジュールをまともに守れないモノに出資する奇特な人はあまりいませんから、「先立つモノ」は募金的性格を持つものになるだろうと私は予想します。

    出資を求める事で、品質を妥協するようなイヤなことも我慢して粛々とやるのが我慢できないから募金的性格を持つ「お金」を集めて人を雇おうというのがMatz氏の主張であるというのが私の結論です。
    これは少なくともビジネスと呼ぶには値しない活動です。
    「なかなか実現しない」のは当然だと思います。

    • by matz (2690) on 2006年09月09日 1時53分 (#1015040) ホームページ
      いやいや、Rubyをビジネスで利用しているところを口説いて、リリースマネージャを雇わせよう、というのが私の目論見です。
      途中までは話が進むんですけどねえ。
      --
      まつもと ゆきひろ /;|)
      親コメント
      • by tt (2867) on 2006年09月09日 4時36分 (#1015094) 日記
        本職のリリースマネージャ、いいっすよねえ。gcc-mlにおけるcodesourcery社のMark Mitchellさまの発言とか見ているとかっこよさに惚れます。彼にとっては仕事だから当然なのかもしれませんけれど。gcc2.xのころが嘘のようにきっちりとバージョンアップしていきますし。まあ、gccみたいなのが頻繁にバージョンアップするのはそれはそれで辛いんですが(苦笑)。

        具体的な発言へのリンクを見つける元気がなかったのでAC、にしようと思ったけど同じくリリースマネジメントに悩むオープンソース関連者のはしくれとしてIDに。

        --
        -- Takehiro TOMINAGA // may the source be with you!
        親コメント
  • by Anonymous Coward on 2006年09月09日 4時10分 (#1015086)
    リリースエンジニアリングと互換性の話をごっちゃにして語ってる人が多いけど、本質的には別の話なはず。それともわざと混同してます?

    仮にRubyに専任リリースエンジニアが付いた所で、非互換な変更が減るかというとそうじゃないでしょう。「以前のバージョンと非互換な変更が入る度に細かくリリースし、それに対してバグ修正のみをバックポートしていく」というリリースポリシーはありかもしれませんが、それによって得られるのは「相互に互換性の無い古いバージョンがやたら増える」というだけのことで、ユーザーから見てあまりメリットがあるとは思えません。寧ろ混乱が生じて害ですし、それによって開発リソースが複数のバージョンに分散します。

    「互換性の無い変更をするな、俺は昔のバージョンを使い続けたいんだ」という人は
    • 文句だけ言ってないで自分でその古いバージョンのメンテに必要な人的リソースを捻出する
    • 諦めて自分のスクリプトを修正する
    • 開発ポリシーが自分に合った他のスクリプト言語を使う
    しか選択肢がないと思うんですが…

    「すぐに『嫌なら使うな、forkしろ』とか言うな」と叩かれそうですが、そういう人たちの論調って「俺はMatzを説得も出来ないし自分で問題解決する実力もないから愚痴って粘着してるだけですが何か?」と言っている様に聞こえるんですよねえ。
  • ところで (スコア:2, すばらしい洞察)

    by Anonymous Coward on 2006年09月09日 12時38分 (#1015175)
    Rubyのリリースにどういう期待をしていて、それが遅れたり早まったり
    すると問題になってしまうようなユーザサイドの人はいないのですか。

    つーかいないからこんなタレコミが記事になるのか…。
typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...