language learning vs. process

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

    language learning vs. process

    Hi,
    I'm getting started with python and have almost zero programming experience.
    I'm finding that there are tons of tutorials on the internet -- such as the
    standard tutorial at python.org -- that tell you all about the language.
    That is, what are the methods, functions, modules, syntax, punctuation, etc.
    No problem there!

    Meanwhile, I'm finding that there is very little (that I can find) about how
    to do basic logistical things related to using python and implementing
    programs. For example: how to run a program. That's pretty basic, but I
    don't see anything in the tutorials about it. With IDLE, it's easy enough:
    just hit F5. But working on my server via Putty, trying to get a concrete,
    meaningful result, it's hit and miss. For example, I find that sometimes a
    program will run if I import it. I typed "import smtpmail" and it ran -- it
    asked me to input From, To, Subj, Message. Other times, I type in "import
    smtpmail" and it imports but doesn't run. My server is Unix. Typing
    "python smtpmail.py" doesn't do it. That seems to be what a few websites
    say to do to run a program. Doesn't work for me. It returns 'File
    "<stdin>", line 1' and a little carrot pointing up at the 'l' in smtpmail.
    I know it's on the path since I can import it. And the permissions are 755.

    Another example of a very basic problem I can't find a solution to in any
    tutorial: how to log in to an SMTP server (authentication ). My web
    searches have turned up only a few snippets of listserv conversations
    between people who already know enough about the subject that I'm not able
    to divine anything from the code they pass back and forth. A search on
    Python.org doesn't turn up anything that would help newcomers.

    So basically, what I'm saying is, there is a wealth of information about how
    to concatenate strings and stuff like that, but I'm finding it very
    difficult to get started with basic processes and logistical things. For
    example, it took me longer than I care to admit to figure out how to append
    the sys.path (that's actually in the tutorial but it's somewhat
    inconspicuous.)

    My ideal beginner resource would be a complete, step-by-step explanation of
    how to implement a simple program -- starting with typing "python" at the
    command prompt and ending with some kind of concrete result. Then, with a
    complete understanding of the process of writing and implementing (emphasis
    on the latter) a program, my efforts to learn the content and syntax of the
    language itself will be a lot more meaningful. That is, I can learn things
    like what a string is and have some confidence that I'll actually be doing
    something (other than playing with a calculator) that can provide something
    of value to end users in far flung places.

    Might seem weird to start with learning process and implementation, since
    it's all dependent to a large extent on using the language properly, but I
    do think it's possible to learn implementation first (with a bare minimum of
    language learning) and then go back and learn more about the language. Just
    something to think about for the excellent people who teach ingrates like me
    how to program.

    If anyone has any pointers on where to get more how-to information more
    oriented towards process/logistics please let me know.
    Thanks!
    Ryan




  • Ben Finney

    #2
    Re: language learning vs. process

    On Mon, 1 Dec 2003 21:09:31 -0500, Ryan Walker wrote:[color=blue]
    > I'm finding that there is very little (that I can find) about how to
    > do basic logistical things related to using python and implementing
    > programs. For example: how to run a program. That's pretty basic,
    > but I don't see anything in the tutorials about it.[/color]

    That's probably because it's very dependent on the OS and environment
    you're using; running programs, forming commands, customising an
    environment are better documented in the docs for the OS.

    Putting that kind of stuff in detail into Python's docs (or a
    PYthon-specific tutorial) would be a waste of space: you'd be
    uninterested in all the information that was for environments other than
    your own.

    --
    \ "It is seldom that liberty of any kind is lost all at once." |
    `\ -- David Hume |
    _o__) |
    Ben Finney <http://bignose.squidly .org/>

    Comment

    • Bryan

      #3
      Re: language learning vs. process

      Ryan Walker wrote:[color=blue]
      > Hi,
      > I'm getting started with python and have almost zero programming experience.
      > I'm finding that there are tons of tutorials on the internet -- such as the
      > standard tutorial at python.org -- that tell you all about the language.
      > That is, what are the methods, functions, modules, syntax, punctuation, etc.
      > No problem there!
      >
      > Meanwhile, I'm finding that there is very little (that I can find) about how
      > to do basic logistical things related to using python and implementing
      > programs. For example: how to run a program. That's pretty basic, but I
      > don't see anything in the tutorials about it. With IDLE, it's easy enough:
      > just hit F5. But working on my server via Putty, trying to get a concrete,
      > meaningful result, it's hit and miss. For example, I find that sometimes a
      > program will run if I import it. I typed "import smtpmail" and it ran -- it
      > asked me to input From, To, Subj, Message. Other times, I type in "import
      > smtpmail" and it imports but doesn't run. My server is Unix. Typing
      > "python smtpmail.py" doesn't do it. That seems to be what a few websites
      > say to do to run a program. Doesn't work for me. It returns 'File
      > "<stdin>", line 1' and a little carrot pointing up at the 'l' in smtpmail.
      > I know it's on the path since I can import it. And the permissions are 755.
      >
      > Another example of a very basic problem I can't find a solution to in any
      > tutorial: how to log in to an SMTP server (authentication ). My web
      > searches have turned up only a few snippets of listserv conversations
      > between people who already know enough about the subject that I'm not able
      > to divine anything from the code they pass back and forth. A search on
      > Python.org doesn't turn up anything that would help newcomers.
      >
      > So basically, what I'm saying is, there is a wealth of information about how
      > to concatenate strings and stuff like that, but I'm finding it very
      > difficult to get started with basic processes and logistical things. For
      > example, it took me longer than I care to admit to figure out how to append
      > the sys.path (that's actually in the tutorial but it's somewhat
      > inconspicuous.)
      >
      > My ideal beginner resource would be a complete, step-by-step explanation of
      > how to implement a simple program -- starting with typing "python" at the
      > command prompt and ending with some kind of concrete result. Then, with a
      > complete understanding of the process of writing and implementing (emphasis
      > on the latter) a program, my efforts to learn the content and syntax of the
      > language itself will be a lot more meaningful. That is, I can learn things
      > like what a string is and have some confidence that I'll actually be doing
      > something (other than playing with a calculator) that can provide something
      > of value to end users in far flung places.
      >
      > Might seem weird to start with learning process and implementation, since
      > it's all dependent to a large extent on using the language properly, but I
      > do think it's possible to learn implementation first (with a bare minimum of
      > language learning) and then go back and learn more about the language. Just
      > something to think about for the excellent people who teach ingrates like me
      > how to program.
      >
      > If anyone has any pointers on where to get more how-to information more
      > oriented towards process/logistics please let me know.
      > Thanks!
      > Ryan
      >
      >
      >
      >[/color]

      i think there is another option you aren't thinking about. you mentioned learning with standard tutorials about basic
      things like concatenating strings. you also mentioned that you would like to learn by writing one large program, step
      by step. i think there is a third option you should consider, and IMO it's the best. it's studying small fully working
      recipes that concentrate on one issue at a time and gives you a good foundation to build upon. fortunately, there is a
      book that does just this and it's called "Python Cookbook". i think if you try to go for the one big program, you will
      miss out on a lot of important stuff. I think there are also free online tutorials that do much the same thing such as
      "Dive into Python". anyways, just my opinion.

      bryan

      Comment

      • Bryan

        #4
        Re: language learning vs. process

        Ryan Walker wrote:[color=blue]
        > Hi,
        > I'm getting started with python and have almost zero programming experience.
        > I'm finding that there are tons of tutorials on the internet -- such as the
        > standard tutorial at python.org -- that tell you all about the language.
        > That is, what are the methods, functions, modules, syntax, punctuation, etc.
        > No problem there!
        >
        > Meanwhile, I'm finding that there is very little (that I can find) about how
        > to do basic logistical things related to using python and implementing
        > programs. For example: how to run a program. That's pretty basic, but I
        > don't see anything in the tutorials about it. With IDLE, it's easy enough:
        > just hit F5. But working on my server via Putty, trying to get a concrete,
        > meaningful result, it's hit and miss. For example, I find that sometimes a
        > program will run if I import it. I typed "import smtpmail" and it ran -- it
        > asked me to input From, To, Subj, Message. Other times, I type in "import
        > smtpmail" and it imports but doesn't run. My server is Unix. Typing
        > "python smtpmail.py" doesn't do it. That seems to be what a few websites
        > say to do to run a program. Doesn't work for me. It returns 'File
        > "<stdin>", line 1' and a little carrot pointing up at the 'l' in smtpmail.
        > I know it's on the path since I can import it. And the permissions are 755.
        >
        > Another example of a very basic problem I can't find a solution to in any
        > tutorial: how to log in to an SMTP server (authentication ). My web
        > searches have turned up only a few snippets of listserv conversations
        > between people who already know enough about the subject that I'm not able
        > to divine anything from the code they pass back and forth. A search on
        > Python.org doesn't turn up anything that would help newcomers.
        >
        > So basically, what I'm saying is, there is a wealth of information about how
        > to concatenate strings and stuff like that, but I'm finding it very
        > difficult to get started with basic processes and logistical things. For
        > example, it took me longer than I care to admit to figure out how to append
        > the sys.path (that's actually in the tutorial but it's somewhat
        > inconspicuous.)
        >
        > My ideal beginner resource would be a complete, step-by-step explanation of
        > how to implement a simple program -- starting with typing "python" at the
        > command prompt and ending with some kind of concrete result. Then, with a
        > complete understanding of the process of writing and implementing (emphasis
        > on the latter) a program, my efforts to learn the content and syntax of the
        > language itself will be a lot more meaningful. That is, I can learn things
        > like what a string is and have some confidence that I'll actually be doing
        > something (other than playing with a calculator) that can provide something
        > of value to end users in far flung places.
        >
        > Might seem weird to start with learning process and implementation, since
        > it's all dependent to a large extent on using the language properly, but I
        > do think it's possible to learn implementation first (with a bare minimum of
        > language learning) and then go back and learn more about the language. Just
        > something to think about for the excellent people who teach ingrates like me
        > how to program.
        >
        > If anyone has any pointers on where to get more how-to information more
        > oriented towards process/logistics please let me know.
        > Thanks!
        > Ryan
        >
        >
        >
        >[/color]

        i think there is another option you aren't thinking about. you mentioned learning with standard tutorials about basic
        things like concatenating strings. you also mentioned that you would like to learn by writing one large program, step
        by step. i think there is a third option you should consider, and IMO it's the best. it's studying small fully working
        recipes that concentrate on one issue at a time and gives you a good foundation to build upon. fortunately, there is a
        book that does just this and it's called "Python Cookbook". i think if you try to go for the one big program, you will
        miss out on a lot of important stuff. I think there are also free online tutorials that do much the same thing such as
        "Dive into Python". anyways, just my opinion.

        bryan


        Comment

        • David MacQuigg

          #5
          Re: language learning vs. process

          On Mon, 1 Dec 2003 21:09:31 -0500, "Ryan Walker"
          <ryan.walker5@v erizon.net> wrote:
          [...][color=blue]
          >If anyone has any pointers on where to get more how-to information more
          >oriented towards process/logistics please let me know.[/color]

          Chapter 1 of "Learning Python" by Mark Lutz is excellent. Starting on
          page 10 with "How to run Python Programs", the rest of the chaper is
          all about running from the command line, setting environment
          variables, startup scripts, etc. The only thing missing in the way of
          "operationa l details" is IDLE. You should definitely work through the
          tutorial on that tool.

          -- Dave
          [color=blue]
          >Hi,
          >I'm getting started with python and have almost zero programming experience.
          >I'm finding that there are tons of tutorials on the internet -- such as the
          >standard tutorial at python.org -- that tell you all about the language.
          >That is, what are the methods, functions, modules, syntax, punctuation, etc.
          >No problem there!
          >
          >Meanwhile, I'm finding that there is very little (that I can find) about how
          >to do basic logistical things related to using python and implementing
          >programs. For example: how to run a program. That's pretty basic, but I
          >don't see anything in the tutorials about it. With IDLE, it's easy enough:
          >just hit F5. But working on my server via Putty, trying to get a concrete,
          >meaningful result, it's hit and miss. For example, I find that sometimes a
          >program will run if I import it. I typed "import smtpmail" and it ran -- it
          >asked me to input From, To, Subj, Message. Other times, I type in "import
          >smtpmail" and it imports but doesn't run. My server is Unix. Typing
          >"python smtpmail.py" doesn't do it. That seems to be what a few websites
          >say to do to run a program. Doesn't work for me. It returns 'File
          >"<stdin>", line 1' and a little carrot pointing up at the 'l' in smtpmail.
          >I know it's on the path since I can import it. And the permissions are 755.
          >
          >Another example of a very basic problem I can't find a solution to in any
          >tutorial: how to log in to an SMTP server (authentication ). My web
          >searches have turned up only a few snippets of listserv conversations
          >between people who already know enough about the subject that I'm not able
          >to divine anything from the code they pass back and forth. A search on
          >Python.org doesn't turn up anything that would help newcomers.
          >
          >So basically, what I'm saying is, there is a wealth of information about how
          >to concatenate strings and stuff like that, but I'm finding it very
          >difficult to get started with basic processes and logistical things. For
          >example, it took me longer than I care to admit to figure out how to append
          >the sys.path (that's actually in the tutorial but it's somewhat
          >inconspicuous. )
          >
          >My ideal beginner resource would be a complete, step-by-step explanation of
          >how to implement a simple program -- starting with typing "python" at the
          >command prompt and ending with some kind of concrete result. Then, with a
          >complete understanding of the process of writing and implementing (emphasis
          >on the latter) a program, my efforts to learn the content and syntax of the
          >language itself will be a lot more meaningful. That is, I can learn things
          >like what a string is and have some confidence that I'll actually be doing
          >something (other than playing with a calculator) that can provide something
          >of value to end users in far flung places.
          >
          >Might seem weird to start with learning process and implementation, since
          >it's all dependent to a large extent on using the language properly, but I
          >do think it's possible to learn implementation first (with a bare minimum of
          >language learning) and then go back and learn more about the language. Just
          >something to think about for the excellent people who teach ingrates like me
          >how to program.
          >
          >If anyone has any pointers on where to get more how-to information more
          >oriented towards process/logistics please let me know.
          >Thanks!
          >Ryan
          >
          >
          >[/color]

          Comment

          • David MacQuigg

            #6
            Re: language learning vs. process

            On Mon, 01 Dec 2003 19:33:47 -0800, Bryan <belred1@yahoo. com> wrote:

            [...]
            [color=blue]
            >by step. i think there is a third option you should consider, and IMO it's the best. it's studying small fully working
            >recipes that concentrate on one issue at a time and gives you a good foundation to build upon. fortunately, there is a
            >book that does just this and it's called "Python Cookbook". i think if you try to go for the one big program, you will
            >miss out on a lot of important stuff. I think there are also free online tutorials that do much the same thing such as
            >"Dive into Python". anyways, just my opinion.[/color]

            Python Cookbook may be too advanced for a beginner. I would work
            through Learning Python first. The main problem with Learning Python
            is that it is out of date, and some of the language features, like
            scoping rules, have been significantly changed. There is a new
            edition due real soon. Also, you won't get too far off the path if
            you follow the tutorials from python.org at the same time you work
            through the book.

            Dive into Python is *Excelllent*, but it also focuses on the language,
            rather than the operational details, which the OP requested. Also,
            the author makes it clear, this is a fast ride through some cool
            features, not an introduction.

            -- Dave

            Comment

            • Eddie Corns

              #7
              Re: language learning vs. process

              "Ryan Walker" <ryan.walker5@v erizon.net> writes:
              [color=blue]
              >Hi,
              >I'm getting started with python and have almost zero programming experience.
              >I'm finding that there are tons of tutorials on the internet -- such as the
              >standard tutorial at python.org -- that tell you all about the language.
              >That is, what are the methods, functions, modules, syntax, punctuation, etc.
              >No problem there![/color]
              [color=blue]
              >Meanwhile, I'm finding that there is very little (that I can find) about how
              >to do basic logistical things related to using python and implementing
              >programs. For example: how to run a program. That's pretty basic, but I
              >don't see anything in the tutorials about it. With IDLE, it's easy enough:
              >just hit F5. But working on my server via Putty, trying to get a concrete,
              >meaningful result, it's hit and miss. For example, I find that sometimes a
              >program will run if I import it. I typed "import smtpmail" and it ran -- it
              >asked me to input From, To, Subj, Message. Other times, I type in "import
              >smtpmail" and it imports but doesn't run. My server is Unix. Typing
              >"python smtpmail.py" doesn't do it. That seems to be what a few websites
              >say to do to run a program. Doesn't work for me. It returns 'File
              >"<stdin>", line 1' and a little carrot pointing up at the 'l' in smtpmail.
              >I know it's on the path since I can import it. And the permissions are 755.[/color]

              It sounds like what you are looking for really is a tutorial on the OS itself
              so that you understand more about where files are etc. I've been using Unix
              for a long time so I have no idea what introductory material is good (just
              avoid Dummies and learn X in 24 hrs type books should cut it down).

              What's happening in the instance you give is that when people say type 'python
              smptmail.py', they mean to do it at the Unix command shell (sh or bash or
              whatever) NOT inside the python interpreter.
              [color=blue]
              >Another example of a very basic problem I can't find a solution to in any
              >tutorial: how to log in to an SMTP server (authentication ). My web
              >searches have turned up only a few snippets of listserv conversations
              >between people who already know enough about the subject that I'm not able
              >to divine anything from the code they pass back and forth. A search on
              >Python.org doesn't turn up anything that would help newcomers.[/color]
              [color=blue]
              >So basically, what I'm saying is, there is a wealth of information about how
              >to concatenate strings and stuff like that, but I'm finding it very
              >difficult to get started with basic processes and logistical things. For
              >example, it took me longer than I care to admit to figure out how to append
              >the sys.path (that's actually in the tutorial but it's somewhat
              >inconspicuous. )[/color]
              [color=blue]
              >My ideal beginner resource would be a complete, step-by-step explanation of
              >how to implement a simple program -- starting with typing "python" at the
              >command prompt and ending with some kind of concrete result. Then, with a
              >complete understanding of the process of writing and implementing (emphasis
              >on the latter) a program, my efforts to learn the content and syntax of the
              >language itself will be a lot more meaningful. That is, I can learn things
              >like what a string is and have some confidence that I'll actually be doing
              >something (other than playing with a calculator) that can provide something
              >of value to end users in far flung places.[/color]
              [color=blue]
              >Might seem weird to start with learning process and implementation, since
              >it's all dependent to a large extent on using the language properly, but I
              >do think it's possible to learn implementation first (with a bare minimum of
              >language learning) and then go back and learn more about the language. Just
              >something to think about for the excellent people who teach ingrates like me
              >how to program.[/color]
              [color=blue]
              >If anyone has any pointers on where to get more how-to information more
              >oriented towards process/logistics please let me know.[/color]

              It occurs to me that some of the Linux and even PC magazines seem to be
              running tutorials on how to use Python. They probably cover some such
              issues.

              Eddie




              Comment

              • Van

                #8
                Re: language learning vs. process



                Ryan Walker wrote:[color=blue]
                > Hi,
                > I'm getting started with python and have almost zero programming experience.
                > I'm finding that there are tons of tutorials on the internet -- such as the
                > standard tutorial at python.org -- that tell you all about the language.
                > That is, what are the methods, functions, modules, syntax, punctuation, etc.
                > No problem there![/color]


                I like 'How to Think Like a Computer Scientist' it is in the beginners
                guide at python.org

                Comment

                Working...