Let Smalltalk Tell You
Heres another guideline that is very easy to forget, but very important. The
general notion is that Smalltalk is very good at incrementally changing things,
breakpointing, and checking values. Instead of wasting time thinking about what to do, or
theorizing about what went wrong, just ask Smalltalk. Here are some examples:
- To work out some new capability, inspect an object, browse the class if you need to,
then send the object messages, building the code you need right in the Inspector
workspace. Then copy the code to an appropriate method.
- When working on a new feature, dont implement all the necessary methods on all the
objects you use. Instead, wait for the walkback for a method you havent defined.
Then go to the browser, implement the method, and proceed from the walkback. (Kent calls
this "just-in-time programming".) Smalltalk is keeping track of the order in
which you need to do things.
- When the system breaks, dont theorize: put in a breakpoint and step through the
code until you see what is wrong. Youll find the answer much faster.
This next one is a little harder. Sometimes someone else will see this before you do.
- Be sensitive to how things feel as you work. If you are slowing down, or something seems
to be hard to do, or the methods are getting longer and uglier, Smalltalk is trying to
tell you that you are doing the wrong thing. Remember the old joke about "Doctor, it
hurts when I do this." "Then dont do that."
Smalltalk is telling you to take a break. Get up and walk around. Go get some coffee, with
someone else. Let them tell you what they're doing. Take some kind of a mental break.
You know that thing where you're trying to think of something and you can't remember it,
and as soon as you start doing something else, you remember? Let that happen. Smalltalk is
telling you to take a break. Take a break.
© 1997, 1998, Ronald E
Jeffries
ronjeffries@acm.org
http://www.xprogramming.com