今年も良いジョークは思いつかなかった。 だいたい嘘をつくセンスはなくって、 逆に毎年奥さんにだまされたりしてるんだけど。
妻: 雪が積もってるわよ 私: え、うそっ 妻: ええ、嘘よ。今日は4月1日。
とかね。あまりにもだまされやすいって気もする。 そういえば、今年は奥さんも嘘つかなかったなあ。 来年あたり、事前にしっかり準備してデカいのを出すかなあ。
4839908834
入手した。なかなか面白い。まだ全部は読んでないけど、 プログラミング言語としては、LispとTclとJavaを全部足して4で割ってから、 なにか(PHP?)を付け加えたような言語。
文法的には「変わってるなあ」という感じだが、 まだ読んでいない後半の機能リファレンスの辺りは楽しみ。
現時点での印象は、
突然送られてくる。Blogツールの紹介でほんのちょっとだけ書いたのが直接の原因だ。
今月の特集は、Blogツール(MovableType, Nucleus, Bolosxom, tDiary)の紹介。
どうみてもtDiaryだけ毛色が違うだろう、という点は置いておくとして、
なかなか面白い記事であった。tDiaryの部分は、たださんが書いてるから安心だしね。
実は「インターネットマガジン」を読むのは久しぶりなので、 なかなか楽しめた。創刊当時はプロバイダの接続地図が面白くて(いつ破綻するかと(苦笑))毎号読んでいたのだが、 巻末のデータ編は健在らしい。
話題の「W社問題」も取り上げられているし、当たりの巻だったかもしれない。 いや、当たりは今月に限らないのかもしれないけど。
来月からはしばらくチェックしよう。
さて、見本誌に同封されていた手紙には、
今回見本誌をお送りさせていただいたのは、ブログでインターネットマガジンをご紹介いただきたい というお願いによるものです。
ブログが一般に定着しつつある昨今、...<中略>...、 「ブログを活用したマーケティングの実験」とでも言いましょうか、 ブログの口コミパワーを確認してみたい、という目的もございます。
<中略>
突然の一方的なお願いで申し訳ありません。まずは本誌をご覧いただいて、 「おもしろい」と思っていただけたら ブログ上でご紹介いただければと存じます。<後略>
とあった。本誌も面白かったが、このなんというかストレートなお願いが一番面白かったので、 紹介してみた。私の文章にどれだけの効果があるか疑問だが、 できるものなら、私もブログの口コミパワーを確認してみたい。
昨日バプテスマを受けた子供の按手礼の儀式があった。 自分が受けた頃のことを思い出すが、なんと今月でちょうど30年も経つことを改めて認識して愕然とする。 思えば歳をとったものだ。継続は力なり、とは言うが、どこまで力がついたことだろうか。
まあ、継続しなかったよりはマシくらいにはなったかなあ。 30年もやってりゃ。
これまた送られてくる。先日受けたインタビューの結果が載っているのだ。 まあ、オープンソースな生き方について簡単に紹介した、というような感じだろうか。
読んで印象に残ったこと。
そういう会社から離れて久しいので、「ああ、そうだったなあ」とおぼろげに思い出した。
あと、Tom DeMarcoのインタビューは面白かった。
-- デマルコさんは、マネジメントの才能のない人が優れたプロジェクト・マネージャーになることが可能であるとお考えですか?
私は、可能だと思っています。..<中略>..才能があるとは言い難い私自身もまた、マネージャーとして成功できました。..<中略>..偉大なマネージャーが自然にやっていることを真似たのです。もちろん偉大なマネージャーにはなれませんでしたが、良きマネージャーにはなれました。
そうかあ。私も良きマネージャーになれるかな。正直、あんまりなりたくないけど。
INTERNET Watchによると、 Firebird日本ユーザー会が発足したそうな。おめでとうございます。
「日本Rubyの会」が発足しても取り上げてくれるかなあ。
Curlのウリの一つはクライアントサイドプログラミング。 プラグインを組み込めば、GUIもサウンドもブラウザの中から自由自在、ということらしい。
Flashでもできることだが、Curlの方がプログラミングに向いている(ような気がする)。 でもなあ、Curlは(Java+Lisp(or Tcl)+Templateエンジン)のような変な文法だしなあ。
そこで考えるのは、ブラウザ側でFlashプログラムを動かしておいて、 サーバ側と通信するというモデルだ。昔、Ruby/Tkでやっていたのと同じ方法だ。 InfoEther(というよりRubyForgeのと行った方がわかりやすいか)のRich Kilmerが、 そのようなもの(Alph)を作っている。 まだ公開されていないけど。
去年、Ruby Conferenceの時にRichからデモを見せてもらったが、 なかなかいい動きをしていた。 もっともネットワーク遅延が大きくなるとこのやり方では破綻するかもしれないけど。
とかいうようなフレーズを以前聞いたことがあるように思う。
今日は私が夕食を作るはずだったのだが、夜に急遽用事が出来てしまった。 帰宅してから出発するまでに30分しかない。そこで、スパゲティをゆでつつ、 ソースを用意しつつ、サラダを用意するなど、慌ただしい夕食準備になった。
これは単にプログラミングというよりも、 スケジューリングをどうするかとか、同期のタイミングとか、 パイプラインをいかに詰まらせないかとか、パラレルプログラミングではないだろうか。
で、結局5人分のスパゲティを準備して、食事して、出発するまで30分で終えてしまった。
結論: プログラミング(特に並行プログラミング)の知識は料理にも役立つ(かも)。
今日は長男の入学式だ。1年1組だそうだ。 保育園以来の親友と同じクラスだったようで、めでたしめでたし。 桜吹雪の中での入学式であった。
思えば私も1年1組であった。もっともあっちは1学年5クラスもあったので、 下手するとそれだけで息子の小学校の全校生徒に近い人数がいたのだが。
いやあ、やっと保育園の送り迎えから解放される。 月曜日からはお姉ちゃんと一緒に自分の足で学校に行ってくれる。 当たり前のようだが、ありがたいことだ。 成長したものだなあ。
0201799405 遅くとも4月の最初の週には、と念を押されていたのに ながらく延び延びになっていた 『0201799405』の監訳作業にやっと取り掛かれた。 途中で一度大量に直しを出したのだが、そこで力尽きてしまって、 初校が出るまで放置してしまったのだ。
前回ほどたくさんの直しはなかったが、意味が全然分からないような訳はもうないと思う。 最初は難しい訳の連続でどうなることかと思ったが、まあまあのレベルで収まったのではないかと。
これで他の人もチェックして、最終編集作業に回るのではないだろうか。 日本語版出版もそう遠くないな。
しかし、今回も疲れ切った。もうだめ。
11日は今年のイースター(復活祭)である。 以前、13日の金曜日の話の時にもちょっと書いたが、 毎年、
が復活祭である。これは、
ことを記念するためにこの日が選ばれている。 少々わかりにくいが2000年前と今とでは暦法が異なる*1ため、 わりと現実的な計算方法だと思う。
もっとも、クリスマスが冬至のあとの適当な日に祝っているように、 春分の日以降の適当な日を決めて祝うのではいけないのか、 と問われると、実際いけない理由はどこにもないように思うので、 結局は歴史的事情ってやつなんだろう。要は気分だ。
イースター(Easter)という単語には直接的には「復活」という意味はないようだ。 少なくとも聖書由来の単語ではない。
手元の聖書辞典によると
The word Easter is from Eastre, a Norse goddess whose pagan festival was observed at the spring equinox. The association of this pagan goddess with the celebration of the resurrection of Jesus Christ was only be adaptation and synthesis. There is no real connection. Jesus, being the Lamb of God, was crucified at passover time and is the true Passover (1Cor. 5:7). He was raised from the grave on the third day thereafter. It thus became a springtime anniversary, and has come to be called Easter in the Christian world.
だそうなので、たまたま同じ春分の日つながりのヨーロッパの土着の祭りと 同一化が行われたのだろう。女神Eastreは「春に蘇る」という神話があったらしいので、 それが復活と結びついたのではという説も聞いたことがある。
今後しばらくのイースターの日付は以下の通り:
計算プログラムもついでに載せておく。
def easter(y) g = (y % 19) + 1 c = (y / 100) + 1 x = (3 * c / 4) - 12 z = ((8 * c + 5) / 25) - 5 d = (5 * y / 4) - x - 10 e = (11 * g + 20 + z - x) % 30 e += 1 if e == 25 and g > 11 or e == 24 n = 44 - e n += 30 if n < 21 n = n + 7 - ((d + n) % 7) if n <= 31 then [y, 3, n] else [y, 4, n - 31] end end for y in 2004..2010 printf "%d-%02d-%02d\n", *easter(y) end
このプログラムはもちろん舟迫さんによるものだ。
*1 当時は太陰暦、今は太陽暦。一日の始まりも今は深夜12時だが、当時は日没
日経ITProの記事。『「自治体へのオープンソース導入やLinuxでのCOBOL資産活用を支援したい」−−NPO法人が活動開始』
以前、OSSAJについて書いたが、この日本オープンソース推進機構はまったくの別団体。 少なくとも設立趣旨はこちらの方がわかりやすい。
とはいえ、おんなじオープンソースで複数の団体があってどうするつもりなんだろうか。
窓口が多くて混乱するようになるのか、 あるいは窓口が多くてそれだけ多く注目を集められるようになるのか、 私には予測できない。こちらも5月からという「本格的活動開始」に注目したい。
早朝、息子がトイレに行くというので起こされた。 トイレの前で立っていると急に胸の真ん中が痛くなった。 かなり痛い。
つらいので寝てしまうことにした。 しかし、ふたたび起きてもまだ痛い。
子供たちが学校に出発した8時頃には痛みはだいぶ治まってきていたが、 心配なので、近くの総合病院に。胸部レントゲンやら心電図やらを取られる。
すると、梗塞の疑いがあるということで、赤十字病院へ紹介される。 で、ここでもまた血液検査やらレントゲンやら心電図やら心エコーをとられて、 どきどきしたのだが、医者のみたては「異常は見つかりません」だそうだ。 心電図のパターンは正常の範囲内で、梗塞の疑いは心電図のコンピュータが安全側に倒した結果らしい。 見逃すよりは良いだろうということだそうだ。
診断を受けた時点ではもう痛みはなかったのだが、 実際に痛かったのは事実なので、「異常なし」と言われても気持ち複雑だったが、 とりあえず看護士のおばさんの「おめでとうございます」という言葉を背に会社に向かうのだった。
なんだったんだ。失恋の痛みか。そんな覚えはここ何年もず〜っとないが。
〆切前だというのに半日つぶれてしまった。
今日は私の誕生日。実際に私が生まれた日も水曜日であった。
マザーグースにはこんな詩がある。
Monday's child is fair of face,
Tuesday's child is full of grace,
Wednesday's child is full of woe,
Thursday's child has far to go,
Friday's child is loving and giving,
Saturday's child works hard for a living,
And the child that is born on the Sabbath day
Is bonny and blithe, and good and gay.
水曜日に生まれた子供は「full of woe」らしい。 辞書によると「woe」とは「苦しみ」のことなので、 なんかつらい人生が待っているような気がする。
全世界の水曜日生まれの皆さん、一緒に耐えましょう。
実際には「go」との韻を踏むためだけに選ばれた言葉だろうから、 全然意味はないわけだが、この詩の作者も無責任に残酷な単語を選ぶものだ。
うちの家族だと
である。なんとなく当たっているような気がしないでもない(長男は除くことにしよう)。
あ、実際には私の人生はおおむね幸せです。好きなことして食べていけてるわけだし。
今年入った新人三名の研修。今日のテーマは「オープンソース」。
でもって、オープンソースについて半日ぐだぐだと話すのであった。 例によってキーワードのみ。
ゴールデンウィーク進行で〆切が早まっていたのだが、 先日の病院騒ぎで2日ほど遅れてしまった。
今月のテーマはcomp.lang.rubyでも話題になっていたInstiki。Instikiが内部で使っている
について。特にMadeleine(あるいはObject Prevalence)について解説してみた。
A.Tさんからのツッコミより。 オリジナルの英文はこちら。
これらの主張をまとめると、こんな感じか。
ごもっとも。(1)と(2)については「確かにその通り」と私も思う。
でも、Ericはインタフェースの専門家ではないし、 ユーザインタフェースに対する深い見識を彼に期待するのはどうかと思う。 彼が優れているのは、ハッカーという「人種」への見識であり、 彼の功績はハッカーの気持ちとそのやり方の価値をハッカーでない人に伝えたことである。 ユーザインタフェースに詳しいからでも、 優れたソフトウェア開発者であるからでも、 優れたプロジェクトリーダーであるからでもない。
さて、(3)だ。同じ「オープンソースは素晴らしい」という言葉を聞いても、 受け止め方は人によってさまざまだ。 が、オープンソースについて実際に関っている人は、一部の人が持っているような 「オープンソース開発体制はいかなる点でもプロプライエタリな開発体制よりすぐれている」と 思っている人はいないと思う。
現実には「多くの人にはオープンソースというやり方は信じられないかもしれないけど、 思ったよりも良いものができるんだ」というのが、 その意味するところではないだろうか。
もし、「コストはいくらかかってもかまわないから良いものが欲しい」のであれば、 良いものを得るために直接金を払う方が優れたものが得られるに決まっている。 プロプライエタリな開発体制の方が進歩が速いのは、考えなくても当然のことではないだろうか。
重要なのは以下の点だ。
この「素晴らしさ」の前には、進歩の遅さなど気にならない、という人もいるだろう。 かくいう私もその一人だ。 オープンソースはカメである。ウサギの論理で測れば劣っているところもたくさんあろう。 だが、キーワードは「good enough」である。
追記:
「バカが征く」で述べられていたような、 『クローズドソースであり、フルタイムのエンジニア達で なければ優れたUIを持つソフトウェアは作れない』という主張を原文から読み取ってはいけないのではないかと思う。 彼の主張は
オープンソース革命は結局、最も直感的でベストなデザインのソフトはフルタイムで働くエンジニア達によるクローズドな商用ソフトにあるという事実を覆すに至っていない。
つまり、「商用ソフトの方が(進歩が速いので)ベストの追求に向いている」であり、 「オープンソースには良いUIのソフトウェアが作れない」ではない。 そのように読み取るのは「ベストの追求こそ全て」のウサギの論理に巻き込まれることになってしまう。
先日の私の誕生日に続き、息子の誕生日が来る。
彼はプレゼントをもらったり、おいしいものを食べさせてしまってご満悦のようだ。 しかし、疲れてしまったのか、レストランへの移動中に寝てしまい、 帰宅後も、そのまま布団に直行であった。
Gmail。なかなか面白そうだが、
などの制約から、自分で使うのは難しそうだ。
しかし、ふと考えたら、私のノートでもディスクは1G以上残っているという事実に気がついた。 最近のディスク容量から言えば珍しいことでもなんでもない。
にもかかわらず私が過去10年のメールの全てをもっているわけではないのは、 ただ単に、私が使うソフトウェアが1Gメールに対応し切れないからだ。
であれば、新しく作るのはどうだろう。
1Gものメールであれば、フォルダに分けるというのはあまり現実的ではない。 基本は検索になるだろう。
などがベースになるに違いない。とか考えると、 この記事で紹介している Gmailのインタフェースというのは、よく考えられているような気がする。
誰か開発(に参加)したい人はいますか?
監督・長老定員会訓練集会。 講師を仰せつかったのだが、1時間に3人の講師から詰め込まれるのも大変な話だろうなあ。
抽象的な話だが。
地理的に拡散している、ゆるく連携された組織に対して、さまざまな戦略を考案する。 あるものは効果があり、あるものは効果がない、かもしれない。 あるものは末端では実行に移されず、有効性を発揮できないかもしれない。
効果があるかどうかは測定しなければ正確には判定できない。 その効果を測るために、たとえばアンケートを取る、 インタビューをするなどを方法をとることができるが、 それにはコストがかかる。場合によっては戦略をだいなしにするかもしれない。
さて、その有効性を損なわずに測定する良い方法はあるかないか。
うーん、ケースによって違うとしかいいようがないな。brain fartか。
kouさんのツッコミから。
あと、バザールの基本は好きな者に好きなようにつついてもらう点だと思うのですがSC○みたいなのに粘着されてモチベーション下げるような事も避けたい所ですし。
SCO問題は、Linuxが主題になっているのでオープンソース問題であるかのようにとらえられがちだが、 実際にはオープンソースとはまるで関係ない。彼らの主張は法廷と法廷外で全く違う点に注目する必要がある。
法廷での彼らの主張はこのようなものだ。
IBMはSCOとの契約に反して、SCOが権利を持つUNIXに含まれる技術をLinuxに持ち込んだ
つまり、その本質は「契約違反」である*1。 それは真実かもしれないし、そうでないかもしれない。 が、少なくともこの論理ではSCOと契約を結んでいないものは関係ない。 そもそも契約を結んでいないのだから、契約違反は発生しえない。
つまり、たまたま訴訟の一部に(オープンソースソフトウェアである)Linuxが関連しているという以上には、 この訴訟とオープンソースソフトウェアは関係がない。 これはオープンソースでない他のソフトウェアでも発生しうる問題だ。
ところが、法廷外ではSCOは
LinuxにはSCOが権利を持つコードを含んでいる。 だから、その権利によってLinuxを利用するためにはSCOとライセンスを結ぶ必要がある。
でなければ、(IBMのように)訴えるぞ。
とほのめかしたのである。みごとなFUDだ。
こちらの主張が真実である可能性はかなり低い。 迷惑な話だが、上のような「ほのめかし」程度では罪になるとまでは言えないような気がする。 粘着されるのはたいへん迷惑な話であるが、オープンソースが世間的に注目されるようになると、 なんらかの攻撃の対象になるのは避けられないことのような気がする。
静かにほそぼそとフリーソフトウェアを開発していた頃は平和だった。 が、それで飯を喰える状態ではなかった。
オープンソースが注目される今は、飯は喰えるが、粘着される危険性は高くなった。
なかなか、万事うまくいくとは行かないものだなあ。
*1 最近、SCOは著作権を争点に加えたが、成功しているとは言えないなあ
続いてkouさんのツッコミの前半から。
つい最近こういう記事もありました。
>「UNIX開発者のバックドアを思い出せ」−Linuxの軍事利用に警鐘
><URL:http://www.itmedia.co.jp/enterprise/0404/14/epi04.html>
この記事を読んで思ったことは、Eric Raymondが語った「沢山の目があれば、どんなエラーも恐くない」*1という言葉は誤解されているということだ。
もちろん、ソースコードが公開されていて、チェックすることができる人がたくさんいれば、 バグは早く見つかるし、対応も速い。
が、だからと言って、どんなにレビューアーがいようと、何人開発者がいようと、 ただそれだけでは、問題が発生する前にバグが発見されるなんてことは決してないということだ。 Ken Thompsonがバックドアを仕込んだ経緯は知らないが、 そのバックドアは14年間決して利用されず、問題は発生しなかったのだろう。 よって積極的にはチェックは行われず、発見もされなかった。
オープンソースの良さは、問題が起きちゃったらすぐに対応できる点だ。 一度でも問題が起きたら困るケースで、 問題が発生する前にバグを発見するためには、地道なテストスイート作成と 繰り返しテストすること、積極的なコードレビューが必要だ。 それはオープンソースだろうとそうでないソフトだろうと同じこと。
さて、ITmediaで紹介されていた。「ダン・オダウド氏」なる人物の主張は
前二者には限定付きで同意できないことはない。 確かに、アメリカと利害関係が対立する人物がLinuxにコードをcontributeして、 そのコードに発見しにくい巧妙なバックドアを仕掛ける「陰謀」が存在する余地が まったくないと断言するのは難しい。
もっとも、そのためにはバックドアは
という相反する要求を満たし、 かつバージョン管理でそのコードがいつ誰によってコミットされたかが明らかになる危険性をかいくぐる必要がある。 もちろん、天才的コーディングでバックドアを用意し、 バージョン管理サーバーもクラックするのだろう。映画みたいだ。
そのような危険性があるので軍事関係にはLinuxを使わないとする。 だとしても私はいっこうに構わないのだが、仮にLinuxを使わないのだとすると、 代わりになにを使うべきか。「安全だと立証されたソリューション」とはなにか。
Windows? Solaris? AIX?
上記の困難を乗り越えてLinuxにバックドアを仕込むという 陰謀説を信じることができる人が、WindowsやSolarisなら大丈夫と言える感性が私には不思議だ。 アメリカ企業たるMicrosoftによって作られているソフトウェアなら安心ということだろうか。 私には、ロシア人開発者よりもマイクロソフトの方がよっぽど野望を持ちそうに思えるのだが。 第三者が検証することは事実上不可能だし。
たいへん(アメリカ的)愛国心のある話ではあるが、論理的ではない。
あるいは「安全だと立証されたソリューション」とは、 身元がはっきりした人間だけを用いてコンピュータは使わないことか。 論理的だが、現実的ではない。
いや、身元がはっきりしているはずの人間が内通者になるのはスパイ映画では常道だ。 誰も信じてはいけない。安全などないのだ。Trust no one.
追記:
KLさんのツッコミによれば、
「安全だと立証されたソリューション」...というのは、Green Hills SoftwareのOS(フットプリントがLinuxに比べ極めて小さく、ソースコードは米航空連邦局の監査をパスしている)ということになります。
だそうだ。うーん、それならそれで論理的ではあるが...。
ということは、軍事目的のOSはすべてそのような小さなOSしか使うなって主張なのかな。 論理的ではあっても、非現実的ではないかなあ。
*1 正確な文言は忘れちゃいました。後で調べておきます
1次審査を突破して、ヒアリングへ。 東京出張。なんだか久しぶり。
前夜徹夜までして資料を用意してくれた面々のおかげで、 プレゼンテーションはそれなりにできたのではないだろうか。 前回よりも準備しただけあって、やはりあわてることなく質疑に対応できた気がする。
びっくりしたこと: g新部さんが向かいに座っていたこと。世間は狭すぎ。
IPAの担当者によると、応募は50件ほどだったそうだ。 あまり多いと競争が激しくなるので、気持ちは微妙だが、 正直なところもっとたくさん応募があってよいと思う。 せっかくのチャンスなんだし。
今年は秋にも公募があるので、 チャレンジしてみてはどうだろうか。
その後、秋葉原によって、前田くんとおなじく HDD外付けケースを購入。でも、うまくいかないところまでおんなじだったりする。
今までジャンクでもたいていうまく動いていたのだが、初の惨敗か。
この記事を読んだ当初の感想は、普通のオジサンが持つであろうものと同じ、 「勘弁してくれ」というものだ。 今ここにある自分を無視して、どこにもない「本当の自分」を探す姿は滑稽でさえある。 『青い鳥』でも読んでくれ、と言いたい。 ただ、そういう感想はこの記事を書いた記者の期待通り、あるいは思うつぼであろうとも思う。
しかし、この記事中のある一節
一方で、そのままでいいと言われても、いまの自分はまだ何者でもない。焦燥感もある。真のオンリー・ワンになる道は、ナンバー・ワンになるよりはるかに険しいこともわかっている。
を読んで、
「真のオンリーワン」なんてものは結局ナンバーワンのことだ。
そんなこと言ってる人は「オンリーワン」のことが分かってない
と語った妻の言葉を聞いて、このことについて改めて考えてみた。
確かに。「真の」とわざわざ強調する以上、「他に同じものがないくらい飛び抜けた存在」になることを 想定しているわけで、そのような存在になるためには他との競争を勝ち抜いて 「ナンバーワン」になる必要ありそうだ。
けれども「オンリーワン」という言葉は、
ということを伝えようとしているのではないだろうか。 「速いことを至上とするウサギとは違う生き方がある」と言い換えてもよい。 要するに、この記事を書いた人物は世の中に蔓延する「ウサギの論理」から自由ではなかった、 ということなのだろう。
勝つものがいれば負けるものもいる
負けたものはどうなる
負けたものには生きる権利はないというのか
考えてみれば、一握りの勝者以外はみなある意味敗者である。 勝者だけを目指す世の中は圧倒的多数が不幸な世の中ではないか。
とはいえ、競争社会を完全否定するつもりはない。 我々が目指すべきは、全力疾走で消耗することなく 地道に進み、最終的には勝利してしまう「カメの生き方」ではないだろうか。
というようなことを、Mozilla.Partyでの末松教授の言葉を読みながら考えたのだった。やっぱカメでいいわ、私は。
元ネタはCNET Japanの梅田さんのコラム。
生活コストの高いことが前提の「大都市圏標準サラリー」を稼ぎ、生活コストの安い田舎の小さい町に住むことで、2つの世界のいいとこ取りをしよう、というのがGeographic Arbitrageである。
しかし、別にこの生き方は新しいものでもアメリカ特有でもない。 日本でできない理由はないし、実践している人も多いだろう。 事実、私はずっとそうしている。
鍵は「ふたつの世界のいいとこ取り」である。
まず、第一に仕事である。地域性に限定された仕事では難しい。
日本だけじゃないと思うが、田舎は住環境、生活コストその他で恵まれている (たとえば、今のうちは3LDKで共益費、駐車場2台分込みで8万だ)。 一方、産業に乏しいことが多いので、地元ではなかなか仕事はない(ので高給に恵まれない)。 環境が豊かでも収入が厳しければ「いいとこ取り」ではない。
しかし、「IT革命」ばんざい。すべての職種とは言えないが、 ソフトウェア開発に限って言えば、いまや地理的な問題はかなり少なくなっている。 電子メール、FAX、IRCなどを活用すれば、開発作業のほとんどは地理的な制約を受けない。 以前は情報が遅いのが難点だったが(松江は今でも雑誌の発売日が二日遅い)、 インターネットのおかげで最新の情報が自宅で入手できるようになっている。
理屈から言えば、会社としては開発者がどこにいようが、きちんと仕事を果たしてくれれば、 貢献に対する報酬として同じだけの額を払うのは当然である。都会地手当てのようなものを除けば。
であれば、あと必要なものはなにか。
実はそういう働き方を理解してくれる文化や会社だけのような気がする。 いずれにしてもソフトウェア開発職は他の職種に比べてチャンスが多い。 サポートや営業ではなかなか難しいだろう。
あきらめずチャレンジするのはどうだろうか。
スラッシュドット・ジャパンで私の日記が参照されたらしく、 プチ・slashdottedである。で、とんびさんから受けたコメント。
>bisonのpure-parserはlexer用にデータを渡せないので、役に立たない。
とありますが、YYPARSE_PARAMとYYLEX_PARAMを定義したのではだめですか。ていうか、これつかって、すっかりreentranthなparser作ったつもりでいたのですが。テストしないとやばいかな。
ダメじゃないです。白状すると1月14日の時点ではYYPARSE_PARAMなどについて知りませんでした。 気がついたのはProthonのソースを読んでた時ですから、 3月の後半くらいでしょうか。
唯一の難点はbisonのinfoを見ると
Macro YYPARSE_PARAM
An obsolete macro for specifying the name of a parameter that `yyparse' should accept. The use of this macro is deprecated, and is supported only for Yacc like parsers.
とあることですかね。「obsolete」と言われても、代替手段がないんですが...。
両親の任地も決まり、これで本当に最後だとみなが集まった。
留守の間うちをどうするかとか、お墓の当番だとか雑多な話をした後、 色紙にメッセージを書いて、贈呈する。
しかし、浜松だとはなあ。
最後に全員で墓参りをして解散。
恒例の支部大会。 載っていた車が縁石にこすってしまい傷がつくというアクシデントがあった他は順調。
今年も神権会のレッスンは私が担当。 「精神面、物質面での自立」という難しいテーマであったので、 「職業」という側面を強調して話してみた。
使った聖句
しかし、今思うともっと「自立」に焦点を当てて、 みなの意見を引き出すようなレッスンのほうがよかったなあ。 50点。
新居の掃除、および諸事の片付け。ガスの点検、ウッドカーペットの搬入、BSアンテナの取りつけなど。 午前中いっぱいかかってしまった。しかし、それだけで疲れ切ってしまったぞ。
夜には契約関係の処理もすませる。いよいよ引っ越しの準備が整ってきた。
yaccの宣言的な文法は条件が書けない。 「この条件のときはこのルールを適用しない」というような文法はありえない。
まあ、LALR(1)の性質を考えればある意味当然なので、これを弱点というのは適切ではない。 より正確には「弱点」ではなくて、せいぜい「要望」とか「欲求」とかだな。
とはいえ、 Rubyの文法には「ifなどの条件式には任意の式が書けるけどdoが来てはいけない」とか、 「メソッド引数には任意の式が書けるけどコンマを含んではいけない」のようなルールが存在する。 これに対応するためには、
前者はルールの数が増える(単純計算で4倍)ので、メンテナンスの手間がかかる。 一つのルールを修正するために、 常に4箇所(あるいはそれ以上)を更新する必要がある。あんまりだ。
現在のRubyの実装は後者を使っているのだが、 これもlexerとparserが無闇に強結合するため、メンテナンス性に問題がある。 また、yaccルールだけで文法が理解しにくいのも欠点だ。
私の知る限りでこんな無茶な要求に対応しているcompiler compilerは存在しない。
再帰下降の手書きparserなら、こんな挙動も簡単に実現できる。 「条件式フラグ」や「メソッド引数フラグ」を再帰関数の引き数のひとつに渡せば良い。 しかし、再帰下降parserもメンテしにくいことで知られているんだよなあ。
結局どれでもメンテしにくいんだったら、どれを選んでも同じってことかなあ。
インプレスPCウォッチの「後藤貴子の米国ハイテク事情」より。
要するに厳しいDRM(Digital Rights Management)を採用した日本より、 緩いDRMを採用したアメリカの方がコンテンツ産業が反映するのではないかとの予想。
心から賛同します。
地上波デジタル放送がこのまま計画通りに進んで、 2011年に地上波アナログ放送が予定通り終了したら、 その時私はテレビを卒業します、きっと。
ただでさえテレビだけからしか入手できない情報はどんどん少なくなり、 少ししかないそのような情報の魅力もどんどん下がって、 テレビを見る時間は減る一方なのに、 この上、コピーワンスを強要されて面倒なことになれば、 もうテレビの価値はないです。 DRMの必要性を否定するまではしないけど、コピーワンスがデフォルトはやりすぎ。 そのためにテレビを買い替えるとか、チューナーを買い足すなんて馬鹿馬鹿しい。 あと、7年あったらインターネットが十分代替になると確信します。
その時うちのテレビはビデオとDVD(と将来登場する何か)のプレイヤーになることでしょう。 それでも十分だと思う。
「角を矯めて牛を殺す」ってのはこういう時に使うんだっけ。 「金のガチョウ」の方が適切か。
おお、前田くんのBabelが単なるSatherコンパイラから進化しようとしている。すばらしい。
私は前者(ネストしない方)が好きです。namespaceの粒度にもよるけど、 きっとかなり大きくなるんじゃないかと思うので、 実質的に無用なネストは増やさないほうが良いのでは、と思います。
引っ越し当日。朝から運送屋がきてどんどん箱詰めしていく。
私は子供たちと新居に移動して、掃除と片付け。 子供たちは自分のものになる部屋の掃除、雑巾がけ、板床へのワックスかけ。 その後も、新居と旧居を移動しつつ、どたばたと。
予定では5時には終了するつもりであったが、 実際には旧居の荷作りだけで5時までかかり、 新居にすべての荷物が移動したのは夜も8時を過ぎていた。 見積もりが甘いのはどこの業界も同じらしい。
今回の引っ越しの反省点。
しばらくは箱の中で生活することになりそう。
子供たちは学校に。私は休みをとって片付けを。 しかし、一向に片づかない。全然箱が減らないよ。
テレビが映らない。屋根に登ってアンテナ線をつなぎかえたりしたが、 あまり効果がない。いろいろ調べた結果。
ものを知らないことを露呈してしまった。半端な知識が一番役に立たない。 電器屋さんには迷惑をかけた。