GNU Smalltalk Koans
skim.la
skim.la
This reminded me of a tool that my college professor created many years ago called The World of the Actors [1]. He used in his class to teach Smalltalk and OOP.
I can't seem to be able to find the source, though.
[1] https://pdfs.semanticscholar.org/4fb7/5b3cb8ef7adb36c0871931...
The icon sometimes doesn't appear in the address bar though (apparently because Firefox is unable to identify where the text content is in the page.)
I've also found the extension - Open in Reader View [1] to be useful for those situations.
[1] http://firefox.add0n.com/reader-view.html - Firefox, Chrome and Opera
https://chrome.google.com/webstore/detail/high-contrast/djcf...
I looked great to me - perfect and very readable. But I didn't consider the older eye, or other eyes, which don't let in as much light.
Hopefully the author will learn and adjust. Contrast is good.
A lesson for the designers among us: almost no-one is viewing your site on your 5k iMac screen. Design accordingly
But I don't think the colours them selves are absolutely unusable together, I think the combination of the colours and the font weight/size is really the issue (although that could be less the case on a retina screen).
It also doesn't help that I'm viewing it on a older monitor with poor colour control (particularly with contrast).
Function points are a pretty useless metric anyway.
Citation needed. Why would it "score very low compared to today's languages"? At best "today's languages" caught up with some things Smalltalk offered, but they still don't have the base model so succint and flexible, so it's just piles of sugar on top of algol.
I should probably do the "profStef" tutorial.
GNU Smalltalk has a default environment: Emacs. Online documentation is available. A REPL is available. Is it better? Depends on what the metric is. For me, it is because I only have to learn one thing: the Smalltalk language. I don't have to learn a new workflow right away. I can continue to use org-mode and babel and literate programming. I don't have to use a mouse. I can tile my windows. I can treat Smalltalk like just another programming language and switch between it and Lisp and Python and Ruby and Javascript and HTML and Bash all without a context switch at the editor level...e.g. I can change buffers and update a Smalltalk git repository with the same mechanism I use to update a Python repository. Sure, it is a tradeoff. And if I was working in a different environment, all the features of the Smalltalk IDE might easily be worth the compromises in exchange for their advantages.
Unfortunately, the lack of support for modern web APIs (starting from SSL) makes it a dead end for serious applications. But it is still useful to teach OOP in my opinion, the metaclass model strikes the right balance between simplicity and power; the only improvement to it might be traits, which in fact were first prototyped in Smalltalk.
Part of what made a sustained attempt at learning Smalltalk difficult for me was that traditional Smalltalk IDE's did not allow me to approach Smalltalk as just another programming language living in the same Turing tarpit as Awk or Perl or Python. Smalltalk IDE's make a set of design decisions that embody a particular philosophy regarding the "best way to use a computer" rather than "here is another way to use a computer." They are not the best way for me to use one.