皆さま,明けましておめでとうございます。初めましての方は初めまして,今後ともよろしくお願いいたします。ない方は本年も引き続きよろしくお願いいたします。Mastodonのコミッターをしている山岸和利と申します。2016年に開発が開始したMastodonは2017年の春に日本でちょっとした話題になりました。一年に満たない期間の内にMastodonのインスタンスがいくつも立ち上がりました。この記事ではMastodonの現在の開発体制から今後Mastodonがどのようになっていくかを取り上げてみます。MastodonとはMastodonはオープンソースソフトウェア(OSS)として提供されている,分散型ソーシャルネットワーキングのプラットフォームを構築するウェブアプリケーションです。3(AGPLv3)でライセンスされていて,GitHubを用いた開発が行われています(tootsuite/mastodon⁠)⁠。分散型ソーシャルネットワーキングとはOStatusやActivityPubといった仕様で規定されているプロトコルに沿って情報の授受を行い,連合を組むことを指しています。複数のサーバーに別個のウェブアプリケーションとして存在しているインスタンスが繋がり,別のインスタンスにいる人同士であったとしても相互に交流できます。socialやFriendica,PleromaなどOStatusに対応しているウェブアプリケーションは複数存在しています。それらのウェブアプリケーションが動いているインスタンスともMastodonは繋がることができます。一つの場所に多くの人が集約してしまう従来の中央集権型のソーシャルネットワーキングから脱却することを分散型ソーシャルネットワーキングでは意図しています。MastodonのソースコードMastodonはOSSとしてソースコードがGitHubで公開されています。Requestを受け付けています。多くのコントリビューターによって書かれたソースコードがMastodonでは混在しています。これは正しく管理されなければソースコードは統一性を失い,可読性の低いものになってしまいます。MastodonではRubocopやESLintといった静的解析を行うツールを用いてソースコードがコーディングスタイルに正しく沿って書かれているかどうかを検証しています。Requestにコミットが追加されるたびに検証を行っているため,コーディングスタイルから大きく逸脱したソースコードが取り込まれ難くなっています。機械的な検査ではどうしても限界があります。そのため最終的にはコラボレーターやコミッターによるコードレビューが実施されます。コードレビューはソースコードのフォーマットはもちろん,バグが含まれていないかなどの妥当性の検証も行われます。RailsとReactが使われています。RailsもReactもどちらも自由度をある程度犠牲にして書き方の統一を図らせるフレームワークとなっているためMastodonのソースコードも綺麗になっているのではないかと思います。MastodonのリリーススケジュールMastodonには明確なリリーススケジュールと呼べるものは存在しません。動作に支障が出るような致命的なバグがあったときにパッチバージョンを上げるリリースがされ,新しい機能がある程度追加されたときにマイナーバージョンを上げたリリースがされます。互換性を失うような大きな変更があった場合にのみメジャーバージョンを上げるリリースが行われます。明確なリリーススケジュールはないもののセマンティックバージョニングに沿っているため,わかりやすいのではないでしょうか。メジャーバージョンやマイナーバージョンを上げるリリースの場合はリリースの前にリリース候補(RC)版のリリースが行われます。安定版としてリリースをする前に確認するためリリースが行われるのです。RC版を使う場合は安定した動作は保証されません。最新の機能を使うことができます。インスタンス管理者に試しに使ってもらうことによって安定版のリリース前にバグが含まれていないかどうかを確認します。いえこのリリーススケジュールはきちんと確立しているものではまだありません。現状のMastodonの開発規模では問題ないでしょうが,将来的に開発者が増えていくことによって歪みが生じてくることが予想されます。今後の開発が進むにつれてより良い形に変わっていくことでしょう。Mastodonは儲かるのかさて,Mastodonは儲かりません。ウェブサービスで収益を上げるために考えられる方法としては広告を掲載することや有料会員を集めるといったものがあるでしょう。そのどちらもMastodonとは相性が良くありません。無料で使えて,かつ広告もないMastodonのインスタンスが多くある中であえてそうでないインスタンスにアカウントを作ろうとする人は少ないためです。ほかのインスタンスと比べられた際,優位に立てるように独自の機能を実装したとしてもMastodonはAGPLv3です。Mastodonをフォークしたウェブアプリケーションをウェブサービスとして公開する場合はユーザーからソースコードの提供を求められた際にその要求を拒めません。公開したソースコードを元にほかのインスタンスが同様の機能を実装したとしても,それを差し止めることはできません。Mastodon単体で利益を得ることは難しいでしょう。Mastodonと組み合わせる何かを用意できる事業者であれば営利目的でのMastodonインスタンスの運営はできるでしょう。個人の意見としては営利を目的としてMastodonのインスタンスを運営するのは費用に見合うものではないと思います。Mastodonは流行るのかMastodonのコミッターをしているとMastodonに関する質問をされる機会が度々あります。した質問の中でも「Mastodonは流行るのか」ということをよく尋ねられます。この質問にわたしは答えることができません。未来のことは誰にもわからないからです。Mastodonの最初の安定版であるv1.0がリリースされたのは2017年2月です。一年も経っていないのです。今の時点でそうしたことを判断するのは難しいでしょう。Mastodon自体が流行らなくても問題はありません。流行しないウェブサービス......つまり自身の利益にならない場合は通常のウェブサービスであれば残念ながらサービスを終了させてしまうでしょう。Mastodonは一つのインスタンスが運営することができなくなったとしてもほかのインスタンスはなくなりません。OSSであるため,自身で新しいインスタンスの運営しても良いでしょう。Mastodonがほかのインスタンスと繋がるために使っているOStatusやActivityPubは仕様が公開されています。Mastodon以外にも対応するウェブアプリケーションは今後も増えていくでしょう。これが従来の中央集権型のソーシャルネットワーキングと分散型ソーシャルネットワーキングの差です。流行しようがしまいが「なくなることはない⁠」⁠,わたしはそう見ています。おわりにMastodonはOSSであることによる長所も短所もあるソフトウェアです。最初のコミットからまだ二年も経っていないとても若いソフトウェアです。OSSであるMastodonはコントリビューターによって支えられています。コントリビュートとはソースコードを書く以外にも問題を提起したり,機能の提案をしたりすることも含まれます。ユーザーとしてそのソフトウェアを使うこともまた立派なコントリビュートです。皆さまのコントリビュートによってMastodonはこれからも進化し続けていくことでしょう。2018年はMastodonにとってどのような一年になるか,まったく予想できません。どのような動きをしていくのか今からとても楽しみにしています。それでは皆さま,本年もMastodonをよろしくお願いいたします。Mastodon著者プロフィール山岸和利(ykzts)Mastodonのコミッターの一人。OSSへのコントリビュートを行うことを趣味としている。好きなプログラミング言語はJavaScript。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。