Archive

Posts Tagged ‘packt’

Book Review: SugarCRM Developer’s Manual

March 2, 2009 doquent Leave a comment

SugarCRM Developer's Manual

This is a review of the book – SuagrCRM Developer’s Manual by Dr. Mark Alexander Bain. Click on the cover image to see the publisher’s page for the book. The book is published by PACKT Publishing – an active supporter of open-source projects.

Disclaimers / Disclosures

  1. This review represents my independent opinion.
  2. I have not been paid for this review.
  3. The publisher has provided me with a free copy of the book for writing this review.

Approach

This review does not attempt to provide information about SugarCRM outside the context of the book. The review focuses on what the book offers, what it does well, and where it could have done better. Content outline and information about the author is present on the publisher’s page for the book.

Review

Before I start the review, I must admit that I have not worked much with SugarCRM but I do have significant development experience. As such, I might call myself a “beginner-level developer” as far as SugarCRM customization is concerned. Therefore, my review should probably be qualified for beginner-level SugarCRM developer rather than an experienced one. I make this qualification because I have seen some other reviews which are harsh on this book with regard to certain development aspects that seem to be inadequately covered.

As a first-time SugarCRM developer, my feeling after reading the book was that customizing SugarCRM is easy. It is in large part due to the excellent work by the author . The author’s style and the organization of content made it a breeze to go through most of the book. Before I could put the book away thinking that the book addressed only simple scenarios I ran into the last four chapters of the book. These chapters alone could make the book a worthy buy.

This book is a blend of gentle introduction, reference material, and real-world advice. I am always looking for real-world experience and recommendations in a book since the introduction and reference material are often available from other sources. Some of the advice in the book goes beyond SugarCRM and applies to PHP-mySQL applications in general.

Good introductions can also be valuable and this book is certainly a good choice if you are looking for one. The book also devotes 60 pages to database dictionary, which I mostly skipped. For such information, I like to directly query a database instance but I can see how these pages can provide a useful reference while reading the book.

The book has plenty of code samples and screenshots, which make it easy to follow. It is also helpful that the book uses a single business scenario and builds upon it throughout the book. It helps to see natural progression from simple to complex in some cases and interrelationships in others.

The book uses version 4.5 and the latest one is 5.2. The next version after 4.5.1 was 5.0, which became available in early 2008. A quick look at the release notes for 5.0 did not seem to indicate huge differences between 4.5 and 5.0. However, another reviewer has indicated that there are several important differences between 4.5 and 5.x. So you may need to do your homework to figure out whether this book can serve your needs.

The book starts with some quick and easy customizations of look and feel as a warm-up. Then it shows how to add custom tabs, dashlets, and custom fields. Next it describes the architecture of the application followed by the details of the database structure. I love the material that comes after this point. Some good advice about development, testing, and upgrades. The knowledge shared here is sometimes applicable to other PHP-mySQL applications as well. This is followed by the advanced topics of writing custom modules and workflows. The book concludes with tips on tuning SugarCRM and writing reports. I feel that it is the last 4 chapters that will add the most value in any real-world customization of SugarCRM.

Conclusion

This is an excellent handbook for beginner-level developers customizing SugarCRM version 4.5. For other situations, it may or may not be what you need so you need to do some analysis before selecting this book. Also note that this is not a book about making the best use of SugarCRM. That is not a shortcoming of the book because the book clearly identifies its audience and purpose – customization for developers. If you are looking for a book about using SugarCRM then maybe you should look at Implementing SugarCRM.

Book Review: Alfresco Developer Guide

January 29, 2009 doquent 1 comment

Alfresco Developer Guide

This is a review of the book – Alfresco Developer Guide by Jeff Potts. Click on the cover image to see the publisher page for the book. The book is published by PACKT Publishing – an active supporter of open-source projects.

Disclaimers / Disclosures

  1. This review represents my independent opinion.
  2. I have not been paid for this review.
  3. The publisher has provided me with a free copy of the book for writing this review.

Approach

This review does not attempt to provide information about the Alfresco platform outside the context of the book. The review focuses on what the book offers, what it does well, and where it could have done better. Content outline and information about the author is present on the publisher’s page for the book.

Review

While Alfresco by Munwar Shariff got you started with Alfresco, Alfresco Developer Guide by Jeff Potts gets you going. The first book provides good overview of the breadth of features and Alfresco Developer Guide dives deep into customization for Alfresco-based solutions. Content management is a general requirement but its applications vary significantly. Without accommodating the specific needs of the business, a content management system (CMS) would usually be little more than a glorified file system.

As I started reading the book, it quickly became evident that the author had significant hands-on experience with customizing Alfresco. The book has detailed examples with code and screenshots. The step-by-step directions with practical advice and recommendations make it easy to follow. The book uses Alfresco 2.2 Enterprise and 3.0 Labs versions. In one sentence, I would characterize this book as an illustrated handbook for customizing Alfresco.

The book starts with a description of the Alfresco Platform. This includes overview of content management, the architecture of Alfresco-based solutions, the example used throughout the book, and various kinds of customizations that can be done with Alfresco. It is followed by directions for setting up an Alfresco development environment using Eclipse. Detailed discussion of customization starts with creating custom models – which includes types, associations, and aspects. The UI changes and programmatic access to go with custom content model are also discussed. Automated processing of content with actions, behaviors, transformers, and extractors is discussed next. Web client customization discusses how to adapt the UI for specific needs. The book also discusses implementation of RESTful API using Web Scripts. Workflows are an important feature of content management systems. The book discusses implementation of advanced workflows using jBPM. jBPM enables you to implement complex workflows within Alfresco platform. Web Content management is a popular and common application of content management systems. The book discusses web content management on Alfresco using Alfresco WCM. The book concludes with a discussion on security, including incorporating Alfresco in a Single-Sign-On solution. The appendix includes API reference and examples.

Given my experience with EMC Documentum, I couldn’t help but compare the details with how I do things with Documentum. This book provided the depth to make such a comparison possible. One would normally use this book as a reference to jump to the task at hand and follow a step-by-step example. If you need to understand the breadth, you can skip over example details and read it in a flow. However, in my opinion, the best value provided by this book is in terms of best practices and practical advice which is hard to find in product documentation.

The author does not skimp on sharing practical advice. A fundamental advice is around separation of solution files from Alfresco files. The author also discusses various options for packaging and deployment of customizations. The troubleshooting tools and practices discussed would benefit any Alfresco developer. Modeling best practices are also very important since the custom content model is usually the foundation of a custom solution on Alfresco. When creating a solution for a large organization, advice about handling large directories for user/group synchronization would be handy. Other tips such as dealing with cross-domain scripting limitation and implementing Single-Sign-On also add value.

I think that it is a great book for people who are already working with Alfresco or another content management system. Readers new to the content management space may need a gentler introduction to the concepts and to Alfresco before they can derive maximum value out of this book.

Conclusion

Even if you had the expertise to write this book, you might want to keep a copy handy if you frequently implement solutions using Alfresco. If you are new to Alfresco this book is even more valuable. If you are new to content management in general then you may want to ramp up with some other resources before making the best use of this book.

Book Review: Moodle by William H. Rice IV

October 26, 2007 doquent Leave a comment
Moodle Book This is a review of the book – Moodle: E-Learning Course Development by William H. Rice IV. Click on the cover image to see the publisher page for the book. The book is published by PACKT Publishing – an active supporter of open-source projects.

Disclaimers / Disclosures

  1. This review represents my independent opinion.
  2. No one has solicited this review. Specifically, I have not been paid by the author or Moodle for this review.
  3. The publisher has provided me with a free copy of the book for writing this review.

Approach

This review does not attempt to provide information about Moodle outside the context of the book. The review focuses on what the book offers, what it does well, and where it could have done better. Content outline and information about the author is present on the publisher’s page for the book.

Review

Earlier this year, I was searching for a free tool for creating and publishing quizzes or tests online. At that time I tried several tools and finally settled on Question Tools for my simple need (Question Tools is a full-featured suite but I only needed to use the core functionality). Later when I encountered Moodle I was very impressed with what it had to offer. A little bit later I learned about this book and I couldn’t wait to get my hands on it. It is almost becoming a habit now – if I read a book I want to share a review with others.

The book uses version 1.4.4 (the current stable release is 1.8.3) but most of the information in the book is still relevant. Certainly the wisdom shared in the book about using the features is not tied to a particular version!

I would describe this book in one sentence as a handy guide filled with illustrations and practical advice that reflects the author’s experience both with teaching/learning and with writing (he has also authored couple of other books). It is pertinent to mention what this book is not – it is not a regurgitation of the online manual and documentation so you would be ill-advised to ignore the product documentation when implementing Moodle.

The stated goal of the book is to help the reader enhance teaching using Moodle as a tool. It also aims to help the reader make the most of Moodle features for creating an engaging online learning experience. The book emphasizes creating “learning experiences” rather than “courses”. The chapters in the book are stitched together using a common thread of sample content about foraging and wilderness skills (obvious personal interests of the author).

The book starts with an outline for planning and implementing a Moodle solution. This outline provides a good perspective since it is easy to get lost in the details of the product features. Then he shares the Moodle experience from an end user’s perspective using a sample site. Next follows advice on installation and configuration options. Once the site is ready categories and courses can be created. The meat of the book is about creating course material, which is explained over three chapters – Static Course Material, Interactive Course Material, and Social Course Material. The social features are really the strength of Moodle for creating a unique learning experience; these features include chat, forum, glossary, wiki, and workshop. The last three chapters offer valuable advice that goes well beyond the description of feature capabilities. Welcoming You Students provides advice on options for creating first impressions and customizing the look and feel depending on your needs and the purpose of your site. Features for Teachers covers the features that are most used by teachers and are most relevant to them. The final chapter addresses managing modules for additional features and discusses some of the key administration tasks. The book concludes with a handy checklist for planning and implementing a Moodle site.

So what do I think of this book? In my opinion, this is a great book for various reasons – it offers valuable advice about implementing Moodle which goes well beyond describing what the product can do. It has a friendly tone and is richly illustrated. When 236 pages contain all those illustrations, it won’t be a burden to run through the book. One way to make good use of the book is to breeze through it, focusing on the implementation advice. Then come back and use it as a reference when you are ready to get your hands dirty.

In a book review, I always try to include suggestions that could improve the book but I struggled in this case and I will leave it at that.

Conclusion

This is a great book packed with practical advice about creating a learning experience with Moodle. Use the book early to plan out your site implementation. Use the book in conjunction with the product documentation when setting up your Moodle site. Finally, use this book to make suitable configuration choices for your needs since, with Moodle, choices you have aplenty!

Categories: Moodle Tags: , , , ,