Brandon Werner

Cincom Smalltalk: Keeping the legacy alive, for now.

Smalltalk was originally developed at Xerox’s legendary Palo Alto Research Center (PARC) in 1972, but came in to it’s own in 1974 when ported to the Alto computer, and was used to build the first GUI. This would later set Steve Jobs ablaze with ambition for the Mac, launching the Personal Computer revolution. Smalltalk-80 was ported to many platforms and many of the pioneers of Smalltalk (Alan Kay and Dan Ingalls) moved over to Apple in the 1980s. Originally designed to be a language a child could use for the Dynabook, it later moved on to a more important role and was eventually released outside of PARC in 1980. Just like the Dynabook, the Alto, the GUI interface and the other technologies PARC invented, Xerox fumbled the ball in releasing these technologies to the public leaving it for others to fill the gap. I sure hope the executives and board members of Xerox in the 1970s and 1980s aren’t collecting any pension, they don’t deserve any.

Although Squeak, which comes from Alan Kay and Dan Ingalls themselves, has taken a lot of the publicity away from the Xerox VisualWorks (a version of SmallTalk released in 1990), the actual VisualWorks and ObjectStudio was bought from Xerox in 1999 by Cincinnati based Cincom and has also been heavily expanded and developed. Cincom has tried to make Smalltalk a major force in application development.

If you visit their website, you’ll find an active community, conferences and seminars (Smalltalk Solutions Conference looks cool), and even a Smalltalk Digest. Their Smalltalk products are available for free for non-commercial use, and can be downloaded here. Amazingly, there are versions of Windows, Mac OSX, Linux, Solaris and other unixes (ObjectView is Windows only, tsk tsk). In fact, the complete system that Cincom has deployed around SmallTalk is breath-taking in it’s completeness.

It includes such 21st century enterprise features like:

  • VisualWorks Application Server - with it’s own servlet container and JSP or ASP tags and tag libraries
  • Store - Not the best named feature, it’s a complete code management and control application
  • VisualWorks itself - with code refactoring and other goodies
  • Opentalk - Webservice interoperability with SOAP and UDDI
  • Strong Database Integration - table to object integration for all major databases (except MySQL.. a big hole). Hibernate like and powerful.
  • Object Engine/Virtual Machine - What it says, a powerful VM that allows for neat immutability that allows for object sharing across VMs as well as better garbage collection algorithms.

Needless to say when I first downloaded it from Cincom’s website after playing with Squeak a great deal, I had no idea I was downloading what amounted to a complete J2EE-like application environment. I didn’t even know it existed. There is a lot to play with, and I’m impressed Cincom has done so much work on the SmallTalk platform.

I highlight this product not only because Smalltalk is a great language and has a nice following (especially with the explosion of Ruby, which uses much of Smalltalk as it’s inspiration) but because I wanted to highlight on this blog what a company like Cincom in Cincinnati is doing. Admittedly, Cincom, even in Cincinnati, has a low profile vs. other large companies headquartered in Cincinnati (Convergys, Kroger, 5/3rd Bank, ect.) , and in an industry where if you’re not where the action is you’re not noticed, this company deserves some more respect for it’s work.

What is the future of Smalltalk?

It’s hard to predict where the product will be going in the future however, especially with Ruby gaining so much momentum. In fact, as oddly highlighted by Cincom’s Smalltalk Digest itself, a Smalltalk User Group in Omaha, Nebraska recently decided to merge with the Ruby Users Group. This is probably a good indication of where Smalltalk programmers will be going in the future, and it might make Cincom’s Smalltalk an even harder sell to the young hacker evangelists that a language needs to rise above the fray.

It’s obvious when Cincom grabbed Smalltalk from Xerox in 1999, it assumed it could be a Java-like alternative to Sun Microsystems in the enterprise space. After all, J2EE was just starting, Microsoft had DCOM and ActiveX and it was anyone’s game at the time. Looking at what happened later, it’s hard to say why Smalltalk didn’t emerge as a good competitor. It could be that other people during the critical 1999 - 2002 timeframe could have more input on the quality of the Smalltalk from Cincom during this time, but I hate to think it was simply because of their location and their budget vs. Sun Microsystems. Remember, IBM wasn’t as Java-centric as they are now in 1999 either. Few people know this, but IBM VisualAge was actually an IBM Smalltalk IDE environment. It was only when they extended it to also be a Java IDE and attached the word Java at the end in 2000 that IBM VisualAge for Java gained visibility with Java developers. Interestingly, people were attracted to VisualAge for Java because of it’s flexibility and power (like Scratch Pad and UML reverse engineering) which were pretty new for the time. However, this flexibility that made it and IBM’s Java famous came from Smalltalk, not from Java.

So, it was a pretty even game. Why did Cincom Smalltalk not emerge with more of a following in the enterprise space?

Now, however, the battle might be over for both Java and Cincom Smalltalk as people move to platforms and frameworks that are more light-weight and open source. Certainly, Java will always be a force in the enterprise market for years to come simply because it is in the back offices of so many companies now, but the evangelist are moving on.

Regardless, I’m proud of Cincom for keeping a language with such an amazing history alive, and extending it in a way that other old legends like Lisp, Fortran and Pascal can only dream of. Whatever their plans are for the platform, I’ll be sure to bring them up more when discussing fun things developers can learn and be productive in.

4 Responses to “Cincom Smalltalk: Keeping the legacy alive, for now.”

  1. Bonnie MacBird Says:

    The sketch you show in this article is by Alan Kay and is his early vision for the “dynabook”.

  2. Patrik Says:

    Hi there,
    Well the major problem is that people do not know about any Smalltalk. If I hadn’t taken a class at my university I would never discover such fun & great language. The point is if you don’t have seminars, lectures at universities, materials all over the bookstors….etc. you can’t have large base.

  3. hiren Says:

    patric i think smart people will find smalltalk alaways regardless of publicity, and let idiots play with other big names.and what happen if anyone have large base , most people in large base r just for making money thy even don’t understand philosophy behind language/platform.

  4. Messi Says:

    Well, I really like SmallTalk, and although I’m mostly developing Java at the moment, I’ll sure give Cincoms VW a try (having used VA ST and a bit of Squeak). However, mainly wanted to “correct” that Pascal, in the last years, probably has and had a _much_ wider audience than SmallTalk and also having a complete “JEE-like” (who wants _that_, tell me? ;-) environment with Borland Delphi (note: I don’t like Pascal and neither Delphi at all…)

    regards,

    Messi

Leave a Reply