[Pharo-project] glamour and pharo

Stéphane Ducasse stephane.ducasse at inria.fr
Mon Jan 2 04:36:08 EST 2012


please read this mail until the end before replying :)

I want a tool suite that can work on another environment being it remote. I want to be able to refactor 
the code of the compiler that it is another image from this one. We need to be able to act on 
other cores. It does not look totally a stupid requirement.

for RB this is simple :) If we cannot discuss and build something with you and that you stand on your position 
without taking time to see that we need to have it fully parametrized so that we could 
ideally refactor remote code, then what is left for us to do?

Ok we take responsibilities for the changes we do. This is not the best solution for us 
but if we are forced then we do it. Even if adapting configurationOf can take my energy.

Since we are a bit stupid we will do mistakes and may be you will be right but does it matter?
Because at the end this is what we can do that count. 

The correct approach would have been to really try to see that the original design of RB is not 
immutable, it can be changed, it was not done for remote or other system refactoring.
I saw that you fixed some of the problems I reported like directly accessing Smalltalk globals where it should not. 

Now instead of too often shooting at us negatively you would simply try to understand
	- moving implies breaking
	- the state of the system is still spaghetti code (how come that we should deprecate a method that generate accessor implemented on scrollbar!!!).
	- testing is important but on time (for example 1.3 was release as RC during at least 3 months and you complained because you tried it after 1.3 was out).
	- you can be sardonic if this helps you but I do not see the added value on the long term. 

> Additionally, over time people will change/add/remove features that
> get integrated without proper review. I just had a look at the
> announcement framework in Pharo 1.4 today, it is unbelievable how a
> tiny framework could degrade to a bloated, untested and dead slow pile
> of mud in just a few years :-(

You cannot say that. This is insultant for the time and effort igor and henrik spent on it.
Why do you think that announcement should stay a system that anybody can write in 2 hours, not dealing with weak registry?

Now a gift for you. When you write impersonal mails this is easier to piss on people (Even if I decided
that such little flood of nasty thoughts will not reach me). 

Avoid impersonal mails, put the human in the center of the loop.
When you want to say "stef you are idiot because" just write it.
Do the same say "Igor is a fucking idiot because he bloated Announcement" or
"Henrik writes muddy and untested code".  (writing this one made me laugh when I remember that 
igor and henrik stayed until 10 in the evening writing tests and improving announcement).

> Moreover, every generic framework included with the core will sooner
> or later introduce dependencies from random core packages.

Why do you say random. Of course people make mistakes and are not perfect. But we will fix it.

Lukas do you want to be our andreas? Because to me this is what you are doing. Been smart and aggressive for the sake of it.
You can do it if you have to pass by this stage but you could act in a much more friendly way and gain positive feeling in addition.
You could be the pharo heros and have fun with us killing dragons - because this is what we did last thursday with the 
fucking event loop with igor. 

> This only makes it harder to have a modular system. And people that want to use
> another refactoring engine (or another version thereof) are excluded,
> because existing code depends on the included version. Again look at
> where the announcements are used and how people work around to use
> their own implementation.

You see I read and spent time to answer your kind of mail. Because you are still my friend
and because I had a lot of fun with you and I'm sure that you could have fun with us. 
Now tell us how you want to interact with us. Think about it because this is the new year resolution.
What I would like is
	- I have no problem to remove RB from the image.
	But I need to be able to change it. for RPackage (you know the bad code I'm writing because the system is so well done).
	I need to change it also because I want to be able to plug into another image and refactor it remotely.
	I hope nick will start for real on that.
	- So if you want to communicate in a humane way with us. No problem, we can and we are happy to have 
	fun with you.
Now I do not want to get your frustration on my shoulders. I'm doing Pharo to build a better world and you know it.


More information about the Pharo-dev mailing list