LocalFirst: Difference between revisions

From Wiki
(Add table of local-first software that I use)
(Add some opinions)
Line 1: Line 1:
This page explores [https://www.inkandswitch.com/local-first.html local first software] - software that keeps your data
This page explores [https://www.inkandswitch.com/local-first.html local-first software] - software that keeps your data
locally as much as possible and only sends it over the network for
locally as much as possible and only sends it over the network for
synchronization or backup.
synchronization or backup.


The paper linked above defines seven ideals for local-first software. I will only be considering those that I consider important.
The paper linked above defines seven ideals for local-first software. I will only be considering those that I consider important.
Most software these days is designed to be cloud-first. Data and often the application itself is served from the cloud with the user mostly dependent on thin clients like web/electron apps. Keeping data locally is increasingly de-emphasized over keeping it in the cloud. Cloud-first software is less free from a user freedom perspective and less convenient as well.


Here is a listing of local-first software that I already use as replacements for cloud-first software.
Here is a listing of local-first software that I already use as replacements for cloud-first software.
Line 17: Line 19:
| ToDoist || Emacs org-agenda, Orgzly + Syncthing
| ToDoist || Emacs org-agenda, Orgzly + Syncthing
|}
|}
I currently see a lot of potential in Syncthing and the SQLite database. Any application that exposes its storage as a set of files that Syncthing can sync or as a SQLite file can be potentially used as a local-first application.
Though local-first is something developers have to consider in the architecture of their applications, end-users can also take control by using their desktop and mobile applications together with synchronization solutions to have a local-first experience.

Revision as of 13:09, 16 December 2019

This page explores local-first software - software that keeps your data locally as much as possible and only sends it over the network for synchronization or backup.

The paper linked above defines seven ideals for local-first software. I will only be considering those that I consider important.

Most software these days is designed to be cloud-first. Data and often the application itself is served from the cloud with the user mostly dependent on thin clients like web/electron apps. Keeping data locally is increasingly de-emphasized over keeping it in the cloud. Cloud-first software is less free from a user freedom perspective and less convenient as well.

Here is a listing of local-first software that I already use as replacements for cloud-first software.

Cloud-first software Local-first alternative
Google Docs LibreOffice + Syncthing
Evernote Emacs org-mode + Syncthing
ToDoist Emacs org-agenda, Orgzly + Syncthing

I currently see a lot of potential in Syncthing and the SQLite database. Any application that exposes its storage as a set of files that Syncthing can sync or as a SQLite file can be potentially used as a local-first application.

Though local-first is something developers have to consider in the architecture of their applications, end-users can also take control by using their desktop and mobile applications together with synchronization solutions to have a local-first experience.