First off, I bought this book because I like having books as physical references over reading something on the computer, as it is available online for free.
My background:
Aerospace Engineer, one single class in C++ programming, but currently out in the "real world" doing other work. I've taken up learning Python as a hobby because it's much more productive than C++ for fooling around. I've made plenty of Matlab, C++, and a few Java programs for things as various as finite element calculations and simple asci games. I wanted to learn a language that was easier to use for graphics and general computer tasks than any of the above mentioned languages, so I went for Python. I wanted to spend time in Lisp, but I was disappointed with the available software. Right now I'm using a Python (x,y) install and the Eclipse IDE.
This book is organized in very manageable chunks (chapters), which probably take an hour or two to read, understand, and program up. It is far easier to read than the other programming book I have used, which was Savitch's absolute c++. Having been through some programming before, I don't find the concepts in this book too difficult to grasp, as I already understood the idea of pointers. Others (new programmers) that are unaware of what pointers are may be confused by some of the concepts in this book. I can honestly say that if you do not understand what pointers/addresses are in computer languages to hold off on this book until you know a little more. I was able to make sure the IDE was configured properly and that it was looking for files in the right place because I've dealt with IDEs and compilers before and can generally stumble my way through getting them to cooperate. Someone new to programming might get hung up on things like this and get frustrated, as this book expects you to already be able to wrangle the necessary tools and just program.
This book teaches by example, and expects you to follow along. The only downside of this is it's not quite as good as a reference as it would have been if it was more thorough, but plenty of help can be found online about Python. Another minor issue is the author doesn't necessarily announce when he is providing an example with an imaginary module, so when you try to run the hypothetical example the interpreter doesn't recognize the module you are trying to import.
I love how this book jumps right into business, and I am very impressed with the way that it immediately gets into the power and capabilities of the language. He doesn't beat the concepts to death, but expects you to actually take the time to understand what is going on without an excessive amount of "let me repeat this 10 times because you're stooopid" and handholding.
I highly recommend that if you want to get into Python right away to grab this book, install Eclipse by itself or a distribution like Python(x,y) for scientific/engineering tasks, and start plugging away.
My background:
Aerospace Engineer, one single class in C++ programming, but currently out in the "real world" doing other work. I've taken up learning Python as a hobby because it's much more productive than C++ for fooling around. I've made plenty of Matlab, C++, and a few Java programs for things as various as finite element calculations and simple asci games. I wanted to learn a language that was easier to use for graphics and general computer tasks than any of the above mentioned languages, so I went for Python. I wanted to spend time in Lisp, but I was disappointed with the available software. Right now I'm using a Python (x,y) install and the Eclipse IDE.
This book is organized in very manageable chunks (chapters), which probably take an hour or two to read, understand, and program up. It is far easier to read than the other programming book I have used, which was Savitch's absolute c++. Having been through some programming before, I don't find the concepts in this book too difficult to grasp, as I already understood the idea of pointers. Others (new programmers) that are unaware of what pointers are may be confused by some of the concepts in this book. I can honestly say that if you do not understand what pointers/addresses are in computer languages to hold off on this book until you know a little more. I was able to make sure the IDE was configured properly and that it was looking for files in the right place because I've dealt with IDEs and compilers before and can generally stumble my way through getting them to cooperate. Someone new to programming might get hung up on things like this and get frustrated, as this book expects you to already be able to wrangle the necessary tools and just program.
This book teaches by example, and expects you to follow along. The only downside of this is it's not quite as good as a reference as it would have been if it was more thorough, but plenty of help can be found online about Python. Another minor issue is the author doesn't necessarily announce when he is providing an example with an imaginary module, so when you try to run the hypothetical example the interpreter doesn't recognize the module you are trying to import.
I love how this book jumps right into business, and I am very impressed with the way that it immediately gets into the power and capabilities of the language. He doesn't beat the concepts to death, but expects you to actually take the time to understand what is going on without an excessive amount of "let me repeat this 10 times because you're stooopid" and handholding.
I highly recommend that if you want to get into Python right away to grab this book, install Eclipse by itself or a distribution like Python(x,y) for scientific/engineering tasks, and start plugging away.