New Programmer and Python

P

PMD96

I'm new to programming and have been recommended to start with Python. I've
reviewed the tutorial and am looking for additional learning tools to learn
programming and Python. Any recommendations?
 
J

Jeffrey Froman

PMD96 said:
I'm new to programming and have been recommended to start with Python. 
I've reviewed the tutorial and am looking for additional learning tools to
learn programming and Python.  Any recommendations?

Here's a good read:
http://www.ibiblio.org/obp/thinkCSpy/

Another recommendation is to fire up the interactive interpreter, and start
experimenting.

Have fun,
Jeffrey
 
D

DilbertFan

Think of a program you want to write, and just do the psuedo first. What
objects do you need?, do you need to read from a file, and where does the
output go.. no fancy gui yet.

Write the flowchart or psuedocode of what happens before what, before even
looking into how to do it in Python. And then check out Quick Python book,
or one of the other tutorials when it's time to write the classes.

At an absolute minimum, write a module with a main, and then just start
setting variables and then printing them out.
 
B

Brian van den Broek

PMD96 said unto the world upon 2004-09-18 11:32:
I'm new to programming and have been recommended to start with
Python. I've reviewed the tutorial and am looking for additional
learning tools to learn programming and Python. Any recommendations?

As a relative Python and programming newbie myself, I'd say you should
check out various links at:

<http://www.python.org/topics/learn/>
<http://www.python.org/doc/Intros.html>
<http://www.python.org/topics/learn/non-prog.html>


The gentle introduction that I started with is:

How to Think Like a Computer Scientist
Allen Downey's open source textbook has a Python version, written with
Jeff Elkner. It's also available in book form.
<http://www.ibiblio.org/obp/thinkCSpy/>

It is aimed at high-school students and is quite clear, but
appropriately low in its pitch.

After that, I found Lutz and Ascher's Learning Python quite helpful.
<http://www.oreilly.com/catalog/lpython2/>

HTH,

Brian vdB
 
R

Roy Smith

"PMD96 said:
I'm new to programming and have been recommended to start with Python.

Python is an excellent place to start programming. In one sense, it
fills much the same niche BASIC did a generation ago; it's very easy for
beginners to learn. Python is also available on a wide variety of
platforms (Unix, Windows, and Mac) and is easy to install. It is also
very portable. There are certainly changes that have happened over the
years to the language, but at least there's only a single line of
development, so you don't have to worry about different branches heading
off in different (incompatible) directions.

Python has a shallow learning curve, which means you can learn just a
little bit of the language and start building useful programs right
away. As you explore more features of the language and libraries, you
can do more sophisticated stuff, but you need to know just a small
self-contained subset to get going.

But, unlike BASIC, Python is a powerful modern language, which is taken
seriously by professional programmers who want to get real work done.
It supports (but does not require) object oriented programming. It's
got good flow control constructs, a rich (but easy to use) assortment of
built-in data structures, exceptions, and hands-off memory management.

It's also fast enough for a lot of what most people do. Not as fast as
C or C++, but comparable with the likes of Perl, Java, and TCL.

It has some controversial aspects, to be sure. The one that will be in
your face right from the start is the use of indentation for statement
grouping. All I can that can be said about that is "deal with it".
Some people think it's absolutely brilliant, others think it's the
stupidest thing they've ever heard of. But, it is what it is, it's not
going to change, nobody in either camp is ever going to be convinced to
change their mind, and there is nothing that can be said about it on
either side which hasn't already been said 100 times already.

The other thing is the use of dynamic data typing. People who come from
a C++ or Java backgrounds often find it upsetting that there is no data
type checking (nor is there any real notion of private data or methods,
in the sense that those languages support). On the other hand,
Pythonistas find this freedom from "type bondage" one of the best things
about the language.

Overall, my recommendation to anybody just getting into programming
today would be to learn both Python and Java. They are both modern,
popular, useful languages, but based on very different design
philosophies. Once you've learned both, you'll be in a much better
position to make up your own mind which you like better.
I've reviewed the tutorial and am looking for additional learning
tools to learn programming and Python. Any recommendations?

http://diveintopython.org/
 
S

Sheldon Plankton

Hi PMD96,

I had to learn Perl once. A co-worker suggested that I take a look at
http://www.perlmonks.org I did and wow! I became a Perl guru. I
changed jobs and at this new job they use Python. I think Python is
great but there is no pythonmonks ... well until now ... I am starting
a sight called Snakehandlers.net,
right now I run it off my desktop at home so check it out at
http://216.175.112.88.

Thanks for you support!
Plankton
 
A

Andrea Griffini

Some people think it's absolutely brilliant, others think it's the
stupidest thing they've ever heard of. But, it is what it is, it's not
going to change, nobody in either camp is ever going to be convinced to
change their mind, and there is nothing that can be said about it on
either side which hasn't already been said 100 times already.

I don't agree that nobody in either camp is ever going to be convinced
to change their mind. I for example was in the "that's the stupidiest
thing I've heard of (since COBOL)" and now changed my mind.
Not sure if this really counts... as indeed my initial position was
just *before* actually trying to write any non-trivial python program.

Andrea

PS: I'm sure this is one of the things said 100 times
already... but I remember students of programming courses
at university that were used to write their programs in
Pascal with no indentation and, once the program were
working and before submitting them, adding proper
indentation "because otherwise the professor gets mad".
I'm not kidding about this.
 
N

Neuruss

Python is an excellent choice not only as a first language, but as
"the" language.
Python is based on the same principles than the other languages, but
they are implemented in a more easy and clear way. Its easy syntax
lets you learn the programming principles faster and better, letting
you concentrate in the problem you're trying to solve instead in lower
level, redundant tasks such as memory allocation or types
declarations.
Besides, it is also fun.
 
H

Heiko Wundram

Am Sonntag, 19. September 2004 08:29 schrieb Andrea Griffini:
I don't agree that nobody in either camp is ever going to be convinced
to change their mind.

I don't agree either. I started programming in C, switched to Perl some time
ago, and then tried Python just for fun. As the story's been told a hundred
times, I was at first appaled at the lack of block delimiters, but currently
I wouldn't want to live with them again... It's just a matter of trying it
out and becoming accustomed to it.

Heiko.
 
R

Roy Smith

Python is an excellent choice not only as a first language, but as
"the" language.

I think it's silly (and, from a career advancement point of view, rather
dangerous) to think of any language as the only language you'll ever
need. Every new language I've ever learned has taught me something new
about programming, because it's shown me a different way of doing
things. Sometimes I like what I learn, sometimes I don't, but all
knowledge is useful.

From a purely "can I find a job" point of view, knowing only one
language is professional suicide. Choice of language may be one of the
least important decisions one makes when starting a large project, but
the fact remains that when looking for employees, the number one
question recruiters always ask is, "Do you know language X?". If you
say, "no", you won't even get past the initial phone screen.

So, absolutely learn Python as a first language. But, don't stop there.
 

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

Forum statistics

Threads
473,769
Messages
2,569,576
Members
45,054
Latest member
LucyCarper

Latest Threads

Top