Foundation - Mac OS X Web Development
Posted: 24-Feb-2006

Mac Guild Grade

Publisher: Apress

A

Reviewer: John Gebhardt $34.99


Foundation - Mac OS X Web Development
By Phil Sherry
Published by - friendsofed - an Apress Company
ISBN 1-59059-336-7
$34.99 US

What the Book is About
The aim of the Mac OS X Web development is to provide the reader with a solid a foundation for developing web pages and web applications on the Macintosh platform. It covers topics from basic web pages to advanced interactive websites with embedded multi-media.

Given it's 319 pages Mac OS X Web Development is a fairly comprehensive manual for web development on the Mac. It begins with coverage of basic capabilities and discussion of web development tools. It then moves on to development of static web sites and then to dynamic web page development. Later chapters cover UNIX essentials, use of the Apache web server, database integration ( using MySQL), server-side language environments (PHP, Perl, ASP, ASP.net, JSP and ColdFusion) and, finally, Multimedia integration.

Here is list of the chapters with a note about what is covered by each one.

Chapter 1 - Introduction to Mac OS X Panther: New Features - As it says, describes the features of 10.3 when it was released. Short comparison to OS 9, introduces PHP and UNIX as elements of web development and introduces Adobe and Macromedia's web development applications.

Chapter 2 - Mac Graphics and Design Issues - More detail about the Adobe and Macromedia products. Covers typography, color use, page layouts, copyright issues and Mac-PC compatibility.

Chapter 3 - Developing Static Websites - Introduces and provides examples of XHTML, Cascading Style Sheets (CSS), and JavaScript.

Chapter 4 - Browser Issues - A brief history of web browsers. Some detail on the Gecko, WebCore/KHTML and proprietary (Internet Explorer, iCab and Opera) browser engines. Discussion and examples of HTML Tags, Frames and iFrames.

Chapter 5 - Dynamic Web Page Development - How dynamic sites work. Introduction and examples of Common Gateway Interfaces (CGI). More details and examples using Perl and PHP. Working with Apache web server. Using mail to relay error messages.

Chapter 6 - Mac UNIX Essentials - A Mac UNIX primer. Discusses Darwin. Listing and examples of basic UNIX commands. Discussion and examples of Remote operations. Using Fink and X11.

Chapter 7 - Apache Modules - Much more detail on using Apache. Configuration, the modules, Xcode, UNIX interactions.

Chapter 8 - Databases - Explanation of databases. Details and examples of setting up a MySQL database working with a website.

Chapter 9 - Server-Side Language Environments - descriptions and examples of Perl, PHP, ASP, ASP.net, JSP, ColdFusion. Security considerations and problem avoidance.

Chapter 10 - Multimedia - Mac iapps - iTunes, iPhoto, i Movie, GarageBand, Quicktime Pro and using them with web sites. Darwin Streaming Server. Using Flash.

The book includes numerous specific examples presented in text book or recipe book fashion. All of the code included in the book can be downloaded from the web (www.friendsofed.com). The book will take a dedicated reader through every step necessary to construct their own operational and interactive web site.

Target Audience
This book is intended for Mac users who are interested in going beyond the basic web page capabilities provided by .Mac or other on-line hosting services. Readers of this book will typically have the desire to delve deeper into the web development technology with the objective of creating fairly complex, interactive web sites and web applications. This in not a book for novice Mac users but reasonably experienced users will find it quite digestible.

What to Expect
Having only built simple web pages before the work with Diane Love on the Cybernaut's website, the book was very useful to me. The book provides a broad understanding of development tools and techniques needed to design and develop advanced web sites. I like the very specific examples provided because they allow the reader to perform real development tasks and produce working web pages. This is much more interesting than just describing what can be done, it really shows you how to do it.

The sections on Perl, PHP, UNIX, MySQL will, I believe, be useful references in the future. Though the book is not a substitute for thorough training in these specific programming tools, it does provide basic guidance for anyone familiar with programming concepts.

Mac OS X Web Development gave me the real desire to create a useful web application. Now if I can only find the time and a subject to do it...

What is Not Covered
Something that I found a little disappointing was in the area of the web and graphic development tools. The book described and compared only the "major" tools in these categories: GoLive and DreamWeaver, Photoshop and Fireworks, LiveMotion and Flash. Perhaps the aim was to direct this section to more professional developers but it would have useful to at least mention some of the lower cost alternatives such as Freeway Express, RapidWeaver, Graphic Converter, GIMP and others.

Highlights
In my opinion Mac OS X Web Development presents a wide variety of information in concise and easily digestible fashion. I found the scope and depth of coverage appropriate for learning necessary concepts in a short period of time. As stated earlier, the examples are very detailed, useful and well explained. With the exception of the Adobe and Macromedia tools, the book does an excellent job of covering the capabilities that are native to or provided with OS X. These capabilities include PHP, MYSQL, Apache, Xcode, Perl, UNIX and the multimedia "i-apps". If you have basic programming skill you really can produce something useful from the information provided in Mac OS X Web Development.

Of particular interest to me was the chapter on Dynamic Web Page Development (Chapter 5). Though I have a basic understanding of how dynamic pages work I have never constructed one other than by using "pre-built" components. This chapter has greatly improved my understanding of dynamic operation and encouraged me to do some experimentation in this area.

Mac Guild Grade
A (Outstanding)

Final Words
I believe that Mac OS X Web Development is worthwhile addition to the library of anyone that is even slightly serious about developing web solutions on the Mac. Though other books would be useful to get into the full depth of technologies involved, I would consider this book a versatile and convenient handbook to get one through a fair number of complex and interesting web capabilities.