On 19 Jun 2014, at 21:01, kilon alios <kilon.al...@gmail.com> wrote:
> I don't see how something that is simple cannot be easy unless its not really > simple. > > So far I have not found Pharo simpler to Python. As a coding experience. > Maybe if I stay around 10 year I will. I know there are things that Pharo / > Smalltalk does better than Python like closure , or concepts associated with > functional programming etc. But in the end of the day I don't care about > languages that theoretically are great. > > I have not yet seen great gains in the language while I code, maybe because > in the end of the day I just code in a very simplistic way, I am not a pro > coder, I don't have the experience to use complex concepts like an > experienced coder would do. I know a few things and that is what I use. But I > don't stop learning . > > In the end of the day yes I find Smalltalk and Pharo much more difficult to > Python because of the lack of documentation. Even books on Smalltalk seem to > be decades old. Pharo has zero official reference documentation and I don't , > like many others , like to read code , reading code is very very very slow. > Did I just said that I don't like to read code, additionally I don't like to > read code. I hate reading code with no comments. Reading well written code is an important way to make progress, IMHO. http://www.cs.virginia.edu/~evans/cs655/readings/smalltalk.html First principle: << Personal Mastery: If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual. >> Even though Linux is open-source I bet most of us have never read any kernel or system code. In Pharo, everything is easily accessible to a pretty low level - that is really amazing. Using senders, implementers and references to find what you want is a key skill. Of course, not every part of the system is as good an example, or written in such a way that it is easily understood - nor is everything documented. And granted, often it can be hard to get an overview. But we are moving forward in the right direction. > The syntax however is very simple. I also love that the syntax looks nothing > like C, even though the vast majority of languages I know and I know most of > the popular ones are C based. I never had a problem with the syntax. So I > would say that Pharo is by far the type of language I love to read, if we > exclude the fact that I don't like to read code and I hate reading > uncommented code. So I cannot relate to your students, I don't see how anyone > can see Smalltalk as complex at least on a syntax level unless he does not > real understand what he learned. > > I am here however because I have fallen in love with live coding and the > Smalltalk IDE. I was blown away with emacs but one day I asked at #emacs in > IRC "hey guys would not be awesome if emacs had GUIs and a full blown > language" and the answer I got " try Squeak " , "Oh its a lisp thing" , "No > its smalltalk", "what on earth is smalltalk ?" and the rest is history. > > I would say that language-wise Smalltalk is by far the easiest language I > have learned. But as a coding experience is hard because of lack of > documentation, lack of good documentation and lack of libraries. I think > however Pharo deserves to be loads more popular, its a very good effort and > me and Pharo seem to have the same goals in terms of coding. "Elegance and > directness". I don't care so much about "simplicity" because nothing in this > world is really simple, not "ease of use" because nothing worth doing is easy > to do. For me "elegance" is doing "the complex thing the simplest way > possible without compromising" and "directness" means "do it now, zero > delays, zero excuses". It seems to me Pharo is build on these ideals and I > would be around as long as it follows them. > > > On Thu, Jun 19, 2014 at 8:52 PM, Dennis Schetinin <chae...@gmail.com> wrote: > 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 > <nicolas.cellier.aka.n...@gmail.com>: > > > > > 2014-06-19 16:44 GMT+02:00 Dennis Schetinin <chae...@gmail.com>: > > 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 <kilon.al...@gmail.com>: > 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 <yuriy.tymc...@me.com> 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 <oscar.nierstr...@gmail.com> 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 <yuriy.tymc...@me.com> 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 <steph...@free.fr> 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 >>>>> >>>>> >>>> >>>> >>> >>> >> >> > > > > > >