Teaching Python

Discussion in 'Python' started by Mediocre Person, Jun 12, 2004.

  1. Well, after years of teaching grade 12 students c++, I've decided to
    make a switch to Python.

    Why?

    * interactive mode for learning
    * less fussing with edit - compile - link - run - debug - edit -
    compile - link - run -.....
    * lots of modules
    * I was getting tired of teaching c++! Bored teacher = bad instruction.
    * thought about tcl/tk but it's just too different syntactically
    (for me, not my students!) after so much time with languages like
    c++/ada95/pascal/BASIC/Fortran, etc.
    * it appears to be FREE (which in a high school environment is
    mightily important) from both python.org or activestate.com. I think I
    like activestate's ide (under Win98) a bit better than idle, but your
    comments/suggestions?

    I've decided to give John Zelle's new book a try as a student
    textbook--it's as good an introductory CS book in any language I've
    seen. I've done a couple of small projects with tkinter, like what I
    see, and would like to introduct my students to it, although Zelle
    doesn't make use of it in his text.

    So, what pitfalls should I look out for in introducing Python to
    students who have had a year of Visual BASIC?

    Regards,

    chackowsky dot nick at portal dot brandonsd dot mb dot ca <-- have the
    spambots figured this one out yet?
     
    Mediocre Person, Jun 12, 2004
    #1
    1. Advertising

  2. Mediocre Person

    Ryan Paul Guest

    On Sat, 12 Jun 2004 03:22:23 +0000, Mediocre Person wrote:

    > Well, after years of teaching grade 12 students c++, I've decided to
    > make a switch to Python.
    >
    > Why?
    >
    > * interactive mode for learning
    > * less fussing with edit - compile - link - run - debug - edit -
    > compile - link - run -.....
    > * lots of modules
    > * I was getting tired of teaching c++! Bored teacher = bad instruction.
    > * thought about tcl/tk but it's just too different syntactically
    > (for me, not my students!) after so much time with languages like
    > c++/ada95/pascal/BASIC/Fortran, etc.
    > * it appears to be FREE (which in a high school environment is
    > mightily important) from both python.org or activestate.com. I think I
    > like activestate's ide (under Win98) a bit better than idle, but your
    > comments/suggestions?
    >
    > I've decided to give John Zelle's new book a try as a student
    > textbook--it's as good an introductory CS book in any language I've
    > seen. I've done a couple of small projects with tkinter, like what I
    > see, and would like to introduct my students to it, although Zelle
    > doesn't make use of it in his text.
    >
    > So, what pitfalls should I look out for in introducing Python to
    > students who have had a year of Visual BASIC?
    >
    > Regards,
    >
    > chackowsky dot nick at portal dot brandonsd dot mb dot ca <-- have the
    > spambots figured this one out yet?


    Python is REALLY easy to learn. Your concern should probably be: "are they
    going to learn this so quickly that I run out of material in a month?"
    I've seen 6th graders learn to write relatively impressive,
    object-oriented python programs within about 2 months.

    I may not be a curriculum expert, but I would recommend replacing your
    lower level visual basic class with a python class, and teaching something
    far more advanced to 12th grade students. If you are getting bored with
    c++, maybe switch to a functional language, like ocaml or haskell.

    Python is a powerful language, and the simplicity and consistency of its
    syntax enables developers to produce useful applications in very short
    periods of time - but I question python's capacity to 'challenge' a
    student that is already familiar with another object oriented programming
    language. Python is an excellent introduction to object oriented ideas and
    methodology, but if the students already know VB, they have already
    learned object oriented programming, right?

    If you do end up teaching python to advanced programming students, you
    might want to look at David Mertz' 'charming python' articles. He deals
    with a few rather sophisticated and interesting concepts, which managed to
    spark a few insightful paradigm shifts (for me at least):
    http://gnosis.cx/publish/tech_index_cp.html

    -- SegPhault
     
    Ryan Paul, Jun 12, 2004
    #2
    1. Advertising

  3. Mediocre Person

    Peter Otten Guest

    Ryan Paul wrote:

    > methodology, but if the students already know VB, they have already
    > learned object oriented programming, right?


    Now that is optimism :)

    Peter
     
    Peter Otten, Jun 12, 2004
    #3
  4. Mediocre Person

    Hank Fay Guest

    Visual Basic has no inheritance; but it has a nice GUI IDE.

    I'd look at wxPython as a freely available GUI IDE. SPE (Stanni's Python
    Editor), which integrates wxPython and Blender (which performs visual magic)
    would give your students some capabilties they don't have in VB.

    For web stuff there are some very nice frameworks that are freely available,
    such as Webware, which has a persistence layer, and Twisted, which can do so
    many things it is eponymous. You would easily do a year of web stuff,
    including ZOPE (Content Management) and Plone (visually acceptable Content
    Management and user-friendlier Content Management) on top of ZOPE, after
    they have Python down.

    Hank Fay

    --

    "Mediocre Person" <> wrote in message
    news:...
    > Well, after years of teaching grade 12 students c++, I've decided to
    > make a switch to Python.
    >
    > Why?
    >
    > * interactive mode for learning
    > * less fussing with edit - compile - link - run - debug - edit -
    > compile - link - run -.....
    > * lots of modules
    > * I was getting tired of teaching c++! Bored teacher = bad

    instruction.
    > * thought about tcl/tk but it's just too different syntactically
    > (for me, not my students!) after so much time with languages like
    > c++/ada95/pascal/BASIC/Fortran, etc.
    > * it appears to be FREE (which in a high school environment is
    > mightily important) from both python.org or activestate.com. I think I
    > like activestate's ide (under Win98) a bit better than idle, but your
    > comments/suggestions?
    >
    > I've decided to give John Zelle's new book a try as a student
    > textbook--it's as good an introductory CS book in any language I've
    > seen. I've done a couple of small projects with tkinter, like what I
    > see, and would like to introduct my students to it, although Zelle
    > doesn't make use of it in his text.
    >
    > So, what pitfalls should I look out for in introducing Python to
    > students who have had a year of Visual BASIC?
    >
    > Regards,
    >
    > chackowsky dot nick at portal dot brandonsd dot mb dot ca <-- have the
    > spambots figured this one out yet?
     
    Hank Fay, Jun 12, 2004
    #4
  5. Python is an excellent introduction to object oriented ideas and
    > methodology, but if the students already know VB, they have already
    > learned object oriented programming, right?

    Well, there's OOP and then there's OOP, right? The first year students
    have learned to _use_ pre-defined objects, but not design and create
    classes.

    You state, "Python is REALLY easy to learn. Your concern should probably
    be: "are they going to learn this so quickly that I run out of material
    in a month?" I've seen 6th graders learn to write relatively impressive,
    object-oriented python programs within about 2 months." Can you give me
    some references to this, such as samples of student work? I would like
    to see what grade 6 students can do in two months!

    I agree that the syntax of Python makes it is easy to learn. However, I
    think I've got a pretty good imagination where material is concerned!
    There are excellent tie-ins to their mathematics, physics, chemistry,
    and biology curricula. For instance, I recently came across the concept
    of partitions in number theory, and computing all the partitions of an
    integer is a dilly of a pickle of a problem!

    And, of course, it's really not about the language, in the end, after
    all, but what you can learn to do with it. In which case, you say,
    "AHA--so what was wrong with c++???" In a word, nothing. And I'll *miss*
    all the lovely memory management lessons we did to develop our own
    vector and list classes. In the end, I think the change is mostly for me!

    I know nothing about ocaml or haskell, but I'll be sure to research them
    this summer, so thanks for the tip!

    Nick.


    >


    > If you do end up teaching python to advanced programming students, you
    > might want to look at David Mertz' 'charming python' articles. He deals
    > with a few rather sophisticated and interesting concepts, which managed to
    > spark a few insightful paradigm shifts (for me at least):
    > http://gnosis.cx/publish/tech_index_cp.html



    >
    > -- SegPhault
     
    Mediocre Person, Jun 12, 2004
    #5
  6. Mediocre Person

    Arthur Guest

    On Sat, 12 Jun 2004 14:45:21 GMT, Mediocre Person
    <> wrote:

    >You state, "Python is REALLY easy to learn. Your concern should probably
    >be: "are they going to learn this so quickly that I run out of material
    >in a month?" I've seen 6th graders learn to write relatively impressive,
    >object-oriented python programs within about 2 months." Can you give me
    >some references to this, such as samples of student work? I would like
    >to see what grade 6 students can do in two months!



    Me too.

    My IQ problem might be more dramatic than I thought. It took me
    longer than that to sense which way was up, and I was coming to the
    effort with good energy and a good deal of non-programming computer
    background.

    "REALLY easy" sounds great, but I think the idea that it is in fact so
    can work, in the end, to discourage those of us who don't find it so.

    "REALLY worthwhile", perhaps.

    >I agree that the syntax of Python makes it is easy to learn. However, I
    >think I've got a pretty good imagination where material is concerned!
    >There are excellent tie-ins to their mathematics, physics, chemistry,
    >and biology curricula. For instance, I recently came across the concept
    >of partitions in number theory, and computing all the partitions of an
    >integer is a dilly of a pickle of a problem!
    >


    I strongly agree that it is these tie-ins that make the effort to
    extend programming literacy more widely "REALLY worthwhile".

    And happen to believe that Python is an excellant way to go.

    Art
     
    Arthur, Jun 12, 2004
    #6
  7. Mediocre Person wrote:
    > So, what pitfalls should I look out for in introducing Python to
    > students who have had a year of Visual BASIC?


    I was a Visual Basic programmer for a few months in 2002. It took me
    almost a year to recover. It is vaguely object-oriented, but its
    definition of objects are horribly warped; going to a genuine OO
    language after VB is a complete nightmare.

    If at all possible, I would recommend changing the Visual Basic class to
    RealBASIC (http://realbasic.com/). It's not perfect, but it has proper
    OO support, and would make the transition to Python much easier. Even
    better would be teaching basic Python to the VB class and more advanced
    Python to the 12th graders; Python's biggest strength is allowing
    beginners to use simple OO or even procedural techniques without ever
    noticing the advanced stuff like list comprehensions and metaclasses.
     
    Leif K-Brooks, Jun 12, 2004
    #7
  8. Leif K-Brooks wrote:
    > Mediocre Person wrote:
    >
    >> So, what pitfalls should I look out for in introducing Python to
    >> students who have had a year of Visual BASIC?


    >
    > If at all possible, I would recommend changing the Visual Basic class to
    > RealBASIC (http://realbasic.com/). It's not perfect, but it has proper
    > OO support, and would make the transition to Python much easier. Even
    > better would be teaching basic Python to the VB class and more advanced
    > Python to the 12th graders;

    Using Python for the early class is not out of the question--but I'd
    want to find an environment that mimics (or improves upon) VB's
    brilliantly (forgive me) easy model of designing the gui and then
    programming responses to events. Someone mentioned SPE, which I haven't
    seen in action yet.

    Python's biggest strength is allowing
    > beginners to use simple OO or even procedural techniques without ever
    > noticing the advanced stuff like list comprehensions and metaclasses.
     
    Mediocre Person, Jun 12, 2004
    #8
  9. Mediocre Person

    Ryan Paul Guest

    On Sat, 12 Jun 2004 14:45:21 +0000, Mediocre Person wrote:

    > Well, there's OOP and then there's OOP, right? The first year students
    > have learned to _use_ pre-defined objects, but not design and create
    > classes.


    That makes sense. If they haven't learned to create objects yet, then
    python is probably the most practical way to teach it.

    > Can you give me some references to this, such as samples of student
    > work? I would like to see what grade 6 students can do in two months!


    This was part of a special program at my former junior high school. They
    offered a single semester computer programming class as an 'elective'.
    Thematically, the class focused on using object oriented idioms to solve
    problems. Most of the assignments were designed to emphasize the power and
    flexibility of OO.

    I think that the immediate and consistent focus on OO was part of what
    made them capable of doing so much, so quickly. Towards the end of the
    semester, they were working in groups, writing games. Their devotion to
    their work was somewhat inspiring. Many of them put in many extra hours to
    improve their work, and they developed a sort of competitive enthusiasm,
    challenging each other with small problems and comparing their solutions.

    The instructor of that programming class is doing a summer program with
    some of the students that will involve putting together a web site about
    the programming class that will showcase some of the student programs. He
    wants to teach them how to use mod_python. As soon as he gives me the
    address, i'll be sure to post it on a.l.p, as i'm sure there are many here
    who would be interested.

    > I agree that the syntax of Python makes it is easy to learn. However, I
    > think I've got a pretty good imagination where material is concerned!
    > There are excellent tie-ins to their mathematics, physics, chemistry,
    > and biology curricula. For instance, I recently came across the concept
    > of partitions in number theory, and computing all the partitions of an
    > integer is a dilly of a pickle of a problem!


    This is obviously why I'm not a teacher and you are. =} Sounds like you
    have some creative ways to tie it into general curriculum.

    > And, of course, it's really not about the language, in the end, after
    > all, but what you can learn to do with it. In which case, you say,
    > "AHA--so what was wrong with c++???" In a word, nothing. And I'll *miss*
    > all the lovely memory management lessons we did to develop our own
    > vector and list classes.


    I'd never ask "what is wrong with c++", because I'm already painfully
    aware of the answer: almost everything. I completely understand the
    motivation for moving away from it. When I write c++ I spend more time
    thinking about how to deal with the language's severe flaws, rather than
    how to get the job done.

    >I know nothing about ocaml or haskell, but I'll be sure to research them
    > this summer, so thanks for the tip!


    Really, it depends on what your goals are, and what you believe the
    capacity of the students to be. If you are introducing object oriented
    programming, python is a good choice, especially if the students have
    never been exposed to anything like python before.

    I know that if, in my senior year of high school, I had seen a python
    class offered, I would probably have laughed at the prospect, and taken
    something more challenging.

    OCaml is also free, and it also provides an interactive top-level. It has
    automatic memory management, and type inference. It is statically typed,
    and that makes it significantly more challenging to use effectively. OCaml
    has some interesting features, and learning to use them well requires a
    lot of thought, and careful attention to detail. Some aspects altered the
    way I think about programming logic (particularly: pattern matching,
    recursive types, stateless OO, and parametric polymorphism.)

    Based on what you have said, it sounds like python may be the best choice
    for your students at this point. I live in california, and the schools in
    my immediate vicinity all have very strong (well funded) tech programs.
    There are computers in most of the classrooms, and a simple computer
    science class is required for all students at the junior high, so the
    level of the students here is probably not indicative of students
    everywhere, and I hadnt really stopped to think about that before I made
    my post last night.

    As far as teaching python is concerned, the Edu-Sig is probably the best
    place for you to start.

    http://python.org/sigs/edu-sig/

    You find this specific link insightful, it talks about python at a high
    school level:
    http://python.org/workshops/2000-01/proceedings/papers/elkner/pyYHS.html

    Best of luck!

    --segphault
     
    Ryan Paul, Jun 12, 2004
    #9
  10. Mediocre Person

    Aahz Guest

    In article <>,
    Mediocre Person <> wrote:
    >
    >Using Python for the early class is not out of the question--but
    >I'd want to find an environment that mimics (or improves upon) VB's
    >brilliantly (forgive me) easy model of designing the gui and then
    >programming responses to events. Someone mentioned SPE, which I haven't
    >seen in action yet.


    There isn't anything as good as VB for simplicity of generating a UI and
    attaching some simple programming to it. Problem is, that's *ALL* VB is
    good for. Closest you'll come is either Boa Constructor or PythonCard.

    On the flip side, is your goal as an educator to show your students how
    to do the equivalent of crayon on construction paper? I find it
    interesting how frequently people teach either from the highest feasible
    level (e.g. VB) or the lowest feasible level (e.g. C or assembley),
    instead of finding something with a good balance of ease and power (e.g.
    Python).
    --
    Aahz () <*> http://www.pythoncraft.com/

    "as long as we like the same operating system, things are cool." --piranha
     
    Aahz, Jun 12, 2004
    #10
  11. Mediocre Person

    Hank Fay Guest

    In addition, for your advanced class you could take a look at Leo, part of
    the Literate programming effort. Think of a outliner, where your code
    resides under the nodes of the tree. For the data-oriented aspect of the
    application, you can put the data-oriented Use Cases as the tree, and put
    the code that implements each use case right there. Leo does much more, but
    it's a tool that will open your students' minds, and probably spoil them
    for the future. <s>

    Hank Fay

    --

    "Mediocre Person" <> wrote in message
    news:...
    > Leif K-Brooks wrote:
    > > Mediocre Person wrote:
    > >
    > >> So, what pitfalls should I look out for in introducing Python to
    > >> students who have had a year of Visual BASIC?

    >
    > >
    > > If at all possible, I would recommend changing the Visual Basic class to
    > > RealBASIC (http://realbasic.com/). It's not perfect, but it has proper
    > > OO support, and would make the transition to Python much easier. Even
    > > better would be teaching basic Python to the VB class and more advanced
    > > Python to the 12th graders;

    > Using Python for the early class is not out of the question--but I'd
    > want to find an environment that mimics (or improves upon) VB's
    > brilliantly (forgive me) easy model of designing the gui and then
    > programming responses to events. Someone mentioned SPE, which I haven't
    > seen in action yet.
    >
    > Python's biggest strength is allowing
    > > beginners to use simple OO or even procedural techniques without ever
    > > noticing the advanced stuff like list comprehensions and metaclasses.
     
    Hank Fay, Jun 12, 2004
    #11
  12. Mediocre Person

    Guest

    Mediocre Person <> wrote in message news:<>...

    > * less fussing with edit - compile - link - run - debug - edit -
    > compile - link - run -.....


    The Python cycle of running programs and fixing run-time errors that
    would be caught at compiled time in another language is in my
    experience MORE tedious than than the cycle for compiled languages
    like C++ and Fortran.

    It is easy to write a script that compiles, links, and (if no errors
    occurred) runs a program in a compiled language, making those three
    steps effectively one. I very rarely find myself directly calling the
    linker.
     
    , Jun 12, 2004
    #12
  13. Mediocre Person

    news Guest

    You could consider using boa constructor or PythonCard. However, I fear you
    will be disappointed ... there is just nothing (in any language) which comes
    close to the GUI IDE of VB. Boa probably comes closest ... but it is one
    heck of a steep learning curve.

    BTW. I am also a high school teacher and previously taught VB until more
    recent years when I have been encouraging students to enter programming
    competitions. The feedback from comps continues to be "those who use VB
    continue to under perform" ... most likely because VB allows one to focus so
    much on the gui rather than the problem / logic. ANyway, last year I had a
    very close minded group who wanted C++ at any cost. I refused and
    compromised by teaching them Java. I have not been happy with this move
    mostly because in NSW (Australia) we have a very restrictive syllabus which
    focuses on "structured programming". Hence (IMO) students are disadvantaged
    if they do anything other than VB. Similarly, this syllabus does not extend
    to cover OOP, design patterns and the like, so I would be shooting myself
    in the foot if I attempted to cover these things. Java does allow
    programming in the imperative (structured) style but is oh so bloody *&^%$
    .... students need to use it in an OO way to realise the true strength and
    value of the language.

    This year I am starting earlier (yr7) and introducing the students to
    Python. To capture their imagination I am creating a unit on programming
    Python games. Eventually I am aiming to be able to utilise the pygame
    modules. Now I know it is going to take some time (more than I have with the
    students this year), but it something different for them and I may attract
    greater numbers in two years time when we will have the time to develop this
    area. If I had the money I would buy a class set of Michael Dawson's -
    Python Programming for the absolute beginner. Premier Press.

    As far as an IDE goes I am going to stick with IDLE, build a reasonable
    knowledge and skill base, then attack wxpython and / or tkinter before
    moving on to pygame.
    regards
    Darren Payne
    Hurlstone Agricultural High School
     
    news, Jun 13, 2004
    #13
  14. Mediocre Person

    TomH Guest

    Mediocre Person <> wrote in message news:<>...
    > Well, after years of teaching grade 12 students c++, I've decided to
    > make a switch to Python.
    >

    ....
    >
    > So, what pitfalls should I look out for in introducing Python to
    > students who have had a year of Visual BASIC?
    >

    ....
    I would replace the VB with Python, then teach SQL to the more
    advanced students. This exposes them to two entirely different
    approaches to computing.
     
    TomH, Jun 13, 2004
    #14
  15. Mediocre Person

    Tim Golden Guest

    > Well, after years of teaching grade 12 students c++, I've decided to
    > make a switch to Python.


    Not sure how old "grade 12 students" are, but might
    be worthwhile having a look at the LiveWires site:

    http://www.livewires.org.uk/python/

    I'm planning to use it for the 13/14-year-olds at
    my Youth Club here in London, and its authors have
    certainly used it for several years at some Summer
    Camps to go by their site.

    TJG
     
    Tim Golden, Jun 14, 2004
    #15
  16. On Sat, 12 Jun 2004 03:22:23 GMT, Mediocre Person
    <> wrote:

    >Well, after years of teaching grade 12 students c++, I've decided to
    >make a switch to Python.


    Excellent choice.
    >
    >Why?
    >
    > * interactive mode for learning
    > * less fussing with edit - compile - link - run - debug - edit -
    >compile - link - run -.....


    The IDLE environment, included with Python, is perfect for interactive
    learning (and for serious work later). It's a minimal environment,
    but it has everything I need. It has no GUI builder, but I don't miss
    that because I use Qt Designer when I need a GUI.

    > * lots of modules
    > * I was getting tired of teaching c++! Bored teacher = bad instruction.
    > * thought about tcl/tk but it's just too different syntactically
    >(for me, not my students!) after so much time with languages like
    >c++/ada95/pascal/BASIC/Fortran, etc.


    I looked at tcl/tk before discovering Python. I've never looked at it
    since.

    > * it appears to be FREE (which in a high school environment is
    >mightily important) from both python.org or activestate.com. I think I
    >like activestate's ide (under Win98) a bit better than idle, but your
    >comments/suggestions?


    I haven't looked at Activestate, but it may be the right choice if you
    are using Windows. Qt Designer is free only on Linux. I think there
    is an educational license for Windows, but you might want to check on
    that. http://www.trolltech.com

    >I've decided to give John Zelle's new book a try as a student
    >textbook--it's as good an introductory CS book in any language I've
    >seen. I've done a couple of small projects with tkinter, like what I
    >see, and would like to introduct my students to it, although Zelle
    >doesn't make use of it in his text.


    I haven't seen Zelle's book, but I would think the best book for a
    one-semester course would be Learning Python, 2nd ed. My only problem
    with LP2E is that I need something shorter because I have only a few
    weeks in a course on circuit-design tools. I've written a shorter
    presentation of Python OOP for engineering students. It may be too
    short for high school students, but you are welcome to use it. I'm
    thinking of expanding it to a larger audience by keeping the basic
    presentation short, but adding more simple examples and exercises.
    Your comments would be appreciated.
    http://ece.arizona.edu/~edatools/Python/

    >So, what pitfalls should I look out for in introducing Python to
    >students who have had a year of Visual BASIC?


    I used VB for many years, but never really learned it. It has always
    been just a way to get something simple done quickly. Now that Python
    has assumed that role, about the only thing I would use VB for is
    macros in an Excel spreadsheet.

    I would think having a year of VB prior to Python would be an
    advantage, in that the students have at least worked with computers
    and simple programs. The problems might be an expectation of being
    able to do instantly in Python what was done with the GUI builder in
    VB. You will need to avoid long discussions of syntax, and focus as
    early as possible on interesting examples. From your later posts, it
    sounds like you already have some good examples in mind.

    I would be interested in following your progress in developing this
    course. Do you have a website?

    -- Dave

    ************************************************************* *
    * David MacQuigg, PhD * email: dmq at gain.com * *
    * IC Design Engineer * phone: USA 520-721-4583 * * *
    * Analog Design Methodologies * * *
    * * 9320 East Mikelyn Lane * * *
    * VRS Consulting, P.C. * Tucson, Arizona 85710 *
    ************************************************************* *
     
    David MacQuigg, Jun 16, 2004
    #16
  17. In article <>,
    David MacQuigg <> wrote:
    >On Sat, 12 Jun 2004 03:22:23 GMT, Mediocre Person
    ><> wrote:

    .
    .
    .
    >> * it appears to be FREE (which in a high school environment is
    >>mightily important) from both python.org or activestate.com. I think I
    >>like activestate's ide (under Win98) a bit better than idle, but your
    >>comments/suggestions?

    >
    >I haven't looked at Activestate, but it may be the right choice if you
    >are using Windows. Qt Designer is free only on Linux. I think there

    .
    .
    .
    Many ActiveState resources for Python are both free of
    charge and available for Linux (and Solaris and ...)
    <URL: http://activestate.com/Python.plex >, not just
    Windows.

    One consideration in all this talk of "teaching GUI
    construction" is to emphasize Web applications. The
    biggest surprise to me in this thread is that that
    hasn't been taken more seriously. I suspect that's
    where my daughters will start, if they ever choose to
    try out development.
    --

    Cameron Laird <>
    Business: http://www.Phaseit.net
     
    Cameron Laird, Jun 16, 2004
    #17
  18. (Cameron Laird) wrote in message
    > One consideration in all this talk of "teaching GUI
    > construction" is to emphasize Web applications. The
    > biggest surprise to me in this thread is that that
    > hasn't been taken more seriously. I suspect that's
    > where my daughters will start, if they ever choose to
    > try out development.


    I'm currently employed as a CS instructor and I've seen it
    demonstrated to my satifaction at least that teaching web apps first
    confuses the heck out of beginners. The distinction between client
    and server is a big hurdle. We're now back to teaching console apps
    before trying to do anything fancy.

    -Jonathan
     
    Jonathan Ellis, Jun 22, 2004
    #18
  19. Mediocre Person

    Fuzzyman Guest

    Mediocre Person <> wrote in message news:<>...
    > Well, after years of teaching grade 12 students c++, I've decided to
    > make a switch to Python.
    >
    > Why?
    >
    > * interactive mode for learning
    > * less fussing with edit - compile - link - run - debug - edit -
    > compile - link - run -.....
    > * lots of modules
    > * I was getting tired of teaching c++! Bored teacher = bad instruction.
    > * thought about tcl/tk but it's just too different syntactically
    > (for me, not my students!) after so much time with languages like
    > c++/ada95/pascal/BASIC/Fortran, etc.
    > * it appears to be FREE (which in a high school environment is
    > mightily important) from both python.org or activestate.com. I think I
    > like activestate's ide (under Win98) a bit better than idle, but your
    > comments/suggestions?
    >
    > I've decided to give John Zelle's new book a try as a student
    > textbook--it's as good an introductory CS book in any language I've
    > seen. I've done a couple of small projects with tkinter, like what I
    > see, and would like to introduct my students to it, although Zelle
    > doesn't make use of it in his text.
    >
    > So, what pitfalls should I look out for in introducing Python to
    > students who have had a year of Visual BASIC?



    I don't know anything about visual basic.... but the difference
    between an object and a name bound to that object bites *every* python
    newbie at some point.....

    Regards,

    Fuzzy

    http://www.voidspace.org.uk/atlantibots/pythonutils.html
    >
    > Regards,
    >
    > chackowsky dot nick at portal dot brandonsd dot mb dot ca <-- have the
    > spambots figured this one out yet?
     
    Fuzzyman, Jun 22, 2004
    #19
  20. Mediocre Person

    Chris King Guest

    Leif K-Brooks <> should have written in message
    news:<PCGyc.3314$>...
    > going to VB after a genuine OO language is a complete nightmare.

    Fixed ;)

    VB's IDE is a great way for your students to get immediate feedback
    while designing their GUI, but so is the combination of Python's
    immediate interpreter and Tkinter. With code as simple as this,
    entered in the interpreter:

    >>> from Tkinter import *
    >>> Label(text='Hello, world!').pack()
    >>> def cmd(): print 'click!'
    >>> Button(text='Click me!',command=cmd).pack()


    students can both watch the window be built as they enter commands,
    and immediately have a program that 'does something' (albiet something
    as simple as printing 'click!' on the screen). Getting feedback like
    this will allow them to more readily understand what's going on in
    non-VB languages that require code to create GUIs.
     
    Chris King, Jun 22, 2004
    #20
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Kyler Laird
    Replies:
    7
    Views:
    432
    Arthur
    Feb 14, 2004
  2. Oleg Broytmann
    Replies:
    5
    Views:
    472
    PyScripter
    Nov 20, 2006
  3. Kirill Simonov
    Replies:
    8
    Views:
    533
    Kirill Simonov
    Nov 20, 2006
  4. Kirill Simonov
    Replies:
    0
    Views:
    278
    Kirill Simonov
    Nov 18, 2006
  5. Stefan Ram

    Teaching Java, teaching what?

    Stefan Ram, Dec 8, 2013, in forum: Java
    Replies:
    57
    Views:
    643
    Ali Sh
    Dec 18, 2013
Loading...

Share This Page