版2010

仕事っつーかソフトウェアの話ですよ。
随分前に、勢いでバージョン番号のあるあるネタを書いた。意外にいまだに飛んで来る人がちょくちょく居る。あれ9割は愚痴なのに、みんな苦労してんだな。ご苦労さんです。決して笑ったりなどしませんよ。先週、"CVS"っていうディレクトリが入りまくった.zipファイルを「最新版です」って貰いました。
あの話のちょっと前から、そういうことを人に教えたりし始めて今もそういう相談がくる。うちの会社は製品が出るのが半年〜1年くらいだので、もう10件以上は相手をしてきた勘定だ。で、あんまり付け足すほどのことはないんだが、いくつかわかったことがあってね。それをちょっと。

  • バージョニングルールは追加だけなら後からでもできる。だから最低限合意でき、あとは細かく追加していけばよいルールでやること。変更/削除は運用上トラッキングできなくなるので、実際は難しいか無理。ただし、追加と言ってもやたらとteeny以下を付け足すのはやっぱり無理なので程度を計ること。

まあこれは、前の話からも類推できますわね。で、本題はこれだ。ゲンヴァで一番めんどくせくて問題なのは「でもー、それってー、俺の思うイメージでは0.7でー」とか「ルビーでもー、奇数はー開発のー」とかいってるボンクラなんであるが、こういう文句をたれるボンクラ集合をBとして、

  1. バージョン1.0の法則: どのようなソフトウェアの、どのような番号体系にせよ、バージョン1.0が出るとBの元(ボンクラ)は半分以下になり、かつ、残った元はいわゆるMaintenance Line(1.0のメンテナンスリリース)とActive Development Line(2.0向けリリース)間における番号体系の区別だけに執着し、『イメージ』や『奇数』はどうでもよくなる。
  2. バージョン2.0の法則: どのようなソフトウェアの、どのような番号体系にせよ、バージョン2.0が出ると、Bは空集合となる。

まだ経験則ではありますので、追試(って)が待たれるところではあります。それにしても、バージョン2が出る、つまり、いわゆる「チョイ変」でもなく亜流(元ソースをコピって野放図に改変していき、本流とは別モノになったもの)でもなく、もちろんバージョン1の時点で「もうわかった。金輪際要らねえわおまえのコード」って言われたのでもなく(笑)、本流(trunk)とブランチだけでちゃんと管理してて「また頼むよ」ってところはあんまり多くないんだな(多かったら最初からBは非常に少なくて問題にならないはず)。うちは結構あちこちから来てるのにな。
あと、そもそもバージョン1.0までいけない、つまり、なんとなーく作ってなんとなーくやってなんとなーくリリースして「ああいい、もういいわかったわかった、じゃあそれ捨てといてはいはい」としか言われたことが無い人って、存外に多いんだなあ、とかね。いや面白いものですね。いいえ。
で、捨てられるのはお気の毒にしても、気になるのは最初のごちゃごちゃうるせえBだ。あれはなんで居るんだろうなと考えた。で、あれは「十代のセックス」なんだ。たぶん(オレ主観ですよ)。俺が知ったのはどこかにあったC++のヤツなんだけど、割と「Xは十代のセッックスだ」つー言い回しは他にもある。まあとにかく定番の、「ヤってみればわかる(のにゴチャゴチャと、)」っつーネタだ。
でだ。Bのヤツらはとにかく、1.0なりをリリースした、つまりヤったことがねえからうるせえんだろう、と思うようになった。1.0までヤりきる。最後まで。ぬかりなく。つつがなく。安全に。
だから、ヤりきれないITなDTの常として、「MacOSクンは相当ヤってるらしいよ」だの「Windowsクンって色々見た目変えてるけど、一人には一途らしいよ」だの「Javaさんはイメージ相当ヤってるでしょ、でもあのほとんどは軽い遊びなんだって」「Rubyはヤれてないよね。昭和のラブコメかっつー話」みたいな噂を鵜呑みにしてるんだろうな。
なんでもいいから一発くらいヤれや。