It's 2018 and the Linux Desktop still doesn't have a consistent way to... well do anything now that I think about it, but that you can't even reliably distribute an application is pretty insane.
Flatpak and Snaps are a typical Linux Desktop solution: Over-engineer the shit out of it.
Beyond that, AppImage is really just a container. It is still up to the developer to bundle the necessary dependencies (libraries, runtimes, VMs, data files, etc), but this is something they'd need to do with Windows too.
What problems do you have with it?
> It is still up to the developer to bundle the necessary dependencies (libraries, runtimes, VMs, data files, etc), but this is something they'd need to do with Windows too.
Only for libraries not present in the base system. Problem with Linux Desktop world is that they seem to actively loathe the concept of a consistent base system.
There is also work towards a more modular approach with Flatpak and Snaps, but those require support from the distro side. AppImage doesn't need any specific distro support.
[1] https://appimage.org/