JonHoyle.com Mirror of MacCompanion
http://www.maccompanion.com/archives/january2006/Books/PracticalPerForce.htm

 

Newsworthy Events



Practical Perforce

reviewed by Jonathan Hoyle

Author: Laura Wingerd

O'Reilly

https://www.oreilly.com/library/view/practical-perforce/0596101856//

Published: November 2005

$40 USD, $56 CND, £ 28.50  GBP,  €36 Euro

Pages: 358

ISBN: 0596101856

Audience: Users new to the Perforce configuration management software.

Strengths: Very thorough overview of PerForce, both client and server. Good use of design diagrams.

Weakness: Windows centric, unfriendly to Macintosh or Unix developers. Too light on system administration issues.

Perforce: https://www.perforce.com



Aside from the compiler itself, it's hard to imagine a more important part of software development than source control. Without configuration management, a software project quickly spins out of control. One of the rising stars in configuration management tools today is Perforce, which is quickly catching up to SourceSafe and CVS as the developer's choice. Whether your project runs on the Mac, Windows or Linux, Perforce can be considered for source control management.

What does it mean to check out a file? What happens when multiple people make changes to the same file at the same time? How does one label the source base? How do you merge non-text files? This is where Practical Perforce comes in. Designed more for the user than the System Administrator, both the newcomer and the expert will still find it very useful to keep a copy of this book around.

A user new to Perforce will find the early chapters most useful, as the basics of the depot, file usage and resolution, branching and labelling are covered in the first six chapters. Chapter 3's discussion on file merges from multiple users is particularly important for developers who have dealt only with source control which locks checked out files. These chapters are not detailed tutorials but rather (in the author's words) "a whirlwind technical tour". Fundamentals of Perforce concepts are covered, as it is assumed that the user has access to the original documentation for reference material.

The remaining five chapters cover more advanced topics, including best practices and recommended implementations of the items discussed in the first half of the book. The story of the fictitious Ace Engineering software company leads off Chapter 7 to illustrate typical problems that can occur during a product's life cycle. Ace Engineering is used throughout the remaining chapters to highlight specific issues, usually due to shortsightedness or errors in methodology, and serve to make the author's points very well. Although Ace may be fictitious, it truly lives within many software companies today.

The most unfortunate part about the book is its Microsoft Windows-only perspective. In only a single page of an appendix is there even a hint that Perforce runs on Mac OS X. Nor is there even a word about the Mac OS X native client, which is young but coming along nicely. There are Perforce compiler plugins for the Mac as well, some written by Perforce Software (such as the CodeWarrior plugins) while others written by the compiler writers (such as Apple's plugin for Xcode). The differences are important and worth discussing, but you would know none of this from Practical Perforce, nor would you learn of the many differences between the Mac OS X client application from the Windows version. This is particularly surprising given that the author, Laura Wingerd, is the Vice President of Product Technology at Perforce Software and should presumably know better.

Despite these criticisms, Practical Perforce is an excellent resource for any Perforce user. It combines both the practical explanations of source control uses along with a lesson on best practices with regard to configuration management. Any software project using Perforce would do well to have a copy of this book on hand.

About Us | Site Map | Privacy Policy | Contact Us | ©2006 MPN LLC.

http://www.maccompanion.com/archives/january2006/Books/PracticalPerForce.htm
http://www.maccompanion.com/macc/archives/january2006/Books/PracticalPerForce.htm