«前の日(06-10) 最新 次の日(06-12)» 追記

Matzにっき


2003-06-11

_ [OSS]タダ働きが世界を動かす

essaさんによるわかりやすい解説。

しかし、私の文章はターゲットが明確でないのか。もうすこし検討の余地があるなあ。 実際には「開発者」と「中間層」しか対象にしてない文章でも 「エンドユーザ」的立場で読むと違う印象を与えるかも。

_ [XP]『エクストリーム・プログラミング入門』

というわけで、あらためて『XPエクストリーム・プログラミング入門』を読み返す。 少々泥縄ぎみ。

最初読んだ時には、えらいわかりにくいなあと思ったが、今回はわりとすんなり頭に入る。 「入門」とは書いてあるが、きっとある程度の知識と経験を要求する本なのだろう。 だが、このわかりにくさは翻訳のせいではないかと疑う。原書は読んでないけど。

『オブジェクト指向入門』ほどタイトルに偽りがあるわけではないが。 そういえばこれも翻訳の問題だ(原題は『Object-Oriented Software Construction(オブジェクト指向ソフトウェア構築)』。全然入門じゃないじゃん)。

_ [日記]ハッカーとしての立場

社内MLで

オープンソースの話をしてる時には、Hackerとして発言しているつもりはないです

と書いたら、「Matzにっき」はHackerとしての立場で書いてるんじゃないの、と聞かれてしまった。

えーと、この日記は「Matzの日記」つまり私のいろいろな側面を反映してます。 Hackerとして書くこともあれば、父親として書くこともあります。 オープンソースのことを書いてる時には、 オープンソースエバンジェリストのつもりでいます。

エバンジェリスト(伝道師)といいながら、実際問題、上手に宣伝活動ができてるとはいいがたいけど、 すくなくとも話題を提供し人々に考える機会を与えることには成功したかも。 オープンソースに悪い印象を持つ人も出たみたいだけど。涙。

_ [OSS]立場による言葉の使い方

反省すべきは、私が文章を書く時に対象にしている相手の立場がはっきりしていなかったことだろう。 実際に予想以上にいろいろな人が私の文章を読み、いろいろな印象を持ったようだ。

で、私が「オープンソース」という単語に対してどのように接してほしいのか、 ということを立場ごとに書いてみることにした。これはもちろん私の希望であり、 強制されるたぐいのものではない。

また、あらゆる立場を網羅することは不可能なので、典型的な3つだけを考えてみた。

エンドユーザ

つまり、オープンソースソフトウェアのユーザである。 オープンソースソフトウェアを単に利用するだけで、別に開発に参加しようなんて考えてない。 タダなのはありがたいなあと考えているくらい。

このような人に対して期待することは 「オープンソース」ってのは単に「ソースを公開」以上の意味があるんだよ、 ってことだけ理解してほしい。OSDを理解する必要なんてない。 「それ以上」がどの程度かなんて知る必要もない。 「+α」の部分があることを知ってもらうだけで十分だ。

開発者

ソフトウェア開発者にはもうすこし理解してほしいことがある。

それは自分のソフトウェアを一般に配布する時には、 バイナリ配布の無料ソフトウェアでもなく、 独自のライセンスのソフトウェアでもなく、 OSD準拠のライセンスを持つオープンソースソフトウェアにする方が結局は有利だ、ということだ。 これだけでいい。

なぜそうなるのかについては、これからおいおい「啓蒙文書」を書いていこうと思う。 とりあえずはEric Raymondの文章を読んどいてくれ。

中間層

「中間層」ってのは前にも説明した通り、開発者とエンドユーザをつなぐ役割の人のことだ。 たとえばディストリビュータだったり、システムインテグレータだったり、 シンクタンクの人だったり、官僚だったり、ベンチャー企業の人だったり、IT関係の記者だったり。 ベンチャーキャピタリストは...、入らないかな、もしかして。

そういうような人には期待することがひとつある。ひとつは、OSDの存在を理解してほしいことだ。 中身を完全に理解する必要はない。存在を忘れないでほしいだけだ。 ただ、「オープンソースとは」なんて説明をするときには自分勝手な定義を人に紹介しないで、 OSDへのリンクを張ってほしい。少なくとも「ソース公開+α」であることだけが伝われば良い。

中間層にはこの期待に応える理由がある。前にも言ったが「オープンソース」という単語は道具である。 そして、それは誰のための道具かというと実は中間層にとってもっとも有効な道具なのである。 オープンソースって単語に残っている「今までと違う」イメージは、 キャピタリストからお金を取ってくるのに役立つかもしれない。 潜在的顧客に自分の優越性を印象づけるのに役立つかもしれない。

そのような道具の効力を維持するためには「オープンソース」という単語に なにか不思議な「+α」があると思わせておく(って実際にあるんだけど)必要がある。

わざわざ自分の道具を捨てる必要はない。

これなら「OSD原理主義」などとみなされることはないかな。 べつにどう見なされてもいいんだけど、OSDに関しては原理主義じゃないしな。

私は開発者としてはフリーソフトウェア開発者で、 フリーソフトウェアであればOSDなんてどうでもよいと思う気持ちもある。 でも、まだ残っている「オープンソース」というコトバの効力を失わせず、幸福の総和を増やすためには この程度のことは最低限必要だろうと思っている。

_ [OSS]気持ちだけオープンソースソフトウェア

世の中には、ほとんどオープンソースソフトウェア (この場合は「ほとんどフリーソフトウェア」といったほうが良いかな)でありながら、 微妙な条件によってオープンソースソフトウェアと見なされない 「気持ちだけオープンソースソフトウェア」というのがある。

たとえば、バイナリの再配布を許さない *1 qmailなどのdjbソフトウェアや平和利用に使用目的を限るHORBなど。 原子力関係には使うなってライセンスもあったな。 うちの会社がかかわっているORCAプロジェクトもOSD準拠でない(精神は満たしている、らしい) ライセンスになっている *2

そういう条件を付けたいのは本人の気持ちや事情の問題ではあるし、 なんとなくわからないでもないんだけど、 そういう条件のない「普通の」ライセンスにした方が、エンドユーザもコミュニティも中間層も楽になって、 幸せの総和が増えるんじゃないかと思う。

*1  djbソフトウェアのバイナリ配布が禁止されているわけではないそうです。制限があるだけで。条件が難しいことには変わりないけど

*2  ORCAプロジェクトはライセンスの次のバージョンを用意していて、そっちはOSD準拠になるそう

_ [言語]手話

手話による勉強会に参加する。あれはすでに別の言語だ。全然単語が覚えられない。

今日覚えた単語

  • 食べる
  • 見る
  • 分かる
  • 良い/悪い
  • その他いろいろ。

しかし、きっとすぐに忘れてしまうだろう。というか、もう忘れているものもあるな。

本日のツッコミ(全4件) [ツッコミを入れる]

_ Lef [僕の周囲にいる中間層と開発者、そして開発者予備軍の人達は、今回のことで「オープンソース」という言葉から離れてしまった..]

_ ま2 [僕は逆に今回のことではじめてに「オープンソース」のことを考えました。今回の騒ぎ?がなければOSDについても知らなかっ..]

_ naruse [> タダ働きが世界を動かす 中間層向けにはなかなかよさそうですね。 歴史から今の問題まで触れているのがいいです。 「..]

_ naruse [あ、あと正直な話、 既存ライセンスを自分のライセンスに適用する方法がどうもいまいちわかりません。 GPLはGPLの写..]

[]

2004-06-11

_ 読者プレゼント

引っ越しの片付けにともなって、昨年のRuby Conference T-Shirtの余分が出てきました。 Conference幹事の黒DaveことDavid Alan Blackから余りをもらったもので、新品未使用です。

前面には左胸の位置にハート型のRubyとRuby Conference 2003 Austin, Texasの文字、 後面にはテキサス州の形(に切り抜いたRubyのメソッドリスト)とRuby in the heart of Texasの文字が入っています。 Ruby Conference 2003出席者にしか配られていない限定モノですので、 日本では私を含めて2名しか持っていないはずです。

このRuby Conference 2003Tシャツ3枚をこの「Matzにっき」読者の方、抽選で3名にプレゼントしたいと思います。 サイズはXLが2枚、Lが1枚です。サイズはアメリカサイズだということにご注意ください。

ご希望の方は、

  • お名前(発表に使うハンドルも)
  • 連絡先
  • なんか面白いメッセージ
  • このTシャツをどうやって松江にいる私に負担をかけずに受け取るか、その方法

などを私にメールしてください(ツッコミも可)。締め切りは6月13日あたりでどうでしょう、ひとつ。 応募者の中から厳正かつ恣意的な抽選により当選者を決定したいと思います。

誰も応募者がなければ...そうですね、身近な人にあげるか、自分で着ることにします。

_ 体調

昨日の食事が脂っこすぎたせいか、気分が悪い。むかむかする。 餃子は食べてないが。 悪阻か?

とにかく一回休み。

[]

2005-06-11

_ キグレNewサーカス

12日で松江公演は最終日なのであわてて観に行く。 私たちが観に行ったのは、12時30分からの第2回公演だったのだが、タイミング的にちょうど良かったので、 なかなか良い席で見ることができた。

そういえば子供のときにもサーカス観に行ったよな。 あれは木下大サーカスだったか。 最近、こういう古典的な娯楽って少なくなったような。 この種の芸能って後継者問題とかないんだろうか。

ともあれ、約2時間の間、大変楽しめた。 人間のポテンシャルはこんなに高いのか、と感動させられることしきり。 子供たちも喜んでいた。

ただ、私たちの座ったポジションが、 「金網バイク」のすぐ前だったので、末の子はあまりに大きな音にびっくりして 泣きだしてしまった。まあ、7ヶ月の子にはうるさいだけだよなあ。

公演終了後、挨拶をしている人たちを眺めるとかなりの割合で 日本人でない人が混じっていた。そうか、これが国際化か(違)。

冗談はともかく、近い将来日本のあらゆる産業で 他国から人材を「輸入」しないとやっていけない時代がくるのかもしれない。

[]

2006-06-11

_ [教会] ファイアサイド

二組の夫婦宣教師をお迎えして、 ファイアサイドを開いていただく。 通常の集会を変更して、しかも出雲と合同でこのようなことを行うのは 大変珍しい。 ずいぶん長く教会に集っているが初めての経験だ。

通常の2倍の台数分駐車場を手配したり、 大人が話を聞いている間、子供を面倒みるのを準備したり、 普段と違うことを行うのにはいろいろと手間がかかるのであった。

で、その結果はというと、大変満足であった。

うちの教会には専任の聖職者というのがいないので、 教育や指導において、それぞれ工夫をしていても、 やっぱり素人的な部分が出てしまうのは否めない。 まあ、それぞれプログラマーだったり、教師だったり、大工だったりする人が 教会の指導者も兼ねているんだからね。

しかし、今回は大変よく準備されていたし、 なにより伝えたいという熱意と、 飽きさせないという思いやりと 注意を引く工夫のそれぞれがそろっていて、 プレゼンテーションという観点からも感心した。

また、以前通達が出ていても、忘れさられていたようなことを きちんと思い出させてくださったという意味でもありがたかった。

で、「聞いた」、「感動した」、「でも、なにも変わらなかった」というのでは 意味がないので、せっかく伝えていただいたことを、 自分の生活やワードの行動方針に活かしたいものだと思った。

[]

2007-06-11

_ タッチパッド/トラックポイントに続くポインティングデバイス

トラックボールはなかったことにされているのだろうか(泣

うーん、パッドよりはマシに思えるんだけど、トラックポイントと比較した優位性は 「ボタンを押してクリック」だけかなあ。そこは別に困ってないんだけど。

_ [言語] Eiffel : An Advanced Introduction

Eiffel(私は「あいふぇる」と発音する)のチュートリアル。

私の知識は古いし(Eiffel the Language以前)、 この際、もう一度勉強し直すのもよいかもしれない。 問題はどうやって時間を取るかだな。

このぐうたらな私にも実践できる時間管理法を見つける必要があるのかもしれない。

いや、Webをぼーっと読んでる時間をなんとかできれば それだけで生産性は数倍になりそうな気がする。

はっ、こんなことを書いたら、 もしかして編集の人にネットを切られるかもしれない。

_ [Ruby] 六月水無月はぶにっき - Railsが普及した次の世界を想定すると・・・

はぶさんのところ。 冷静な視点が心地よい

んで、Ruby。というかRails。多分定着するんじゃないですかね。で、また酷いシステムが乱造されるのよ(w 来年くらいにね日経コンピュータあたりで「Railsは基幹系に適用可能か?」みたいな記事が出てね、んで先行事例みたいなのが出てきて、再来年くらいに適用が進んでくる、と。そうすると 2010年くらいにはStruts的な位置づけになってくるんでしょうね。一方で多分アンチRailsというかオルタナなRuby製のフレームワークも色々と出て来るんだと思います。

_ [言語] 新言語 Xtalを作る日記 - Xtalの多値

Xtalの多値について。Xtalでは多値と配列では(効率以外は)同じ意味を持つように したのだそうだ。「じゃあ多値要らないじゃん」という印象も持つが、 純粋に最適化手法としてとらえれば良いのだろう、きっと。 シンプルで悪くないと思う。

ただ、多重代入で

a,b = [1,2,3]

a = 1
b = [2,3]

になるのは正直いかがなものかと思う。単純に切り落として

a = 1
b = 2

にした方が良いのではないかな。でないと、

a,b = [1,[2,3]]

と区別が付かないし。たぶん、切り落とすことで情報を失うことを嫌ったのだろう。 気持ちはわかる。

逆に「わかりにくい」と指摘されているRubyのブロックパラメータの

yield 1,2,3

yield [1,2,3]

の区別も、結局は情報を失うことを嫌ったものだから。 人のことは言えない。

1.9ではyieldと多重代入の仕様がちょっと変わっているのだから、 この機会にいっそ情報喪失を恐れずこの区別をなくしてしまうか。

_ [Ruby] 「企業システムとRuby with CTC」セミナー

朝から米子便で東京へ。 帰りが遅くなるので出雲便では間に合わないのだ。 ANAは久しぶり。

で、六本木のオリベホールへ。 Tim BrayやCharles Nutter、Thomas Eneboとお昼ご飯を食べながら雑談。

1時から開幕。

まあ、聞いたこともないような話ではないが、 なかなかおもしろいイベントであった。 Timがステージから落ちたり(低くてよかった)。

あとはイーシー・ワンやCTCで 実際にRuby on Railsを業務に使っている事例が紹介されたのは ビジネスユーザには参考になったのではないだろうか。 Railsだって万能ではなく、適材適所であるということが 明示されていたのも好感度が高い。

最後に私のプレゼン。 世の中の動きが速くなり、 ソフトウェアの重要度が高くなり、 ビジネスに直結するようになるにつれ、 ソフトウェア開発に「うまい・はやい・やすい」が求められるようになり、 それを解決するためもっとずっと生産性を高めることが必要になる。 その手段(のひとつ)がRuby(やRails)である、というような話。

ところで、ビジネスクリティカルという話で、 先日のANAトラブルについて触れたのだが(非難するわけではなく、 ソフトウェアのトラブルがビジネスに大きな影響を与える例として(明日は我が身だ))、 聴衆の中にANAの関係者がいて、担当者は青い顔をしたという話を耳にした。

うーん、言葉には気をつけないといけない。

本日のツッコミ(全15件) [ツッコミを入れる]

Before...

_ まつもと [それってまさにXtalの代入ルールですね。>cdr相当を代入 上記の理由であまり賛成しません。]

_ 元職業プログラマ [「cdr相当を代入」する事は、再帰呼出し処理や、可変長データを引き渡すときに重宝すると思ったのですが、ダメだったでし..]

_ 元職業プログラマ [「可変長データ」->「固定長データの後に可変長データを付加したデータ」と訂正させていただきます。]

_ まつもと [Haskellの"x:xs"のように一番最後の引数にかならず配列が入るのであれば、使い勝手は悪くないように思います。..]

_ 元職業プログラマ [「a,*b=1,2,3」という文法があるので、「a,b=1,2,3」で同じ事を行う必要が無いという事につきましては、..]

_ ささだ [a, b = 1, 2, 3 をコンパイル時エラーにすることに反対派しないんですが、ary=[1,2,3]; a, ..]

_ 元職業プログラマ [「ary=[1,2,3];a,b,=*ary」の場合も"情報喪失"が発生(1.8.5では発生)するならば、エラーにす..]

_ まつもと [気持ちはわかるんですが、エラーになるとそれをちゃんとハンドルするか事前にエラーが起きないようにチェックする必要があり..]

_ 元職業プログラマ [処理性能も重要だということであれば、納得いたしました。ご返答有難うございました。]

_ とおりすがり [初期のリブレットの頃に、外見がこれに類似したポインティングデバイスが液晶横に付いてました。ただしクリック機能はないの..]

[]

«前の日(06-10) 最新 次の日(06-12)» 追記

track feed Matzにっき Creative Commons License This work is licensed under a Creative Commons License.