Personal tools
You are here: Home ブログ 井上 Rhinoブーム到来?
« December 2010 »
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Recent entries
Apache2.4のリリース予定は来年(2011年)初め(あくまで予定) inoue 2010-12-23
Herokuの発音 inoue 2010-12-20
雑誌記事「ソフトウェア・テストPRESS Vol.9」の原稿公開 inoue 2010-12-18
IPA未踏のニュース inoue 2010-12-15
労基法とチキンゲーム inoue 2010-12-06
フロントエンドエンジニア inoue 2010-12-03
ASCII.technologies誌にMapReduceの記事を書きました inoue 2010-11-25
技術評論社パーフェクトシリーズ絶賛発売中 inoue 2010-11-24
雑誌連載「Emacsのトラノマキ」の原稿(part8)公開 inoue 2010-11-22
RESTの当惑 inoue 2010-11-22
「プログラマのためのUXチートシート」を作りました inoue 2010-11-19
「ビューティフルコード」を読みました inoue 2010-11-16
Categories
カテゴリなし
 
Document Actions

Rhinoブーム到来?

来月からアリエルの育成プログラムが始まります。本当は、スキルはなくてもポテンシャルで採用する、ということで始めましたが、結局、それなりにスキルのある人を採用してしまいました。まあ、いいんですが。

色々とカリキュラムを考えました。なんでもいいので動くモノを作る、という課題は最初から考えています。もうひとつ、なんでもいいので、オープンソースのソースコードを読む課題がいいだろうと思っています。できれば読んで理解するだけではなく、本家にパッチを送るぐらいにまでなって欲しいと考えています。

現実的なプログラマの実務を考えると、ゼロから動くモノを作り上げる力も重要ですが、他人の書いた(できれば巨大な)ソースコードを読んで理解して改造できる力も同じぐらいに重要だからです。

読める規模で、読むに値して、かつ読むのも楽しいオープンソースを考えていました。言語はJavaに決めていました。色々と考えましたが、突然、Rhinoにしようと決めました。なぜなら、Rhinoブーム到来だからです。

あまりにソースが汚いと困るので自分でも目を通してみました。規模的には、ファイル数100弱、約5万行です(サブディレクトリを除く)。最初に読むにはすこし規模が大きいのが難点です。でも、言語処理系とそうでない部分を見分けることができれば、半分ぐらいは読むのを後回しにできます。ざっと見ると、どこから読むべきかだいたい分かるのですが、そこは敢えて指針を示さないつもりです。まずはとにかく読みます。5万行全てを頭の中に展開するぐらいの勢いで読むのです。デバッグでひたすら追います。最初から最後まで追うぐらいの気持ちでステップ実行し続けます。ある日、突然、コードの全体像が見えます。この瞬間が大事なので、敢えて読み方は示しません。もっとも、言語処理系は背景となる理論が(比較的)確立しているので、コード読みと並行して理論の勉強をした方が効率的です。

動くモノを作る課題では、Spring Frameworkを使うつもりです。複数の言語に最初に手を出しても仕方ないので、課題はJavaに統一します。

11月の目標

  • Rhinoのソースコードの構造を理解する
  • Spring Frameworkを使った簡単なWebアプリを作る

12月の目標

  • Rhinoのオープンバグを修正して本家にパッチを送る
  • 作ったWebアプリにRhinoを組み込んで(サーバサイドを)拡張可能にする

1月の目標

  • Rhinoのデバッガを理解する
  • Rhinoのデバッガでなにかする

目標は状況を見て是正します。

The URL to Trackback this entry is:
http://dev.ariel-networks.com/Members/inoue/rhino-boom/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
This helps us prevent automated spamming.
Captcha Image


Copyright(C) 2001 - 2006 Ariel Networks, Inc. All rights reserved.