[Fwd: RE: Paying for projects]

Ken Causey ken at kencausey.com
Fri Jun 29 22:58:43 UTC 2007

Here is the first of Jason's (JJ's) projects opened for bidding.  He
accidentally sent it to me directly yesterday and once he realized that
asked me to forward it to the list.  So here it is.


P.S. Be sure to reply to the list of Jason "J J
<azreal1977 at hotmail.com>" directly, not me.

-------- Forwarded Message --------
From: J J <azreal1977 at hotmail.com>
To: Ken Causey <ken at kencausey.com>
Subject: RE: Paying for projects
Date: Thu, 28 Jun 2007 21:10:19 +0000

Ok, since most of the responders want to do it this way, I will try it.
After all, it does save me the time of going and making a list and I'm
sure we're all sick of subscribing to new lists all the time.  :) And if
it does go bad I can still make it later on.

So for my first project:

I want undo on Change sets.  I'm not talking about the change sorter, or
any GUI.  I want the relevant Change set classes to know how to undo a
given set.  Any GUI work will (maybe) be another project later.

Now, the reason undo doesn't work now is because not everything that
happens is recorded.  If you make changes to methods it seems to work,
but class changes basically just say "Class was changed" in the change
sorter (and the undo explicitly says that these can't be undone).  So
what I am asking for here is that all this information be recorded in
some way.  If I make a change set, add some ivars and then say "undo"
then I want the ivars to be taken out and the class put back as it was.
Once we have this I don't think any special handling is needed for class
renames, because the change set will have one class going away and a new
one being created.  If you reverse that then you are back where you were
before the change.

And don't worry about the case of when a change set is made after the
one that gets the undo message.  I want the undo to simply undo (i.e.
revert to previous) all the changes in the set that receives the
message.  If that ends up blowing away 100 modifications to a method
that happens to be in the receiving change set, fine.  We'll worry about
that later.

Also, I know that object changes to the system don't get recorded, and
I'm not worried about that.  Think: things you would find in the
smalltalk browser.  Not: thinks you would find in the object inspector.
I.e. the closest we get to static information, classes and methods
(though if you think of something else, ask me :)

I don't want any cheesy hacks here like trying some kind of hidden image
save and then restore it on undo, or anything else.  I want a clean
solution.  I suggest a modification to the format of the changes file.
I remember a while back Time, I think it was, made some changes to the
changes file format to remove some limitations they had.  I would prefer
to build on this change, or if you think best then make a whole new
format.  The only thing that will be required is that we can parse the
old format still (at least enough to be able to convert it).

Now both of these line items may be complex enough to warrant their own
project each.  At this point, I'm assuming not and I'm expecting the
project to be $50 to $200 USD.  If I'm way off here, please tell me why
and how much you will do it for.  You can also suggest a smaller subset
of the request that you *would* do for this price range.  Any part of
the request is negotiable, but one of the parameters of who I pick will
be the person who gets the closest to what I want at a price I think, or
you convince me, is reasonable.

So, just to be clear, success in this project looks like this:

I apply the changes you give me (once we get started I will make a new
project on Squeaksource to put your code so I can load it from MC).
I go to the change sorter or some such method and create a new change
I make some changes to methods and classes, renaming, etc.
I save the image and shut down.
I restart the image, get a reference to the change set somehow and send
it an #undo message (or how ever it's done).
I verify the image is just as it was before the changes were made.

So, that is it.  Let the bidding begin! :)  Please send me personally
your bids/negotiations,  I don't want to spam everyone with that stuff.
I will announce it as soon as I have picked someone and we will work out
how we do this.  We will probably use rentacoder unless you have a
better suggest (just keep in mind I hate making new user ids and
passwords :).


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20070629/493027e3/attachment.pgp

More information about the Squeak-dev mailing list