Junkware manifesto

前のエントリの「オープンソースにイマイチ興味ない」という話についてもうちょっと書いておく。それが表題のことだ。

GPLが不自由なライセンスだと言うことは、BSDLを愛する人達方面からよく聞く。まぁ、ライセンスはイデオロギーなのでそうなって当然であるが、あまりイデオロギー論争には興味はない。

GPLが「自由」と主張するのは、

ソフトウェアにとっての自由

であると思っていい。ソフトウェアが自由であるから、「自由なソフトウェア」なわけだ。

その反面、プログラマにとってはあまり自由でない面もある。使う側の立場であれば、それはソフトウェアの視点に近いから、「自由なソフトウェア」に不自由さを感じることはないと思う。Free Softwareの面倒臭いのは、著作権を行使する側であって、エンドユーザにとっては、

タダ(free)のソフト

である。

ところが、著作権を行使する側、たとえば、改変するとか、販売するとか、複製するとか。そういった側はライセンスに気をつける必要があるし、そこに「ある種の制約」があって不自由な思いをすることもある。そうやって「ソフトウェアの自由」を守っている。その相手は、時にソフトウェアの作者にまで及び、一度Free Software的なライセンス(GPLとか)を使うと、著作者人格権の行使は容易でなくなる。

これは「ソフトウェアの自由」を守るためのものである。

片やBSDLはもうちょっと作者寄りだ。まぁ、ここで変な解説をすると怒る人がいて面倒なので、gdgd言うことはやめるが。

いずれも「ソフトウェア」の立場では自由なのだけど、「作者」の立場だとちょっと窮屈だ。何しろ、著作者人格権の行使に事実上の制限があるので、

自分の作ったソフトウェアであっても、
自分の自由に出来ない

のである。

自分の作ったソフトウェアを適当に「おすそ分け」するのは、楽しい。「身近な人」が喜んでくれるのは、承認欲求が満たされる。しかし、これもちゃんとしようと思うと、大変だ。

仲間が増えるのは楽しくても、「自由なソフトウェア」は作者の気持ちを意識してくれる人ばかりが使うわけじゃない。と言うか、「作者の気持ち」なんてゆー

面倒臭いもの

から離れるために、ライセンスがあるのだ。そこに「気持ち」なんて持ち出すのは、そもそもの間違いだ。とは言え、完全にプライベートにするかフルオープンにするかしかないってのは、それはそれで面倒臭い。自分が頑張って作った作品を、「自分に好意を持ってくれる人」だけに使って欲しいとか、「自分の思想信条に賛成してくれる人」だけに使って欲しいとか思うことは悪いことだろうか?

さらに面倒臭いのは、どんなに素晴しいソフトウェアであっても、

マネタイズが容易でない

のだ。もちろん今の時代にはオープンソースにも「ビジネスモデル」なるものが存在しているので、オープンソースを金にすることは不可能ではない。でも、それを「個人」とか「零細企業」とかが実行するのは、ほとんど不可能と言って良いくらいのハードルがある。何らかの

馬力

がないと、実行困難なのだ。

かつてであれば、シェアウェアにして金を稼ぐという手もあった。しかし、今となっては事実上そんな市場はないと言ってもいい。なまじなシェアウェアを作ったところで、「オープンソース」にはもっと凄いものがあって、とても太刀打ち出来ない。また、半分ジョークではあるが、「ビールウェア」とか「酒ウェア」というのがあった。つまり、「別にタダで持って行って構わないが、俺に酒おごれ」という奴だ。これも今の時代あまり言わなくなった。ウェットで面倒臭いことではあるが、そこにある種の楽しみがあった。

とか考えると、気楽にソフトウェアを書いて、適当に共有しつつ楽しむということは難しくなってしまったし、ちょっとした小遣い稼ぎにすることも難しくなってしまった。

と言うわけで、「自由なソフトウェア」が市民権を得てくれたのは嬉しい限りなのであるが、その反面

自由なプログラマ

になるのは容易でなくなってしまった。もうちょっと著作者人格権を「自由」に行使したいし、もうちょっと「自由」に金にしたい。他人や「ソフトウェア」の自由にするために、自分の「自由」な時間を使いたくない時だってある。

「自由なソフトウェア」が市場で使われるようになって、「品質」のこともいろいろ言われるようになって来た。あげくに

テストコードがないコードはレガシーコード

とか言われる始末。高々「おすそ分け」くらいの軽い気持ちでソフトウェアを公開すると、言われたくもないことを言われなきゃいけない時代になってしまった。

もっとぶっちゃけて実も蓋もない言い方をすれば、

オープンソースの人達
意識高過ぎ

なのが息苦しいのだ。ソフトウェアは自由かも知れないが、プログラマは息苦しい。

まぁ、かつての自分がそうだったので、あんまり他人を悪く言うのも良くないが、「自由なソフトウェア」の世界には、

不自由なプログラマ

しかいないんじゃないかって気さえして来る。かつて我々はもっと自由にプログラムを書き、もっと自由に公開していたんじゃなかったのか?

そんなわけで、私はもっとプログラマが自由になることを提案したいと思う。gdgd書くのは面倒臭いんで、箇条書きにしてしまうと、

  • ライセンスに難しいことなんてなくてもいいじゃん
    「オレオレライセンス」上等。「ビールウェア」だっていいじゃん
  • ドキュメントやテストなんてどうでもいいじゃん
    あくまでも「俺」が便利なのが第一。それ以外は「おすそわけ」。使いたい奴が価値を見つけりゃそれでいいし、上手く使いたかったら、使う奴が頑張れよ
  • 車輪の再発明だっていいじゃん
    作りたいから作るんだよ。俺が使うのに都合が良ければそれでいいんだよ。「おすそわけ」にgdgd抜かすな
  • コミュニケーションなんてどうでもいいじゃん
    そりゃお礼言われりゃ嬉しいけど、それで何かの義務負うつもりはない。パッチとかpull reqとかも嬉しいけど、それに応えるかどうかは気分と暇の問題

もちろんこういったことを、「オープンソース」や「自由なソフトウェア」でやっても誰も文句は言わない。でも、「マジメな日本人」としては、ついいろいろ気にしてしまうんだよ。だから「宣言」してしまって、開き直っちゃおうという魂胆。

出来たものはjunkかも知れない。でも、junkだって使う人が上手に使えば価値が引き出せるんだよ。それでいいじゃん。もっと自由にプログラム書きたいんだよ。