Learning With D

Daniel Gibson metalcaedes at gmail.com
Sun May 22 16:36:06 PDT 2011


Am 23.05.2011 01:29, schrieb Ali Çehreli:
> On 05/21/2011 11:12 PM, Jesse Phillips wrote:
> 
>> I started writing what I hoped would turn into a fairly
>> complete book.
> 
> Thank you for doing this! :)
> 
>> This book is intended to teach programming from the ground
>> up.
> 
> I have some experience in doing the same. Just like teaching in the
> classroom, no matter what style or detail has been chosen, readers will
> find the material anywhere from very easy to exteremly difficult. :)
> 
> One (draft of an) article on teaching programming that had struck a
> chord with me has been
> 
>   http://www.cs.mdx.ac.uk/research/PhDArea/saeed/paper1.pdf
> 
> They divide the students in three groups. They argue that the ones that
> are successful in programming are the ones who can form consistent
> models for unknown phenomena. (Not their exact words, but what I got out
> of the paper.)
> 
>> We all know D would make a very good first language
> 
> Agreed. Although there are so many high level concepts in the language,
> starting to write simple programs is very easy. For example, one can go
> a long way without even knowing that pointers exist. Additionally,
> having to introduce the concept of a reference type earlier makes it
> easy to explain pointers later on.
> 

I think explaining pointers first (including "you have to dereference it
to get to the thing it's pointing at", to show the difference between
pointer and pointee) may be a better idea.
After that you can say "and objects of classes are reference types, they
behave like pointers but don't need all the ugly syntax"

And I think http://www.youtube.com/watch?v=i49_SNt4yfk is a great video
explaining pointers ;)

>> And I really want the user to go from first time "Python"
>> programmer to basic "C" programmer.
> 
> I think, that is a more accurate description than the one in Chapter 1:
> "(expected starting experience of none)". I can imagine that some people
> will find your book a little too fast. (And others will find it too
> slow! :))
> 
>> One approach that I think many will like is the Common Errors
>> sections which is meant to help people identify what the
>> compiler is saying when things go wrong.
> 
> That is going to be very helpful.
> 
> Thank you,
> Ali
> 



More information about the Digitalmars-d-announce mailing list