.NET Compact Framework 3.5

PDAプログラミングメモ、ということで。windows mobile, pocket pc 関係に .net compact framework を入れて通信プログラミングする。

windows ce を c 言語でがりがり組んでもいいんだけど「遊び」なのだから「お手軽」なほうがよい。となれば、できるならば .net compact framework を使ったほうが良い。当然、PDA に .net のランタイムが入っていないとダメなんだが、このあたりの資料がややこしい。

PDA を選定するにあたって、以下を調べる必要がある。

 * OS: windows mobile/windows ce/windows ce .net など様々
 * CPU: arm/x86/sh3 など .net compact framework のランタイムを入れるときの対象となる。
 * 内蔵メモリ容量

PDA に導入する .net compact framework と様々。
また、OS のバージョンによっては、既に ROM として .net が入っている。

現在手元にある loox/flx3aw は os が pocket pc 2003 なので .net compact framework 1.0 が入っている(はず)なのだが、試しに 3.5 の再頒布可能パッケージを利用してバージョンアップしてみると、

1. .NET Compact Framework 3.5 再頒布可能パッケージ をダウンロード
http://www.microsoft.com/downloads/details.aspx?FamilyID=e3821449-3c6b-42f1-9fd9-0041345b3385&DisplayLang=ja
2. vista にインストールする。
3. C:\Program Files\Microsoft.NET\SDK\CompactFramework\ に v2.0, v3.5 のフォルダができる。
# 既に Visual Studio 2008 pro が入っている場合は、ディレクトリがある。

このフォルダの C:\Program Files\Microsoft.NET\SDK\CompactFramework\v3.5\WindowsCE\ 内にある CABファイル(*.cab)が、PDA にインストールするファイルになる。
PDA にインストールするときは、PDA でこの CAB ファイルをファイルエクスプローラで開いてダブルクリックする。すると自動(勝手)にインストールされる。非常にお手軽。

また ActiveSync or Windows Mobile デバイスセンターで同期を取らなければならないのか?と言えば、「そうではない」。単純に PC から CAB ファイルを CF メモリにコピーした後、PDA に差し込みダブルクリックすれば OK。中古で PDA を買うと、クレードルが付いていない時が多いので、この方法でやるとよい。

CAB ファイルの一覧

NETCFv35.ppc.armv4.cab
NETCFv35.wce.armv4.cab
NETCFv35.wce.mipsii.cab
NETCFv35.wce.mipsiv.cab
NETCFv35.wce.sh4.cab
NETCFv35.wce.x86.cab
NETCFv35.wm.armv4i.cab

os 関係
ppc: Pocket PC 向け
wce: Windows CE 向け(と思う)
wm:  Windows Mobilie 向け

cpu 関係
armv4: ARM
mipsii, mipsiv: MIPS
sh4: SH4
x86: 86系
の組み合わせで、PDA に合った cab を入れる。

インストールすると動きをみている限り \winodws の直下にコピーしている。ファイルエクスプローラを使っても該当する DLL は見られない。

cab の中には _setup.xml があって、インストールする DLL が羅列してあります。

おそらく

CustomMarshalers.dll
Microsoft.ServiceModel.Channels.Mail.dll
Microsoft.ServiceModel.Channels.Mail.WindowsMobile.dll
Microsoft.VisualBasic.dll
Microsoft.Windowsce.Forms.dll
Microsoft.WindowsMobile.DirectX.dll
mscorlib.dll
System.Core.dll
System.Data.DataSetExtensions.dll
System.Data.dll
System.dll
System.Drawing.dll
System.Messaging.dll
System.Net.Irda.dll
System.Runtime.Serialization.dll
System.ServiceModel.dll
System.Web.Services.dll
System.Windows.Forms.dll
System.Xml.dll
System.Xml.Linq.dll

合計 1.5MB ぐらい

実際に .net framework v3.5 をインストールするとデータ記憶容量が 4MB 弱消費されます。
まあ、多めのメモリが積んであれば(flx3awは128MBなので誤差に近い?)、それほど負担ではないでしょう。
で、.net framework v3.5 をインストールした後、

1. visual studio 2008 pro を使って「SmartDevice」プロジェクトを作成
2. Release モードでビルド
3. Release モードの exe を CF メモリへコピー
4. PDA で CF メモリから exe を起動

すると、あっさり .net アプリケーションが動きます。

おまけに、先の .net compact framework で作成した exe を PC でダブルクリックします。
すると「.net compact ってエミュレータ上でしか動かないのでは?」に反して、あっさり、vista 上で動いてしまいます。なるほど。PDA 特有の操作や他アプリケーションの連携の場合にはエミュレータを使わないといけないのですが、単体で動くアプリケーションを作る場合ではこれで十分かも。考えてみれば、pc で動かした場合は exe は通常の .net framework 上で動くのかもしれませんね。変にデバイスに依存しない作りであれば pc 上でデバッグ、のほうが楽だと思います。

<エミュレータ上>

エミュレーターで

<PCで直接>

PCで直接起動

■他の参照文献

HPC「フツー」環境構築「手順」 software基本編
http://www.asahi-net.or.jp/~sb6m-uek/mobile/begin720_2.htm

カテゴリー: PDA | .NET Compact Framework 3.5 はコメントを受け付けていません

PDAの活用

手元にあるモバイル機器を活用しよう、と思い立って資料集め。

現在手元にあるのは、
 * willcom 03 http://www.willcom-inc.com/ja/lineup/ws/020sh/
 * pcoket loox flx3aw http://www.fmworld.net/biz/pda/products/ploox0407/flx3aw/index.html

どちらも .net compact framework を使ってプログラミングが出来ます。

WindowsCE FAN
http://www.wince.ne.jp/

から、windows mobile 対応の機種は、
http://windows-keitai.com/ の下のほうに一覧があります。

* ソフトバンク
 X05HT  X04HT X03HT X02HT X01T X01HT
* WILLCOM
 W-ZERO3[es] W-ZERO3 Advanced/W-ZERO3[es]  WILLCOM 03
* EMOBILE
 HTC Touch Diamond2
* DoCoMo
  HT-01A(Touch Pro)  HT-02A(Touch Diamond)  TG01/T-01A(噂) hTc Z F1100 HT1100
* au
 HTC Touch Pro

現在18機種

PDA のほうは数知れず、というか発売中止。

買うならば(おそらく)yahoo!オークションで安く手に入る。
http://list3.auctions.yahoo.co.jp/jp/44389-category-leaf.html

ただし、中古が多いのでクレードルやパソコンとつなげるケーブルなどが無い場合が多いので、自前で「なんとかできる」人でないと購入→利用は難しい。
が「なんとかならない」人でも、なんとかなるようにしたい。どうするか?

方法としては、
 * 大抵は CF カードスロットルが付いているので、それにアプリをインストール→実行の手順を詳しく。あるいは誰かに代行してもらう。
 * 無線LAN の設定を詳しく。ファイルのダウンロード→実行まで。
 * Bluetoothの設定を詳しく。ファイルのダウンロード→実行まで。母艦PC(大抵はノートPC)の設定。
 * TYPE-2 カードスロットルの利用
 * 赤外線の利用
 * モデムの利用
Windows CE のソフトウェア
http://soft.wince.ne.jp/soft/

vector の PDA
http://www.vector.co.jp/download/pda_index.html
で、
 * PDA を使って無線LAN/Bluetooth で通信して「なにか」を動かす
 * .net compact framework を使って手軽に
が目標。
ちなみに iPhone の場合はどうするのかと言うと、

iPhone プログラミングメモ
http://www.saturn.dti.ne.jp/~npaka/iphone/index.html

を見ると、
 * iPhoneSDK を使う。
 * Objective-C を使う。

mac ユーザの場合、もともと objective-c で組んでいるから、iPhone のプログラミングの敷居は低いかもしれないのだが、windows ユーザには最初がキツイかな。文法的には c++ に似ているので、さほど難しくはないんだが。

ちなみに windows mobile のアプリは iPhone に比べると相当立ち遅れいる模様。

Windows Marketplace for Mobile、登録アプリのアップグレードに99ドル–関係者が明らかに
http://japan.zdnet.com/news/software/story/0,2000056195,20390664,00.htm
アップルの「App Store」、10億ダウンロードを達成
http://japan.zdnet.com/news/software/story/0,2000056195,20392271,00.htm

開発者に1万円/本の課金ってなぁ。ストアの用途としてはシェアウェアなのかな?

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

インストールマニアックス2009当選

このたびは、インプレスビジネスメディアが主催する
「インストールマニアックス2009TETSUJIN64」にご応募いただき
誠にありがとうございました。

今回、募集定員を大幅に上回る中から、厳選なる抽選の結果、
見事参加が決定いたしました!おめでとうございます!
ということで、無事「当選」致しました>インストールマニアックス。
ひとまず、これで64bitマシンが手に入るのは確実。
ということで下拵えを開始します。まだ、マシンは届いていないので、ひとまず vmware を使ってミドルウェア(IISやPHPなど)のインストールまで確認してしまいます。慣れないといけないからね。

1. VMWare に windows server 2008 web edtion をインストール
2. IIS 7.0 をインストール
3. PHP をインストール
4. MySQL をインストール

ここまで何とか終了。で、お試しにいくつかソフトウェアを入れてみる。

5. Pukiwiki をインストール
6. WordPress をインストール

いくつかコツが要りますが、ここまでは試すことができました。

あと、ミドルウェアで考えているのは、

 * ActivePerl
 * Ruby
 * SQL Server 2008 Express Edition

の導入を試してみる、と。

おそらく、PHPで躓く方が多いのではないでしょうか?
私の場合、PHP の公式サイトにインストーラを使って windows server 2008 web edition に入れるとうまく動きませんでした。なので、zip でダウンロードした後、

Using FastCGI to Host PHP Applications on IIS 7.0
http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis-70/

に従って php.ini 等を設定しました。

インストールマニアックスの技術情報
http://www.thinkit.co.jp/maniax/2009/technical.html
では、「IIS開発チームサイト内PHP関連情報」ということで、
http://php.iis.net/
が紹介されています。

インターネット経由で直接インストールされるので、インストールする時にネットに繋がっている必要があるのですが、お手軽かもしれません(試してないのでなんとも言えず)。

整理したドキュメントは、これから来るサーバーに載せて行きますが、
http://www.moonmile.net/wiki/
にもメモがてら載せていこうかな、と。参考にでもなれば。

カテゴリー: インストールマニアックス2009 | インストールマニアックス2009当選 はコメントを受け付けていません

ザ・プロフィット

目次なんかは↓を参照。
http://katsuhito.mitsumorike.com/archives/2004/10/_j.html
http://noukanohon.blog40.fc2.com/blog-entry-17.html

最初に言っておきますが(IT業界の方には分かっていると思いますが)、23番目の「10倍の生産性を生む源 <デジタル利益モデル>」ってのは楽観的過ぎです。確かにDELLのサンプライはプッシュ型(売り手が製品を顧客に合わせて作る)からプル型(顧客が商品の組み換えを選択できる)に変更して成功をおさめたものの、今となっては他の会社も同じことをやっているので他のモデルに比べると一時的な利益モデルになります。本書にも書いてあるとおり、その他は大企業(ある程度シェアのある企業)が勝つためのモデルであって、その他の中小企業の利益モデルはこの23番目の「デジタル利益モデル」だ、と明言しているわけで、そうなると中小企業に利益モデルは通用しない、ということになってしまいます。また、どの業界も再編が進み巨大化しています。

で、それを踏まえた上で本書を手に取ってよかったと思うのは、

* 「利益/利潤」という明確な目標がある。
* 仕組みの中に「利益」を織り込んでいる。
* 本を2冊ずつ読む/紹介する理由が書いてある。
* 手書きの図があってモデル=イメージとして分りやすい。

最初の2つはドラッカーの言う「企業とは永続に存続することを目的としている」にあたるもので、株式会社の目的が利益を出すこと、株式公開することは利益をもっと集めること、にあたるもので「ビジネス書」として明確です。また、会社なり経営なりを行う上で、利益を生み出す仕組みを明確にして、どれだけの利潤が出ているのか(売上、粗利、固定費、変動費等)を「お金」という一元的な価値を測定できるようにしています。なので、この会社はどの利益モデルで「お金」を得ているのだろう、という形で会社の1つの視点を持てます。逆にいえば、利益モデルがない会社は危うい、どこからか変な流入/流出がある、ということですね。

このあたり、会計学…とまではいかなくても工業簿記の基礎知識があれば、原価計算と固定費/変動費/間接費の関係、売上と原価の関係までが理解できます。このあたり「何でここの会社/人はこんなことをするのか?」を「お金」の視点で見るときに重要です。

# 勿論、世の中「お金」以外の基準もあるわけですから、全てが利益モデルに利益モデルに合致するとは限りません。例えば萌え産業とか。ですが、マクロ経済的に考えたとき、ある程度の市場の大きさ=様相される顧客の数があれば、このモデルが適合していきます。つーか、それが社会学で言う「モデル」なんだけどね。例えば、ゲーム業界が違法コピーによって崩壊しかかっている(と思う)のであれば、ゲームの販売という利益モデルが変換されるべき時期にあるのではないか?無料のMMRPGがこんなに大量に出まわっているのは何故か?アフリエイト料金を支払ってもamazonが儲かるのは何故か?WEB産業は広告以外に収入源はないのか?そもそも宣伝費はどれほど必要なのか?など考える元ネタになります。

「2冊ずつ読む/紹介する」理由ですが、本を読んだ気になる、わかった気になる、または、その本の思想に縛られてしまう、のを回避するためです。当然「ザ・プロフィット」自体も例外ではありません。この本が「ザ・ゴール」とは違うのは(ジャンルは同じなのかな?同じダイヤモンド社で装丁が似ているんだが)ほかの書名が出てくることです。他の本を読み、「ザ・プロフィット」を読み、また他の本を読む、ということで相互作用を期待しているものと考えられます。
まあ、これはコンサルティング特有の「道具立て」なんだけど、「コンサルティングの道具箱」なんかを読むと分ります(と、メタ的に他書を勧めてみる)。

さて、最後の図のお話ですが、各利益モデルについて何枚かの手書きの図が書いてあります。筆ペンで書いたような図ですが、これがイイ感じですね。孫子が出てくるところからおそらくチベット、中国の老師が弟子に語るというイメージでしょうか。難しいことを言わず、簡単な図と簡単な言葉で悟りを開く、開眼するという感じを増幅させます。これもコンサルとして重要なもので、コンサルの仕事って相手にやって貰わないと意味がないのです。コンサルはクライアントの上司ではありませんから、あの手この手で説得/動かすようにするわけです。そのためには重要な制限があります。

「相手は理解できるものしか、理解しない」

というものです。当然ですが、よく分らないけどこれはうまくいくからという押し付けでは人は動きません。動くことができません。勿論、コンサルによってはそういう人もいるかもしれませんが(多いと思うよ、本当は)、納得して動くにせよ、納得せずに動くにせよ、利益/不利益を蒙るのはクライアントなわけです。コンサルはコンサル費用を貰うだけです。そう、ここにコンサルの利益モデルがあります。

コンサルの話はさておき、ええと、会社の利益モデルもさておき、昨日「面倒くさがりやのあなたがうまくいく55の法則」を立ち読みして、いいことが書いてありました。

「会社の寿命よりも、個人の寿命は長い」

なるほど御尤も。

カテゴリー: 書籍 | ザ・プロフィット はコメントを受け付けていません

Oracle が Sun を買収

[解説]Sun買収により,3年越しでMySQLを手に入れたOracle
http://itpro.nikkeibp.co.jp/article/NEWS/20090421/328784/

Oracle が Sun のハードウェアを持っていくとどうなるのか?はよく分らないのですが、Sun が持っているストレージ系の顧客を持っていけるのはデータベース会社としては良いのかも。買収ですから、それなりに相乗効果を期待しているところがあるわけで、

 a) サーバー系のソフトとハードとの相性を考えなくてよくなる(顧客へ抱き合わせ)
 b) 競合製品の取り込み(MySQL)。製品の未来路線を決定できる。
 c) 現製品 Oracle + Java の組み合わせで主導権を握れる(いままでは sun の java に合せる必要があった)

という感じでしょうか。

このあたりの戦略は「ザ・プロフィット」に詳しく書いてあります。

ザ・プロフィット 利益はどのようにして生まれるのか

ちなみに、「ザ・プロフィット」で書かれている各戦略は、まぁ当たり前といえば当たり前。マーケティング/営業の基本なので珍しいところは、1枚の手書きの図があって「覚えやすい」、「記憶に残りやすい」とこでしょう。もう少し難しめ(?)のものを読みたい場合は「サービス・マネージメント」を読むと良いです。

Oracle の競合製品と言えば、SQL Server か SAP。SAP では Oracle 製品を使うことも出来ますが、Oracle ERP があるから競合というところでしょう。そうなると、Oracle は中小企業向けに Oracle ERP 用のハードを含めたワンセットを納入、していくのかな。また、mysql のコアを持っていけば、oracle 11g を小さくする再設計をするよりも手軽なもかもしれません。

Oracle と Java の組み合わせは、(真似された)SQL Server + .NET の組み合わせにすれば弱いものかな、と思っています。sun の持っている java を使っている限り、oracle は java の規格に引っ張られてしまう。となると、sun を買収してしまって java の規格の主導権を握り、oracle に(都合のよい)未来を引き出したい、とか。

余談ですが、データベースと vm の組み合わせって相性が悪いのではないか?と思っています。iis 7.0の内部構造でも、iis のネイティブなところと、asp.net が動くところでは、マネージ/アンマネージの切り替えが起こって決して高速には動きません。大量な要求を受けるたとき、お気楽な asp.net コードを書いてしまうと非常にメモリを消費するのではないか、と想像できます。

ストアドプロシージャで .net や java の使いどころは、

 * トリガーなどを利用した1アクションのみ(ログイン情報とか)
 * データベースからシステムコール(ファイル転送/メール送信など)をする場合

のような単発のものに限るのがいいでしょう。select 文にファンクションを組み入れていることもできるのですが、どれだけ遅くなるのか/メモリを消費するのか、私は確認していません。これはいずれ負荷テストとしてやっておきたいなぁと。

カテゴリー: 雑談 | Oracle が Sun を買収 はコメントを受け付けていません

ThinkPad W700ds

デュアルディスプレイのノートブックです。。。って
http://shopap.lenovo.com/SEUILibrary/controller/e/jpweb/LenovoPortal/ja_JP/catalog.workflow:expandcategory?issBase=ProductsCategory&issCategory=/Notebooks/ThinkPad%20Notebooks/W%20Series
http://www.itmedia.co.jp/news/articles/0812/22/news014.html

って、液晶ディスプレイを付けたほうがよくないか?と思うけど、持ち運び(5kg)するならばいいのかも。

どうせならば、両方にサブ画面を付けてアーケード版の3Dレーシングゲームがしてみたい(違

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

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 の活用法 はコメントを受け付けていません