I have a philosophy that I try to adhere to in all of life. I try to make questions meaningless. Let me explain. For example, people get confused when they ask, if the Universe is finite, what is on the "other side"? If you make the universe a sphere (n-dimensional) the question becomes meaningless. The Universe would then be finite, but boundless. There is no edge. This is similar to when early people that believed the Earth was flat, were confused when they asked, what happens when we reach the end of the world? Do we fall off the end? In programming, I use this philosophy which is in the same spirit, imo: Even more appropos in that book is the section called "Invert Your Expectations" but I cannot link to it. I am assuming that you are talking about systems that have a non-deterministic program paths, as otherwise they are relatively easy to test with Unit Testing, imo. Hence, I try to achieve a situation where if the components work correctly, the whole must. For example, I have become more convinced that threading is too hard in a complex interacting system, so I try to minimize the problem by using immutable data in the functional style. Other ideas are to use cores for processes, not threads. The problem then disappears.
That is interesting. Imo Python or any dynamic language has the same prototyping power. I am investing somewhat in learning Python, and IronPython in particular. I am also making an investment in learning Erlang and F#.
Meh, it does allow for <a href="http://www.atrevido.net/blog/2008/08/31/Statically+Typed+Duck+Typing+In+F.aspx">duck typing</a>, which allows you to get around some of the pains associated with strong statically typed languages...
I got this with my coupon: Dependency Injection http://www.manning.com/prasanna/ Highly recommended. DI is done in .net in several ways. One very popular way is through http://www.springframework.net/#13RC1
I am looking through your links and they look quite good. Scala seems to be the static version of Groovy, http://groovy.codehaus.org/ an extension to Java that I find very interesting. Thanks for the info.
50% off all eBooks from Manning. Use code: pop0914 Expires 12:00 noon ET on 9/15 http://www.manning.com/ Not as attractive as big discounts on the hardcopy, since the eBooks are already reasonably priced. Still...
Manning is my new problem. I am going to go broke if they keep publishing great books: http://manning.com/ghosh/ 37% off with this coupon: o637