Well, to expand on your analogy, when nail guns were new, they were huge, heavy, hard to operate, and required investment in hoses, and for most jobsites, an expensive gas-powered air compressor. The nails were also much more expensive as they required special rolls/loaders, and those input mechanisms were completely proprietary. Even today, the good nail guns that will last for a long time are not cheap, the gas-powered air compressors are still expensive, and the and the nail rolls/loaders are often still proprietary. One can easily get $2000 into a system right now just to hammer-in nails.
By contrast, a hammer, ranging between $5 at Harbor Freight Tools to $80 for a top-of-the-line deluxe framing hammer forged from olympus steel and quenched in the tears of angels will drive in almost any conventional nail that one needs, and unless abused will probably last as long as the owner will.
I'm working with some web software at the moment. It's the kludgiest amalgomation of crap that I've seen in quite some time. It's got OS library dependencies, but they need to be newer than one stable distribution's version, but older than another stable distribution's version, so one has to use unsigned third-party repositories for those. Then for Ruby on Rails and for Node.js it needs two other sets of proprietary repositories, and it needs specific versions of packages from those repositories too, not default, and it installs some redundant packages that were already covered by OS in slightly different version. Then once you go to put it in it requires MySQL for some of the dependencies but the main program itself only runs on PostgreSQL, so you're stuck with two DBs running, one doing almost nothing but required to be there.
This is sickening. This will make it almost impossible to do OS updates, and will cause all manner of problems if those third-party repositories ever go away, or if the developers for them stop maintaining those specific versions. It's dangerous and stupid to do this.