幕張メッセで開催中の「Interop Tokyo 2017」で6月7日、基調講演「マストドンを作った理由」が開催された。 マストドン(Mastodon)はTwitterに代わる存在として、注目を集めているSNSだ。1つの投稿は500文字まで。分散型かつオープンソースなプラットフォームとして、注目を集めている。 会場ではマストドンを開発したオイゲン・ロッコ氏が、Skypeによって遠隔出演。さくらインターネット研究所所長の鷲北賢氏、タレントの池澤あやか氏が登壇し、角川アスキー総合研究所の遠藤諭氏の司会のもとで講演が行われた。■マストドンの生みの親、オイゲン氏の開発ポリシーとは? 冒頭ではオイゲン氏の正体を尋ねるような質問が相次いだ。 これによると、一番気に入っている言語はRubyで、コードが読みやすく、シンタックスが素晴らしいという。一方で時々使うのがJavaScript。PHPもコンパイルが綺麗なのが良いとのことだが、最近ではあまり使っていないようだ。 10代の頃からプログラミングを手掛けていたというオイゲン氏。その、コーディングへのこだわりの一つは、いい変数名を選ぶこと。そして、フォーマット、またはスタイルを維持することだと話している。これにより、他人がどうプログラムを書いているかを認識できるので、それに対する貢献もしやすくなるという。 会場で池澤氏はマストドンのプログラムについて、その美しさが「教科書的だ」と話している。if文のネストが少ないことにも言及しており、そうしたこだわりが、マストドンの美しいプログラムにつながっているのだろう。 一方、講演の後半ではデータベースについての言及もあったが、PostgreSQLを採用している理由は、Railsの開発者にとって最もポピュラーな選択であるためだとか。ちなみに、鷲北氏からは「なぜ、My SQLを使わなかったのか?」という質問があったが、カラム型の検証をしっかりしないといけないこと、パフォーマンス最適化にクエリーのプランニングが必要なこと、arrayやJSONといったコラムがないことを挙げている。■分散モデルで一企業に縛られないSNSを オイゲン氏はなぜマストドンを作ったのか? そのきっかけの一つとして、同氏が挙げているのが、昨年5月にTwitterで行われた仕様変更だ。これを含めて、Twitterは何年にも渡って、ユーザーに不利益な変更を行っていると、オイゲン氏は話している。「そこで、SNSについて考えるようになり、Twitterの代わりになるものを作ろうと考えました。Twitterにはいくつかの問題がありますが、その一つが企業による中央集権的なサービスであることです。経営サイドとユーザーのコミュニケーションがありませんし、企業の収益化のための施策をユーザーは支持していません」 このためマストドンは分散モデルを採用したうえで、長期的にメンテナンスを行っていけるようなシステムを構築しているという。日本人がインスタンス(サーバー)を立てれば、シリコンバレーのルールに従う必要なく、SNSを運用できる。それが、マストドンで目指したものといえそうだ。 では、なぜ数あるオープンなSNSの中で、マストドンが流行ったのか? その理由として、オイゲン氏はUIとAPIを上げている。「UIはユーザーフレンドリー、かつ美しくなるように注意深く作りました。APIもシンプルで、アプリケーション開発者が期待するものになるよう配慮しています」■今後のアップグレードにも期待! 講演の最後には次回のリリースについてのコメントがあった。これによると、コラムの管理、プロトコルの安定性、管理性の改善、バグフィックスなどを視野に入れているという。一方、長期的な視線ではプロトコルの追加、シングルサインオンなどを考えているとのことだ。 鷲北氏からは「恐れ多いのですが」という前ふりのあと、アップデート作業自体を手軽にしてほしいとのリクエストがあったが、これについては改善していきたいとオイゲン氏は話している。過去のリリースは必要なアップグレードがあったため、どうしても容量が重くなったとのこと。その改善も含めて、今後のアップグレードに期待していきたい。