The Definitive Guide to MySQL, 2nd Edition Apress, 2003
Both books assume no previous knowledge of database design or SQL, and adopt a tutorial-style approach to creating and manipulating a database in MySQL. They also serve as useful reference books to experienced users, covering all aspects of installation, SQL usage, administration, and backup. What I have found particularly useful in Kofler's book is the clear, logical layout with bold headings and important points highlighted, making it much easier to browse and find the information you're looking for. Another strong point in Kofler's favour is Chapter 5, a 50-page primer in database design. He takes the example of a database of books, and leads you through the process of working out the best structure for the tables. He handles the subject of normalization in strightforward, easy-to-understand terms, and describes the various types of table columns, with examples of how they should be used. There is no single "right" answer to database design, but Kofler presents a solution and then discusses the pros and cons. He takes a similar approach to many other issues, such as the choice between MySQL's default MyISAM tables and the newer InnoDB. Both have their advantages and drawbacks, but Kofler's sound advice makes the decision a lot clearer. A large part of the book is devoted to how web applications can be built by combining MySQL with a variety of programming languages - PHP, Perl, Java, C, C++, Visual Basic and C# (but not ColdFusion). Because of PHP's close integration with MySQL, the lion's share is devoted to PHP, with two chapters given over to developing a fully functional database of books and web forum. PHP users also benefit from a tutorial in the use of phpMyAdmin, the user-friendly graphical interface for MySQL offered by many ISPs. Where this book suffers in comparison with DuBois is in its coverage of MySQL functions. Although they're listed and described, there are fewer worked examples. It's probably not worth owning both books, but if you don't have either, on balance I'd say Kofler is the one to go for (and not just because of my Apress connnections). For anyone planning to use MySQL a lot, a good companion to this book would be the O'Reilly "MySQL Cookbook" (by Paul DuBois, so he still gets my vote). By the way, don't be put off by the fact that this book is a translation from the German. It reads very well; in fact, a lot more smoothly than some books written by native English speakers. |
Regular Expression Pocket Reference O'Reilly, 2003
Anybody attempting to learn Regular Expressions (not the easiest of subjects) from this book would be totally lost. At the moment, the unsurpassed source for that is Jeffrey Friedl's "Mastering Regular Expressions" (also published by O'Reilly and reviewed separately). In fact, the two books are designed to go together. The pocket reference tells you where to find a more detailed explanation of many issues by giving the page number in Friedl's book. What I find particularly useful about the pocket reference is that it is divided into sections covering Perl 5.8, Java, .Net and C#, Python, PCRE Lib, PHP, vi Editor, JavaScript and Shell tools. For each one, it gives a full listing of the metacharacters supported and a brief description of functions associated with regular expressions. When switching from JavaScript to PHP and vice-versa, I find this essential, as each implementation of RegEx has its own peculiarities. You could probably find similar information online and simply print it off, but I find the book format much more convenient. And it is something I've slipped in my pocket to read in spare moments. |
Google Hacks O'Reilly, 2003
This is not the sort of book that you sit down and read from cover to cover. As the subtitle '100 Industrial-Strength Tips & Tools' suggests, it's designed for you to dip in and find the answer to a particular problem. Still, I found myself being drawn to read more and more, thinking: 'Wow, I'd no idea you could do that.' Things such as how to use Google to find a telephone number in the United States, or how to narrow down your search to a particular site (say, for instance, you want to look for an old article in the site of a specific newspaper or magazine). The first quarter of the book is filled with simple, but useful tips like this, but then it gets into more advanced territory - specialist searches, getting Google by email, and building a form to conduct searches within a specific date range. Most of the second half of the book is devoted to the Google API, which enables web developers to build their own customized search applications with Perl, PHP, XML and other programming languages. Unless you're familiar with programming, this section of the book will be less helpful, although it's still fascinating to read what can be done. The final eight tips look at Google from the point of view of a web designer - how to get that all-important position close to the top of Google's search results. It has to be pointed out that these are only educated guesses - Google does not reveal its secrets to outsiders - but they have a strong ring of truth about them. There's also advice on how to get back into Google's good books after being banned, and how to get Google to remove material you don't want the rest of the world to see. Even if you use only a handful of the tips contained in Google Hacks, I think you'll find it an entertaining and illuminating read. |
Perl Cookbook, 2nd Edition O'Reilly, 2003
|
Perl for Web Site Management O'Reilly, 2002
Instead of assuming prior knowledge of Perl, John Callendar's approach is to explain things as he goes along. This certainly takes a lot of the pain out of learning, but has a major drawback - unless you already know Perl, you can't skip ahead and do just the projects that interest you. Best used in conjunction with another book, such as Learning Perl, as a way of seeing some of the many useful things Perl can do for you. |
Mastering Regular Expressions, 2nd Edition O'Reilly, 2002
Be warned, though, this is not a book for faint hearts. On my first read-through, I decided to stop after the second chapter, as I didn't want to be overwhelmed. I felt armed with sufficient information to get me both interested and to start experimenting on my own. After several months, I returned and read just over half the book. I learned a lot more, but it left my head spinning. That's no criticism of Jeffrey Friedl's approach - he admits it's heady stuff and takes a long time to sink in. A sound knowledge of regular expressions is essential if you want to move beyond the basic level of JavaScript, PHP or any other scripting language. They are patterns that search through text and data files matching and manipulating whatever it is you're looking for - just like the wildcard characters . and *, but far more precise and powerful. Unfortunately, each programming language implements a different set of utilities, although the most widely used ones come from Perl. Friedl's book covers them all, which can be frustrating if you're interested in learning to use regexes in only one environment, such as JavaScript. It's worth persisting, though, and following Friedl's advice that the most important step towards mastering regular expressions is understanding how the main search engines work. Once you know that, you can come back and study the details, and begin to use more sophisticated techniques such as lookahead and lookbehind. Like learning a foreign language, fluency only comes with constant practice, and this is the essential grammar book you need to keep coming back to. The book is full of practical examples, and Friedl pops in the occasional quiz that really helps consolidate understanding. Not an easy book, nor an easy subject, but both definitely worthwhile. |
© 2002-5, Japan Interface. All rights reserved.