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

Matzにっき


2004年01月11日

_ [教会]岡山

月に一度の会議。今月は行き帰りとも運転してもらったのでラクチン、が、夕べの夜更かしがたたって眠たい。

どうも〆切とかのプレッシャーに弱くて、しかも、弱いんなら弱いでちゃんと仕事すればよいのに、 つい逃避してしまって、ますます事態を悪化させているという。これまでなんどか「事故」なく こなしてきたのが奇跡のようだ。

それはともかく、 毎月のように感じるのだが、人間が集まる組織での問題の本質は、企業だろうが、 宗教組織だろうがたいして変わらない。もちろん表面的には取り扱う問題が違うので全然違って見えるけど。

で、いつもいつも同じような問題に取り組んでいるのに、 いつもいつも適切な答えが出せなくて悩むのは情けないといえば情けない。 ま、個人的には今月はいつもよりはマシな対応が出来たような気がして自己満足。

でもまだまだだ。

帰ったら、姪が遊びに来ていた。今回は娘たちがちゃんと面倒を見たようだ。よしよし。

_ [tDiary]tdiarygrep(4)

最近、Matz版tdiarygrepにhistory対応を追加したのですが、 これにCross Site Scripting問題があることが指摘されました。 検索履歴データの表示でサニタイジングを忘れていました。 これはMatz版のみの問題で、あおきさんのオリジナルにはこの問題はありません。

あわてて修正しましたので、 history機能を持つMatz版tdiarygrepをお使いの方は、

<URL:http://www.rubyist.net/~matz/a/grep.txt>

から再取得してください。問題があるのはバージョン番号だと1.33以前(今回は1.33.1)です。


2005年01月11日

_ [特許][OSS]IBM、500件の特許をオープンソースに「寄贈」

IBMによって、オープンソースソフトウェアを対象にする限り、特許を主張しないという宣言。

IBMによれば、Open Source Initiative(OSI)によるオープンソースソフトウェアに現在または将来適合する予定のソフトウェア開発に従事しているか、そのソフトウェアを使用しているいかなる個人、コミュニティー、企業にも適用されるとしている。この宣言によりIBMは、IT業界全体で「特許共有」を行う仕組みの基礎固めをしたい考えだ。

実際の宣伝文句とは異なり、実際に寄贈を行うわけではない。 もっとも、たとえほんとうに寄贈を行いたくても現状では「オープンソースを代表する団体」は存在せず、 受け皿がないわけだが。が、この動きをきっかけに そのような(先日のエントリのOpen Source Collectiveのような)受け皿を作り「特許共有」を行うことも現実的になってくる(可能性がゼロではないかもしれない(笑))。

とはいえ、やはり特許のようなものは、持たざるものがいくらあがいても、 持てるものであるIBMのわずかな動き(公開されたのはIBMが持っている膨大な特許のうちごく一部*1)にさえ、 かなわないというのは「世の中の仕組み」を見せつけられたような気がする。

しかし、OSI準拠(「予定」を含む)ソフトウェアだけが対象ということは、 この特許を使いたいためにオープンソース化するという動機を生む可能性があり、 オープンソース陣営としてはありがたい。

結論としては「IBMは対外活動が上手だなあ」というものだ。 オープンソース陣営に対してイメージ向上に非常に効果的な手を適切に打ってくる。

では、IBMで働きたくなるかというと、契約条件の関係で、とてもIBMでその気にはならないが。

いずれにせよ、企業体としてはそのような適切なアクションが取れる存在になりたいものだ。 うちの会社は決して上手とは言えないからな。

*1  IBM所有の特許の一部しか公開されなかったことについて文句はない。むしろ当然の判断だと思う


2006年01月11日

_ [原稿] 日経Linux 3月号

1930110979

ネタは「コードジェネレーション」。参考文献は 『1930110979』 by Jack Herrington。

しかし、コードジェネレーションっていうテクニックは 対象言語がRubyのような動的言語であればそれほど必要になることはない。 メタプログラミング機能を使った方が便利だし手軽だからだ。

Railsの用にコードジェネレーションとメタプログラミングの両方を活用するケースもあるけど。

で、今回はJavaのためのコードジェネレーションをRubyで行うという 話の流れにしようと思っているのだが、 いかんせん私のJavaの経験がほとんどないので 悩ましい。対象言語をCとかにしたいところではあるのだが、 Cにはマクロがあるのでけっこうカバーできちゃうしね。

苦手なテーマを選ぶと書くのに苦労する。 先週末は具合が悪かったから、なかなか進まなかったし。


2007年01月11日

_ [原稿] 日経Linux 2007年3月号

テーマは「AJAXとJavaScript」。

ただし、AJAXの技術要素と言語としてのJavaScriptの紹介をしたところで 紙面が尽きそうだ。まあ、次の月に持ち越し、ということで。

しかし、週末までに書けるかなあ。ちょっと、〆切に対する見積もりが甘かった。 いや、いつものことだけど。

とはいえ、講習会に顔出したりしないといけないし、 フルタイム原稿書きというわけにもいかない。

_ 日経ソフトウエア2007年1月号打ち上げ

新宿で日経ソフトウエア2007年1月号の「フリー言語で真のプログラミングを学ぶ」という特集の打ち上げ。

わざわざ私が東京にいる時に開いていただけるとは感激である。

出席したのは、私、酒匂さん、天野さん、Yuguiさん、大森さん。 30代はおらず、40代と20代の集まりであった。

で、ほとんどの時間は私と酒匂さんの昔話モード。 1980年にどんな無茶をしたとか、古い言語や環境ではどんなだったとか。 若い人(特に天野さん)にとっては信じられないほど モノがない頃の話で、想像を絶していたようであった。

年寄りの話をちゃんと聞く人は伸びるよ。

いやあ、楽しかった。今日は鏡開きということで、 最後にぜんざいをいただいた。ありがたい。 鏡開きには子供のころのイヤな思い出があるのだが、 たまには良いこともある。

_ [言語」XML and J2EE: Commodity Skills

いくつかの技術タームがどこで注目されているかを Googleトレンドで見ると面白い傾向が分かる。

これが、アメリカ人の新しモノ好きを意味するのか、 トップトレンドでないテクノロジーはインドや中国に移転されて行ってしまうということなのか、私には判断は難しい。なんとなく後者のような。

_ [Ruby] jijixi's diary - Ruby の文法的欠陥

Rubyが既存のクラスを意図せず書き換えちゃう可能性についての指摘。 私はこれを「文法的」とは呼ばないけど(文法じゃないから)、 まあ、問題を起こす可能性については認める。

もっとも

  • ちゃんと名前空間を分離する
  • クラスを定義する時にはスーパークラスを明示する

というルールを守っている限り、あまり落っこちる落とし穴ではないかもしれない。

ファイル単位の名前空間の分離についても触れられているけど、 確かに、JavaやPythonはちゃんと分離するから、そっちに馴れた人には 分離しない点についても気になるかもね。

この点でRubyは明示主義なんだよね。 おそらく単にプログラミングモデルで一番参考にしているLispなどでも ファイル単位で名前空間が分離していないからだろう。

でも、CommonLispのpackage宣言のようなものは 将来必要になる...のかなぁ。


2008年01月11日

_ [言語] Thanks Zed; Syntax matters; no more dumping stuff in Java; Quit pimple pimping Ruby; Scala warning

「文法は重要だから、Javaと似た文法のGroovyを使おう。 SunはJRubyに投資すべきじゃない。Scala? とんでもない」という話。

私は賛同しない。

文法は重要じゃない、とは言わない。 文法はそれなりに意味があるし、言語選択にあたっての重要な要素になる。 しかし、もっとも重要な要素ではない。

重要なのは「メンタルモデル」である。 「文化」と言ってもいい。これが違ってたら、多少文法が似てても意味がない。

表面的な類似を除けば、JavaとGroovyってそんなに似てるか?

多少の文法の違いを乗り越えるのは人間にとって簡単である。 そこはむしろ人間の得意な領域だろう。 苦手なのはメンタルモデルをスイッチすることである。

モデルが似ていないのであれば、 むしろ文法が似ていることは邪魔にさえなる。

実例を示そう。

私は日常的にふたつのプログラミング言語を使っている。 ひとつはRubyで、もうひとつはCである。 これらはかなり文化の違う言語である。

ここでRubyとCの文法がかなり違うことで、 むしろ私の脳のスイッチが切り替わるのを助けてくれている。 もし、Rubyの文法がある程度以上Cに似ていたら、 今どの言語でプログラミングしているのかの手がかりが減って、 むしろストレスが増加してしまうだろう。

繰り返す。文法は重要だが、メンタルモデルが異なる言語で 文法が似ていることが重要なのではない。むしろ逆である。

次に、Rubyを「貶める」根拠として、 Rubyの求人数が少ない点(RUBY COMES IN DEAD LAST!)を示している。

まあ、求人数を気にする人がいるのは分かるけど、 求人数ってそんなに大事なのかな。 だって、求人サイトへの登録って玉石混淆だし(まあ、応募者はもっと玉石混淆だけど)。 本当に大事なのは自分の要求(報酬とか仕事の内容とか)にあった 仕事があるかどうか、なんじゃないかな。

で、応募者側の立場から言ったら、自分を差別化するためには むしろ求人も多く、コモディティ化しつつあるような技術(JavaとかPHPとか)よりも まだまだの技術(このリストだとPythonとかRubyとか)に賭けた方が 成功できるんじゃないかな。1000件求人があると安心するよりも、 すばらしい仕事をひとつ見つける方が私には価値があるけどね。

鶏口牛後ってことわざもあるしね。

もちろん、リスクを取らないでコモディティに生きるというのも ひとつの戦略だし、それを否定するつもりもないけどね。


2009年01月11日

_ [教会] 雪の日

夜の間にまた10cmくらい雪が積もってる。 朝から雪かき。2日連続なんてことはめったにないのにな。

で、教会に行く。雪のせいか人が少ない気がする。 集会終了後も、あっという間に教会が空になって寂しいくらい。


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