[V3dot10] needed tool

Keith Hodges keith_hodges at yahoo.co.uk
Mon Jan 22 00:51:43 UTC 2007

Branches, hmm

Every time you pick a fresh image and begin working on a pet project you 
are infact branching. The single stream model is not actually in sync 
with the way that we actually work, and so requires special effort 
(mental and practical) to integrate all the branches into the main 
stream, not to mention the political stuff that surrounds getting ideas 
adopted in squeak.

We have X-hundred developers all working in separate branches, of these 
10 or so might be interested in projects related to the base squeak system.

By supporting the experimenters-branch in the build process itself, 
ensures that all the information needed for the integration of branches 
is available as early as possible. Making this public, brings improved 
communication, and the opportunity to fail faster and learn faster, the 
feedback loop is tightened.

As an example, I think 1) AutoStart needs a reimplementation because 
it's entangled with the Squeak browser plug in code, and waits for 
morphic to start before doing anything. This will need to be fixed for 
any minimal images (I guess) 2) "FileDirectory must die", a second major 
project which will take some doing, (I have a fantastic idea for a 
replacement!) 3) Anything to do with morphic.

Each of the above, if I were working on them, I would do in a separate 
image, because each has the potential to make the system fragile. For 
example, you could break AutoStart in such a way as to be unable to 
start an image at all. Morphic can break the GUI very easily, and If you 
mess with File IO, then the sources, changes and other fundamental stuff 
can break easily.

So each of these is a branch.

If I remember the extreme programming ideals, write tests/behaviour 
specs first,  fail fast, iterate quickly, learn. Where can I best do 
this? Possibly in the release auto build and test system. It does not 
make sense to have to wait until my module is virtually ready for 
deployment before adopting the testing tools. Therefore if the testing 
tool environment supports branches up front then it supports all three 
of the projects.

I have just done a 13 hour washing up and preparing mussels shift... so 
am I talking any sense?


The all-new Yahoo! Mail goes wherever you go - free your email address from your Internet provider. http://uk.docs.yahoo.com/nowyoucan.html

More information about the V3dot10 mailing list