From the book lists at Adware Report:

All information current as of 13:59:44 Pacific Time, Monday, 21 February 2005.

Learn to Program Using Python: A Tutorial for Hobbyists, Self-Starters, and All Who Want to Learn the Art of Computer Programming

   by Alan Gauld

  Paperback:
    Addison-Wesley Professional
    15 January, 2001

   US$21.75 

   Usually ships in 24 hours

Click the button below to . . .

    
(which will add the book to your Amazon U.S.A. "Shopping Cart")

. . . or use your browser's Back button to return to the search-list page.

Editorial description(s):

From Book News, Inc.
A beginner's guide to programming terminology, fundamental concepts, and techniques for writing code. The author focuses on the four basic constructs of programming--sequences, loops, branches, and modules--then walks step-by-step through the development of a word counter and a guessing game. The CD-ROM contains Python version 1.5.2 and a Python tutorial.Copyright © 2004 Book News, Inc., Portland, OR



Book Info
A guide for professionals and general computer users alike to learning to program Python. Topics covered include data types and variables, debugging, and namespaces. Also includes sample applications that illustrate ideas and techniques in action. The CD-ROM contains an online Python tutorial. Softcover. DLC: Python (Computer Program Language).



From the Inside Flap
Why Write This Book?

I started this tutorial in response to a request from two friends, both of whom were proficient computer users but wanted to go a step further and learn to program. As both had Internet access, I decided to save myself some trouble and find an online tutorial that they could use. Much to my amazement, this quest came up empty--it proved very difficult to find a tutorial that addressed the needs of an absolute beginner. Many tutorials taught specific programming languages, but they all assumed prior programming knowledge. This exercise provided sufficient motivation for me to create my own online tutorial for beginners. (You can see the online version at crosswinds/~agauld/. It's also on the CD-ROM as a Zip file.)

I had assumed that 10 to 20 pages would suffice, but the project grew and grew. Soon I had more than 50 pages of printout and was getting increasing numbers of visitors to my Web site, many of whom asked questions or required clarification of points. Responding to their requests, in turn, improved the quality and expanded the volume still further. Several readers suggested that the tutorial would make a useful book, and this text is the result. My Background

I am a professional programmer who came to programming from an electronic engineering background. I've been involved with computers and the information technology industry since the mid-1970s, working on everything from embedded microcontrollers to mainframe billing systems. In that time I have used (and continue to use) several computer languages and operating systems. A Word about Languages

For commercial reasons I have tried to use American English spellings and terminology throughout the book. This choice has led to some interesting discoveries about the differences between how American English and the rest of the English-speaking world do things. For those non-Americans who get irritated at the inexorable pollution of the Queen's English, I proffer my apologies and sympathy, but I hope you buy the book anyway! To U.S. readers, I hope that any remaining Anglicisms are not too offensive or confusing. Please consider them a quaint relic from the past. Acknowledgments

As ever, this book's existence owes a lot to many people. In particular, I'd like to thank Ray and John, who started the ball rolling, as well as all the folks who visited and commented on the original online tutorial. Also meriting a mention are Matthew Curtin and Herb Sutter, both of whom urged me to "go for it," and Jeff, my boss at work, whose support further encouraged me. Next must come Mike Hendrickson and Heather Peterson, my editors at Addison-Wesley, who were never less than enthusiastic about the project. Finally, I'd like to thank Matt, Dave, Brian, Moira, and Perdita, who have been press-ganged into reviewing various drafts or had ideas bounced off them. I'd also like to thank the many technical reviewers whose comments have helped shape the direction of the book. They all spotted many mistakes; any that remain behind are solely mine. Finally, thanks to my wife, Heather, who patiently whiled away the many hours alone as I gazed haplessly at the PC.

0201709384P04062001



From the Back Cover
Are you a...



Then Learn to Program Using Python is the book for you.



You will find this book to be an ideal starting point for learning the essentials of computer programming. Assuming no prior knowledge (other than basic computer operation), this unintimidating and clearly written guide introduces you to programming terminology, fundamental concepts, and techniques for writing actual code.



Python is ideal for novice programmers: it is available for free; it has simple syntax but powerful features; it supports lots of programming styles; it runs on many platforms; it has a friendly and helpful user community. This book uses the Python language to teach you the fundamentals of computer programming. Once you master the basic techniques and concepts you learn in this book, you can apply them to any language you choose to work with.



Learn to Program Using Python is based on a popular on-line tutorial that has been expanded and enhanced for this book. It takes you step-by-step through all the essential programming topics. You will learn about:



In addition, the book introduces elements of programming style and offers a look at the thinking and steps involved in designing a software solution. Several sample applications illustrate techniques and ideas in action.



The accompanying CD-ROM contains the on-line Python tutorial.



0201709384B04062001



About the Author
Alan Gauld is a professional programmer with a gift for explaining complex concepts. His 25-year career has encompassed numerous programming languages, operating systems, and application development projects, from embedded microcontrollers through mainframe billing systems.

0201709384AB04062001



Excerpt. © Reprinted by permission. All rights reserved.

Why Write This Book?



I started this tutorial in response to a request from two friends, both of whom were proficient computer users but wanted to go a step further and learn to program. As both had Internet access, I decided to save myself some trouble and find an online tutorial that they could use. Much to my amazement, this quest came up empty--it proved very difficult to find a tutorial that addressed the needs of an absolute beginner. Many tutorials taught specific programming languages, but they all assumed prior programming knowledge. This exercise provided sufficient motivation for me to create my own online tutorial for beginners. (You can see the online version at
. It's also on the CD-ROM as a Zip file.)



I had assumed that 10 to 20 pages would suffice, but the project grew and grew. Soon I had more than 50 pages of printout and was getting increasing numbers of visitors to my Web site, many of whom asked questions or required clarification of points. Responding to their requests, in turn, improved the quality and expanded the volume still further. Several readers suggested that the tutorial would make a useful book, and this text is the result.

My Background



I am a professional programmer who came to programming from an electronic engineering background. I've been involved with computers and the information technology industry since the mid-1970s, working on everything from embedded microcontrollers to mainframe billing systems. In that time I have used (and continue to use) several computer languages and operating systems.

A Word about Languages



For commercial reasons I have tried to use American English spellings and terminology throughout the book. This choice has led to some interesting discoveries about the differences between how American English and the rest of the English-speaking world do things. For those non-Americans who get irritated at the inexorable pollution of the Queen's English, I proffer my apologies and sympathy, but I hope you buy the book anyway! To U.S. readers, I hope that any remaining Anglicisms are not too offensive or confusing. Please consider them a quaint relic from the past.

Acknowledgments



As ever, this book's existence owes a lot to many people. In particular, I'd like to thank Ray and John, who started the ball rolling, as well as all the folks who visited and commented on the original online tutorial. Also meriting a mention are Matthew Curtin and Herb Sutter, both of whom urged me to "go for it," and Jeff, my boss at work, whose support further encouraged me. Next must come Mike Hendrickson and Heather Peterson, my editors at Addison-Wesley, who were never less than enthusiastic about the project. Finally, I'd like to thank Matt, Dave, Brian, Moira, and Perdita, who have been press-ganged into reviewing various drafts or had ideas bounced off them. I'd also like to thank the many technical reviewers whose comments have helped shape the direction of the book. They all spotted many mistakes; any that remain behind are solely mine. Finally, thanks to my wife, Heather, who patiently whiled away the many hours alone as I gazed haplessly at the PC.



0201709384P04062001


Book Description
A guide for professionals and general computer users alike to learning to program Python. Topics covered include data types and variables, debugging, and namespaces. Also includes sample applications that illustrate ideas and techniques in action. The CD-ROM contains an online Python tutorial. Softcover. DLC: Python (Computer Program Language).





Reader review(s):

almost complete, but could use a few touchups, January 1, 2001
Not a bad introduction to the basic concepts, and certainly better than most of the "teach yourself", "learn foo in 15 minutes", "foobar for dummies", or the idiot guides. This book does not attempt to teach serious Python, instead focusing on the practice of program development with python as an example language. There are lots of "see the python documentation" type references to explain newly presented material. The basics of python are presented clearly, although a true novice will probably get lost and require some more clarification- that's ok since it teaches how to learn more about the language. Don't worry, the CDROM contains tutorials and there's lots more available online. Each chapter is presented in pseudo-textbook style, complete with sometimes silly "things to ponder" (e.g. "It's often said that laziness is a good quality in a programmer- can you think why that might be true?"). For the next edition a series of exercises and programming assignments would be useful, complete with answer keys on the CDROM.

The book can certainly include more about how programmers solve problems and create useful tools. Introducing a collection of "tricks of the trade" would help here (e.g. the 'x = TRUE', 'while not TRUE' conditional statements used so ubiquitously aren't even mentioned). A chapter dedicated to simple algorithms would be nice as well (e.g. a sorting routine), and would make writing useful programs much easier for beginners. The large type and wide margins could be pared down a bit to include all of this without making a doorstop-like tome (a la wrox/"teach yourself" books).

With that said, there are some very good points in this book that make it a good choice. The book accomplishes its goal of "learn to program" using small, easily digested chapters that are quick reads. There are lots of examples and most importantly, examples of larger programs that are actually fun to write and modify (like the hangman prog.) One of the most helpful chapters for me was the chapter "Designing a solution", aimed at getting a larger project going. Additionally, the book presents essential (but often overlooked) chapters on debugging and programming style.

As it stands, the book provides a solid foundation for the more comprehensive books (e.g. Kernighan and Ritchie's "the C programming language"). With a few touchups this book could become an essential introduction to programming.

Very good introduction to programming, January 16, 2001
Most books that aim to teach a programming language assume some knowledge of programming in general. The target for this book is someone with no programming experience at all. Python is simply used as an example language. Python is a good language for such a person, given its clean sytax and underlying simplicity. I've had a little programming experience, and found the book very easy to read. Some of the explanations may be a bit terse for the complete novice. This is probably the books weakest point.

Gauld makes it very clear that the book isn't designed to make the reader a Python expert, it is simply to get him or her up to speed on general programming ideas (e.g, loops, conditional statements, etc.), so that the reader can then move on to other books or tutorials (such as the Python tutorial on the included CD).

Overall, I think Gauld succeeds in his goal. There are other online resources with similar aims (the "How to think like a computer scientist" site comes to mind). But for those without constant internet access, this book is a great place to start. The complete novice would then be able to tackle something more substantial, such as /The Quick Python Book/ and/or /Learning Python/, or a book on another language (personally, I'd recommend they stick to Python for a while).

Excellent intro to programming and Python, January 7, 2001
I've taught beginning programming at the Junior College level, and not a one of the texts I selected, were as lucid and well written as this one.

Especially strong in the introduction of Object programming, the author excels at terse yet appropriate code examples.

I'm recommending this book to everyone I know.

Operator Overloading & Other Nonsense, September 17, 2002
On page 52, before you have written a single simple program this poorly edited book stuns the beginner with:


Object operations are accessed in the same way as data members of a user-defined type (that is, via the dot operator) but otherwise look like functions.

If you already know how to program, say in Pascal, or have extensive experience with scripting in DOS or Linux, then this book is a slow introduction to the Python language.

If you have never programmed before, this book will make your head hurt, especially since it is secretly a British book translated into American. Technical books are difficult in general, but in my experience, the Brits have a special knack for making the easy difficult and the difficult next to impossible. Beginner's books should seek to build confidence, not overwhelm with how brainy and wide-ranging a thinker the author is.

The examples are confusing and poor. For instance when showing how a complicated feature works he should use everyday words like "goat", "pig", "horse" as examples of data to be stored. Instead, the author uses jargon words like "boolean" and "integer" -- this right after describing boolean and integer values.

Originally this book was a web site, and in fact it still is. I recommend you save your money and download or view it online.

Programming for right-brained readers, December 20, 2001
This is the first book I have ever used that got me to understand the conceptual underpinnings of the craft of programming - and then it helped me do it!

I have had a varied IT career that has included networking, web design and high end graphics work, but I am decidedly right brained and conceptual mathematics is wasted on me. I have attempted to learn programming languages in the past for automating my work but have always ended up delegating the tasks, relying on others.

The tone of the book was perfect for me. It eased me into the world of programming while keeping me rooted in concepts I could relate too. The author is very sympathetic to the needs of readers like me, who are not naturally enclined programmers but need to get into the field.

The book flows from topic to topic very naturally. The content is clear and simple yet gives reference to topics the reader might wish to investigate as they gain confidence. The "Things to Ponder" sections helped me investigate my own thinking about programming, which really helped me unlock my own understanging of programming.

This book is an excellent start for anyone wishing to learn programming, especially those who have failed before. I am now going to start the O'Reilly book "Learning Python (Help for Programmers)" feeling fully empowered.

Basic profgramming intro, February 8, 2003
I'm biased, I wrote it! But Amazon[.com] keep asking me to review it so here I go... It does have exercises, albeit hidden in the text rather than listed at the end of each chapter. That's because it was never intended to be a classtoom text but for enthusiastic amateurs. The best way to learn is type in the examples, then modify them. There are, sadly, a lot of minor typos, fixes are posted on the web site.
Enjoy.

Quick to the meat and potatoes but well explained, February 6, 2003
This was my first introduction to Python with little programming experience in general. The author does a great job of ramping into examples containing 'real world' relevant code. This book is a refreshing change from the apparent trend of 'the more pages, the better' Material is condensed into small bite-sized chunks of 5-6 pages.

Not much in the way of exercises, March 8, 2001
I was disappointed by the lack of exercises and problems for the reader to work through. You don't learn programming by reading; you learn it by working problems out. If you've ever tried to teach programming, you know that it's a serious challenge to find exercises that are within the capability of the learner yet are challenging enough to be interesting. The author of this book appears not to have even tried.

I thought the Sams book "Teach yourself Python in 24 hours" was actually more successful, but if anything, raced into more advanced material a little too quickly the beginning learner.

Learn to Program Using Python: A Tutorial for Hobbyists, April 21, 2001
I first learned of Python in school by writing a paper on it. That peaked my interest. I have the other Python books but they did not show me the direction on how to use Python correctly. Thanks for to Alan Gauld, Python is easier to use. This is good bare bones book to teach a new language or if your not a programmer to teach programming correctly in Python. I would strongly recommend this book to anyone who wants to learn Python.

Pretty good, but you'd better get the errata sheets, April 19, 2001
I've only made it through the first six chapters (out of 23), so I'm not ready to comment on the effectiveness of this book.

One thing I can say is that it is rife with typos & errors from start to finish (many trivial, others serious)....


{end of page}

(Page code from the SEO Tools, Toys, and Packages site)