https://ones.com/blog/essential-software-dependencies-examples-developers/