Book Review: SugarCRM Developer’s Manual

 in

The following is a review of the book SugarCRM Developer’s Manual: Customize and extend SugarCRM by Dr. Mark Alexander Bain. The book's publisher is Packt Publishing.

Editor's note: Originally this book review was intended to be a joint effort between myself and Chris Harrick, Senior Director of Product Marketing at SugarCRM. I sent Chris a few questions to get his take on the book from the perspective of a Sugar expert. What I got in return was the following, comprehensive review. So except for a small excerpt at the end, this review was generously provided by Chris Harrick, to whom we extend our thanks. -James Gray

The Review
With a CRM system that has grown to be as diverse and feature-rich as SugarCRM, creating an encompassing developer’s manual is no small task. The open-source nature of SugarCRM makes it a highly flexible application set, and the huge community around the product makes tracking all that is possible with Sugar, well, nearly impossible. However, Dr. Mark Alexander Bain comes pretty close in his SugarCRM Developer’s Manual, from Packt Publishing.

Written with PHP developers of all skill sets in mind, the book’s coverage area ranges quite widely in scope. The book quickly takes off from simple field-name changes in the application, all the way to customizing dashlets (areas of the interface with pockets of CRM data) and creating workflows from scratch. The heart of the book deals with the database schematics of SugarCRM. Bain does a good job of charting the relationships between each table in the database, as well as provides strong details on the individual tables themselves.

A good portion of the book is also dedicated to testing and optimizing the performance of the product. While less is included about customization that alters the way users approach CRM, there are some helpful hints designed to optimize a user's experience with the application. Some of the tuning tips might be helpful to PHP developers in general looking to speed up other applications built on PHP, not just Sugar.

The book spends some time dealing with third party modules, and bringing them into the application. The book seems to glaze over the process of adding third party modules via SugarForge.org or SugarExchange.com, but this is understandable. There are literally hundreds of extensions and third-party applications to be found on these Web communities, and an exhaustive explanation and guide could never be amassed for such a large inventory. The book does, however, present a nice introduction to creating custom modules from Sugar’s core business objects.

The main drawback of the book is that, given SugarCRM’s accelerated development model, some of the information is a little out-of-date. As Sugar is presently releasing version 5.0 of its product, there is a lot more customization and other features not covered. For example, while the book gives great visual examples of customizing fields and workflows, the new Module Builder tool in Sugar 5.0 allows a lot of this to be done without code-level changes. And from a security perspective, the new field-level ACLs in 5.0 open up a lot of opportunity for roles-based customizations not covered in Bain’s text.

But as SugarCRM evolves as a product and application platform, it is including a lot of Web 2.0 and Visual Studio environments in its construction. So, while Bain’s book leaves out a lot of these new features (through no fault of its own – simply a timing issue here), a lot of what is new from a customization standpoint is aimed at business users and not necessarily developers. SugarCRM is democratizing the concept of customization, so a more business-level manual for Sugar’s Module Builder might be in order soon as well.

All told, this is a fine start for someone new to the application and with a decent background in PHP. The book uses many great screen shots to illustrate its points and takes the reader through many core customization tasks in a close, step-by-step manner. And for developers, the book is valuable for its data dictionaries and database table schematics alone. It is definitely a must-read for anyone looking to learn how a highly customizable CRM application is architected.

About the author
Dr. Mark Alexander Bain began working with CRMs back in the 1990s when he started using Clarify CRM while at the Vodafone Cascade Project in the UK. He says that his team turned it into a "radio base station planning application, complete with a workflow engine for passing jobs between the different departments involved in the planning building and implementation of a radio network." Since then he has been a lecturer at University of Central Lancashire (also in the UK) and now is a freelance editor covering Linux and Open Source for various publications, including Linux Journal.

Book details
SugarCRM Developer's Manual: Customize and extend SugarCRM
by Dr. Mark Alexander Bain
Copyright 2007, Packt Publishing
First published, June 2007
ISBN 978-1-847192-06-6

You can learn more at Packt Publishing's Web site: http://www.packtpub.com

______________________

James Gray is Products Editor for Linux Journal

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

What's the deal with Sugar?

Anonymous's picture

I don’t think sugarCRM is all that great in the first place. Trying to get through to my rep and had to deal with 3 reps so far and tired of it. Seems like they have huge turnover rate according to Janelle Martin and every rep I have worked with at Sugar has been a resident for less than a year or has terminated themselves. Seems very unstable and scary thought to even imagine them going public with support sharing my experience as a customer. Anyone have a better platform? I don't care if it's online but would like to bypass sugar as my boss is on my ass about backup problems and the amount we paid for support that is not going anywhere.

What's the deal with Sugar?

The Sugar Refinery's picture

Might I suggest, if you want professional SugarCRM hosting, customization or integration services, try one of the companies dedicated to providing these services such as the sugar refinery.

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState