On Jun 30, 2011, at 10:15 , Marcus Denker wrote:
On Jun 30, 2011, at 9:57 AM, Fernando Olivero wrote:
Why do people still use an older image? Even as older as Pharo1.1 and 1.2.
It doesn't take much to update to Pharo1.3 or Pharo1.4, and its totally worth the nuisance of updating a couple of classes references and uses, because of the many many many improvements that get integrated ( thanks for Marcus and Stef for the continuos improvements integration and fixes)
In a commercial setting, things are different... people need to really think hard to move to a new system. Time is money, bugs are expensive, there is always a deadline more important...
Exactly. When you have systems of the size >1000 classes that have been grown over years and have to work reliably, just "updating a couple of classes [sic] references and uses" is not easy. First of all, you have to figure out *what* to change. Changes like a modified Dictionary/Set hierarchy can subtly break your code (leading to data corruption in our case [1]). Or, just because you are one of the first to use the new code under high load, you see problems others haven't seen before (leading to unresponsive images in our case [2]). Those are obvious external bugs, but we also ran into issues with our code just not being compatible anymore with new semantics (e.g., Number class>>#readFrom:). That's why in a non-trivial setup, upgrading is costly, and at times painful (in particular when you missed problems in testing and then experience them in production). [1] http://code.google.com/p/pharo/issues/detail?id=3658 [2] http://code.google.com/p/pharo/issues/detail?id=3498 Cheers, Adrian