Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Tim Mackinnon
Actually - I’ve been making good progress on Exercism (with help from Ben and 
Sam) - we can almost come out of alpha (but just need more exercises converted 
- not sure exactly what the limit is, but 22 isn’t quite enough).

I’m just tuning the tooling - and putting some bits in place so that its easier 
for others to help convert exercises - as well as some tools to help with 
mentoring (e.g. I can load snapshots of user submissions, but would love to 
figure out how to re-use our diff browser). I’m hoping to get a bit of input at 
Pharo days, to just nail it.

Anyway - if you want to try it - follow the instructions here: 
https://github.com/exercism/pharo-smalltalk 
 (the top section outlines how to 
setup, the bottom is for contributors - but best to have tried it out first 
before taking that plunge).

The example that triggered this off was seeing some of the beta testers 
struggle with: 
https://github.com/exercism/pharo-smalltalk/blob/master/dev/src/Exercism/TournamentTest.class.st
 

 - a rather innocuous exercise, but actually the first one that wasn’t just an 
algorithmic several lines of code.

Thanks for for everyone’s input - I think I’m getting some ideas for material 
to put into the site, and possibly something to add to the hints for that 
exercise.

Tim


> On 26 Mar 2019, at 14:20, Christopher Fuhrman  
> wrote:
> 
> Finally - I'm not familiar with exercism exercises (I signed up but saw that 
> smalltalk is still in alpha). Is there a sneak peak of an example exercise?



Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Sean P. DeNigris
Tim Mackinnon wrote
> Has anyone else got any thoughts?

I think Dan North's Behavior Driven Development stuff is great and covers
both OOP and TDD. The code is in Ruby, but the concepts IMHO are on the
money. For me, the holy grail of OOP books is A Mentoring Course on
Smalltalk, but I definitely wouldn't consider it "lightweight" ha ha. I'm
sure there are others, but that's off the top of my head...



-
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html



Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Christopher Fuhrman
On Tue, 26 Mar 2019 at 10:17, Tim Mackinnon  wrote:

> Wasn’t there something that encouraged you to underline the nouns and
> circle the verbs and then start to identify objects and responsibilities?
> Its that kind of thing I am starting to see as the weak point in people
> approaching problems.
>

That's the Booch method which Larman mentions as the noun-phrase
identification (I actually learned that in 1986 in my first Ada course).
See slide 22 or so at
http://stg-tud.github.io/eise/WS11-EiSE-07-Domain_Modeling.pdf

You could/should cherry-pick Larman's book (there's way too much there even
for one course). There are all the references to Resp-Driven Design and
even a lightweight "domain model" pattern (which doesn't have separate
conceptual classes) from Fowler.
https://martinfowler.com/eaaCatalog/domainModel.html

In my courses I get a lot of mileage from just the two GRASP patterns (that
come from Wirfs-Brock et al if I'm not mistaken): Information Expert

and Creator, but the latter is easier to apply if you have a domain model
as a separate artifact.

IMO the older approaches to OO design get in to trouble today especially
when 1) most objects use composition (an not inheritance with polymorphism,
although it's very powerful for extending programs) and 2) inheritance is
hard to get right the first time (and is difficult to change). There's real
power in refactoring to patterns (e.g., )

There's the CRC method that Horstmann presents, too (I think that's what
Pharo even recommends in the Class Comment template). Booch and CRC are
mentioned on this page:
http://www.cs.fsu.edu/~myers/cop3331/notes/analysis1.html

Finally - I'm not familiar with exercism exercises (I signed up but saw
that smalltalk is still in alpha). Is there a sneak peak of an example
exercise?

Cris


>
> Tim
>
> On 24 Mar 2019, at 22:47, Christopher Fuhrman <
> christopher.fuhr...@gmail.com> wrote:
>
> On Sun, 24 Mar 2019 at 21:26, Tim Mackinnon  wrote:
>
>> Any good references come to mind? As I’ll build up a list that I can
>> point people to, that hopefully puts them in a better place to solve these
>> more interesting and hopefully rewarding problems.
>>
>
> Since 2003 in one of my courses I've used Craig Larman's Applying UML and
> Patterns because it has an analysis approach (getting from a semi-complex
> problem to a working OO solution in iterations, with UML if you want). It's
> using the Point Of Sale (cash register) problem which is complex yet
> familiar enough for most people to grasp (no pun intended, GRASP are the
> patterns he pushes as underlying responsibility-driven principles).
>
> Otherwise, Cay Horstmann's 3rd edition of OO Design and Patterns (Java,
> but applies to any OO language) should be out soon (I provided feedback on
> a draft copy last year). It has some good coverage of OO qualities and also
> uses a realistic problem (Graphics Editing framework, Violet) as the basis
> of lots of examples.
>
>
>


Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Tim Mackinnon
Thanks, I recall the Wires-Brock books been pretty good, its a shame you can’t 
preview any of them (and mine are in a box in my attic somewhere). 
Unfortunately I can’t imagine that students first staring out will want to 
invest - but maybe I can find something that might fill the gap leading to 
those.

Tim


> On 26 Mar 2019, at 11:06, Stephan Eggermont  wrote:
> 
> Tim Mackinnon  wrote:
>> As I see Exercism students grapple with more realistic, I am wondering
>> what we point people towards to learn about OO, identifying objects and
>> more importantly responsibilities these days?
>> 
>> There is the early Beck CRC paper - but looking at it again, I wonder if
>> its a bit cursory for people who missed the whole OO discovery years ago,
>> and are now faced with competing advice on how to write good programs
>> (much of which seems to eschew OO these days - rather unfairly I think).
>> 
>> Any good references come to mind? As I’ll build up a list that I can
>> point people to, that hopefully puts them in a better place to solve
>> these more interesting and hopefully rewarding problems.
> 
> Rebecca Wirfs-Brock and Alan McKean (2002) Object Design, Roles,
> Responsibilities, and Collaborations?
> 
> Stephan
> 
> 
> 
> 




Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Stephan Eggermont
Tim Mackinnon  wrote:
> As I see Exercism students grapple with more realistic, I am wondering
> what we point people towards to learn about OO, identifying objects and
> more importantly responsibilities these days?
> 
> There is the early Beck CRC paper - but looking at it again, I wonder if
> its a bit cursory for people who missed the whole OO discovery years ago,
> and are now faced with competing advice on how to write good programs
> (much of which seems to eschew OO these days - rather unfairly I think).
> 
> Any good references come to mind? As I’ll build up a list that I can
> point people to, that hopefully puts them in a better place to solve
> these more interesting and hopefully rewarding problems.

Rebecca Wirfs-Brock and Alan McKean (2002) Object Design, Roles,
Responsibilities, and Collaborations?

Stephan






Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Tim Mackinnon
Thanks, I looked at that one - the title is right, but it’s more a tutorial 
where you type in code and follow along (and nothing wrong with that) - but I’m 
looking for something that teaches/helps you translate a problem domain into 
the sea of objects we are all accustomed to. And also gets to to the point 
quickly so that users can apply this to a problem they are trying to solve.

I’m now thinking that maybe Chapter 1 of 
http://sdmeta.gforge.inria.fr/FreeBooks/InsideST/InsideSmalltalk.pdf 
 is 
pretty good (using a video game). 

Tim

> On 26 Mar 2019, at 10:44, Christophe Demarey  
> wrote:
> 
> http://books.pharo.org/learning-oop/  ?
> 
>> Le 26 mars 2019 à 11:09, Tim Mackinnon > > a écrit :
>> 
>> Looking a bit further - Chapter 3 of: 
>> http://sdmeta.gforge.inria.fr/FreeBooks/STandOO/Smalltalk-and-OO.pdf 
>>  
>> (Smalltalk and Object Orientation - Hunt) gets me a bit closer, but still 
>> thinking I’ve seen better somewhere.
>> 
>> Tim
>> 
>>> On 26 Mar 2019, at 09:16, Tim Mackinnon >> > wrote:
>>> 
>>> Has anyone else got any thoughts? I checked out the Larman book - but it 
>>> seems very process heavy (probably excellent for a full blown course), 
>>> while I’m looking for something a bit lighter weight to guide students on 
>>> the right way of thinking/approaching the little problems in Exercism.
>>> 
>>> Wasn’t there something that encouraged you to underline the nouns and 
>>> circle the verbs and then start to identify objects and responsibilities? 
>>> Its that kind of thing I am starting to see as the weak point in people 
>>> approaching problems.
>>> 
>>> Tim
>>> 
 On 24 Mar 2019, at 22:47, Christopher Fuhrman 
 mailto:christopher.fuhr...@gmail.com>> 
 wrote:
 
 On Sun, 24 Mar 2019 at 21:26, Tim Mackinnon >>> > wrote:
 Any good references come to mind? As I’ll build up a list that I can point 
 people to, that hopefully puts them in a better place to solve these more 
 interesting and hopefully rewarding problems.
 
 Since 2003 in one of my courses I've used Craig Larman's Applying UML and 
 Patterns because it has an analysis approach (getting from a semi-complex 
 problem to a working OO solution in iterations, with UML if you want). 
 It's using the Point Of Sale (cash register) problem which is complex yet 
 familiar enough for most people to grasp (no pun intended, GRASP are the 
 patterns he pushes as underlying responsibility-driven principles). 
 
 Otherwise, Cay Horstmann's 3rd edition of OO Design and Patterns (Java, 
 but applies to any OO language) should be out soon (I provided feedback on 
 a draft copy last year). It has some good coverage of OO qualities and 
 also uses a realistic problem (Graphics Editing framework, Violet) as the 
 basis of lots of examples.  
>>> 
>> 
> 



Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Christophe Demarey
http://books.pharo.org/learning-oop/ ?

> Le 26 mars 2019 à 11:09, Tim Mackinnon  a écrit :
> 
> Looking a bit further - Chapter 3 of: 
> http://sdmeta.gforge.inria.fr/FreeBooks/STandOO/Smalltalk-and-OO.pdf 
>  
> (Smalltalk and Object Orientation - Hunt) gets me a bit closer, but still 
> thinking I’ve seen better somewhere.
> 
> Tim
> 
>> On 26 Mar 2019, at 09:16, Tim Mackinnon > > wrote:
>> 
>> Has anyone else got any thoughts? I checked out the Larman book - but it 
>> seems very process heavy (probably excellent for a full blown course), while 
>> I’m looking for something a bit lighter weight to guide students on the 
>> right way of thinking/approaching the little problems in Exercism.
>> 
>> Wasn’t there something that encouraged you to underline the nouns and circle 
>> the verbs and then start to identify objects and responsibilities? Its that 
>> kind of thing I am starting to see as the weak point in people approaching 
>> problems.
>> 
>> Tim
>> 
>>> On 24 Mar 2019, at 22:47, Christopher Fuhrman 
>>> mailto:christopher.fuhr...@gmail.com>> 
>>> wrote:
>>> 
>>> On Sun, 24 Mar 2019 at 21:26, Tim Mackinnon >> > wrote:
>>> Any good references come to mind? As I’ll build up a list that I can point 
>>> people to, that hopefully puts them in a better place to solve these more 
>>> interesting and hopefully rewarding problems.
>>> 
>>> Since 2003 in one of my courses I've used Craig Larman's Applying UML and 
>>> Patterns because it has an analysis approach (getting from a semi-complex 
>>> problem to a working OO solution in iterations, with UML if you want). It's 
>>> using the Point Of Sale (cash register) problem which is complex yet 
>>> familiar enough for most people to grasp (no pun intended, GRASP are the 
>>> patterns he pushes as underlying responsibility-driven principles). 
>>> 
>>> Otherwise, Cay Horstmann's 3rd edition of OO Design and Patterns (Java, but 
>>> applies to any OO language) should be out soon (I provided feedback on a 
>>> draft copy last year). It has some good coverage of OO qualities and also 
>>> uses a realistic problem (Graphics Editing framework, Violet) as the basis 
>>> of lots of examples.  
>> 
> 



Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Tim Mackinnon
Looking a bit further - Chapter 3 of: 
http://sdmeta.gforge.inria.fr/FreeBooks/STandOO/Smalltalk-and-OO.pdf 
 
(Smalltalk and Object Orientation - Hunt) gets me a bit closer, but still 
thinking I’ve seen better somewhere.

Tim

> On 26 Mar 2019, at 09:16, Tim Mackinnon  wrote:
> 
> Has anyone else got any thoughts? I checked out the Larman book - but it 
> seems very process heavy (probably excellent for a full blown course), while 
> I’m looking for something a bit lighter weight to guide students on the right 
> way of thinking/approaching the little problems in Exercism.
> 
> Wasn’t there something that encouraged you to underline the nouns and circle 
> the verbs and then start to identify objects and responsibilities? Its that 
> kind of thing I am starting to see as the weak point in people approaching 
> problems.
> 
> Tim
> 
>> On 24 Mar 2019, at 22:47, Christopher Fuhrman > > wrote:
>> 
>> On Sun, 24 Mar 2019 at 21:26, Tim Mackinnon > > wrote:
>> Any good references come to mind? As I’ll build up a list that I can point 
>> people to, that hopefully puts them in a better place to solve these more 
>> interesting and hopefully rewarding problems.
>> 
>> Since 2003 in one of my courses I've used Craig Larman's Applying UML and 
>> Patterns because it has an analysis approach (getting from a semi-complex 
>> problem to a working OO solution in iterations, with UML if you want). It's 
>> using the Point Of Sale (cash register) problem which is complex yet 
>> familiar enough for most people to grasp (no pun intended, GRASP are the 
>> patterns he pushes as underlying responsibility-driven principles). 
>> 
>> Otherwise, Cay Horstmann's 3rd edition of OO Design and Patterns (Java, but 
>> applies to any OO language) should be out soon (I provided feedback on a 
>> draft copy last year). It has some good coverage of OO qualities and also 
>> uses a realistic problem (Graphics Editing framework, Violet) as the basis 
>> of lots of examples.  
> 



Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-26 Thread Tim Mackinnon
Has anyone else got any thoughts? I checked out the Larman book - but it seems 
very process heavy (probably excellent for a full blown course), while I’m 
looking for something a bit lighter weight to guide students on the right way 
of thinking/approaching the little problems in Exercism.

Wasn’t there something that encouraged you to underline the nouns and circle 
the verbs and then start to identify objects and responsibilities? Its that 
kind of thing I am starting to see as the weak point in people approaching 
problems.

Tim

> On 24 Mar 2019, at 22:47, Christopher Fuhrman  
> wrote:
> 
> On Sun, 24 Mar 2019 at 21:26, Tim Mackinnon  wrote:
> Any good references come to mind? As I’ll build up a list that I can point 
> people to, that hopefully puts them in a better place to solve these more 
> interesting and hopefully rewarding problems.
> 
> Since 2003 in one of my courses I've used Craig Larman's Applying UML and 
> Patterns because it has an analysis approach (getting from a semi-complex 
> problem to a working OO solution in iterations, with UML if you want). It's 
> using the Point Of Sale (cash register) problem which is complex yet familiar 
> enough for most people to grasp (no pun intended, GRASP are the patterns he 
> pushes as underlying responsibility-driven principles). 
> 
> Otherwise, Cay Horstmann's 3rd edition of OO Design and Patterns (Java, but 
> applies to any OO language) should be out soon (I provided feedback on a 
> draft copy last year). It has some good coverage of OO qualities and also 
> uses a realistic problem (Graphics Editing framework, Violet) as the basis of 
> lots of examples.  



Re: [Pharo-users] What oo/modelling books/articles do we recommend these days?

2019-03-24 Thread Christopher Fuhrman
On Sun, 24 Mar 2019 at 21:26, Tim Mackinnon  wrote:

> Any good references come to mind? As I’ll build up a list that I can point
> people to, that hopefully puts them in a better place to solve these more
> interesting and hopefully rewarding problems.
>

Since 2003 in one of my courses I've used Craig Larman's Applying UML and
Patterns because it has an analysis approach (getting from a semi-complex
problem to a working OO solution in iterations, with UML if you want). It's
using the Point Of Sale (cash register) problem which is complex yet
familiar enough for most people to grasp (no pun intended, GRASP are the
patterns he pushes as underlying responsibility-driven principles).

Otherwise, Cay Horstmann's 3rd edition of OO Design and Patterns (Java, but
applies to any OO language) should be out soon (I provided feedback on a
draft copy last year). It has some good coverage of OO qualities and also
uses a realistic problem (Graphics Editing framework, Violet) as the basis
of lots of examples.