Ubuntu and Debian are pretty similar, and using Debian gets rid of things like snap, which I'm glad to be rid of - but it adds an extra level of "well it works on my machine" which I'm not glad for.
If it's going to be hard to get that special different version of Java to work on the server, it should be hard to get it to work on the desktop too :)
Of course the rise of containers has made a lot of this stuff less relevant.
To me, we've gotten a bit lazy and a bit too focused on the wrong things. I feel like this happened when we started running javascript on the server. That was such a shock to the system and all sorts of things had to be done since it just was not the normal way of doing things. Someone decided it'd just be easier to clone the dev's system and deploy that as a server. Like what the actual... I also totally feel the same way about running a Windows Server. Like why on gawds good earth would you ever think that was a good idea?
For polygot/hybrid cases where you have a smattering of different languages and supporting technologies/services, docker makes a lot of sense.
If you're all in (for example) on nodejs with a monorepo, it probably doesn't - you're just an "npm install" away from deployment.
Whenever I really dig into the docker passion, I usually find devs who are frustrated by having to manage a million little details to get the dev environment going.
If the language/stack takes that pain away, docker loses most of its value.