@kyanny's blog

My thoughts, my life. Views/opinions are my own.

Go Newsletter issue 48

Go Newsletter Issue 48: March 5, 2015

Go は未だに遠巻きに眺めているだけだが、 Cooper Press のメルマガシリーズにラインナップがあるのでしばらく前から購読している。

Disclimer: 私は Go ブームに乗り遅れたので Go を取り巻く物事を白けた気分で見がちです。よってこの記事に書かれている意見には強いマイナスのバイアスがかかっている可能性があります。


Go にもそろそろ Ruby でいう Bundler 的な仕組みが必要だね、という提案。 Brad Fitzpatrick が Google に行ったときはまだ仕事で Perl を書いていたんだっけなあ(もっとあとかもしれない)当時は Google AppEngine の Perl 対応があるんじゃないかと噂されたが、彼はもうすっかり Perl はやらなくなってしまったんだろうか。

Perl 繋がりで、10年弱前くらいに日本の Perl デベロッパの一部の人たちが、アプリケーションサーバにインストールされる CPAN モジュールをディレクトリ丸ごと Subversion でバージョン管理する、ということをやっていた。当時はまだアプリケーションが依存するサードパーティライブラリのバージョン管理(SCM の管理下に置くかどうかは別として)という概念自体に馴染みが薄く、その豪快さばかりが目立っていたが、その後様々な言語のコミュニティでその問題を解決する方法が編み出されていったのをみると、彼らは進歩的だったのだなと思う。


Microservices 言いたいだけちゃうんか、と思った。アプリケーションを責務に従って分割していく方法論に異論はないが、それを Go で書いて何が嬉しいのかは未だによくわからない。自分も Go でそういうものを書いてみれば良さが理解できるのかもしれないが、それって単に「せっかく新しいことを覚えたからにはこれは良いものだ」みたいなバイアスがかかってるんじゃないのか?という疑念は拭えない。


こういうのが個人的に嫌いだ。 Go as the next step in the evolution of programming languages は言い過ぎだと思う。 

Concurrency のモデルとか、たしかに言語としてそれ以前の言語より良い機能を備えているところはあるとは思うが、そういうのが言語の利用形態全体に及ぼす影響は限定的だ。

新しくて流行ってるものをやたらとべた褒めしてなんでもそれでやろうとする人はよくいるが、自分の費やした労力で過剰にバイアスがかかっていて肩入れしすぎなんじゃないの、と思うことが多い。この記事でインタビューされてる開発者らも、それまでいったいどんなプログラムを書いてて、これからどんなプログラムを書くつもりなんだろう、まさにそういう個別の事情によって言語の選択はなされるものなのに、と思ってしまう。