Saturday 18 April 2009

To Avi Bryant: Pride goes before a fall

The reasons for starting this blog have just been justified again by the posting of Avi Bryant on the Seaside mailing list:

First he cites parts of my posting about using "newBlahBlah" and then comes this:

"Gee. I better go and look at some of those 25 year old classes to see what conventions, in fact, the forefathers at PARC were using. Let's look in Squeak, which is the closest modern equivalent to the original Smalltalks."

Clearly, this rather young guy feels to stand far above what had been done in the dark ages "25 years ago". He feels wiser.

He then shows three examples that work without new:
Point x: y:
Association key: value:
Fraction numerator:denominator:

Then more polemics: "Never mind, though, Dan Ingalls is probably some bright young guy with little experience. Maybe you should set him straight?"

Here is my answer:

The basic classes are a very different subject, because everybody must learn their protocols who wants to program in Smalltalk at all.

This is not the case for Seaside or rather: it should not be the case. And therefore Seaside is a very different situation.

In the basic class library there are many good reasons for not using "new" although even there are some cases that could be subject to critics like the frequent "on:" which I find rather bad, because one cannot track its senders. As we all know, tracking senders by class names is always much more cumbersome and often impossible, because class names in Smalltalk are often contained in variables, thus tracking them becomes impossible.

Avi Bryant globally refuses to even discuss my point, which should be obvious to every open-minded Smalltalker. Well, he is definitely not one of them.

Mr. Bryant, your arrongancy stinks!

And because of that you are absolutely immune to advice. This is exactly what I had expected and good reasons why I choose this form of an anonymous blog. You proved me right. Your attitude does not serve the Seaside community!

Unfortunately!

No comments:

Post a Comment