Ruby developers haven&#x27;t historically been as considerate to users as Perl, Python or Java developers; they don&#x27;t strictly follow semantic versioning standards or preserve backward compatibility for dependents.  So hacks like this and Bundler have been needed to preserve our sanity.