Spotlight customer reviews:
|
Customer Rating:      Summary: Disorganized, bloated book Comment: I did not like this book. It is terribly organized. It is incomplete. Although it doesn't present wrong information, the way it is presented makes it seem inaccurate. Information on one same subject is scattered in many different chapters and never presented in one place. For that reason it is practically impossible to use as a reference or to quickly find a piece of info.
For example, while I was mid-way through the book, I wanted to quickly check what kind of comments Python supported. Does it support only one kind (line comments), or like C++ and Java has two kinds (line and block) ? So, I checked the contents - I was searching for a chapter called something like "lexical structure", or even "comments". No luck. (However, I did find a chapter called "Clicking Windows File Icons" ... - very useful! )
I didn't give up. Next step, check the index. "Comments" are mentioned three times in the book. The first time in the chapter "Basic Operations and Variables" (good choice!!!) - one kind of comment is described briefly in a paragraph with no relation to the rest of the chapter. Sadly, no answer to my question there.
The second time is in a chapter titled "Python Syntax Rules". Hmm, that makes more sense. Well, technically not, since comments are not part of the syntax, but let's not get technical ... Here it says that comments are ignored. Good to know. But how many kinds of comments are there ???
The third mention of comments is in the chapter "Documenting Pyhton Code". "Finally!", I say to myself and naively rush through the pages. Alas, no luck again. It says that "#" comments are a way to document code, but again it doesn't say if they are the only kind of comment, or if there are others.
By this time it is probably implied that there is no other kind of comments, since it is never never mentioned, however one SHOULD NOT have to guess about such things when reading a technical book.
I went ahead and checked the online Python documentation at http://www.python.org/doc/2.4/ref/ref.html . It took me 5 seconds to find "Lexical analysis", "Comments" and read what I needed. Why did I bother with the book ??
In defense of the book, I must say that it is not all bad. It does sucesssfully teach you to program in Python, even though it is strongly geared to inexperienced programmers (and thus annoying at places). However you absolutely need one more source of reference for Python, and if you have that, why buy this book ?
It is nothing like "The Java Programming Language", which in my mind is an example of an excellent language book and reference.
Customer Rating:      Summary: Not for experienced programmers/scripters Comment: If you're familiar and comfortable with other languages, you may find this book too long-winded. I think it could have slimmed down by 300 pages and been easier to follow and more useful for learning.
If you get annoyed by incessant references to Monty Python, you may find the various examples very distracting and irritating. ('Foo' is a nonsense word, and doesn't interfere with anything, but to constantly read 'spam' and 'eggs' gets really distracting.)
If you've never done scripting or programming, then the pace might be appropriate for you.
Customer Rating:      Summary: A thorough and accessible introduction Comment: Even though this book was a little too slow for my personal taste (I already had quite a bit of experience in various object-oriented and scripting languages), I nevertheless gave it 5 stars for the phenomenal task the authors solved by making the book accessible and thorough at the same time.
The first half of the book provides an introduction to the basic elements of the Python programming language, such as built-in data types, control flow, functions, and modules. The second half deals with more advanced, but equally fundamental, programming concepts such as object-oriented programming and exceptions, and gives examples of how to solve common tasks like file processing or string manipulation in Python. The text carefully defines all introduced concepts, and supplements them with many examples, so it should be quite accessible even for people with little previous programming experience. At the same time, it is fair to say that, after studying this book, the reader will have a thorough foundation and a solid grasp of all important Python concepts.
For example, the two concepts that distinguish Python from most other programming languages, are "everything is an object" and "every variable is a reference". This might lead to some surprises for programmers that grew up with compiled languages such as C++, but the book points out the differences in pilosophy and the resulting "gotchas" in quite some detail. In fact, each chapter concludes with a list of such "gotchas", which is likely to save both the beginner and the experienced programmer some headaches.
Another aspect I liked about this book is that, even though it is aimed at Python beginners, more advanced concepts are not just swept under the rug, but the authors are honest enough to point out their own omissions, and to refer the interested reader to some more advanced text.
The last two chapters of the book introduce the reader to a variety of Python extensions, such as GUI toolkits and scientific computing libraries, among many others. Due to the huge number of Python extensions available, these chapters are necessarily very dense, and in this way break with the book's general style of providing a thorough, comprehensive introduction to all new concepts. These chapters serve well as a platform, or rather a guide map, with the help of which the world of Python can be explored further.
In summary, I'd enthusiastically recommend this book to all but the most experienced programmers, since for the latter the book's pace will likely be a little too slow.
Customer Rating:      Summary: Not what I expected.. Comment: I bought this book to "learn python". What I didnt expect was to just learn how python compares to C and C++.
I did find the book helpful as a good reference that covers all python aspects that is quite ideal if you are an experienced programmer wanting to learn python as an additional language. For a beginner however, this is quite useless. Although I managed making it all the way through the book, I struggle writing any software past simple scripts or understanding other people's code.
Again, this doesnt make it a bad book, its quite brilliant infact. But beware it might not be as helpful as you like if you are not an experienced programmer in other languages.
Another note is, many built in modules in python come quite poorly documented (cough*curses*cough) and expect knowledge of the module in C/C++ requiring you to dive into complicated C/C++ documentation to make use of the module in python. So really, yes, python is easy, python saves time, but knowledge in C and/or C++ is recommended to make best use of it.
Hope this is helpful.
Customer Rating:      Summary: Learning Python - Teachers and Beginners Beware Comment: I can readily subscribe to almost all of the nice things already said about Python. I've been programming Perl for 10 plus years and also C, C++, Java and lots more. In short, I'm a very experienced programmer. I've also had a lot of teaching experience at the college Computer Science level and within companies that I've worked at. My idea of a great Learning XXX book is the Learning Perl book by R. Schwartz and T. Phoenix (O'Reilly). Learning Python is definitely not in the same league as a teaching and self-instruction book. I need a Python book for an upcoming course that I will be teaching. The course will cover both Perl and Python. I have used and will use Learning Perl. My Python book needs to be, oh say about the same size as Learning Perl and will take the user to about the same level of proficiency. This book is not it. The book is way too heavy in bulk and presentation. Just compare for yourself, the Table of Contents for the two books, available on the Amazon.com page. Way too much for a Learning Python course. Teachers and Students - "Caveat Emptor" (=Let the buyer beware)
|
|
|