2017年07月22日

Microsoftはもう一般消費者向けOS事業にエネルギーを注がない

「Windows Phoneの終焉」とマイクロソフトがスマホ時代に描く未来
https://forbesjapan.com/articles/detail/17033

去年からWindowsストアに従来型のデスクトップアプリを登録するよう作業しているが、DesktopAppConverterなるツールを使えばすぐにでもストアアプリに変わってしまうとIT系メディアは言うが実際は違う。最初から筆者がやる気がないのも影響しているが、とにかくこのツールは半完成品で極めて使いにくい。いったん出力されたアーカイブファイルを分解して、中のxmlファイルを正しく編集して再度アーカイブ化する必要があるのだ。これはDesktopAppConverterのオプション指定が、Microsoftがやる気のないと思うしかない仕様のために正しいオプションを指定できないためだ。そもそもこのツールはコマンドラインツールで、その上出力されたアーカイブを分解するにも別のコマンドラインツールが必要。これらのツールは社内の内輪だけで使うテストツールのようなものだ。

 加えてツールだけの問題ではない。開発者はサイレントインストールできるアーカイブファイルを用意するだけではなく、ストアアプリを提出する前に、Microsoftの担当者にメールを出してこれから提出するアプリの概要を教え、提出用でないストアアプリ化したアーカイブファイル(appx)をメール添付で提出するという、まるで個人ユーザが運営してるかのようなやり方を強要しているのだ。それで特権アクセスを許された時点で、再度提出用のappxファイルを提出するのだ。

筆者はこの件でどれだけMicrosoft社員とメールでやり取りしたことか。とにかくUWPアプリは制限がありすぎて、思うようなことができない。新APIであるWinRTはWin32のサブセット版という時点からして終わっていると思っていたが、アプリ登録からしてこのハードルの高さではWindowsのこれまでの膨大なアプリ資産を味方にできない訳で、Microsoftはわざわざ自分の首を絞めているようなものだ、セキュリティ対策という名目で。

Windowsのアプリケーションはもう開発者の創造性を発揮できるようなものではなくなってしまった。あまりにも制限が厳しすぎて、新たに作られるアプリケーションは他のOSでも大量にあるようなショボいアプリだけでになる。これではWindowsの優位性はないも同然。これはデスクトップOSでもスマホ版OSでも同じことだ。

最近の報道によるとMicrosoftの業績はクラウド関連事業(Azure)で好調であったと報道しているので。もうMicrosoftは個人向けOS事業に全力を注ぐことは無いと思っている。アプリというのは全部サーバー上で実行するのがメインであり、デスクトップ上で実行するものは負荷のかかるゲームぐらいだけと思っているのだろう。要するにアプリはユーザとやり取りするフロントエンドのみの存在でしかないという見解なのだろう。重たい作業は背後にいるサーバに丸投げするやり方だ。

これでは単なるWebアプリケーションでありOSはWindowsである必要性はなくなる。Microsoftはクラウド事業以外はMicrosoft Office(以下Office)のメーカーという認識になるのだろう。WindowsとOfficeのサブスクリプションのセット販売がされたようだが、将来一般消費者にとってMicrosoftはOfficeのメーカーだけという認識になるに違いない。Windowsは消えてofficeが残ってしまうかもしれない。

個人的にはそのような状態になると、数十年前のUNIXの環境に戻ってしまう事を意味するので考えたくもないが、セキュリティ対策を強力に施したWindows10は、以前のバージョンに比べて個人情報が抜かれるというアホみたいな仕様なので、フリーUNIXに軸足を移そうかと時々思う時がある。しかしコンピュータの設定に時間を食いたくないので、できるだけ勝手の分かった環境を使い続けたいだけなのだ。
 正直言ってWindows2000程度の環境がずっと続いていても個人的には全く問題ないのだ。あの当時より今の方が格段に良くなっただろうか?セキュリティ対策は進んだが、これはユーザにとって余計なコスト増でしかない。実際の使い勝手はほとんど変わってなく、レスポンスはむしろ悪くなっている。Webサイト側の問題もあるが、Webページの表示は遅くなり、大量のメモリが必要になった。前のページ戻った時にもいちいちスクリプトが実行されもっさり表示されて精神衛生上悪い。

Windowsの話に戻るが、MicrosoftはもしWindowsを再び盛り上げたいと本気で思っているなら、後継APIと位置付けた携帯デバイス向けに作られたWinRTをWin32の全機能を包含したものにするべきだ。上位互換にするのは難しいと思うが、代替APIを用意すればいいのだ。セキュリティ強化がWin32のサブセット版にした理由だと思うが、それならセキュリティ強化したAPIを用意すればいいだけの事だ。C言語のランタイム関数でfopen()というファイルを開く関数があるが、現在はfopen_s()というセキュリティ強化したバージョンを使うようにMicrosoftは要請しているが、それと同様の事をすればいいのだ。そうすれば過去の膨大なレガシーアプリも最新APIを使用したものとして多数登場するだろう。
ファイル入出力そのものがセキュリティのリスクというならアプリごとに仮想環境を設ければいいではないか。メモリが必要になるとか文句を言わないで知恵を働かして欲しい。

また携帯OSは基本的にフル機能のWindowsでないとMicrosofに勝利はない。ARMで動くWindowsを出すならVisualStudioにARMバイナリが出るようにすべきだ。エミュレーションではさらにメモリを食ってしまい更にハイスペックの機器が必要になる。アプリ不足の暫定的措置としてエミュレーションがあってもいいが、ゴールはARMバイナリのアプリの充実だ。
posted by danpei at 15:43| software