CopySpdBench ― 2008年10月05日 17時49分18秒
SSDスレで話題になっているコピー速度測定ベンチマークをやってみました。といってもSSD持ってないのでHDDの結果です。
やってみるとOSの影響がかなり強く出ますね。OSをVistaにしてメモリをたくさん積めばディスクキャッシュの恩恵を受けられるということでしょうか。
SSDを買おうと思っている人はまずはVistaを買った方が良さそうです。XPだとSSDのパフォーマンスを生かせないのかも。
WindowsXP Athlon64X2 4200+ 2GB
CopySpdBench Build: [Sat Oct 4 16:37:41 2008]
OS: Windows XP
Disk C: Capacity: Total=32.1813[GB] Free=19.1241[GB]
C: 500M 1File[s] 5Trial[s] : Average: 27.6922[MB/s] (18.0556[sec])
C: 512K 1000File[s] 5Trial[s] : Average: 14.9402[MB/s] (33.4668[sec])
C: 4K 5000File[s] 5Trial[s] : Average: 1.47261[MB/s] (13.263[sec])
Vaio TypeS Vista 4GB RAM
CopySpdBench Build: [Sat Oct 4 16:37:41 2008]
OS: Windows Vista
Disk C: Capacity: Total=93.158[GB] Free=56.1346[GB]
C: 500M 1File[s] 5Trial[s] : Average: 30.2605[MB/s] (16.5232[sec])
C: 512K 1000File[s] 5Trial[s] : Average: 24.5233[MB/s] (20.3888[sec])
C: 4K 5000File[s] 5Trial[s] : Average: 1.19922[MB/s] (16.2866[sec])
VHDの容量を拡張する ― 2008年09月26日 11時49分09秒
ベータ版のソフトをインストールして確認したり、仕事で使う開発環境を構築するのにVirtualPCを使っています。VMなら環境が壊れても作り直せばいいし、いろんな環境で動作確認するときにも便利です。
VirtualPCを使うときにいちいちOSからインストールするのは手間がかかるので、昔作成したOSクリーンインストール状態のVMを使い回しています。新しい環境が必要なときにはこれをコピーすればいいので楽なのです。
このVMはかなり昔に作成したので容量が16GBしかありません。最近これでは容量が足りなくなることが多くなってきたので容量の拡張の方法を検索したのですが後で変更するのは無理だと書いてあったので新しく作り直すしかないかと思っていました。
そんなときにVHD Resizerというソフトをみつけました。これを使えばVHDの容量の変更が簡単にできます。
これでOSをインストールし直す手間が省けました。
VS2008 FileFinder ― 2008年09月26日 11時36分22秒
VisualStudioのアドインでVS FileFinderというソフトがあります。
ソリューションの中のソースコードをファイル名で検索できるソフトなのですが、Googlesuggestのように文字を入力するごとに動的に候補が絞り込まれていくのが特徴です。普通の検索のように結果が出るのを待つことなく、2,3文字入力するとたいていさがしているファイルが見つかるのでかなり便利です。
ソースファイルがたくさんあるような大きなプロジェクトではこれがないと不便です。
ただVS2005用のバージョンで開発が止まっていてVS2008では使えませんでした。
そこで検索してみたらVS2008 FileFinderというページを見つけました。VS2008対応の他に新機能も入っているそうです。早速試してみます。
IT業界の多重請負について ― 2008年09月20日 09時43分06秒
「エンジニアの未来サミット」レポート
http://gihyo.jp/news/report/01/engineer/0002
SI業界の多重下請け構造が問題になっているようですね。ただこれはなかなかなくらないと思います。多重請負を禁止した会社もあるようですが、社内にできる技術者がいないためにプロジェクトが失敗してしまったところもあるようです。
多重請負には業界の製品ごと、言語ごとに細分化された技術者のスキルもあると思います。技術者も自分の慣れ親しんだ言語以外はやりたがらないので技術者の流通経路が複雑化します。単にコスト削減のために下請けを使っているのではないです。
ただ偽装請負に関してはコスト削減のために悪用される恐れがあるため法律で禁止されています。しかしこれも国がきちんと違反を摘発する姿勢を見せないので黙認されています。法律とその運用が一致していないため企業も違反を知りながら捕まらなければいいという考えなのでしょう。内部統制とかコンプライアンスとかいってもその程度のものです。
多重請負すべてをなくすのは難しいのでまずは偽装請負をなくすところからはじめてほしいと思っています。偽装請負がなくなれば下請けを使えばコストを減らせるということはなくなるので健全な形になっていくのではないでしょうか。
すべて下請けに出すとコストがかかるので、コアとなる技術については自社で技術者を確保し、ニッチな分野やきちんと切り分けができる仕事については他社のサービスを使いながらシステムを構築するというような形に各SI会社がなって行くのが理想だと思います。
iPod 2.1 JailBreak ― 2008年09月13日 13時30分32秒
iPod2.1もJailBreakできるようになったようですね。
http://www.quickpwn.com/2008/09/jailbreak-ipod-touch-21-gui-version.html
WindowsXP SP3 iTunes8.0 iPod touch 2.1
以上の環境でJB成功しました。
クラウドについて ― 2008年09月07日 23時21分48秒
会社の技術調査でクラウドコンピューティングについて調べています。これは業務の時間の一部を技術調査に割り当てて社内で調査結果を発表するというものですが、MSのクラウドコンピューティングを調べていくと面白いですね。情報源はLive2スレです。
MSの今後の展開についてはPDCで明らかにされるようです。それまでは断片的な情報源から推測するしかないようですね。PDCでどのようなことが発表されるのか期待が高まっているようで、私は行けませんが注目してみたいと思います。
ちなみに日本からPDCに参加するには60万くらいかかるようです。 http://www.pts.co.jp/corp/pdc2008/index.html
調査すべき事
- Red dog
- Oslo(次期VisualStudio)
- 新しい宣言型プログラミング言語「D」
- 宣言型プログラム言語を活用するなどより高いセマンティックレベルへの移行
- Intellipad(通称Emacs.NET)
- 新しい宣言型プログラミング言語「D」
- C#4.0
- C# 4.0 のキーワードは「並列プログラミング、 動的コード生成」
- 並列プログラミング「Parallel Extension」
- DLR の抽象構文木が System.Linq.Expressions 名前空間に変更
- C# 4.0 のキーワードは「並列プログラミング、 動的コード生成」
- F#
- 関数型言語
- .NET4.0に入るのか?
- CoreCLR
- SilverlightやLive Meshの実行基盤
- MACでも動作するなどマルチプラットフォームの基盤となる
- .NET FrameworkからCoreCLRへの移行が起こるかも
関連リンク
http://blogs.msdn.com/charlie/archive/2008/01/25/future-focus.aspx
http://blogs.msdn.com/shozoa/archive/2008/08/08/dlr-beta4.aspx
http://www.itmedia.co.jp/enterprise/articles/0802/06/news126.html
http://www.codeplex.com/LiveLabsLogging
http://blogs.sqlpassj.org/hotikisu/archive/2007/11/09/24246.aspx
partialをむやみやたらと使用しない(C#) ― 2008年09月06日 18時24分27秒
仕事で他の人が作成したプログラミングをメンテする機会が多いのですが、その中でやめてほしいのがpartialをやたらと使ったプログラミングです。
オブジェクト指向だろうが構造化だろうが1つのクラスやメソッドにコードを多く詰め込みすぎるとメンテしにくいのでクラスやメソッドの分割を考えると思いますが、そのときにpartialを使う人が結構います。
partialを使った分割は完全にクラスを分割することに比べれば簡単にできるのでpartialを使いたい気持ちはわかりますが、そのクラスを使う側にとって見ればpartialクラスは結局1つのクラスなので単に馬鹿でかいクラスができることになります。
partialがなければファイルがどんどん大きくなっていくのでクラス分割を考えるのでしょうが、partialを使ってしまうとクラスがでかくなっていくのがわからなくなってしまいます。
partialを使ったクラスでpublicメソッドが50を超えているようなものも実際に経験しました。今やっているプロジェクトではコーディングルールでpartialは禁止にしています。
partialは自動生成されたコードとユーザーのコードを分けるために考えられた機能なのでむやみにほかの用途に使うのは考え物です。
TechEd会場から船で帰る ― 2008年08月30日 00時24分06秒
TechEdでもらったもの ― 2008年08月27日 23時15分55秒
Vistaでスリープ復帰後にUSBキーボードが使えない ― 2008年08月24日 16時13分38秒
仕事で使っているVistaマシンではスリープを使って電源オンオフをしています。朝会社に来たときにVistaマシンをスリープ解除するとキーボードを認識しないことがあります。その場合USBを差し直せば認識するのですが、この問題を解決するFixがあるようです。
Windows Vista ベースのコンピュータを起動するか、コンピュータのスリープ状態を解除すると、USB デバイスが機能しないことがある http://support.microsoft.com/kb/941996/ja
これで直るかどうか今度試してみます。
ところでRealForceに台湾版103キーボードが存在するらしいですね。
http://www.topre.co.jp/products/comp/index.html
これは日本でも発売されたらほしいのですがどこかで売ってないでしょうか。海外へ行くしかないのか。
追記
Windows Vista Service Pack 1 に含まれる修正プログラムおよびセキュリティ更新プログラムで確認したところこの更新パッケージはSP1に含まれるらしいです。SP1入れてもでるということはどうしようもないのか...

