WhiteWindをオープンソース化します!!!

By WhiteWind (@whtwnd.com)
Published:

WhiteWindをオープンソース化します!

オープンソース化の経緯

atprotoサービス増加の重要性

 近年プラットフォーム事業者によってユーザーの権利や自由が制限される事例(enshittification)が注目を集めています。 理由が明確に示されないアカウント停止[^1]、シャドウバン[^3]、収益化などのルール変更[^2]、個人情報の売買[^4]、ユーザーが見たくない興味のない人の投稿などのコンテンツの挿入[^5]、Botの跋扈の放置[^6]、スパムを推奨するかのような仕組み[^7]など枚挙に暇がありません。 これらenshittificationを技術的に解決する試みとして、分散型ソーシャルメディアが注目を集めています。

 atprotoはBluesky社によって開発されている比較的新しいソーシャルメディアのためのプロトコル(通信のためのIT技術)であり、分散型に近しい設計を取っています。 atprotoを使ったサービスが上記のようにユーザーの権利や自由を制限しようと試みた場合、ユーザーは同等機能を持ったより良い運営方針の別サービスを作ったり簡単に移行[^8]できるというカウンターが可能です。 そのため、サービス提供者は、自身のサービスをatprotoを用いて実装すればユーザー離反のリスクをあえて負うことになるので、enshittificationする意志の無さや運営方針に関する自信等を示す事ができ、ユーザー側も安心してそのサービスを使うことができます。 atprotoを採用したサービスが増えることでプラットフォーム事業者によるenshittificationの問題が解決されることが期待されます。

 Bluesky社はatprotoのリファレンス実装として、マイクロブログのためのソーシャルメディアBluesky(以下社名と区別するためbskyと呼称)を運営しています。 2023年4月の限定公開以降、enshittificationを防止するためのatprotoを開発している信頼感やX / Twitterのenshittificationからの避難所としてbskyは着実にユーザー数を増やしてきました。 しかしながら、bskyがatprotoの高い実用性を示しているにも関わらず、これまでatprotoを採用しているサービスはbskyに限られていました。 atprotoを使ったサービスがbskyに限定される場合、社会全体でenshittificationを防止するという理想像からはかけ離れた姿になります。

なぜWhiteWindローンチしたのか

 WhiteWindはatprotoを使った初めてのサードパーティー非bskyサービスであり、手軽にMarkdownのリッチテキストを投稿できるブログサービスです。 WhiteWindは

という疑問に答えることを目的として作られました。 また、WhiteWindをローンチすることで

であろうという予測を持っていました。

 2024年3月のローンチ以降サービス改修を重ね、一定の安定稼働が実現されました。 3ヶ月のサービス運用を通じ、上記疑問に対する回答は得られつつあります。 しかしながら、他の潜在的なatprotoサービスが増えるという予測の実現には未だ至っていません。

最近のatproto開発者界隈の活発化を更に加速したい

 最近atprotoを用いた非bskyサードパーティーサービスの動きが活発化してきています[^9][^10][^11][^12][^13]。 WhiteWindのサービス開発が一定の軌道に乗り、一定機能が揃いローンチ当初ほどの大規模な変更が必要なくなったことも鑑みると、この時点を1.0.0としてWhiteWindソースを公開し、atproto開発者コミュニティに貢献する絶好の機会と考えられます。 仮説検証速度とUXに貢献する部分の開発を優先し、最適化を後回しにしてきたため、他人に見せられるとは到底言い難い恥ずかしいコードになっていますが、WhiteWindのソースコードを公開することを決意しました。

リポジトリ構造

コントリビューション

コントリビューションのためのガイドやアーキテクチャの解説などは開発余力の関係から暫くの間整備できません。 PRやフィードバックなどは歓迎します。

atproto開発者へ

一緒にatprotoのエコシステムに貢献していくことを楽しみにしています!

[^1]: Has anyone been suspended from Twitter/X? I was for 'violating our rules against platform manipulation and spam.' I appealed. What is this violation? - Quora [^2]: Changes to YouTube Partner Program terms - YouTube Help [^3]: Shadow banning - Wikipedia [^4]: Facebook–Cambridge Analytica data scandal - Wikipedia [^5]: Why Your Twitter Feed Is Full of People You Don’t Follow | TIME [^6]: X’s Bot Purge Sees Big Accounts Lose Thousands of Followers | Social Media Today [^7]: Is it worth getting Twitter Blue & Monetization? [^8]: あるサービスAから投稿(メンションやリポスト含む)、フォロー・フォロワー関係などを別のサービスBに手間なく短時間で完全移行でき、しかもフォロワーがサービスAを使い続けたとしても、Bを使っている自分とのやり取りに支障を来さないという意味で [^9]: https://bsky.app/profile/futanari.tentacle.expert/post/3kujluafvmk2g [^10]: https://bsky.app/profile/why.bsky.team/post/3kuonku75ay2i [^11]: https://bsky.app/profile/boobam.bsky.social/post/3kum4xpxzyk2o [^12]: https://bsky.app/profile/unhappysalt.life/post/3kuj45qfad72m [^13]: https://bsky.app/profile/soleia.app/post/3kt6fgfe7tc22