わんこ日記 ![[RDF]](images/rdf.png)
2004-06-08(Tue)
■ まだまだ続く「日本には天才プログラマ不要論」
「天才プログラマ」についても、人それぞれで違うんですね
と「天才プログラマ」と言われて感じるイメージが人によって違うと言う事を書いていたけど、私のイメージしている「天才プログラマ」について、ちょうど、良いサンプルが出ているコラムを見つけました。
優秀なプログラマのAさんがいました。
-snap-
そのソースは、まず何よりも読みやすい。コメントが入っており、どの処理が何を意味するか、きちんと分かるようになっていました。
-snap-
Aさんが作成したソースであれば、別の人間が後でメンテナンスするにも問題なくできると判断した記憶があります
-snap-
さらに、パフォーマンスが良いのです
[@IT:外資系コンサルタントのつぶやき 第23回より引用]
なんてAさんが、私のイメージしている「天才プログラマ」です。
そもそも「天才プログラマ」として考えていたのは、5月5日の日記でも紹介したけど、フォサイト「天才プログラマの身体」で梅田さんが紹介しているフリーな経路制御ソフトウェアGNU Zebraを開発した石黒さんとかをイメージしていたので。(って、本人にはお会いした事すら無いので、「多分こんな感じだろうな」と、空想しただけですが)
■ あと、このコラムには
プログラムは取りあえず動くレベルでも、後でメンテナンスをする際に読みにくく、そのために仕様変更する場合でも手間がかかったり、稼働当初は障害が発生しなくても、仕様変更などメンテナンス時にトラブルを起こしがちです。また、データの少ない稼働初期には何とか動くプログラム(もちろん、当初はそんな事実に気付いていない)であっても、しばらくするとパフォーマンス障害が発生することがあります
[@IT:外資系コンサルタントのつぶやき 第23回より引用]
なんていうパラグラフもありました。本当に、とりあえず動くプログラムほど怖い事はありませんね。一応、仕様どおりに動くものだから、テストには引っかからず、後で性能測定や高負荷テストで、問題だということに気がついたときには、メンテナンス性がわるいコードで、もう作り直している時間無かったり…
■ 日本でのプログラマ地位が上がらない根本的な問題
なんか日本のソフトウェア製品として良いものが出来ないのは、前に5月7日の日記で
日本では、給料を高くするには、プログラマではなくて単価が高いシステムエンジニアにするしかないので、みんながSEになってしまってプログラマは不在になってるのは確かだ
[わんこ日記(2004-05-07)より引用]
と書いたけど、これについても、このコラムで同様な意見が書かれていた
早く高単価のポジションに就かせて売り上げを伸ばそうという意識の表れです
[@IT:外資系コンサルタントのつぶやき 第23回より引用]
そうそう、SEだと単価が高いから、料金上げるためにみんなSEにしてしまう。これが日本でのプログラマ地位が上がらない根本的な問題なんですよね〜
そういえば、ミュージカルなんかも「どこでもS席」で、大した事無い席も高いんですよね。それでも、お客が怒らないから成り立ってしまう。こまった日本です。
2006-06-08(Thu)
■ [Linux] KernelがOut Of Memoryでプロセスを殺すのをブロックする
Linuxカーネルは、メモリーが足りなくなってどうしようもない時にプロセスを適当に選んで殺すのは有名な話。(oom-killer)
SunOS 4.1の用に、ちゃんとスワップするメモリーが無いとプロセスを立ち上げないUNIXになれていた身としては、「ぐわー PC用のUNIXだからってそこまで割り切るのか!」と十年以上前のことだけど、Linuxを使い始めた時にびっくりしたものだ。(なにしろswapが無くても動くんだから…)
で、最近のカーネルだと
そんな事態を少しでも避けたいというシステム管理者の思いが通じたのか、oom-killerによってkillされる対象から特定のプロセスを除外することができるようになりました。
[路地裏 ソース解読研究所より引用]
ということで、
~# ls /proc/1/oom_adj
/proc/1/oom_adj
~# cat /proc/1/oom_adj
0
~# echo -17 >/proc/1/oom_adj
~# cat /proc/1/oom_adj
-17
とかしておくと、oom_killerから保護できるそうだ。長い間「linuxはメモリ足りなくなったおしまい」っていうのが身に付いていて、メモリーやスワップを十分積んでいるから、足りなくなることなんてないけどね〜
2008-06-08(Sun)
■ [Debian] sid-milter 1.0.0リリース
2006年7月28日以来のupdateで、sid-milterが1.0.0になった。5月21日の日記を参考にbuildした。
$ ./Build LIBADD=-L/usr/lib/libmilter UBINDIR=/usr/local/bin MANROOT=/usr/local/man/man LIBDIR=/usr/local/lib/sid-milter
$ sudo ./Build UBINDIR=/usr/local/bin MANROOT=/usr/local/man/man LIBDIR=/usr/local/lib/sid-milter install
install -c -o bin -g bin -m 444 ar.0 /usr/local/man/man3/ar.3
install -c -o bin -g bin -m 555 sid-filter /usr/local/bin
install -c -o bin -g bin -m 444 sid-filter.0 /usr/local/man/man8/sid-filter.8
無事にビルドできた。以前はインストールされていたlibar.aはインストールされなかった。
|
|
