Archive for May, 2010
It is widely believed that programming is a difficult mental task that not everyone can perform. Nevertheless, books like “Head First Programming“, by Paul Barry and David Griffiths, are a testimony that programming is for (almost) everyone. In principle, a programming language is an artificial language designed to express solutions to problems that directly or indirectly are mathematical in nature. Thus, everyone can learn to program, provided he/she has some elementary mathematical maturity. In different words, everyone who is familiar with basic mathematical notions, can learn to program. The real problem is how to convince one that he or she is capable of doing some great things with a computer?
Barry and Griffiths have written a book that can convince even the most skeptic reader that programming is indeed a task suitable for everyone. Their book employs some interesting techniques adequate for novice readers. And this is exactly what makes their book special. On the other hand, the book should be of interest even to experienced programmers who aim to teach programming. The book starts with almost silly examples, but in the end they show the readers how to develop real GUI applications, that is, applications with a graphical user interface. More specifically, the book is divided in ten chapters. The first chapter aims to familiarize readers with computer code written in the Python programming language, which is the teaching vehicle of the book. Readers are asked to do a number of exercises that will help them to understand some basic notions (in general, readers are expected to do all exercises). Then the readers are introduced to conditional constructs and their use in programming. The second chapter is devoted to string manipulation, while the third chapter introduces readers to functions. The fourth chapter is about arrays and files and the fifth chapter about hash tables and their use. The sixth chapter is about modular programming and the seventh chapter is an introduction to basic GUI programming. The eighth chapter is about the design and implementation of GUI applications that may accept input from users. The last two chapters present present “advanced” topics in GUI programming.
I am not a novice programmer, but after reading some chapters and skimming through the rest of the book, I dare to say this is a book every newcomer should consider studying. The book has been published by O’Reilly on December 2009 and costs £38.50 or 40€, or $49.99.