I've talked about the trend of developers to use ready made solutions. The idea is simple enough. There is no need to reinvent the wheel. Almost every problem a developer encounters, someone else has already coded a solution. When taken to the extreme, we end with a development technique which can be termed "Copy Paste Programming" (CPP in short). Like anything in life there's a risk involved in this. In many cases code produced using this technique is less understood then code developed from scratch. And in most cases (I have seen) the ready made solution solves a slightly different problem then the one it is applied to. Which at the end leaves us with a piece of code that almost works but we don't know why. Its not that I'm against using other people code. In many cases its the most...