Sorry to bother you guys with this question.What did you do to learn coding ?is coding different from problem solving ?how did you learn to be details focus witch is necesary for programming ?what was your approche when learning programming ?When you have learned some OO,and the syntax of a language you want to progamm in what did you do to be good at it ?The question really is what is the secret of programming ?

The secret of programming? A passion for it.If you don't like learning the guts of how pcs work, if you don't find it fascinating how a server delivers dynamic content to a browser, there is no book, no tip, no strategy that will help you.

And to a lesser extent, a good tutorial is the other secret to programming.If you have a driving passion to learn to program, the next step is an excellent starting point.If you learn from a bad lesson, you hurt yourself.

(Shameless sales pitch)For Python I recommend the excellent books by Mark Lutz, "Learning Python", and "Programming Python".Those two book will take you far in Python, further knowledge is in specialized fields, like web programming or gui programming.

Python 2.7Python 3.3Windows 7 x64Ubuntu 12.10 x64One day I hope to use one OS and 1 Python flavor, until that day, life goes on.

When you start out as a professional you will be given very explicit assignments - write a program that does "x" for example, with very detailed instructions. There is no problem to solve. As you advance, your assignments will change to something more like "we'd like to be able to do 'x'", where "x" is very vague. Your job will be to define "x", decide whether it will help the business, whether perhaps "y" is a better solution, and then to design the code to do it. By the time you get to that point in your career, the ability to solve a problem is more important than coding.

A good programmer can not only write efficient code, but more importantly can understand what the end user wants and needs, as opposed to what he claims to want or need.

Tks for the very good answers one can always count on the great answers from this forum.I did asked the same question few years back when I was less experienced programmer.I still haven't found the satisfactory answers.Programming, system development, analysis, designs, coding what ever one call it, seemed to be a life long learning process.So to me experiences counts a lots in software development. UPS programming.Please keep enlightening me. with more responses

As for my point of view, programming is like learning to play an instrument. in about 1-5 years, you are good enough to play (program) just about anything.But true mastery of the instrument (programming language) takes years, and is never fully complete. You continue to learn and develop for the rest of your life.

There are no shortcuts, no secrets if you will, that will give you mastery of programming.But if you are willing to spend the time, your life can be augmented by your dedication to learning a language.Much like the enjoyment you can receive from learning an instrument.

Python 2.7Python 3.3Windows 7 x64Ubuntu 12.10 x64One day I hope to use one OS and 1 Python flavor, until that day, life goes on.