El software de prioridad local es un enfoque de ingeniería de software en el que una aplicación almacena sus datos principalmente en el propio dispositivo del usuario en lugar de en servidores remotos. [ 1 ] Los usuarios pueden leer y escribir datos sin conexión a Internet, y los cambios se sincronizan entre dispositivos en segundo plano cuando hay conectividad disponible. [ 2 ] Este enfoque difiere de las aplicaciones convencionales basadas en la nube , donde el servidor mantiene la copia autorizada de los datos del usuario y el cliente actúa como un cliente ligero . [ 1 ]
El término fue acuñado en un artículo de 2019 publicado por investigadores de Ink & Switch, un laboratorio de investigación independiente, y presentado en la conferencia Onward! en ACM SIGPLAN . [ 1 ] El artículo, a veces denominado manifiesto, fue escrito por Martin Kleppmann, Adam Wiggins, Peter van Hardenberg y Mark McGranaghan. [ 3 ]
Fondo
Antes de la adopción generalizada del software conectado a Internet en la década de 2000, la mayoría de las aplicaciones de escritorio almacenaban datos como archivos en el disco local del usuario. Los usuarios tenían acceso directo a sus archivos y podían copiarlos, hacer copias de seguridad o eliminarlos a su antojo. [ 1 ] El auge del software como servicio (SaaS) y las aplicaciones basadas en la nube, como Google Docs, trasladaron el almacenamiento de datos a servidores centralizados. Si bien las aplicaciones en la nube simplificaron la colaboración en tiempo real entre dispositivos, introdujeron una dependencia del proveedor de servicios: si el proveedor interrumpía el servicio o sufría una interrupción, los usuarios podían perder el acceso a sus datos. [ 1 ] [ 3 ]
Un concepto relacionado, "offline-first" (primero sin conexión), surgió a principios de la década de 2010 y se centró en hacer que las aplicaciones web fueran resistentes a las interrupciones de la red. El enfoque local-first se basó en estos esfuerzos anteriores, pero puso mayor énfasis en la propiedad de los datos a largo plazo y el cifrado de extremo a extremo . [ 4 ]
Orígenes
Manifiesto de Ink & Switch
Ink & Switch es un laboratorio de investigación industrial cofundado por Adam Wiggins, quien anteriormente había cofundado Heroku . [ 5 ] Martin Kleppmann, profesor asociado del Departamento de Ciencias de la Computación y Tecnología de la Universidad de Cambridge , fue coautor del artículo de 2019. [ 6 ]
El manifiesto propuso siete "ideales" para el software local-first: [ 1 ]
- Rápido : las operaciones responden sin viajes de ida y vuelta a la red.
- Multidispositivo : los datos se sincronizan en todos los dispositivos del usuario.
- Sin conexión : los usuarios pueden leer y escribir datos sin conexión a la red.
- Colaboración : varios usuarios pueden trabajar con los mismos datos simultáneamente.
- Longevidad : Los datos permanecen accesibles incluso si el proveedor de software cesa su actividad.
- Privacidad : el cifrado de extremo a extremo protege los datos del usuario.
- Control del usuario : El proveedor no puede restringir la forma en que los usuarios acceden o utilizan sus datos.
El artículo examinó los enfoques existentes para el almacenamiento y la colaboración de datos —que abarcan desde archivos adjuntos de correo electrónico y sincronización de archivos al estilo Dropbox hasta aplicaciones web y sistemas backend móviles— y argumentó que ninguno de ellos satisfacía simultáneamente los siete ideales. [ 1 ]
Función de los CRDT
El manifiesto identificó los tipos de datos replicados sin conflictos (CRDT) como una base técnica prometedora para aplicaciones locales. [ 1 ] Los CRDT son estructuras de datos que permiten editar múltiples réplicas de forma independiente y luego fusionarlas sin conflictos, una propiedad formalizada por primera vez en una investigación realizada por Marc Shapiro y sus colegas alrededor de 2011. [ 3 ] Kleppmann y sus colaboradores en Ink & Switch desarrollaron Automerge, una biblioteca CRDT de código abierto para documentos JSON , para poner estos algoritmos a disposición de los desarrolladores de aplicaciones. [ 3 ]
Adopción y comunidad
El interés de los desarrolladores en el enfoque de priorizar lo local creció después de que el documento de 2019 se difundiera en Hacker News y en conferencias de desarrolladores [ 2 ] En agosto de 2023, Wired publicó un artículo sobre el movimiento, describiéndolo como un esfuerzo por reducir la dependencia de los grandes proveedores de la nube. [ 3 ]
La primera Local-First Conf tuvo lugar el 30 de mayo de 2024 en Berlín, con charlas de Kleppmann y desarrolladores de empresas como Linear y Anytype. [ 7 ] La comunidad ha seguido expandiéndose, con encuentros regulares de "LoFi", un podcast ( localfirst.fm ) y una tercera edición de la conferencia prevista para Berlín en julio de 2026. [ 8 ]
Críticas y limitaciones
Los desarrolladores y los comentaristas han señalado las dificultades prácticas del enfoque de priorizar lo local.
La sincronización de datos entre múltiples dispositivos que pueden estar desconectados durante períodos prolongados introduce una complejidad que las arquitecturas basadas en la nube evitan. La resolución de conflictos, incluso con CRDT, puede producir resultados técnicamente consistentes pero semánticamente inesperados para los usuarios. [ 9 ] Las migraciones de esquemas a través de miles de dispositivos cliente que ejecutan diferentes versiones de aplicaciones plantean otra dificultad que no surge con las bases de datos del lado del servidor. [ 9 ]
Los navegadores web imponen límites de almacenamiento y pueden eliminar datos almacenados localmente. Se ha informado, por ejemplo, que Safari borra los datos de IndexedDB después de siete días de inactividad en un sitio determinado, lo que contradice la suposición de que los datos locales son persistentes. [ 9 ]
También existe desacuerdo dentro de la comunidad local-first sobre si se requiere una arquitectura totalmente descentralizada. El manifiesto original describía la descentralización como el "objetivo final lógico", pero varios productos que se identifican como local-first aún dependen de servidores centralizados para la autenticación, la copia de seguridad o la sincronización. En una charla en Local-First Conf 2024, Kleppmann afirmó que los siete ideales se entienden mejor como un "gradiente" en lugar de una lista de verificación estricta. [ 4 ]
Véase también
Referencias
- 1 2 3 4 5 6 7 8 Kleppmann, Martin; Wiggins, Adam; van Hardenberg, Peter; McGranaghan, Mark (octubre de 2019). Software con prioridad local: Usted es dueño de sus datos, a pesar de la nube . Simposio Internacional ACM SIGPLAN 2019 sobre Nuevas Ideas, Nuevos Paradigmas y Reflexiones sobre Programación y Software (¡Adelante!). Atenas, Grecia: ACM. págs. 154–178 . doi : 10.1145/3359591.3359737 .
- 1 2 "¿Qué se comenta sobre el movimiento de software "local-first"?" . DevPro Journal . 26 de abril de 2024 . Consultado el 16 de febrero de 2026 .
- 1 2 3 4 5 "La nube es una prisión. ¿Podrá el movimiento de software que prioriza lo local liberarnos?" . Wired . 3 de agosto de 2023.
- 1 2 "Software con prioridad local: orígenes y evolución" . Blog de PowerSync . 2024. Consultado el 16 de febrero de 2026 .
- ↑ "Cómo el desarrollo con enfoque local está cambiando la forma en que creamos software" . Heavybit . Consultado el 16 de febrero de 2026 .
- ↑ "Dr. Martin Kleppmann" . Departamento de Ciencias de la Computación y Tecnología de la Universidad de Cambridge . Consultado el 16 de febrero de 2026 .
- ↑ "Conferencia Local-First 2024" . Conferencia Local-First . Consultado el 16 de febrero de 2026 .
- ↑ "Conferencia Local-First 2026" . Conferencia Local-First . Consultado el 16 de febrero de 2026 .
- 1 2 3 "Por qué el software con prioridad local es el futuro y sus limitaciones" . RxDB . Consultado el 16 de febrero de 2026 .
- Arquitectura de software
- computación distribuida
- computación en la nube
- Filosofías de desarrollo de software