Hacker News new | ask | show | jobs
by armagon 2338 days ago
"The future is already here – it's just not evenly distributed." - William Gibson

I did some work in Smalltalk (working on a mod of Scratch 1.4, which was written in Squeak Smalltalk from the turn of the century). Once you got used to it, it was amazing. The environment is lively, and you can debug into everything.

The tech is great; it is just that the community of people who know it is relatively small. If you wanted to develop an open-source project in it, you may have a harder time finding other developers to help.

On the other hand, if you wanted to make a cross-platform desktop application that doesn't look native (which, given the prevalence of Electron, doesn't seem to matter too much to people), this would be an excellent choice.

I wish I could do more development with Pharo. I also think the web framework Seaside would be fun to work with. http://seaside.st/

We just need to go back in time to twenty years or so and take a different fork ...

3 comments

> On the other hand, if you wanted to make a cross-platform desktop application that doesn't look native (which, given the prevalence of Electron, doesn't seem to matter too much to people), this would be an excellent choice.

Yeah, as if people are going to install a whole virtual machine to run a chat application...

Wait...

> Yeah, as if people are going to install a whole virtual machine to run a chat application...

You can install an application that launches the VM with the desired image and the user will never know the app is running inside a Smalltalk VM.

i think they were being sarcastic, because slack is JavaScript in a VM (Electron) to run a chat application.
Yep, it still amazes me how a lot of the criticisms of Smalltalk have been become the new, cool solution. Smalltalk on Electron would be an interesting answer.
That'd be funny.

I'm sure you could do it with https://www.amber-lang.net/ ;-)

I have a short anecdote about Amber, which may or may not be widely known.

Amber.js was the original name of Ember.js (so named after the style of beer one of its creators was drinking when they were searching for a name; if memory serves it was also the result of pulling bits and pieces out of SproutCore.js). When it came time to release the project, the authors of A/Ember were notified that they were encroaching on the name of a pre-existing project and changed it.

what bewildered me at the time was that they never did a google search for it before publicizing their chosen name. Or that maybe they did and said "screw it. who cares about smalltalk. we'll steal their name"
> if you wanted to make a cross-platform desktop application that doesn't look native

I'll just mention that the announcement (which is now down) and the readme mentions spec2:

> Spec 2 (preview) - UI building framework with multiple backends

The announcement (main hn link) mentioned spec2 and native look together.

I also thoroughly enjoy Seaside. There's also https://iliadproject.github.io/ for another approach.
Iliad says Latest commit 0be1977 on Jul 18, 2017. Seaside says last commit 24 August 2019. Any actively maintained web framework that will work with Pharo 8?
That is considered active. The Smalltalk community is far smaller than other languages and web development is a small subset of that community. So you won't see nearly the frequency of commits of projects. Also, the major web frameworks are pretty stable these days so most of the action is in the integration of support for various client-side Javascript libraries. Those are often published as separate projects.
keep in mind that smalltalk is freaking ancient and like most useful but freaking ancient things in unix, most of the stuff "just works" and doesn't need constant poking.

Also, Smalltalk offers a much more transparent development environment. So, you're not writing code that goes into a black box and produces results. You can see what's going on in the box and make sure its doing it correctly.

also, the Squeak by example book (i think Pharo by example is a fork of this) very quickly starts showing people how to write tests. So the mentality isn't "oh, yeah, i guess i could add tests" it's "oh hey, tests are part of making smalltalk code" so you've got that going for it too.

combine those things with the smaller community, and thus a much more narrowly defined set of "needs" for a web framework and yeah, it doesn't get poked constantly.

but that's ok.

The mailing list seems active. I think maybe development actually takes place in one of the older version control methods for Pharo.