だるろぐ

だるいぶろぐです

私が色々作っては晒している理由

http://d.hatena.ne.jp/hirafoo/20091122/1258921384
とまあ色々と作っては晒している。その理由。


そもそも私自身は大した事は出来ない。むしろ実力・能力的に残念な方だ。私は前職で素晴らしいプログラマ数人と出会い、今でもたまに師事していただいているので、その方たちなどはよくご存知と思う。
そんな私が、何か新しいものに触れるとき、例えばwafやORマッパやmemcachedなど、そんなときに何を最初にするかというと、それが使われていて、動かせるサンプルを探す。
マニュアルを読みながら進めるより、既に動いているものをいじりながらの方が分かりやすいし、正直英語のリファレンスを読むのが辛いのもある。
だが、そんなサンプルが毎回都合よく見つかるわけではない。むしろ見つからない場合の方が多い。
見つかるものといえば、どこも同じような文章を載せている紹介ページなど。


違うんだ。俺はHello Worldがしたいわけじゃないんだ。


で、サンプルが無いのなら、自分で作って晒してやればいいじゃないかと思った。
今の自分には簡単に出来る事も、世の中には難しいと思う人も居るはずだ。少しだけでもそんな人の助けになれれば、と思った。
私が初めてcatalystを触ったときにした事は、ひたすらググってサンプルを探した。が、ソースまで公開されているものは見つからず、実に苦労して使い方を覚えた。もちろん色んな人に助けてもらいながら。
大学レベルのプログラムしか書けなかった当時の私にとっては、周囲の助けが無ければcatalystを理解するのはもっと時間がかかったはずだ。
私の場合はたまたま周囲にそのように助けてくれる人が居たが、皆が皆そうであるわけではない。何かの事情があってcatalystを使わなければいけないが、周囲に頼れる人が居ない、そんな人も居るかもしれない。
そんな人の助けになれればいい。自分が助けられた分、見知らぬどこかの人を助けてもいいじゃないか。


「マニュアルを読んで自分で調べて自分で学ぶべきだ」などの考えについては、同感だし正しいと思う。
が、ベクトルが違うので扱わない。まずは下地を詰ませてくれ。
print "hello world\n" の意味を理解してからこれをタイプする人が何処かに居るのか?
ありがたい御託や背景や歴史や経緯は、俺がそいつを扱えるようになってからにしてくれ。


そんな訳で、私が何かを晒すときは、スクリプトやreadmeを用意して、基本的にすぐ動かせるようにしている。
例外としてはsledge-bbsか。あれはmodperl前提なので、スクリプトで動かすわけにもいかない。
あとまぁ、別に見られなかったところで構わない。自分の勉強になるだけだ。


そんな事を考えながら色々晒している。