suitable for "real work"? If I learn SqueakSmalltalk
, is that enough to put Smalltalk on my resume? If I learn SqueakSmalltalk
, will I be able to easily adjust to whatever Smalltalk is used on projects like C3?
Has anybody ported SqueakSmalltalk
or done its GNU equivalent? For me, that's a prerequisite for using it for "real work". -- TomStambaugh
My understanding is that the language really is Smalltalk. So that should be good enough for a resume. (Though an employer might want a different version with a specialized library that isn't in Squeak.)
As I understand, the Squeak license is almost a FreeSoftware
one. The only problem was the fonts
inherited from the Apple days weren't free, and so there were restrictions on redistributing / altering them. Seems to be fixed in 3.7 -- PhilJones
Most companies need to assign blame. Blame on developers, blame on providers, etc. If you select Squeak instead of Microsoft C#, if the project gets delayed or cancelled, who can you blame?
Linux is the exception because IBM is backing it. If some big company decides to compete against Sun's Java and Microsoft C# they could choose to invest in Squeak, but before that happens, Squeak is a great tool for learning advanced concepts which are still not available in Java nor C#.
Agreed. However, there is probably a subset of companies that are willing to assume the risk of not having anyone to blame, in exchange for the chance at smaller time-to-market and larger payoff that comes with using a less mainstream but more powerful tool. For example, if I recall correctly, PaulGraham's Viaweb / YahooStores? system was developed using one of the open source CommonLisp implementations (perhaps CLISP?), as opposed to a language like Java or even a commercial Common Lisp. -- JosephDale
The problem is, with Smalltalk, it's not the language, it's the class library that matters. Smalltalk from the pure language point of view can't take more than a boring enough afternoon to learn. The basics should be similar in most implementations, but odds are good that:
- In real-life projects, you won't be using the very basics; and
- Your employer won't use Squeak, as it's aimed at multimedial applications, not business scenarios.
- It's aimed at whatever you point it at, seriously.
Also, there's quite a few people whose first Smalltalk implementation they've seen was Squeak in college, and got scared to death by it. I blame the instructors, putting too much focus on the MM bells and whistles instead of the more traditional functionality, and the fact Squeak suffers from CreepingFeaturitis
the likes I've yet to see surpassed, has many aspects of FritterWare?
(mainly due to the way Morphic is implemented), and at least I find it severely underdocumented (I don't consider a zillion and one hopelessly tangled wiki pages as proper documentation). Not a good combination.
If you're learning Smalltalk in your private time, I would suggest just plain going the big vendor way and downloading the Cincom version, which is free for personal non-profit use, which comes with, lemme guess, 1500+ pages of very good documentation, and that's just the PDF books in the download - the source code comments go a long way too. --DavidVallner?
Note to self: One day, when I become Mr. Big Smart Rich Developper with way too much time on his hands, go on about creating a proper open-source Smalltalk implementation with a GUI framework using native widgets where possible and the IDE decoupled from the base class library to make stand-alone applications deployable as a set of loose packages. With easy-to-use (automagical) C++/.NET integration. Oh, and while I'm at it, peace on Earth wouldn't hurt too...
[In the meantime, someone could possibly get on to extracting a SaneSubsetOfSqueak?
for "real work".] PharoSmalltalk is exactly that.
I disagree, if you want to learn Smalltalk, learn Squeak. For web application work, everything you need is already there, and the UI can be made quite attractive with little effort. It's free, has a great community, has great tools available for distributed source control and tons of other cool stuff, and doesn't want a percentage of your income like Cincom does. Squeak rocks.
I have written applications in Squeak during work hours, in my office, and been paid to do it. These were technology demonstrators, showing integration between a bunch of systems with some novel usability (for the the user community in question) features. I chose Smalltalk as the implementation platform for fast turnaround, using SeasideFramework for the web front-end, and I chose Squeak as the Smalltalk so that, in the vanishingly unlikely (since vanished :) case of the company picking up the Smalltalk app, productizing it and deploying it, the question of terrifying licence fees for the platform wouldn't even arise. --KeithBraithwaite