Review: Teach Yourself Python in 24 Hours 
Author Message
 Review: Teach Yourself Python in 24 Hours

From now on, whenever I complete a python book review, I'll post it to
c.l.p.  Book reviews are archived at my home page:
http://www.*-*-*.com/ (note new URL!)

--amk

Review: Teach Yourself Python in 24 Hours

   Ivan van Laningham
   SAMS, 484 pages
   ISBN: 0-672-31735-4

     Summary: An introductory book on Python that's reasonably good on
     the basics, though I'm doubtful of whether beginners will find the
     book's explanation of object-oriented programming to be readily
     understandable. The author's personality is entertainingly apparent
     throughout, something sadly all too rare in computer books.
     Unfortunately the book's production is poor, with hard-to-read
     screenshots and many typos, knocking its ranking down by one. 3
     coils out of five: a decent introduction, but definitely flawed.

   The mere title of the SAMS "Teach Yourself X in 24 Hours" series
   raises people's hackles at the presumptuous idea of learning a
   significant new tool or skill in a single day's effort. (See Peter
   Norvig's counterblast "Teach Yourself Programming in 10 Years" for a
   stately example of the usual reaction.) The "24 Hours" of the titles
   is a bit deceptive, though, actually meaning that the books are broken
   into 24 chapters, each a one-hour lesson, that could be read over
   several days. Completing them all within a single calendar day,
   however, isn't really possible, despite the title implying that.

   I've previously read another book in this series, "Teach Yourself GIMP
   in 24 Hours", and found it quite useful in getting a broad overview of
   the GIMP's features. "Teach Yourself Python" is similar, providing an
   overview of Python that's fairly broad, not very rigorous or deep, and
   doesn't attempt to be a reference. van Laningham's writing style is
   conversational and fluid, with entertaining digressions into side
   topics such as computing history or calendrical computations. One of
   the delights in this book is the "Exercises" section at the end of
   each chapter, containing open-ended suggestions for future projects
   and links to related Web pages. van Laningham is clearly aware that
   programming skill has a slippery definition and is gained as a craft
   rather than a science, and tries to impress these points upon the
   reader, something rare in introductory texts. I'd love to see this
   writing style applied to broader topics of programming technique and
   structuring, rather than the fiddly details of syntax and data types;
   it would produce something similar to Richard P. Gabriel's Patterns of
   Software or The Pragmatic Programmer by Hunt/Thomas.

   The first 8 chapters of the book go over the well-trodden ground of
   Python basics: the basic data types such as numbers, strings, lists,
   and dictionaries; operators and variable assignment; flow control
   statements; functions and modules. This section is solid and
   straightforward.

   I'm not sure chapters 9 through 13 on object-oriented programming
   would be at all clear to a beginning programmer. It's difficult for me
   to judge this, of course, and certainly when reviewing an introductory
   book experienced programmers tend to attribute supernatural feebleness
   to the intended audience and to underestimate their ability. Still, it
   seems to me that the OOP chapters get pretty murky at times. While the
   text is technically accurate, at times I had to read and parse
   sentences very carefully to compare my understanding of Python
   semantics with the book's explanation, and a beginning programmer
   would find it difficult to follow the text, especially given that
   there are no helpful diagrams. In particular the explanation of
   namespaces seems particularly dense and confusing. Finally, the now
   and today classes used for examples throughout these chapter are small
   toy classes, meaning there's no particular motivation for making one
   class inherit from the other. A more realistic example would have been
   better.

   Chapters 14 and 15 are quite good, following a simple file-munging
   script from initial conception to development through to documentation
   and modularization. While these chapters are the tail end of the
   second part of the book, covering OO, the script doesn't use OOP at
   all, and these chapters could have come earlier in the book and been
   included in Part I. This would definitely be a better organization,
   since these two chapters very good demonstrations of modifying a
   program and of the importance of proper style, and show a small but
   realistic motivating example.

   The final eight chapters contain a brief introduction to Tkinter
   that's reasonably good, though of course it's not possible to cover
   Tkinter programming, or even every Tk widget, in 150 pages. It
   probably provides enough information to learn more about Tkinter using
   other resources.

   My major gripe about the book, besides my concerns about the clarity
   of the OO chapters, is its sloppy production; typos and formatting
   errors are frequent, sometimes including misindented Python code in
   the program listings. Interpreter interactions and the output of
   Python code are shown using screen grabs of a Windows DOS shell,
   resulting in tiny characters that are low-contrast and very difficult
   to read, and wastes much space when the output is just a few lines.



Sat, 19 Apr 2003 10:33:09 GMT  
 Review: Teach Yourself Python in 24 Hours

Quote:

>   My major gripe about the book, besides my concerns about the clarity
>   of the OO chapters, is its sloppy production; typos and formatting
>   errors are frequent, sometimes including misindented Python code in
>   the program listings. Interpreter interactions and the output of
>   Python code are shown using screen grabs of a Windows DOS shell,
>   resulting in tiny characters that are low-contrast and very difficult
>   to read, and wastes much space when the output is just a few lines.

Futz.  I guess that means my editing didn't make it into the final copy.
Oh, well.
--

Androgynous poly {*filter*} vanilla {*filter*} het    <*>     http://www.*-*-*.com/
Hugs and backrubs -- I break Rule 6

'Does it say something about our culture that "academic" is sometimes
used as a synonym for "irrelevant"?'  --Marc Wilson



Sat, 19 Apr 2003 13:45:09 GMT  
 Review: Teach Yourself Python in 24 Hours

Quote:

>    significant new tool or skill in a single day's effort. (See Peter
>    Norvig's counterblast "Teach Yourself Programming in 10 Years" for a
>    stately example of the usual reaction.) The "24 Hours" of the titles

I misremembered this title.  It's "Learn Programming in 21 Days?  Or
10 Years?", and is at http://www.norvig.com/21-days.html .

--amk



Sat, 19 Apr 2003 20:00:35 GMT  
 Review: Teach Yourself Python in 24 Hours

Quote:

> On Mon, 30 Oct 2000 21:33:09 -0500, "A.M. Kuchling" >   The mere title of
> the SAMS "Teach Yourself X in 24 Hours" series
> >   raises people's hackles at the presumptuous idea of learning a
> >   significant new tool or skill in a single day's effort.

> Actually, I did learn much of Python, a significant new tool for me, in a
> single day.  In a car, even, reading Programming Python.  

Hey, so did I!  Missed my turn-off, though, and when I hit that
telephone pole it was all over.  Stupid language. :-(

-and-don't-talk-to-me-about-coding-and-driving-ly-yr's

--
Peter Hansen



Thu, 24 Apr 2003 14:30:55 GMT  
 
 [ 4 post ] 

 Relevant Pages 

1. Teach Yourself COBOL In 24 Hours!

2. Sams Teach Yourself COBOL in 24 Hours

3. Great price on Sams Teach Yourself COBOL in 24 Hours.

4. Teach Yourself Python Book/Website

5. 50% off sale extended another 24 hours

6. Gitano Software Sites Down for the next 24 hours

7. Elasped Time past 24 hours

8. FA: Jupiter Ace - last 24 hours!

9. Planned 24 hour moderation outage.

10. Less than 24 hours... The Westergaard Y2K Colloquium

11. Using Learn Cobol 24 Hours by Thane Hubbell

12. TY COBOL in 24 Hours - via Amazon.com

 

 
Powered by phpBB® Forum Software