4 ms·
As I understand the story from old Smalltalkers, the Smalltalk vendors shot themselves in the foot and then the head. They had exorbitant licensing schemes wher
by gruseom 15y ago
As I understand the story from old Smalltalkers, the Smalltalk vendors shot themselves in the foot and then the head. They had exorbitant licensing schemes where Java was free, didn't make it easy for programmers to try Smalltalk out, and had a supercilious "we're the best, bow before us" attitude that extended into the technology itself, making interop harder than it needed to be and so on. The same attitude caused them to look down their noses at Java and C++ – after all, Smalltalk was obviously better – until it was too late.
Given how much better Smalltalk was than Java and how much of a head start it had, it should have won. That it didn't is either a tragedy or a comedy.
Edit: Part of the issue was generational. Smalltalk predates open-source. So do APL and Lisp. The way people thought about commercial software before open-source was totally different. For example, it wasn't uncommon for vendors to demand a percentage of their users' revenue, something that seems absurd today. So these technologically advanced – still in many ways superior – languages were trapped for historical reasons in an obsolete economics.
- javajosh 15y agoThis kind of begs the question: now that we know all this, why aren't these technologies being resurrected and offered again with better economics? (The only reason I can think of is that the IP is still being controlled by those who remain to this day, blind.)
- gruseom 15y agoWe don't know all this. (See my other comment in the thread for a lengthier attempt at explaining.)
- javajosh 15y agoDo you mean http://news.ycombinator.com/item?id=3900047 http://news.ycombinator.com/item?id=3900047 ? I actually disagree strongly with you there. Hackers are eager to find things that work better, regardless of their source. One example that springs to mind is the use, in 3D graphics programs, of an archaic math construct called the 'quaternion'. The quaternion was the loser in a long-ago war with 'vectors', but this did not stop hackers from using the idea with the most value. Another more ready example (as evinced by the frequent posts on HN about it) is Emacs. It's an old editor. And yet it still has it's adherents, and new converts. But I hear nothing about people making anything in smalltalk environments. Nothing. Not even toys. One would think that if the language/environment was so powerful and the software freely available, that we would have seen something built on it. Heck, erlang is pretty esoteric (especially to those who don't hang out around here) but someone built CouchDB on erlang (and then abandoned it, but that's another story :). In summary, I think there might be something wrong with Smalltalk that has nothing to do with economics.
- fractallyte 15y agoThen you're obviously not paying attention: http://seaside.st/ http://seaside.st/ http://www.cmsbox.com/en/cms http://www.cmsbox.com/en/cms http://www.languageoflanguages.org/ http://www.languageoflanguages.org/ http://scg.unibe.ch/research/helvetia http://scg.unibe.ch/research/helvetia http://www.hpi.uni-potsdam.de/hirschfeld/projects/index.html http://www.hpi.uni-potsdam.de/hirschfeld/projects/index.html
- batista 15y agoNo, THEY are obviously not producing something that gets enough publicity. Compared with CouchDB (which is not even that famous itself) all those are marginal at best, with the possible exception of Seaside, and then again that's a framework. Where's the famous site built with it, like, say, Facebook was built in PHP and Twitter in Ruby/Rails(Scala), etc?
- javajosh 15y agoYou must not have understood my intention: Where are the applications that people use that were written in modern, free Smalltalk?
- fractallyte 15y agoSmalltalk was marginalized by its image-based nature. It's an operating system as much as it is a language, so packaging up a native application to run 'outside' the image requires various widget libraries and runtime structures that haven't yet matured in the free Smalltalks. You'd have to look for enterprisey applications written with Cincom's VisualWorks, or Inception's VA Smalltalk. The web is where it currently excels. Hence the prominence of Seaside, and similar frameworks.
- javajosh 15y ago>Smalltalk was marginalized by its image-based nature. Well there you have it: a non-economic reason it failed.
- chc 15y agoSmalltalk and Lisp are offered for free these days, but the newer languages have largely taken their steam away, and a lot of the ancient quirks of the languages seem even quirkier nowadays (e.g. Smalltalk's image-based development is just too weird for most people). A few examples: --------- Smalltalk --------- Squeak: http://www.squeak.org/ http://www.squeak.org/ Pharo: http://www.pharo-project.org/ http://www.pharo-project.org/ Amber: http://amber-lang.net/ http://amber-lang.net/ ---- Lisp ---- Racket: http://racket-lang.org/ http://racket-lang.org/ Clisp: http://www.clisp.org/ http://www.clisp.org/ SBCL: http://www.sbcl.org/ http://www.sbcl.org/ Clojure: http://clojure.org/ http://clojure.org/
- npsimons 15y agoa lot of the ancient quirks of the languages seem even quirkier nowadays (e.g. Smalltalk's image-based development is just too weird for most people). I have to say, as someone who primarily does C++ in Linux/Windows, Smalltalk and Lisp may not "fit in" enough for people to get over their hurdles. Just as an example, I've dabbled in Smalltalk and Lisp, but it always seemed kind of awkward how (at least Smalltalk) was in its own little cocoon (the images you mentioned) that you couldn't version control and didn't integrate well with pre-existing editors (eg, emacs). OTOH, the other day I was tasked with getting a Java program working; I've also dabbled in Java, but getting the program working and sorting things out (classpath, etc) wasn't that hard. Thankfully I had the source, and I could grep it, open it in vi, see that some paths were partially hardcoded and that whoever wrote it was using eclipse and didn't understand portable path separators, etc. In the end, it took me a couple hours, whereas I'm sure the same thing in Smalltalk or Lisp probably would have taken all day. It's good to try radical new directions, but there is something to be said for at least having some hooks to fit into pre-existing environments; in particular being able to use libs from other languages (eg C => Python, Java => Scala, Clojure, etc) and working with entrenched DE's (including VCS's).
- gruseom 15y agoLet's call this the familiarity theory of value.