There has some buzz about Reading the source code on the interwebz lately.
As someone who teaches Computer Science, I find that most students finish their degrees without having read a single line of code that was not written by themselves, group partner or professor. And given the huge amount of good-quality open source code on the internet this is a very disappointed fact.
In fact, when they find an error on a 3rd party software (being a dependency, middleware or just a library) they simply block and cannot advance. For instance, when debugging a stack-trace in a Java project, once the methods reach out of the scope of their project and belong to something else, they stop debugging and don’t try to understand what is happening underneath.
And in my experience situations where the answer is not in the documentation, but in the source code, happen at least once a month. In fact, I have up reading the documentation for most libraries in Python or Ruby. I end up just browsing the source to learn how to work with them, it’s must faster for me. Unless they have some really complex algorithm, and then the documentation is a pre-requisite to the source code.