Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #61380 > unrolled thread
| Started by | Oscar Benjamin <oscar.j.benjamin@gmail.com> |
|---|---|
| First post | 2013-12-09 12:23 +0000 |
| Last post | 2014-01-29 03:09 +0000 |
| Articles | 20 on this page of 130 — 29 participants |
Back to article view | Back to comp.lang.python
Experiences/guidance on teaching Python as a first programming language Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-12-09 12:23 +0000
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-09 05:54 -0800
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-09 08:57 -0800
Re: Experiences/guidance on teaching Python as a first programming language William Ray Wing <wrw@mac.com> - 2013-12-09 12:55 -0500
Re: Experiences/guidance on teaching Python as a first programming language Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-12-10 18:25 +1300
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-10 16:55 +1100
Re: Experiences/guidance on teaching Python as a first programming language Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-12-11 10:38 +1300
Re: Experiences/guidance on teaching Python as a first programming language Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-12-10 20:35 -0500
Re: Experiences/guidance on teaching Python as a first programming language Denis McMahon <denismfmcmahon@gmail.com> - 2013-12-11 02:16 +0000
Re: Experiences/guidance on teaching Python as a first programming language Larry Martell <larry.martell@gmail.com> - 2013-12-11 07:08 -0500
Re: Experiences/guidance on teaching Python as a first programming language Grant Edwards <invalid@invalid.invalid> - 2013-12-11 15:05 +0000
Re: Experiences/guidance on teaching Python as a first programming language Rick Johnson <rantingrickjohnson@gmail.com> - 2013-12-16 16:47 -0800
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-16 20:06 -0500
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-17 01:25 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-17 12:27 +1100
Re: Experiences/guidance on teaching Python as a first programming language Gene Heskett <gheskett@wdtv.com> - 2013-12-16 20:32 -0500
Re: Experiences/guidance on teaching Python as a first programming language "Cousin Stanley" <cousinstanley@gmail.com> - 2013-12-17 07:32 -0700
Re: Experiences/guidance on teaching Python as a first programming language Gene Heskett <gheskett@wdtv.com> - 2013-12-17 12:27 -0500
Re: Experiences/guidance on teaching Python as a first programming language Neil Cerutti <neilc@norwich.edu> - 2013-12-11 15:46 +0000
Re: Experiences/guidance on teaching Python as a first programming language "Rhodri James" <rhodri@wildebst.demon.co.uk> - 2013-12-09 23:32 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-09 18:42 -0500
Re: Experiences/guidance on teaching Python as a first programming language "Rhodri James" <rhodri@wildebst.demon.co.uk> - 2013-12-10 00:00 +0000
Re: Experiences/guidance on teaching Python as a first programming language Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-12-09 20:56 -0500
Re: Experiences/guidance on teaching Python as a first programming language Wolfgang Keller <feliphil@gmx.net> - 2013-12-12 21:36 +0100
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-13 08:12 +1100
Re: Experiences/guidance on teaching Python as a first programming language Wolfgang Keller <feliphil@gmx.net> - 2013-12-16 21:32 +0100
Re: Experiences/guidance on teaching Python as a first programming language "Rhodri James" <rhodri@wildebst.org.uk> - 2013-12-16 23:01 +0000
Re: Experiences/guidance on teaching Python as a first programming language Ned Batchelder <ned@nedbatchelder.com> - 2013-12-16 19:28 -0500
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-16 16:39 -0800
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-17 11:44 +1100
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-16 17:58 -0800
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-17 02:33 +0000
Re: Experiences/guidance on teaching Python as a first programming language Rick Johnson <rantingrickjohnson@gmail.com> - 2013-12-16 20:41 -0800
Re: Experiences/guidance on teaching Python as a first programming language Neil Cerutti <neilc@norwich.edu> - 2013-12-17 14:51 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-17 09:54 -0500
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-17 15:07 +0000
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-17 15:24 +0000
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-17 15:35 +0000
Re: Experiences/guidance on teaching Python as a first programming language Larry Martell <larry.martell@gmail.com> - 2013-12-17 11:21 -0500
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-17 08:56 -0800
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-17 10:03 -0800
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 05:20 +1100
Re: Experiences/guidance on teaching Python as a first programming language Joel Goldstick <joel.goldstick@gmail.com> - 2013-12-17 13:39 -0500
Re: Experiences/guidance on teaching Python as a first programming language dkcombs@panix.com (David Combs) - 2014-01-29 03:17 +0000
Re: Experiences/guidance on teaching Python as a first programming language Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-12-17 11:12 +0000
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-17 12:18 +0000
Re: Experiences/guidance on teaching Python as a first programming language Wolfgang Keller <feliphil@gmx.net> - 2013-12-17 16:51 +0100
Re: Experiences/guidance on teaching Python as a first programming language Grant Edwards <invalid@invalid.invalid> - 2013-12-17 16:59 +0000
Re: Experiences/guidance on teaching Python as a first programming language Larry Martell <larry.martell@gmail.com> - 2013-12-17 12:18 -0500
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-17 17:24 +0000
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-17 17:44 +0000
Re: Experiences/guidance on teaching Python as a first programming language Grant Edwards <invalid@invalid.invalid> - 2013-12-17 19:38 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-17 19:39 -0500
Re: Experiences/guidance on teaching Python as a first programming language Grant Edwards <invalid@invalid.invalid> - 2013-12-18 18:05 +0000
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-18 18:17 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-18 20:49 -0500
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-19 02:05 +0000
Re: Experiences/guidance on teaching Python as a first programming language Wolfgang Keller <feliphil@gmx.net> - 2013-12-19 15:54 +0100
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-18 20:40 -0500
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-18 20:05 -0800
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-18 23:16 -0500
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-19 15:26 +1100
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-18 20:48 -0800
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-19 09:14 -0800
Re: Experiences/guidance on teaching Python as a first programming language 88888 Dihedral <dihedral88888@gmail.com> - 2013-12-18 22:03 -0800
Re: Experiences/guidance on teaching Python as a first programming language Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-12-19 19:40 +1300
Re: Experiences/guidance on teaching Python as a first programming language Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-12-17 20:20 -0500
Re: Experiences/guidance on teaching Python as a first programming language Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-12-17 17:09 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-17 19:32 -0500
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve@pearwood.info> - 2013-12-18 01:33 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 13:11 +1100
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve@pearwood.info> - 2013-12-18 08:22 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 19:32 +1100
Re: Experiences/guidance on teaching Python as a first programming
language Dave Angel <davea@davea.name> - 2013-12-18 07:53 -0500
Re: Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-19 01:55 +1100
Re: Re: Experiences/guidance on teaching Python as a first programming language "Rhodri James" <rhodri@wildebst.org.uk> - 2013-12-19 00:10 +0000
Re: Experiences/guidance on teaching Python as a first programming language Neil Cerutti <neilc@norwich.edu> - 2013-12-18 15:17 +0000
Re: Re: Experiences/guidance on teaching Python as a first
programming language Dave Angel <davea@davea.name> - 2013-12-18 15:52 -0500
Re: Experiences/guidance on teaching Python as a first programming language Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-12-19 19:41 +1300
Re: Experiences/guidance on teaching Python as a first programming
language Dave Angel <davea@davea.name> - 2013-12-19 07:06 -0500
Re: Experiences/guidance on teaching Python as a first programming language Grant Edwards <invalid@invalid.invalid> - 2013-12-18 18:00 +0000
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-18 18:07 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-18 20:56 -0500
Re: Experiences/guidance on teaching Python as a first programming language Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-12-19 18:39 +1300
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-19 00:56 -0500
Re: Experiences/guidance on teaching Python as a first programming language Paul Smith <paul@mad-scientist.net> - 2013-12-17 22:49 -0500
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve@pearwood.info> - 2013-12-18 08:18 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 19:51 +1100
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-19 16:20 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-20 04:02 +1100
Re: Experiences/guidance on teaching Python as a first programming language Ethan Furman <ethan@stoneleaf.us> - 2013-12-18 07:23 -0800
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-18 08:53 -0800
Re: Experiences/guidance on teaching Python as a first programming language Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-12-18 19:29 -0500
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-19 16:20 +0000
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-18 17:15 +0000
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-19 17:12 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-20 04:28 +1100
Re: Experiences/guidance on teaching Python as a first programming language Neil Cerutti <neilc@norwich.edu> - 2013-12-19 18:40 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-20 07:18 +1100
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-19 19:38 -0500
Re: Experiences/guidance on teaching Python as a first programming language "Rhodri James" <rhodri@wildebst.org.uk> - 2013-12-20 00:45 +0000
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-20 02:16 +0000
Re: Experiences/guidance on teaching Python as a first programming language Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2013-12-20 18:58 -0500
Re: Experiences/guidance on teaching Python as a first programming language Ned Batchelder <ned@nedbatchelder.com> - 2013-12-20 21:04 -0500
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-27 14:35 +0000
Re: Experiences/guidance on teaching Python as a first programming language Terry Reedy <tjreedy@udel.edu> - 2013-12-18 17:33 -0500
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-19 17:06 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-20 04:18 +1100
Re: Experiences/guidance on teaching Python as a first programming language Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-12-19 00:21 +0000
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve@pearwood.info> - 2013-12-18 07:53 +0000
Re: Experiences/guidance on teaching Python as a first programming language Devin Jeanpierre <jeanpierreda@gmail.com> - 2013-12-17 18:33 -0800
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 14:01 +1100
Re: Experiences/guidance on teaching Python as a first programming language Devin Jeanpierre <jeanpierreda@gmail.com> - 2013-12-17 19:12 -0800
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 14:24 +1100
Re: Experiences/guidance on teaching Python as a first programming language "Rhodri James" <rhodri@wildebst.org.uk> - 2013-12-19 00:49 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-19 11:54 +1100
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-18 20:29 -0800
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-19 04:50 +0000
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-18 21:09 -0800
Re: Experiences/guidance on teaching Python as a first programming language Mark Lawrence <breamoreboy@yahoo.co.uk> - 2013-12-19 05:36 +0000
Re: Experiences/guidance on teaching Python as a first programming language Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-12-19 21:31 +0000
Re: Experiences/guidance on teaching Python as a first programming language Roy Smith <roy@panix.com> - 2013-12-19 19:30 -0500
Re: Experiences/guidance on teaching Python as a first programming language rusi <rustompmody@gmail.com> - 2013-12-18 01:18 -0800
Re: Experiences/guidance on teaching Python as a first programming language Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2013-12-18 10:06 +0000
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-18 01:10 +1100
Re: Experiences/guidance on teaching Python as a first programming language Wolfgang Keller <feliphil@gmx.net> - 2013-12-17 16:22 +0100
Re: Experiences/guidance on teaching Python as a first programming language Wolfgang Keller <feliphil@gmx.net> - 2013-12-19 16:14 +0100
Re: Experiences/guidance on teaching Python as a first programming language Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2013-12-20 09:42 +1300
Re: Experiences/guidance on teaching Python as a first programming language Chris Angelico <rosuav@gmail.com> - 2013-12-20 07:51 +1100
Re: Experiences/guidance on teaching Python as a first programming language dkcombs@panix.com (David Combs) - 2014-01-29 03:09 +0000
Page 1 of 7 [1] 2 3 4 5 6 7 Next page →
| From | Oscar Benjamin <oscar.j.benjamin@gmail.com> |
|---|---|
| Date | 2013-12-09 12:23 +0000 |
| Subject | Experiences/guidance on teaching Python as a first programming language |
| Message-ID | <mailman.3772.1386592239.18130.python-list@python.org> |
Hi all, I work in a University Engineering faculty teaching, among other things, programming. In our last meeting about improving our teaching syllabus and delivery we've identified the first year programming courses as an area where there is room for improvement and we're considering (mainly on my suggestion) switching to using Python as the first programming language that we use to introduce our students to programming. I'm interested to know if anyone can share experience of a similar situation or can point to any case studies about this. The course is for ~100 1st year students with half studying Engineering Mathematics and the other half Electrical Engineering. Currently we introduce programming with C for the 1st semester and then C++ for the 2nd semester. In the 3rd semester they learn Matlab and following on from that they can take optional units run by the CS department in Java, Haskell and many more. Our faculty does not currently offer any Python courses for students at any level in CS or Engineering. Many of the students complain that the C course is too hard and my experience is that it doesn't equip them with the general understanding of programming that we really want them to get from the first programming course. I'm not sure about the Electrical Engineering students but the Engineering Mathematics students tend not to use C/C++ once they have covered Matlab and just use Matlab for all future projects, including in situations where it is highly inappropriate. In our recent meeting I proposed that Python should be the first programming language, and others proposed that Java should be the second. So we're currently evaluating the option of having Python in the first semester followed by Java in the second. Both courses would have to be created from scratch meaning that we would need to draw a complete outline and syllabus by mid-January in order to roll this out for the next academic year. I think that the benefits of this would be that using an "easy" language would be less distracting while we introduce the general concepts of programming. What we really want is for the students to focus on things like "why would I write a program?", "what kind of things can I do with a program?" and "how would I go about writing a program that does X?". Ideally by the end of the course we want that, given a description of a simple command line program that would perhaps calculate something or do some simple data processing, then the students would feel confident that they could do that. I think that using C distracts them from learning these more important general lessons as they struggle with simple things like how to print output, or avoid segmentation faults. Also ideally they would continue to use the language, where appropriate, for subsequent project work (which is when they would *really* learn the language). Some of the objections to the idea that were voiced in the meeting were that: 1) Some people felt that Python is not an "industry standard" unlike C/C++/Java and that it is not as good for employability. 2) Students should learn to program in a statically typed language because it leads to good programming discipline. 3) Python is too close to Matlab (which is considered essential for some industries our students often go in to). 4) It is better for students to be introduced to programming with a low-level language so that they gain a better understanding of how computers "really work". 5) Learning to program "should be painful" and we should expect the students to complain about it (someone actually said that!) but the pain makes them better programmers in the end. I'm particularly interested to know if anyone can share experience of switching to teaching Python as a first programming language in a similar context. A written up case study that I could circulate among the relevant staff would be especially useful. Thanks in advance, Oscar
[toc] | [next] | [standalone]
| From | rusi <rustompmody@gmail.com> |
|---|---|
| Date | 2013-12-09 05:54 -0800 |
| Message-ID | <375c2f39-d867-4512-9776-e451281d8b98@googlegroups.com> |
| In reply to | #61380 |
On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote:
> Hi all,
> I work in a University Engineering faculty teaching, among other
> things, programming. In our last meeting about improving our teaching
> syllabus and delivery we've identified the first year programming
> courses as an area where there is room for improvement and we're
> considering (mainly on my suggestion) switching to using Python as the
> first programming language that we use to introduce our students to
> programming. I'm interested to know if anyone can share experience of
> a similar situation or can point to any case studies about this.
1 Some Background
=================
Early in my teaching career - 1988 -- I experienced what it means to
switch from Pascal to Scheme to teach programming. And in 2002 I
swtiched to using python. I may talk a bit about this but before
that…
2 Some Philosophical Context
============================
Some years ago I read in a book (I think it was called "Heart of
Philosophy") about the difference between 'ideas' and 'concepts.'
Ideas are large vague touchy-feely things like freedom, love, justice
etc; things that matter but poets deal with better than intellectuals.
Concepts are the basic currency for an academic. In a typical 1-hour
class you deal with a few and in a lifetime you deal with thousands;
in short they are a dime a dozen -- especially if you are an academic.
And yet if you have a conscience you'd know that covering the concepts
specified in a formal printed syllabus is cheating. What really needs
to be conveyed are a few ideas:
- modular code
- code invariants
- abstractions
- Syntax, semantics and the large grey in between which for want of a
better word we may call 'structure'
- Recursion much wider than people think
see http://blog.languager.org/2012/05/recursion-pervasive-in-cs.html
- Interpretation
see http://blog.languager.org/2013/08/applying-si-on-sicp.html
- Computable and non-computable
- The meaning and significance of the word 'code'
- (Even more vaguely) beautiful (and ugly) code
Before reading on, I suggest you think what for a while what for you
are important/core ideas and then what vehicles/mediums are
conducive/obstructive to them.
3 My Prejudices
===============
Historically I've been associated with functional programming. While I
am not so passionate about it as when I was half my age. still I'd
say:
- FP *as a philosophy* collects a bunch of stuff -- technology,
practices, culture -- that conduces to good programming even for
kids who after the course never use FP *as a technology*
See http://blog.languager.org/2012/10/functional-programming-lost-booty.html
- By contrast OOP is mostly (at best) clerical common sense --
organizing libraries to be easily searchable is better by data than
by code. At worst OOP is hogwash -- inheritance.
And so…
- Python which can be quite functional, imperative and object oriented
has a rather special place. Because it is object oriented you will
be able to use it to silence those who are subscribed to that
religion. Because it is imperative you can write straightforward
code -- 'scripts' -- without undue fanfare Because it is functional
(well almost -- I have some beefs in this regard) you can use it as
a vehicle to actually convey important *ideas* in short space and
time
- For me Lisp (closely followed by APL) are the ultimate in
programming paradigms. However they are not serious technology in
2013. [Even the birthplace of Scheme -- MIT -- has switched to
python]. And so in 2013 python occupies a sweet spot in the sense of
being academically clean and realistically usable.
- That said there are some important elements of FPLs, most notably a
polymorphic type discipline, that are sorely missing from python.
Unfortunately Haskell is much harder to teach/learn than python and
with each new addition only gets harder. So python remains even
with its lacks, an academically sound language.
4 CS-Edu Writings
=================
My CS-101 syllabus from the early 90s --
uses gofer a predecessor of a predecessor of Haskell
http://www.the-magus.in/Publications/ip.pdf
Some more general CS-Edu related writings, containing strewn about
"FP is a good idea"
http://blog.languager.org/2011/02/cs-education-is-fat-and-weak-1.html
and following 2 posts
------
रुसि मोदि
["Rusi Mody" in devanagari so that GG will not use an obsolete charset]
[toc] | [prev] | [next] | [standalone]
| From | rusi <rustompmody@gmail.com> |
|---|---|
| Date | 2013-12-09 08:57 -0800 |
| Message-ID | <889721b4-a980-4205-9b1d-a1bedadd7eb3@googlegroups.com> |
| In reply to | #61380 |
On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote: > 5) Learning to program "should be painful" and we should expect the > students to complain about it (someone actually said that!) but the > pain makes them better programmers in the end. Yeah this will get some people's back up -- Atrocious! Preposterous! etc Change the word 'pain' to 'taxing' 'hard' 'challenge' etc and there is much truth in it. Here is Joel Spolsky on why Java is a poor language for this reason: http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html
[toc] | [prev] | [next] | [standalone]
| From | William Ray Wing <wrw@mac.com> |
|---|---|
| Date | 2013-12-09 12:55 -0500 |
| Message-ID | <mailman.3787.1386615358.18130.python-list@python.org> |
| In reply to | #61398 |
On Dec 9, 2013, at 11:57 AM, rusi <rustompmody@gmail.com> wrote: > On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote: >> 5) Learning to program "should be painful" and we should expect the >> students to complain about it (someone actually said that!) but the >> pain makes them better programmers in the end. > > Yeah this will get some people's back up -- Atrocious! Preposterous! etc > > Change the word 'pain' to 'taxing' 'hard' 'challenge' etc and there is much > truth in it. Here is Joel Spolsky on why Java is a poor language for > this reason: http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html > -- > https://mail.python.org/mailman/listinfo/python-list I'm not sure I agree with either of these points of view. Based on my own personal experience, there is an "Ah HA!" moment[*] when a student understands what it means to decompose a problem into a series of algorithmic steps - after that, the details of the particular programming language are just that, details. Some students get that quickly and intuitively and some never get there, but that bit of fundamental understanding doesn't require either pain or (necessarily) hard work - it just requires adopting a way of approaching and thinking about problems, a mind-set. -Bill ------------ * For me it came during a no-credit, no-cost, lunch-time course one of my college math teachers offered for anyone who was interested. The year was 1963, we used McCracken's FORTRAN book as our text, and tested our programs over open weekends at Argonne National Lab, where they had an IBM 1620 they opened to classes like ours a couple of times a month.
[toc] | [prev] | [next] | [standalone]
| From | Gregory Ewing <greg.ewing@canterbury.ac.nz> |
|---|---|
| Date | 2013-12-10 18:25 +1300 |
| Message-ID | <bgnmurFc5bU1@mid.individual.net> |
| In reply to | #61398 |
> On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote: > >>5) Learning to program "should be painful" and we should expect the >>students to complain about it (someone actually said that!) but the >>pain makes them better programmers in the end. That's like saying that when teaching woodwork we shouldn't let people use hammers, we should make them use rocks to bang nails in, because it will make them better carpenters in the long run. -- Greg
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2013-12-10 16:55 +1100 |
| Message-ID | <mailman.3812.1386654941.18130.python-list@python.org> |
| In reply to | #61441 |
On Tue, Dec 10, 2013 at 4:25 PM, Gregory Ewing <greg.ewing@canterbury.ac.nz> wrote: >> On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote: >> >>> 5) Learning to program "should be painful" and we should expect the >>> students to complain about it (someone actually said that!) but the >>> pain makes them better programmers in the end. > > > That's like saying that when teaching woodwork we shouldn't > let people use hammers, we should make them use rocks to > bang nails in, because it will make them better carpenters > in the long run. But in teaching woodwork you SHOULD let people use basic tools, and not just a CNC lathe. Or in the most extreme sense, putting together IKEA furniture is not carpentry, and neither is picking from an extremely limited toolbox programming - which is why "Build a program without writing a line of code" systems are junk for anything complicated. (Occasionally, VERY occasionally, it's possible to use the simple drag-and-drop system to get you 90% of the way, and then fill in the rest yourself. Usually, you'll end up fighting the system as soon as you do something the author didn't intend.) Programming shouldn't be painful just for the sake of making it painful. But you should be programming, not just solving a Sudoku puzzle. It should be possible for a programmer to develop a unique program that does a unique thing, and if that's beyond the scope of the system, the system isn't a programming system. (Might still be a useful system, of course, but it's not programming.) ChrisA
[toc] | [prev] | [next] | [standalone]
| From | Gregory Ewing <greg.ewing@canterbury.ac.nz> |
|---|---|
| Date | 2013-12-11 10:38 +1300 |
| Subject | Re: Experiences/guidance on teaching Python as a first programming language |
| Message-ID | <bgpfvhFcfugU1@mid.individual.net> |
| In reply to | #61447 |
Chris Angelico wrote: > But in teaching woodwork you SHOULD let people use basic tools, and > not just a CNC lathe. > > Programming shouldn't be painful just for the sake of making it > painful. That's the only point I was trying to make. Pain in and of itself doesn't help anyone to learn anything! -- Greg
[toc] | [prev] | [next] | [standalone]
| From | Dennis Lee Bieber <wlfraed@ix.netcom.com> |
|---|---|
| Date | 2013-12-10 20:35 -0500 |
| Message-ID | <mailman.3859.1386725754.18130.python-list@python.org> |
| In reply to | #61441 |
On Tue, 10 Dec 2013 18:25:48 +1300, Gregory Ewing
<greg.ewing@canterbury.ac.nz> declaimed the following:
>> On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote:
>>
>>>5) Learning to program "should be painful" and we should expect the
>>>students to complain about it (someone actually said that!) but the
>>>pain makes them better programmers in the end.
>
>That's like saying that when teaching woodwork we shouldn't
>let people use hammers, we should make them use rocks to
>bang nails in, because it will make them better carpenters
>in the long run.
NAILS????
Nails were verboten in my high school wood working class...
We used dowels and glue; chisels to carve dove-tails; etc.
--
Wulfraed Dennis Lee Bieber AF6VN
wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/
[toc] | [prev] | [next] | [standalone]
| From | Denis McMahon <denismfmcmahon@gmail.com> |
|---|---|
| Date | 2013-12-11 02:16 +0000 |
| Message-ID | <l88hth$rrp$2@dont-email.me> |
| In reply to | #61513 |
On Tue, 10 Dec 2013 20:35:47 -0500, Dennis Lee Bieber wrote: > On Tue, 10 Dec 2013 18:25:48 +1300, Gregory Ewing > <greg.ewing@canterbury.ac.nz> declaimed the following: >>That's like saying that when teaching woodwork we shouldn't let people >>use hammers, we should make them use rocks to bang nails in, because it >>will make them better carpenters in the long run. > NAILS???? > Nails were verboten in my high school wood working class... > We used dowels and glue; chisels to carve dove-tails; etc. We were allowed to use screws, but they had to be brass, not steel, we had to drill appropriate clearance and pilot holes, and countersink where appropriate. And god help you if you deformed the slot in a brass screw head by over tightening - I think that may have been why they made us use brass ones only, so that such damage was easier to spot and more likely to happen. And yes, I can dovetail, mortise and tenon, dowel etc etc etc. -- Denis McMahon, denismfmcmahon@gmail.com
[toc] | [prev] | [next] | [standalone]
| From | Larry Martell <larry.martell@gmail.com> |
|---|---|
| Date | 2013-12-11 07:08 -0500 |
| Message-ID | <mailman.3890.1386763733.18130.python-list@python.org> |
| In reply to | #61515 |
On Tue, Dec 10, 2013 at 9:16 PM, Denis McMahon <denismfmcmahon@gmail.com> wrote: > On Tue, 10 Dec 2013 20:35:47 -0500, Dennis Lee Bieber wrote: > >> On Tue, 10 Dec 2013 18:25:48 +1300, Gregory Ewing >> <greg.ewing@canterbury.ac.nz> declaimed the following: > >>>That's like saying that when teaching woodwork we shouldn't let people >>>use hammers, we should make them use rocks to bang nails in, because it >>>will make them better carpenters in the long run. > >> NAILS???? >> Nails were verboten in my high school wood working class... >> We used dowels and glue; chisels to carve dove-tails; etc. > > We were allowed to use screws, but they had to be brass, not steel, we > had to drill appropriate clearance and pilot holes, and countersink where > appropriate. Ohhhh we used to DREAM of using screws! We were given steel shafts and had to tap the threads into them with our teeth.
[toc] | [prev] | [next] | [standalone]
| From | Grant Edwards <invalid@invalid.invalid> |
|---|---|
| Date | 2013-12-11 15:05 +0000 |
| Message-ID | <l89uv6$r92$1@reader1.panix.com> |
| In reply to | #61513 |
On 2013-12-11, Dennis Lee Bieber <wlfraed@ix.netcom.com> wrote:
>>That's like saying that when teaching woodwork we shouldn't
>>let people use hammers, we should make them use rocks to
>>bang nails in, because it will make them better carpenters
>>in the long run.
>
> NAILS????
>
> Nails were verboten in my high school wood working class...
>
> We used dowels and glue; chisels to carve dove-tails; etc.
GLUE???
--
Grant Edwards grant.b.edwards Yow! When this load is
at DONE I think I'll wash it
gmail.com AGAIN ...
[toc] | [prev] | [next] | [standalone]
| From | Rick Johnson <rantingrickjohnson@gmail.com> |
|---|---|
| Date | 2013-12-16 16:47 -0800 |
| Message-ID | <b64dd8cc-a7b5-47d2-9fe6-d2bd6e432205@googlegroups.com> |
| In reply to | #61513 |
On Tuesday, December 10, 2013 7:35:47 PM UTC-6, Dennis Lee Bieber wrote:
> NAILS???? Nails were verboten in my high school wood
> working class... We used dowels and glue; chisels to carve
> dove-tails; etc.
That could be a result of two possibilities:
1. Your high school years were before the great war, or:
2. Your wood shop teacher was a Luddite, a sadist, or both!
FYI: Fastener technology has come a long way since the fall
of the of the "Amish empire". All that laborious joinery has
been surpassed by mass production of helical threads and
pneumatic drivers. What once took a "master craftsman" an
entire day to build could now be built by a novice in mere
minutes.
Dovetails are nothing more than sadistic nostalgia --
they give old men a "chubby" and young men a nightmare.
When are we going to realize that the goal, *ahem*, OUR
GOAL, is to delegate minutiae DOWNWARDS, building the
collective knowledge base layer by layer...
ABSTRACTIONS people, ABSTRACTIONS!!!
Because, when you've got all your mental focus attuned to
carving intricate inter-meshing teeth into dense hardwoods
using razor sharp hand tools, you will be unable to see the
big picture, and furthermore, you might slip and cut your
finger off!
[toc] | [prev] | [next] | [standalone]
| From | Roy Smith <roy@panix.com> |
|---|---|
| Date | 2013-12-16 20:06 -0500 |
| Message-ID | <roy-74AF41.20060616122013@news.panix.com> |
| In reply to | #62123 |
In article <b64dd8cc-a7b5-47d2-9fe6-d2bd6e432205@googlegroups.com>, Rick Johnson <rantingrickjohnson@gmail.com> wrote: > Dovetails are nothing more than sadistic nostalgia -- > they give old men a "chubby" and young men a nightmare. There is nothing more satisfying than cutting a set of dovetails by hand and having them glide together like silk, the first time you test-fit them, with no daylight visible anywhere. Someday, mine will be like that :-)
[toc] | [prev] | [next] | [standalone]
| From | Mark Lawrence <breamoreboy@yahoo.co.uk> |
|---|---|
| Date | 2013-12-17 01:25 +0000 |
| Message-ID | <mailman.4245.1387243529.18130.python-list@python.org> |
| In reply to | #62126 |
On 17/12/2013 01:06, Roy Smith wrote: > In article <b64dd8cc-a7b5-47d2-9fe6-d2bd6e432205@googlegroups.com>, > Rick Johnson <rantingrickjohnson@gmail.com> wrote: > >> Dovetails are nothing more than sadistic nostalgia -- >> they give old men a "chubby" and young men a nightmare. > > There is nothing more satisfying than cutting a set of dovetails by hand > and having them glide together like silk, the first time you test-fit > them, with no daylight visible anywhere. > > Someday, mine will be like that :-) > I suspect that your manual skills are rather better than mine. One of my favourite expressions, perhaps because I only ever heard my dad use it, is "like watching a cow handle a shotgun". -- My fellow Pythonistas, ask not what our language can do for you, ask what you can do for our language. Mark Lawrence
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2013-12-17 12:27 +1100 |
| Message-ID | <mailman.4246.1387243643.18130.python-list@python.org> |
| In reply to | #62126 |
On Tue, Dec 17, 2013 at 12:25 PM, Mark Lawrence <breamoreboy@yahoo.co.uk> wrote: > I suspect that your manual skills are rather better than mine. One of my > favourite expressions, perhaps because I only ever heard my dad use it, is > "like watching a cow handle a shotgun". Heh. In D&D terms, I think that would be a DEX of 5 or 6. The average for humans is 10-11, the average for adventurers is 12-13. ChrisA
[toc] | [prev] | [next] | [standalone]
| From | Gene Heskett <gheskett@wdtv.com> |
|---|---|
| Date | 2013-12-16 20:32 -0500 |
| Message-ID | <mailman.4268.1387269153.18130.python-list@python.org> |
| In reply to | #62126 |
On Monday 16 December 2013 20:30:47 Mark Lawrence did opine:
> On 17/12/2013 01:06, Roy Smith wrote:
> > In article <b64dd8cc-a7b5-47d2-9fe6-d2bd6e432205@googlegroups.com>,
> >
> > Rick Johnson <rantingrickjohnson@gmail.com> wrote:
> >> Dovetails are nothing more than sadistic nostalgia --
> >> they give old men a "chubby" and young men a nightmare.
> >
> > There is nothing more satisfying than cutting a set of dovetails by
> > hand and having them glide together like silk, the first time you
> > test-fit them, with no daylight visible anywhere.
> >
> > Someday, mine will be like that :-)
>
> I suspect that your manual skills are rather better than mine. One of
> my favourite expressions, perhaps because I only ever heard my dad use
> it, is "like watching a cow handle a shotgun".
I'll plead to using a jig, and figure I have a good fit when I have to
drive it together with a deadblow hammer.
Cheers, Gene
--
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>
IBM's original motto:
Cogito ergo vendo; vendo ergo sum.
A pen in the hand of this president is far more
dangerous than 200 million guns in the hands of
law-abiding citizens.
[toc] | [prev] | [next] | [standalone]
| From | "Cousin Stanley" <cousinstanley@gmail.com> |
|---|---|
| Date | 2013-12-17 07:32 -0700 |
| Message-ID | <l8pna1$v7t$1@dont-email.me> |
| In reply to | #62126 |
>> Rick Johnson <rantingrickjohnson@gmail.com> wrote:
>>
>> Dovetails are nothing more than sadistic nostalgia --
>> they give old men a "chubby" and young men a nightmare.
> There is nothing more satisfying than cutting a set of dovetails by hand
> and having them glide together like silk, the first time you test-fit
> them, with no daylight visible anywhere.
This dove-tailer understands Rapid Application Development ....
http://woodwork.ars-informatica.ca/tool.php?art=dovetail_video
Frank Klausz's three-minute dovetails using a bow saw
--
Stanley C. Kitching
Human Being
Phoenix, Arizona
---
This email is free from viruses and malware because avast! Antivirus protection is active.
http://www.avast.com
[toc] | [prev] | [next] | [standalone]
| From | Gene Heskett <gheskett@wdtv.com> |
|---|---|
| Date | 2013-12-17 12:27 -0500 |
| Message-ID | <mailman.4308.1387310269.18130.python-list@python.org> |
| In reply to | #62191 |
On Tuesday 17 December 2013 12:23:28 Cousin Stanley did opine:
> >> Rick Johnson <rantingrickjohnson@gmail.com> wrote:
> >> Dovetails are nothing more than sadistic nostalgia --
> >> they give old men a "chubby" and young men a nightmare.
> >
> > There is nothing more satisfying than cutting a set of dovetails by
> > hand and having them glide together like silk, the first time you
> > test-fit them, with no daylight visible anywhere.
>
> This dove-tailer understands Rapid Application Development ....
>
> http://woodwork.ars-informatica.ca/tool.php?art=dovetail_video
> Frank Klausz's three-minute dovetails using a bow saw
Frank is a Master, and too many people never really learn to use a bow saw.
However I'd expect that joint would take more glue to fill, I've had a
single drop of TB-III extrude from every edge of one of my jig made joints.
But, I really think we are just a tad off topic.
Cheers, Gene
--
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>
UNIX is hot. It's more than hot. It's steaming. It's quicksilver
lightning with a laserbeam kicker.
-- Michael Jay Tucker
A pen in the hand of this president is far more
dangerous than 200 million guns in the hands of
law-abiding citizens.
[toc] | [prev] | [next] | [standalone]
| From | Neil Cerutti <neilc@norwich.edu> |
|---|---|
| Date | 2013-12-11 15:46 +0000 |
| Message-ID | <mailman.3905.1386776818.18130.python-list@python.org> |
| In reply to | #61441 |
On 2013-12-11, Dennis Lee Bieber <wlfraed@ix.netcom.com> wrote: > On Tue, 10 Dec 2013 18:25:48 +1300, Gregory Ewing ><greg.ewing@canterbury.ac.nz> declaimed the following: >>> On Monday, December 9, 2013 5:53:41 PM UTC+5:30, Oscar Benjamin wrote: >>>>5) Learning to program "should be painful" and we should >>>>expect the students to complain about it (someone actually >>>>said that!) but the pain makes them better programmers in the >>>>end. >> >>That's like saying that when teaching woodwork we shouldn't let >>people use hammers, we should make them use rocks to bang nails >>in, because it will make them better carpenters in the long >>run. > > NAILS???? > > Nails were verboten in my high school wood working class... > > We used dowels and glue; chisels to carve dove-tails; etc. ... You lucky BASTARD! We had to build bookcases out of banana leaves held together with our own spittle. -- Neil Cerutti
[toc] | [prev] | [next] | [standalone]
| From | "Rhodri James" <rhodri@wildebst.demon.co.uk> |
|---|---|
| Date | 2013-12-09 23:32 +0000 |
| Message-ID | <op.w7umbykna8ncjz@gnudebeest> |
| In reply to | #61380 |
On Mon, 09 Dec 2013 12:23:41 -0000, Oscar Benjamin <oscar.j.benjamin@gmail.com> wrote: > Some of the objections to the idea that were voiced in the meeting were > that: > 1) Some people felt that Python is not an "industry standard" unlike > C/C++/Java and that it is not as good for employability. > 2) Students should learn to program in a statically typed language > because it leads to good programming discipline. > 3) Python is too close to Matlab (which is considered essential for > some industries our students often go in to). > 4) It is better for students to be introduced to programming with a > low-level language so that they gain a better understanding of how > computers "really work". > 5) Learning to program "should be painful" and we should expect the > students to complain about it (someone actually said that!) but the > pain makes them better programmers in the end. I have taught Python as a first language to 12-15 year old kids, and for their purposes (learning how to get computers to do stuff) it was just fine. In particular, it reads easily (as long as you steer clear of funny stuff like decorators and metaclasses), so our students found it easier to explain to themselves what examples did without all the unusual (in English) punctuation getting in the way. While your students aren't 12-15 year olds, it sounds rather like what you want to give them is very similar. Unlike Computer Science students, they don't need to know how computers "really work" (except in the limited sense of floating point arithmetic, which is going to give them headaches however you introduce it). What they need is confidence in manipulating data and algorithms, and Python's a perfectly good choice for that. For contrast, my CS degree of >mumble< years antiquity threw a lot of different languages at us, usually in pairs, to illustrate different concepts. 6502 assembler showed us the basics of how a computer works, while System/370 assembler showed how horribly complex those basics can get; Pascal and BCPL contrasted rigid typing with practically non-existent typing (something Modula-2 and C didn't do nearly as well); and so on and so forth. None of this is stuff your students need for their work, so I wouldn't waste time side-tracking them with it. -- Rhodri James *-* Wildebeest Herder to the Masses
[toc] | [prev] | [next] | [standalone]
Page 1 of 7 [1] 2 3 4 5 6 7 Next page →
Back to top | Article view | comp.lang.python
csiph-web