ftpクライアント。
ftpクライアントと言えば、やっぱりlftpマンセーなわけだけど、mirrorが1つしか引数をとらないのは、ちょっと不便な気がする。まぁ&をつけて同時実行するなりqueueに放り込むなりしておけばいいんだけど。
「ポインタを教えて」
良く何かを質問する時に「ポインタを教えて」というのを見かけるのだけど、多分これはgive me pointersという英語表現から来ていると思われる。で、この表現、ポインタ変数になぞらえて「解答そのものでなくてもいいから、場所だけでも教えて」という意を表すものだと思って使っているのではないか(自分もそうだった)。つまりプログラマにしか通用しない独特な表現という認識だということだ。
しかし辞書をひいてみると分かるが、pointerには「助言」という意味があって、give me pointersは、「助言を下さい」という、ごく一般に使われる英語表現なのだ。だから「ポインタを教えて」っていうのは、何だか妙な言い回しってことになるね。
円周率が3.05より大きいことを証明せよ。
っていうのを電車の中で見つけて、円に内接する正六角形を思い受かべてみたら、残念、3より大きいという結果しかでなくて、正八角形とか十二角形とか考えてみたんだけど、さすがに紙に書かないと無理。で、今日ちょっと考えてみたんだけど、これって小学生には無理でない? と思ってGoogleに答を探しに行ってみたら、なんか余弦定理とか使ってるし。あれ? 小学生用の問題じゃないの、これ? 余弦定理なんてやらんよね。小学生じゃ。ていうか余弦定理なんてすっかり忘れて「sin(15°)って幾つだろう」とか悩んでましたよ。
Delta 2496
んー、結局Ivory用としては使えないという結論に逹っした。すぐにタイミングがずれる。このカードはオーディオとMIDIが1つになっているので、まずはオーディオをE-MUの0202に逃がした。かなり改善されたがMIDIだけにしてもずれる。試しにMIDI経由にするのをやめて、MIDIファイルでIvoryマシンに持っていって演奏させると問題ないので、MIDIの通信でずれているようだ。どうもドライバのプライオリティが低い感じがする。
仕方がないのでUSB-MIDIインターフェースを買いにいくことにする。こんなことならE-MU 0404を買っておくべきだったか。いやでも値段的には0202 + MIDIインターフェースの方が安上がりか。
Dilbert
英語の勉強と称して毎日Dilbertを読むようにしているだけど、難しい。こういうくだけた英語は、さっぱり分からないのが多い。分かるのは半分くらいかな。今週の日曜版は、良く分かった。このレベルばかりなら問題ないのだけど...
久しぶりの開発リーダ。
何年振りかな。丸投げじゃなくて、ちゃんと自分で設計して根幹部分まで実装して、枝葉のところをメンバに実装してもらう仕事。フレームワークレベルは御仕着せモノを使わなきゃいけないという縛りはあるけど、このレベルまで自分が開発に関われる仕事は。10年振りくらいじゃないだろうか。考えてみると、昔も、この頃までは比較的うまくいっていたように思うんだよな。
単体テストも機能テストも、djUnitで完全自動化している。意外とメンバからの反発は、ほとんどない。まぁ、これまでも反発は、いつも管理者層からだったけど。要は自分が管理者側になってしまって、テストの自動化が有効であることを示せればいいわけだ。更に上の管理層は、品質とスケジュールが守れれば、別に文句はないわけで。
とはいえ、テストの自動化はともかく、設計から根幹部分までコードするというやり方がとれる人員は、残念ながら、あまりいない気がする。デザインと実装が、あまり分業化するのも考えものだ。
今、50代くらいの人と、一緒に仕事をしているんだけど、とても共感が持てるのは、自分が、じじいになって来たという面もあるんだろうけど、この世代が若い頃は設計から実装まで1人でやってきた人が多いからだろうと思う。上流に携わっている人が多いのだけど、ちゃんと実装のことを考えた設計ができる。パフォーマンスの考慮とか、エラーが起きた時に、どういう対処が必要かとか、的確に設計できる。ところが3-40代の上流設計者となると、こういう人は滅多にいない。実装も保守も、あまり経験していない人が多いんだよね。
となるとソフトウェア業界も団塊の世代退職問題かということになるのだけど、こういう人達は、さっさと会社を見限ってフリーランスで年に数千万稼ぎ出しているような人が多い。なので、意外と問題無いのかもしれない。とはいえ後継者が育つ環境は、皆無に等しいかもしれないな。
Java 2.0
Java 2.0とか書くと、すごく新鮮な気がするのは、1.4から突然5.0になったんで2.0を経験していないからだろうな(Java2というのはあったけど、実態は1.2のごまかしだったし)。1.1の時代に戻って、ロギングとか、XMLパーサとかジェネリクスとか、Swingとか、コミュニティ主導で作成し直したJavaというのも見てみたい気がする。企業アプリケーション開発では使えないだろうけど。
Ivoryマシンようやく安定。
メモリをUMAXの2枚セットに交換してきた。昨日一晩Memtst86を流してみたが、全く問題なし。しかしCore2 Duoマシンの方は何で大丈夫なのかと思ったら、こちらはオーバークロックしている関係で720MHzになっていた。あとメモリのアクセスタイミングも違うのかもしれない。BIOSに表示されないので分からないが。
で、今度のマザーはSATAのHDDも使用できるので、これでも試してみたが、問題ないみたいだ。何のためにフラッシュメモリを買ったんだか... これまでの実験からは、
- Hyper threadingはoffった方がいい感じ(気のせいかも)。
- IvoryのバッファサイズはLargeにした方がいい。
- ASIOのバッファはなるべく大きく。Deltaの2496は2048が最大値。正直、これが一番効く感じ。
- サンプリング周波数は48kHzの倍数がいいようだ(これも気のせいかも)。
- VSTHostのPriority設定は、Process:High、UI:Lowest、Audio:Highestが、今のところは一番良い結果になっている。闇雲に上げ過ぎない方がいい感じだ。
- データが壊れていても、Ivoryでエラーにならない場合あり。Library toolでverifyしてみると良い。
こんなメモリエラーもあるのか。
先週組んだPentium4マシン、問題が2つあった。1つはキーボードが効かなくなることがあること。RealForce PS/2版をつないであるのだけど、Windows起動後キーボードが入らないことがある。これはDP965LTの問題のようだ。Googleで探してみると、そういう報告が幾つか上がっている。USBなら問題ないようだ。どうも起動時に何かキーを押しておくと大丈夫のようだ。ま、どうせIvoryマシンとしてVNC経由で使うからいいか。
もう1つは仕上げのMemtst86が途中でハングすること、今週はずっとこれで悩んでいた。メモリエラーが報告されるわけではなく、突然ハングする。症状的にCPUの熱暴走っぽいので、クーラを付けかえたりしていたのだけど、問題無いし、動作中に触ってみても、冷たいと感じるほどだし、どうも熱暴走とは考えにくい。余分なカード類を抜いて、HDDのケーブルも外し、電源も別のものに替えたりしてみたけど症状が変わらず。で、BIOSでメモリのクロックを800MHzから667MHzに落としてみたら、あっさり直った。やっぱりバルクじゃだめか。しかしこんなメモリエラーの出方もあるのか、勉強になった。ツクモの交換保証を付けておいたので、明日ブランドものに交換してこよう。
SpringLayout
「Java SE 6完全攻略」 第21回 ベースラインでのレイアウト
SpringLayoutというのは知らなかった。なんかTeXの\hfilを思い出す。\hfil \hfill \hfilllとか、場当たりなネーミングだったなぁ。
今更Pentium 4
Ivoryマシンは、Athlon XPで組んだ。一応3000+なんだけど、定格で動かすと熱暴走するので、ダウンクロックして2100+相当にして使用。Ivoryは、タスクマネージャで見る限り、CPU使用率は比較的低い。Athlonの古いモデルで組んだのも、CPUは、そんなに速くなくても大丈夫そうだという目論見があったからだ。
しかしCPUの速さも結構効くようだ。たまに和音がずれる。SDHCのメモリリーダのアクセスランプを見る限りメモリへのアクセスは無い。つまりCPUがネックになっているようだ。Ivoryは音が出る瞬間にだけ大量の演算を行うから、平均して見るとCPUの使用率が、それほど高くは見えないのだろう。瞬間最大風速的なパフォーマンスが要求されるわけだ。もっともずれるといってもヘッドホンで、かなり集中して聴かないと判別できない程度なのだけど、気にしだすと、もうだめだ。メモリ1.5Gだと、バッファサイズをLargeにした時に、立ち上げ時にエラーが出るのも気になっていた。かといって今更DDRの1Gに投資もいやだし。
気が付くと、AKIBA PC HotlineでCPUの値段をチェックしている自分に気付く。以前Core2で動かしていた時の挙動から、Ivoryは1コアしか使用しないので、Core2は宝の持ち腐れだ。となるとAthlon64あたりかなと思っていたのだけど、こんな記事を発見。今ってあの爆熱Pentirum 4の消費電力が65Wまで下がっているの? 値段をチェックすると1万切ってるし。
で、マザーをチェック。Core2の時に買ったGIGABYTEのDS4はスタンバイに失敗するので、今度はオーバークロックするつもりも無いし、Intel純正DP965LTに決定。値段も1.5万切ってるし。というわけでPentium4 641、メモリ2G付き4万で、祝購入。
しかしまぁ、このマザーが厄介で、XPの導入にやたらとてこずる。無印XP導入直後はネットワークが見えない。仕方無いからUSBメモリに最新ドライバを入れて持って行こうとするも、USBまで認識されない。で、付属のCD-ROMから入れようとすると、なんかUSBまわりのドライバでエラーが出まくって導入できない。どうやらSP2があたっていないと導入できない感じ。仕方無いのでCD-RWに焼いて持っていった。無事チップセットドライバまで入れてUSBを認識させたのだけど、やたらとブルースクリーンになる。念のためとBIOSをアップしたら、XPが全く立ち上がらなくなってしまった。というわけで現在二度目のインストール中。やっぱり餅は餅屋、マザーボードは台湾製の方がいいのかね...
マザーではミソが付いたが、65W版Pentium 4はいい感じだ。ファンコントロールも付いていて、ウソのように静かだ。エンコードとかしなければ最高のコストパフォーマンスじゃないかな。
P.S. 2回目も失敗。3度目はSP2入りのWindowsXP CDを作ってから導入してみたら,あっけなくうまくいった。やっぱりSP2入りが前提のようだ。
新しいOSへの対応は無料で行うべきなの?
「ある画像キャプチャーソフトは、Windows Vista対応版としてバージョンが3から4へと上がった。追加コストを支払ってダウンロードして使ってみたのだが、機能向上はほとんどないのである。それでいて、バージョン3はWindows Vista非対応のままで、事実上使えないのだ。こんな商売をしているメーカーの製品は絶対に使うべきではない。」
一般の感覚って、こんな感じなのかな。新しいOSに対応させるためには、テストが必要だし、場合によってはコードの修正も必要なわけで、対価が必要ってのは仕方が無いと、自分は感じるんだけど。あと、機能の追加なんていらないという意見は無いのかなぁ。結局OSといっしょにアプリまで、使いもしない機能が増えて、ぶくぶくと太っていくのは勘弁して欲しい。チューニングで速度とメモリフットプリントの改善っていうなら歓迎だけど。
売り上げ高で比較?
音楽業界幹部ら、現状に悲嘆--アップルのジョブズCEOを非難する声も
何で売り上げ高で比較するんだろう。ダウンロード販売になれば、CDのプレスや流通、在庫のコストが大幅に削減できるんだから、当然一曲あたりの単価は下がるわけで、売り上げ高が減るのは当然なんじゃないだろうか。むしろ4%の減少で済んでいるってことは、利益的には非常に好調だということでは?
しかし考えてみればレコード会社っていうのは本質的には、曲を売っているように見えて、本来的には曲を流通させることを生業としているから、流通コストが減るのは困るってことなのかな。だとすると、
「また消費者が再び音楽にお金を支払ってくれるようにしなければならない」
という言い方はどうなのか... 「我々の流通サービスにお金を支払ってくれるようにしなければならない」というのなら分かるが。













