site-icon Hong Cheung
May 16, 2025

次の大型プロジェクトの最終スタック決定 - Appwrite + Capacitor + RxDB

資本主義から抜け出すために、すべてをセルフホストする方法を模索してきましたが、それは難しいことでした。

規模の経済と資本主義は密接に結びついています。企業が大きくなるほど、より安く、より良いサービスを提供できるのです。こうした独占企業にノーを突きつけるには、ある程度の犠牲を払わなければなりません。

私は時間をかけて学び、試行錯誤してきました。それが報われることを心から願っています。

ここ数週間、クロスプラットフォームでローカルファーストな同期を実現するために、多くのスタックを試してきました。ネイティブプラットフォーム、RN Expo、LegendState、Flutter、RxDB、Powersync、Appwrite、MongoDB、Realm、Supabaseなどです。Brick、WatermelonDB、IndexDBなども調べました。また、これらのソリューションの違いや、それらをどう組み合わせられるかを理解することにも取り組みました。例えば、ExpoとLegendStateとSupabase/Appwriteの組み合わせ、FlutterとSupabase + Powersync/ElectricSQLの組み合わせなどです。

最終的に気づいたのは、どのプラットフォームを使うにしても、例えばFlutter(Google製)、RN(Facebook製)、あるいはSwiftUIやKotlinなど、何であれ、結局はプラットフォームへの依存度が非常に高いということです。彼らがメンテナンスをやめたり、課金を始めたり、ポリシーを変更したりすれば、私は人質に取られてしまいます。特に、Appleのために時間を費やしてSwiftUIで素晴らしいアプリをリリースし、彼らのApp Storeを強化するために働くのは、彼らのために働いているだけのように感じます。

一部の開発者はそれを受け入れるでしょう。彼らはMVPを素早くローンチするために、自分にとって都合の良いものを使います。しかし、私はそうしたくありません。便利で、スケーラブルで、比較的コスト効率が良いという理由だけで、FlutterとFirebaseを使いたくはないのです。Googleという企業が、私たちを愚か者のように扱い、利益を得るためにユーザーをプロファイリングし追跡していることを無視してはなりません。

したがって、私が出した結論は、唯一の解決策はWebだということです。これまでずっとそうであったように。Web技術は安定しており、彼らの独占ルールに従わないという理由でプロジェクトが突然シャットダウンされるかもしれないことを知るために、何ページもの利用規約を読み通す必要もありません。

結局のところ、クロスプラットフォームフレームワークがコンパイルを必要とするのであれば、まずWebアプリを構築し、それをCapacitorでラップしてApp StoreとGoogle Play Storeにリリースするのが理にかなっています。そもそも、それらは二級の優先事項として扱われるべきなのですから。

デバイスのパフォーマンスやデバイスAPI、マルチスレッドの問題ではありませんでした。 それは誇りと、大きなことを成し遂げるという目標の問題です。

abcd.comはgoogle.comと同じであり、私はそこから始めるべきなのです。

前へ
Copyright 2026
サイトマップ
プライバシーポリシー
利用規約

テーマ: Astro-Yi