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


#62224

Fromrusi <rustompmody@gmail.com>
Date2013-12-17 10:03 -0800
Message-ID<2733a35e-a9c9-44c2-a29c-1d8c252c2159@googlegroups.com>
In reply to#62194
On Tuesday, December 17, 2013 8:21:39 PM UTC+5:30, Neil Cerutti wrote:
> On 2013-12-17, Steven D'Aprano 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.

Enter the (One-Liner) Dragon!

http://www.youtube.com/watch?v=a9xAKttWgP4

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


#62228

FromChris Angelico <rosuav@gmail.com>
Date2013-12-18 05:20 +1100
Message-ID<mailman.4304.1387304449.18130.python-list@python.org>
In reply to#62224
On Wed, Dec 18, 2013 at 5:03 AM, rusi <rustompmody@gmail.com> wrote:
> On Tuesday, December 17, 2013 8:21:39 PM UTC+5:30, Neil Cerutti wrote:
>> 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.
>
> Enter the (One-Liner) Dragon!
>
> http://www.youtube.com/watch?v=a9xAKttWgP4

Some languages work differently with lines, cramming more onto a
single line while still having more "code". What's nearly constant is
bugs per "amount of code", except that it's practically impossible to
measure how much code you've produced. So there are a few exceptions
to the "lines of code" metric, a few languages that jump around a bit
on the scale.

ChrisA

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


#62229

FromJoel Goldstick <joel.goldstick@gmail.com>
Date2013-12-17 13:39 -0500
Message-ID<mailman.4305.1387305920.18130.python-list@python.org>
In reply to#62224

[Multipart message — attachments visible in raw view] — view raw

On Tue, Dec 17, 2013 at 1:20 PM, Chris Angelico <rosuav@gmail.com> wrote:

> On Wed, Dec 18, 2013 at 5:03 AM, rusi <rustompmody@gmail.com> wrote:
> > On Tuesday, December 17, 2013 8:21:39 PM UTC+5:30, Neil Cerutti wrote:
> >> 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.
> >
>
If its true that bugs per line of code is more or less a constant, I think
the key is that some languages are more expressive than others.  So, in
assembler, you are moving data around registers, and doing basic math,
etc.  It takes a lot of code to get something done.  So maybe more bugs.
Moving up the ladder to C, which is in a way high level assembly language,
you get more done in few lines.  Python or other languages maybe do more
per line than C  (eg the for loop in python does a lot with very little
code because of python having iterable stuff built in)  So, if you have a
language that is expressive and fits your programming needs, you will have
less to debug -- not because you don't make as many errors, but the good
code just does more for you


-- 
Joel Goldstick
http://joelgoldstick.com

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


#64929

Fromdkcombs@panix.com (David Combs)
Date2014-01-29 03:17 +0000
Message-ID<lc9rsh$n6s$1@reader1.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.
>
>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
>

Makes no sense to me.

I can't imagine that errors per 100 lines is anywhere
near as high with a language that has garbage collection
and type checking as with one that has neither.

David

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


#62178

FromOscar Benjamin <oscar.j.benjamin@gmail.com>
Date2013-12-17 11:12 +0000
Message-ID<mailman.4276.1387278755.18130.python-list@python.org>
In reply to#62121
On 17 December 2013 00:39, rusi <rustompmody@gmail.com> wrote:
> 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.

Thanks for sharing your experiences Wolfgang. I think many of my
students have a similar experience after learning C and it is
interesting to hear it from your perspective many years later.

I was also taught C as an undergrad but having already learned Java, C
and C++ before arriving at University I found the C course very easy
so my own experience is not representative. Many of the other students
at that time found the course too hard and just cheated on all the
assignments (I remember one students offering to fix/finish anyone's
assignment in exchange for a bottle of cider!).

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

Thanks for this Rusi, I just read it and it describes very well what I
think about our own C course. My choice quote from the beginning would
be "When the irrelevant becomes significant, the essentials become
obscured and incomprehensible."

(BTW is there any reason that the document is repeated twice in the same pdf?)

As a case in point one of my tutees asked for help with his C
assignment last week. I looked at his code and it was a complete mess.
I explained roughly what it should look like and he explained that he
had had so much trouble figuring out how to get the compiler to pass a
pair of strings into a function that he had given up and used global
variables instead. He's just not ready yet to get an intuitive
understanding of where to put the asterisks in order to make it work -
and as you point out in that paper the rules for where the asterisks
go are hopelessly inconsistent.

A couple of weeks before, another of my tutees brought their
assignment which was about dynamic memory allocation (~7 weeks into
her first programming course). She had just written something like
   char *x = (char*)malloc(31*sizeof(char));
for a global x at the top of the file. So the message about dynamic
memory allocation was entirely lost in the details of C: "dynamic
memory allocation means using malloc".

These types of problems are compounded by the fact that the current C
course uses automated marking so a program that produces the correct
output gets full marks even if it is terribly written and the student
entirely misses the point - another thing about this course that
definitely needs to change.

> 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

Agreed.


Oscar

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


#62181

FromSteven D'Aprano <steve+comp.lang.python@pearwood.info>
Date2013-12-17 12:18 +0000
Message-ID<52b04102$0$29976$c3e8da3$5496439d@news.astraweb.com>
In reply to#62178
On Tue, 17 Dec 2013 11:12:07 +0000, Oscar Benjamin wrote:

> These types of problems are compounded by the fact that the current C
> course uses automated marking so a program that produces the correct
> output gets full marks even if it is terribly written and the student
> entirely misses the point

This suggests that even the lecturers can't read C, and so have got one 
of their post-grad students to write an automated tester so they don't 
have to.

Only-half-joking-ly y'rs, 


-- 
Steven

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


#62208

FromWolfgang Keller <feliphil@gmx.net>
Date2013-12-17 16:51 +0100
Message-ID<20131217165144.39bf9ba1cd4e4f27a96893ca@gmx.net>
In reply to#62178
> I was also taught C as an undergrad but having already learned Java, C
> and C++ before arriving at University I found the C course very easy
> so my own experience is not representative. Many of the other students
> at that time found the course too hard and just cheated on all the
> assignments (I remember one students offering to fix/finish anyone's
> assignment in exchange for a bottle of cider!).

The problem with the C class wasn't that it was "hard". I had passed my
Pascal class, which taught nearly exactly the same issues with
"straight A"s before (without ever having writeen any source code ever
before). And by standard cognitive testing standards, I'm not exactly
considered to be an idiot.

The only issue for me was to figure out how to do in C what I already
knew in Pascal. And I had to waste a *lot* more time and mental effort
to mess with that language than it took for me to learn *both* the
basics of programming per se *and* Pascal in the first class at my home
university.

C is just a kafkaesque mess invented by a sadistic pervert who must
have regularly consumed illegal substances for breakfast. Its only
reason to exist seems to be that apparently it's ridiculously easy to
implement a "compiler" for it. Although, as a professional developer
once told me, most C compilers are garbage.

One student in the C class (who had been doing software development for
years before he came to university) jokingly passed around samples of
"valid" C code by email. Most of them looked like uuencoded binaries
(this was in the early-to-mid 90s), but they all compiled and produced
an output. Except that *no one* (including professors) was able to
predict the output without actually running the compiled code.

In the classroom lectures parallel to the C exercises, the professor
spent most of his time explaining what *not* to do because... Heck, why
does a language provide features resp. allow their use in ways that are
known to be bottomless cans of worms.

> These types of problems are compounded by the fact that the current C
> course uses automated marking so a program that produces the correct
> output gets full marks even if it is terribly written and the student
> entirely misses the point - another thing about this course that
> definitely needs to change.

In our classes, when a program was correct, but e.g. you used just *one*
single non-semantic identifier (such as an "i" for a loop index), you
got *automatically* zero points for that exercise. Other absolutely
mandatory requirements were about minimum commenting etc. Less comment
lines than code was very likely to yield zero points for that exercise
as well.

Sincerely,

Wolfgang

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


#62214

FromGrant Edwards <invalid@invalid.invalid>
Date2013-12-17 16:59 +0000
Message-ID<l8pvsl$60h$1@reader1.panix.com>
In reply to#62208
On 2013-12-17, Wolfgang Keller <feliphil@gmx.net> wrote:

>> I was also taught C as an undergrad but having already learned Java, C
>> and C++ before arriving at University I found the C course very easy
>> so my own experience is not representative. Many of the other students
>> at that time found the course too hard and just cheated on all the
>> assignments (I remember one students offering to fix/finish anyone's
>> assignment in exchange for a bottle of cider!).
>
> The problem with the C class wasn't that it was "hard". I had passed my
> Pascal class, which taught nearly exactly the same issues with
> "straight A"s before (without ever having writeen any source code ever
> before). And by standard cognitive testing standards, I'm not exactly
> considered to be an idiot.

I agree that C is a awful pedagogical language.  When I was in
university, the first language for Computer Science or Computer
Engineering students was Pascal.  After that, there were classes that
surveyed Prolog, SNOBOL, LISP, Modula, APL, FORTRAN, COBOL, etc.  If
you were an "other" engineering/science major, you learned FORTRAN
first (and last).  I think there may also have been some business
types who were taught BASIC.

C wasn't taught at all.  When I graduated and started doing real-time
embedded firmware, the choices were Generally C or Pascal.  The first
projects I did were in Pascal, but I learned C because the development
host was a PDP-11 running Unix and I needed to write some small (non
embedded) utilities.  Today, all my embedded work is in C.  Python
fell out of style for some reason, but (with a few extensions) it was
a fine language for embedded work as well.

I've always thought C was a great language for low-level, bare-metal,
embedded stuff -- but teaching it to first or second year computer
science students is just insane.  C has a certain minimalist
orthogonality that I have always found pleasing.  [People who smile
wistfully when they think about the PDP-11 instruction word layouts
probably know what I mean.]

But, exposure to C should wait until you have a firm grasp of basic
algorithms and data structures and are proficient in assembly language
for a couple different architectures.  Ideally, you should also have
written at least one functioning compiler before learning C as well.

-- 
Grant Edwards               grant.b.edwards        Yow! Maybe we could paint
                                  at               GOLDIE HAWN a rich PRUSSIAN
                              gmail.com            BLUE --

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


#62217

FromLarry Martell <larry.martell@gmail.com>
Date2013-12-17 12:18 -0500
Message-ID<mailman.4296.1387300700.18130.python-list@python.org>
In reply to#62214
On Tue, Dec 17, 2013 at 11:59 AM, Grant Edwards <invalid@invalid.invalid> wrote:
> On 2013-12-17, Wolfgang Keller <feliphil@gmx.net> wrote:
>
>>> I was also taught C as an undergrad but having already learned Java, C
>>> and C++ before arriving at University I found the C course very easy
>>> so my own experience is not representative. Many of the other students
>>> at that time found the course too hard and just cheated on all the
>>> assignments (I remember one students offering to fix/finish anyone's
>>> assignment in exchange for a bottle of cider!).

I did that, but my fee was a case of beer.

>>
>> The problem with the C class wasn't that it was "hard". I had passed my
>> Pascal class, which taught nearly exactly the same issues with
>> "straight A"s before (without ever having writeen any source code ever
>> before). And by standard cognitive testing standards, I'm not exactly
>> considered to be an idiot.
>
> I agree that C is a awful pedagogical language.  When I was in
> university, the first language for Computer Science or Computer
> Engineering students was Pascal.  After that, there were classes that
> surveyed Prolog, SNOBOL, LISP, Modula, APL, FORTRAN, COBOL, etc.  If
> you were an "other" engineering/science major, you learned FORTRAN
> first (and last).  I think there may also have been some business
> types who were taught BASIC.
>
> C wasn't taught at all.

It wasn't for me either when I went to college in the late 1970's.
Pascal first, then FORTRAN, then IBM 360 assembler. That was all the
formal language training I had. (I had taught myself BASIC in high
school.)

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


#62218

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-17 17:24 +0000
Message-ID<mailman.4297.1387301087.18130.python-list@python.org>
In reply to#62214
On 17/12/2013 17:18, Larry Martell wrote:
> On Tue, Dec 17, 2013 at 11:59 AM, Grant Edwards <invalid@invalid.invalid> wrote:
>> On 2013-12-17, Wolfgang Keller <feliphil@gmx.net> wrote:
>>
>>>> I was also taught C as an undergrad but having already learned Java, C
>>>> and C++ before arriving at University I found the C course very easy
>>>> so my own experience is not representative. Many of the other students
>>>> at that time found the course too hard and just cheated on all the
>>>> assignments (I remember one students offering to fix/finish anyone's
>>>> assignment in exchange for a bottle of cider!).
>
> I did that, but my fee was a case of beer.
>

Pay bottle get monkey?

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


#62222

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-17 17:44 +0000
Message-ID<mailman.4300.1387302312.18130.python-list@python.org>
In reply to#62214
On 17/12/2013 16:59, Grant Edwards wrote:
>
> I've always thought C was a great language for low-level, bare-metal,
> embedded stuff -- but teaching it to first or second year computer
> science students is just insane.  C has a certain minimalist
> orthogonality that I have always found pleasing.  [People who smile
> wistfully when they think about the PDP-11 instruction word layouts
> probably know what I mean.]

I agree with you here, but wasn't there a tie-in between C and the rise 
of Unix via universities, or am I barking in the wrong forest?

>
> But, exposure to C should wait until you have a firm grasp of basic
> algorithms and data structures and are proficient in assembly language
> for a couple different architectures.  Ideally, you should also have
> written at least one functioning compiler before learning C as well.
>

I never had a problem with C as I'd written assembler for RCA 1802, 
Ferranti F110L and DEC/VAX, plus CORAL 66.  Hum, a bit of a fib there, I 
recall vainly struggling with a C for loop before I finally realised I'd 
effectively written a CORAL 66 one, page 50 here 
http://www.xgc.com/manuals/pdf/xgc-c66-rm.pdf for (ouch!!!) anyone who's 
interested.  Using a Whitesmith's pre-ANSI C compiler didn't exactly 
help me either.   IIRC printf was spelt format and all the formatting 
codes were different to what became standard C.

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


#62233

FromGrant Edwards <invalid@invalid.invalid>
Date2013-12-17 19:38 +0000
Message-ID<l8q97j$95d$1@reader1.panix.com>
In reply to#62222
On 2013-12-17, Mark Lawrence <breamoreboy@yahoo.co.uk> wrote:
> On 17/12/2013 16:59, Grant Edwards wrote:
>>
>> I've always thought C was a great language for low-level, bare-metal,
>> embedded stuff -- but teaching it to first or second year computer
>> science students is just insane.  C has a certain minimalist
>> orthogonality that I have always found pleasing.  [People who smile
>> wistfully when they think about the PDP-11 instruction word layouts
>> probably know what I mean.]
>
> I agree with you here, but wasn't there a tie-in between C and the rise 
> of Unix via universities, or am I barking in the wrong forest?

Yes, I think the popularity of Unix on university campuses is what
caused the migration from Pascal to C for freshman programming
classes.  IIRC, there were decent Pascal compilers for Unix back then,
so I still think it was a big mistake.  Later on when studying low
level OS stuff would have been a fine time to introduce C if required
for logistical reasons.

-- 
Grant Edwards               grant.b.edwards        Yow! Vote for ME -- I'm
                                  at               well-tapered, half-cocked,
                              gmail.com            ill-conceived and
                                                   TAX-DEFERRED!

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


#62248

FromRoy Smith <roy@panix.com>
Date2013-12-17 19:39 -0500
Message-ID<roy-4627EF.19392917122013@news.panix.com>
In reply to#62214
In article <l8pvsl$60h$1@reader1.panix.com>,
 Grant Edwards <invalid@invalid.invalid> wrote:

> Ideally, you should also have written at least one functioning 
> compiler before learning C as well.

Why?  I've never written a compiler.  I've written plenty of C.  I don't 
see how my lack of compiler writing experience has hindered my ability 
to write C.

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


#62324

FromGrant Edwards <invalid@invalid.invalid>
Date2013-12-18 18:05 +0000
Message-ID<l8so4d$snu$2@reader1.panix.com>
In reply to#62248
On 2013-12-18, Roy Smith <roy@panix.com> wrote:
> In article <l8pvsl$60h$1@reader1.panix.com>,
>  Grant Edwards <invalid@invalid.invalid> wrote:
>
>> Ideally, you should also have written at least one functioning 
>> compiler before learning C as well.
>
> Why?  I've never written a compiler.  I've written plenty of C.  I don't 
> see how my lack of compiler writing experience has hindered my ability 
> to write C.

I've always felt that there are features in C that don't make a lot of
sense until you've actually implemented a compiler -- at which point
it becomes a lot more obvious why some thing are done certain ways.

Maybe that's just me. I had written a compiler before I learned C, and
there were things that made perfect sense to me that seemed to confuse
others I worked with who were learning C at the same time.

-- 
Grant Edwards               grant.b.edwards        Yow! It's a hole all the
                                  at               way to downtown Burbank!
                              gmail.com            

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


#62328

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-18 18:17 +0000
Message-ID<mailman.4372.1387390692.18130.python-list@python.org>
In reply to#62324
On 18/12/2013 18:05, Grant Edwards wrote:
> On 2013-12-18, Roy Smith <roy@panix.com> wrote:
>> In article <l8pvsl$60h$1@reader1.panix.com>,
>>   Grant Edwards <invalid@invalid.invalid> wrote:
>>
>>> Ideally, you should also have written at least one functioning
>>> compiler before learning C as well.
>>
>> Why?  I've never written a compiler.  I've written plenty of C.  I don't
>> see how my lack of compiler writing experience has hindered my ability
>> to write C.
>
> I've always felt that there are features in C that don't make a lot of
> sense until you've actually implemented a compiler -- at which point
> it becomes a lot more obvious why some thing are done certain ways.
>
> Maybe that's just me. I had written a compiler before I learned C, and
> there were things that made perfect sense to me that seemed to confuse
> others I worked with who were learning C at the same time.
>

I've never contemplated writing a compiler, let alone actually written 
one.  It's like the comments along the lines of "you can't call yourself 
a programmer until you've mastered regular expressions".  Some of my 
mates who work on air traffic management systems have maybe never heard 
of a regex but who cares, I certainly don't.

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


#62355

FromRoy Smith <roy@panix.com>
Date2013-12-18 20:49 -0500
Message-ID<roy-64E022.20491018122013@news.panix.com>
In reply to#62328
In article <mailman.4372.1387390692.18130.python-list@python.org>,
 Mark Lawrence <breamoreboy@yahoo.co.uk> wrote:

> I've never contemplated writing a compiler, let alone actually written 
> one.  It's like the comments along the lines of "you can't call yourself 
> a programmer until you've mastered regular expressions".

Who makes comments like that?  As far as I can tell, I'm the resident 
regexphile on this newsgroup, and I certainly don't say that.

I find it frustrating that Pythonistas shy away from regex as much as 
they do.  Yes, Python strings have a rich set of built-in operations 
which provide easy ways to do a lot of things traditionally done with 
regexes in other languages.

Regex is a powerful tool, and programmers will improve their skill set 
by knowing how to use them.  But that's not the same as saying you can't 
be a programmer if you don't know regex.

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


#62358

FromMark Lawrence <breamoreboy@yahoo.co.uk>
Date2013-12-19 02:05 +0000
Message-ID<mailman.4396.1387418777.18130.python-list@python.org>
In reply to#62355
On 19/12/2013 01:49, Roy Smith wrote:
> In article <mailman.4372.1387390692.18130.python-list@python.org>,
>   Mark Lawrence <breamoreboy@yahoo.co.uk> wrote:
>
>> I've never contemplated writing a compiler, let alone actually written
>> one.  It's like the comments along the lines of "you can't call yourself
>> a programmer until you've mastered regular expressions".
>
> Who makes comments like that?  As far as I can tell, I'm the resident
> regexphile on this newsgroup, and I certainly don't say that.
>
> I find it frustrating that Pythonistas shy away from regex as much as
> they do.  Yes, Python strings have a rich set of built-in operations
> which provide easy ways to do a lot of things traditionally done with
> regexes in other languages.
>
> Regex is a powerful tool, and programmers will improve their skill set
> by knowing how to use them.  But that's not the same as saying you can't
> be a programmer if you don't know regex.
>

Idiots make comments like that, I've seen them in the past, and no, I 
can't remember where :)  As for me I'm not a regexphobe, more a 
stringmethodphile.  But I'm not going to use a dozen string methods when 
one fairly simple regex will do the same job in one hit.

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


#62398

FromWolfgang Keller <feliphil@gmx.net>
Date2013-12-19 15:54 +0100
Message-ID<20131219155402.04e3a4d330e4f63310be414b@gmx.net>
In reply to#62355
> I find it frustrating that Pythonistas shy away from regex as much as 
> they do.

I find regular expression syntax frustrating. >;->

As long as I have the choice, I still prefer syntax like e.g.
VerbalExpressions. That's made for actual humans like me.

Sincerely,

Wolfgang

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


#62354

FromRoy Smith <roy@panix.com>
Date2013-12-18 20:40 -0500
Message-ID<roy-BFC956.20405318122013@news.panix.com>
In reply to#62324
In article <l8so4d$snu$2@reader1.panix.com>,
 Grant Edwards <invalid@invalid.invalid> wrote:

> On 2013-12-18, Roy Smith <roy@panix.com> wrote:
> > In article <l8pvsl$60h$1@reader1.panix.com>,
> >  Grant Edwards <invalid@invalid.invalid> wrote:
> >
> >> Ideally, you should also have written at least one functioning 
> >> compiler before learning C as well.
> >
> > Why?  I've never written a compiler.  I've written plenty of C.  I don't 
> > see how my lack of compiler writing experience has hindered my ability 
> > to write C.
> 
> I've always felt that there are features in C that don't make a lot of
> sense until you've actually implemented a compiler -- at which point
> it becomes a lot more obvious why some thing are done certain ways.

Example?

I suspect what you mean is, "There are some things that don't make sense 
until you understand computer architecture".

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


#62364

Fromrusi <rustompmody@gmail.com>
Date2013-12-18 20:05 -0800
Message-ID<07c6e6a3-c5f4-4846-9551-434bdaba8b50@googlegroups.com>
In reply to#62354
On Thursday, December 19, 2013 7:10:53 AM UTC+5:30, Roy Smith wrote:
>  Grant Edwards wrote:
> > I've always felt that there are features in C that don't make a lot of
> > sense until you've actually implemented a compiler -- at which point
> > it becomes a lot more obvious why some thing are done certain ways.

> Example?

> I suspect what you mean is, "There are some things that don't make sense 
> until you understand computer architecture".

One way of rephrasing what Grant is saying is:
"You cannot be a C programmer without being a system programmer"

This certainly includes machine (hardware) architecture.

But it includes much else besides, which can generally be subsumed under
the rubric "toolchain"

A python programmer can write foo.py and run:
$ python foo.py

A C programmer writes foo.c and has to run the sequence:
$ gcc foo.c
$ a.out

So far the difference looks minimal. However it does not stop here.
Soon the foo has to split into foo1.c and foo2.c.  And suddenly you need to
understand:

1. Separate compilation
2. Make (which is separate from 'separate compilation')
3. Header files and libraries and the connection and difference

Now if youve taught a few classes you will know what a hell each of these is.
In particular, every C teacher struggles with:
"stdio.h is the standard library"

And all this has not yet touched the labyrinths of linker errors with
the corresponding magic spells called ranlib, nm etc

Got past all this kid-stuff?
Now for the Great Initiation into Manhood -- autoconf

So...

Is all this core computer science?
Or is it the curiosities of 40 year old technology?

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


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

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


csiph-web