Proposal about SqueakMap etc (was Re: [squeak-dev] Re: SqueakMap soon working in 4.0/4.1!)

Göran Krampe goran at
Thu Apr 8 12:23:46 UTC 2010


Sorry for the long post here.

Chris Cunnington wrote:
> I can see from the tone I've used that I've got people's backs up. One 
> the one hand I have no desire to create personal animosity.

So far your tone is borderline for creating "personal animosity", I 
still give you the benefit of the doubt though. :)

> On the other 
> hand I'm glad some people are frothing mad, because this is in my mind a 
> serious problem. We are creating a new image and we're bringing an 
> outdated design attitude with us. We've been ruthless in cutting out 
> some things and some perspectives, but not here it seems. 

Btw, for some historical note - SqueakMap was from the beginning NOT in 
the image. It was installable using a small snippet of code. There is no 
big reason for not going back to that, but then we would need some easy 
way to install it to begin with and... well, you see my point.

But Installer from Keith in combination with some nice menu with "These 
are tools you probably would want to install - just pick one" that uses 
Installer to pull these tools in might be nice. Again, just brainstorming.

> "SqueakMap is a catalog, not a repository. And let's see - either it is 
> something you do not understand *or* I am actively with malicious intent 
> trying to make it harder for beginners.... hmmm, which one can it be..."
> Yea, you're right I don't make this distinction, but that doesn't 
> matter.

For personal animosity it matters to me. If you are accusing me of 
malicious intent, it matters to me.

> If I open up one menu I see three code getting options. For all 
> intents and purposes they are the same however they work. 

Hmmm, well, Universes and SqueakMap - yes, clear (and historically 
unfortunate) overlap. Universes is AFAIK abandoned, feel free to correct 
me on that people. SqueakMap is not abandoned.

If the third is Monticello Browser (as I guess you mean) then that is 
actually an SCM tool - not a package loader. Quite a bit of difference 
in fact, both in intent and purposes. Although the *simplest* use case 
is similar. I can give you lots of use cases which shows the differences.

And oh, Filelist and Changesorters etc are also tools to "get code"... :)

> "Deciding if the SqueakMap Package Loader should be *removed* from the 
> image is another thing - and that is not up to me."
> This makes me totally insane. You're saying you're not responsible. 
> Clearly nobody is. This is one of the banes of open source projects: 
> stuff is just going to carry on into the future by inertia. 

No, I was not saying that I am "not responsible" - I was saying that it 
is not *up to me* - I mean that I can't decide on my own. Further down 
in this post I give a proposal for a way forward, let's see if you are 
willing to help me out with it? Because that is what it all comes down 
to - someone willing and with time to actually *do* something.

> "No, I am not fixing it in order to feed a problem. I have no malicious 
> intent."
> I know that. I know your personality and nothing is going to convince me 
> you have any malicious intent. Due to the tone I've been using this is 
> the kind of escalation that is a peril. Let's not go there. 

Ok, fine, let *us* not go there. ;)

> "Now Lex is not AFAIK active anymore so 
> perhaps that path could easily be taken by the rest of us."
> OK, how about this. How about we kill Universes and SqueakMap lives 
> another day. 
> Or, we can have all three, but not on the same menu. How about we 
> prioritize places to get code. SS and SM and UB are in the same image, 
> but not the same menu. Experts will know where to find what they are 
> looking for. 

Yeah, something along those lines. Here is my proposal (from the hip):

1. Include some instructions in the image regarding "how to get stuff" 
into the image. Seems like a good short term thing to do for 4.1. We can 
easily explain the difference between SS and SM. PU (as it was called 
earlier - Package Universes) is ... well, see below.

2. Possibly throw out Universes in 4.1 *iff* it does not work anymore 
and noone can fix it. I haven't even tried it. Does it work?

3. Regardless of when we throw out Universes we should improve SM to 
cover the "loss" of it. I have a rather simple idea on how to do that I 
think, but it needs some coding help. And ideally we would "move the 
content" too so that the stuff in PU that actually is used and works 
(given that there is such stuff) can continue to work in SM. Chris? Others?

4. Improve SqueakMap. There is a loooong list of things we could do. One 
thing of immediate interest given this discussion is to make it "mirror" 
SS somehow so that packages hosted on SS are searchable and installable 
from SqueakMap Package Loader and listed on etc etc. We 
could also revive the "Make release on SqueakMap"-button that used to be 
in SS so that it can be used for *real* releases and not just for all 
new versions. Chris? Others?

5. ...rewrite SM according to the rest of the looooong list of 
ideas/improvements to it. Chris? Others?

Well, something like that.

One important aspect of SqueakMap that people seem to not "get" (and I 
don't blame them, it is not obvious) is that it actually is more than a 
catalog of packages. It is also a list of people. And it has a *model* 
that is *inside your image*!

This means you can *do stuff* with this model. That was one of the real 
interesting aspects of it! Like for example this:

(SMSqueakMap default packageWithName: 'muO') owner email

I even have code somewhere that never got in which from the Changesorter 
can take a changeset, split it into multiple changesets based on 
PackageInfo boundaries, compose an email with all these sub changesets 
and then send it to all maintainers of affected packages.

And this was possible because with SM we have a full model all the way:

method->class->PI->SqueakMap package->maintainers/co-maintainers

I should really dig out that code again....

regards, Göran

More information about the Squeak-dev mailing list