Moodle Blog

Review of Moodle 1.9 Extension Development

I found Packt’s Moodle 1.9 Extension Development by Jonathan Moore and Michael Churchward a fascinating read.  Not as a teacher – and be warned: although I moodle from a teacher’s perspective this is not a book for those teaching with Moodle; rather, I found it fascinating from a linguist’s point of view. How come? Because this book clearly and methodically sets out the code  you need to develop your own Moodle plugins – and just as we learn a foreign language to communicate with people so do we use code to communicate with machines. The sense of achievement a  student gets after tentatively speaking some French on a school trip and being understood is matched, in my mind, by the satisfaction to be had when your correctly written code actually WORKS and does what you want it to do – both are examples of getting the right language for the job. And this book enlightened and inspired me to want to develop my own PHP “language” skills to customise my Moodles.

So what’s it all about? This is a book for those interested in creating new add ins for Moodle, be that basic blocks (which we start with in Chapter 2) filters (which we learn about in Chapter 3  -sampled here) or even modules (Chapter 4)   plugins such as assigment types (Chapter 7),reports (Chapter 8 ) authentication and enrolment plugins (Chapter 9) and more. You need an understanding of PHP to follow along with the coding activities and to be familiar with MySQL and HTML/CSS. I only have minimal knowledge of these but I thought I would give the book a go anyway, and was pleasantly surprised at how easy it was to get the hang of it. After an initial chapter which explains the “Moodle Architecture”, in true Learning by Doing style, we’re given tasks in each chapter which progress in difficulty and are encouraged to try these on our own Moodle install.  One feature I really appreciated is the opportunity to download the code for each chapter’s activities from the publisher’s website. This helped me a great deal as I could then compare and contrast with my own efforts (which didn’t always work!) I got to see why they didn’t work; got to fix them  and thus avoid the frustrations I’d have had if I had been left to my own devices. In addition to the chapters mentioned above, we  examine the Moodle database to help us better understand how to build our code, look at writing secure code and  investigate pagelib and formslib. The book ends with an overview of webservices, focusing on Remote Learner Web services, understandably as the authors work for Remote Learner, although Moodle networking (MNet) is also discussed.

I cannot pretend I understood all of the book because, unlike its target reader, I started with no PHP knowledge but a willingness to experiment. It was a  bit like a beginner French student picking up an Advanced Level French text book – it’s both daunting and awesome -those bits that made sense encourage you to figure out the other parts; when communication is successful and your code speaks to your Moodle and the block/module WORKS, it’s a great incentive to persevere. I would imagine then that any reader who’s already mastered the relevant codes (languages 🙂 ) will find this book a valuable resource, empowering them to create or customise plugins that -it’s to be  hoped – will benefit the global Moodle community. I don’t know how much of this will apply to Moodle 2.0 which has altered significantly in so many ways; however, I do know that Moodle 1.9 is still a popular, stable option, and so this book should help many technologists extend Moodle’s functionality for some time yet.

Dieser Beitrag wurde am Saturday, 22. May 2010 um 21:10 Uhr veröffentlicht und wurde unter der Kategorie Moodle abgelegt. Du kannst die Kommentare zu diesen Eintrag durch den RSS-Feed verfolgen. Du hast die Möglichkeit einen Kommentar zu hinterlassen, oder einen Trackback von deinem Weblog zu senden.

«  –  »

No Comments »

No comments yet.

Leave a comment


The Blog Posts

Search the blog



WP-Design: Vlad -- Powered by WordPress -- XHTML 1.0