Book review: Python How to Program <i>by Deitel &amp; Associates</i>

Book review: Python How to Program by Deitel & Associates


Python How to Program is a textbook for a basic course in programming based on the increasingly popular programming language, Python.

Python How to Program is a very complete textbook for learning Python.Python How to Program is a very complete textbook for learning Python.

This book is truly a textbook, right down to the duotone red and black printing, which takes me back to my school days. I had expected it to be more of a self-study book as published by other technical publishers, but this book is clearly meant to be used in a classroom environment.

Not only is the book over 1300 pages long, but every bit of it is packed with information

The contents

There are summaries and exercises at the end of each chapter, and a no-nonsense attitude about the whole book—and I say “whole book” as there is a lot of it. Not only is the book over 1300 pages long, but every bit of it is packed with information. This book is meant to bring you from no knowledge of programming right up to the current state of the art. It is, perhaps, a two-semester course at the junior college or college level.

The early chapters are, predictably enough, focused on the basics of programming: what a program is, how it represents instructions to the computer, and different kinds of models for code and data. It follows the newer “objects first” approach without great fanfare, as this is now becoming a conventional approach.

The late chapters are concerned with particular programming subject areas likely to be of interest to college-age students: web programming which is both a very useful job skill and something that Python excels at, but also databases and other areas of practical interest.

Who’s this book for?

This book is clearly a textbook for a conventional classroom environment. There are exercises for homework assignments, summaries, and everything you would expect for that environment.

Relevance to free software

Python may well be the programming language that most embodies free software ideals. Unlike similar languages, it was born and nurtured in a totally free environment. Its focus on ease of learning and above all on readability and self-documentation make it an ideal language to draw users into becoming developers. It is this affinity for free software community that most attracts me to the language.

As such, starting new programmers out in a language overwhelmingly dominated by free software developers has to be a good thing for the future of free software.

If I were preparing to teach a class in Python, I would seriously consider using this book

Pros

For a serious student, there is an enormous amount of material, and no foolishness to get in the way. This book has everything plus an extra kitchen sink in it about programming with Python, so it’s unlikely that you won’t find what you need (if you finish this book, you’ll have no problem going to the primary sources—the Python Library Reference and the Cheeseshop for anything you’re still missing).

If I were preparing to teach a full-semester class in Python, I would seriously consider using this book.

Cons

What there isn’t is any hand-holding. I was a bit disappointed to find that the friendly ant artwork on the cover is in fact the only real illustration commissioned for the book (although it’s duplicated at the beginning of each chapter). There are icons following the ant theme used to tag particular “gotchas” and other notables, but the overall impression is of density. Without the clear compulsion of a classroom regimen, I’m afraid this book would be difficult to finish, as it has a definite danger of overwhelming the student.

Title Python How to Program
Author(s) Deitel & Associates
Publisher Prentice Hall
ISBN 0130923613
Year 2002
Pages 1311
CD included Yes
FS Oriented 10
Over all score 7

In short

Category: 
License: 

Author information

Terry Hancock's picture

Biography

Terry Hancock is co-owner and technical officer of Anansi Spaceworks. Currently he is working on a free-culture animated series project about space development, called Lunatics as well helping out with the Morevna Project.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!