On Wed, Mar 30, 2011, Tim Retz wrote:
My problem is that smalltalk is my first programing language, So I need to figure out how to break a problem down to something I can code out
Computer scientists are taught courses like "algorithms" and "data structures". Others like me end up skipping these, even though some courses are available in books or in open courseware, usually in Scheme or Java languages. But that is only part of what is needed to get going.
As a fellow newbie, I will offer three thoughts.
(1) I found my previous programming knowledge quite unhelpful.
(2) I found that digging into someone else's code to maintain it has vastly accelerated my learning. By maintain, I mean add or tweak a feature, or track down a bug (even if someone else beats me to the finish line.)
(3) Etoys is a much simpler language than Smalltalk, but building an Etoy is _real_ programming, while playful and fun even for an adult. Dragging, dropping and throwing away failed experiments taught me a lot about how to compose an application from objects. It also helped me to see why a method or Etoys script is rarely more than three lines. However I didn't need to worry about inheritance or classes, nor did I have to memorize Smalltalk's mouse clicks, shortcuts, menus and modifier keys, or navigate a vast and complex class library.
(I need to learn to "scratch-code" in a workspace).
Not necessarily. The workspace is where the system offers the least help. Browsers, inspectors and the debugger seem, to me, to offer better training wheels or water wings.