Spreading Smalltalk

Volker Nitsch nitsch-lists at netcologne.de
Tue Apr 16 20:24:52 UTC 2002


goran.hultgren at bluefish.se wrote:
> I haven't followed the thread, but I can always dump a few thoughts...
> Beware, braindump starts here.
> 
> David Salamon <david at myth.sdsu.edu> wrote:
> > On 4/15/02 3:08 PM, "Bryant PW (Philip)" <PWBryant at equiva.com> wrote:
> > > Lol.  I recall that Smalltalk needs women thread.  (For those of you that are
> > > out of it lol stands for laugh out loud.)
> > > 
> > > Let me ask this:  How did it come to happen that nearly every Computer Science
> > > major is now required to take java programming?  How could we get more
> > > Smalltalk in universities?
> > > 

"serious" means static typing? 
starting with static and relaxing to dynamic works, but the other way
around? ;)

> > > Secondly, what do the young kids do?  What are they interested in?  Take a
> > > look at ezboard.com.  Hello?  THE INTERNET??  Wake up and smell the java, it's
> 
> That's funny. Ezboard is written in Smalltalk I think. :-)
> 
> > > everywhere.  And if you need some pre-built piece of functionality, a couple
> > > of searches will turn up some open source java, perl, or php code that does
> > > nearly what you want.  Not much going on in Smalltalk.
> > 
> > Much of the java/php/pearl on the internet can be taken and run with out any
> > programming knowledge experience, the interest they make comes from bulk
> > quantities. Because Smalltalk application are the minority, that I think
> > incorporation of Smalltalk based scripting at its core, to familiarize its
> > usurers with Smalltalk, is essential.
> > 
> > (I'm thinking similar to Squeak's Celeste email client, where single input
> > blocks of code used to filter email).
> > 

filters!
i would start with authoring tools instead of server stuff.
manage stuff visually, with browsers, file/ftp-explorers and filters and
that,
instead of clever full automatic scripting stuff.
"give me my ftp-upload-files" looking at it, checking. "hmm" change
something.
" ok, upload it".
something like a file-system-image.

> > Just a thought,
> >     David Salamon
> > [I wanted the Squeaklist's thoughts on this as well, so please forgive the
> > duplicate email if you're on both].
> 
> The question about why Smalltalk is not more popular has a few historic
> reasons I think:
> 
> 1. There where no free or cheap Smalltalks around for a long time. A
> shame. That is probably where the ball was dropped.

wasn't java a re-implementation of smalltalk at no license-costs first?
;)

> 2. The "development model" is different. People need to learn a few
> things before they understand the image-concept etc. If we could let
> users write simple scripts in textfiles and run with it like
> perl/python/ruby etc. it would probably help them "get into it", and
> then they would eventually fire up an image and learn more. Smallscript
> does that now, but hey - proprietary, non x-platform etc. Not really a
> mass contender IMHO. There where ideas in the Squeak community along
> these lines - and you can actually already do it even if startup time is
> slow...
> 3. Squeak (being the largest "free" Smalltalk) suffers from poor
> documentation. Compared to Python/Ruby it seems very disorganized. In
> reality the code is probably just fine, but good reference documentation
> etc. has been lacking. I think we can do better.
> 4. Even though the syntax is great (I do NOT argue for changing it) it
> might "scare off" newbies initially. On the other hand - a good tutorial
> can teach the syntax in about 3 minutes so I don't really think it's a
> problem. Might be just a myth.
> 

Was no myth when i started with coding.
I tried some bank-account and morphic tutorials,
but after that - . syntax? array-access? showing something?
i had someone seen working. but was myself like no hands.
dropped it. shrugg. played aimless a bit with the gui before deleting -

Was a Myth after i played with scripting-tiles & car
and thought "cute!". Then klicking "text", some smalltalk-code.
thats smalltalks "if", aha..
I had something which was immediate "usable".
Fun started :)
Btw the text-relation is nicely improved in 3.2 :)

> Of course there are a number of other reasons Smalltalk isn't so
> widespread, it doesn't matter. The question is what to do about it.
> Personally I think these things are good to do:
> 
> 1. Polish the webpresence for Squeak. The website doesn't look so
> "cool". This takes time and dedication...
> 2. Produce good reference docs by integrating some form of documentation
> tools in the environment. Otherwise it will always be out of synch. This
> isn't that hard to do - there are already numerous tools for producing
> HTML docs (Dandelion etc). The docs should of course be accessible
> inside Squeak and not just as HTML - that is more of a poorman's
> solution that "needs to be there" so that people can browse around and
> take an interest.
> 3. Add more examples (and perhaps functionality) on simple Smalltalk
> scripting. There are numerous very good webframeworks available for/in
> Squeak and they should be able to attract people. Perhaps killerapps
> such as them should be presented more agressively on www.squeak.org.
> 
> Enough rambling, Göran
> 
> PS. It's funny to see how the scripting languages get closer and closer
> to Smalltalk. Perl -> Python -> Ruby (which is practically a Smalltalk
> in disguise). Nice trend. DS

Hmm, iam a new-squeaker. 
one of my first impressions was:
easy to make notes.
workspace, various browsers in a project,
saveable with auto-history.
very helpfull for exploring.
Quick to make links, copy related name to workspaces
and browse them later.
 
Also, IMHO scripting has competition in wizardry.
means generate/edit source-code by gui/browers instead of
keeping sourcecode short/fast writable.

===So, how about squeak as a cross-plattform-ide?
(as new-suqeaker, I don't know if my suggestions are realistic.
knowing only the buzz-words yet ;)

Idea: Map files to browser-classes.
support import/index/export by language-based parsers
(would have functions to pick and store a method
from a sourcefile, relate classnames/categories, check for external
changes,
and support indexing. browser-ready by class and method...)
Would give me access to my usual source,
to have something to play. 
Changesets alone would make that usefull.

lets say java:

there are various projects like templates, compiler-compilers,
aspect-orientation, gui-bean-builders,
which are more or less filters.
if there where some toy-filters to play with written in smalltalk,
i would try it.

then, squeak could be great for testing:
slang could be used to access JNI,
doing all debugging in the same java-session.
lowers startup and compile-time, gives access to debugger-api, 
helps controlling tests from squeak.
(would teach me slang, hmm )
telnet-stuff can access the remote debugger, ftp for upload..
theres a java-to-smalltalk-compiler somewhere?
means i could have squeak hotfixing while fighting
these off-by-one-errors? i never get that right.. ;)

then, having used smalltalk-ide & filters successfull,
being used to it, there is bistro.
after that one can happy code squeak and show java.
"Nearly ready, the guy-part needs to be ported.
But, do you really need to run it on java?"
  

===docu-requests

Loong ago in the basic-times there was a series in scientific american
with little programming projects, also collected as books.
if these could be combined with squeak that would be a nice starter.
 
little wish: a browse which understands
 doSomethingWith: this and: that
instead of doSomethingWith:and: .
would speed up examining source. 
And browseable little examples instead of apis.
"I had seen a similar field and browsed a bit" seems to be the squeakish
way?

for docu-access: i liked scamper on tutorials and copy/paste.
i could save with the actual tutorial-position, shutdown, reboot,
continue :)
(but i discovered scamper-browser-copy is broken for multiple lines
on3.0). 
after i discovered how to use my proxy-server as cache.
for cross-platform inbuild cache? would also be nice to have updates as
files to there.
project-download by scamper would be nice.
and saving formatted text as html.
(another nice point for file-class-mapping, subject>>bookmark :).


===web-presense, some remarks

better bookmarkable layout:
to read "Getting Started with Squeak"-links i have to scroll.
prefer seperate page which i can bookmark and examine repeated,
even if page is very small.
same for the rest.

better help to get to downloads.
"offically" is 3.0 and 3.1alpha, while list uses 3.2gamma/3.3alpha.
searched some time to find 3.2gamma and vm, and nobody said
"take the debian-src, do some cd somewhere/unix/here and compile".
on suse 6.4, and no problems :)
well, the cd's could be made to little scripts in root-dir,
and notes about where to place images and that, 
and a hint "link to the 3.0 sources, rest is changeset, but.. ;)

heres talk about connectors and a new telnet-client,
and i had once a page which collected and searched the [goody]..
mails. lost it. where can i get that stuff best?

feedback where changesets work. i read about a news-reader for 2.4,
don't know if it works on 3.2. and tried connectors at bills, don't
file-in.

if there could be a list whats somehow nice by the gurus and
filed in and short commented ("file in worked in 2.4, 3.0, 3.2"; "have
read news with it in 3.2;..). 
does not need to be specially organized, if one could enter
changeset-file or url
and searched for remarks..

the bills swiki-pages have no plugin-links. 
and there is no project-download-cache inbuild.. 


best squeaks, Volker



More information about the Squeak-dev mailing list