Moodle 1.9 Extension Development Review by @bseanvt

2
1335

The following is a book review by programmer, Sean Behan (www.seanbehan.com) of the book Moodle 1.9 Extension Development, by Jonathan Moore and Michael Churchward

I highly recommend this book to anyone even thinking about developing in Moodle (4 out of 5 stars).

It is written in a tutorial style with plenty of hands on, coding samples that will aid in the development of your own features.

The book starts with a walk through of the installation process, system requirements and overview
of the source code. For newbies to Moodle, this is important as it covers conventions, main libraries, directory and database structure.

Unfortunately, it does skip over the style guide and how to set up your development environment with Eclipse.
This information is available in the Moodle docs at http://docs.moodle.org/en/Eclipse and http://docs.moodle.org/en/Development:Coding_style

The book moves at a fast pace. Complex parts of the platform are explored in depth, including building modules, activities, assignment types,
extending course formats, theming, using and adding to the capabilities system, grading, reporting and building sidebar blocks.

For those who are looking for more information on integrating Moodle with other systems, the book includes plenty of information on implementing plug-ins for more advanced  web services, authorization, enrollment and networking functionality. Best practices for writing secure code included!

This book is definitely not for beginners to programming. It assumes a working knowledge of Object Oriented Programming in PHP, some knowledge of Design Patterns, SQL Syntax, HTML/CSS, and Web Services. But this is also its strength.

Moodle performance tuning and optimization is not covered in the book. http://docs.moodle.org/en/Performance Perhaps, outside the scope of a book on extending the platform. Nonetheless, Moodle has a reputation for being a dog “out of the box”. Reading how these authors
have properly tuned their installations in the wild, would have been a big plus.

Moodle is nearly 1 million lines of source code! (source:http://www.ohloh.net/p/moodle) Plowing through this on your own is not an easy task, even for experienced developers. Having the knowledge of two experienced Moodle developers, distilled into a single book makes it worth every penny.

Coming soon: An interview with the authors of Moodle 1.9 Extension Development

Related: