By reusing/improving upon something that already exists, Person B has a code base tested by users from around the world. By contributing back to the code base he insures that his code changes will get also get that testing. Since his code ties into the open source commons, his company can now leverage the communities knowledge base and as the codes tree matures, gives them access to free upgrades in the future.
If a programmer brought to me a library that duplicated something that I knew already existed in open source, I would ask him why I am paying him to reinvent the wheel. Such an activity may be interesting for the programmer, but it is pure folly from a business perspective.
Yes, it is true that there are times when the solutions available are weak and a good programmer can do it better, but such times are rare, and need to be carefully considered before the path is embarked upon. A solution to things already considered is a fragile flower with little chance of survival even when built by the best of programmers.
We all stand on the shoulder's of giants. What better than to help everyone get a little higher?
()-() \"/ `