Local-first software is a software data management strategy and
philosophy that stores a user's functional data on their own device
rather than on the company's servers, ideally in a manner that allows
the user to trivially access this data offline or with external
programs. Think programs like \`git\` and their ability to allow users
to develop software on their own at any time, anywhere, in a
decentralize fashion, then sync it with some external source of truth
when available.
The research lab [Ink & Switch](https://www.inkandswitch.com/) has in
particular been a major proponent of this organizational strategy (see
their article - [local-first
software](https://www.inkandswitch.com/local-first.html) - for
elaboration), though it hasn't yet infiltrated industry. It's used in a
variety of niche personal knowledge management solutions, such as Roam
and Obsidian, but hasn't yet found a place in the average computer
user's software arsenal yet.
# Motivation
Much of today's cloud-based software traps user data in proprietary
silos, preventing end users from freely using their data however they'd
like.
Generally, it's good to be able to access data offline or to be able to
extract it! This prevents companies from being able to hold data hostage
and extract value from something that users have presumably only
provided to the company in order to use it themselves.
This also saves users a lot of time. It seems senseless to have to
manually input complex, computerized information when switching products
or services, but data siloes typically prevent this from happening
easily.
# Locally Encrypting
# Counterarguments
## People have internet connections everywhere nowadays. Why should I care about using data offline?
There are a variety of ways in which internet can be deprived from you.
Dependence on the internet for regular tasks is dangerous!