Monday, July 20, 2009

Still Looking for the Swan in Squeak's Ugly Duckling

http://en.oreilly.com/oscon2009/public/schedule/detail/8158

So this is not exactly the tutorial I was expecting. But it's also quite possible my expectations were a little skewed.

Unfortunately Avi Bryant wasn't able to make the conference so Randal Schwartz stepped in. And no disrespect to Randal but if I had known this substitution had occurred, I would have picked a different tutorial simply because I had seen his presentation last year and was interested in a different perspective.

Partly I feel like I was expecting too much from this tutorial and part of me feels like I got something different than described.

When I read the description in the link above I don't get the sense of a remedial no-background talk. But like I said Randal took this over at the last minute for Avi so I have no complaints with him.

I think I focused a little too much on the last paragraph of the description whereas I should realize that that is what usually gets covered least at the end (or not at all):

"But we’ll also address the practical concerns that keep people away from Squeak: how to get rid of the pastel colors and bitmapped fonts so that you can stand to look at it; how to get your source code into version control so you can collaborate with others; how to find documentation and examples; how to integrate with the OS and with C libraries; how to manage deployment."

I am relatively comfortable with the ideas of smalltalk and reading it's code, just not completely sold on the language and environment. So what I was mostly looking for was the addressing of "practical concerns that keep people away from Squeak":

  • how to get rid of the pastel colors and bitmapped fonts so that you can stand to look at it;
    • just a mention that this is possible. I would have really liked a detailed course on how to customize the ugly duckling away

  • how to get your source code into version control so you can collaborate with others;
    • there was a pretty good description of version control and options for doing this

  • how to find documentation and examples;
    • this was well done and is a core part of the wonder of smalltalk

  • how to integrate with the OS and with C libraries;
    • I don't think there was any mention of this (unless I really zoned out)

  • how to manage deployment.
    • I don't recall anything like this


But really it was a well done tutorial, just not what I was expecting. But I think
this was just a combination of over ambitious expectations and last minute teacher changes.

Here is the smalltalk course I would love to have:

  • develop a real world useful app while I watch. e.g. take some unix sysadmin tasks and automate them and create a reporting system etc. ie, show me that squeak can kick python's ass at something where python excels
  • show me how to recover when my image crashes or I've accidentally broken things
  • show me how to customize my way from the default image to one of the premade developer images. then explain to me why these aren't already the defaults
  • show me how to convince my bosses that I should do a trial project in smalltalk. :)

1 comment:

Randal L. Schwartz said...

Thanks for your feedback...

Definitely, you can attribute part of the mismatch to the fact that I had to take over the class at the last minute, and Avi didn't give me any slides to work from, so I had to scavange from the slides I had already created for other presentations.

Also, I don't think Smalltalk is particularly suited for the kinds of things you listed. I still use Perl every day for scripting things, but I create all my new web apps in Smalltalk when I can, because I'm far more efficient at Smalltalk for webapps than I am with Perl for webapps, which should say a lot about how good Smalltalk really is for that application.