Updates

Latest Tweet



What's New?

Check out for latest innovation, a computer based training video collection


Like this Page

MySQL: Building User Interfaces (Landmark) Review by anonymous

Great - but don't let the title fool you

Let me say this right away: This is a good book. If you already know your way around MySQL and have at least a basic knowledge of C, you'll very quickly get up to speed in creating a MySQL GUI (GTK+) application for your co-workers or your client.
The introduction lays out some of the foundations, and the reader is warned that some skills are required before delving deeper into the book: Basic knowledge of C, SQL, Linux are all required to gain anything from this book. Some experience in VB, Delphi or other form-based IDEs will also give you a good start on the book.
The first section of the book gives a good run-down on MySQL, GTK+ and Glade. There are a few non-critical errors in the text (stating that a MySQL table is limited to 50 mio. records; claiming that Qt is not free, although the Qt/X11 is released under the GPL). The chapters on GTK+ also give the reader the first taste of the author's preference on using page upon page of commented source, rather than explanatory body text.
The second section is a walk-through of three Real-world implementations. The first is a relatively simple order entry application; the second a commissions calculation application and the third a fairly complex report generator. In all three examples, the focus is primarily on Glade and GTK+, and very little mention is made of MySQL.
The third section is a short discussion on using the XML files generated by Glade, which may -- in some very specific cases - allow the programmer to make changes to an application without recompiling a project. This discussion really is too short, and I wonder whether the reader might be confused more than helped by this chapter. These pages could have been of much better use if the author had spent some more time discussing security issues in MySQL and applications, something which this books sorely lacks. There is some discussion on the subject, but it's much too short and general.
One thing I really like about the examples is the "running commentary" on how to distribute programs, moving from a simple "copy the executable" over "make install" and ending up at "building an RPM".
I like examples, and a good tutorial should contain a lot of them. Some of the code examples in the book are very good -- those where a small section of a program is shown, and each important line of code is emphasized and explained. In this book, the author has chosen to give us page up and page down of program listings, which, although well commented in-line, make for extreme terse reading. More than half the book is comprised of program listings, and that's not counting the last 150+ pages making up the appendix, consisting solely of program listings. I have serious doubts that anyone will ever be reading these.
The title of the book is, unfortunately, very badly chosen. "MySQL" suggests that you can only use this book with the MySQL DBMS, even though many of the SQL examples are really quite general in scope; "Building User Interfaces" suggests that this book contains a general discussion on UI, while it is in fact very heavily centered on GTK+. The layout of the front page also suggests that the main focus on the book is MySQL, which is not true -- only about 25% of the contents are set off for discussing MySQL, the rest of the book is about Glade and GTK.
If you're coming from a Windows/MS-Access background and wish to know more about writing GUI applications for MySQL, program deployment, this book is definitely for you. If you've never worked with MySQL (or any other SQL database), you should get some more experience before getting this book.
I'm giving five stars for the contents minus one for a misleading title page.