Python too complex ?!?!?!

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Brian

    Python too complex ?!?!?!

    Had a unsettling conversation with a CS instructor that
    teaches at local high schools and the community
    college. This person is a long-term Linux/C/Python
    programmer, but he claims that the install, config, and
    library models for C# have proved to be less
    problematic than Python. So both his courses (intro,
    data structs, algorithms) are taught in C#.

    I am a low-end (3-year) journeyman Pythonista, and I
    was attracted to the language because of its
    simplicity. And I have come to enjoy the richness of
    available libraries.

    Many of the good people of this NG may be 'too close'
    to answer, but has Python, as a general devel platform,
    lost its simplicity ? Is library install too complex
    and unreliable ? Will my dog go to heaven ?
  • Paddy

    #2
    Re: Python too complex ?!?!?!

    On Nov 17, 1:46 pm, Brian <not_here@no_wh ere.comwrote:
    Had a unsettling conversation with a CS instructor that
    teaches at local high schools and the community
    college. This person is a long-term Linux/C/Python
    programmer, but he claims that the install, config, and
    library models for C# have proved to be less
    problematic than Python. So both his courses (intro,
    data structs, algorithms) are taught in C#.
    >
    I am a low-end (3-year) journeyman Pythonista, and I
    was attracted to the language because of its
    simplicity. And I have come to enjoy the richness of
    available libraries.
    >
    Many of the good people of this NG may be 'too close'
    to answer, but has Python, as a general devel platform,
    lost its simplicity ? Is library install too complex
    and unreliable ? Will my dog go to heaven ?
    It would be nice to have more info on his specific problems. Me, I
    find both Activestates and the official Python wiundows installers
    just work.

    - Paddy.

    Comment

    • BartlebyScrivener

      #3
      Re: Python too complex ?!?!?!

      On Nov 17, 7:46 am, Brian <not_here@no_wh ere.comwrote:
      This person is a long-term Linux/C/Python
      programmer, but he claims that the install, config, and
      library models for C# have proved to be less
      problematic than Python.
      If his students have problems installing Python on Windows, show him
      this.

      Critically-acclaimed novelist Richard Dooling is the author of five novels, along with two nonfiction works.


      It can't get any easier.

      rd

      Comment

      • Donn Ingle

        #4
        Re: Python too complex ?!?!?!

        I dunno about your dog :) but Python libs are not too demanding. From a
        Gnu/Linux pov with package managers things are quite simple.

        My wish is to find a way to make that even easier because the packaged
        modules are not always up to date.

        If the Cheese Shop could supply downloads of modules and we could stick on a
        gui interface that wraps around import statements to guide the installation
        of any missing packages -- that would be progress.

        If you are online and the app runs, it can check the "freshness" of your
        modules (those called from the app and recursively) and offer to fetch the
        latest stable versions.

        The gui is an issue. Does one TK or rely on some fall-back system of
        gnome/kde/x11/windows dialogue boxes (ending in abject failure by way of
        raw_input on the command line)? Or (perhaps) have it fetch a standard
        dialogue library which would fetch and install what is needed for future
        occasions.

        Anyway, this is a bit of a hijack and I have not touched C# in any way, but
        I don't think Python has anything to be ashamed of.*

        /d

        * Okay, maybe decorators but that's just because I am far too thick to grok
        them :D


        Comment

        • davisn90210@gmail.com

          #5
          Re: Python too complex ?!?!?!

          On Nov 17, 8:25 am, Donn Ingle <donn.in...@gma il.comwrote:
          I dunno about your dog :) but Python libs are not too demanding. From a
          Gnu/Linux pov with package managers things are quite simple.
          >
          My wish is to find a way to make that even easier because the packaged
          modules are not always up to date.
          >
          If the Cheese Shop could supply downloads of modules and we could stick on a
          gui interface that wraps around import statements to guide the installation
          of any missing packages -- that would be progress.
          >
          Interesting idea, although it's not something I'd want included and
          turned on by default. Should certainly be possible, though, with a
          little __import__ magic.
          If you are online and the app runs, it can check the "freshness" of your
          modules (those called from the app and recursively) and offer to fetch the
          latest stable versions.
          >
          Something similar to Java's webstart? Implement an __import__ hook
          that downloads and caches the latest (stable) versions of libraries as
          needed.
          The gui is an issue. Does one TK or rely on some fall-back system of
          gnome/kde/x11/windows dialogue boxes (ending in abject failure by way of
          raw_input on the command line)? Or (perhaps) have it fetch a standard
          dialogue library which would fetch and install what is needed for future
          occasions.
          >
          You wouldn't really *need* a GUI, although it probably should be a
          configurable option ... so the user can keep tabs on, and more control
          over, what's going on. No reason why it couldn't be totally
          automated. easy_install already provides for automated installation
          of python apps/libraries, so you could build off that.
          Anyway, this is a bit of a hijack and I have not touched C# in any way, but
          I don't think Python has anything to be ashamed of.*
          >
          /d
          >
          * Okay, maybe decorators but that's just because I am far too thick to grok
          them :D
          It seems there are a number of people who don't grok decorators.
          While getting to know how they work underneath does require some
          careful reading and out-of-the-box thinking, it's only really
          necessary to understand them at this level if you want to actually
          implement a decorator. Merely using decorators is, IMHO, much easier
          to understand (but still requires a slight brain-warp). I think some
          people try to understand decorators too completely too quickly, and
          end up labeling them one of those complex/unintuitive/"way out"
          things.

          --Nathan Davis

          Comment

          • Donn Ingle

            #6
            Re: Python too complex ?!?!?!

            Interesting idea, although it's not something I'd want included and
            turned on by default. Should certainly be possible, though, with a
            little __import__ magic.
            Well, since we're shooting the sh*t :), I tried in my one and only released
            app (Fonty Python) to wrap the imports in try clauses and then print
            helpful strings to the console to guide the user.
            I'm really not too clued-up on the __deep__ magic of Python, so I can't say
            what tricks there are, but a simple "catch a fail and then start a
            solution" process is a general approach.
            >If you are online and the app runs, it can check the "freshness" of your
            >modules (those called from the app and recursively) and offer to fetch
            >the latest stable versions.
            Something similar to Java's webstart? Implement an __import__ hook
            that downloads and caches the latest (stable) versions of libraries as
            needed.
            I have also never touched Java, so I can't say, but something like that.
            The main problem with having modules coming from the web is time. How long
            is the life of a URL? The Cheese Shop seems pretty well established and
            could serve the role. Perhaps there are already ways of making sure that a
            hard-coded link in an app can reach a variable URL online.
            You wouldn't really *need* a GUI, although it probably should be a
            configurable option ...
            I'd agree, but then I grew up with commands lines. I can say with total
            confidence that the command-line scares a lot of people and if there are
            any questions that need answering during the automated process (and there's
            always *something* that crops up ) then a gui is the natural way to reach
            the user.
            No reason why it couldn't be totally
            automated. easy_install already provides for automated installation
            of python apps/libraries, so you could build off that.
            Totally automated would be the goal. I'd say a throbber or progress
            animation of some kind would be needed.

            Just thought of a wrinkle - say a new module is available and is installed
            and then proves to be broken. How can the app recover? There'd have to be a
            system of flags in a db that mark the situation and on re-run can roll back
            to the last working module. Then we get feedback to the author of the
            module....

            And let's not forget all the joy that can be spread by having to compile
            modules (on various platforms) from C/C++ and then worry about *their*
            dependant libraries!

            Oh fun times :p

            (I think I can see why this has never been approached.)
            Merely using decorators is, IMHO, much easier
            to understand (but still requires a slight brain-warp).
            I'm still stuck with those things. I can't really find an example that I
            want to use. My brain keeps saying "yeah, but that's so smoke and mirrors
            and I could do it this way ... which seems much plainer."
            I think some
            people try to understand decorators too completely too quickly, and
            end up labeling them one of those complex/unintuitive/"way out"
            things.
            I have put them in the bag along with Design Patterns and Threads as "things
            that I don't have to worry about because liff is too short. And like the
            Spanish Inquisition, they're welcome to surprise me when I least expect it,
            but I'm not going to lose my mind waiting :D

            /d

            Comment

            • John Nagle

              #7
              Re: Python too complex ?!?!?!

              Paddy wrote:
              On Nov 17, 1:46 pm, Brian <not_here@no_wh ere.comwrote:
              >Had a unsettling conversation with a CS instructor that
              >teaches at local high schools and the community
              >college. This person is a long-term Linux/C/Python
              >programmer, but he claims that the install, config, and
              >library models for C# have proved to be less
              >problematic than Python.
              He has a point. Many Python enthusiasts are in denial about this,
              but, face it, the binary library situation isn't in good shape.

              Try running something that needs, say, MySQL and OpenSSL on a
              shared hosting server and see how far you get. Or try to install
              the same set of modules on both Linux and Windows.

              John Nagle

              Comment

              • John Salerno

                #8
                Re: Python too complex ?!?!?!

                Brian wrote:
                Had a unsettling conversation with a CS instructor that
                teaches at local high schools and the community
                college. This person is a long-term Linux/C/Python
                programmer, but he claims that the install, config, and
                library models for C# have proved to be less
                problematic than Python. So both his courses (intro,
                data structs, algorithms) are taught in C#.
                >
                I am a low-end (3-year) journeyman Pythonista, and I
                was attracted to the language because of its
                simplicity. And I have come to enjoy the richness of
                available libraries.
                >
                Many of the good people of this NG may be 'too close'
                to answer, but has Python, as a general devel platform,
                lost its simplicity ? Is library install too complex
                and unreliable ? Will my dog go to heaven ?
                I'm a complete noob about most of this, but it sounds like his problem
                may have more to do with what needs to be done on a Linux machine, than
                anything specifically pertaining to Python. How can you call installing
                Python (or any third-party modules) on Windows 'hard'?

                Maybe his students just have a harder type figuring out how to install
                things in Linux? I don't know...

                Comment

                • Kay Schluehr

                  #9
                  Re: Python too complex ?!?!?!

                  On 17 Nov., 14:46, Brian <not_here@no_wh ere.comwrote:
                  Had a unsettling conversation with a CS instructor that
                  teaches at local high schools and the community
                  college. This person is a long-term Linux/C/Python
                  programmer, but he claims that the install, config, and
                  library models for C# have proved to be less
                  problematic than Python. So both his courses (intro,
                  data structs, algorithms) are taught in C#.
                  I don't understand this complaint. How does your instructor installs
                  libraries for C#? When he uses Linux for teaching purposes I assume
                  his students have little problems typing some shell commands and when
                  he uses Windows his students might feel comfortable double clicking on
                  a Windows installer - most likely containing prepackaged binaries.
                  What have I missed?

                  Kay

                  Comment

                  • alain

                    #10
                    Re: Python too complex ?!?!?!

                    On Nov 19, 9:44 am, Kay Schluehr <kay.schlu...@g mx.netwrote:
                    On 17 Nov., 14:46, Brian <not_here@no_wh ere.comwrote:
                    >
                    Had a unsettling conversation with a CS instructor that
                    teaches at local high schools and the community
                    college. This person is a long-term Linux/C/Python
                    programmer, but he claims that the install, config, and
                    library models for C# have proved to be less
                    problematic than Python. So both his courses (intro,
                    data structs, algorithms) are taught in C#.
                    >
                    I don't understand this complaint. How does your instructor installs
                    libraries for C#? When he uses Linux for teaching purposes I assume
                    his students have little problems typing some shell commands and when
                    he uses Windows his students might feel comfortable double clicking on
                    a Windows installer - most likely containing prepackaged binaries.
                    What have I missed?
                    >
                    Kay
                    I think i understand his complaint.
                    Have you ever tried to install a package making use of easy_install?
                    If you have, then you understand this is a real pain in the ass,
                    especially if your internet access requires proxy authentication.
                    The world was easy before easy_install !

                    Alain

                    Comment

                    • kyosohma@gmail.com

                      #11
                      Re: Python too complex ?!?!?!

                      On Nov 17, 7:46 am, Brian <not_here@no_wh ere.comwrote:
                      Had a unsettling conversation with a CS instructor that
                      teaches at local high schools and the community
                      college. This person is a long-term Linux/C/Python
                      programmer, but he claims that the install, config, and
                      library models for C# have proved to be less
                      problematic than Python. So both his courses (intro,
                      data structs, algorithms) are taught in C#.
                      >
                      I am a low-end (3-year) journeyman Pythonista, and I
                      was attracted to the language because of its
                      simplicity. And I have come to enjoy the richness of
                      available libraries.
                      >
                      Many of the good people of this NG may be 'too close'
                      to answer, but has Python, as a general devel platform,
                      lost its simplicity ? Is library install too complex
                      and unreliable ? Will my dog go to heaven ?
                      If this professor was only using Windows for his environment, then I
                      might be able to understand his argument better. There are many more
                      external modules for Python that don't have Windows installers than
                      there are with binaries. And I've had more than my fair share of
                      broken setup.py files.

                      On the other hand, if all that is needed are the standard libraries,
                      than it's a breeze to install Python since they're all included.

                      Mike

                      Comment

                      • Chris Mellon

                        #12
                        Re: Python too complex ?!?!?!

                        On Nov 19, 2007 8:52 AM, <kyosohma@gmail .comwrote:
                        >
                        On Nov 17, 7:46 am, Brian <not_here@no_wh ere.comwrote:
                        Had a unsettling conversation with a CS instructor that
                        teaches at local high schools and the community
                        college. This person is a long-term Linux/C/Python
                        programmer, but he claims that the install, config, and
                        library models for C# have proved to be less
                        problematic than Python. So both his courses (intro,
                        data structs, algorithms) are taught in C#.

                        I am a low-end (3-year) journeyman Pythonista, and I
                        was attracted to the language because of its
                        simplicity. And I have come to enjoy the richness of
                        available libraries.

                        Many of the good people of this NG may be 'too close'
                        to answer, but has Python, as a general devel platform,
                        lost its simplicity ? Is library install too complex
                        and unreliable ? Will my dog go to heaven ?
                        >
                        If this professor was only using Windows for his environment, then I
                        might be able to understand his argument better. There are many more
                        external modules for Python that don't have Windows installers than
                        there are with binaries. And I've had more than my fair share of
                        broken setup.py files.
                        >
                        On the other hand, if all that is needed are the standard libraries,
                        than it's a breeze to install Python since they're all included.
                        >
                        Mike
                        >
                        These modules exist, but aren't that common. Certainly anything you're
                        likely to be using in an introductory compsci course is well packaged.
                        And even if it's not, it's really not that hard to create packages or
                        installers - a days work of course prep would take care of the
                        potential problem.

                        Comment

                        • kyosohma@gmail.com

                          #13
                          Re: Python too complex ?!?!?!

                          On Nov 19, 9:57 am, "Chris Mellon" <arka...@gmail. comwrote:
                          On Nov 19, 2007 8:52 AM, <kyoso...@gmail .comwrote:
                          >
                          >
                          >
                          >
                          >
                          On Nov 17, 7:46 am, Brian <not_here@no_wh ere.comwrote:
                          Had a unsettling conversation with a CS instructor that
                          teaches at local high schools and the community
                          college. This person is a long-term Linux/C/Python
                          programmer, but he claims that the install, config, and
                          library models for C# have proved to be less
                          problematic than Python. So both his courses (intro,
                          data structs, algorithms) are taught in C#.
                          >
                          I am a low-end (3-year) journeyman Pythonista, and I
                          was attracted to the language because of its
                          simplicity. And I have come to enjoy the richness of
                          available libraries.
                          >
                          Many of the good people of this NG may be 'too close'
                          to answer, but has Python, as a general devel platform,
                          lost its simplicity ? Is library install too complex
                          and unreliable ? Will my dog go to heaven ?
                          >
                          If this professor was only using Windows for his environment, then I
                          might be able to understand his argument better. There are many more
                          external modules for Python that don't have Windows installers than
                          there are with binaries. And I've had more than my fair share of
                          broken setup.py files.
                          >
                          On the other hand, if all that is needed are the standard libraries,
                          than it's a breeze to install Python since they're all included.
                          >
                          Mike
                          >
                          These modules exist, but aren't that common. Certainly anything you're
                          likely to be using in an introductory compsci course is well packaged.
                          And even if it's not, it's really not that hard to create packages or
                          installers - a days work of course prep would take care of the
                          potential problem.
                          I stand corrected. Thanks for the clarification.

                          Mike

                          Comment

                          • Diez B. Roggisch

                            #14
                            Re: Python too complex ?!?!?!

                            alain schrieb:
                            On Nov 19, 9:44 am, Kay Schluehr <kay.schlu...@g mx.netwrote:
                            >On 17 Nov., 14:46, Brian <not_here@no_wh ere.comwrote:
                            >>
                            >>Had a unsettling conversation with a CS instructor that
                            >>teaches at local high schools and the community
                            >>college. This person is a long-term Linux/C/Python
                            >>programmer, but he claims that the install, config, and
                            >>library models for C# have proved to be less
                            >>problematic than Python. So both his courses (intro,
                            >>data structs, algorithms) are taught in C#.
                            >I don't understand this complaint. How does your instructor installs
                            >libraries for C#? When he uses Linux for teaching purposes I assume
                            >his students have little problems typing some shell commands and when
                            >he uses Windows his students might feel comfortable double clicking on
                            >a Windows installer - most likely containing prepackaged binaries.
                            >What have I missed?
                            >>
                            >Kay
                            >
                            I think i understand his complaint.
                            Have you ever tried to install a package making use of easy_install?
                            If you have, then you understand this is a real pain in the ass,
                            especially if your internet access requires proxy authentication.
                            The world was easy before easy_install !
                            setuptools might not be flawless, but it works for me most of the times
                            - and always better than pure distutils.

                            BTW, you can download eggs and install them from files - so while
                            teaching easy_install how to deal with proxies (are these still used by
                            anyone - I thought that was in the 90ties... ) certainly would be good,
                            it isn't necessary.

                            Diez

                            Comment

                            • Aaron Watters

                              #15
                              Re: Python too complex ?!?!?!

                              On Nov 19, 3:44 am, Kay Schluehr <kay.schlu...@g mx.netwrote:
                              On 17 Nov., 14:46, Brian <not_here@no_wh ere.comwrote:
                              What have I missed?
                              Microsoft has a free download version of Visual Studio
                              which you can install in one go that has basically everything
                              you might want to cover in the first 2 or 3 programming
                              classes built in. Also, when it comes to making things easy
                              the magic "intellisen se" in VS cannot be beat, and stricter
                              typing rules tend to keep'em out of trouble. I've seen
                              moderately skilled programmers get confused about list.append
                              versus list.extend -- it wouldn't happen in C#.

                              I would suggest that Python might be better for
                              more advanced classes like data structures
                              because Python cuts out all those declarations that get
                              in the way of understanding. For example you could implement
                              a binary tree in Python in 5 minutes of typing, providing
                              "just the facts, M'am", whereas even
                              with intellisense help it would take 15 minutes in C# and
                              the students would be totally lost in the details when
                              you were done.

                              It's also possible that once you break'em in a bit
                              beginner students would make better progress with more
                              advanced concepts by making use of the interactive
                              interpreter. I've taught java and C# where the students
                              freeze in abject fear when they confront their first
                              array -- Python lists are much less intimidating at
                              the interactive prompt. At the beginning, however, I would
                              agree that C# has some serious advantages. I don't
                              see anything wrong in teaching a bit of both, tho.

                              Students also like to learn languages which they can
                              find in the "help wanted" section very easily ;).

                              -- Aaron Watters

                              ===

                              Comment

                              Working...