aki_iic’s blog

己の欲せざる処人に施す事無かれ、狂人の真似するは即ち狂人なり

再起動(又の名をリセット文化:)

 これは多分マイクロソフト社やApple社(特にOSX以前のMacintosh)らの功績(無論、皮肉ですよ)なのだろうけれど、再起動(或いはリセット)をエンドユーザが平然と常用語として話題にされる事を、

 少なくともパソコンOS/アプリメーカは恥じるべきではないだろうか(建前)

 と絵に書いた様な建前論で笑っていられるのは再起動が許されるPCというゆるい文化系での話であって、ミッションクリティカルなシステムでは命や社会インフラに関わる事件に発展する事柄だから笑って済む事柄では当然ない(真面目な話です:):

gigazine.net

 この記事のインタビュー対象がSalesforceだからまあ、リセット文化圏のSIerだろうか(失礼)、クラウドサービスが固まると心証最低だから気にはしているとは思うのだが。この記事のポイントは:

ローソン氏は再起動で解決する理由を端的に「プログラマーが状態の管理を不得手としていること」と述べました。プログラムを記述して最初に起動した際には全ての変数はプログラマーの意図通りになっており、自動テストなどを通じて「プログラムとして最も純粋で完璧な状態」に仕上がっています。

しかし、プログラムの起動後はユーザーが何かをクリックしたり入力欄に文字を書き込んだりするだけでなく、ウェブアプリであればブラウザの戻る・進むボタンや更新ボタンを押したり、数週間放置した後に起動したりとさまざまな操作を行います。こうした操作を通してプログラムは元のプログラマーの意図とは異なる状態になり、エラーやクラッシュ、フリーズが発生してしまいます。

 IT詐欺師のレトリックを口語訳すると

 バグは直せない(場合もある)から再起動で回復したら許してね:)

 というふざけた言い訳をソフトに:)表現したつもりなのだろう。まあ、元々がゆるいアマチュア(言葉通り)のオタク文化が始点のパーソナルコンピュータだから多少のバグは許せ、リブートで解消できれば良いじゃん。という土壌から今に至るが家電機器の不具合をエンドユーザが許せない(場合によりリコール)のに未だに

 マイクロソフト社の製品はリコールされた例が無い(強弁)

 というのはMS空間(やApple空間)は異世界か異空間でソフトにバグがあって人が死んだり、社会システムが大混乱を招いてもMSだけは賠償しないで済むという免罪の護符が与えられているのだろうか(当時の権力者から、とか)?

 メディア様はSIerが例えばマイナンバーシステムで不具合が発生した場合は叩くのにMSがTeamsで世界的なシステム障害を何度も出しているのに不思議とニュースにもならないのはスポンサーに忖度(メディア様が大好きな語彙)してるのかMSのソフト障害なんて珍しくもなく話題性に欠けると判断されたのか(多分、後者と推定)。

 組込みシステムではバグ一つで人が死んだりロケットが爆発したり、社会システムに甚大な影響を及ぼしたりする場合もあり、当然メディア様はそれをご批判(当然である)なさるのだが、ことMS関連(こだわる)に関してメディア様や評論家(これはMSから金貰ってるから仕方がない)が沈黙しているのは狐や支那プー並の陰謀論を感じる・・・とか言い出したら人間終わりだな:)

 話を戻すに上記記事を書いた方は再起動という語彙を軽く用いているようだが、分野によっては深刻な事態を示す場合があるとも指摘しておきたい。

 最近では組込み機器のハイエンドである軍用においてもF-35FCSが数時間に一度再起動しないと不具合を起こす(メモリリーク、資源枯渇、とか?)といった報道が成された事もあったがAdaではなくC++で記述されたとされるF-35FCSはAda程の信頼性が無い・・・のだろうか? Adaは今でも民間機にも使用されているとの情報もある様なので、Adaが終わってしまった、とも言い切れない様だが(すみません、ど素人の聞き齧りな妄想です:)。

 通信分野ではErlang等の高信頼システム向けの専用言語も存在する様だし、パソコン系のシステムの品質が悪いのは

 それを構築した人たちの(端的に言えば)頭が悪い

 と元も子も無い言い方ができるのは、またまた理念デッカチのプログラムを組んだ事の無い文系メディア様・評論家の方々ぐらいのものなのだろう(か)。ご自身では校正で赤ペン入らなかった事が一度でもおありなのだろうか(挑発)。