language learning vs. process

R

Ryan Walker

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
 
B

Ben Finney

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.

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

Bryan

Ryan said:
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

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
 
B

Bryan

Ryan said:
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

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
 
D

David MacQuigg

On Mon, 1 Dec 2003 21:09:31 -0500, "Ryan Walker"
If anyone has any pointers on where to get more how-to information more
oriented towards process/logistics please let me know.

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
"operational details" is IDLE. You should definitely work through the
tutorial on that tool.

-- Dave
 
D

David MacQuigg

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

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
 
E

Eddie Corns

Ryan Walker said:
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.

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

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
 
V

Van

Ryan said:
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!


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

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,900
Latest member
Nell636132

Latest Threads

Top