« December 2004 | Main | February 2005 »

January 2005

20 January 2005

ISO 13407

ISO 13407は、Human-centred design processes for interactive systems。つまり、インタラクティブシステムのための人間中心デザインプロセスということですな。(直訳w)
以前、日経バイト2004年5月号でUI変曲点というテーマでユーザインターフェースに関する記事があり、それを昨夜久々に読んでみた。ISO 13407のプロセスをもう少し深く知りたくなったので、探してみた。結構、日本でネット上で公開されているドキュメントは薄い。あまり認知されていない規格なんだろうか、ISO 13407は。
人間中心設計(ISO13407対応)プロセスハンドブックは、ざっとしか眺めていませんが、参考文献など数多く記載されているので、糸口になりそうな印象。(但し印刷用に作成されたPDFなのか、横になっているページがあってディスプレイでは読みにくい。w)

19 January 2005

xxドリブン

CPAN モジュールドリブンなコミュニティサイト。
My Favorite Perl Modulesのバージョンアップに関するエントリの中で書かれた内容ですが、この”~ドリブン”という表現がかなり気に入りました。確かに最近の流行りではMDAだったり、GUIアプリケーションなんかはイベントドリブンだったり、データドリブンなんて言葉も使いますよね。FeedBackBlogLinesなんかはRSSフィードドリブンなんて言えるんですかね。いずれにしても、”~ドリブン”ってとっても良い表現ですね。使わせてもらいます。

それから、伊藤さんは以前NDO::Weblog上でインターネット的というキーワードを出されていました。これはおそらく糸井重里氏の書籍であるインターネット的を指しているのではないかと思いました。hackしながらも向こう側へ突き抜けようとする感じに共感します。

P.S. 生まれてはじめてのトラックバック送信。(w

ヒープとスタック(構造体とクラス)

構造体のチュートリアル

ヒープとスタック
クラスで new 演算子を呼び出すと、ヒープに割り当てられます。ただし、構造体をインスタンス化した場合は、スタックに作成されます。

構造体を多用するC/C++デベロッパにとってC#での注意点かも。

型のサイズ

C++ .NETアプリケーションで、ちょっとトリッキーな(禁じ手?)をやってまして、例えばプラットフォームSDKで定義されているDWORDを使用せず、独自にtypedef unsigned long DWORD;といったエイリアス的な型定義をしているところがあったんです。(このC++ .NETで作られたDLLとC#のアプリケーションが連動するので、.NET寄りな意識が働いているようでした。またwindows.hはインクルードしたくなかったみたい。)で、こいつが起因して、メモリの内容がうまく取得できたり、出来なかったり。
そりゃそうだ、と。DWORDは32-bit unsigned integerで、windows.hでtypedef unsigned long DWORD;と定義されているわけです。で、片や.NETにおけるlongは64-bit signed integerです。
つまりは、こういうことかと。32-bit unsigned integer(windows.hにおけるDWORDの定義)でなければならないのに、64-bit unsigned integer(独自のDWORDの定義)になっているために、メモリをぶっこわしていたんだな、と。
いや~Pen4 1.6GHzでアプリケーションを実行するとメモリの内容は正しく取得できるのに、Pen4 3GHzだと正しく取得できないという、ちょっとレアな状態に見えたので、ホント悩みました。CPU依存・・・、あぁintって処理系依存だったなぁ・・・。なるほど。って対策した後に気づきました。一安心です。

さよなら、たー君

2005/1/19、愛猫のたー君(重田 タンゴ)が他界しました。呼びかけたら起きてくるのではないかと思うくらいやすらかな最期でした。タンゴという名前は端午の節句から来ています。5/5生まれです。次の5月を迎えれば、丸12年になるところでした。たくさんのことが思い出されます。引っかかれて大怪我したこと、一緒に布団で寝たこと、妻と結婚する前には話題に出して会話をつないだこともありました。ここ数年はなかなかかまってあげられなかった。この5ヶ月は糖尿病との闘病生活を送ってきましたが、ついに尽きてしまったようです。11年以上もの間、本当にありがとう。何もしてあげられなくてごめんね。いつも近くにいたから気づかなかったけど、もう会えないと思うと急に寂しくなるよ。だ、なんて、自分勝手だね。たー君、闘病で疲れたろう。ゆっくりお休み。天国で達者で暮らすんだよ。じゃ、また会おうね。

18 January 2005

Borland、コンサルティング会社TeraQuestを買収

Borland、コンサルティング会社TeraQuestを買収

TeraQuestは、プロセス改善およびソフト会社の能力を測る指標となる「能力成熟度モデル」(Capability Maturity Mode=CMM)の共同開発を手掛けた企業
Borlandは、一般的にはJBuilderなどIDEやC/C++コンパイラが目立つが、TogethercaliberRMといった上流工程製品を保有する企業でもある。今回の買収によってきめ細かい製品になることが予想される。特にCMMIに関連した企業であるならば、コンサルテーションとソリューションの両方を展開していくことになるだろう。これはBorlandが製品企業からサービス企業へさらにステップアップするための行動であると思う。IBMのRationalを含めたソリューション展開と競合することが考えられるため、今後、どのような展開があるか見てみたいと思う。

supercar解散

supercar
残念・・・。それぞれが活躍されることを期待しています。僕の持っているアルバムを並べておきます。
HIGHVISIONRECREATION

17 January 2005

処理時間計測

[HOW TO] Visual C# .NET で、QueryPerformanceCounter を使用してコードの時間を計測する方法
処理時間を計測するためのWin32APIで、QueryPerformanceCounter()、QueryPerformanceFrequency()という関数が紹介されている。なかなか興味深いのでエントリ。


long ctr1 = 0, ctr2 = 0, freq = 0;
if (QueryPerformanceCounter(ref ctr1) != 0) // 時間の計測を開始します。
{
for (int i = 0; i < 100; i++)
{
// 計測対象の処理
}

QueryPerformanceCounter(ref ctr2); // 時間の計測を終了します。
QueryPerformanceFrequency(ref freq); // 最小分解能を取得
System.Diagnostics.Trace.WriteLine("チャート描画を行った時間: " + (ctr2 - ctr1) * 1.0 / freq + " 秒。");
}

ソースコード中にネストが入るので、簡易デバッグ用に突っ込んでおくには、ちょっと嫌悪感が出そうなところだけれども、最小分解能が分かったりして、ちょっと精度が上がりますね。

myjavaserver

myjavaserverにアカウントを取得しました。~s14u
今後Javaで実装したものを提供していけたら良いなぁと思っています。今のところは、カスタムタグを利用して、ある程度ユーザのカスタマイズが可能な(MovableTypeのTemplate Tagのような)ものを提供していければ良いなぁと思っています。Javaでのライブラリ数ってPerlよりも少ないですからね。そんなわけでmyjavaserverの方を更新しましたらこのブログでお知らせしていきたいと思います。

Google AdSense、Amazon アフェリエイトプログラム

http://www.s14u.info/として申請していたGoogle AdSense及びAmazon アフェリエイトプログラムですが、まず却下されてしまいました。理由はいずれもサイトが構築途中であると判断されたためでした。確かにhttp://www.s14u.info/は単なるリンクサイトであって、広告を掲載するメリットが全くないサイトでしたので当然ですな。
次にhttp://www.s14u.info/mt/を申請しました。(このサイトです)そしたら承認されましたので、Amazon アフェリエイトプログラムとGoogle AdSenseをこのサイトに付けられるようになりました。広告で重たくなるようなことをするつもりはありません。書籍やCDなどを紹介することなどに活用するためのものです。(それで小銭が入れば、サイト運営の足しになるので。月2万円の小遣いでやりくりしているので。w)
ときどき活用してみてください。

Access Ranking

Powered by Six Apart
Sponsored links