Hello, Im and a litle confused. Can you help me get started please?
Hello, Folks. As is wrote in the title, I`m somewhat confused. I`m new to programming but I think I understood what OOP is, yessterday before I discovered Pharo, was I was able to build a simple city model in Visual Studio (C#), with a city class which was build out of other classes wich were build out of other classes. City<-District<-Street<-House<-Room. So I get the idea that we want to discribe real world systems as network of objects to be able to solve problems within givin system. However I have a super hard time to grasp Pharo for some reason. What I understood so far is that everything is an object even the classes it self, wich is super cool by the way. I understand that as I use Pharo I have to use the libaries aswell since there is no clear cut between language and package. I know the browser to a slight degree and I read allready a bit code from some objects and methods. But then when i try to call some methods from the classes there I fail 90% of the time. I did not find much learning material online. Only a couple talks on Pharo and one or two text based tutorials wich were unfortunatly pretty old, version 1.5 or something like this. So I really want to dig into this wonderfull subject as the concept seems fascinating to me. I believe it can be a powerfull tool especially with the abillity to change things runtime. I`d be glad to get a little advice on how to start. Cheers -- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
Hi Photon, A good place to start would be http://pharo.org/ <http://pharo.org/> and then look for the link to the Pharo Mooc. Cheers, James
On Jan 8, 2018, at 12:54 AM, Photon <nico-braun@live.de> wrote:
Hello, Folks. As is wrote in the title, I`m somewhat confused. I`m new to programming but I think I understood what OOP is, yessterday before I discovered Pharo, was I was able to build a simple city model in Visual Studio (C#), with a city class which was build out of other classes wich were build out of other classes. City<-District<-Street<-House<-Room. So I get the idea that we want to discribe real world systems as network of objects to be able to solve problems within givin system.
However I have a super hard time to grasp Pharo for some reason. What I understood so far is that everything is an object even the classes it self, wich is super cool by the way. I understand that as I use Pharo I have to use the libaries aswell since there is no clear cut between language and package. I know the browser to a slight degree and I read allready a bit code from some objects and methods. But then when i try to call some methods from the classes there I fail 90% of the time.
I did not find much learning material online. Only a couple talks on Pharo and one or two text based tutorials wich were unfortunatly pretty old, version 1.5 or something like this. So I really want to dig into this wonderfull subject as the concept seems fascinating to me. I believe it can be a powerfull tool especially with the abillity to change things runtime.
I`d be glad to get a little advice on how to start. Cheers
-- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
Hi, welcome to Pharo! This is the development list for Pharo; your question is better suited for the users list ( http://lists.pharo.org/mailman/listinfo/pharo-users_lists.pharo.org). There's also a very active Discord community: http://discord.gg/Sj2rhxn. As for documentation, there are loads of tutorials and screencasts here: http://pharo.org/documentation. Cheers, Max On 8 January 2018 at 09:55:23, Photon (nico-braun@live.de) wrote: Hello, Folks. As is wrote in the title, I`m somewhat confused. I`m new to programming but I think I understood what OOP is, yessterday before I discovered Pharo, was I was able to build a simple city model in Visual Studio (C#), with a city class which was build out of other classes wich were build out of other classes. City<-District<-Street<-House<-Room. So I get the idea that we want to discribe real world systems as network of objects to be able to solve problems within givin system. However I have a super hard time to grasp Pharo for some reason. What I understood so far is that everything is an object even the classes it self, wich is super cool by the way. I understand that as I use Pharo I have to use the libaries aswell since there is no clear cut between language and package. I know the browser to a slight degree and I read allready a bit code from some objects and methods. But then when i try to call some methods from the classes there I fail 90% of the time. I did not find much learning material online. Only a couple talks on Pharo and one or two text based tutorials wich were unfortunatly pretty old, version 1.5 or something like this. So I really want to dig into this wonderfull subject as the concept seems fascinating to me. I believe it can be a powerfull tool especially with the abillity to change things runtime. I`d be glad to get a little advice on how to start. Cheers -- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
On 8 January 2018 at 16:54, Photon <nico-braun@live.de> wrote:
Hello, Folks. As is wrote in the title, I`m somewhat confused. I`m new to programming but I think I understood what OOP is, yessterday before I discovered Pharo, was I was able to build a simple city model in Visual Studio (C#), with a city class which was build out of other classes wich were build out of other classes. City<-District<-Street<-House<-Room. So I get the idea that we want to discribe real world systems as network of objects to be able to solve problems within givin system.
However I have a super hard time to grasp Pharo for some reason. What I understood so far is that everything is an object even the classes it self, wich is super cool by the way. I understand that as I use Pharo I have to use the libaries aswell since there is no clear cut between language and package. I know the browser to a slight degree and I read allready a bit code from some objects and methods. But then when i try to call some methods from the classes there I fail 90% of the time.
Be aware that there are methods on the "instance-side" of a class and also on the "class-side" of a class. One way to think about the class-side is as an implementation of the Factory Pattern. Since classes are objects too, essentially every class in the system has an associated factory-object. An important class-side factory method is #new. Send this to a class to get an instance of that class, on which you can invoke instance-side methods.
I did not find much learning material online. Only a couple talks on Pharo and one or two text based tutorials wich were unfortunatly pretty old, version 1.5 or something like this. So I really want to dig into this wonderfull subject as the concept seems fascinating to me. I believe it can be a powerfull tool especially with the abillity to change things runtime.
I`d be glad to get a little advice on how to start.
Do the MOOC and the Pharo By Example book. http://pharo.org/documentation cheers -ben
You can access all the material of the Pharo Mooc at http://mooc.pharo.org If you can something in C# you should be able to do it in Pharo simply too. I do not understand your City<-District notation but if it means that a city has many districts here is the way we express it in Pharo Object subclass: #City instanceVariableNames: 'districts' City >> initialize super initialize. districts := OrderedCollection new. City >> addDistrict: aDistrict districts add: aDistrict Object subclass: #District instanceVariableNames: '...' You may want to read my latest book on Understanding OOP in Pharo available at http://books.pharo.org Good luck Stef On Mon, Jan 8, 2018 at 9:54 AM, Photon <nico-braun@live.de> wrote:
Hello, Folks. As is wrote in the title, I`m somewhat confused. I`m new to programming but I think I understood what OOP is, yessterday before I discovered Pharo, was I was able to build a simple city model in Visual Studio (C#), with a city class which was build out of other classes wich were build out of other classes. City<-District<-Street<-House<-Room. So I get the idea that we want to discribe real world systems as network of objects to be able to solve problems within givin system.
However I have a super hard time to grasp Pharo for some reason. What I understood so far is that everything is an object even the classes it self, wich is super cool by the way. I understand that as I use Pharo I have to use the libaries aswell since there is no clear cut between language and package. I know the browser to a slight degree and I read allready a bit code from some objects and methods. But then when i try to call some methods from the classes there I fail 90% of the time.
I did not find much learning material online. Only a couple talks on Pharo and one or two text based tutorials wich were unfortunatly pretty old, version 1.5 or something like this. So I really want to dig into this wonderfull subject as the concept seems fascinating to me. I believe it can be a powerfull tool especially with the abillity to change things runtime.
I`d be glad to get a little advice on how to start. Cheers
-- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
Wow im mindblown. The famous Stephane Ducasse answered me himself :) I watched a couple of talk you gave on Pharo. I followed your dice example wich helped me alot to understand. By now im much more into it then a few days ago when i wrote my request. Still I`m new to programming so I cant do anything usefull yet. For my example with the city i I meant that each class contained a dynamic list of other classes like city had a member districts wich was a list of district classes and so on. I`m not even sure if that is a good thing to do or if a real developer would realize the city mode in a different way. Anyways I feel like i know how to proceed now, and have a bit better understanding of the syntax and this whole object-message concept. Thank you for your reply mr Ducasse ;) -- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
You are welcome :) Take the time and learn. Pharoers are nice. And get better and better and Pharo will change your life and your way to program in any OOP language. The "learning OOP" book that I wrote can teach you already some nice parts of OOP http://books.pharo.org Stef On Wed, Jan 10, 2018 at 3:38 PM, Photon <nico-braun@live.de> wrote:
Wow im mindblown. The famous Stephane Ducasse answered me himself :) I watched a couple of talk you gave on Pharo. I followed your dice example wich helped me alot to understand. By now im much more into it then a few days ago when i wrote my request. Still I`m new to programming so I cant do anything usefull yet.
For my example with the city i I meant that each class contained a dynamic list of other classes like city had a member districts wich was a list of district classes and so on. I`m not even sure if that is a good thing to do or if a real developer would realize the city mode in a different way.
Anyways I feel like i know how to proceed now, and have a bit better understanding of the syntax and this whole object-message concept. Thank you for your reply mr Ducasse ;)
-- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
oh yes I allready started with the book as I decided that it looked the most usefull and complete of the available material online. I did not know that you wrote it. TDD is a fun topic aswell. I have a little question tho. Am I supossed to know all the answers in Chapter 3 challenges? Should I redo chapter 1-2 untill I know all the answers? Cheers -- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
Hi,
Le 11 janv. 2018 à 11:35, Photon <nico-braun@live.de> a écrit :
oh yes I allready started with the book as I decided that it looked the most usefull and complete of the available material online. I did not know that you wrote it. TDD is a fun topic aswell. I have a little question tho. Am I supossed to know all the answers in Chapter 3 challenges? Should I redo chapter 1-2 untill I know all the answers?
I think you should be able to answer most questions of the chapter 3 before going further. Be able to identify messages, literals and evaluating basic expressions is really important. If you only miss a few answers, it is not a big deal. They will come with experience. My advice would be to not only re-read the book but use Pharo playground / inspector in the same time to try the examples and find out similar ones. Regards, Christophe
Since the syntax of pharo is heavly based on messages, it is important for you to spot them. Stef On Thu, Jan 11, 2018 at 1:58 PM, Christophe Demarey <christophe.demarey@inria.fr> wrote:
Hi,
Le 11 janv. 2018 à 11:35, Photon <nico-braun@live.de> a écrit :
oh yes I allready started with the book as I decided that it looked the most usefull and complete of the available material online. I did not know that you wrote it. TDD is a fun topic aswell. I have a little question tho. Am I supossed to know all the answers in Chapter 3 challenges? Should I redo chapter 1-2 untill I know all the answers?
I think you should be able to answer most questions of the chapter 3 before going further. Be able to identify messages, literals and evaluating basic expressions is really important. If you only miss a few answers, it is not a big deal. They will come with experience. My advice would be to not only re-read the book but use Pharo playground / inspector in the same time to try the examples and find out similar ones.
Regards, Christophe
You got a secret weapon A nuclear weapon The ability to ask questions. Anything you donât understand ask a question Anything you think you understand ask a question Anything you sure you understand ask a question Then keep asking until you fill the mailing lists with question People hate asking questions but the love answering them ;) On Mon, 8 Jan 2018 at 10:55, Photon <nico-braun@live.de> wrote:
Hello, Folks. As is wrote in the title, I`m somewhat confused. I`m new to programming but I think I understood what OOP is, yessterday before I discovered Pharo, was I was able to build a simple city model in Visual Studio (C#), with a city class which was build out of other classes wich were build out of other classes. City<-District<-Street<-House<-Room. So I get the idea that we want to discribe real world systems as network of objects to be able to solve problems within givin system.
However I have a super hard time to grasp Pharo for some reason. What I understood so far is that everything is an object even the classes it self, wich is super cool by the way. I understand that as I use Pharo I have to use the libaries aswell since there is no clear cut between language and package. I know the browser to a slight degree and I read allready a bit code from some objects and methods. But then when i try to call some methods from the classes there I fail 90% of the time.
I did not find much learning material online. Only a couple talks on Pharo and one or two text based tutorials wich were unfortunatly pretty old, version 1.5 or something like this. So I really want to dig into this wonderfull subject as the concept seems fascinating to me. I believe it can be a powerfull tool especially with the abillity to change things runtime.
I`d be glad to get a little advice on how to start. Cheers
-- Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
participants (7)
-
Ben Coman -
Christophe Demarey -
Dimitris Chloupis -
James Foster -
Max Leske -
Photon -
Stephane Ducasse