On May 4, 2006, at 5:49 PM, Shawn MacIntyre wrote:

I am a little uncertain about the best practices when dealing with a system that lives in an image. I have been experimenting with packages on squeakmap and exploring the base 3.8 image I downloaded. I seem to manage to break it beyond my ability repair it with some ease ;-) I now have about 20 somewhat functioning images. :)

The usual way I break one is by loading in a library from squeakmap that runs into a problem.  Saving your image is a checkpoint, remember to save after every major modification.  I also export my current project in Monticello regularly so I can load it into a new image if necessary.

My next step was augmenting the base 3.8 with packages that I have found that work together and that I like: such as Seaside and the shout workspace. I am now using this a my base for my experimentation. Is this the normal process?

Yes, most people will build a seed image to use as the base for most projects.  I personally immediately get rid of all the windows, the flaps, and the mouse, load up shout, and squeakmap, and then save that.

Basically, I have lived all my life with files, how should I understand the workflow with images? Could you describe your standard workflow while developing under squeak?

I get an image - pull in all the libraries I need.  Save it.  Start developing.  As soon as I have a few classes in a package, create a monticello project and start saving versions.  When I hit a good checkpoint I export a new Monticello version and often do a "save as new version" of my image.

How can I rollback package adds from Squeakmap or loading new versions with Monticello? Or is this always a risk process since anything in the system can be modified a package or a change set? That would be fine if it was the case; I would just have to modify my practices then.

I generally save just before trying to load something.  If the load fails, I just quit and relaunch.

What about versions of the image. From lurking around I see some people using 3.7 and some using 3.8. Now with the beta of 3.9 (which looks very pretty)  out ... is there any recommend image version to use? I have been using 3.8 because it seems to be the "official" version. What do most squeak developers do in this situation? Is it okay to run a different version of the VM from the image? It seems to work for me.

Generally VMs track image versions - but not that closely.  Seaside people are using base images based on 3.7 mostly.  They work fine with the 3.8 and 3.9 VMs.  Image format changes become incompatible when major versions flip.  I would not expect a 4.0 VM to run a 3.x image.

Finally, let talk browsers. I have been using the standard browser but I have seen the Star browser and heard of the re-factoring browser. For a new user working on building an app with Seaside, is there a recommended browser?

I usually use the vanilla browser but you should play around and see which one you like.  I really liked the whisker browser for awhile but its not included by default and I got tired of loading it all the time.

-Todd Blanchard