As for me, Smalltalk was both really simple and easy at the time I met it
many years ago. Maybe that's because I have been experiencing so many
problems on the "C++" way and have been looking for solutions… and
Smalltalk had them all.

But I have been teaching smalltalk for almost ten years by now, and I see
that for the most of students (I would say for 90 – 95% of them) Smalltalk
is not easy. I don't know why. I wonder why, actually. But that's how it is.

And those who don't understand, who don't "feel" Smalltalk always says
"it's too complex". You see, they confuse "it is complex" with "it is
hard". And I think I saw exactly the same thing in that Kilon Alios's
message. That's why I haven't manage not to answer :)

What I wanted to say is that Smalltalk is really simple: it is based on few
essential (and very human) ideas (there could be even fewer though), has a
minimalistic syntax (could have even less syntax though I think). Other
languages are much more complex. I don't know Python well, but I bet it's
much more complex than Smalltalk. But when you do complex things day by
day, for many years… they become easier. You just don't feel complexity
anymore. It's still there, and it still hinders… but you don't see that
anymore. And by now, any other, even much more simpler tool will be
uncomfortable, strange… and hard. I think that's why most students do not
embrace Smalltalk: it's different, it's unusual, it's strange… so I can
admit: it's not easy. But please do not say it's complex! :)

I believe these thoughts were inspired by some articles on "easy vs.
simple", "simple is objective while easy is subjective" etc. …They can be
easily googled if need be.


--

Best regards,


Dennis Schetinin


2014-06-19 21:01 GMT+04:00 Nicolas Cellier <
[email protected]>:

>
>
>
> 2014-06-19 16:44 GMT+02:00 Dennis Schetinin <[email protected]>:
>
> Simple ~= Easy.
>> Smalltalk is simple (simpler then most of other PLs), but it's not easy
>> (to understand and master, especially after other PLs).
>>
>>
>> Intersting...
> I'm certainly too biased after all these years of Smalltalk, but I would
> have thought the exact contrary...
> What exactly isn't easy in Smalltalk versus other PL?
> Is understanding and mastering C++, lisp, haskell, whatever, simpler than
> Smalltalk?
> Or do you only mean that difference between any two other languages is
> less than difference to Smalltalk?
>
>
>> --
>>
>> Best regards,
>>
>>
>> Dennis Schetinin
>>
>>
>> 2014-06-17 11:59 GMT+04:00 kilon alios <[email protected]>:
>>
>>> personally I don't like this postcard , it looks too much like "snake
>>> oil marketing" to me.
>>>
>>> It creates the illusion that Pharo is much simpler than other
>>> programming languages as a programming language while nothing can be
>>> further from the truth. The idea here is to prove to the viewer that Pharo
>>> is based on a very simple recipe and that is of course true. But if we have
>>> to be honest is should come with a disclaimer for the potential users that
>>> Pharo is no blue pill and there tons of things outside this postcard you
>>> need to learn if you want to create the simplest Pharo application. I will
>>> be frank , as a language I dont find Pharo any simpler than let's say
>>> python , which I am more familiar with. And the fact that there is this
>>> simple recipe gave me zero benefits to me so far. Its a cool trick that may
>>> come handy down the line if I want to shape the language more to my needs,
>>> but I dont see doing this to a day by day basis.
>>>
>>> Now a "living coding postcard" stating the workflow of Pharo and
>>> demonstrating the power of the debugger is much more honest and frankly
>>> better marketing for Pharo. You show something to a person that will
>>> benefit his workflow on a day by day basis.
>>>
>>>
>>> On Tue, Jun 17, 2014 at 10:32 AM, Yuriy Tymchuk <[email protected]>
>>> wrote:
>>>
>>>> Now, who is creative enough to add “dynamic array” (one with curly
>>>> braces) and temporaries in a block to the original thing:
>>>>
>>>> exampleWithNumber: x
>>>>     | y |
>>>>     true & false not & (nil isNil) ifFalse: [self halt].
>>>>     y := self size + super size.
>>>>     #($a #a "a" 1 1.0)
>>>>         do: [ :each |
>>>>             Transcript show: (each class name);
>>>>                        show: ' '].
>>>>     ^x < y
>>>>
>>>>
>>>>
>>>> Uko
>>>>
>>>> On 16 Jun 2014, at 15:35, Oscar Nierstrasz <[email protected]>
>>>> wrote:
>>>>
>>>>
>>>> I got it from Stef, who always said it came originally from Ralph
>>>> Johnson.
>>>>
>>>> http://c2.com/cgi-bin/wiki?SmalltalkSyntaxInaPostcard
>>>>
>>>> Googling around finds various copies of this, but no original source.
>>>>
>>>> Oscar
>>>>
>>>> On 16 Jun 2014, at 10:58 , Yuriy Tymchuk <[email protected]> wrote:
>>>>
>>>> I guess it’s here: http://files.pharo.org/media/flyer-cheat-sheet.pdf
>>>>
>>>> I think that it would be interesting to put the syntax on a postcard.
>>>> It can work as a proof of concept, some addition cheat-sheet for newcomers
>>>> and also as some king of souvenir.
>>>>
>>>> Uko
>>>>
>>>> On 16 Jun 2014, at 10:36, stepharo <[email protected]> wrote:
>>>>
>>>> you have the flyer of Damien (no idea where it is) but no real postcard.
>>>>
>>>> Stef
>>>>
>>>> On 16/6/14 09:35, Yuriy Tymchuk wrote:
>>>>
>>>> Hi guys,
>>>>
>>>> we all are talking about the syntax fitting in a postcard, but was
>>>> there any real postcard with Pharo syntax prototype? This would be really
>>>> interesting.
>>>>
>>>> Uko
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>
>

Reply via email to