From: Zouplaz Date: 2006-12-04T21:05:09+09:00 Subject: Question about Ruby philosophy Hello, when I compare Ruby to Java there is something I don't understand . For example, let say that I create instances of JDBCFooBaseDriver in Java - The methods and their behaviors will never change, unless I update JDBCFooBaseDriver jar file. I can be sure that this part of my environment will stay the same even if new third party libraries are added and used by my application. Now, in Ruby I can use a new library (FancyDates) that will alter the behavior of some JDBCFooBaseDriver methods - Some methods of JDBCFooBaseDriver will be redefined by FancyDates and new methods will be added - All this stuff will occurs without giving me a chance to be informed of what is going on under the scene. So, 1) Is what I say right ? 2) Why should I not be scared by that ? 3) Why most C#, Java, C++ developper thinks that this approach is dangerous and lead to bad practices ? Thanks If this question have been answered many times, feel free to only provide some links to references.