|Philip and Alex's Guide to Web Publishing|
|publisher||Academic Press/Morgan Kaufmann|
|reviewer||Ellen Spertus with Keith Golden|
|summary||Entertaining and informative book on why and how to build collabrative web sites.|
Philip Greenspun - web guru, expert photographer, free software writer, and unique personality - has written an irreverent, informative, and visually attractive book on why and how to build collaborative database-backed web sites. (Alex, his photogenic co-author, is his dog.) The book is a rewrite of Greenspun's earlier Database-Backed Web Sites, whose history and flaws have been described in Greenspun's amusing Book behind the book behind the book. This time around, Greenspun got to do the book the way he wanted.
Greenspun's philosophy can be summarized as follows:
- Whenever possible, web sites should be designed to allow users to contribute material. (I think most of us at slashdot would agree.)
- Web views should be personalized for individual users. (Ditto.)
- A relational database is the best tool for accomplishing these goals. Greenspun even provides free space on his database server for people to use his collaboration tools on their own sites.
- The user interface should be optimized for the convenience of the user. This does not mean that aesthetics are unimportant, just that they should not interfere with the communication of information.
The biggest negative is that parts of this book are repeats of his earlier book. While most of the material is new, reading through the old stuff can be annoying to people who have read the first.
Greenspun's sense of humor. There are many things he says that a reasonable person would find offensive or hilarious or both. (For an example of the last, see his Dating Game.) While it makes the book fun to read, I'd think twice before assigning the book to my students. Some people might be offended by the (artistic) nude pictures, although I was not.
I was at MIT at the same time as Greenspun, where he was known for always speaking his mind (to put it kindly). This same irreverance is evident throughout the book, where he is not shy about stating his dislikes. The following excerpt illustrates Greenspun's style:
Most of what I've said in this chapter goes against conventional wisdom as observed on big corporate sites and in books on Web page design. My theory is that graphic designers get interfaces so wrong because they never figured out that they aren't building CD-ROMs. With a CD-ROM, you can control the user's access to the content. Borrow a copy of David Siegel's Creating Killer Web Sites (Hayden Books 1997) and note that he urges you to have an "entry tunnel" of three pages with useless slow-to-load GIFs on them. Then there should be an "exit tunnel" with three more full-page GIFs. In between, there are a handful of "content" pages that constitute the site per se.
Siegel is making some implicit assumptions: that there are no users with text-only browsers; that users have a fast enough Net connection that they won't have to wait 45 seconds before getting to the content of a site; that there are no users who've turned off auto image loading; that there is some obvious place to put these tunnels on a site with thousands of pages. Even if all of those things are true, if the internal pages do indeed contain any content, AltaVista will roar through and wreck everything. People aren't going to enter the site by typing in "http://www.greedy.com" and then let themselves be led around by the nose by you. They will find the site by using a search engine and typing a query string that is of interest to them. The search engine will cough up a list of URLs that it thinks are of interest to them. AltaVista does not think a Dave Siegel "entry tunnel" is "killer". In fact, it might not even bother to index a page that is just one GIF. (chapter 5)
While most of his opinions are as well-supported as this one, some are more controversial, such as section headings "Java and Shockwave - The BLINK Tag Writ Large" and "CORBA: MiddleWare Meets VaporWare".
Greenspun is a real expert on web publishing and communicates a lot of interesting information. It is clear that his goal is evangelism, not making money: Greenspun makes his code freely available, and the entire book is available for free online (although many people will want to buy it for convenience and its stunning photographs).
So What's In It For Me?
Plenty. Reading this book (and downloading the code) makes it easy to create a database-backed web site. (I know because I did so.) You get not just the basics but real depth, such as how to create a high-performance site, capable of serving 20 or more database-backed requests per second.
Purchase this book at Amazon.
Table of Contents
- Envisioning a site that won't be featured in suck.com
- So you want to join the world's grubbiest club: Internet entrepreneurs
- Scalable systems for on-line communities
- Static site development
- Learn to program HTML in 21 minutes
- Adding images to your site
- Publicizing your site
- So you want to run your own server
- User tracking
- Sites that are really programs
- Sites that are really databases
- Database management systems
- Interfacing a relational database to the Web
- Case studies
- Better living through chemistry
- A future so bright you'll need to wear sunglasses