rank trend

Beginning Python: From Novice to Professional (Beginning: From Novice to Professional)

by Magnus Lie Hetland
Released 2005-09-26
Read articles about Python
Buy it from AmazonNew for $40.49

37 Reviews

Sort by: Most Helpful ▲ Date Rating

4 stars Not exactly the best first book to use

2006-03-15     107 of 109 found this review helpful

I'm a little surprised to see such great reviews for this book, especially those reviews that claim this is the book you should start out with for Python. Granted, it all depends on what your background is, but I feel like if you know nothing about Python (even if you know another language), then this isn't the best book to start with.

Thus far I've read two Python books: first, Learning Python; and second, Beginning Python (this book). Learning Python should, without a doubt, be the book to start with. It teaches Python from the ground up so that not only will you know how to write a function or a class, but you know what exactly is going on behind the scenes when all this is happening (but not in so much detail as to be over the heads of newcomers). Beginning Python, on the other hand, contains very cursory introductions to each element of Python. The core language is presented in the first 200 pages, each chapter being around 20 or so pages. After the first 20 pages, you are already introduced to functions and modules! Eventually these topics are covered again, but this book just moves too fast for a beginner.

I suppose someone who is already a programmer will be able to pick up quickly on this fast-paced introduction, but even that person will be at a loss for how Python is working under the hood. Beginning Python doesn't even spend much time explaining how all Python 'variables' are only references to an object, and never contain the object itself. This is a fairly simple idea to grasp, but the consequences are so important that it really needs a somewhat lengthy section of its own (that's just an example of how the book moves too fast).

But still, it's not a *bad* book. It was great for me because it served as a quick review of what I had already learned (more thoroughly) in Learning Python. Furthermore, later chapters discuss some of the more popular and effective third-party modules (i.e. py2exe, Beautiful Soup, wxPython) but again, not in very much detail. Each of these chapters is about 10 pages.

Finally, there are the 10 projects at the end of the book. I've only read the first one of these so far. They seem fairly involved, and probably require a little more experimentation with the language before tackling.

Overall, my opinion is this: Learning Python should be the first book anyone reads on the subject, especially newcomers to the language and hobbyist programmers, but even experienced programmers need that book. Beginning Python is a great review of the material because it moves through it quickly, but it is *not* a good introduction for exactly that same reason.

The strongpoints of this book are that it exposes you to a wide variety of standard and third-party modules, so that after you have read the later chapters, you will at least know where to go for further information for just about any project you can think of.

5 stars Get comfortable quickly in a great language

2006-01-12     37 of 38 found this review helpful

Beginning Python is loosely grouped into three main sections. The first deals with Python fundamentals, all the goodies that are inherent to the language and the modules that it ships with. It's surprising to see how rich the language is out of the box, especially when compared to some other scripting languages. The second section would be the chapters covering popular extensions for a variety of services. These include network and web programming, SQL objects, and even GUI programming. And finally the third section is a set of 10 projects in Python, which bring everything together in a concise fashion.

I like this book a lot because it is very clear in its delivery, both the prose and the code examples used, and is consistently Pythonic. The Python language lends itself to a powerful programming style and, unlike Perl, many Python developers I know don't bother with a dozen ways to perform a simple action, they get it done and move on. What you wind up with is clear code that's easily understood by someone new to the language.

Unlike what the title would suggest, Beginning Python isn't only for the first few weeks with the language. The book is large and in depth, and the coverage of material is fantastic in many ways. You get a quick tour of the basics and then you move on to an overview of the language and then its common features. The inclusion of the 10 projects is another benefit to the intermediate user. She can refer back to this book for additional information and pointers from time to time, it wont sit still on her shelf.

That said, there are a few things in the book that I tend to disagree with. For example, the author dissuades you from using destructors in your code, but in my experience they're far more reliable, and a better place to do some cleanup, than he states. A few chapters are also a bit skimpy when they didn't need to be. For example, Chapter 18, which covers packagers like the distutils component from Python, needed to be fleshed out a lot more. This is a powerful feature in Python and sound docs on it should just be there. There's no reason to hold back on something so vital. The section on profiling in Chapter 16 is also a bit thin around the middle when it needn't be. While this seems like a minor point, having a reference to speeding up code (and measuring the improvements) is always nice. And finally, Chapter 17, which covers extending Python, is simply too short for its own good. A more in depth example would have been appreciated.

I have begun recommending this book to people I know that are smart and program in other languages, but aren't very familiar with Python. Many beginners books only take a person so far before they become a useless item on the shelf. This means that he $30 or more that was spent is now gone, so I've grown to be observant of how long I expect a book to be useful. I anticipate the useful shelf life of Beginning Python will be longer than average for most general purpose programming books for a single language. What's more is that it's not a dry reference book. Couple this to a Python cookbook for recipes and you have a two volume "mastering Python" series.

If you've been curious to learn Python and haven't yet found the book that speaks to you clearly, this may be the one. I'm pleased with the quality of the writing, the examples, and the quick pace of the book. While it's nearly 30 chapters in length, most of them are short and focused, making them easily digestible and highly useful. Overall probably the best Python books I've had the good fortune of reading."

5 stars Finally a Python book with detail!!

2005-10-08     15 of 18 found this review helpful

I have read many Python books, I have scoured the web for answers to certain questions, answers that seem to be missing from every Python book I have read so far. Finally the questions have been answered. This book is a must have, not just for beginner's but for intermediate and professionals. The depth in which Magnus Hetland goes into, will enable you to understand Python's inner working's far better than any book out there. A++ on this one.

5 stars Probably the best Python book ever written

2005-10-08     15 of 16 found this review helpful

I think Magnus Lie Hetland wrote a definitive text on Python. There are many good books on Python but this one stands out. While other texts teach you HOW to do things, Hetland teaches you WHY things are being done this way and exposes the underlying logic of the language. You can learn Python from many sources, including simply the documentation that comes with the distribution. This book, however, will help you "dig it" and enjoy it the way it was intended.

On the shortcomings side... I found one error in a sample program (bottom of p. 90).

5 stars Does not waste your time

2005-10-21     11 of 12 found this review helpful

Quickest way to get up to speed doing serious programs in Python. I was just finishing Practical Python when this book appeared. This new edition brings everything up to date (Python 2.4), offers more depth, and a great improvement to an already outstanding book.

The first 10 chapters covers most of the language with to the point, interesting examples, The mid part of the book covers various libraries including how to build your own libraries in Python or C. The last 10 chapters cover 10 web projects, such as, building up an HTML page, a chat room client and server, etc.

The other two APRESS Python books are outstanding too and Beginning Python makes a great introduction (although I read Dive into Python and Python Network Programming first).

5 stars A great way to learn Python

2005-11-24     10 of 11 found this review helpful

A new title in a continuing "From Novice to Professional" series, this is another top quality product. For the person completely new to Python it starts from the very beginning with installation and basic variable constructs. If you are an intermediate level programmer then you will still find a lot of very well explained concepts with illustrations, examples, sidebars, and other helpful information. Just as promised in the title you can move all the way from complete novice to a professional level competence if you work through the book systematically. You won't necessarily be an expert but you will be competent and that is about all you can ask for from a text of this type. You will learn how to do things from the very basics of variables and flow control through graphical interfaces, database interfaces, network programming, and packaging the programs you write. The final ten chapters are example projects where you are walked through the project from beginning to end. During the process you use all of the stuff you learned and end up with a useful product. Appendix B is a very nice quick reference to Python commands, operators, functions, methods, statements, and just about everything else you might want need to look up in a pinch. Beginning Python: From Novice to Professional is highly recommended if you are new to Python, are an intermediate level user, or have never really had a course in Python but have learned it as needed for a particular project.

5 stars Best tutorial for programmers

2007-01-27     9 of 9 found this review helpful

If you already know a programming language and want to learn Python, this is your best bet. I used to recommend "Learning Python", but this is better.

Of course, the online tutorial is the best place to start, but eventually you'll want to learn the juicy parts of Python, especially generators and co-routines (the "yield" statement). This book does a very good job of explaining those concepts.

The downside of this book is that it goes too far. You really need only half the book. Then you can go to the web to learn specialized libraries. It's still worth the price though.

If you don't consider yourself a good programmer, or if you only know a simple language like Visual Basic, then "Python for Dummies" is a very easy read.

If you consider yourself an excellent programmer and want a paper tutorial, consider "Python Essential Reference", which includes a very terse introduction.

2 stars Not to be fooled by the 5-star rating.

2007-06-24     5 of 7 found this review helpful

I bought this book solely because it is being rated as a 5 stars. But after giving the book a glance, I am very dissapointed. It is cerntainly NOT a book for a novice. And I really doubt it could be good for a seasoned guy. First, I think the book does BAD job in the content. It does NOT spend much in describing the basic knowledge of Python rogramming, like the type, structures, controls, etc. Second, I don't like the writing style. It is more subjective but less objective. Comparing to the famous Perl "camel" book, I have to regretly rate this python book as a 1~2 stars. Getting some other python books is surely what I will do next.

5 stars Great book

2006-11-25     5 of 5 found this review helpful

I almost went with the O'Reilly book on Python, mostly because of their good reputation (Schwartz's "Learning Perl" is a classic) and their generally awesome book design. But I gotta say, I wasn't impressed with O'Reilly's "Learning Python" when I thumbed through it. So I took a chance on this one. I'm very impressed. Couldn't be clearer or more informative. A+.

2 stars Skip this book

2007-08-18     4 of 5 found this review helpful

I bought the most recent version of this book hoping it would make my transition from PHP to Python programming easier. This book has not been helpful.

There are only a few minor errors that I caught and the author's tone is nice enough. The book seems to be decently edited. While the jokes in the book are bad, at least there are jokes. The binding on my copy was good, and the quality of the paper was top-notch. The ink was dark, the paper was bright, and it was easy to distinguish code from text. The cover was a bit flimsy, but is good enough for a programming book that will sit on your shelf, just don't expect it to survive long in a backpack.

My complaint is with the content. After going over the basics of the language there are too many points where things are not adequately explained. For example, what are Properties for? If you're already an experienced Python programmer (or perhaps good with Ruby) then their purpose is obvious. Coming from PHP or Java where attribute visibility is enforced in traditional C++ terms, it's not obvious. Moreover, the example of Properties in the book is so brief as to be nearly useless. I wound up finding my answers on the Python mailing list.

As I said, the book is high quality and meets all the basic criteria for being a decent book, but I do not think it is truly a beginner's book. Perhaps the next revision will be read-tested by someone who genuinely does not know Python and help the book live up to it's title. A fair book overall, but I didn't like it.

5 stars Clear, Witty, Engaging, Thorough...Best Amazon Purchase EVER!

2006-11-02     4 of 4 found this review helpful

Reading this book was zen-like. I've never picked up a programming book where the explanations were so incredibly clear. Magnus Hetland moves quickly through the core language while leaving no stone unturned for the adventurous (with an "if you don't care about x, skip ahead" qualifier). Beautiful, elegant examples have been thoughtfully selected to address the questions and curiosities a reader might have. Magnus' knowledge of Python's built-in libraries and the tools being built by the Python community is extraordinary...it's difficult not to be convinced after reading this book that Python is the greatest thing since sliced bread.

And if that weren't enought to justify a 5-star rating, the author promptly replied to a question I sent via email with a witty and helpful response. I've bought copies of the book for friends and family and recommend it heartily for anyone thinking about learning Python.

4 stars Nice reading

2006-04-20     4 of 4 found this review helpful

Still reading it though, it's a simple read. Small, simple examples and easy reading motivates any reader for further reading, exploring the language. Though I'm sure the 10 projects in the last chapters are very eductional, I think the author should've spent more time with "Files and stuff" and GUI-programming. Maybe, removing a couple of the projects would give more space and foundation in the areas mentioned? (Where's the pickle, Magnus?) Anyway, I highly recommend this book to anyone who wants to learn the Python language.

5 stars Great Book

2006-03-31     4 of 4 found this review helpful

The title says it all - Beginning Python. Not beginning programmer. This book does assume that you have at least some (but not a lot) of programming experience. It moves quickly through the basics and along the way teaches some great methods of programming. It shows you the nuts and bolts and the why's and wherefores without leaving the reader feeling like they are being talked down to or listening to a PhD lecture on software engineering. The conversational tone is great. I think that this is a better book than O'Reilly's Learning Python.

2 stars Poorly organized, hard to find information you need

2007-10-09     3 of 3 found this review helpful

Bought this book to get started with Python for work purposes. However, I have yet to use it for anything useful. 4 other people agreed, that the organization of book is poor, things I needed to use such as dictionaries and variables were short and scattered information. Also some information he gave in the examples did explain important notes , like you need to import x module in order for this to work, etc.

In summary, don't think it makes a good beginner book as title implied.

2 stars Tedious

2007-06-06     3 of 3 found this review helpful

I bought this book based on the uniformly excellent reviews that it has received, and I am disappointed.

My view is that the book is two to three times thicker than it needs to be, I think because the intended audience is too broad. If you already know that a string is a sequence of characters, then probably this book is going to bore and frustrate you.

I'm still looking for a decent introduction to Python, but this isn't it.

1 stars Still don't get it

2007-10-27     2 of 3 found this review helpful

I'm the novice the title refers to. Not an absolute beginner as I've had some training in Visual Basic, so I get some of the concepts. But this book has me totally confused. The examples are not always well explained. I spent four nights trying to decipher one bit of code early on in the book. It shouldn't be that hard. A friend recommended the book to me saying, it's not great, but it's the best there is out there about Python. Humph.

5 stars Perfect Book I have ever read!

2007-03-11     2 of 5 found this review helpful

This is the perfect book that I have ever read. Good for beginer as well as experienced programmer who want to get yourself dive into the world of open source programming. I give it a 10/10 score.

5 stars Python made painless

2006-06-27     2 of 2 found this review helpful

I've read a lot of books that promise to make acquiring a new programming language easy. Most don't. "Beginning Python," however, does.

"Beginning Python," in fact, is one of the best programming texts I've read in some time. The author's style is almost perfectly tuned: concise, letting footnotes carry some of the weight and an occasional dash of appropriate humor. And it is thorough.

Author Hetland uses 18 chapters to explain Python, beginning with the very basics and advancing into more complex topics. Unlike many authors, he keeps his example code short and focused, which is a major aid to rapid comprehension: he doesn't lose the student. The 19th chapter is a bridge, sort of discussing a philosophy of programming. The balance of the book is taken up with 10 practical Python programming projects, which cover a surprisingly broad range of applications.

Overall, this is a great introduction to Python for those with just a bit or more of programming experience. As the sub-title promises, this book covers Python "from novice to professional."

Jerry

5 stars beginning python

2006-06-06     2 of 3 found this review helpful

i've never reviewed a book before but after studying python with this book, i had to.
simply amazing.
very witty and doesn't skip any steps.
if you are wondering about something, there is a little footnote explaining.
its like the author is right there listening to your thoughts.
a smart guy.
i recommend this book above ALL other python boks.

5 stars And now for something completely different!

2006-03-07     2 of 2 found this review helpful

The Python language is named after the famed "Monty Python" comedy troupe. This book takes these origins to heart, using Monty Python quotes as a framework on which to build a quirky, fun Python language tutorial.

Apart from the idiosyncratic humor, the structure of the book is fairly conventional, with a quick start followed by some language chapters, a few chapters on objects, a chapter on exceptions, a chapter on testing, and one on GUIs. The second half of the book is a series of tutorial projects. As with many books of this type, the neat division into chapters leaves the language presentation a little fragmented at times.

I liked the format of the project chapters. There are clearly marked sections containing motivation and prerequisites, so that the reader understands the intent of each project before reading further. Many of the projects are developed iteratively, and the distinct iterations are again marked with large headings, making it easy to follow the progress of the project.

If you're interested in learning the Python language and appreciate Monty Python's brand of humor, you'll enjoy this book.

4 stars Robust Start to Python

2007-11-07     1 of 1 found this review helpful

I'm an old school VB programmer who has decided to freshen up my CV by adding Python to my skills. This book provided me with a great kick start to the wonderful world of Python and what it brings to the dynamic scripting languages table.
The book is written so that its easy enough to grasp the concepts if you're a newbie (or old dog like me) without sounding condescending.
Its worth a look if you are contemplating making the leap into Python.

2 stars Messy squared = BPITB

2007-08-10     1 of 15 found this review helpful

Brilliant author, interesting structure of the book with some small projects in the end to get you started beyond the grammar of the language to its application for solving real life problems... so did I like this book? No! Unfortunately this book won't make you like Python, and this is why: let's face it, Python, with all its good sides, it's a messy scripting language, and unfortunately messy programmers and authors tend to to be attracted to messy tools. With "messy" I don't intend something strictly negative, but something that , beyond confusion,disorganization and lack of a clear plan and structure also shows originality, agility and some quirkiness. Now, while a "messy" author describing a "serious" language, or a "serious" author explaining a "messy" language are both interesting combinations, a "messy" author trying to introduce you to a "messy" language" results only in a big pain in the butt. And that is what this book amounts to.

4 stars ok book, could have been better

2007-08-09     1 of 1 found this review helpful

Well, based off of the reviews, i purchased both this title and the other beside it in the offer for like 57.18. The book is easy to read, so far, im on chapter 5 and alls nice so far, however, It would have been nice to have something at the end of each chapter to enforce learning. The book has no projects to work on at the end of its chapters, so im at chapter 5 and havent really even coded anything. I think projects at the end of each chapter of books tryin to teach are a good idea.

3 stars Didn't receive this order

2007-06-26     1 of 17 found this review helpful

Hello,

I made this order at April 25th but I didn't receive this order yet.
Please ship it again or find out where it is because this iem did not reach to our office at all.

Thanks,
Noa

5 stars Good for beginners, good for seasoned programmers as well but definitely not good for eveyone

2007-06-17     1 of 1 found this review helpful

This book is a delight. It is hard to produce a material useful to a beginner (even with no programming experience) and an experienced programmer alike. Well, "Beginning Python" is such a material.

The book begins with an introduction to Python based on the experimental approach. This means that the reader is invited to try Python out in order to have an initial grasp of the language while leaving deeper understanding for later.

This method resembles so much the immersion method in teaching foreign languages that if immersion works with many people, then this book might work, too. And it surely does.

One last thing: the book is really big (for the price, at least). No concision here: if you do not like long explanations, then this book is not for you.

5 stars Simply a great book

2007-05-30     1 of 2 found this review helpful

I agree with most all the reviews on this book. I bought it as a complete newbie to python and basically just read through it (it is quite readable), but it is also good as a reference. Anything I've needed so far I've found in the book.

5 stars Great Transaction

2007-05-12     1 of 14 found this review helpful

Book arrived within a week and in great condition. No problems what so ever. Great doing business with the seller.

5 stars Clear, Complete, and Well Written

2007-03-09     1 of 2 found this review helpful

I have been programming for over 30 years. (Remember FORTRAN?) I recently needed to learn Python for my job. I found this book an excellant introduction to the language. As a bonus it goes well beyond the introductory level. It obviously helps to have a background in object oriented design and programming, but it is not absolutely required. For someone that needs to learn Python or that is just curious, this is a great place to start.

5 stars A Great Book For Python Beginners

2007-02-15     1 of 2 found this review helpful

I decided last summer that I would pick a new language and become a master at it. I decided on Python after doing a bit of reading, and it seemed that this book and Dive Into Python by the same publisher were the two best books to read. I picked this one, and was writing python code in no time.

My favorite chapters were the chapters on the various python modules. This is what appealed to me the most, because using a standard library of functions is great, but until you can integrate it with other modules, it really has no effect. This is especially the case with python, which has a huge library of extensions from user contributions.

There are also a variety of examples and problems at the back of the book. The author guides the reader through solving the problems with python, including parsing files, etc. I enjoyed this, because it forced me to think about practical solutions for using python, instead of writing "Hello World!" in a million different ways.

2 stars Not clear and well structured

2008-08-07     0 of 0 found this review helpful

The secrets to a good technical book, especially one that is comprehensive is organization and clarity. I found this book to be lacking in those regards. The material needs to be organized better, motivated better and the book as a whole could be more accessible. Note that if you was DIS-organized Python material there is a ton of information on the web. For Python in particular, the secret to a good book is not listing all the hodge-podge of neat modules, but providing a coherent and sensible story for how all they stuff fits together. I think other books do that better.

5 stars A great introduction for programmers and beginners alike!

2008-07-25     0 of 0 found this review helpful

I bought this book based on an abundance of positive reviews and I was not disappointed. Hetland is not only a gifted writer, he is able to portray most of the concepts using entertaining examples mixed in with appropriate humor. Some of the reviews have mentioned that the book goes beyond what the average reader would want to know. While this is true, I was delighted by the extra chapters dealing with a wide range of subjects including networking and extending Python. They gave me the ability to learn about some of these topics and how Python can be used in a variety of applications. However, the beginning chapters of this book are the real selling point. The clear descriptions, fun examples, and generous coverage of important aspects of the Python language are well worth the cost.

4 stars Beginning Python

2008-04-26     0 of 0 found this review helpful

Together with the same author's on-line tutorials, this book is a good introduction. Again, the main concepts and useful ideas are introduced in the first few chapters, but if you know nothing about programming this may become hard to follow after a while.
The author suggests the reader to stop when it's becoming hard to follow, practice writing programs, and then come back to the book when familiarized with more programming. In a way, I find this very honest. I think this is much better than the "... for dummies" competition. The book is completed by 10 practical projects showing mainly how to implement Python for GUI, communication, file managing, and so on... I have yet to find a good introductory book on Python for science, but I have found several on-line documents complementing the book.

Altogether, I recommend this for readers with some knowledge in Java/Perl and object-oriented programming languages.

5 stars The best for learning Python

2008-01-19     0 of 0 found this review helpful

This is a very good Python Book. Simple for the novice and, at the same time, complete for the medium skill programmer.
Some chapter are long and with many information that probably aren't interesting for all readers.
However, it's a very good book that teach Python and explain to the reader some basic concepts of good programming and computer science. A must to read.

Passo all'italiano. Un buon libro, facile da leggere per i principianti e allo stesso tempo completo per i programmatori mediamente avanzati.
Alcuni capitoli sono un po' lunghi, con molte informazioni teoriche che forse possono annoiare alcuni lettori.
Tuttavia, è un ottimo libro su Python, che riesce a spiegare al lettore anche alcuni concetti basilari di buona programmazione. Per chi vuole diventare un buon programmatore Python, un must da leggere.

5 stars Great book

2008-01-10     0 of 1 found this review helpful

After not touching any sort of programming for upwards of four years I picked up this book on a whim. Though it may not be as exhaustively thorough with respect to basics as some of the other beginners python books, I found that it still explains things well enough. It also does a really good job of surveying some of most useful modules and their specifics. It is far from an all inclusive book, however it is supposed to be an introductory book and by those standards it is excellent. I find that I still reference this book often while I am programming.

5 stars An excellent introduction to learning Python

2007-11-21     0 of 0 found this review helpful

This is an awesome book. I have lots of programming experience and dreaded learning another computer language as I probably know over 15 by now but this book really made learning Python fun and enjoyable. It reminded me of my early days in programming, in grade school, and how much enjoyed programming then and now. Penetration Tester's scripting language of choice.

5 stars Best General Python Book

2007-06-05     0 of 0 found this review helpful

I have owned a number of Python books. This was my first one, and most of the other ones (all but "wxPython in Action", another great book) I sold because I realized this was pretty much all that is needed. It goes over a lot of topics, even databases and GUI's. I also like the chapter on dealing with files. It is easy to read and understand yet the information is packed in very densly. I have owned dozens of computer books, and this remains my favorite (and most useful) one. There are a lot of topics that it covers just briefly, but it covers enough to get you started. Online documentation should cover the rest.

5 stars Beginning Python: From Novice to Professional

2006-01-27     0 of 0 found this review helpful

I could write about how Apress has a knack for publishing great books by great authors. I could write about how "Beginning Python..." is one of my favorite books so far, and not just on Python. I could write about how Magnus Lie Hetland does a wonderful job of introducing the reader to the Python language. I could write about how "Beginning Python..." is one of the few books that actually delves into as many possible uses for the Python language from simple lists and string manipulation to GUI's to web development. Believe it or not, with all the great content in this book, the best is yet to come.

Starting with Chapter 20 "Beginning Python..." takes the reader through ten (10) complete projects start to finish including two versions of a file sharing application (version two adds a GUI) and a small game. The best way to showcase the power of a language is to show it in action. Magnus does just that with these project chapters. And it makes the book fun. It makes Python fun. It makes learning fun.

For anyone wanting to learn Python or for a Python developer that wants to expand their knowledge and increase their productivity and find new uses for a great language, "Beginning Python..." is a must have. It's definitely one of my top five (5) favorite programming books.

Buy it from AmazonNew for $40.49