# Data Portability ## Introduction Data portability is a big concern when considering digital tools and platforms to introduce in your personal or professional life. Data portability matters, because it’s never a good thing to be fully dependent on one solution, without means to back out and switch at some point. Everything may be fine for now, but what if your provider drastically increases their prices, or stops supporting features that you rely on, … As a matter of fact, European citizens have a right to data portability, as per [GDPR article 20](https://gdpr-info.eu/art-20-gdpr/) Note: in the rest of this page, **I’ll use the terms “tools” and “platforms” interchangeably, as it won’t affect our discussion. ## Why is “portable” data generally more interesting? Data portability is all about freedom and control. When your data is “portable”, you are free to: - Export or extract it from the tools you were using before into an open data format - Use it and manipulate it any way you see fit - Import it into different tools - Convert it to other data formats - … Some tools such as [[Obsidian]] **store files locally,** within plaintext files. Obsidian uses [[Markdown]] which is a purely textual notation. In the case of a note-taking system, what Obsidian does is ideal because: - Files are yours forever. They remain local and fully under your control. You can move them around, reorganize them, create copies, etc - Your notes can be edited with any text editor. You’re not stuck with a specific application and can switch whenever you like. That is the power of plaintext files Other tools use other file formats such as [JSON](https://en.wikipedia.org/wiki/JSON), [YAML,](https://en.wikipedia.org/wiki/YAML) [XML](https://en.wikipedia.org/wiki/XML) or [CSV](https://en.wikipedia.org/wiki/Comma-separated_values). Those are fine, and better than proprietary file formats and databases, but those files may be hard or impossible to interpret/use/edit, unless supported by specific tools (e.g., tools allowing you to import your data from other tools). Data portability basically enable interoperability, where different apps can create/modify/use/manage/support the same data. ## What does it take for data to be “portable”? Depending on the tools and platforms you use, your data is not organized/structured in the same way. That doesn’t matter too much, as long as those provide you with means to export your data into open data formats such as plaintext, JSON, YAML, CSV, XML, etc. Alternatively, and at a very minimum applications need to expose APIs that enable you to programmatically access/export your data, even though that is much more involved and requires programming skills. Here are some examples that don’t support/enable data portability: - Tools that store data in their proprietary databases - Tools that don’t provide export/download functionality - Tools that expose horrendous/unusable user interfaces for exporting/downloading your data - Tools that provide slow means to export your data - Tools that don’t provide APIs to access or manipulate your data - Tools that don’t use open data formats - Tools that don’t let you access your data easily - Tools that don’t let you navigate all your data easily - Tools that request you to pay to download your data - Tools that don’t support third-party integrations - … Tools and platforms can actually exhibit combinations of the above, but there are more problems to consider, including data privacy and da ta security related issues… ## How to ensure that you will be able to migrate your data from an old system to a new one? When you decide to use different tools or platforms, it’s important to look at the compatibility between those. You can explore the following questions: - Can I directly migrate my data from the old system using the new system? - If so, how? - Can I export my data from the old system? - If so, in which format? - Can I import a file containing my data in the new system? - If not, is there a way to convert my data to a format supported by the new system? - If so, is the exported format compatible with the new system? - If so, are there known limitations or compatibility issues that I should be aware of? - Assuming that my data is “sensitive” (e.g., private or confidential), will it be adequately protected when I export and import it? - If so, will it be the case during each step (e.g., export from the old system, temporary storage, network transport, import/conversion, storage in the new system, etc)? - Does the new system comply with data protection and privacy regulations (e.g., GDPR, HIPAA, etc)? - Will the new system handle the volume of data that I have accumulated in the old system? - If so, will it be able to handle the future data I will create/generate? - If so, what costs will be associated with my growing usage? - What do existing users of the new system have to say about their data import/export experiences? What problems did they encounter? To answer those questions, take a look at the documentation of the involved products and/or contact their support services. ## References - ## Related -