Hi Rick,
Change sets and changes file will save you no matter how you crash your image. Saving your image after development is dangerous, I don’t recommend it. What I do is make a change set. I’ll develop and then when I’m ready to start testing I’ll file it out. I’ll do some testing blow up develop more. If I forget to file out the change set the changes file is your friend. World menu -> changes… -> recently logged changes … will give you a nice list of the last things you did. It’s quite easy to filter out stuff and get a nice list of changes, and file them in. It is very hard to lose code. When you get to a good point and want to save your state always start from your last saved image. Load your change set, save your changes to Monticello, or your own favorite repo. Exit, load your changes from your repo, clean your image and save. Now your recently logged changes will have another nice clean entry. Rinse and repeat. Hope that helps. All the best, Ron Teitelbaum Head Of Engineering 3d Immersive Collaboration Consulting [email protected] Follow Me On Twitter: @RonTeitelbaum <https://twitter.com/RonTeitelbaum> www.3dicc.com <http://www.3dicc.com/> https://www.google.com/+3dicc From: Pharo-dev [mailto:[email protected]] On Behalf Of Rick Kitts Sent: Monday, May 19, 2014 10:41 PM To: Pharo Development List Subject: [Pharo-dev] Advice for a newb Hello. I was wondering if anyone could point me to or otherwise suggest some best practices for working on Kernel code. I’m futzing about with the Duration class (in the interest of fixing 13215) and have discovered that it’s really easy to crash Pharo if I break that class. I assume there are other classes that would exhibit the same behavior. I suppose I could just be really cautious and save my image after every change but that seems so error prone that I’m hoping that there are idiomatic ways of working on kernel code (beyond just save ones image early and often) so I don’t lose work. I’m asking because the naive solution (copy the original class, modify it to suit, delete the original and rename the new class to the original) of course doesn’t work. TIA for any suggestions or assistance and apologies in advance if this is RTFM, I didn’t see anything (didn’t look very hard either though). —Rick
