The scripting environment managers have made big improvements in the past few years. Nvm/virtualenv/rvm give me 90% of the docker value prop with none of the performance impact or debug hassle.
Haskell/clojure/java all seem platform agnostic out of the box.
C/C++ is probably still a hassle with libs being platform specific.
But on the Mac you have to pay the virtualization overhead to run Linux in a VM, then compound the docker overhead on top of that.
On MacBook Pro this is problematic because it eats battery and contributes to thermal problems.
This article shows overhead for a disk heavy workload: https://vivait.co.uk/labs/docker-for-mac-performance-using-n...
He gets 7 second load time natively, but a 56 second load on docker with inconsistent drive link.