これだから私はhackerじゃない

私は自分のことは「プログラマ」だと思っているけど「hacker」とは違うと思っている。

ギークなお姉さんは好きですかより。

・ へぼギークが100行かかって説明するコードを3行で書ける
・ 何かを実行するときに、最善かつ最短の道を知っている

これが私はダメなんだよなぁ。
続きを読む

httpdを書くのは楽しいね

ここ2ヶ月くらい、httpdを作っている。

libeventのevhttpを使っているので、そんなに機能があるわけじゃないけど、HTTPそのものは作らなくて済む。ヘッダやらURIやらの処理は自前で。

直接httpdをいじっていると、CGIなんてかったるくって書いてらんないなという感じ。CGIにはCGIのいいところがあるわけだけど、一々execされるというのは、なかなか嫌なもの。処理を常駐させっぱなしにすることが出来るというのは、ロードの手間のことを考えないで済むだけ気楽だ。

Apacheみたいに複雑なhttpdだと、どのパラメータが何をするものか調べるだけでも一苦労なのだけど、シンプルに作っているからそんなこともなく。シンプルながら、vitrual hostは出来るし、認証も持ってる。

安定したら、会社のサーバはこいつに入れ替えよう。

アジャイル開発こそ上流工程が重要

吉岡さんのblogより。

開発工程を別々に担当してはいけない

件のblogでは、「別々に担当してはいけない」と言っているだけで、「上流工程不要」と言ってるわけではないので注意。また、「ウォーターフォール」の「対抗」としてアジャイルを挙げているわけでもない。ただし、ここに書いてあることを肯定すると、結果的に「上流工程軽視」になるのではいかという危惧がある。

ここでは件の文章をネタにして、非ウォータフォールの代表であるアジャイル開発についての話。
続きを読む

プログラマはプログラム書くのが仕事

吉岡さんのblogより。

まぁ言いたいことはわかるし、「そうだな」と思わんでもない。実際、プログラムを書いてる時間よりも読んでる時間の方が長いのは確かだし、フェーズ的にもそうだ。まぁフェーズの方は「ロングテール」だったりするわけだけど。

でも、やっぱりプログラマの仕事はプログラムを書くことでしょう。
続きを読む

やってはいけない?

[実装編]メモリー管理を処理系任せにしてはいけない

言いたいことはわかるし、多分もっともなことなんだろう。って、私はJavaでマトモなプログラム書いたことないからよくわからんけど、GCのある処理系で、あのGC機構ならさもありなんという程度には動的言語の処理系は書いたことがある。
続きを読む

こりゃ絶対釣りだろwww

マシン語を知らない子ども達

当然のことながら、プログラムというのは、マシン語を理解して初めて「書ける」と言うのです。

じゃあ、私はプログラムは書けるとは言えんなぁ。何しろ自分で定義した仮想機械のマシン語ですら、満足には書けない。コンパイラの吐いたコードを見て、「うぉぉぉ。こんなコードが出るのか!」とか驚いてるくらいだし。いや、そのコンパイラだって自分で作ったものなんだけど。

マシン語はわからんよりはわかった方がいいとは思うし、マシン語がわかるとわかることも少なからずあることもわかるが、別に「プログラムが書けること」と「マシン語を理解していること」はイコールである必要はなかろう。実際、そんなもん意識したプログラムを書くことなんてまずないし、下手にそんなものを意識したプログラムを書かれても、迷惑なだけだ。

いまだこんな「寝言」を言う人がいるんだな。なまじ見識があるかのような文章であるだけに、タチが悪い。

OOPの何が嫌いって…

あまり知られてなかったり、知ってても忘れている人がほとんどだと思うけど、私も「言語書き」だ。母校で講義も持っていたし、JISの委員だったりする。あ、そー言えば著作もあったわ。

過去形でないのは、今でもちょっとした定義言語はふつーに作っているから。とは言えmatzみたいに「流行りの言語」とか「これから流行る言語」とか作るわけじゃないけど。
続きを読む

私はそんなに他人のプログラムは読んでない

プログラム上達の早道は他人のコードを読むことだと言われている。

Part1 オープンソース/C言語に学ぶ「ソースコードの読み方」

にも読め読めと書いてある。

でも、実は私は他人のコードを読めばプログラムの上達が早いということには、ちょっと懐疑的だ。
続きを読む

glade-3

いつの間にかglade-2が消えてglade-3になっていた。

なんとなくEclipseっぽくなってて、操作性はglade-3の方が断然良いのだけど、glade-2まであった「コード生成」の機能はごっそりない。

どこかにコード生成をしてくれるツールでもあるかと思って探したのだが、発見できず。だいたい、glade-3でぐぐっても、ロクな情報が出て来ない。

どうやらlibgladeを使えということらしい。まぁお行儀良くプログラムを書いていれば、コード生成であろうとlibgladeであろうと、ほとんどコードはいじらなくてもいい。

まぁそれは結構なことなのだが、知らん間にglade-2が消えてたり(答:sidだからです)、マトモなドキュメントがないってどうよ。OSSものって、この辺がいい加減なんだよなぁ。何でも新しけりゃいいってもんじゃねーぞ。