Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > What was your strategy?

Reply
Thread Tools

What was your strategy?

 
 
Jorge Biquez
Guest
Posts: n/a
 
      11-14-2010
Hello all.
Quick question. I know some of you are with Python since started,
some other maybe later.

I was wondering if you can share what was the strategy you followed
to master Python (Yes I know I have to work hard study and practice a
lot). I mean did you use special books, special sites, a plan to
learn each subject in a special way. I would like to know, if
possible, comments specially from some of you who in the past had
other languages, frameworks and platforms and left (almost) all of
them and stayed with Python.

Thanks in advance

Jorge Biquez

 
Reply With Quote
 
 
 
 
Seebs
Guest
Posts: n/a
 
      11-14-2010
On 2010-11-14, Jorge Biquez <(E-Mail Removed)> wrote:
> I was wondering if you can share what was the strategy you followed
> to master Python (Yes I know I have to work hard study and practice a
> lot). I mean did you use special books, special sites, a plan to
> learn each subject in a special way. I would like to know, if
> possible, comments specially from some of you who in the past had
> other languages, frameworks and platforms and left (almost) all of
> them and stayed with Python.


I've been learning Python the same way I learn any language; get a
book, read it over lunch for a few days, start typing, ask people
how to improve my code once I have some.

This information is almost certainly useless to you, though, unless
you've already learned at least six or seven programming languages.

-s
--
Copyright 2010, all wrongs reversed. Peter Seebach / http://www.velocityreviews.com/forums/(E-Mail Removed)
http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures
http://en.wikipedia.org/wiki/Fair_Game_(Scientology) <-- get educated!
I am not speaking for my employer, although they do rent some of my opinions.
 
Reply With Quote
 
 
 
 
James Harris
Guest
Posts: n/a
 
      11-14-2010
On Nov 14, 10:32*pm, Jorge Biquez <(E-Mail Removed)> wrote:
> Hello all.
> Quick question. I know some of you are with Python since started,
> some other maybe later.
>
> I was wondering if you can share what was the strategy you followed
> to master Python (Yes I know I have to work hard study and practice a
> lot). I mean did you use special books, special sites, a plan to
> learn each subject in a special way. I would like to know, if
> possible, comments specially from some of you who in the past had
> other languages, frameworks and platforms and left (almost) all of
> them and stayed with Python.


IMHO there's no one solution. What works for a person depends on how
that person learns. Options: books, online free course lecture videos,
class instruction, preexisting code, supplied documentation, online
tutorials etc.

I find it useful to have at least two sources, e.g. two books, as each
author brings a slightly different approach and often make different
assumptions (and make different mistakes). Comparing two or more makes
it easier to see through the differences. But make sure each is
reputable in its own right.

For example, I used: Learning Python, and Python in a Nutshell (and
WxPython in action for the GUI stuff). I'd recommend at least the
Nutshell book as a reference.

If books work for you check Amazon or similar for feedback of others.

James
 
Reply With Quote
 
MRAB
Guest
Posts: n/a
 
      11-15-2010
On 14/11/2010 23:53, Ben Finney wrote:
> Jorge Biquez<(E-Mail Removed)> writes:
>
>> I was wondering if you can share what was the strategy you followed to
>> master Python (Yes I know I have to work hard study and practice a
>> lot). I mean did you use special books, special sites, a plan to learn
>> each subject in a special way.

>
> I find that my strategy with learning Python was similar to strategies
> for learning a natural language:
>
> * Use it, as often as feasible. Keep practicing.
>
> * Use it, as often as feasible, for real problems. The kind of problems
> that I actually need a solution to will motivate me to learn when a
> contrived exercise would not.
>
> * Additionally, seek out areas of the language I'm not actively using
> and learn them too. This pretty much means I'll need contrived
> exercises, but it guards against staying in a rut of the familiar.
>
> * Use it, as much as feasible, in public. Put my inevitable errors on
> display where they can be discovered and suggestions can be made for
> improvement. This has the not inconsiderable benefit of encouraging
> humility also.
>

I'd also say: don't fight the language, but follow its idioms, and
listen to advice from those who know it better, because there's usually
a good reason why something is done this way and not that way. It will
all make sense in the end.

> Those all worked well when I learn a natural language, and they work
> well for learning a programming language.
>
> After all, a programming language is a constructed language for
> human-to-human communication. It happens to have the additional
> constraint of communicating with computers as a side goal
>

 
Reply With Quote
 
Paul Rubin
Guest
Posts: n/a
 
      11-15-2010
Jorge Biquez <(E-Mail Removed)> writes:
> I was wondering if you can share what was the strategy you followed to
> master Python (Yes I know I have to work hard study and practice a lot).


1. Read the tutorial http://docs.python.org/tutorial/
2. Start writing code, and encounter various issues as usually happens.
3. Refer to the other reference manuals, web search, and ask questions
in the newsgroup as you run into issues.
4. After a while you'll have hit most of the usual issues and learned
how to deal with them, and how to find resolution for new issues that
might come up. That's about as close to mastery as one normally
reaches in this world.

Python is a pretty easy language if you have a reasonable programming
background when you first start with it. I think the way it's currently
organized, it may not be so great for self-study if you're not already a
programmer.

> I mean did you use special books, special sites,


Nah.
 
Reply With Quote
 
rustom
Guest
Posts: n/a
 
      11-15-2010
Jorge Biquez <(E-Mail Removed)> writes:
> I was wondering if you can share what was the strategy you followed to
> master Python (Yes I know I have to work hard study and practice a lot).



One of the basic mistakes that folks (kids?) studying a language do is
to study *only* the language. I guess the mistake happens more in the
Java, VB type languages than in python but the mistake is pervasive
nevertheless. (Its particularly dangerous with C++ which you can
study without mastering for a lifetime)

Python is obviously simpler/cleaner etc but still the mistake persists
of studying past the point of diminishing returns. Specifically, an
intelligent person who has a background of other languages can get the
minimal,basic hang in a a day (not so intelligent and inexperienced
may be a week or two). After that you need to study OTHER things.

Here is such a list


1. "python"
2. IDE (emacs+python-mode in my case, but whatever you use, learn to
use it)
- debugger
- introspection
- ipython looks promising
3. CS
- algorithms
- data structures
- 'theory:' FSM, complexity, computability limits, O notation etc
4. Operating Systems
How python fits into the OS you are using
5. Paradigms
- scripting
- functional
- oo
6. 'Advanced' Stuff
- TDD
- Profiling
- C interfacing
...


The difficult part is studying this stuff independent of python and
then making the bridge.
eg. 75% of (typical) data-structure books deal with things like
'linked-lists' -- useless in python-- but the remaining 25% you need.
 
Reply With Quote
 
Grant Edwards
Guest
Posts: n/a
 
      11-15-2010
On 2010-11-15, Paul Rubin <(E-Mail Removed)> wrote:

> Python is a pretty easy language if you have a reasonable programming
> background when you first start with it. I think the way it's currently
> organized, it may not be so great for self-study if you're not already a
> programmer.


The way what is organized? You think the language itself is organized
poorly for self-study?

--
Grant Edwards grant.b.edwards Yow! I wonder if I could
at ever get started in the
gmail.com credit world?
 
Reply With Quote
 
John Nagle
Guest
Posts: n/a
 
      11-15-2010
On 11/14/2010 2:59 PM, Seebs wrote:
> On 2010-11-14, Jorge Biquez<(E-Mail Removed)> wrote:
>> I was wondering if you can share what was the strategy you followed
>> to master Python (Yes I know I have to work hard study and practice a
>> lot). I mean did you use special books, special sites, a plan to
>> learn each subject in a special way. I would like to know, if
>> possible, comments specially from some of you who in the past had
>> other languages, frameworks and platforms and left (almost) all of
>> them and stayed with Python.

>
> I've been learning Python the same way I learn any language; get a
> book, read it over lunch for a few days, start typing, ask people
> how to improve my code once I have some.
>
> This information is almost certainly useless to you, though, unless
> you've already learned at least six or seven programming languages.


Right. I just read over the language description and the reference
manual. Python is a memory-safe late-binding declaration-free
naive interpreter with classes that uses indentation for nesting
level and reference counting for allocation. If those are all
familiar concepts from other languages, Python is trivial.

Python is actually rather easy to learn. It doesn't have
the storage management problems of C and C++, the awful syntax
of Perl, the object-as-copy semantics of Javascript, or the
mess of stacked libraries of Java.

John Nagle
 
Reply With Quote
 
Tomasz Rola
Guest
Posts: n/a
 
      11-19-2010
On Sun, 14 Nov 2010, Paul Rubin wrote:

> Jorge Biquez <(E-Mail Removed)> writes:
> > I was wondering if you can share what was the strategy you followed to
> > master Python (Yes I know I have to work hard study and practice a lot).

>
> 1. Read the tutorial http://docs.python.org/tutorial/
> 2. Start writing code, and encounter various issues as usually happens.
> 3. Refer to the other reference manuals, web search, and ask questions
> in the newsgroup as you run into issues.
> 4. After a while you'll have hit most of the usual issues and learned
> how to deal with them, and how to find resolution for new issues that
> might come up. That's about as close to mastery as one normally
> reaches in this world.
>
> Python is a pretty easy language if you have a reasonable programming
> background when you first start with it. I think the way it's currently
> organized, it may not be so great for self-study if you're not already a
> programmer.
>
> > I mean did you use special books, special sites,

>
> Nah.


Wow, exactly same strategy by me. Do you think it should be GPLed, by
chance ?

I find this way of learning to be a bit hard (it must have helped that I
was no beginner), but somehow none other option came to my head when I was
approaching Python some years ago. I guess I'm not a good follower of
various written "rules of engagement". So, after tutorial I jumped over
the standard Python docs (module index, plus library & language
references) until I found whatever was needed at the moment.

So choice of strategy depends on choice maker.

BTW, I think it was very important in my case to have specific program in
mind, begging me to write it in Python. So learning was more exciting
thanks to this.

I came to Python from some other languages, of which only C retains it's
value to me nowadays. I consider myself kind of departed from Pythonland,
in search of some other, maybe better alternatives - but it is quite
possible Python will join C. I'm undecided, as I've not tried 3.x yet.

As a side note, I'm not quite sure Python is good for beginners. Yes, it
is very simple and easy to grasp. And yes, it is a bit too simple, maybe?
So a beginner learns to think in terms of nails and hammers, but may never
hear of screwdrivers in his programing life. I may be wrong but, thinking
of it, I feel it was good I have been exposed to Pascal and C (and few
other things) long before Python. I would advise Python to casual/Sunday
programers, knowing there is big chance they will never learn more than
this, so Python is their best option IMHO. But in case of
"serious"/"serial" programing, I would save Python for second or third
language. I mean, I perceive it as rather "one way to do it" language and
forcing this "one way" on unformed programer doesn't look good.

No offence. See? I'm still here.

Regards,
Tomasz Rola

--
** A C programmer asked whether computer had Buddha's nature. **
** As the answer, master did "rm -rif" on the programmer's home **
** directory. And then the C programmer became enlightened... **
** **
** Tomasz Rola (E-Mail Removed) **
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
what is the normal structure of your web pages on your server? John Salerno HTML 2 03-18-2006 09:37 PM
How To Connect Your PC to Your Home Stereo or Home Theater Silverstrand Front Page News 0 12-08-2005 01:29 PM
ZoneAlarm has detected a problem with your installation, and therefore has restricted Internet access from your machine for your protection. Donít panic A Teuchter Computer Support 2 05-19-2005 09:20 PM
White Paper: XERT Your Data, Refocus Your Efforts Holmespundit XML 0 09-01-2004 02:14 PM
#1 Affordable and Professional. Web Content, Development and Management - your personal webmaster for your online e-commerce. Info: at 503-816-9585 isocom HTML 2 10-16-2003 08:08 PM



Advertisments