Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #61380 > unrolled thread

Experiences/guidance on teaching Python as a first programming language

Started byOscar Benjamin <oscar.j.benjamin@gmail.com>
First post2013-12-09 12:23 +0000
Last post2014-01-29 03:09 +0000
Articles 20 on this page of 130 — 29 participants

Back to article view | Back to comp.lang.python


Contents

  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 2 of 7 — ← Prev page 1 [2] 3 4 5 6 7  Next page →


#61423

FromRoy Smith <roy@panix.com>
Date2013-12-09 18:42 -0500
Message-ID<roy-423ADC.18421409122013@news.panix.com>
In reply to#61422
In article <op.w7umbykna8ncjz@gnudebeest>,
 "Rhodri James" <rhodri@wildebst.demon.co.uk> wrote:

> Pascal and BCPL contrasted rigid typing with practically non-existent  
> typing

Wow, you actually used BCPL?  I didn't realize the language ever had any 
real use.  I had only ever heard of it in the context of being a C 
precursor, mentioned once in an introduction of a paper and never heard 
from again.

[toc] | [prev] | [next] | [standalone]


#61426

From"Rhodri James" <rhodri@wildebst.demon.co.uk>
Date2013-12-10 00:00 +0000
Message-ID<op.w7unm313a8ncjz@gnudebeest>
In reply to#61423
On Mon, 09 Dec 2013 23:42:14 -0000, Roy Smith <roy@panix.com> wrote:

> In article <op.w7umbykna8ncjz@gnudebeest>,
>  "Rhodri James" <rhodri@wildebst.demon.co.uk> wrote:
>
>> Pascal and BCPL contrasted rigid typing with practically non-existent
>> typing
>
> Wow, you actually used BCPL?  I didn't realize the language ever had any
> real use.  I had only ever heard of it in the context of being a C
> precursor, mentioned once in an introduction of a paper and never heard
> from again.

It probably wasn't an accident that Martin Richards was the lecturer :-)   
Seriously, though, it was an excellent teaching language, and a slightly  
bastardized version of the compiler was readily available on the communal  
BBC Micros.

-- 
Rhodri James *-* Wildebeest Herder to the Masses

[toc] | [prev] | [next] | [standalone]


#61428

FromDennis Lee Bieber <wlfraed@ix.netcom.com>
Date2013-12-09 20:56 -0500
Message-ID<mailman.3805.1386640601.18130.python-list@python.org>
In reply to#61423
On Mon, 09 Dec 2013 18:42:14 -0500, Roy Smith <roy@panix.com> declaimed the
following:

>In article <op.w7umbykna8ncjz@gnudebeest>,
> "Rhodri James" <rhodri@wildebst.demon.co.uk> wrote:
>
>> Pascal and BCPL contrasted rigid typing with practically non-existent  
>> typing
>
>Wow, you actually used BCPL?  I didn't realize the language ever had any 
>real use.  I had only ever heard of it in the context of being a C 
>precursor, mentioned once in an introduction of a paper and never heard 
>from again.

	Side-effects of it appeared on the Amiga (BSTR and BPTR) as the first
generation "DOS" was based upon TRIPOS (but underneath had a totally
different OS concept).

http://en.wikipedia.org/wiki/AmigaOS#AmigaDOS

-- 
	Wulfraed                 Dennis Lee Bieber         AF6VN
    wlfraed@ix.netcom.com    HTTP://wlfraed.home.netcom.com/

[toc] | [prev] | [next] | [standalone]


#61749

FromWolfgang Keller <feliphil@gmx.net>
Date2013-12-12 21:36 +0100
Message-ID<20131212213602.806ef8fd2626ca6f34bc83d6@gmx.net>
In reply to#61380
> 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.

Just one experience from the "other" (student's) side.

When I started to study engineering science in 1991, Pascal was the
"first language" at the university in question (there were no
programming classes at highschool over here at that time yet). The class
was quite motivating and taught me some essential basics, I think.
Although issues such as object-orientation or event-based (GUI)
programming were not even mentioned, which is something that I'm
desperately missing today.

When I went to a different university (in 1993), still in engineering
science, they used C as the "first language" in the class there. The
result was that I tried (and succeeded) to pass that class with the
strict minimum of effort possible and deliberately forgot everything
that I had to learn about C as quickly as possible afterwards. I was a
"very good" student back then otherwise, so this was not due to
general laziness. What that class has taught me, essentially, was to
*hate* C. And it was not an issue of bad teachers. And they didn't mean
to make me hate C, after all, it was them who had chosen that language.
I never ever used C for anything (outside of that class). And ever
after that experience, I avoided all languages that were even remotely
similar to C, such as C++, Java, C#, Javascript, PHP etc.

In numerics classes and for research projects, I had to learn and use
Fortran, which was easy after the introduction with Pascal. The
teachers who taught me Fortran easily were the same as those who made me
hate C. 

Then, I accidentally got in touch with Python (in 1994 iirc) and
thought it was interesting and useful. In fact Python is the only
programming language that I ever learned without being obliged to do
so. And the only one that I keep using whenever I have the choice.

Since then, the university that once used C as a "first language"
has switched to Python. Which is a good thing, imho. If I had had to
learn the basics of programming with C instead of Pascal, I most
certainly would have avoided anything even remotely connected to
programming ever since, even "office automation" through scripting
(which is what I use Python for today).

Sincerely,

Wolfgang

[toc] | [prev] | [next] | [standalone]


#61753

FromChris Angelico <rosuav@gmail.com>
Date2013-12-13 08:12 +1100
Message-ID<mailman.4022.1386882776.18130.python-list@python.org>
In reply to#61749
On Fri, Dec 13, 2013 at 7:36 AM, Wolfgang Keller <feliphil@gmx.net> wrote:
> And ever
> after that experience, I avoided all languages that were even remotely
> similar to C, such as C++, Java, C#, Javascript, PHP etc.

I think that's disappointing, for two reasons. Firstly, C syntax isn't
that terrible. You might prefer Python syntax to it, but it's
undeniably better than several of its predecessors (I do not want to
write in COBOL, tyvm!), and there are recent languages that manage to
get some things so crazily backward (like abolishing operator
precedence so 2 + 3 * 4 = 24 not 14) that I wouldn't want to use them.
And secondly, C is very much the language of Unix. Sure, its best job
is implementing high level languages so day-to-day code doesn't need
to use it, but it's still important when you need to get to some
lower-level facilities. For those two reasons, I think a basic working
knowledge of C is useful for working with computers, networking,
pretty much everything these days. It won't break your brain to
understand multiple styles, and it might help you to remember why it
is you love Python syntax so much :)

Last time I had to do some C work, I was reminded just how amazingly
convenient a high-level string class is... all I wanted to do was
concatenate a bunch of strings with spaces between them, and I had to
go through so many hoops!

" ".join(list_of_strings)

Et voila.

ChrisA

[toc] | [prev] | [next] | [standalone]


#62102

FromWolfgang Keller <feliphil@gmx.net>
Date2013-12-16 21:32 +0100
Message-ID<20131216213225.2006b30246e3a08ee241a191@gmx.net>
In reply to#61753
> > And ever after that experience, I avoided all languages that were
> > even remotely similar to C, such as C++, Java, C#, Javascript, PHP
> > etc.
> 
> I think that's disappointing, for two reasons. Firstly, C syntax isn't
> that terrible.

It's not just the abysmally appalling, hideously horrifying syntax. At
about everything about C is just *not* "made for human beings" imho.

It's just an un-language that gets at about everything wrong. Sort of
like Microsoft's products.

Sincerely,

Wolfgang

[toc] | [prev] | [next] | [standalone]


#62116

From"Rhodri James" <rhodri@wildebst.org.uk>
Date2013-12-16 23:01 +0000
Message-ID<op.w77jlcv95079vu@gnudebeest>
In reply to#62102
On Mon, 16 Dec 2013 20:32:25 -0000, Wolfgang Keller <feliphil@gmx.net>  
wrote:

>> > And ever after that experience, I avoided all languages that were
>> > even remotely similar to C, such as C++, Java, C#, Javascript, PHP
>> > etc.
>>
>> I think that's disappointing, for two reasons. Firstly, C syntax isn't
>> that terrible.
>
> It's not just the abysmally appalling, hideously horrifying syntax. At
> about everything about C is just *not* "made for human beings" imho.

It's an excellent macro assembler, so of course it's not made for human  
beings.  Unfortunately the software development took one look at it and  
exclaimed, "It's a hammer, all our problems must be nails!"  And the rest  
is C++.

-- 
Rhodri James *-* Wildebeest Herder to the Masses

[toc] | [prev] | [next] | [standalone]


#62120

FromNed Batchelder <ned@nedbatchelder.com>
Date2013-12-16 19:28 -0500
Message-ID<mailman.4243.1387240110.18130.python-list@python.org>
In reply to#62102
On 12/16/13 3:32 PM, Wolfgang Keller wrote:
>>> And ever after that experience, I avoided all languages that were
>>> even remotely similar to C, such as C++, Java, C#, Javascript, PHP
>>> etc.
>>
>> I think that's disappointing, for two reasons. Firstly, C syntax isn't
>> that terrible.
>
> It's not just the abysmally appalling, hideously horrifying syntax. At
> about everything about C is just *not* "made for human beings" imho.

I've never heard C syntax reviled quite so intensely.  What syntax do 
you like, out of curiosity?

>
> It's just an un-language that gets at about everything wrong. Sort of
> like Microsoft's products.
>
> Sincerely,
>
> Wolfgang
>


-- 
Ned Batchelder, http://nedbatchelder.com

[toc] | [prev] | [next] | [standalone]


#62121

Fromrusi <rustompmody@gmail.com>
Date2013-12-16 16:39 -0800
Message-ID<e0d6b728-fbec-41a6-9c6b-250528998a28@googlegroups.com>
In reply to#62120
On Tuesday, December 17, 2013 5:58:12 AM UTC+5:30, Ned Batchelder wrote:
> On 12/16/13 3:32 PM, Wolfgang Keller wrote:
> >>> And ever after that experience, I avoided all languages that were
> >>> even remotely similar to C, such as C++, Java, C#, Javascript, PHP
> >>> etc.
> >> I think that's disappointing, for two reasons. Firstly, C syntax isn't
> >> that terrible.
> > It's not just the abysmally appalling, hideously horrifying syntax. At
> > about everything about C is just *not* "made for human beings" imho.

> I've never heard C syntax reviled quite so intensely.  What syntax do 
> you like, out of curiosity?

I had a paper some years ago on why C is a horrible language *to teach with*
http://www.the-magus.in/Publications/chor.pdf

I believe people did not get then (and still dont) that bad for
- beginner education (CS101)
- intermediate -- compilers, OS, DBMS etc
- professional software engineering

are all almost completely unrelated

[toc] | [prev] | [next] | [standalone]


#62122

FromChris Angelico <rosuav@gmail.com>
Date2013-12-17 11:44 +1100
Message-ID<mailman.4244.1387241110.18130.python-list@python.org>
In reply to#62121
On Tue, Dec 17, 2013 at 11:39 AM, rusi <rustompmody@gmail.com> wrote:
> I had a paper some years ago on why C is a horrible language *to teach with*
> http://www.the-magus.in/Publications/chor.pdf
>
> I believe people did not get then (and still dont) that bad for
> - beginner education (CS101)
> - intermediate -- compilers, OS, DBMS etc
> - professional software engineering
>
> are all almost completely unrelated

Yes. In esr's essay on becoming a hacker[1] he says:

"""There is perhaps a more general point here. If a language does too
much for you, it may be simultaneously a good tool for production and
a bad one for learning."""

Definitely true, though I think it has exceptions.

[1] http://www.catb.org/esr/faqs/hacker-howto.html

ChrisA

[toc] | [prev] | [next] | [standalone]


#62130

Fromrusi <rustompmody@gmail.com>
Date2013-12-16 17:58 -0800
Message-ID<69ec140f-700b-4155-a5cc-5053dd7b91a3@googlegroups.com>
In reply to#62122
On Tuesday, December 17, 2013 6:14:59 AM UTC+5:30, Chris Angelico wrote:
> On Tue, Dec 17, 2013 at 11:39 AM, rusi wrote:
> > I had a paper some years ago on why C is a horrible language *to teach with*
> > http://www.the-magus.in/Publications/chor.pdf
> > I believe people did not get then (and still dont) that bad for
> > - beginner education (CS101)
> > - intermediate -- compilers, OS, DBMS etc
> > - professional software engineering
> > are all almost completely unrelated

> Yes. In esr's essay on becoming a hacker[1] he says:

> """There is perhaps a more general point here. If a language does too
> much for you, it may be simultaneously a good tool for production and
> a bad one for learning."""

There is this principle by Buchberger called the "Black-box White-box
principle" 
Unfortunately I can only find mathematicians talking about it
http://www.math.rutgers.edu/~zeilberg/Opinion65.html
and no CS-ists/programmers.

eg
To teach OS, minix is better than linux
To use, linux is better
FreeBSD may be a good middle point. It may also be a bad middle point --
practically too hard to use or study.  Which is why in practice separating
teaching tools from professional ones is better than thrashing about using
the same for both

> Definitely true, though I think it has exceptions.

> [1] http://www.catb.org/esr/faqs/hacker-howto.html

Yeah As esr says python is an exception
And even here as it progresses it becomes more professional and less educational

[toc] | [prev] | [next] | [standalone]


#62134

FromSteven D'Aprano <steve+comp.lang.python@pearwood.info>
Date2013-12-17 02:33 +0000
Message-ID<52afb7e7$0$29976$c3e8da3$5496439d@news.astraweb.com>
In reply to#62121
On Mon, 16 Dec 2013 16:39:14 -0800, rusi wrote:

> I had a paper some years ago on why C is a horrible language *to teach
> with* http://www.the-magus.in/Publications/chor.pdf


Nice paper! I have a few quibbles with it, but overall I think it is very 
good.


> I believe people did not get then (and still dont) that bad for -
> beginner education (CS101)
> - intermediate -- compilers, OS, DBMS etc - professional software
> engineering
> 
> are all almost completely unrelated

I do not believe that they are "almost" unrelated. I think that, in 
general, there is a very high correlation between languages which are 
easy to use correctly and languages which are easy to learn. (Not the 
other way around -- languages which are easy to learn may only be so 
because you can't do much with them.)

If your aim is to challenge yourself, as the hacker ethos often leads to, 
then C is an excellent language to learn because both *learning* and 
*using* the language is a challenge. If you just want to write a program 
which works correctly with as little fuss as possible, you surely 
wouldn't choose C unless it was the only language you knew.

There are many reasons why languages fail to become popular among hackers 
(PHP and Flash are too déclassé, being used by *cough spit* web 
developers; Java is for people who wear suits and ties; Forth is, well 
Forth is just too weird even for hackers who like Lisp, Scheme, or 
Haskell). But the popular old-school hacker languages like Perl, Lisp and 
C have three things in common:

- they grew organically, and so have little in the way of design 
constraints (apart from the most fundamental, which the average 
programmer doesn't even recognise as a constraint -- see the Blub 
paradox);

- they are powerful and can do (nearly) anything, with sufficient hard 
work;

- and they are challenging to use.

That last one is, I believe, the key. Nothing will get hackers and 
programmers sneering at a language as being "a toy" or "not a real 
language" if it makes programming too easy, particularly if there are 
performance or functionality costs to such ease of use.

I would really like to see good quality statistics about bugs per program 
written in different languages. I expect that, for all we like to make 
fun of COBOL, it probably has few bugs per unit-of-useful-work-done than 
the equivalent written in C.

Of course, this is very hard to measure: different languages require 
different amounts of code to get something useful done. Different 
languages get used for different things -- there are no operating system 
kernels written in COBOL, although there are plenty of business apps 
written in C. There are vast differences in software methodologies. But I 
think that people intuitively grasp that if something is hard to learn, 
as C is, chances are very good that it is equally hard to use even for 
experts. Why do you think that C programs often have so many bugs and 
vulnerabilities, such as buffer overflows and the like? It's not just 
down to lousy coders.

In your paper, you quote Meyer:

    I knew that the bulk of the student's time was spent fighting 
    tricky pointer arithmetic, chasing memory allocation bugs, 
    trying to figure out whether an argument was a structure or a
    pointer, making sure the number of asterisks was right, and so
    on?

It's not just students who have to do all these things. They may become 
easier with experience, but "someone who chases memory allocation bugs" 
is practically the definition of a C programmer.

Good C programmers are good in spite of C, not because of it.

Languages like C, which lack clean design and semantics, means the 
programmer has to memorise a lot of special cases in order to become 
expert. People who would otherwise make excellent programmers except for 
their difficulty memorising special cases will make poor C coders -- they 
will always be fighting the language. Or they will learn just a small 
subset of the language, and always use that. If the compiler is efficient 
enough, as C compilers typically are, you'll never know from the 
performance that it was written poorly or non-idiomatically.



-- 
Steven

[toc] | [prev] | [next] | [standalone]


#62151

FromRick Johnson <rantingrickjohnson@gmail.com>
Date2013-12-16 20:41 -0800
Message-ID<96b650e1-a721-431f-a90c-5a7281c604c0@googlegroups.com>
In reply to#62134
On Monday, December 16, 2013 8:33:11 PM UTC-6, Steven D'Aprano wrote:

> Of course, this is very hard to measure: different languages require
> different amounts of code to get something useful done. Different
> languages get used for different things -- there are no operating system
> kernels written in COBOL, although there are plenty of business apps
> written in C. There are vast differences in software methodologies. But I
> think that people intuitively grasp that if something is hard to learn,
> as C is, chances are very good that it is equally hard to use even for
> experts. Why do you think that C programs often have so many bugs and
> vulnerabilities, such as buffer overflows and the like? It's not just
> down to lousy coders.

I have a real life example of such horrendous design flaws
involving a highway intersection. A while back, can't
remember when, a friend of mine was involved in an accident
that was his fault. This surprised me because i consider
this person to be a very cautious driver.

After checking records, i was amazed to find a high
occurrence of traffic incidents that mirror the exact
conditions of my friends accident, and in almost every
incident, the person at fault runs the thru the red light.

This seemed odd because how could so many people be making
the same mistake? The sheer number of signal violations
would exclude malevolent intentions.

So being the curious chap i am, i investigated further. I
myself traveled the course my friend took the day of the
fateful accident.

The course involves starting from a traffic signal on one
side of the freeway, following a long left turn lane under
the freeway, and then emerging on the other side to cross the
opposing feeder road -- it is a this point that the
accidents happen with great frequency!

There are two distinct design flaws contributing:

  1. The bridge itself is obscuring the view of the
  second signal. The second signal is not visible until
  the motorist are very close -- much too close in my
  opinion!

But i feel #2 is the *real* contributing factor!

  2. The second signal and the first signal are not
  synchronized, creating an inconsistency between both
  signals. For example, sometimes you can catch both
  lights green, but sometimes, the second light will
  change unexpectedly whilst you're navigating the long
  left turn, THUS requiring all traffic to stop under the
  freeway before crossing the opposing feeder road.

  ...and the results of this poor design are resulting
  in injuries on a regular basis!!!

The problem is, sometimes people don't stop. Sometimes they
simply "assume" that the light will be green because
stopping under a bridge does not "feel" normal. Of course
they must accept the blame for not being more alert,
however, at what point does the fallibility of humans excuse
poor interface design?

Humans are by nature INCAPABLE of maintaining perfect
alertness, and driving requires more processing than the
human mind can possibly muster. Your mind is constantly
attempting to "predict the future" outcome of current
events, and it is this unconsciousness mechanism that, when
overloaded, will force the less acute modality of intuition
to propagate up and take full control.

It is for that very reason that we must design interfaces
with the fallibility of human operators in mind -- at least
until we can remove the human from the equation.

We MUST strive to achieve the highest level of
intuitiveness whilst eliminating any and all inconsistencies
from the system.

[toc] | [prev] | [next] | [standalone]


#62194

FromNeil Cerutti <neilc@norwich.edu>
Date2013-12-17 14:51 +0000
Message-ID<mailman.4286.1387291924.18130.python-list@python.org>
In reply to#62134
On 2013-12-17, Steven D'Aprano
<steve+comp.lang.python@pearwood.info> wrote:
> I would really like to see good quality statistics about bugs
> per program written in different languages. I expect that, for
> all we like to make fun of COBOL, it probably has few bugs per
> unit-of-useful-work-done than the equivalent written in C.

I can't think of a reference, but I to recall that
bugs-per-line-of-code is nearly constant; it is not language
dependent. So, unscientifically, the more work you can get done
in a line of code, then the fewer bugs you'll have per amount of
work done.

-- 
Neil Cerutti

[toc] | [prev] | [next] | [standalone]


#62196

FromRoy Smith <roy@panix.com>
Date2013-12-17 09:54 -0500
Message-ID<roy-CA94BF.09544017122013@news.panix.com>
In reply to#62194
In article <mailman.4286.1387291924.18130.python-list@python.org>,
 Neil Cerutti <neilc@norwich.edu> wrote:

> On 2013-12-17, Steven D'Aprano
> <steve+comp.lang.python@pearwood.info> wrote:
> > I would really like to see good quality statistics about bugs
> > per program written in different languages. I expect that, for
> > all we like to make fun of COBOL, it probably has few bugs per
> > unit-of-useful-work-done than the equivalent written in C.

Well, there was that little Y2K thing...

[toc] | [prev] | [next] | [standalone]


#62201

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-17 15:07 +0000
Message-ID<mailman.4288.1387292888.18130.python-list@python.org>
In reply to#62196
On 17/12/2013 14:54, Roy Smith wrote:
> In article <mailman.4286.1387291924.18130.python-list@python.org>,
>   Neil Cerutti <neilc@norwich.edu> wrote:
>
>> On 2013-12-17, Steven D'Aprano
>> <steve+comp.lang.python@pearwood.info> wrote:
>>> I would really like to see good quality statistics about bugs
>>> per program written in different languages. I expect that, for
>>> all we like to make fun of COBOL, it probably has few bugs per
>>> unit-of-useful-work-done than the equivalent written in C.
>
> Well, there was that little Y2K thing...
>

Design assumption made 30 to 40 years earlier "It'll only have to be in 
the field for six months" :)

-- 
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]


#62204

FromSteven D'Aprano <steve+comp.lang.python@pearwood.info>
Date2013-12-17 15:24 +0000
Message-ID<52b06ca9$0$29976$c3e8da3$5496439d@news.astraweb.com>
In reply to#62196
On Tue, 17 Dec 2013 09:54:41 -0500, Roy Smith wrote:

> In article <mailman.4286.1387291924.18130.python-list@python.org>,
>  Neil Cerutti <neilc@norwich.edu> wrote:
> 
>> On 2013-12-17, Steven D'Aprano
>> <steve+comp.lang.python@pearwood.info> wrote:
>> > I would really like to see good quality statistics about bugs per
>> > program written in different languages. I expect that, for all we
>> > like to make fun of COBOL, it probably has few bugs per
>> > unit-of-useful-work-done than the equivalent written in C.
> 
> Well, there was that little Y2K thing...

Oh come on, how were people in the 1990s supposed to predict that they 
would be followed by the year 2000???

That's a good point, but that wasn't a language issue, it was a program 
design issue. Back in the 70s and 80s, when saving two digits per date 
field seemed to be a sensible thing to do, people simply didn't imagine 
that their programs would still be used in the year 1999[1]. That's not 
the same sort of bug as (say) C buffer overflows, or SQL code injection 
attacks. It's not like the COBOL language defined dates as having only 
two digits.




[1] What gets me is that even in the year 1999, there were still 
programmers writing code that assumed two-digit years. I have it on good 
authority from somebody working as an external consultant for a bank in 
1999 that he spent most of 1998 and 1999 fixing *brand new code* written 
by the bank's own staff. You'd think that having lived through that 
experience would have shaken his belief that private enterprise does 
everything better, and the bigger the corporation the better they do it, 
but apparently not. Go figure.


-- 
Steven

[toc] | [prev] | [next] | [standalone]


#62207

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-17 15:35 +0000
Message-ID<mailman.4291.1387294543.18130.python-list@python.org>
In reply to#62204
On 17/12/2013 15:24, Steven D'Aprano wrote:
> On Tue, 17 Dec 2013 09:54:41 -0500, Roy Smith wrote:
>
>> In article <mailman.4286.1387291924.18130.python-list@python.org>,
>>   Neil Cerutti <neilc@norwich.edu> wrote:
>>
>>> On 2013-12-17, Steven D'Aprano
>>> <steve+comp.lang.python@pearwood.info> wrote:
>>>> I would really like to see good quality statistics about bugs per
>>>> program written in different languages. I expect that, for all we
>>>> like to make fun of COBOL, it probably has few bugs per
>>>> unit-of-useful-work-done than the equivalent written in C.
>>
>> Well, there was that little Y2K thing...
>
> Oh come on, how were people in the 1990s supposed to predict that they
> would be followed by the year 2000???
>
> That's a good point, but that wasn't a language issue, it was a program
> design issue. Back in the 70s and 80s, when saving two digits per date
> field seemed to be a sensible thing to do, people simply didn't imagine
> that their programs would still be used in the year 1999[1]. That's not
> the same sort of bug as (say) C buffer overflows, or SQL code injection
> attacks. It's not like the COBOL language defined dates as having only
> two digits.
>
>
>
>
> [1] What gets me is that even in the year 1999, there were still
> programmers writing code that assumed two-digit years. I have it on good
> authority from somebody working as an external consultant for a bank in
> 1999 that he spent most of 1998 and 1999 fixing *brand new code* written
> by the bank's own staff. You'd think that having lived through that
> experience would have shaken his belief that private enterprise does
> everything better, and the bigger the corporation the better they do it,
> but apparently not. Go figure.
>
>

I was in charge of the team at work that had to make all code Y2K 
compliant.  I discovered the one bug that to my knowledge slipped 
through the net.  Four years later back at the same place on contract I 
fixed the fix!!!

-- 
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]


#62210

FromLarry Martell <larry.martell@gmail.com>
Date2013-12-17 11:21 -0500
Message-ID<mailman.4293.1387297275.18130.python-list@python.org>
In reply to#62204
On Tue, Dec 17, 2013 at 10:35 AM, Mark Lawrence <breamoreboy@yahoo.co.uk> wrote:
> I was in charge of the team at work that had to make all code Y2K compliant.
> I discovered the one bug that to my knowledge slipped through the net.  Four
> years later back at the same place on contract I fixed the fix!!!

>From around 1997 till 2000 all I did was fix Y2K bugs. I'm pretty sure
I got them all. For one client I fixed well over 200. After the new
year came and nothing broke, the owner of the company said "You made
such a big deal about this Y2K stuff, and it turned out not to be a
problem at all."

[toc] | [prev] | [next] | [standalone]


#62213

Fromrusi <rustompmody@gmail.com>
Date2013-12-17 08:56 -0800
Message-ID<3d9493f0-f80b-44de-9682-18a52c314167@googlegroups.com>
In reply to#62210
On Tuesday, December 17, 2013 9:51:07 PM UTC+5:30, Larry....@gmail.com wrote:
> On Tue, Dec 17, 2013 at 10:35 AM, Mark Lawrence wrote:
> > I was in charge of the team at work that had to make all code Y2K compliant.
> > I discovered the one bug that to my knowledge slipped through the net.  Four
> > years later back at the same place on contract I fixed the fix!!!

> > From around 1997 till 2000 all I did was fix Y2K bugs. I'm pretty
> > sure I got them all. For one client I fixed well over 200. After
> > the new > year came and nothing broke, the owner of the company
> > said "You made > such a big deal about this Y2K stuff, and it
> > turned out not to be a > problem at all."

Hahaha -- Very funny and serious.  Ive been actually experienced being
kicked out of job for writing decent working code and not making a big
deal of it.

Comes back the start of the thread -- What do we teach students?
Should we teach how to write the best possible code and as effortlessly
as possible?  Or should we also teach how to make a fuss, how to pretend
to (over)work while actually (under)delivering?

In a Utopia this would not be a question at all.
But we dont live in Utopia...

[And there are languages WAY better than C... C++ for example]

[toc] | [prev] | [next] | [standalone]


Page 2 of 7 — ← Prev page 1 [2] 3 4 5 6 7  Next page →

Back to top | Article view | comp.lang.python


csiph-web