A good analogy for a software dependency is the use of concrete in the building of a house. The home builders don’t create the chemical formulas for concrete, mine the minerals, or mix the chemicals. They buy their foundation concrete from a concrete company, who often just comes out and pours it for them. Most of the time, the workers laying the concrete know a bit about it, but they are very rarely chemical engineers who formulated and tested it. They know how to use it, not create it.