Independent projects in squeakville (or: the end of SqC's evil tyranny ;-)

danielv at netvision.net.il danielv at netvision.net.il
Sat Jun 3 17:52:27 UTC 2000


No, NO, STOP! there's a smiley! I'm kidding! please take this post as
it's meant - tongue in cheek and totally serious, no insult intended at
all. If you're short on time and know why we need independent projects,
skip to the last two paragraphs.

Squeakville is a software community of the benevolent oligarchy family,
with ample human rights and a working public podium. And nevertheless,
life is not all rosy for the citizens of squeakville (at least in the
humble opinion of this particular specimen).

The fact is, that maintaining a public project outside the bounds of SqC
is not easy. When you announce a project, you must convince people to
wrestle with your attached or web-posted changesets. It's never clear if
the second changeset you send, fixing a bug, is incremental or replaces
your original post. And if the project has multiple participants? don't
even ask.

And on top of it all, when the new, the great, the
non-backwards-compatible 3.0 comes out, you just know it'll all go to
the great bitbin in the sky. Unless - unless your project is good, and
nice, and oh, so, very compatible, for if all that is true, and you are
most lucky, well then, then I say- you might just have your project
integrated into the base image...

And that's the jackpot. That's like getting tenure. It's like, a
government pension. Your name (and your code) will be struck into one of
the most persistent rocks of bits known to man. Though fame too has it's
price - every update you send must fit the same criteria.

Just imagine the lives of the fortunate (and virtuous and deserving, to
whom we all owe a lot) few inhabitants of SqC - Create a new project?
add a class category. Make it public? send a changeset to DanI. Updates?
mail another changeset to DanI. Someone else sends an update? well, they
can see what the official version is, they can easily be compatible, and
if not, the offical update will be. Every change is gladly trouble-shot
by cadres of dedicated test-pilots, glad to press 'update code from
server' and be effortlessly endowed with the best and latest. 

So what the hell's my point? Why am I whining as if we didn't have some
of the simplest, most powerful code-export facilities known? As if sma
didn't already get most of our (worthy) updates into the base image?
Will I spare no bits in belabouring the annoyingly obvious?

Well, dear friends, my point is - we can do better. What we need is
independent projects. We need multiple, trivially createable, user
choosable, update streams. and the good news is - we have almost
everything we need to do it! We have a mailing list, where people
announce projects. The code sent to it is already meticulously gathered
by Bert's wonderful SqFixes server. We can already send changesets
directly from Squeak to the mailing list with a couple of button presses
(those using Celeste can, anyway). All we need is to generalize the
updates engine a bit, and give it a pretty face, modify SqFixes or
something like it to also act like an updates server, and we're
practically done!

This means that with under 10 pages of code (hmm, on further inspection,
probably under 3), we can have a world where you get the newest clean
image, get the SqC updates, open a net-based project browser, select the
ones you're interested in, and choose 'get updates for projects', and
you're done. Naturally, project updates that are accepted into the
official image will be skipped, having been d/led already. You want to
contribute to a live project? just send a mail titled "[UPD][Celeste]
ludcrious-speed message scrolling", with your changeset enclosed. 

That's the good life :-)

Comments, flames, ideas, working tested code?
Anybody?

Bert, where's the code for the MailArchiveAction?

Daniel





More information about the Squeak-dev mailing list