The Ultimate Smalltalk Tutorial

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
53 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

stepharo



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef


On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.


Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Vitor Medina Cruz
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.



Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

kilon.alios
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.



Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Vitor Medina Cruz
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.




Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

kilon.alios
Ruby On Rails was started by one developer , so no it's not users that bring contributors it's contributors that bring users. Smalltalk started by a small team. Almost all programming languages started with no users and mostly a sole developer. This is because a user will not use software that is not even alpha, on the other hand a contributor will be a user and a contributor regardless of the state of software provided he has the desire to do so.

Spreading the word and helping people understand Pharo no longer makes you a user, it promotes you to contributor

Same applies to Richard

;)
On Wed, 26 Oct 2016 at 03:19, Vitor Medina Cruz <[hidden email]> wrote:
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.




Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

stepharo
In reply to this post by Vitor Medina Cruz



Le 26/10/16 à 02:18, Vitor Medina Cruz a écrit :
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.
Tx dimitry. Yes writing document and book is a pain :)

Now Vito what is the track record of Richard?
Why not pushing/improving
    either
        UPBE
        ProfStef
        With the Mooc Counter example: In TWO MINUTES people get something DONE a simple counter.
        What else can it be.

I run the following experience during my lecture. I give 1 hour presentation about pharo / vision / sneakpeek and ask them to watch the counter
video and redo it and it works!

Stef
       


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
-- Sent from my Android device with K-9 Mail. Please excuse my brevity.
Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

stepharo
In reply to this post by kilon.alios

Thanks this is cool to hear that.

BTW do you know if we finished with UPBE or if there is something else to do from a conversion stand point?

I thought I did a final pass.



Le 26/10/16 à 01:45, Dimitris Chloupis a écrit :
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.




Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Jimmie Houchin-5
In reply to this post by Ben Coman
I am a big fan of proper attribution, so here is my guess.

It seems to be a paraphrase of an Alan Perlis quote

https://en.wikiquote.org/wiki/Alan_Perlis

" A language that doesn't affect the way you think about programming, is
not worth knowing."

 From his article

Epigrams on Programming, 1982
ACM SIGPLAN Notices 17 (9), September 1982, pp. 7–13

Hope this helps someone.

Jimmie Houchin



On 10/23/2016 07:36 PM, Ben Coman wrote:

> On Mon, Oct 24, 2016 at 8:11 AM, Dimitris Chloupis
> <[hidden email]> wrote:
>> I was looking my entire life for something like Pharo , almost 30 years.
>> When I found it took me another 5 to realize this is it and I had many close
>> calls to abandoning it. But in the end I realized with its weakness and
>> frustrated moments I love Pharo.
>>
>> To tell you truth even if I was to give up Pharo, today, it would not matter
>> much. Mainly because I can take the Pharo ideology to any other programming
>> language even the most ugly ones like Java, C++ and JavaScript.
> I don't remember who said it, but I like the quote...
>   "The only languages worth learning are those that change the way you
> think about programming"
>
>> On Mon, 24 Oct 2016 at 01:52, Vitor Medina Cruz <[hidden email]>
>> wrote:
>>> I think what is missing is something before all that, something that spark
>>> the "I am interested in Pharo", the STEP 0. What does that today? I think a
>>> simple tutorial that catch the attention of people would do that. Right now
>>> I think it is too hard for someone to get interested in Smalltalk in
>>> general, and Pharo in particular, because something like that is missing,
>>> and one must really understand and see the value of Smalltalk to persist and
>>> keep going and learning, like happened to me.
> Perhaps something like these?
> * https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740
> * https://medium.com/concerning-pharo/rediscovering-the-ux-of-the-legendary-hp-35-scientific-pocket-calculator-d1d497ece999
> * https://medium.com/concerning-pharo/elegant-pharo-code-bb590f0856d0
>
> If you do notice somewhere a suitable step 0, please let us know.  For
> those of us using Pharo a while, our perspective changes so maybe we
> can't see what might hook newcomers. The things we see as important
> might be a paradigm step too far for newcomers.   Although those who
> teach Pharo classes would have a better idea of a newcomer
> perspective, may that is still different from someone voluntarily
> choosing Pharo without a supportive environment like a university
> course.
>
> cheers -ben
>


Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

kilon.alios
In reply to this post by stepharo
Probably then it's ready to get released for version 5. I will give it a look the next few days, should be able to make the release by the end of the week.

Then after that onward for version 6 ;)

PBE is doing great with the help of you guys , porting it to 6 should be relative easy.

On Wed, 26 Oct 2016 at 18:44, stepharo <[hidden email]> wrote:

Thanks this is cool to hear that.

BTW do you know if we finished with UPBE or if there is something else to do from a conversion stand point?

I thought I did a final pass.



Le 26/10/16 à 01:45, Dimitris Chloupis a écrit :
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.




Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Offray Vladimir Luna Cárdenas-2
In reply to this post by kilon.alios


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

In that sense Pharo and what we're doing here on small communities, teams and individuals, is not the exception, is the rule. We're fortunate that we have a friendly and dynamic community around a powerful environment, so even being part of the rule, we can be very creative and productive.

On the issue of step 0, learning materials and approaches, and Pharo for beginners, my findings are that Pharo is pretty well suited for non-programmers (journalist, scientist, teachers, philosophers) compared to IPython for example. I have tried both, IPython notebooks and Pharo/Grafoscopio, and the uniformity and self containment of the environment is very empowering, without too much overhead and extra complications. So I think that we also need to look towards the non-usual programmer and computer scientist profiles for the "newbies" and interested in belonging to the community.

Our approach in our Data Week workshop is different:

- We start with some panoramic view of computing comparing Unix fathers versus dynabook children. This gives a point to see the technology and the differences and why Pharo is more like OS + IDE + Apps in a minimalist fashion, instead of the Unix legacy approach to the same problem.

- We go to the professor Stef tutorial, which is the first part of a Grafoscopio notebook. Then we use some one liners taking from Sven's Elegant Pharo code, then we use Hernán's Internet Movie Data Base example to introduce JSON, queries and REST API, then we use blocks to abstract the example (see below) and create our first "Cinemania" package.

- Then we learn how to extend the Dataviz package (made in Roassal), with our Twitter exported data and we deal with an open problem: Twitter Data Selfies.


So, there are several routes to learning for different populations and contexts. Putting the new contextualized stuff we're doing in dialogue with the material the community is creating (MOOC, UPBE, Deep Into Pharo) and other communities like Open Knowledge (see our recent for the upcomming Data Week 7 at [a]) is the key to let learners traverse different paths according to their needs and interests.

[a] https://discuss.okfn.org/t/data-week-7-our-critical-code-data-literacy-and-visualization-hackathon-returns/3823

Cheers,

Offray


On 25/10/16 22:19, Dimitris Chloupis wrote:
Ruby On Rails was started by one developer , so no it's not users that bring contributors it's contributors that bring users. Smalltalk started by a small team. Almost all programming languages started with no users and mostly a sole developer. This is because a user will not use software that is not even alpha, on the other hand a contributor will be a user and a contributor regardless of the state of software provided he has the desire to do so.

Spreading the word and helping people understand Pharo no longer makes you a user, it promotes you to contributor

Same applies to Richard

;)
On Wed, 26 Oct 2016 at 03:19, Vitor Medina Cruz <[hidden email]> wrote:
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor



Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

philippeback
Interesting.

I really need to get into that grafoscopio...

Phil

On Wed, Oct 26, 2016 at 9:13 PM, Offray Vladimir Luna Cárdenas <[hidden email]> wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

In that sense Pharo and what we're doing here on small communities, teams and individuals, is not the exception, is the rule. We're fortunate that we have a friendly and dynamic community around a powerful environment, so even being part of the rule, we can be very creative and productive.

On the issue of step 0, learning materials and approaches, and Pharo for beginners, my findings are that Pharo is pretty well suited for non-programmers (journalist, scientist, teachers, philosophers) compared to IPython for example. I have tried both, IPython notebooks and Pharo/Grafoscopio, and the uniformity and self containment of the environment is very empowering, without too much overhead and extra complications. So I think that we also need to look towards the non-usual programmer and computer scientist profiles for the "newbies" and interested in belonging to the community.

Our approach in our Data Week workshop is different:

- We start with some panoramic view of computing comparing Unix fathers versus dynabook children. This gives a point to see the technology and the differences and why Pharo is more like OS + IDE + Apps in a minimalist fashion, instead of the Unix legacy approach to the same problem.

- We go to the professor Stef tutorial, which is the first part of a Grafoscopio notebook. Then we use some one liners taking from Sven's Elegant Pharo code, then we use Hernán's Internet Movie Data Base example to introduce JSON, queries and REST API, then we use blocks to abstract the example (see below) and create our first "Cinemania" package.

- Then we learn how to extend the Dataviz package (made in Roassal), with our Twitter exported data and we deal with an open problem: Twitter Data Selfies.


So, there are several routes to learning for different populations and contexts. Putting the new contextualized stuff we're doing in dialogue with the material the community is creating (MOOC, UPBE, Deep Into Pharo) and other communities like Open Knowledge (see our recent for the upcomming Data Week 7 at [a]) is the key to let learners traverse different paths according to their needs and interests.

[a] https://discuss.okfn.org/t/data-week-7-our-critical-code-data-literacy-and-visualization-hackathon-returns/3823

Cheers,

Offray


On 25/10/16 22:19, Dimitris Chloupis wrote:
Ruby On Rails was started by one developer , so no it's not users that bring contributors it's contributors that bring users. Smalltalk started by a small team. Almost all programming languages started with no users and mostly a sole developer. This is because a user will not use software that is not even alpha, on the other hand a contributor will be a user and a contributor regardless of the state of software provided he has the desire to do so.

Spreading the word and helping people understand Pharo no longer makes you a user, it promotes you to contributor

Same applies to Richard

;)
On Wed, 26 Oct 2016 at 03:19, Vitor Medina Cruz <[hidden email]> wrote:
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor




Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

stepharo
In reply to this post by Offray Vladimir Luna Cárdenas-2



Le 26/10/16 à 21:13, Offray Vladimir Luna Cárdenas a écrit :


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

In that sense Pharo and what we're doing here on small communities, teams and individuals, is not the exception, is the rule. We're fortunate that we have a friendly and dynamic community around a powerful environment, so even being part of the rule, we can be very creative and productive.

On the issue of step 0, learning materials and approaches, and Pharo for beginners, my findings are that Pharo is pretty well suited for non-programmers (journalist, scientist, teachers, philosophers) compared to IPython for example. I have tried both, IPython notebooks and Pharo/Grafoscopio, and the uniformity and self containment of the environment is very empowering, without too much overhead and extra complications. So I think that we also need to look towards the non-usual programmer and computer scientist profiles for the "newbies" and interested in belonging to the community.


I agree. This is why I was pushing alex to describe stories (people can do data journalism and software vis. vs. we can do visualization) around roassal with your experience as an example

Our approach in our Data Week workshop is different:

- We start with some panoramic view of computing comparing Unix fathers versus dynabook children. This gives a point to see the technology and the differences and why Pharo is more like OS + IDE + Apps in a minimalist fashion, instead of the Unix legacy approach to the same problem.

- We go to the professor Stef tutorial, which is the first part of a Grafoscopio notebook. Then we use some one liners taking from Sven's Elegant Pharo code, then we use Hernán's Internet Movie Data Base example to introduce JSON, queries and REST API, then we use blocks to abstract the example (see below) and create our first "Cinemania" package.

It could be nice to give steroids to Prof Stef by adding some pages with cool scripts :)

- Then we learn how to extend the Dataviz package (made in Roassal), with our Twitter exported data and we deal with an open problem: Twitter Data Selfies.


So, there are several routes to learning for different populations and contexts. Putting the new contextualized stuff we're doing in dialogue with the material the community is creating (MOOC, UPBE, Deep Into Pharo) and other communities like Open Knowledge (see our recent for the upcomming Data Week 7 at [a]) is the key to let learners traverse different paths according to their needs and interests.


Yes and I think that your approach is really interesting because it brings a perspective that I cannot really give and this is a "super user" perspective and it is really nice.

[a] https://discuss.okfn.org/t/data-week-7-our-critical-code-data-literacy-and-visualization-hackathon-returns/3823

Cheers,

Offray



On 25/10/16 22:19, Dimitris Chloupis wrote:
Ruby On Rails was started by one developer , so no it's not users that bring contributors it's contributors that bring users. Smalltalk started by a small team. Almost all programming languages started with no users and mostly a sole developer. This is because a user will not use software that is not even alpha, on the other hand a contributor will be a user and a contributor regardless of the state of software provided he has the desire to do so.

Spreading the word and helping people understand Pharo no longer makes you a user, it promotes you to contributor

Same applies to Richard

;)
On Wed, 26 Oct 2016 at 03:19, Vitor Medina Cruz <[hidden email]> wrote:
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor




Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Dale Henrichs-3
In reply to this post by Offray Vladimir Luna Cárdenas-2



On 10/26/16 12:13 PM, Offray Vladimir Luna Cárdenas wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

After skimming the actual article and finding that the points made in the article are valid I would have wished that the right panel in the cartoon had said "one more pull request before going to bed" since that is closer to what the article is about ... an active, community that contributes is also an important component and something that Pharo/Smalltalk community does indeed have.

Dale
Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

stepharo
In reply to this post by kilon.alios



Le 26/10/16 à 19:27, Dimitris Chloupis a écrit :
Probably then it's ready to get released for version 5. I will give it a look the next few days, should be able to make the release by the end of the week. Then after that onward for version 6 ;) PBE is doing great with the help of you guys , porting it to 6 should be relative easy.

I know that I was thinking about the next iteration when I rewrote some parts.
So I will print it and browse to see how it feels.


On Wed, 26 Oct 2016 at 18:44, stepharo <[hidden email]> wrote:

Thanks this is cool to hear that.

BTW do you know if we finished with UPBE or if there is something else to do from a conversion stand point?

I thought I did a final pass.



Le 26/10/16 à 01:45, Dimitris Chloupis a écrit :
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor

On Tue, Oct 25, 2016 at 8:05 PM, stepharo <[hidden email]> wrote:



Le 25/10/16 à 15:05, Dimitris Chloupis a écrit :
PBE is for Pharo version 5, I will give it another look to start porting it to Pharo version 6. Will add a git tag and make release for 5.

Thanks.
Yes it would be an immense help.

Stef



On Tue, Oct 25, 2016 at 10:19 AM [hidden email] <[hidden email]> wrote:
There was this book (and some others of the same ink) that was provided with my first computer:



This thing is still sitting near my desk today (I guess it keeps me connected to my curious young self or something like that).

I keep on thinking that it would be great to have a Pharo-based version of it.

And something like this one for bytecode sets...


Phil


On Tue, Oct 25, 2016 at 7:22 AM, Matteo via Pharo-users <[hidden email]> wrote:


---------- Forwarded message ----------
From: Matteo <[hidden email]>
To: Any question about pharo is welcome <[hidden email]>
Cc: 
Date: Tue, 25 Oct 2016 07:08:21 +0200
Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial
+1 for PBE
It has been my first smalltalk/Pharo tutorial.
I'm still using it, as a quick reference.

On October 25, 2016 6:25:08 AM GMT+02:00, monty <[hidden email]> wrote:
+1 for PBE.


Sent: Monday, October 24, 2016 at 1:56 AM From: "Nicolai Hess" <[hidden email]> To: "Any question about pharo is welcome" <[hidden email]> Subject: Re: [Pharo-users] The Ultimate Smalltalk Tutorial Am 23.10.2016 3:16 nachm. schrieb "Vitor Medina Cruz" <[hidden email][mailto:[hidden email]]>:
I think the MOOC is too much for a tutorial. What I miss today is a good written (no videos! Please!) tutorial that teaches just a little of the language and give a few guidelines on how to do simple stuff with the environment, such as a "Hello World!", creating a class, tests and run stuff.
I thought "pharo by example" provides exactly that. What is missing here, from your perspective? I learned a lot from it and it helped me to get started to learn smalltalk, not only the syntax, but also, doing something the smalltalk way.
On Sat, Oct 15, 2016 at 12:15 PM, horrido <[hidden email][mailto:[hidden email]]> wrote:
Excellent suggestion! I shall look into it. Thanks. -- View this message in context: http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html[http://forum.world.st/The-Ultimate-Smalltalk-Tutorial-tp4918859p4918930.html] Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.





Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Offray Vladimir Luna Cárdenas-2
In reply to this post by philippeback

You're welcomed. The English Grafoscopio page is here (with updated installation instructions):

http://mutabit.com/grafoscopio/index.en.html

Tutorial is mainly in Spanish, but the code is pretty readable :-).

Cheers,

Offray


On 26/10/16 14:36, [hidden email] wrote:
Interesting.

I really need to get into that grafoscopio...

Phil

On Wed, Oct 26, 2016 at 9:13 PM, Offray Vladimir Luna Cárdenas <[hidden email]> wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

In that sense Pharo and what we're doing here on small communities, teams and individuals, is not the exception, is the rule. We're fortunate that we have a friendly and dynamic community around a powerful environment, so even being part of the rule, we can be very creative and productive.

On the issue of step 0, learning materials and approaches, and Pharo for beginners, my findings are that Pharo is pretty well suited for non-programmers (journalist, scientist, teachers, philosophers) compared to IPython for example. I have tried both, IPython notebooks and Pharo/Grafoscopio, and the uniformity and self containment of the environment is very empowering, without too much overhead and extra complications. So I think that we also need to look towards the non-usual programmer and computer scientist profiles for the "newbies" and interested in belonging to the community.

Our approach in our Data Week workshop is different:

- We start with some panoramic view of computing comparing Unix fathers versus dynabook children. This gives a point to see the technology and the differences and why Pharo is more like OS + IDE + Apps in a minimalist fashion, instead of the Unix legacy approach to the same problem.

- We go to the professor Stef tutorial, which is the first part of a Grafoscopio notebook. Then we use some one liners taking from Sven's Elegant Pharo code, then we use Hernán's Internet Movie Data Base example to introduce JSON, queries and REST API, then we use blocks to abstract the example (see below) and create our first "Cinemania" package.

- Then we learn how to extend the Dataviz package (made in Roassal), with our Twitter exported data and we deal with an open problem: Twitter Data Selfies.


So, there are several routes to learning for different populations and contexts. Putting the new contextualized stuff we're doing in dialogue with the material the community is creating (MOOC, UPBE, Deep Into Pharo) and other communities like Open Knowledge (see our recent for the upcomming Data Week 7 at [a]) is the key to let learners traverse different paths according to their needs and interests.

[a] https://discuss.okfn.org/t/data-week-7-our-critical-code-data-literacy-and-visualization-hackathon-returns/3823

Cheers,

Offray


On 25/10/16 22:19, Dimitris Chloupis wrote:
Ruby On Rails was started by one developer , so no it's not users that bring contributors it's contributors that bring users. Smalltalk started by a small team. Almost all programming languages started with no users and mostly a sole developer. This is because a user will not use software that is not even alpha, on the other hand a contributor will be a user and a contributor regardless of the state of software provided he has the desire to do so.

Spreading the word and helping people understand Pharo no longer makes you a user, it promotes you to contributor

Same applies to Richard

;)
On Wed, 26 Oct 2016 at 03:19, Vitor Medina Cruz <[hidden email]> wrote:
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor





Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

philippeback
Tried but no cigar...

Inline image 1

On Wed, Oct 26, 2016 at 9:56 PM, Offray Vladimir Luna Cárdenas <[hidden email]> wrote:

You're welcomed. The English Grafoscopio page is here (with updated installation instructions):

http://mutabit.com/grafoscopio/index.en.html

Tutorial is mainly in Spanish, but the code is pretty readable :-).

Cheers,

Offray


On 26/10/16 14:36, [hidden email] wrote:
Interesting.

I really need to get into that grafoscopio...

Phil

On Wed, Oct 26, 2016 at 9:13 PM, Offray Vladimir Luna Cárdenas <[hidden email]> wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

In that sense Pharo and what we're doing here on small communities, teams and individuals, is not the exception, is the rule. We're fortunate that we have a friendly and dynamic community around a powerful environment, so even being part of the rule, we can be very creative and productive.

On the issue of step 0, learning materials and approaches, and Pharo for beginners, my findings are that Pharo is pretty well suited for non-programmers (journalist, scientist, teachers, philosophers) compared to IPython for example. I have tried both, IPython notebooks and Pharo/Grafoscopio, and the uniformity and self containment of the environment is very empowering, without too much overhead and extra complications. So I think that we also need to look towards the non-usual programmer and computer scientist profiles for the "newbies" and interested in belonging to the community.

Our approach in our Data Week workshop is different:

- We start with some panoramic view of computing comparing Unix fathers versus dynabook children. This gives a point to see the technology and the differences and why Pharo is more like OS + IDE + Apps in a minimalist fashion, instead of the Unix legacy approach to the same problem.

- We go to the professor Stef tutorial, which is the first part of a Grafoscopio notebook. Then we use some one liners taking from Sven's Elegant Pharo code, then we use Hernán's Internet Movie Data Base example to introduce JSON, queries and REST API, then we use blocks to abstract the example (see below) and create our first "Cinemania" package.

- Then we learn how to extend the Dataviz package (made in Roassal), with our Twitter exported data and we deal with an open problem: Twitter Data Selfies.


So, there are several routes to learning for different populations and contexts. Putting the new contextualized stuff we're doing in dialogue with the material the community is creating (MOOC, UPBE, Deep Into Pharo) and other communities like Open Knowledge (see our recent for the upcomming Data Week 7 at [a]) is the key to let learners traverse different paths according to their needs and interests.

[a] https://discuss.okfn.org/t/data-week-7-our-critical-code-data-literacy-and-visualization-hackathon-returns/3823

Cheers,

Offray


On 25/10/16 22:19, Dimitris Chloupis wrote:
Ruby On Rails was started by one developer , so no it's not users that bring contributors it's contributors that bring users. Smalltalk started by a small team. Almost all programming languages started with no users and mostly a sole developer. This is because a user will not use software that is not even alpha, on the other hand a contributor will be a user and a contributor regardless of the state of software provided he has the desire to do so.

Spreading the word and helping people understand Pharo no longer makes you a user, it promotes you to contributor

Same applies to Richard

;)
On Wed, 26 Oct 2016 at 03:19, Vitor Medina Cruz <[hidden email]> wrote:
Yes it is an amazing thing what you all do, I admire that. But isn't contributors previous users?

What I like about the Richard intent, from what I understand, is to make Smalltalk, and Pharo, more visible, more used, and that is the only way I know to bring more contributors. From what I know, Ruby got a lot of more contributors after Rails, which brought a lot of users to the platform. 

I really would like to contribute some day, in the mean time I will try to support initiatives like the one proposed by Richard, and spread the word as much as I can.


On Tue, Oct 25, 2016 at 9:45 PM, Dimitris Chloupis <[hidden email]> wrote:
Do you know how many unique views had PBE last 5 months ? 1000
Do you know how many contributions PBE had last 5 months ? Zero. Not 100 . Not even 10. Not even 1... zero

PBE would be still in Pharo version 1.4 if it was not for me , Stef and Damien.

This is not a Pharo problem, all open source software has the same issue.

We need more people helping, I ported the first 1/3rd of the book from 1.4 to Pharo 4 just by myself and the other two joined after I was burned out from the pain. I was disgusted working on PBE . I literally hated Pharo. Fortunately nothing that a bit of a small break could not fix.

I was and still I am the most loud critic about the state of documentation. In the end however what makes open source projects exist is not users. Users are insignificant. Sorry to say that but is true. It's contributors that are the life of the project.

People like Stef made Pharo and even Squeak possible. People like Stef keep Smalltalk alive. Personally I don't give a damn what users want , I rather attract only contributors and zero just users. That's enough to keep Pharo evolving for centuries.

Stef says that "Pharo is yours" , apparently this easier said than done. I respect your opinion, I agree with your opinion because I said what you say years ago. In the end however if you and other users are not willing to help we will remain at zero commits at least as far as PBE is concerned .

It's pretty much the same for the other areas of Pharo.
On Wed, 26 Oct 2016 at 01:26, Vitor Medina Cruz <[hidden email]> wrote:
Dimitris:

I agree with much of what you said, but I think it is still possible to make step 0 and follow the Pharo path with more easy. :) 

Also, https://ci.inria.fr/pharo-contribution/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/PharoTour/PharoTour.html is nice too, I didn't know of it. It is the new version of PBE ongoing? I am going to take a look at it.

Ben:

Thanks for the links, two of them I didn't know of. I hadn't time to read them yet, but I think what I am looking for is something like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740

"The things we see as important might be a paradigm step too far for newcomers."

I think the problem for Step 0 it is exactly that. I myself have already tried to show the paradigm shift along with all that must be learn to use Pharo, and it didn't went well. It is too much to tackle at once. There is the language, the environment, the IDE, the paradigm shift, too much...

Nicolai:

The first example from the book provides the first experience you have on Pharo, and it uses stuff that is not on the default image (it happened to me a long time ago and with a friend more recently). It is frustrating and leave the person trying to learn suspicious. I see that the current site for the book has a link to the image that should be used while reading the book, but it is not very visible and I think the book don't mention it. From the Getting Started chapter I count five pages until some code is executed (Time now). The problem here is that people usually don't understand, yet, the power of the environment, and are eager to see code and execute it, and they often get confused with so many different things to learn even before the first "Hello World". I can say the first time I got PBE I gave up because of this, and I only come back later because I persist to learn Smalltalk, and I know some other people who tried to read it too and give up for exactly the same reason.

I found the book an excellent reference and source to solidify the understanding of Pharo, but I don't like it as a tutorial. 


-------

Look at the Go language site: https://golang.org/, the first thing it puts in your face is a way to execute code and a link to a Tour. I don't even have to think much before I have executed the Hello World, my hand just moved the mouse to the Run button, and even before I noticed I was doing the tour.

In my opinion, a good Step 0 would be something like Profstef (http://amber-lang.net/learn.html) as a Tour, going slowly through the language aspects, messages types, comparing to other OO languages, showing that operator are just messages, then that control flow statements are also just messages, creating classes etc, always letting the user execute code as she goes on. 

After that, the Tour could tell its user to continue it using the image and showing the download link. When the user execute Pharo.exe and loads the default image the first thing that appears is the Profstef asking if it is the first time he is there and if he is continuing the tour from the web (if it is someone used to Pharo, he just closes the windows and starts to use his new fresh image). It could explains steadily the workspace, the transcript, the nautilus and how to make a very simple web application with tests. After that it could explain the image, that objects are stored (serialized) into it and the image itself consists of the running program while the Pharo.exe is the VM. In the end It could point to a tutorial like https://medium.com/concerning-pharo/reddit-st-in-10-cool-pharo-classes-1b5327ca0740, the PBE and to the many others resources available.

The order of things could change and maybe I had missed something, but that is what I can think now. Perhaps this approach is too slow, I don't know, but the fast one isn't working for me :( It don't need to be a tour also, but something in these lines, like the medium post above but with more parts, each describing a little more of Pharo. The idea, in general, is to easy the entrance barriers that Pharo has by it's quite different, yet powerful, programming model and environment. When I talk to people I know that have tried Pharo, that is the biggest problem.

That is just my two cents. :)

And thanks for all the new links :)

Regards,
Vitor






Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

stepharo
In reply to this post by Dale Henrichs-3

funnily dale I read it like you wish :)



Le 26/10/16 à 21:53, Dale Henrichs a écrit :



On 10/26/16 12:13 PM, Offray Vladimir Luna Cárdenas wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

After skimming the actual article and finding that the points made in the article are valid I would have wished that the right panel in the cartoon had said "one more pull request before going to bed" since that is closer to what the article is about ... an active, community that contributes is also an important component and something that Pharo/Smalltalk community does indeed have.

Dale

Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Vitor Medina Cruz
stepharo:

Why not pushing/improving
    either
        UPBE
        ProfStef
        With the Mooc Counter example: In TWO MINUTES people get something DONE a simple counter. 
        What else can it be. 

I run the following experience during my lecture. I give 1 hour presentation about pharo / vision / sneakpeek and ask them to watch the counter
video and redo it and it works!

Indeed, you can. My opinion was in the lines of improving Profstef :)

Mooc may be good in a class with a teacher for the student to take doubts, but I find a little confusing for someone that finds it by its own in pharo.org

I have some friends on the field, some are overseas (I am in Brazil) and when the opportunity comes I talk about Smalltalk and Pharo and how good it is, then:

1- Some get interested and asks for reference, I usually point to the Proftef, the site and the PBE;
2- Some are interested and we are close so I can I explain something myself and show the environment, maybe pairing;
3- Sometimes someone got interested and went to the pharo.org by itself and I know of that only afterwards. 

In every situation people got confused :(

The best time was 2, because I could explain better what was going on, but usually people try by itself, and that don't went well. For example, some report to me that had made the exercise from PBE and got really confused in the end: what was that I was doing? Where are my classes again? Workspace? Where is the code again? What happened? 

I think it is hard for someone that already internalize the concept of image and self contained environment to understand why this confusion is happening, but when you come to think about it that is not so strange because people are used to files and all those crap static stuff, so it is kind of a huge paradigm shift learning Pharo: it is confusing for them. 

But it seems to me that you are focusing more on fresh people, been teach on classrooms and such, right now. That may be good, I am not sure if people already in the industry can be cooped in enough size to be able to improve Pharo community and use.

On Thu, Oct 27, 2016 at 9:21 AM, stepharo <[hidden email]> wrote:

funnily dale I read it like you wish :)



Le 26/10/16 à 21:53, Dale Henrichs a écrit :



On 10/26/16 12:13 PM, Offray Vladimir Luna Cárdenas wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

After skimming the actual article and finding that the points made in the article are valid I would have wished that the right panel in the cartoon had said "one more pull request before going to bed" since that is closer to what the article is about ... an active, community that contributes is also an important component and something that Pharo/Smalltalk community does indeed have.

Dale


Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

kilon.alios
I decided to make a new version for ProfStef released under then name "Pharo Live Tutorial".

My goals are to:
1) add to it a history panel, so the user can navigate to the part he wants.
2) group parts into chapters to make progress more clear
3) break some parts to smaller parts to ensure smooth learning curve
4) add it to the help section of the world menu , so it is far more visible to the user
5) link parts to relevant chapter and section of PBE5 (or any other relevant book), so the user can easily access more detailed info in case he wants to.
6) Design the tool so it can accommodate multiple tutorials, each having its own chapters and parts
7) Design a GUI to navigate to tutorials
8) Integrate it with GTSpotter so the user can easily find the information he or she wants
9) Integrate small challenge games to help the user test what he learned and have fun at the same time, with ability to be awarded with a score in terms of "levels" and of course badges for achievements ;)
10) Provide an integrated blog (nothing fancy, just text) , for latest news about pharo , this blog will be basically copying some of my blog posts , to show to users that we are alive and kicking and not just an almost dead project and of course advertise the hard work of many of my fellow guardians of the light.

PS: obviously references to Stef will remain and he will be credited as author of the tutorial

Can't promise when it will be ready and can't promise first version will include all the above but this is the direction I want to go with this.  This live interactive tutorial will replace my video tutorials since they are too hard to keep updated.


On Thu, Oct 27, 2016 at 3:04 PM Vitor Medina Cruz <[hidden email]> wrote:
stepharo:

Why not pushing/improving
    either
        UPBE
        ProfStef
        With the Mooc Counter example: In TWO MINUTES people get something DONE a simple counter. 
        What else can it be. 

I run the following experience during my lecture. I give 1 hour presentation about pharo / vision / sneakpeek and ask them to watch the counter
video and redo it and it works!

Indeed, you can. My opinion was in the lines of improving Profstef :)

Mooc may be good in a class with a teacher for the student to take doubts, but I find a little confusing for someone that finds it by its own in pharo.org

I have some friends on the field, some are overseas (I am in Brazil) and when the opportunity comes I talk about Smalltalk and Pharo and how good it is, then:

1- Some get interested and asks for reference, I usually point to the Proftef, the site and the PBE;
2- Some are interested and we are close so I can I explain something myself and show the environment, maybe pairing;
3- Sometimes someone got interested and went to the pharo.org by itself and I know of that only afterwards. 

In every situation people got confused :(

The best time was 2, because I could explain better what was going on, but usually people try by itself, and that don't went well. For example, some report to me that had made the exercise from PBE and got really confused in the end: what was that I was doing? Where are my classes again? Workspace? Where is the code again? What happened? 

I think it is hard for someone that already internalize the concept of image and self contained environment to understand why this confusion is happening, but when you come to think about it that is not so strange because people are used to files and all those crap static stuff, so it is kind of a huge paradigm shift learning Pharo: it is confusing for them. 

But it seems to me that you are focusing more on fresh people, been teach on classrooms and such, right now. That may be good, I am not sure if people already in the industry can be cooped in enough size to be able to improve Pharo community and use.

On Thu, Oct 27, 2016 at 9:21 AM, stepharo <[hidden email]> wrote:

funnily dale I read it like you wish :)



Le 26/10/16 à 21:53, Dale Henrichs a écrit :



On 10/26/16 12:13 PM, Offray Vladimir Luna Cárdenas wrote:


Hi,

On the issue of contributing to Free, Libre, Open Source Software (FLOSS) projects, I have been reading recently Nadia Eghbal and her analysis that confirm that most FLOSS projects are done by individuals and small teams, which is contrary to the bazaar narrative. This comic shows the point:

and you can find more details here: https://medium.com/@nayafia/what-success-really-looks-like-in-open-source-2dd1facaf91c#.e360z53sf

After skimming the actual article and finding that the points made in the article are valid I would have wished that the right panel in the cartoon had said "one more pull request before going to bed" since that is closer to what the article is about ... an active, community that contributes is also an important component and something that Pharo/Smalltalk community does indeed have.

Dale



a30b1785e8edc540_0.1.1 (443K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: The Ultimate Smalltalk Tutorial

Offray Vladimir Luna Cárdenas-2
In reply to this post by Vitor Medina Cruz

Hi,


On 27/10/16 07:03, Vitor Medina Cruz wrote:

[...]
 

I think it is hard for someone that already internalize the concept of image and self contained environment to understand why this confusion is happening, but when you come to think about it that is not so strange because people are used to files and all those crap static stuff, so it is kind of a huge paradigm shift learning Pharo: it is confusing for them. 


In my case, the best literature for helping me to overcome the strangeness of the image concept and Smalltalk in general was not any tutorial or Smalltalk programming book, it was the PhD thesis "Tracing the Dynabook: a study of technocultural transformations" by John W. Maxwell [1]. It was until I read it that I understood I was making the wrong comparisons. I was trying to compare Squeak to other programming languages, but the proper comparison was against Operative Systems and so what was alien and complicated became simple. Smalltalk was this blend of OS + language + IDE + DVCS + App + Docs, without all the complexity of "the everything is a file" mantra of the Unix legacy approach. In fact if you have the previous combination the complexity explodes.

[1] https://open.library.ubc.ca/cIRcle/collections/ubctheses/831/items/1.0055157

In this alternative curriculum for critical code+data literacy, starting with history instead of (dumb) "hello world"[2] is very appreciated and a different connection point for several disciplines: philosophy, journalism, science, activism and even programming, because once they get the idea that Smalltalk was the thing that would make alto/dynabook computers work (as Unix and its legacy is the thing that makes PC/Macs work) the new paradigm becomes less alien and the start to wonder why we have this single narrative of computing.

[2] http://mutabit.com/offray/blog/en/entry/dumb-hello-world

I think that is important to share this educational questions and perspectives for richer entry points to this community for programmers and non-programmers, so thanks Vitor for sparking this conversation.

Here is a small capture of our mind map used to introduce the curriculum I was talking in this thread, to contrast the two traditions of computing and their mantras, Unix "everything is a file" and Dynabook/Smalltalk "everything is an object"  (now the challenge is to bridge them):



(The full mind map is at [3] http://mutabit.com/repos.fossil/grafoscopio/doc/tip/Docs/Es/Presentaciones/grafoscopio.pdf )

Cheers,

Offray

123