Windows Vista の2つのガジェット

最近 windows vista のガジェットをサイドバーから飛び出させることができることを知りました。あ~、windows vista の ui をクラシックモードにして動かしているので普段はサイドバーを表示していないのです。ですが、時計だけ表示するといいかなぁと思って、デュアルディスプレイの片方に表示させていた訳ですが。

さて、ふと「標準でどんなガジェットが入っているのだろう?」と思ってみてみると、「株価」なんてのがあります。起動すると何処からかデータを取ってきて30分遅れで表示しています。何処からかと言うと、MSN マネー http://jp.moneycentral.msn.com/inc/Attributions.asp からのようです。ガジェットに表示する訳ですからデイトレード用(って30分遅れじゃ意味ないかもしれないが)ってところでしょうか。ガジェットですから中身は javascript なはず。解析すれば会社ごとのデータを半リアルタイムで取得ができます。

こんなのもあるようです。
株価データ自動収集・分析サーバの開発(レンタルサーバ利用,データベース[Mysql])
http://blog.goo.ne.jp/a-stock

私が株価の情報を求めているのは、自動売買をしたいわけではなくて、逆、

 * 長期分析型のデータを集めたい。
 * SQL Server や Oracle などのへ負荷をかけるためのデータが欲しい。
 * 集計関数などで負荷を変けるデータが欲しい。

というわけで、本当ならば工場の在庫変動データとか車の部品データとかがあればいいんですが、なかなか出回ってない…というか出回るわけがない。というわけで、株価データがお手軽かなと。
閑話休題(それはさておき)

vista のサイドバーに表示するガジェットは javascript ですから、比較的(?)簡単に作成できます。簡単に作成できるわけですが、何に使うか?は謎ですねぇ。
おもちゃとしては、時計やface、天気なんかを表示してもいいのですが、それぞれ必ず表示されていないと駄目(時計はいいけど)という訳ではありません。必然性がないのですね。そうなると、いまいち「売り」ないのも頷けます。そうマーケティング的には技術アピールとか広告としてか利用価値がない(あるいは利用価値がある)。

それで、ひとつのディスプレイではなくて2つのディスプレイ、いや、もっと制限してサブディスプレイという形態を考えるともう少し幅が広がります。

 サブディスプレイとして使える3種類の8型液晶
 http://www.rbbtoday.com/news/20080307/49355.html
 USB 2.0対応 マルチディスプレイアダプタ(SXGA対応モデル)
 http://www.logitec.co.jp/products/dispad/ldesx010u.html

この場合、できるならば小さいディスプレイが良い。というのも

 * 複数のディスプレイを扱う場合と違い(デイトレードなど)、片方はアラームの扱い。
 * サブディスプレイをタッチパネルにして入力方式を変える。
 * メールなどはサブに置き、メインディスプレイではExcelやVisual Studioで作業する。

最近、vaio-T typeと 液晶ディスプレイの2枚で作業をしているのですが、サブディスプレイ(vaio-T typeのほう)に Outlook や 映像系(笑)を置いておくと作業が進みます。特に、メインディスプレイではリモートデスクトップを全画面で使うことが多いので、先のガジェットタイプや、前面表示のアプリでは作業の邪魔なんですね。

そこで、サブディスプレイを扱う技術情報ですが(やっとここまで話が来た)、

Windows Live ギャラリーから「Windows SideShow ガジェット」で情報を拾います。
http://gallery.live.com/devcenter.aspx

サブディスプレイを使う技術は windows sideshow と呼ぶようです。

Overview of Windows SideShow
http://msdn.microsoft.com/en-us/library/ms744147.aspx

ドキュメントの類は英語版しかありません.

Windows SideShow
http://msdn.microsoft.com/en-us/library/cc982274(VS.85).aspx

この sideshow は、先のサブディスプレイ以外に携帯端末でも利用できます。機種が限られているようなので(未調査)どんなものに乗っけられるのかはわかりませんが。

2007年12月のコンテスト
「Windows SideShowガジェット・アプリケーション・プログラム開発コンテスト」最優秀賞決定
http://ascii.jp/elem/000/000/090/90061/

MSDN マガジンの記事
Windows SideShow デバイスのガジェットを記述する
http://msdn.microsoft.com/ja-jp/magazine/cc163488.aspx

windows vista で検索すると確かに sideshow があります。

<画像>

sideshow in vista

sideshow in vista

多分、windows 7 にもあるんじゃないかな。

<画像>

sideshow in wndows 7 beta

sideshow in wndows 7 beta

ヘルプを読むとごちゃごちゃとややこしそうですが、ざっとMSDN等を読んだ限りでは、

 * Windows Vista Basic Premium 以上(HOMEでは動かない)
 * C# 等の .net 言語で書ける。
 * ユーザーモードドライバーをインストールする必要あり?

で、何に使えそうかと考えると、

 * 中古のPDAのタッチパネルを使ったインターフェース
 * 中古のPDAの液晶を使ったアラーム
 * windows mobile が入った携帯電話をサブ画面として利用。
 * 携帯電話を PC のリモコンに。

な感じで。

そう、要するに「ポケベル」的な使い方がいいんですよ。
例えば、メールを読むのにノートPCを開かないと読めないのは、まあそれでもいいのですが。携帯電話に転送してぽちぽちと読むのもそれもいいんですが。メールをチェックするのにPCを立ち上げておかないといけない。携帯を携帯しないとけいない(当たり前か)。携帯を開かないとメールが読めない。ってのが手順が多すぎます。なぜ手順が多いとダメなのかと言えば、

 1.メールを来たことをアラームで知らせる。
 2.アラームをユーザが知る。
 3.ユーザがメーラーを開く。
 4.ユーザがメールのタイトルを見る。
 5.ユーザがメールの本文を読む/理解する。
 6.メールがスパム/無用なメールであることを知る。

みたいな流れで、不必要なメールを見るまでに手間がかかります。開かないと分らない。
でもポケベルぐらい情報が制限されていると、

 1.メールが来たことをアラームで知らせる。
 2.アラームをユーザが知る。
 3.ポケベルに表示されている液晶を見て判断する。

な、感じでユーザがメーラーを開いたり、メールを読んだりする時間が減らせます。重要なのは、この自分に不必要なメールと判断するところまでが素早いところです。

で、サブディスプレイに表示させておきたいのは、メールであるならばポケベル同様

 1.メールが来たことを知らせる。
 2.メールを開く。

ぐらいまでやっておいて欲しい。

勿論、これをひとつのディスプレイで作ることも可能だし、vista のサイドバーとして作ることもできますが、私としては

 * メインに作業する場所を荒らされるのは困る。
 * リモートデスクトップ等、全画面で動いているアプリが多いので、サイドバーが隠れる。
 * メールを一瞥するためには一定の大きさが必要。
 * タスクバーから吹き出しで出てくるのは目の邪魔で気が散る。

ということで、物理的に違うディスプレイを用意して、そこで動かしてしまうのがベターですね。
実際、サブディスプレイ(vaio T-type)に映像(笑)を流していても、それほど気になりません。仕様書書きになるとさすがに止めますが、定型のプログラミングであれば流したままでもいいし「作業」をするには持って来いです。

カテゴリー: 開発 | Windows Vista の2つのガジェット はコメントを受け付けていません

POCKET LOOX/FLX3AW

中古で手に入れました。
http://www.fmworld.net/biz/pda/products/ploox0407/flx3aw/index.html

社用PDAということで無線LANが標準で付いています。

無線LAN は、「スタート」→「プログラム」→「LXメニュー」で起動して、
下にある無線のアイコンをクリックして、ワイヤレスネットワークを「ワイヤレスLAN使用」に設定します。デフォルトでは「使用しない」になっています。

このあたり自分も含めて嵌っている方が多そうなので、後でまとめておきます。
bluetooth あたりも嵌りそう。

以前、workpad を使っていたのですが、今回はOSが「Pocket PC 2003」なので、windows でアプリケーションが作れます。無論、PalmOS でも作れるわけですが、まぁ、私としてはC言語でプログラムを作る場合であっても、windows のほうが楽というか、手慣れているというか。ネタになるというか。

中古/ジャンクだったのでクレードルのUSBケーブルがありませんが、プログラムなんかはCFカードで送り込めます。無線LANやbluetoothを使えばもっと楽になるでしょう。

今後、このマシンで試そうかな、と思っていることを羅列すると(予定は未定ですが)

 * .NET Compact Framework のインストール
 * .NET アプリの導入
 * 無線LANを使ってデータをsyncする。
 * bluetoothを使ってデータをsyncする。
 * 社内/家内 iis に繋いで、なんかのデータをアップデート
 * web サービスを利用するアプリケーションサンプル
 * PDA 用の専用のインターフェースルールのメモ書き

使ってみるとわかるのですが、スタライスを使わず指先だけで操作できるアプリケーションは結構重要です。いちいちペンを出さずに済めば野外の操作は楽だし(実際、宅配便などで使われているハンドヘルドの機器はボタンだけで操作する)、このあたり単純にデスクトップの世界のキーボード/マウスのインターフェースを移行しただけでは駄目じゃないか、と思っています。
workpad を4年程使った感想を言えば(並行して thinspad 535 も使っていた者として)、

 * PalmOS 特有のグリフ入力は使いやすい。
 * 入力部分が独立しているので、画面を狭くするという嫌らしさが少ない。
 * 一番使ったのがメモ帳だが、文字の記録/PCとのsyncだけで十分だった。
 * 漢字はつぶれていてもよい。

まぁ、最近の携帯端末では映像や音楽にこだわりを見せているので、先のような文字中心のインターフェースで売りを掛けるのは難しいとは思いますが。

# でも携帯電話で一番使っているのがメール/写真/ゲームだと思うと、
# その他のは付属品。これだけに絞ってインターフェースを改善していけば、
# もう少し使いやすくなるのでは?
# と、無責任なことを言ってみる。

カテゴリー: 雑談 | 2件のコメント

カンバン方式

午前中、図書館でトヨタ式カンバンの本を読む。他7冊程度斜め読みをしてきたのだが、正式なタイトルは忘れた。

思うのだが、心理学の本やら方法論の本やらを読み時は、類似の本を立て続けに4,5冊読むのが良いのではないでしょうか? というのも、一冊だけ読んで全体を分った気になっても困るし、周りをみていけば色々な視点があるわけで。ひとつひとつを研究していくのであればいざしらず、ビジネス書として読む(あるいは読み捨てる)のであれば、「同ジャンルを短期間に数冊」のペースで読むと、短期間に類似比較ができて良いと思うわけです。まあ、そのためには速読なり斜め読みなりをしないといけませんが。
昨今IT業界でも、かんばん、改善、気づきがキーワードになっていますが、このあたり

 * 何のために何をするのか?

の目的がハッキリしないと、議論だけが先行して実務が追い付きません。
これは「トヨタ式~」の本でもそうなのですが「ムダ、ムリ、ムラ」のところで、「ムダ」を省くところに力を入れていますが、「ムリ」「ムラ」の話は1頁弱しかありません。いえ、1頁弱でもあるのがまだいいほうで、ムダだけ省いて、ムリの話は1頁もない本もあります。

「ムダ、ムリ、ムラ」の話を簡単にまとめると、

 a) 工程を見直してムダな行動を見つける。改善して効率化する。JITやTOCがこれに当たります。
 b) 改善した工程/ルールを実行します。誰かにムリ(過負荷)がかかっていないか調べます。
 c) 工程が忙しかったり/暇だったりしないようにします。仕事の平準化をします。

a)の話はすごく多いです。他の本にもたくさん書いてあります。ITの導入、ソフトウェア開発の効率化、電子メールの利用、大量ストレージ、セキュリティ/監視システムの効率化なんてのは、みなこの a) のムダを省くところから始まります。まあ、IT=計算機と考えれば、無理からぬことで、昨今のCPUと同様に高速化=効率化=コスト削減に直接寄与するところです。
# この「コスト削減」、本当にコスト削減になるのかは、また後日の話で。

b) の「ムリ」の話ですが実は2つあります。
 b-1) 誰かに仕事が重なっていないか。無理がきていないか(過負荷)
 b-2) その効率化/改善は実行可能か?(実現可能性)

「見える化」の話は、a)のムリを探すところにも有効ですが、プロジェクトの個人の進捗状況、にこにこカレンダーは、この b-1) の過負荷にあたります。TOC のボトルネックの話、レバレッジの強化なんてのは、a) と b-1) の組み合わせです。

さて、問題は、もうひとつの b-2) 実現可能性です。
はたして、その改善案は「実現可能なのか?」

この対応として「トヨタ式~」の本では(いや、松下幸之助の本だったかな?)、ぐだぐだ言わずにやってみる、ことを推奨しています。まぁ、確かに議論/愚痴よりも1「やってみる」のは大切なのですが、やれるかどうかぐらいの判断はあったほうがいいと思います。

この実現可能性のところについては

 * 人によるロールプレイングゲーム
 * モデルによるシミュレーション

が有効だと思うのですが、このあたり言及されていません。

もうひとつ、見落とされている c)「ムラ」ですが、仕事の緩急の度合を平均化しようということです。つまり、暇のときは仕事がない状態、忙しいときは徹夜でお仕事、というの止めるという話です。当然、業種によっては「繁忙期」というものがあるので、完全に平均化できるわけではありませんが、極端な仕事の緩急は先の「ムリ」にも重なり、機会損失や人員の確保によるコスト増加にかかわってきます。

余談ですが、日本の会社の決算期は3月末に集中しています。そのために上場した株式会社では決算期に売り上げをまとめようとして3月末に向けて仕事の取り合い/商品の売り合いが発生します。自然と競争するわけです。これを、3月末以外に決算を行ったとしましょう。そうすると同業他社との競合をしないために、多くのメリットが発生します。

 * 3月末に向けた、仕事/商品の安売りをしないで良い。
 * 税理業務、会計業務が、税理士/会計士の閑散期を利用できます。
   (安くはならないが暇なので相談がしやすい)

この話は、どこかの税理士さんのページに書いてあったものですが、決算期をはずす=世の中の「ムリ」に重ならないようにする、のもひとつの知恵です。

この「ムラ」の問題ですが、次で言及されています。

 * カンバンの「整流」という概念
 * TOC(制約のセオリー)のリードタイムの問題
 * 待ち行列の計算(m/m/1行列など)、ポアソン分布
 * オブジェクト指向の「粒度」
 * 流体力学のレイノルズ数、粘度
 

さて、ひと巡りして「類似の本を~」の話に戻りましょう。
JITやTOCひとつだけだと、待ち行列や粒度の話に広がりません。逆にこれだけあると、何を「ムラ」のところに云わんとしているか分かるのではないでしょうか?本質という意味で。
ちょっと思い出したので老子の最初の章から引用しておきます。

故常無欲 以観其妙 常有欲 以観其徼
此両者 同出而異名 同謂之玄 玄之又玄 衆妙之門

この「妙」「徼」「玄」さらに「玄」の関係図が、先の「類似の本を~」になります。
ひとまず、長くなったのでこの話は後日。

カテゴリー: 雑談 | カンバン方式 はコメントを受け付けていません

WILLCOM 03 の活用法

去年の夏 WILLCOM 03 を買いました、つーか、買わされた、つーか。会社の備品となったんです。
で、すったもんだの挙句、秋ぐらいは活用した後、年末は使わず、正月頃からまだ解約せずに鞄の中に突っ込んだまま(電源切れたまま)だったわけですが、何で使ってもいないのに6,700円也の請求書を受けるんだろうと不思議になっていた訳ですが。

# この「使いもしないモノをそのままにしておく」っていうのは私の悪い性格でして。
# そのまま「見なかった振り」をするのは今後止めようかな、と。

基本料金、データ定額なぞはいいんです。まぁ、そんな値段でしょう。放っておくには惜しい金額ではありますが「なんかに使えるから置いておくか」(と言ったら怒られそうですが)という形で保留中だったのですが。よく契約書/請求書を眺めてみると、

「月賦」

になっているんですね。機器の値段が月賦に!
なんだ、どうもほいほいと買ってくる割には渡したお金が少なかった訳で、変だなぁと思ってはいたんですが「月賦」だったとは、トホホ。ワタクシ、月賦/分割でモノを買ったことがありません。というか「ありませんでした」ですね。これでは(車も家も持っていないので月賦で買う必要がないのです)。
まあ、契約書をみると月賦であっても即金であっても値段が一緒なので、どちらでもいいんですが。分割の場合、面倒なんですよ。経費計算が。

で、月賦の残りの値段をみると「40,000円強」ありました。う~ん、解約する場合はこれを即金で払う必要があるわけだし、使いもしないPHPに4万円払うのは馬鹿馬鹿しいし、かといって手元の携帯電話を解約して willcom のみにするには willcom 03 は使いづらい(苦笑)し。

という訳で半日ほどマジに悩みました。

そして出た結論ですが、

「仕方がない。月賦を払い終わるまで活用するか」

です。

活用するにしたって、単に電話をしたりお外用のデータ通信端末としたんでは詰りません。willcom に電話代やらデータ通信(定額だから1,500円)やらを上納するだけになります。この willcom を使ってなんやら稼がないといけない訳ですね。せめて、端末代金と2年程の基本料金諸々ぐらいは!金額にして、60,000円+3,000円x24回 = 102,000円程度は。

さて、10万円稼ぐとなると、ちょっと真面目にやらないといけません。しかも、willcom 03 をネタにして稼がないと意味がありません。他の分野で稼ぐと悔しいし。

幸いにして本職がプログラマ屋さんなので、何かのプログラムを willcom 03 に送り込むことができます。また、これまたもうひとつの本職としてプロの書き手ですから willcom 03 をネタにして原稿を書くのも手です。投稿だと辛いけど本一冊書けば、10万円の利益ぐらいにはなります。なるでしょう。ね!

という訳でやっとこさ本題ですが、先週末に willcom 03 + programing で資料集めをしていました。

ひとまず日本語で得られる書籍が

Windows Mobile 5.0 アプリケーション開発 Beginner’s Book
http://www.amazon.co.jp/dp/4774128910
Windows Mobileプログラミング徹底理解
http://www.amazon.co.jp/dp/4797345764

アプリケーション開発のほうが visual basic 2005 で開発。
プログラミング徹底理解が visual c++ 2005 で開発。
となっています。
プログラミング徹底理解のほうが後発なんですが、winapi32 を使って直接 windows mobile を叩く tips 集/小技集的な作りになっています。

他の資料としては洋書(未調査)と頼りなるかどうかの MSDN。
 http://msdn.microsoft.com/ja-jp/windowsmobile/default.aspx
 http://msdn.microsoft.com/ja-jp/windowsmobile/bb264342.aspx

ちなみに、MSDN の言語を英語(English)にしないと、windows mobile 6 のドキュメントが出てきません。なんじゃそりゃぁ!
 http://msdn.microsoft.com/en-us/library/bb158486.aspx

英語のほうのサンプルコードは Visual Studio 2005 がベースになっていますが、2008 でも十分に動くでしょう。ちなみに Visual C# 2008 で windows mobile の簡単なアプリケーションを作成して、willcom 03 にインストールしてみましたが、さっくりと動きました。

にても、willcom 03 を活用するにせよ/「活用」するにせよ、ここの壁を乗り越えないといけません。ただし、Palm OS の頃に比べると、.Net compact framework を使える分だけかなり楽です。おそらく細かなところを作り込むには「~プログラミング徹底理解」のように C++ で winapi 呼び出しをしないといけないのですが、1つ2つの簡単な自作アプリケーションを入れて遊ぶには .net のほうが手軽でしょう。

docomo や au の携帯電話の場合、Java アプリで作ってダウンロードするか、企業向けの brew で作らないと動きませんが、PDA(ハンドヘルドコンピュータ)として使うのであれば、windows mobile のように activesync などでアプリケーションをインストールできたほうが楽かなぁ、と。

どうなんですかねぇ、DSi や PSP でも同じことは可能だと思うのですが、無線LANと電話とPDAといてのアプリとがうまく混ざり合っていない気がします。これがゲームという視点から見れば、

 * 赤外線通信で対戦
 * 無線LAN(Wi-Fi)で対戦(IEEE 802.11a/bと同一)
 * 無線LANでインターネット接続
 * USB接続

となにかとうまく繋がる仕組みが用意されているわけですが、ゲームを外して携帯電話、PDA と考えたときに Bluetooth のように手順がややこしかったり、なんかいまいちなのが難点です(認証などが必要なのはわかるけど、掲示板とかを見ると手順ミスで「繋がらない」のトラブルが多すぎる)。

それで、willcom 03 の「活用」計画ですが、

個人用のメモとして、

 手軽に個人で作れるほうがよいので、
  Visual Studio 2008 Express Edition をベースに
    データベース関係は SQL Server 2008 Express Edition
     次のステップは、windows mobile の業務開発ができるパターン
    * 電話との連携
    * MS-Office との連携
    * データベースへの保存
    * Web から何かデータを持ってくる Web サービスの利用
 基本は、
  * 最初は単体で動くアプリケーション
    * 次は、何かと連携するアプリケーション
    * 次は、WEB と連携するアプリケーション
    * 電話と連携するアプリケーション

で膨らましていく予定。企画書作って、サンプル記事を書いて持っていきます(何処へ?)。
あと、willcom 03 を使っていて気なった点ですが、スタライス(ちっちゃいペン)をストラップにつけるようになっています。ですが、ストラップを付ける位置がが左下にあるので、右利きの人には使いづらい。ストラップの長さも足りないし。これは構造的な欠陥ですね。右上にホルダーをつけて欲しかった。

↓に同様のご意見が。
http://arcadia.blog.ocn.ne.jp/pc/2009/02/willcom_03_bcc4.html
http://blogs.yahoo.co.jp/ofudem/23075644.html

カテゴリー: 開発 | WILLCOM 03 の活用法 はコメントを受け付けていません

前回受賞者の資料

 インストールマニアックス2008の受賞者の資料を参考にする。

PORT25
http://port25.technet.com/archive/2009/03/10/japanese-lamp-engineers-visit-redmond.aspx
http://blogs.technet.com/port25j/archive/2009/03/18/3214512.aspx
優勝者 田中氏
http://iis.museum-in-cloud.com/joomla/
# http://museum-in-cloud.com/ ネットショップをなさっている方

ドキュメント賞
http://itmx.kids-beads.com/
http://itmx.kids-beads.com/wordpress/
# http://www.kids-beads.com/ を運営している方かな?

インストールマニアックス2008に当社パートナーの細田様が2位に入賞。
http://mcea.jp/archives/2445

カテゴリー: 開発 | 前回受賞者の資料 はコメントを受け付けていません

インストールマニアックス配布マシン調査

インストールマニアックス2009用の配布マシンの調査メモです。

インストールマニアックスのページ
http://www.thinkit.co.jp/maniax/2009/prize.html

<blockquote>
NEC Express 5800/110Ge + Windows Web Server 2008
CPU: Pentium Dual Core Processor E2160 1.8GHz
RAM: 1GB (ECC付きDDR2-800 SDRAM-DIMM(デュアルチャネル対応)
</blockquote>

NEC Express 5800/110Ge(NEC得選街)
http://club.express.nec.co.jp/store/server/110ge.html
http://club.express.nec.co.jp/store/server/config_110ge_cel.html

NEC Express5800/110Ge のまとめ wiki
http://wiki.nothing.sh/page/NEC%20Express5800%A1%BF110Ge

ということなので、
 * サーバーマシンにしてはメモリが少ない。
 * できれば HDD はもうちょっと欲しいかな。
が気になるところ。
NEC得選街で3万円ちょっと(期間限定では1,5000円位)。
なので、内部調達のコストが10,000円位だと仮定して(もっと低い?)
  10,000 x 500台 = 500万円
Microsoft の Web server のソフトは販売では8万円程度ですが、内部的な価格を考えれば(ライセンス代がほとんどだろうから)トータルで、宣伝費が700万円弱というところでしょうか?
サイトの運営や会場費など諸々あわせて1000万円程度の費用だとすると、コンテスト&宣伝費として妥当なところなんでしょうか?よくわからんけど。

まぁ、提供先として、
 * NEC
 * Microsoft
があるわけですから、impress としては、サーバー系の技術情報の売り込みの相乗効果がある、とみるべきか。

http://www.impressbm.co.jp/news/090401/tetsujin64
http://web-tan.forum.impressrd.jp/n/2009/04/04/5325

前回(第1回)は、正月をまたいでいたのと、人数が100名。そして DELL のマシン。
http://tedia.jp/installmaniax/2008/index.html

今回は5月の連休をまたいで、人数が500名。そして NEC のマシン。
単純に考えれば、NEC は DELL の 5倍投資をしている、と考えられます。

まぁ、どちらかといえば、
 a) NEC サーバーマシンの売り込み(在庫処分も含めて?)
 b) Microsoft の IIS + OSS の組み合わせ情報の増加を期待
 c) Microsoft の Server マシン情報の増加を期待
というところでしょうか。

素直(?)にやれば、linux + apache + oss というのを microsoft の iis 上で動かすわけですから。
サーバ系はノウハウが重要なところが多いから、ハード&ミドルウェア&アプリケーションの組み合わせ無限に広がってしまうから、このあたりが大変なのかも。「かも」というのは私がソフトウェア開発系(いわゆるdeveloper)なので。

カテゴリー: 開発 | インストールマニアックス配布マシン調査 はコメントを受け付けていません

井口昇「わびしゃび」

片腕にガンを仕込む人間と言えば、

1.コブラ
2.タロス(クラッシャージョー)
3.ガッツ(ベルセルク)
4.片腕マシンガール

かな?

youtube の「わびしゃび」
http://www.youtube.com/watch?v=9fQ_ckyxSa0

を見ていると、細野不二彦著「あどりぶシネ倶楽部」を思い出す。林海象も。
ちょっと昨日の夜に「秋刀魚の味」を見ていたので、記憶のメモ代わりに。

カテゴリー: 雑談 | 井口昇「わびしゃび」 はコメントを受け付けていません

Hyper-V 仮想化技術活用ガイド

詳説 Microsoft Windows Server2008 Hyper-V 仮想化技術活用ガイド 
遠山 藤乃 (著)

を読了。

 

最近、テスト/勉強環境のために VMWare Workstation を使っています。
VMWare の中で、Windows Vista、Windows Server 2008 等、諸々の OS を動かしては動かして試しています。
Active Directory なんかは、物理マシンならば数台用意しないといけない訳ですが、仮想環境なら1台でも十分。今まで躊躇していたサーバー系の分野にも手をださなくちゃなぁ(理由は後日)と思い、諸々のサーバーをインストールしては試しては、の繰り返しです。

VMWare の場合、仮想環境を構築するのに3つの方法があります。

a) VMWare Workstation(有償)を使う。
b) VMWare Server(無償)を使う。
c) VMWare Workstation で作成した仮想環境を VMWare Player で使う。

VMWare は ver.3 の頃から使っていて、当時「3万円で仮想環境ができるならば」と使っていた覚えがあるので、なんとなく VMWare Workstation を使っていたのですが(何が違うのか分らなかった)、 VMWare Server ってのが無償で提供されているのを最近知りました。

となると、有償と無償の違いは何?ということになるので、ちょっと検索すると。

仮想化プラットフォーム,VMware WorkstationとVMware Serverの違い
http://itpro.nikkeibp.co.jp/article/COLUMN/20080218/294036/

に詳しい記事がありました。
# 本家 VMWare の説明を読めばいいのだけど、いまいちわからなかったので。

私の気になったところとしては、

* VMWare Server は サービスとして動作する
* VMWare Workstation は複数のスナップショットを取れる

ってところですね。

お試しインストールやアプリケーションの動作環境を調べるためには、スナップショットが必須です。スナップショットは途中状態をバックアップを取っておいて、後で戻せるようにする仕組みです。まぁ、ファイルをまるごと保存しておいてもよいのでしょうが、それだとサイズ大きくなり過ぎるので、差分を取る仕組みがスナップショットには備わっています。

というわけで、使い分けとしては

* 試験環境の構築、開発系の場合は VMWare Workstation
* お試し運用系、安定稼働としては VMWare Server

という使い分けになると思います。

閑話休題……というか前置きが長過ぎ。

さて、鳴り物入りで登場(したハズと思う、去年の春は)した Hyper-V ですが。
まずは、どれくらいのスペックが必要かと言うと、

* CPU は 64bit が必要
* CPU は Inter VT か AMD VT という CPU で仮想化技術をサポートしている CPU が必要。
  安めのデスクトップマシンで試そうと思ったけど Core 2 Quad だと Q9300 以上が必要。
 http://ja.wikipedia.org/wiki/Intel_Core_2
* お試しでもメモリは4GBぐらいは必要か。
* HDD はあるだけあればいいのだが。運用時を考えたとき I/O を分散させるために、
  HDD を複数台用意するのがベター。

という感じみたいです。

# I/O に関しては結構シビアに効いてきそう。
# 最近 media player を使いながら visual studio 2008 を動かしたり(笑)するのですが、
# 同じ HDD 上にある iso ファイルから読み込むよりも、LAN 上の他のマシンにある iso ファイルを
# 読んで表示したほうが快適に動きます。
# このあたりの負荷の話はまた後日。

で、vmware 同様、microsoft の仮想化技術もたくさん種類があって、

* Virtual PC(無償)
* Virtual Server 2005(無償)
* Hyper-V Server(無償)
* Windows Server 2008 の Hyper-V
* Windows Server 2008 の ターミナルサーバー(RemoteApp)
* Microsoft Enterprise Desktop Virtutalization(MED-V)
* Microsoft Application Virtutalization(App-V)

があります(ってのが分りました)。

Virtual PC もそうですが、MED-VもApp-Vも買収ものです。何をしてどう運用するかによってそれぞれの製品の選定がきまってきます。

で、この本を読みながら思ったのですが、24時間のダウンしない運用が求められたり、大量のアクセスが発生するWebサイトを運用したりする場合には、現在の物理サーバーを増やす方式のほうがいのかな、と。あくまで、仮想化は

 * レガシーの環境をひとつの物理マシンにまとめてしまう(物理スペースの節約、電源の節約)
 * ソフトウェア開発時の試験環境/実験環境
 * ネットワーク、ミドルウェアの組み合わせの試験環境
 * おれおれサーバーの持ち歩き(ノートブックへで持ち歩き)

に限って「最初のうちは」使うのがいいのでは?と感じました。
ただしレガシーの移行とはいえ、Windows Server 2008の Hyper-V では Windows NT が動きません。Windows PE での移行にも「メモリを512MBはいる」ということだし。そうなると、逆に「レガシー環境を仮想化へ移行するのは難しい」という本末転倒なことになってしまいます。

ちなみにうちの開発/仮想化/リモート化は、

 * VMWare Workstation で Windows Server 2008 の各種環境をお試し
 * VMware Workstation で Windows XP に Apache 等を入れてお試し
 * サーバーマシン(単にディスプレイのないPC)にリモートデスクトップで入って Visual Studio 2008 を動作させる。
 * これらを、Thinkpad s30 やら vaio type-T からリモートで行う。
 * さらに、notobook pc には 21インチのディスプレイを外部接続して使う。

ってな環境になっています。

実はキッチンで仕事をしているので、流行りの「フリーデスク」と言ってみたり。

カテゴリー: 書籍 | Hyper-V 仮想化技術活用ガイド はコメントを受け付けていません

スキルチャージプログラムを参考にして

Microsoft のスキルチャージプログラムに当たった方がブログを公開しています。
スキルチャージは OSS とは限りませんが、インストールマニアックス2009にかなり参考になるはず。

That’s how I do that.
http://thats-how-i-do-that.spaces.live.com/blog/
 – XOOPS

ほぼ月刊 おきらくなブログ
http://okiraku-blog.spaces.live.com/blog/

皆様の御努力に期待^^; … もとへ、先人の努力を無駄にせず。

カテゴリー: ブログ | スキルチャージプログラムを参考にして はコメントを受け付けていません

Windowsマシンのスクリプト

「日付をつけた連番のファイルを作成する」(今作ったのだが)のようなツールを作ろうとすると、わざわざC#とかC言語で書くのは面倒/大袈裟なので、スクリプトを使う、と思う多分。

日頃、C#やVB.NETを使っていると、このあたり忘れてしまうわけですが。果たして、構築し直した vaio type-T(ドライブが40GBしかないのが辛いところ…)では、Visual Studio 2008 は入れたものの、スクリプト言語は入れていない。はてどうしたものか。

私の馴染みなスクリプト言語と言えば、perl な訳ですが、先ほどのツールを作るために activeperl をダウンロードして、というのは面倒なので、やっぱり windows マシンならば vbscript というところでしょう。という訳で作ってみました。。。何故か 30 分近くも掛ってしまった。。。忘れているからねぇ。
できたソースはこんな感じ

‘==============================================================
‘ 連番でテキストファイルを作成するスクリプト
‘==============================================================

dim fso  ‘ファイルオブジェクト
dim folder  ‘作成先のフォルダ名
dim file  ‘作成するファイル名
dim n       ‘本日

‘==============================================================
‘定数
‘==============================================================
folder = “c:\work\blog\memo\”

set fso = WScript.CreateObject(“Scripting.FileSystemObject”)
‘日付を取得
n = now
file = Year(n) & Right(“00” & Month(n),2)  & Right(“00” & Day(n), 2 )

‘ファイルの新規作成
for i = 1 to 99
 f = folder & file & “_” & right(“00” & i, 2 ) & “.txt”
 if fso.FileExists( f ) = false then
  set ofile = fso.OpenTextFile( f, 2, true )
  ‘ofile.WriteBlankLines(1) ‘ひとつだけ空行を作る
  ofile.Close
  exit for
 end if
next

さて、ソースコードの話はどうでもいいわけですが、今回のような軽いスクリプトを作るときに何がいいのかなぁと思うと、

 * perl
 * ruby
 * phython(←使ったことはない)
 * vbscript

ぐらいが候補ですかねぇ。最近は PHP のスクリプトもあります。

perl, ruby, 多分 phython は正規表現が楽なので、テキストを検索してなんとかするというのがお得意。フォーマットをヒアドキュメントで書いて、それに埋め込んでいくというのはお手のものです。ヒアドキュメントというのは、perl のソースコードにドキュメント部分と変数部分を埋め込む方法で、asp.net や jsp に似ています。というか、asp,net や jsp が perl 等のヒアドキュメントに似ています。

具体的には、

print << EOF
名前: $name
住所: $address
EOF

な感じで詳細は、↓なぞを参照してください。

CGI-Perl 基礎実地編 – 実習3 (ヒアドキュメント)
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/pe_kj03.htm

vbscript でヒアドキュメントをやることも可能は可能なんですが、perl 等ほどには手軽ではありません。

閑話休題。

スクリプト言語は、それぞれ特徴があって手に馴染むもの/馴染まないものがあり、私は大学の頃に fortran と perl を組み合わせていたために、ruby に手が出ておりません。先ほどのようなオブジェクト指向を使わない、簡単なツールであればさほど言語は問いません。

いえ「言語を問いません」と言いましたが、実は「問います」。というのも、この vaio type-T。さらの状態にしてしまったので、標準で付いているスクリプト言語以外は使えないわけで、となると、候補としては、

* vbscript
* javascript
* C#
* Visual Basic .NET

実は Windows XP3 や Vista のマシンでは既に .NET Framework が(勝手に)導入されており、実は環境変数を設定すれば Visual C# Express Edition を入れなくてもコンパイルができます。当然実行もできます。

具体的には

 1. C:\Windows\Microsoft.NET\Framework のフォルダを調べる。
 2. ↓のようなフォルダがあれば、
2009/04/13  19:00    <DIR>          v1.0.3705
2006/11/02  20:18    <DIR>          v1.1.4322
2009/04/14  19:24    <DIR>          v2.0.50727
2006/11/02  21:41    <DIR>          v3.0
2009/04/14  15:59    <DIR>          v3.5
 3. それぞれのフォルダに以下があればコンパイルできる。
  – csc.exe   C#のコンパイラ
  – vbc.exe   vb.net のコンパイラ

これは windows xp, vista の場合ですが、windows server 2008 の場合は条件がきつくなっていて、IIS や SQL Server 等が入っていないと、wscript.exe/cscript.exe しかありません。
# windows server 2008 の「core インストール」の場合は、.net framework が入らないので
# ありませんが。

つまり、手元で開発をするとか社内マシンの場合は perl やら ruby やらを入れてもよいわけですが、

 * 客先の運用マシン
 * 客先の運用サーバー
 * 社内でもサーバーの類

なんかは、このあたり「勝手に」何かソフトウェアを入れることを許されない。じゃあ、面倒な作業は手作業にするのかと言われれば、面倒だなぁが(私は)先に立ってしまうわけで。となると、適度に vbscript ぐらいは使えたほうがいいよね。という感触を持っているのですがどうでしょう?
# もともと、そういう方針で作られた訳なんですが。

そうそう、客先の環境にExcelが入っていれば、VBAで作るってのもあり。

カテゴリー: 開発 | Windowsマシンのスクリプト はコメントを受け付けていません