The (Linux) World is Flat(pak)
WHAT IS FLATPAK?
One of the reasons I am happy to be moving to Linux now is the new application packaging format called "Flatpak". So what exactly is "Flatpak"? In general, it is an attempt to separate the application layers from the underlying OS layers. By separating the apps in this way, it makes it less likely that an app you use takes down the whole operating system. In addition, if you learn about Flatpak, it is easier to find where the app's data is stored.
There are other projects that attempt to do this. These other projects are AppImage and Snap. AppImage tries to make sure all the pieces needed by the app exist in the app's folder. This can make apps big. Snaps use the built in Linux "cgroups" to isolate the applications from the operating system. You can use all 3 new forms of Linux apps while also still installing the traditional forms of the apps from your chosen repositories.
HOW DO FLATPAKS WORK?
Flatpaks try to do this by creating a separate hierarchy for app libraries instead of using the OS installed ones. It can need more space because the each app can specify which version of the library it needs, but it also allows apps to share the same library as long as it is exactly the same version.
There is some extra security baked in, as now an app can't install a library for the OS. Plus the apps start off with limited access to what folders they can see. Still, be careful! It can see a lot of your home directory.
WHY DO I LIKE IT?
The first is app availability. The Flathub app store means that once I enable Flatpak support on my current distribution, I have access to all the apps on Flathub. I don't need the developer to repackage their app for Debian or Fedora.
The second is portability. The Flatpak apps store most of their data in your ~/.var/app folder. This folder is hidden by default, but you can show it in your Files browser (Ctrl+H on Gnome). Since this is the same location across distributions, you can hop from distribution to distribution and bring your apps with you.
I used knowledge of this to allow me to migrate my main laptop from Manjaro to Fedora recently. I used Flathub and downloaded the apps, then copied over the ~/.var/app folders that I wanted and most of my apps launched with all their configuration and data. Firefox, Thunderbird, RocketChat, and Fluent Reader continued right where they had left off. With the Brave Browser, I only had to set up the sync function again, then it was back to the way I had left it.
There are some other benefits to Flatpak that I haven't explored yet. It is relatively easy to set up your own Flatpak repository. After I start writing Linux apps, I want to submit my own applications to Flathub for others to use.
START YOUR LINUX JOURNEY
Most of the major distributions are experimenting with these new package formats, and it is making the journey easier. Switching to Linux can seem daunting, but it is worth it to explore what is out there. Flatpak, Snaps, and AppImages are all making the journey better. I hope you will give it a shot in a VM or on a spare machine soon!