2012-05-07

高優先度自由ソフトウェアプロジェクト

High Priority Free Software Projects — Free Software Foundation — working together for free software

自由ソフトウェア財団では、「高優先度自由ソフトウェアプロジェクト」と題して、自由ソフトウェアの注目を集めるためのプロジェクトを発表している。多くは、すでに同等機能を持つ不自由なソフトウェアの存在がある。なぜ優先度が高いのかというと、自由なソフトウェアが不自由なソフトウェアと同等以上にすばらしいことを見せつけ、人々をもっと自由なソフトウェア側に転身させるためである。多くの不自由なソフトウェアは、対価を要求する。しかし、その金を自由なソフトウェアの開発に当てれば、同等以上の機能を持ち、しかも自由なソフトウェアが実現する。その点で、いくつかの自由ソフトウェアのプロジェクトは重要である。

どうも、最近変更があったらしいので(どこが変更されたのか不明だが)、そのリストを紹介しようと思う。

ただ、どうも、自由ソフトウェア財団のリストは、万人の同意するところではないように思われる。

自由なソフトウェアによるFlash Player

自由なソフトウェアによるFlash Playerの実装は重要である。自由ソフトウェア財団が直接支援しているプロジェクトとして、GNU Gnashがある。これは昔のバージョンのFlashには、ある程度対応している。YouTubeも、かなり機能は限定されるが、みることはできる。しかし、最近のFlashにはどうも、すぐに対応できる様子がない。まだ開発は続けられているが、どうも開発速度は早くない。

その他に、Lightsparkというソフトウェアがある。これは、最新のFlashに対応すべく開発されている自由なソフトウェアである。LLVMを使ったJITなど、なかなか技術的にも面白そうだ。ただし、まだ未実装機能が多く、非常に不安定で、実用には程遠い。

自由なBIOS

今、OSから上を完全に自由なソフトウェアで構成されたシステムにすることは可能である。しかし、その下はどうしようもない。とくに、BIOSが問題だ。BIOSはソフトウェアであるので、自由であるべきだが、残念ながら、ほぼすべてのマザーボードのBIOSは自由ではない。

corebootというプロジェクトでは、自由なBIOSを開発している。だいぶ動くものはできているそうだ。しかも、起動時間が競合の不自由なBIOSに比べて早いそうだ。

問題は、どんなに優れた自由なBIOSを開発したとしても、使われなければ意味がない。しかし、BIOSのインストールは、OSのインストールほど楽ではない。何しろ、失敗すればハードウェアが機能しなくなってしまう。そこで、自由なBIOSが成功するためには、ベンダーが自由なBIOSを使うようにならなければならない。

ただ、corebootの高速な起動時間は、GoogleがChromebookに搭載するBIOSとして考慮されているらしい。

自由なソフトウェアによるSkypeの代替品

Skypeとは、今更言うまでもなく、ボイスチャットのソフトウェアとして高いシェアを誇っている。Skypeのクライアントは不自由なソフトウェアである。通常、自分が不自由なソフトウェアを使っても、それは自分一人の責任である。他人に不自由なソフトウェアの実行を押し付けることはない。問題は、Skypeの使用は、自分だけではなく、他人にも不自由なソフトウェアの使用を強いてしまう。そのため、自由なソフトウェアのためにも、Skypeは使ってはならないのだ。そこで、自由なソフトウェアによる同等品が必要になる。

単に自由なソフトウェアでボイスチャットができる実用的なソフトウェアなら、いくつかある。しかし、残念ながら普及率の点でどれも本当に実用とはならない。普及率は重要である。しかし、使われなければ普及しない。なんとも困ったジレンマだ。

自由なソフトウェアによる動画編集ソフトウェア

動画編集は重要なソフトウェアである。自由なソフトウェアである動画編集ソフトは、結構たくさんあるが、どれも不自由なソフトウェアに対抗できるほど完成されてはいない。

自由なソフトウェアによるGoogle Earth

はて、Google Earthはそんなに優先度の高いソフトウェアだろうか。私は一度も使ったことがないので、その面白さがわからない。

GNU/Linuxディストリビューションが自由になるよう働きかけること

これは、難しい。というのも、自由ソフトウェア財団の定義する「自由」というのは、不自由なソフトウェアを一切含まないことだからである。しかも、単に不自由なソフトウェアを分離しているだけではダメで、公式からも一切提供しないことを要求している。DebianやUbuntuのようなディストロは、この基準に合格しない。なぜならば、自由なソフトウェアのみをインストールするオプションがあり、またレポジトリでも自由なソフトウェアと不自由なソフトウェアを明確に分けているが、公式で不自由なソフトウェアを提供するレポジトリも公開しているので不合格となる。

自由ソフトウェア財団の定義する「自由」は、What is free software? - GNU Project - Free Software Foundation (FSF)に書かれている。すなわち、

  • 任意の目的でプログラムを実行する自由(freedom 0)
  • プログラムがどのように機能するか検証し、望む動作をするように変更する自由(freedom 1)。ソースコードへのアクセスはこの自由を保証する前提条件である。
  • 複製物を再配布して隣人を助ける自由(freedom 2)
  • 他人に改変版の複製物を再配布する自由(freedom 3)。これにより、コミュニティは変更の恩恵を受ける。ソースコードへのアクセスはこの自由を保証する前提条件である。

多くの、一見許諾的に見えるライセンスが、この自由には合致していない。たとえば、改変版を再配布してもいいが、名前を変更することなどという条件のソフトウェアもある。そのようなソフトウェアは、自由ソフトウェア財団の定義する「自由」ではない

自由なソフトウェアによるMatlabの代替品

Matlabは数値計算のソフトウェアとして人気の高い不自由なソフトウェアである。自由ソフトウェア財団が直接支援するプロジェクトに、GNU Octaveがある。これは、ある程度は成功しているようだ。

OpenDWGライブラリの代替品

OpenDWGとは、CADファイルのフォーマット規格及び不自由なソフトウェアライブラリの実装である。自由なソフトウェアによる実装として、LibreDWGがある。

GDBによる逆転デバッグ

逆転デバッグとはデバッガーによる、すでに行われた実行の取り消しである。まあ、面白い機能ではあるし、ある種のデバッグ作業の助けにはなるだろう。しかし、この機能が人々の注目を自由なソフトウェアに集めることになるだろうか。その辺は疑問だ。ただし、今TASと称するプレイ動画が人気であることを考えると、実行をなかったことにするこの機能は、結構人気が高いのかもしれない。

ちなみに、Windows用の32bitプログラムでTASを実現するデバッガーとして、hourglassというものがある。これには逆転実行はないものの、スナップショット機能がある。

自由なソフトウェアによるネットワークルーターのドライバー

まあ、ネットワークルーターに限らず、自由なソフトウェアによるネットワーク周り、特に無線LANのドライバーは、常に欠けている。

自由なソフトウェアによるOracle Formの代替品

DB関連には疎いのでよくわからない。

自動的な字幕書き起こし

いわゆる音声認識のことである。音声を認識して、自動的に字幕を生成する機能だ。「YouTubeはこれを実装している。しかし、出来ればこの機能は、自分のコンピューター上で、自由なソフトウェアを使って行いたいものである」とのことだが、はたしてこれが人々を自由なソフトウェアに惹きつけるようになるのだろうか。

PowerVRドライバー

PowerVRというのは、組み込みの分野では有名なGPUである。このGPUの自由なドライバーが存在しない。問題は、PowerVRは非常に有名でよく使われているハードウェアなので、強欲な契約が行われているのだ。評価用のハードウェアやSDKやドキュメントを入手するには、NDAを結ばなければならない。そのため、PowerVRのドライバーを開発できる知識を持つ人間は、契約により自由なドライバーを開発できないし、ドライバーを開発したい人間は、必要な知識を得られない。

PowerVRに限らず、GPU周りは、自由なドライバーが欠けている分野である。

No comments: