Everyone can agree that sharing of code and methods are useful for fast progress in research.
However, is it a problem that things easily available may be used without sufficient critical thinking about assumptions and possible flaws in the implementation?
I use to say that:
A good user should know the software and assumptions sufficiently to be able to develop the software himself (with sufficient time available), unless he is prone to others improper assumptions and simplifications. (I am not saying this should be done but unless you understand the software, you are an user not a researcher)