One of the often asked questions I get in regards to Moodle these days isn’t about setup and support. The question, which arose as recently as last week, always concerns itself with, “Now that I have access to a Moodle, what kind of add-ons should I install to create a more engaging online environment?

In a 601 page tome bursting with suggestions and hard-won wisdom that comes from experimentation, Gavin Henrick (@ghenrick) and Michael de Raadt explore the “wide variety of plugin types,” including the simple and complex. Add-ons, as the authors highlight, stand out by solving problems and enhancing functionality. Their new book features several chapters:

  1. Moodle Add-ons – types and reasons why these are created.
  2. Installing a Desktop Moodle to Test Add-ons
  3. Evaluation of Add-ons
  4. Resources and activities
  5. Navigation
  6. Course tracking
  7. Interface
  8. Course Administration
  9. Site Administration
  10. Course Formats
  11. Virtual Conferencing
In this blog entry, I’ll share some of my favorite take-aways from Gavin and Michael’s book, which they were kind enough to provide in non-DRM iPad ebook format. If you’re wondering what my recommendation is, well, let me get to the point–buy this book if you’re wondering how to enhance your Moodle.
My Favorite Take-Away
My favorite take-away of the book was the CSV Enrolment add-on, which answers a question a colleague asked me just last week. It “allows teachers to enrol users into a course by allowing a teacher to upload an csv file with only email addresses.” Unbelievable how helpful this book has been.
My Notes
  1. Discussion of Moodle Plugins Directory and the 17 high level types at http://moodle.org/plugins
  2. Moodle Twitter account for plugins – @moodleplugins
  3. Great discussion of how to use XAMPP to setup a desktop Moodle installation to test Add-ons. 
  4. I love the quick overview of the structure of the Moodle installation, which includes the Moodle code, the Moodle data directory and the database used by Moodle.
  5. I wish there had been more in-depth discussion of Github.
  6. A detailed discussion of add-ons and what goes into developing them. This was more than I wanted to know but it is for that reason that this chapter is a must-read for add-on developers.
  7. Some of the featured add-ons–and the authors detail how to install each of these, discuss pros and cons of each–include the following:
    1. Book – The now classic and standard Book add-on is a top favorite.
    2. Skydrive Repository – Add MS Skydrive as a repository that can be accessed by Moodle.
    3. Record Audio Repository – allows one to record audio and “add it almost anywhere in a Moodle course.”
    4. PoodLL – Language Learning add-on that add audio/video recording, whiteboard, drawing, and more.
    5. Urkund – anti-plagiarism add-on.
    6. Assignment PDF – annotate assignment submissions without leaving the browser.
    7. Course Menu Block
    8. Course Contents Block
    9. Jump to Navigation
    10. User Information Block – stats and info on users
    11. Checklist – displays progress related to activities and grade export
    12. Progress Bar
    13. Certificate (one of my favorite add-ons) – create certificates.
    14. Simple Clock Block
    15. User Contact Block – enables student to email a teacher via a contact form without revealing teacher’s email.
    16. Unanswered Discussions – enables students to see their own unanswered discussions.
    17. Group Choice – enables students to join a group in a course.
    18. Group Self-Selection – enables students to join a group without teacher intervention.
    19. AJAX Marking Block – used to mark submissions across a number of courses.
    20. CSV Enrollment – makes it possible for teachers to enroll students via CSV. Wow, this is a great one, especially for a colleague of mine who is facing this issue with a teacher who needs to do this.
    21. Unique Login – prevents students from having multiple login instances–via different browsers–to a Moodle so as to prevent cheating.
    22. and, many more!
  8. One of the interesting inclusions was that of Course Formats add-on. I wasn’t familiar with the Flexpage format. Per the book, it “allows teachers to create a flexible set of pages and sub-pages, where blocks and activities can be placed in any location on the page, instead of being restricted to the right, left, or centre columns.” Cool!
  9. Virtual Classroom add-ons – this is a comprehensive list of solutions and was fun to read since I had no clue about some of these existing!
Reflections
The Moodle Add-ons book was an incredibly easy read, well-organized and structured to facilitate a straightforward walk through a wide variety of ways to enhance Moodle. Not only did I see great add-ons that I’ve always used (in bold above), but also a few that I had not seen (in yellow highlight) and were explained well. I have to admit that Chapter 2 had me opening a tab to do a fresh install of Moodle (until I remembered I was on Linux).
There is a lot for everyone–Moodle course facilitators, site admins, developers–to enjoy in this well put-together collection of the best Moodle add-ons available. 
Recommendation
Although you could find some of this information by perusing the Moodle Add-ons web site, this book will make appreciating the power of each add-on–and how to take advantage of it–a lot easier. It is well worth the price tag of approximately $35.00.

Check out Miguel’s Workshop Materials online at http://mglearns.wikispaces.com


Everything posted on Miguel Guhlin’s blogs/wikis are his personal opinion and do not necessarily represent the views of his employer(s) or its clients. Read Full Disclosure

var _gaq = _gaq || []; _gaq.push([‘_setAccount’, ‘UA-3445626-5’]); _gaq.push([‘_setDomainName’, ‘mguhlin.org’]); _gaq.push([‘_trackPageview’]); (function() { var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = true; ga.src = (‘https:’ == document.location.protocol ? ‘https://ssl’ : ‘http://www’) + ‘.google-analytics.com/ga.js’; var s = document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(ga, s); })();

Advertisements