斉藤英樹とコンピューター
全般的なコンピューティング環境
周りの人が考えているほどアンチマイクロソフトではない、ただ、歴史的な文句はあるけど……。長くLinuxユーザーであるので、以前のマイクロソフト以外のユーザーに対するポジションに関連する問題を直接受けてきた、というのが原因。どちらかというと主義的な話とそれに起因する方針に関する問題。ただし変化は見えてきている感じがする。マイクロソフトは大きな会社であるため、部門によっては違う方針で動いていたりする部分がある。
最近のマネージメントの刷新で変わってきているものの以前の問題はまだそのDNAとして残っている感じがする。
とくにブラックボックスを作る指向性がある。問題が起こった場合にその問題の調査が困難な場合も多い。
ただ、全てを否定しているわけではない。例えば、Visual Studio Codeは常用しているソフトの一つである。
たとえば、.NET、PowerShellやAzureは良い方向に動いている感じがする。
実際に.NET CoreやPowerShellは現在一番好きな開発プラットフォーム。
マイクロソフト・オフィスなどの製品にはニュートラルな感情
クラウドソリューションを使ったことはまだないものの、使ってみたい。
製品での統制が強すぎる場合、腹が立つ。
これは一般的なコンピューティングにおいて「安全」や「ユーザーフレンドリー」の大義名分においてユーザーから自由を奪うようなもの。ソフトウェアに何ができる、できないかを指示されるのが嫌い。マイクロソフトやアップルはこの方向に進んでいる。
Firefoxはこれが原因で使うのをやめた。(Androidでabout:configにアクセスできなくなった。)
だからといってグーグルの方向性に完全支持するわけではないが、少なくともグーグルはそのサービスを多数の環境で使えるようにするという目的があり、これはあまり利益相反を抱えていない。マイクロソフトやアップルはいくつかの製品に関しては複数のプラットフォームに展開しているものの、本質的に自分のプラットフォームで囲い込んでしまったほうが得、という構図がある。グーグルにおいては基本的にビジネスモデル上、違っており、プラットフォームを超えて広く使用可能にしたほうが有利。
例えばAndroidは複数のOSと問題なくインターフェースできる。(基本的に使用にPCは必要ないが、開発用のsDKはマイクロソフトやアップルと違い、Linuxでも機能する。)
多くのソフトウェアがLinuxにも提供している。
音楽やビデオサービスは最近のブラウザではすべて動作する。一部のプラットフォームでしか走らないソフトウェアは必要なし。
プログラミング
いくつかのプログラミング言語でプログラムを書いている。
C#
PowerShell。こちらはLinuxとWindows上で、インタラクティブな使用に加えて、スクリプト、バイナリモジュールと広く活用しています。
C/C++(最近はあまり使ってないけど)
ウェブ系(JavaScript, PHPなど)
Go, Dart, Rustなどのプログラム言語も試したことがある。
感想としては、Goはあまり好みの言語ではない。全般的なデザインやベンダリングにいろいろと問題があるが、一番の問題はその押し付けがましさにある。とくに、未使用の変数やインポートが存在する場合、コンパイルさえ成功しない。これは試験的なプログラミングを行う時に非常に面倒くさいコーディング体験になってしまう。
その他、ksimka/go-is-not-goodに書いてあることなど……。
Rustは同種のプログラミング言語としては(個人的には)より適切で、楽しいプログラミングであると考える。
Dartはいまいちうまくいかなかったのが残念。TypeScriptよりもいい感じだったのだが。
Python. TensorFlowのリリースによってPythonはもっと使いたい。
Jupyterが好き
C/C++を習得していれば他の言語を学ぶのはそんなに難しくない感じがする。EmacsのカスタマイズにLispも使ったり。
JetBrainsのツールを使用。
翻訳支援ツール
モバイル
Android
アップルに恨みを持っていることはないけど、プラットフォームが閉じすぎていると感じる。
スマフォはPCの延長として考えているので、たとえばソフトをプラットフォームのオーナー(Appleなど)の許可なしに読み込めないのは大問題。
「審査プロセス」も主観的なアジェンダが入りすぎている。
たとえば、アップルのプラットフォームにおいては自由なウェブコンポーネントを使用できず、アップル提供しているSafariより遅いものしか使用できない。
信じられないことにデフォルトのブラウザの変更でさえできないし……。
Dark Skyのようなケースも。
VR
Quest 2を使用。最近はPCで使っていることが多い。
ゲームをプレイしているよりはコミュニケーションや配信に使っていることが多い。
インターネット
I work for the Internetというスタンスを指示しておりインターネットのコミュニティに対し、できるだけ多くの貢献をしたいと考える。
たとえば、Wikipediaにおいては利用者にとって不利益になる、利害が発生する項目の編集は行わないポリシーを厳密に実践。
分散システム
分散システムに深い興味を持っている。
匿名化以外にもアクセス有効化の手段として分散システムは大きな可能性を持っていると感じる。
これらのシステムではポート転送なども必要がない。
世界に向けてコンテンツを配信することができる。
秘匿サービスをリモートマネージメントのためにも使用。
リモートサーバをフォワーディングを使用することなしに実現可能。(SSHなど)
簡易のVPNとして使用することも可能。
Freenetはデータをアップロードすると接続を切っても配信が続く。まさにクラウド。
自分のサイトのインデックスは USK@d305vFuUFCQ9py4tUcN8V~IjFGbUffAS0uYdJKAurTY,9ExSLC4l-KtQnXnqvCSVDhrt0b9jmf3Nv6EA509qG7g,AQACAAE/Hideki%27s%20Voice%20Node%20List/-1/
最近あまり活動していないので、もしかして動かなくなっているかもしれません。
テキストエディター
昔はEmacsのヘビーユーザーだったが、最近はそうでもない。Visual Studio Codeなどを使うことが多い。
Atomも使おうとしたけど問題が多くてやめた。
たとえばByte Order Mark (BOM)のサポート。
Markdownのサポートも日本語などが混ざると挙動が不安定だった。
3D制作
Blenderをサポート。
Blenderのすごいところは3D制作、ビデオ編集やコンポジティングを広く民主化したこと。
Blender Instituteによるオープンムービーはソフトウェアの向上にとどまらず広く自由に使えるアートリソースを世界に提供している。
Blender自体は無料であるにも関わらず、個人的には一番お金を払っているソフトの一つだったり。
Blender Cloudは画像共有、プロジェクト、設定の同期など非常に良くなってきているのでオススメ。
ボーカロイド
音楽を参照。
オーサリング
基本的にはオフィスアプリよりもスクリプティングの方が好き。
オフィススイートでよく使うのはLibreOffice。
フリーソフトウェア・オープンソース
選択肢がある場合はOSSを使う。
基本的にはそっちの方が便利だから。複数のマシンを使っているため、複数のデバイスで使用する場合、ライセンスコスト自体が高くなる。
プロプライエタリソフトウェアはそのライセンス形態が納得できるようなものであればいいが、例えば一台にしかインストールできないようなものは問題外。どちらにしてもLinuxで使用できるプロプライエタリソフトウェアは少ないけど。
必然的にベンダーロックインには気をつけるようになる。
リチャード・ストールマン氏ほどではない。
ただ、その理想に即した生活をしている氏は尊敬しているし、多くの点で納得できる点も多い。
過去に失笑を買うような発言も今になって実際の問題として取り上げられるようになってきている。
DRM
これはテレビゲーム業界で働く自分にとってはセンシティブな話。
DRMは反生産的であると感じ、また不必要なものとも感じている。
恐らくデザイン的に破綻している。
そのチャンスがあり、また、ステークホルダーである場合はDRMを無くす、というスタンスを取る。
現在のところ、PCタイトルに関わったことはない。個人的なスタンスとしてはSteam以上のDRMに関してはサポートできるものではない。
テレビゲーム機において何らかのDRMを装備しているが、個人的には何もできないのが現状。
なので、DRMが原因でゲーム機を買わないのであれば仕方がないと言うしかない。
理想の世界としてはすべてDRMフリーなのが一番で、それは深く思っている。しかしながら、自分も食っていかなければいけない。
たとえば、DRMにより強硬でいることに対して対価を得られるのであればそういう態度でいられるけど、そうでなければ難しい。
暗号化
日本語での恐らく一番古株のGnuPG情報サイトを持っている。
暗号化は重要。GnuPG、Signalなどの質が高い暗号を使おう。
Surveillance Self-Defenseのページでは安全に通信するための情報が掲載されている。
WhatsAppはSignalでも使用されているSignal Protocolが採用されているがソースコードは公開されていないのでそれが本当かはわからない。ただし、よりポピュラーなソフトを使う必要がある場合は有力な選択肢であるといえる。
Facebook Messengerは同じくSignal Protocolが採用されているらしいが、特別な会話モードに入らないと使えないのでそれほど強力ではない。
Google Alloも暗号化(Signal Protocol)を使っているらしいが、これも特別なモードのみ。
LINEは「レターシーリング」なる暗号化方式が使用されていてグループチャットにも使えるが2019年11月時点で画像やビデオなどテキスト以外のメッセージに置いては使用されないため、画面上に鍵のマークを表示するのは非常にミスリーディングであるといえ、これは修正される必要がある。(現状、「すべての通信」が暗号化されないのであればあのような表示をするべきではない。)