On Dec 16, 2008, at 7:38 AM, Ryan Zerby wrote:
I'm in a position where I want to learn Squeak/Smalltalk because it's cool, but I find myself thinking that I should spend my time working on something that might actually advance my career. I used to be a Java Programmer, but am now a Build Engineer, so I don't directly program anymore. I feel that I should be keeping my Java skills up... but that just isn't as spiffy
Anyone else in this boat? Is there a Squeak Support Group? A 12 step program? Anyone have a good rationale why I can go ahead and spend my time on Squeak without feeling guilty? :) :)
I'm in that boat. I'm a full-time developer working mainly in Java. I've been learning Smalltalk for about six months now. It's definitely my favorite OO language. The number of available Smalltalk jobs doesn't help my motivation. I'd like to help promote the use of Smalltalk and will probably give some presentations on it in 2009.
There is a new book on Smalltalk (or is it just on Seaside?) coming out next year by Randal Schwartz. Maybe that will broaden the interest in Smalltalk.
There are some rough edges for me that make it difficult to convince others to give Smalltalk a try. The biggest issues I see are:
1) difficulty of creating GUI applications
I've found Morphic difficult to learn and lacking in widget layout capabilities. Deploying GUI applications to be double-clickable and run in a way that the user isn't aware that they are running in a Smalltalk environment is perhaps a 10 step process that is very complicated. I don't believe there is a mature GUI library for creating applications with a native look and feel.
2) difficulty in integrating with the outside world
Smalltalk can seem like an island that doesn't want to play well with other programming languages and the OS environment. For example, I can't easily invoke existing Java code or run headless to do script- like things. I know other people are successful in running Squeak headless, but I haven't been able to get it to work.
3) lack of standards conformance
It seems that the popular Smalltalk environments all deviate from the ANSI standard in various ways. For example, there are many Squeak extensions that aren't supported in other Smalltalks.
4) lack of agreement on direction
This is very apparent in the recent email threads. It's unsettling for newbies. Nobody wants to invest a large amount of time learning about something that seems to be fracturing before their eyes.
All that said, I LOVE Smalltalk syntax and development environments! I want it to succeed, but I think the issues above need to be addressed in order for that to happen. I'm biding my time now by learning Clojure, a functional programming language that is radically different from Java and Smalltalk. I plan to return to investigating Smalltalk in about five months.
--- Mark Volkmann