Dear Somon, Gerard and All,

perhaps orthogonal to Simon's first time programmers vs. familiar with
another language observation, in my experience there's a trade-off between
getting something "interersting" quickly vs. learning how to build something
usable and reliably. The half-day format of the SWC lessons probably make
some compromise between these two rather inevitable.

When using the "top down" approach of starting with a prepared piece of
working code, I'd suggest that learners should be made aware that code
is normally developed from scratch, rather than by modifying existing code,
and encouraged / empowered to "reversely engineer" how the example code
was developed in the first place.

Best regards, Jan


On Mon, Nov 14, 2016 at 09:01:27AM +0000, Gerard Capes wrote:
> This sounds very much like the discussion of whole-language vs phonetics 
> approach to teaching children to read, which forms part of the instructor 
> training. The summary for that example is that it doesn't matter - you just 
> need to be enthusiastic.
> 
> On 13/11/16 12:48, Waldman, Simon wrote:
> 
> Again, this is anecdotal and only my own very limited experience: But I think 
> that top-down is *far* superior for people new to programming, but bottom-up 
> may be appreciated by people who already know (an)other language(s) and 
> simply want to know how familiar things work in this one.
> 
> 
> 
> -----Original Message-----
> From: Discuss [mailto:[email protected]] On
> Behalf Of Pat Schloss
> Sent: 11 November 2016 20:25
> To: Peter Teuben
> Cc: Software Carpentry Discussion
> Subject: Re: [Discuss] top down vs. bottom up teaching python?
> 
> I’ve done both with teaching R. I don’t have any data, but I far prefer the
> top-down approach.
> 
> My version of top-down is to give them code that works to make a standard
> plot. That lets them make something tangible in the first 5 minutes. I then
> have them look at the code and ask how they would change colors, plotting
> symbols, etc. Then I ask them how they would make a new plot using a
> different column from the data file. I then wash, rinse, repeat building in 
> new
> programming concepts to do different analyses and methods of visualizing
> data. I far prefer this approach over building up from “Hello World” because
> they get going immediately and because that’s how many of us learned to
> program. At least for me, I learned by taking code that someone else
> generated to do a task and hacked at it to suit my needs. Whenever I find a
> new package, I take their vignette and hack at it to learn how the functions
> work.
> 
> It seems like most programming books are bottom-up while more domain-
> specific materials are top-down. I agree that it would be very interesting to
> hear other opinions and whether there are any data supporting one strategy
> or another…
> 
> Pat
> 
> 
> 
> 
> On Nov 11, 2016, at 3:07 PM, Peter Teuben 
> <[email protected]><mailto:[email protected]> wrote:
> 
> 
> forgive me if this is something covered before but I'd like to contrast two
> 
> 
> opposite ways of teaching a language
> 
> 
> 
> What i mean is to teach something like python, you can go through the
> 
> 
> rigorous language elements (which can be pretty boring) and build up your
> skills to the level that you can program. This I would call a bottom up style.
> 
> 
> 
> The other approach is you pick a problem in the field of your students (in
> 
> 
> my case astronomy, so my example may not work for biology students), and
> disect it and teach them the language elements as you go. I would call this
> top down.
> 
> 
> 
> Has this approach been tried and has it been found at least equally good?
> 
> 
> Of course the huge drawback is that it only applies to a small group of
> students. I'm curious to try this.
> 
> 
> 
> 
> - peter
> 
> _______________________________________________
> Discuss mailing list
> [email protected]<mailto:[email protected]>
> http://lists.software-carpentry.org/listinfo/discuss
> 
> 
> 
> _______________________________________________
> Discuss mailing list
> [email protected]<mailto:[email protected]>
> http://lists.software-carpentry.org/listinfo/discuss
> 
> 
> ________________________________
> 
> Founded in 1821, Heriot-Watt is a leader in ideas and solutions. With 
> campuses and students across the entire globe we span the world, delivering 
> innovation and educational excellence in business, engineering, design and 
> the physical, social and life sciences.
> 
> The contents of this e-mail (including any attachments) are confidential. If 
> you are not the intended recipient of this e-mail, any disclosure, copying, 
> distribution or use of its contents is strictly prohibited, and you should 
> please notify the sender immediately and then delete it (including any 
> attachments) from your system.
> _______________________________________________
> Discuss mailing list
> [email protected]<mailto:[email protected]>
> http://lists.software-carpentry.org/listinfo/discuss
> 
> --
> Gerard Capes
> Research Applications, IT Services, University Of Manchester
> 0161 306 2509
> 
> Ten tips for writing excellent 
> emails<http://www.expert-messaging.com/feedbacktips/>

> _______________________________________________
> Discuss mailing list
> [email protected]
> http://lists.software-carpentry.org/listinfo/discuss


-- 
 +- Jan T. Kim -------------------------------------------------------+
 |             email: [email protected]                                |
 |             WWW:   http://www.jtkim.dreamhosters.com/              |
 *-----=<  hierarchical systems are for files, not for humans  >=-----*
_______________________________________________
Discuss mailing list
[email protected]
http://lists.software-carpentry.org/listinfo/discuss

Reply via email to