Antoine.st 2010-07

2010-07-19

Google Public DNS

自宅環境で、ときたま DNS が引けないことがあるので、Google Public DNS を設定してみた。引けなかったところがさくっと引けていい感じ。8.8.8.8 or 8.8.4.4 だから、忘れることもないし。

基本的に、Active Directory やらを導入しているわけでもなく、無線 LAN のルータにやってもらってるだけの DNS なので、これでもよさげ。問題ないようなら、しばらく使ってみます。


2010-07-15

Fast!

いや、これ、本当に速いです。ついでに Windows 7 に入れ替えたんですが、オペレーティングシステムの起動もさくっと行きますし、Visual Studio や Office もあっという間。こんなにいいなら、もっと早く移行すべきでした...。

あんまりベンチマークとかはやらない方なんですが、これはさすがに比べてみたくなったので、さくっと。こんな感じです。

  • HDD はこんな結果

  • SSD はこんな結果

圧倒的です...。比較対象の HDD は、それまでシステムドライブだった 7200 RPM のやつです。こんなに違うんですね。


2010-07-13

SSD

256 G バイトなので、オペレーティングシステムを入れ替えてシステムドライブにしようかと思ってます。さっそく作業開始。さっくり行くでしょうか...。


2010-07-12

Open XML

久しぶりに、Open XML を使ってみた。対象が Office 2007 なので、1.0 の方で。従来の 97 〜 2003 形式のファイルがなくなってくれると、これだけで何とかする方向でも行けそうです。

オートメーションはやっぱり重いし、サーバーサイドは非サポートだしと、いまいち感が漂うわけですが、そうは言っても、2003 以前のファイルを作らないとダメ、ってことだと、どうしようもないです。さすがに、POI ってわけにもいかないですし。『2003 以前を無視できるかどうか』がポイントですね。やっぱり。


2010-07-11

Cause

プログラムに何か問題があって、『この辺に原因がありそう...』『これをちょっと修正してみたら治った』なんてことがあります。たいていの場合はこれで充分だと思いますし、今まで、そんな対処をやってきた訳なんですが、最近、それでは済まないケースに突き当たることが。

原因を突き詰めていくと、ライブラリやらオペレーティングシステムの内部処理だったりで、ソースがあるわけじゃなかったりすると、そこで追求の手が止まることになります。『オペレーティングシステムの内部処理に原因が』とか説明するんですが、それで納得してくれない場合も。うーん。大事なのは、プログラムがちゃんと動くことであって、動かない原因じゃないと思うんですけど...。


2010-07-10

Performance

コードを書いておりますと、パフォーマンスが気になることがあります。それで、どうせ書くなら速い方がいいからと、ちょっと小技を工夫したりするもんです。

それはそれでいいですし、否定する訳じゃないんですが、パフォーマンスの測定方法に少々違和感が。パフォーマンスが違うことを明示したいばかりに、10,000 回、100,000 回ループして比較したり。えーと、その処理、そもそもそんな使い方するんですか? やっぱり、パフォーマンスは実測 ( というか、実際のコードを踏まえたもの ) でやらないと意味ないですよ。

確かに、「10 倍違う」とか言われると、速い方を選ぼうかなと思ってしまいます。でも、それがその処理の何パーセントを占めるのか、きちんと把握できてますか? あんまり影響がないのなら、わかりやすい方を選ぶべきだと思います。


2010-07-06

Just thinking...

せっかく会社を作ったことだし、個人事業主の頃とは違った何かをやるべく、ただいま鋭意考え中です。といっても、やりたくないこと、つまらないことをやっても意味はないので、何か面白いことができないかなと。

何かお知らせできるくらいまでまとまったら、ご報告します!


2010-07-04

Named Pipe

久しぶりに名前付パイプを使ったプログラムを書いておりまして。なんか、微妙にはまってました。これまでは、CreateNamedPipe() して、適当に受けて終了、みたいなやつだったんですが、今回作ったのは、サーバー側が複数のクライアントからのデータ送信を受ける、というやつ。

クライアント側を連続起動したとき、CreateFile() が失敗するので、なんでだろう、と数十分悩んでました...。

このような構成だと、CreateNamedPipe() して、ConnectNamedPipe() してから ReadFile() でデータを読み取り。その後、DisconnectNamedPipe() して、さらに ConnectNamedPipe() に戻る必要があると。無駄に時間をかけてしまいました。

Why did you choose your job?

先日、とある場所でのやり取りを見てたときの話。SI 屋さんに入社した人に、『メーカーに落ちて、SI しか入れなくて可哀想ですね』的な発言が投げかけられてました。

メーカー至上主義なのか何なのか知りませんが、すっごい違和感です。メーカーに入りたい人は『メーカーでやりたいことがある』から入社を志し、SI 屋さんに入りたい人は『SI 屋さんでやりたいことがある』から入社を志すもんじゃないんでしょうか。

何というか、『メーカーに入る』ってことが最終的な目標になっちゃってて、いわゆる『目的と手段をはき違える』状態に陥ってるように見えます。

ま、もちろん、二十歳そこそこで、きちっと人生の目標を見定めて、それにあった会社を選び、その会社に入る、ってのはそうそうできることじゃありません。でも、さすがに、『どこに入るか』ではなく、『なんのために入るか』ってのを重要視すべきでしょう。

自分が『人生の目標』を考えたときのことを思い出しつつ、そんなことを考えてました。あのときの目標、半分くらいは達成できたような気がします。あとの残りはなんだったっけかな...。


2010-07-02

The end of MVP

なんかたいそうなサブタイトルを付けてますが、別に MVP プログラムがなくなるとかいうわけではなく、連続受賞が途切れた、ということで。7 回ほど受賞して、2003 〜 2010 年まで MVP だったということになります。

思えば、この間色んなことがありました。住んでる場所もあっちに行ったりこっちに行ったり、いろいろ変わりましたし。MVP になってよかったことと言えば、それまではネット上でしか知らなかったすごい人とお知り合いになれた、とかでしょうか。

MVP のみなさん、MVP プログラムを担当してくれてたマイクロソフトのみなさん、そのほか、お世話になったみなさん、ありがとうございました。