«前の日(05-22) 最新 次の日(05-24)» 追記

Matzにっき

迷惑メール対策なら Dr.WEB
『Dr.WEB メールデーモン』、MTA 用迷惑メール対策製品です!


2003-05-23

_ [OSS]ハッカー甲子園

朝日新聞の記事によると 経済産業省はこの夏「ハッカーの甲子園」を開くのだそうだ。

で、そのハッカーの甲子園では

全国の高校生、専門学校生の20チームが、お互いのサーバーに侵入する腕前を競い合う。優勝者はコンピューター研究で有数の米カーネギーメロン大やダートマス大に留学させる計画

だそうだ。

ここで疑問がある。この「ハッカー」はいわゆるハッカーなのだろうか。 つまり、我々が言うところの「ハック」するところのプログラマである「ハッカー」、 あるいは言葉を変えれば「ハッカーはクラッカーではない」の「ハッカー」なのか、 それとも、最近指摘するのもあきらめそうなマスコミ用語としての「ハッカー」、 すなわちシステム侵入者としての「ハッカー」なのか。

このハッカー甲子園(正式名称は「第1回セキュリティー甲子園」らしい)の競技内容がシステム侵入である以上、 この「ハッカー」は「クラッカー」と同義でシステム侵入者の意味であることが推測できる。

ところが、一方、 朝日新聞の当該記事には、

〈ハッカー〉日本ではネットワークからコンピューターシステムに不正侵入して、サイバーテロやデータ改ざんなどの犯罪を引き起こすような悪い意味で使われるが、本来は寝食を忘れてソフト開発などに没頭する人を指す。基本ソフト(OS)のリナックスやインターネット閲覧ソフトなど、常識を破る革新的な開発は、こうしたハッカーが担ってきた。

とあり、経産省もこの大会の目的として

大会を通じて優秀な人材を集め、英才教育を受けさせることで、ソフトウエア産業の国際競争力をつけるねらいだ。

を掲げているらしいので、集めたい人材は「破壊活動に長けた人物」ではなく、「優秀なソフトウェア開発者」としてのハッカーのようにも思われる。

これは一体どういうことなのだろうか。

「ハッカー」と「クラッカー」が混同されているのは周知の事実だが、 そのねじれが生んだ偶然のいたずらなのだろうか。 あるいは、高いシステム侵入能力を持つ人間は、情報を集め、 実践する能力と知識の故に優秀なソフトウェア開発者になれると考えたのか(スクリプトキディーは優秀な開発者にはなれそうにないけど)。

はたして、システム侵入能力の高い人物は、ソフトウェア開発において「優秀な人材」たりえるのだろうか。

いや、待てよ。

  • 大会を通じて(システム侵入に関して)優秀な人材を集め
  • 英才教育を受けさせることで
  • 他国のIT経済をコントロールできる優秀な工作員に育て上げ
  • ある種の秘密活動(!?)を通じて、情報入手や妨害を行い
  • ソフトウエア産業の国際競争力をつけるねらいだ。

という流れが考えられないだろうか。なんとっ、恐るべしニッポン、恐るべし経産省っ。

いやいや、考えすぎに違いない。

[]

2004-05-23

_ [教会]出雲支部大会

年に一度の支部大会。いろいろなことがあったが、ほとんど略。

印象に残ったお話、2題。

私の知人の会社に、SI屋が営業に来た。 ひょんなはずみからRubyの話になり、 知人は「Rubyのまつもとなら知り合いだ」と言う。 営業は「えー、雲の上の人なのに」と驚く。

私は死んでるのか。

もうひとつ。

別の知人(教会では上司にあたる人)の本職は、日本刀の研ぎ師である。

彼は独立する前、7年間師匠について修行したそうだ。 が、この師匠、7年間ちっとも仕事を見せてくれない。 どういうふうに研ぐのか教えてもくれない。 ただ、自分の作品を見せに行くと、「ここは良い、ここはダメ、こっちはまあまあ」と評価だけはしてくれる。 おかげで自分で工夫を編み出す必要があり、えらい苦労したのだそうだ。

7年の修行が終わる時、ひとつだけ「ここはこうするんだ」と奥義(?)を教えてもらえた。 それは5分だった。

...7年で5分かあ。

しかし、自分で創意工夫して学んだことは忘れないので、 これはこれで良かったのだと思う、とのこと。

ソフトウェア業界でも同じやり方で伝授するというのはどうだろう。 7年は修行。師匠の仕事は見せない。 プログラムをもってくると「ここは良い、ここはダメ、こっちはまあまあ」と評価だけ。 自分で創意工夫する。

あ、オープンソースじゃ師匠の仕事がいくらでも見えちゃうな。

オープンソース、ダメじゃん(苦笑)。

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

_ seeds [ 『雲の上のひと』とは、別に「死んでしまったひと」のことでは無いと思います。言いかえると、「高嶺の花」とか。 あと、..]

_ まつもと [心配していた通りのツッコミが。 もちろん、その辺のことは分かってます。笑いを取るためのネタだったんですが、不親切or..]

_ seeds [わたしが完全に「釣られて」しまった訳ですね(苦笑) とほほ。しかし、私自身、刃研ぎを学んだことを忘れていた、と云う事..]

[]

2005-05-23

_ 入院と主夫

妻の具合はなかなかよくならないので自宅作業。 とはいえ、子供のお守りもあったりして、実質的にほとんど仕事できないから、 会社的には休みと同じだな。

午後、妻は病院に行く。いくらなんでも長引きすぎだから。

その後、いつまでたっても帰ってこないなあ、と思ってたら電話がかかってきて 「入院」だそうだ。そうか。出産以外では初めての入院ということになるなあ。

で、急遽身の回りのものを取りそろえて病院に。近いのがまださいわいか。 まあ、単なる肺炎で心配することはないのだけれど、 弱いながらも感染の危険があることと*1、休息を取る必要があるということで。病院側も事情を理解してくれて、できるだけ早く退院できるように取り計らいます、ということだった。

ということで、今日からいきなり生後6ヶ月の娘の面倒を見ることになる。 とりあえず家事ひととりはできるつもりだけど、末娘は 今まで母乳のみで育ててきたのに、大丈夫かいな。夜はちゃんと寝るのかな。

*1  でも、今日まで一緒にいた家族には「感染の危険」は今さらだけど

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

_ ザキンコ [奥様が早く回復されますようにお祈りいたします]

_ まつもと [ありがとうございます。 検査の結果がよければ今日(27日)退院です。]

_ sophia [奥様お体の具合はいかがですか?早くもとの生活にもどれるといいですね。話が変わりますが、母乳がとてもうらやましいです。..]

[]

2006-05-23

_ 依頼

ある程度名前が「売れてしまった」せいか、最近、仕事の依頼が多い。

まあ、「原稿書いてください」くらいなら、分量がたいしたことなければ ほいほい受けてしまうのだが、なかには躊躇するものもある。

たとえば、O'Reilly Networkから来た以下のようなもの。

200行くらいのプログラムをサカナに「コードの美しさ」について語ってください。 2000ワードくらい(もちろん英語で)。

ここまでなら、どうということはない。しかし、次の部分を読んで驚愕した。

他にも何人かに頼んでいます。 すでに引き受けてくださった人にはBrian Kernighan, Guy Steele, Diomidis Spinellisなどがいます。あなたも引き受けてくださるとありがたいのですが

えーと、こんな有名人の中でなにをしろ、と。

_ 日経Linux初校

日経Linux 7月号初校を校正。 今回は39行もオーバーしたので削るのに奔走する。 しかし、いつもながら、日経の編集の人はプロの仕事をするなあ。

_ 『メガネっ娘のほしのあきがPSPに熱中! - SCEI「カズオ」イベント開催

「カズオ」ってのは数独のことなんだね。 数独についてはRubyQuizのネタにもなっていて、 少し知ってはいたんだけど、こんなに注目されていると走らなかった。

で、ルールは知ってても遊んだことはなかったので、実際にやってみる。 ksudokuをインストールして遊んでみると....これは面白いわ。 あっという間に時間が過ぎてしまう。

_ [Ruby] argument list 2.0

Ruby2では、引数リストについて修正を加えようと思う。

具体的な変更点は以下の通り。

  • 引数を渡す側では「*」単項演算子(リストの展開)を任意個置けるように。
  • 引数を受け取る側では、「*」単項演算子(リストとして受け取る)の後ろにも必須引数を置けるように。「*」単項演算子は最大1個。

つまり、

def foo(a,b=1,*c,d)
  p [a,b,c,d]
end

a1=[9,8,7]
a2=[6,5,4]
foo(1,2,*a1,3,*a4,5)
# => [1,2,[9,8,7,3,6,5,4],5]

という感じ。

ただ、問題が二つ。

  • nodeの構造が変わるのでripperとYARVの対応が手間
  • このあたりyacc記述が入り組んでいて、どこから手をつけていいのかよく分からない

取り掛かる前には「やればすぐ」と思ったのだが、 特にyaccが難物で、全然進まない。

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

_ telkaz [(* Mathematica でいう Sequence[] を考えたい *) いっそ,*arg を,Mathema..]

_ まつもと [Mathematicaのことはよく知らないんですが、例示された機能は出来るようになる予定です(配列リテラルでも単項*..]

_ telkaz [ありがとうございます. (* 2004/10/11 の日記「図書館で Mathematica の本を借りた」という..]

_ まつもと [本を借りたのは興味があるからです。 でも、実際に使わなかったせいでしょうか、さっぱり身につきませんでした。 本を読む..]

[]

2007-05-23

_ [Ruby] Radium Software - はじめてのプログラム

子供に最初にプログラムさせるという話になると、 まずテーマに選ばれるのは、キャラクタを動かす、図形を描く、そして、ゲームくらいだろう。 しかし、それは適切ではないかも、という話。

Hackety Hackでは、ゲーム以外の手段でプログラムを学ぶ。 それはゲームのプログラミングは難し過ぎるから(_whyによれば)。

確かにそうかもしれない。私でもゲーム(でも難しいからBASICの頃の古典的キャラクタゲーム)を 題材に選びそうだものな。

_ [言語] 404 Blog Not Found:君は新言語xtalを知っているか?

弾さんによる 「Matzさんでさえ言及した様子がない」新言語Xtalの紹介。

うーむ、実はこっそりブログでの開発状況を観察し 密かに愛でていたのに。

個人的な経験から言えば、言語仕様がある程度安定するまでは 人の意見を聞かず、自分が「これ」と思うところを追求した方が 最終的に良い物ができる可能性が高まると思っているので(独り善がりになる危険性も高まるんだけど)、あまり人に知られない方が良いんじゃないかなあ、と思っていたのだ。

が、弾さんのところみたいな大手からリンクされたんじゃ もう隠しておく意味はなくなったな。

個人的にはXtalは

  • Rubyを意識した文法と仕様
  • でもendじゃない(一部の人にとても重要)
  • イテレータとファイバー
  • 内部イテレータのように見える外部イテレータ
  • ちょっと仕様が揺れている多値
  • ローカル変数のスコープ

など面白いところがたくさんあると思う。

でも、メジャーになるには冒険しすぎかもしれないと思ってしまうのは 私が年を取って安定指向になってきたせいかしら?

いや、別にメジャーにならなくても全然問題ないんだろうけどね。

_ あらゆることがうまく行かなければどれくらいかかるか?

最悪のケースを想定することでより良い見積もりが出せる、という話。

まあ、単純に「見積もって」と言われたら、 こんな作業が必要そうだから、と思いついたものを積み上げて見積もるわけだが、 ソフトウェアの場合、「必要そうな作業」は恐らく本当に必要な作業のごく一部に過ぎない。 「最悪のケースを想定して」と言われると 最悪のケースを想定するためにいろいろな状況を考慮する必要があるわけで、 より多くの状況を考慮することでより正確な見積もりが出せるということなのだろう。

考えてみれば当然のことだが、見積もりは悲観的に。

個人的には、(〆切のある)仕事でソフトウェア開発の見積もりを行う時には、 普通に(特に悲観的でなく)見積もった時間に1.5から2.5までの係数を掛けることにしている。 最初はかなり罪悪感があったが、最終的にはいつもちょうどいいか、ほんのちょっと余るくらいで 収まるので、こんなものかな、と思っている。

この方法を実践するまでは、いつも見積もりばかり甘くていつも火の車だった。 健康を壊しかねない。

_ [Ruby] HOW DO YOU LIKE SILICON VALLEY? | SFBETA Geek Sessions Ruby on Rails: To Scale or Not to Scale

Railsに関するGeek Sessions。 今回のテーマはスケーラビリティ。

レポートを読むだけでも面白そうなネタが満載であることがわかる。 こういう交流も重要なんだろうなあ。

もうちょっと詳しいレポートは「geekSessions I: Ruby on Rails: To Scale or Not to Scale」に。

[]

«前の日(05-22) 最新 次の日(05-24)» 追記

RSS feed meter for http://www.rubyist.net/~matz/ track feed Matzにっき Creative Commons License This work is licensed under a Creative Commons License.