Buffer
Overflow Defenses. ©2002, Jedidiah R. Crandall, Susan L. Gerhart, Jan G. Hogle.
http://sfsecurity.pr.erau.edu.
Better Software
Engineering Practices - Documentation
Pros:
Good documentation of reusable software components will allow people who use your code in their own projects to test and inspect it
Cons:
Time is money, and the cost of documenting the code gets passed on to the customers
Often software companies dont want to release the source code for libraries that they sell