自由ソフトウェアは勝利していない
(dorotac.eu)- オープンソースソフトウェアは広く使われているが、依然として完全な自由ソフトウェアの理想は達成されていない
- ファームウェア、ハードウェア、主要な消費者向け機器などさまざまな分野で、クローズドソフトウェアと独占的な構造が支配的である
- 平均的なノートPCには10〜15個の独立したプロセッサとファームウェアが存在し、ストレージ・入力デバイス・GPU・ME/SECURE BOOTなどの中核経路が非自由ソフトウェアに依存している
- つまり一般ユーザーは、ソフトウェアとハードウェアの制約により実質的な制御権を持てていないのが現実である
- その結果、アップデート終了・サービス停止・ハードウェアロックのようなラグプルや修理する権利の制限が現実化し、公共安全や医療機器のような高リスク領域でも検証と改善の自由が制限されている
- 解決策として、GPL中心のコピーレフト選択、ハードウェア文書の公開とオープンファームウェアの義務化、政策・規制の改善と消費者の選択を組み合わせ、ユーザーの制御権を回復すべきである
オープンソースが勝利したという錯覚
- 2008年からZDNET、Linux Journal、Wiredなどのメディアが**「Open Source has won」**という言葉を繰り返し報じてきた
- Linux、Ruby、Red Hatのような成功事例が根拠として示されたが、GitHubやMicrosoftのように実際には自由ではない事例もある
- 「勝利」の基準が使用・採用にのみとどまり、**自由(制御権)**は評価対象から外れている
- ブラウザ・言語・クリエイティブツールなど一部の層だけを見て全体を一般化する観察バイアスも存在する
- 日常の領域を見ると、TV、ワイヤレスヘッドホン、スマートフォン、プリンターなどは事実上の閉鎖的エコシステムに閉じ込められている
- 代替ネットワークであるMastodon・PeerTubeは、閉鎖プラットフォームとの相互運用性の欠如により到達性の制約が生じる
- 自由な代替手段がある場合でも、ニッチ・趣味レベルにとどまる限界がある
- 低コストのリーンスタートアップ文化では、オープンソースツールが合法的で主流の選択肢として定着した
- ソフトウェア開発の領域では、自由ソフトウェアの利用がもはや障害ではない時代が到来した
ソフトウェアが世界を侵食する時代
- Marc Andreessenの"software is eating the world"という概念: 以前はソフトウェアが存在しなかった領域にソフトウェアが継続的に浸透している
- ソフトウェアが生活の領域を制御するようになるにつれ、その領域の制御権がソフトウェア制作者へ移転する
- オペレーティングシステム(Fedora, Linux)、プログラミング言語(Python, Rust, LLVMなど)、ゲーム(Zero-K)、グラフィックス(Krita)、オーディオ(Ardour)などには自由ソフトウェアの代替が存在する
- 3Dプリンティング(Prusa)、モバイルコンピュータ(Librem 5)、スマートウォッチ(InfiniTime)などでもオープンハードウェアの選択肢がある
- 一部のグラフィックカード(Nvidia Kepler 2012年モデル)は完全に自由なファームウェアで動作可能である
自由ではない日常機器
- 自転車、ミシン(機械式)、インターホン、旧式の自動車(VW Beetle, Lada)など電子装置のない機器だけが真の開放性を持つ
- ハードディスク、ワイヤレスヘッドホン、TV、現代の電話機にはオープンな代替手段が存在しない
- アナログ電話機(Aster-72)だけが唯一のオープンな電話の選択肢である
- Librem 5開発当時のモデム調達問題: ある企業がセルラーネットワークの必須特許を独占していた
- 再販業者は流通ルール違反の懸念から販売を拒否した
- Richard Stallmanが1983年にGNUプロジェクトを始めるきっかけとなったプリンター問題は、40年経った今も未解決である
- 色鉛筆だけが唯一の**「オープンな」印刷手段**だという皮肉
ソフトウェア階層ごとの開放性の現状
- アプリケーション: Blender、Firefox、KiCADはオープンだが、Twitter、YouTubeはクローズド
- オペレーティングシステム: GCC、Apache、OpenSSLなどはオープン
- カーネル: Linux、Zephyr、FreeRTOSなどはオープン
- ファームウェア: Corebootはオープンだが、モデム、GPUはクローズド
- 家電製品: Prusa 3D、Airgradientはオープンだが、洗濯機、TVはクローズド
- プログラマーが直接扱うOSやカーネルはよく開かれている一方で、ハードウェアに近い下位層と消費者向け家電では選択肢がない
一般的なノートPCのファームウェア事情
- 一般的なノートPCには10〜15個の独立したプロセッサが搭載され、それぞれが独自のソフトウェアを必要とする
- カメラ、タッチスクリーン、タッチパッド、Embedded Controller、SSD、バッテリー、HDD、RAM、WiFi+Bluetoothカード、サウンドカード、BIOS、Intel ME
- グラフィックカード1枚だけでも5個のプロセッサが存在しうる
- Linux、ドライバ、アプリケーションなどのオープンソフトウェアはメインCPUにしか存在しない
- キーボードやタッチスクリーンのような入力デバイスがクローズドソフトウェアを実行しているため、データ入力そのものが信用できない
- グラフィックカード、ネットワークカード、ストレージはいずれもクローズドファームウェアに依存している
- SSDやHDDでオープンソフトウェアが動作した事例は皆無である
- Secure Boot: プロセッサ内部の別プロセッサがメインOSより前に読み込まれ、ユーザーが実行できるソフトウェアをメーカーが制御する
- Android端末でも類似の仕組みにより特定システムへのロックインが行われる
ユーザーの自由の侵害
- 自由ソフトウェアの4つの自由(Four Freedoms):
- 自由0: いかなる目的でもプログラムを実行する自由
- 自由1: プログラムを研究し修正する自由
- 自由2: コピーを共有する自由
- 自由3: プログラムを改良し、その改良を共有する自由
- Androidメーカーの短いサポート期間: 通常は4年、例外的でも8年でセキュリティアップデートが終了
- 端末が機能的には問題なくても電子ごみへと転落する
- 13年前のLenovoノートPCはLinuxのおかげで今なおセキュリティアップデートを受け取れる
- ブートローダーロックがなく、オープンドライバがあるおかげで、コミュニティがカスタムROMを開発できる
サービス停止による機器の無用化
- クラウド専用機器では、企業がオンラインサービスを終了すると機器が高価な文鎮と化す
- 800ドルの感情支援ロボットはサービス終了時に返金もなく動作停止した
- Nintendo 3DSとWii Uはオンラインサーバー終了後、210日で最後の接続も終了した
- Magic Leap 1ヘッドセット(2,300ドル)は2024年以降動作不能になる
- 農家の事例: 収穫期にコンバインが故障し、非純正部品を取り付けると「無許可部品」警告で動作不能になった
- カスタマーサービスで解決するまで9か月かかることもあり、数万ドルの損失で農場が倒産しうる
ペースメーカーと生命安全
- ペースメーカーは患者を継続的にリアルタイム診断し、医療処置を実行する複雑な機器である
- 誤診により不要な心臓ショックを与える危険がある
- クローズドソフトウェアのためメーカーに修正を依頼することしかできず、不具合状況を自力で回避できない
- Karen Sandlerの事例は、自由ソフトウェア活動がこの問題と密接に結びついていることを示す
- クローズドソフトウェアと単一メーカーへの依存を強いられる人々が存在する限り、オープンソースの勝利はありえない
家電製品とCopyleft
- 家電製品の製造でオープンソースソフトウェアが使われる場合、MITライセンスは著作権表示義務を課す
- curlのWebサイトには、自動車からフードプロセッサーまでさまざまな機器のクレジット画面のギャラリーがある
- MITのようなパーミッシブライセンスは4つの自由を許容するが、改変版を再びクローズド化することも許してしまう
- メーカーは利益を得る一方、ユーザーは自由を奪われる構図になる
- Copyleftライセンスの利用が必要である: 一度公開されたコードが再び閉じられるのを防ぐ
- **GNU General Public License(GPL)**の使用が推奨される
ライセンス以外の闘争領域
- 自由ソフトウェアのために戦うべき他の領域:
- 特許: セルラーモデムの事例のような技術的独占
- ハードウェアロック: Androidのブートローダーロック
- プロジェクト管理: 誰がプロジェクトを支配するのか
- GoogleのAndroid開発事例:
- 開発中ソースへのアクセスを特定メーカーに限定した
- 他のメーカーは主要リリースごとに1回しかアップデートを受け取れなかった
- これはライセンスや技術変更ではなく、プロジェクト運営上の決定の影響である
- 営利企業が支配するプロジェクトと一般ユーザーの利害衝突がある
DebianとAndroidの対比
- Debian: 「コミュニティ」を最優先と明記している
- ソフトウェアを開発し利用するのが同じ人々である
- 利用を難しくしない
- 完全なオペレーティングシステムを提供し、すべてのソースを公開し、十分にオープンでないものは除去する
- Android: 長年にわたりオープンな構成要素をクローズドな構成要素に置き換えてきた
- AOSP(Androidのオープン部分)は単体ではほとんど使いものにならないレベルである
歴史的背景
- コンピュータは学術界で生まれ、常に汎用機器として宣伝され、ユーザーの選択権が強調されてきた
- 家電製品は常に単一目的の機器として作られてきた
- 複雑化に伴ってコンピュータを内蔵するようになっても、製造文化は変わらなかった
- 少数者だけが制御権を持つことを前提とした構造が維持された
- Appleは常にコンピュータメーカーだったが、今ではコンピュータを家電製品のように製造している
私たちがすべきこと
- ハードウェア製造時: ファームウェアのソース公開を必須にする
- 技術文書の公開も必要 (Librem 5のカメラセンサー事例: オープンファームウェア作成に必要な文書が欠けていた)
- ユーザー/機関顧客として: メーカーにファームウェアのオープンソース提供を要求する
- 政治的圧力: 個人行動より効果的な方法
- EUは携帯電話メーカーにUSB-Cポートの標準化を強制した
- 保証期間の延長を義務化した
- コンピュータメーカーのブートローダーロック禁止も可能性がある
ヨーロッパの法的矛盾
- Information Society Directive: 権利管理情報の無断削除・改変を違法化している
- 機器にロックをかける側ではなく、自分の機器からロックを外す人を罰するという矛盾がある
- European Commissionに一貫した政策を求める
- 関連団体:
- Free Software Foundation Europe: Public Money Public Codeキャンペーン
- Right to Repair運動
- European Pirate Party
経済的に支援する方法
- 政治参加に加えて、自由ソフトウェアに友好的なメーカーを支援することもできる
- 購入推奨製品:
- PurismのLibrem 5
- Prusaの3Dプリンター
- EspruinoベースのBangle.js2スマートウォッチ
- ハードウェア製造には多額の費用がかかり、市場はすでにクローズド製品で飽和している
- オープンでハック可能な製品が優れていても、大衆に認知されるまで時間がかかる
- 自由ソフトウェアは修理と改造の文化の中で繁栄してきたが、その文化は閉鎖的で使い捨ての製品によって窒息させられている
Chromebookの例外
- GoogleのChromebook要件: すべてのメーカーに完全にオープンなBIOSを必須とする
- Embedded Controllerファームウェアもオープン
- すべてのChromebookがCorebootを実行する
- それでも一部のクローズドソフトウェアは含まれる (RAM初期化ソフトウェア)
- ARMベースのChromebookはRAMソフトウェア以外では完全にオープンなBIOSで動作可能
- NLNetプロジェクト: Chromebookでmainline Linuxを容易に動かすための支援
世界はプロセッサで満ちている
- 周辺機器を数えてみる: TV、カメラ、歯ブラシ、オシロスコープ、電子書籍リーダー、ラジオ、食器洗い機、ルーター、洗濯機、掃除機、体重計
- スーパーマーケットの青果売り場の秤: タッチスクリーン付きで、バーコードラベルを印刷する
- プロセッサとファームウェアを内蔵している
- 店の何千枚もの価格ラベル: 電子ペーパー画面で、無線アップデート受信用ソフトウェアが必要
- 自動車ソフトウェア: リモート制御を可能にする (Teslaハッキング事例)
- 列車ソフトウェア: ポーランドの列車のジオフェンシング問題、鉄道会社にソースアクセス権があれば防げた可能性がある
- ビジネス領域: 自動車診断機器、医療機器、会計ソフトウェア
無駄にされた潜在力
- 理論上は、元の著作者の意思に関係なくソフトウェアをオープン化できる (ゲーム改造コミュニティ)
- ポケットカメラでTetrisを動かした事例 (ハックされたファームウェア)
- メーカーに対抗してハックするのは無駄な作業である
- 公式ソースを修正することとハッキングの違い
- 開いているドアを壊す必要がないはずの潜在力
- アクションカメラの事例: 30分制限の法規のため録画が中断される
- 20年のコーディング経験を持つ人なら、ソースコードさえあればすぐに修正できた
- タイムラプスカメラの事例: タイムラプス機能がなく、毎日10時に自分で行って撮影しなければならなかった
- ソースコードがないため修正できない
エピローグ
- 新しいプリンタープロジェクト が広告でオープンソースを名乗っている
- 実際にはSource-availableライセンス (Creative Commons BY-NC-SA 4.0)
- 自由0(商用目的で使う自由)を認めていない
- 何もないよりはまし、という程度である
まだコメントはありません。