How to improve Squeak

Avi Bryant avi at beta4.com
Tue Jul 13 02:17:43 UTC 2004


On Jul 12, 2004, at 11:11 AM, lex at cc.gatech.edu wrote:

> Now, my two cents on process is that this is a perfectly normal
> situation in a system that is supposed to have experimental stuff in 
> it.
>  We don't need any process; we just need someone who has some vision
> about the state of the whole image, to go through and if things like
> this.  That seems to be happening, so what's the problem?  If anything,
> my suggestion would be for individuals to start volunteering as 
> stewards
> of the image(s); I don't expect that we can have an excellent image 
> when
> every little change is made by committee.  And if multiple people step
> forward, that's great too; we'll have multiple images that are all 
> interesting.
                                                                    
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Yes, yes, yes.  That's exactly what I have in the back of my head when 
I talk about replacing the update stream with Monticello.  The problem 
with the update stream is that we're all using, effectively, "Doug's 
image" (there is, of course, a large process behind it; I don't mean to 
imply that we're subject to Doug's tyrannical whims).  But it would be 
great to be able to track, say, "Ned's image" instead.  These would 
probably share a lot of changesets, and advance more or less in step, 
but would likely have different criteria for which fixes and 
enhancements went into them.  And of course really what I'd be tracking 
is "Avi's image" (which I might as well make public - why not?), which 
*would* be subject to my tyrannical whims, but which would probably 
mostly just feed off of Doug/Ned/whoever else's images with some minor 
local tweaks.

Anyway, in theory this could be done with update streams, but I don't 
think it would scale very well.  For one thing, a crucial part of the 
process I'm describing is being able to steal changes you like from 
other people's streams.  It's easy enough to move a given changeset 
over to your stream, but it might depend on changes that were made 
earlier that you don't have, or conflict with changes that you've made 
locally, and so on.  It would also be tedious for a user to switch from 
image to image - migrating a "Doug image" to a "Ned image" would be 
nearly impossible.  You'd have to go back to a baseline release and 
start again with the new stream from there.

Monticello wouldn't make it *easy* to manage all of this, but it would 
certainly make it much more feasible.  This is exactly the kind of 
thing that its distributed repository and merging model was designed 
for.

Avi




More information about the Squeak-dev mailing list