Bash is a shell but it’s also a programming language, so between functions, aliases and scripts you can do anything you want without depending on an external program that might break, not be maintained anymore and you need to install everytime you reinstall, a machine.
I just have to restore my .bashrc and ~/bin…
When a basic dynamic library needs to be updated because, for instance, there is a big security issue, then all your statically linked binaries will have to be updated. Which means every one of those developer teams need to keep track of all the security fixes, release a new version of the binary and push it, and every user will have to download gigabytes and gigabytes of data.
While if you have dynamic libs you only have to download that one, and the fix will be pushed earlier and all the apps will benefit from it.