Ubuntu版の更新を開始
今は、Mirror-DTC Ver1.4.3の開発フェーズで、Windows版の配布パッケージは、Defenderが誤検知してダウンロードできなかったりする事もある状況なのだが、作者的には万策尽きたので、無視してUbuntu版の更新を開始した。
作者の最初の公開ソフトはMasterReversiで、初版の公開は2007年の暮れだったのだが、動作対象としていたOSは、32Bit版のWindowsXPとVistaだった筈だ。
で、その頃には、MasterReversi本体のメニューから、ユーザーが色々とカスタマイズした見た目で使える、Javaアプレット版を出力できる機能も搭載していた。
最近のMasterReversiには、そんな機能は無くなっているのだが、これは、数年前に、Javaの脆弱性が問題視される様になり、Javaアプレットをブラウザで動作させるのが非常に大変になったし、Javaアプレットを動作させるためには、PCにJavaをインストールしておく必要があり、一時は枯れたソフトだったので、滅多に更新されなかったJavaが、また、頻繁に更新される様になったからだ。
つまり、Javaアプレット版を出力可能にしておいても、MasterReversiのユーザー的には、それを使うのが非常に大変になり、かつ、その機能を利用可能にしておくためだけに、頻繁に行われるJavaの更新リクエストに応じて更新作業を行う必要も出てきたので、作者的には、MasterReversiにとって、そんなに重要な機能でもなかったJavaアプレット版の出力機能は削除する事にした訳だ。
その結果として、開発に数ヶ月を要したJavaアプレット版MasterReversiは、この世から抹殺される事になった訳なのだが、この頃、作者的には、macOS / Ubuntu環境でMirror-DTCを利用できる様に、Java版Mirror-DTCも開発していた。
なので、ほぼ同時に、それらのJava版Mirror-DTCも開発終了扱いにして、macOS / Ubuntu用のMirror-DTCについても、バージョンアップでネイティブ版に切り替えた。
AmuseGraphics関連でも、知らない/忘れた人も多いかもしれないのだが、今となっては、重要な同梱ソフトである所のAGMPlayerも、最初は、Javaアプリだったので、同様に、バージョンアップ時にネイティブ版に切り替えた。
と、言う事で、作者は、一度開発/公開したソフトは、ずっと使える状態にしておきたい方なのだが、前述のように、Javaアプレット版のMasterReversiと、Java版のMirror-DTC/AGMPlayerは、開発/公開を終了している。
何故、そうなったのかについては、上記の通りで、開発時点では、普通に使えていたJavaが使いづらくなったのが原因だった訳だ。
その結果として、Javaアプレット版MasterReversiの代替品としては、HTML5版MasterReversiを開発する必要が生じたし、Mirror-DTCについては、macOS / Ubuntu用のネイティブ版を開発する必要が生じた。
更に、AGMPlayerについては、そもそも、ネイティブ版は存在していなかったので、まず、Windows用のネイティブ版を開発する必要が生じ、その後、macOS / Ubuntu用にもネイティブ版を開発する事になった。
上記の通り、Javaが使いづらくなった! という、普通の人からしてみれば、大した事でもなかった問題が発生した結果、作者的には、膨大な追加開発が必要になった訳だ。
しかしまあ、そのお陰で、Java環境を使っているが故の機能制限がない、各OSの最大限の機能が使えるネイティブソフトである所の、macOS / Ubuntu版ソフトが開発される事になったので、ユーザー的には、万々歳だったかもしれない。
と、言う事で、Javaで開発していた頃には、Windows環境で動作するJava版を開発してしまえば、後は、macOS / Ubuntu環境でも動作する! という事を確認するだけで、Mirror-DTC的には問題なかったのだが、今では、各OS用にネイティブ版を開発しているので、Windows版の開発が終わっても、次には、macOS / Ubuntu版を開発する必要がある。
もっとも、Windows用のAPI処理を各OSのAPIで処理する移植用の自前ライブラリなんかも用意してある。
なので、自前処理の殆どのソースコードは、Windows版とmacOS / Ubuntu版で共用できているのだが、GUIが絡んでくる処理については、その限りではない。
で、今回のMirror-DTC クライアントの更新内容には、モニターモード絡みの微妙にGUIに関連する処理が含まれているので、更新内容をUbuntu版に適用するにあたっては、単なるコードのコピーだけでは済まない状況だ。
もっとも、やっている更新自体が単純なので、今日の時点で半分くらいは更新が終わったかもしれない今日この頃だ。
ちなみに、作者は何故、Windows版に加えてmacOS / Ubuntu版の提供を行う様になったのか、というと、Windows8のリリース時に、マイクロソフト的には、従来のWindowsアプリを旧式アプリ扱いし、新しいアプリはMicrosoft Storeからしかインストールできなくする方針を採ったからだ。
つまり、作者製アプリを含めて、巷のWindows向けアプリの殆どは、Win32APIを直接叩く、ネイティブアプリだったりするのだが、そんなアプリはセキュアじゃない! という事で、iPhoneの様に、動作可能なソフトは、マイクロソフトが提供する、より安全な機能しか使えなくしたAPIだけを使用して開発されるMicrosoft Storeアプリだけにしていく! という方針が明確化された訳だ。
なので、作者的には、そんな環境はPC環境じゃない! という事で、普通にアプリを組めるMac / Ubuntu環境に移行する準備を開始した訳だ。
もっとも、多くの人が知る様に、前述の様なマイクロソフトの試みは、殆どのソフト開発者に総スカンされ、作者を含めて、Microsoft Storeアプリは全くと言って良いくらい誰も開発しなかったので、マイクロソフト的には、前言を撤回して、従来のネイティブアプリを旧式扱いするのもヤメて、現在に至っている訳だ。
しかし、ここの所のWindowsセキュリティのDefenderの挙動を見ると、実は、マイクロソフトの中の一部の人的には、前述の様な方向性を捨ててはいなかったのかもしれない。
つまり、その人が出世して、セキュリティソフトの責任者に昇格したので、ここの所の騒ぎが始まったのかもしれない。
具体的には、Defenderに、ウイルスを誤検知させる格好にすれば、マイクロソフトが望まないネイティブソフトは実質的に駆逐できる! という事で、最近の異常な誤検知が発生する状況になっているのかもしれない訳だ。
前回のWindows8での試みは、ある意味、専門家である所のソフト開発者の協力が必要であったのに対し、今回の試みは、ある意味、素人である所のWindowsユーザーを相手にすれば良いだけなので、より、成功率は高いかもしれない。
と、言う事で、陰謀論じみた話になっているのだが、まあ、「信じるか信じないかはアナタ次第!」だ。

