site-icon Hong Cheung
May 16, 2025

Decisión final del stack para mi próximo gran proyecto: Appwrite + Capacitor + RxDB

He estado intentando averiguar cómo autohospedar todo para poder escapar del capitalismo, y ha sido difícil.

Las economías de escala y el capitalismo van de la mano. Cuanto más grande es la empresa, más barato y mejor es el servicio que puede ofrecer. Tengo que hacer algunos sacrificios para poder decir no a estos monopolios.

He pasado mi tiempo aprendiendo y trasteando, realmente espero que valga la pena.

Durante las últimas semanas, he probado muchos stacks para lograr una sincronización multiplataforma y local-first. Eso incluye plataformas nativas, RN Expo, LegendState, Flutter, RxDB, Powersync, Appwrite, MongoDB, Realm y Supabase. También he investigado Brick, WatermelonDB, IndexDB, etc. Además, entender la diferencia entre todas estas soluciones y cómo puedo combinarlas. Por ejemplo, Expo con LegendState con Supabase/Appwrite, Flutter con Supabase + Powersync/ElectricSQl, etc.

Al final, me di cuenta de que, si usara cualquier plataforma, digamos Flutter (de Google), RN (de Facebook) o SwiftUI, Kotlin, etc., la que sea, sigue siendo una dependencia muy grande de la plataforma. Si no la mantienen o empiezan a cobrar o cambian sus políticas, me tendrán como rehén. Sobre todo, si dedico mi tiempo a construir para Apple para mejorar su App Store lanzando una gran app con su SwiftUI, siento que simplemente estoy trabajando para ellos.

Sé que algunos desarrolladores simplemente lo aceptarán. Usan lo que les resulta conveniente para lanzar rápidamente un MVP. Pero yo sigo sin querer hacer eso. No quiero usar Flutter con Firebase solo porque sea conveniente, escalable y relativamente rentable. Ignorando cómo Google, la empresa, perfila y rastrea a los usuarios para sacar provecho de nosotros, como si fuéramos tontos.

Por lo tanto, llegué a la conclusión de que la única solución es la Web. Como siempre lo ha sido. La tecnología web es estable, y no necesito leer páginas de Términos de Servicio solo para saber que podrían cerrar mi proyecto al azar porque no sigo sus reglas de monopolio.

Si, al final, un framework multiplataforma necesita compilación de todos modos, construir primero una app web y luego envolverla con Capacitor solo para publicarla en App Store y Google Play Store tiene todo el sentido. Ya que de todos modos deberían tratarse como prioridad de segunda clase.

Nunca se trató del rendimiento del dispositivo, de la API del dispositivo, ni del multihilo. Es una cuestión de orgullo y del objetivo de lograr algo grande.

abcd.com es lo mismo que google.com, y debería empezar desde ahí.

Anterior