PPAs build in environments matching the chosen distributions, so as long as the builds are properly setup and the user chooses the correct one (which is automatic, with the standard tools), dependencies will work out as expected.
The last time I had a discussion about perceivedly broken PPAs with somebody on HN, it turns out that he was abusing this system, by not using the proper suite (distribution).
I'm not sure how this works for Debian (I think PPAs also allow Debian suites), but if there isn't such [widespread] support for 3rd party repositories, then this subject should get more consideration.
Regarding shared libraries, if they wouldn't exist, operating systems would would take an order of magnitude more in space. I'm not a big fan of an 80 GB Ubuntu; if the public accepts that, that's fine, but shared libraries have a specific purpose.
You can manage multiple versions of shard libraries as needed by different applications: see Nix.
(Of course, the underlying problem is that shared libraries are actually a bad idea. They were a hack for days when storage and memory was very expensive. But for some reason, Linux still uses them. New languages just compile everything into a statically linked binary, which is wonderful. I can write a Go program on my Windows machine, and with one command, compile it for a Raspberry Pi. Copy it over and it just works. Snap is also a thing that appears to work well.)