Database Backed Web Sites

Database Backed Web Sites: The Thinking Person's Guide to Web Publishing! by PhilipGreenspun, ZDPress, 1997, ISBN 1562765302

     The Associated Web site is http://www.photo.net/wtr/dead-trees/
a Computer books these days seem to come in one of three flavors: Overly Simplistic, Academic Tome, or Expositions of General Principles.

The Overly Simplistic ones are usually based on a single product and written in under 3 months. Included in this category are the dummies books, the learn <topic> in 21 days books, the Unleashed books, etcetera.

The Academic Tomes are either boring and simplistic (undergraduate and first year graduate) or boring and complex (later years). And, in either case, they hide the useful information.

And the General Principles books usually contain stuff that is relevant to almost any project. Advanced C++ is in here, as are virtually all the patterns books (except, of course, for Patterns for Dummies). There are some GP books that attempt to cover a specific area, but they usually don't make much sense until you've got a few projects under your belt (for example, Hay's Data Model Patterns is a great book, but not where a person wanting to learn more about database programming should start).

Which is one reason why I tend to piss and moan before learning a new technology. Take when I started to learn about Distributed Computing for example. I don't want to read the 800 pages of moronic drool that undoubtedly made their way into Corba Unleashed. Neither do I want to read an academic tome on network security models ("complete with pseudocode in a hard to read language invented just for this book") or an ORB vendor's manuals (most of which go into great detail explaining how to build "the bank example" but completely neglect anything difficult). It seemed like a simple thing, wanting to learn about distributed computing, but getting from that want to becoming reasonably skilled at building applications (and understanding their innards) is astonishingly difficult. There's no reference, no overview, no good book for beginners.

Which is why I'm so amazed by Greenspun's book. I had wanted to learn about dynamic web sites, but was really hesitant. It seems like a simple subject, but one that has its fingers in a lot of pies. Lots of chances for people to cover part of the story, lots of chances for people to write cookbooks without explaining the underlying ideas, lots of chances for people to write 21 Days books that just plain sucked and lots of chances for me to waste time reading the wrong book or just spinning my wheels.

Greenspun's book belongs to the mostly empty fourth category: Surveying an application area with an intent to build. It's an overview, with important technical details explained, and warnings about pitfalls that aren't obvious, and lots of interesting sidenotes that firmly attach the subject to what you already know.

It's a good book; it may even be a great book.

It's an introductory book about a single subject (hooking a database into a web server) that frequently wanders outside the alloted subject into related matters (what makes a web site good, how to administer a web site).

It is a practical manual (any programmer who reads this book will have a solid grasp of the subject and will be ready to go out and hook databases to web servers with elan) without having much in the way of code or boilerplate recipes and without being product specific.

It's written from experience-- there are lots of warnings, lots of examples drawn from real projects, lots of information about avoiding pitfalls. And yet, it's short, pithy, and an easy read.

In short, it's a roadmap to the technology, covering the obvious important issues (CGI scripts, connecting to databases) and the ones that are important, but that a first-timer might easily overlook (for example, Chapter 7: Learning from Server Logs. 20 pages that explain what logs do and why they're useful. Good info, nicely presented).

The only flaw I found in it was the author's obvious fondness for Lisp (a forgiveable bias, but displaying it so broadly is bad pedagogy). The book is well worth the money and well worth reading.

WilliamGrosso


Ditto on everything William says about the book.

This is a great overview book for technically savvy people who are moving from having a simple website into the web database game, or for non-technical people who need to get quickly to knowing what questions to ask of developers, webmasters, and vendors. Greenspun's writing style is refreshingly irreverent.

Also worth checking out is his story-behind-the-book skewering of the technical publishing industry. See http://www.photo.net/wtr/dead-trees/story.html --DaveSmith


The chapter about databases is just about the best introduction to the subject I've ever read. If you have to deal with someone who hasn't a clue about relational databases, let them read Chapter 11.

--RobCrawford


CategoryBook


EditText of this page (last edited December 19, 2013) or FindPage with title or text search