Sunday, April 12, 2009

Book review: Drupal for Education and E-Learning

This is the third Drupal book I have reviewed [1] [2]. I've some experience of creating computer aided learning (CAL) programs back in the 1980s on the BBC microcomputer which were used in nurse education within the UK:
  • CAPA - Computer Aided Patient Assessment
  • The Nursing Process
  • Blood Groups
  • Shades of Grey
So I wondered how this review would run? In particular I pondered on the extent that Drupal provides not only educational resources, but data structures and means that lend themselves to creating interactive presentations and exercises. The presentations and exercises bit is important because back in the 80s (and earlier) many CAL efforts were nothing more than 'page turners'. Yes, back then I wanted to present text, but I also want to create exercises to make students reflect and think. Multimedia and the rise of i-Media which is both internet media and interactive media has changed all this. I am aware of Moodle, Blackboard plus others.... and need to understand where Drupal fits in to this educational armoury. There do seem to be moves to conjoin Drupal and Moodle in some way, but these seem stalled if not currently works in progress. If the first two books helped me learn the nuts and bolts of Drupal, then what would Bill Fitzgerald's book teach me about the nuts and bolts of Drupal in education and e-learning?

Chapter 1-3 are provide an easy to follow introduction to Drupal, installation, with more than sixty pages devoted to getting started. As with other Packt titles there are plenty of screenshots to support the text. In my copy one on page 30 is a bit dark as are a few others, but it still helps to get the gist across of what the user should be seeing. You can become blasé about introductions (and instruction manuals!), but Bill Fitzgerald does a great job. It is obvious that he has an instructor's flair for communicating, revealing details and perspectives with aplomb. One point I appreciated on page 52 'create new revision' and the default option which:

"... allows you to create wiki-like functionality; each time a piece of content is edited and saved, it creates a revision, and users with sufficient priviledges can view and revert older revisions."

There is an explanation on downloading, decompressing, uploading and installing themes and modules. There are (at least) two pivotal modules 'in' Drupal - CCK the Content Construction Kit and Views. Fitzgerald gives these the attention they deserve, introducing CCK on p. 54 (and to meet his plans the Links module). Bill runs through creating roles, and content types in the form of bookmark (chapter 3), a teacher blog and assignment (chapter 4). These are explained in four stages through pages 48-64:
  1. create the content type
  2. add fields
  3. assign taxonomy
  4. assign permissions
There is a non-trivial element to creating usable sites with Drupal and that is inclusion of a text editor. Bill uses the FCKeditor, the merits of various text editing solutions is much debated in Drupal circles. Pages 65 - 89 covers the creation of views:
  1. add a view
  2. set the defaults
  3. add a display type
The Views module is described with instructions on view creation over pages 65-89. I had heard how important these modules are to the Drupal community (and the users!) and it's obvious reading Bill's account just why these modules are a Drupaller's best friend. That is - once mastered. If not tamed completely the screenshots and notes here certainly make Views less of a challenge. As I write up the first half of this review and peek ahead I wonder if Bill can do the same for Organic Groups (OG)? Listening to a session at Drupalcon Szeged last summer OG seems a head full at least initially, or was that Panels?

The Views admin screenshot p.66 provides a helpful overview. The 'set the defaults' screenshot reveals the potential power of Views and its complexity for novices on first encounter. Bill Fitzgerald's readers will expect some labour so this is a reward rather than a problem. As educators know it is always a problem showing the mechanics of a computer-based process in a book, but this is very clear.

This is were my expectations of the book were not so much shattered as a realisation that I need to catch up with educational technology and the available forms of technical and social media. Students are tech-savvy, many come to courses prepared being users of mobile devices, social media and office applications. The book does focus on Drupal's ability to deliver the staple ingredients of interaction today:
  • student blogs
  • teacher blogs
  • comments
  • assignments with due dates
  • uploading various forms of media
Some modules become so ubiquitous to the Drupal community with their established functionality, reliability, stability and user base that if not already they can be elevated to 'core' in future releases; that is, they are included in the initial Drupal download. This is where the power and flexibility of Drupal comes in with the development and integration of additional modules and this can include educational and e-learning components. With this book I did get an early helpful sense of signposting, direction regards things I really need to address above and beyond fluency in Drupal.

On page 115 the need for sample content is raised. Content! This is what it is all about. On page 116 the create assignment figure refers to high level reflection - which made me reconsider content types and what you can achieve by keeping things simple. There is a tip on p. 118 about using node: title field for troubleshooting.

At this point in the book once again I wondered about 'instructional technology', Drupal, Moodle and Computer Aided Learning... I've created (but not deployed) a 12 item multiple choice test using HotPotatoes. In Drupal this could be a module so there is scope, the book is about Drupal's existing capacity for education and e-learning which can be extended through the core and additional modules. Specific user communities adopting Drupal have produced their own 'distribution'. Examples include the Drupal Education Group and Science Collaboration Framework.

Cloning Views is a good way to learn CCK too p.123. Naming conventions in Drupal can be confusing as with the "Content: datetime: Due date (field_due_date)" example on page 128.

Chapter 5 on Enrolling Students advises you to create specific roles rather than use the authenticated user. This "provides additional level of security and flexibility" (p. 134) a key governance point, even though many academic applications may be operating within an educational establishment. In health we are increasingly 'involving patients, carers and the public' so in education parents can be invited to get involved, hence the flexibility of additional roles with the bonus of security. If admin seems a chore to you then this short chapter reveals the efficiency of Drupal which helps you to concentrate on the the essentials of a user centered site, content and experience.

On experience Fitzgerald cuations about accessibility that if students cannot publish quickly a site could be under used. The point about educational sites frequently being on-campus clearly helps with security concerns, for example e-mail confirmation of a new account may not be necessary p.138. There is reference to LDAP Lightweight Directory Access Protocol and other modules to assist with roles (p. 144); so it is well worth really thinking through your objectives and in this way I must doff my hat to Bill and other Drupal authors I have read.

In chapter 6 we clone the Teacher Blog to create a Student Blog. Views is used cloning the backlinks view as a means to see 'who is discussing what' p.149. This view isn't just repetition it extends the readers understanding of that encountered in chapters 3 and 4. There are some key points regards the subsequent updating of views as additional content types are added; and around differences in page display behaviour and that of blocks. On page 153 I struggled to find the checkbox for the illustration.

In chapter 7 Bookmarks Bill opts to use CCK to add bookmarks to the site. There are other ways and means - through the Bookmarks and Weblinks modules. My previous thoughts about Drupal in education and e-learning is illustrated by the example of Bookmarks to extend classroom activities. Again - keep things simple! A lesson here for me - which I've realised for quite some time is that there is little educational value in a collection of links for links sake as per the four links resources at Hodges' model. Links (bookmarks) are a tool and it is how they are used - the context of use that is important p.164. It is interesting how an educational interaction can quickly be established between an assigment and links. Here there is no need for complex programming or elaborated data structures.

Perhaps a little more could have been made of 'Learning Goals' p.166 even a separate chapter, but looking at the mounting page count and scope of Drupal this is for another book and the future. The Drupal community undoubtedly see Drupal as a key player so watch this space. There is a very full agenda that invites exploration and Drupal development.

Chapter 8 brings us to those content elements at the center of learners and student day-to-day learning and lives - podcasts and images p.169. On podcast production place the emphasis on content, don't get bogged down with the technical, hardware and software p.183. Accessibility and learning disability is acknowledged and project based learning. On imaging, Bill explains the relationship between Imagefield, Image API, Imagecache and Thickbox or Lightbox 2 is a gift. Detail is paid to to the Image module which is usually sufficient to meet most needs p.186. It is a subtle change but the differences between Image Module settings and admin/setting/image and Creating Gallaries p.189 admin/content/image is well worth noting.

Video in chapter 9 (pp. 195-213) is an area I know little about. This chapter made me want to learn more, and consider the possible student projects p.211 especially video bookends. Bill refers us to the work of Dan Meyer - a maths teacher - and the creation of video for specific educational goals. Drupal can also act asa hosting and processing platform for video p.212.

Chapter 10 Forums and Blogs is real bread and butter stuff. There is an informative explanation about forums and containers, and in structuring a forum the need to ensure it looks busy as soon as possible p.216. Chapter 11 is pivotal for community building - 'social networks and extending the user profile'. Firstly using the Core Profile module. There is something of a module managerie here as the Content Profile Module includes Content Profile User Registration module.

Unless I've missed a trick the illustration referred to on page 244 is three pages out being on 235 not page 238. The Content Profile User User Registration module adds the USer Registration fieldset. Once I found the correct screenshot to compare all was light and bright. Other modules for social networking and user profile are listed, with a customary closing summary for a chapter central to community building. As Bill states you want users to have a personal investment in the site p.245.

Chapter 12 brings us to 'Supporting Multiple Classes' with resort to Organic Groups and Organic Groups Vocabulary modules p.247. Attention is drawn to OG working closely with other modules particularly Panels and Notifications. Five pages in here and the utility of OG to the education and other communities is wholly apparent. It really is powerful. I could have done with reading this chapter indeed this book before attending Drupalcon. It would have served me better (rather obviously given my status) than reading Pro Drupal! Given the plethora of modules in Drupal there is a tip about duplicate functionality between OG and the core Tracker module.

For newbies to Drupal the heading "Adjusting your site to work with OG" could be read as "Adjusting your mindset to work with OG" The key as ever is content:

1. Content types that can be used to create group;
2. Content types that can be posted into groups;
3. Content types that are never posted into groups.

OG therefore prompts Bill to create the content types a Class and a Club. It is interesting that the OG fieldset refers to 'Wiki group post' with Wikis often posited as an educational tool. 'Instructor' and 'Teacher' refer to one role which threw me at first on page 256. Having content types and groups of course requires the creation of custom menus with some good insights on differentiation of navigation from other menus p.256-7. Strangely there is no mention of 'Wiki' in the otherwise comprehensive index. I believe the screenshot referred to on page 262 is that on page 260 and 261.

Views is so ubiquitous in Drupal that it is revisited in chapter 13, tracking student responses to assignments. Another module 'Coherent Access' may have a role to play in your site as Bill applies it to furnish private communication with students p.291. This mix of public and private communications bears due deliberation and is raised elsewhere in the book. Cross functionality recurs again with OG and the Coherent Access module, with work ongoing to resolve the issue in Drupal 7 (p. 293).

Beginning on page 297 chapter 14 on Themeing and User Interface Design was never going to be long. Beginners in turn are often flumoxed with primary and secondary menus in Drupal. Here Bill stresses the two principles for site design and the menus out of the box. Other modules e.g. Menu Block are discussed as a means of extending the primary menu options. Here you will learn about creating custom menus and the close relationship between menus and blocks - with the critical workflow of leaving a new menu empty initially - a key take home lesson. The explanation here on populating the primary links are a gift in their simplicity and yet their significance to a learner.

Chapter 15 covers cron, backup and maintenance with a recommended list of initial user names and passwords to document and store safely and separately. You think Bill might be tired on the final leg, but the explanation of backing up the codebase, contributed modules, files and use of the DB Maintenance module and database optimization is quite thorough. Awareness of the 'admin' side surely helps early on, and for Bill this includes knowing the status and efficiency of your database through the use of log files. Here you run full circle revisiting the structure of a Drupal site and the parts you need to backup, using PHPMyAdmin or the command line. Both PC, Mac and Linux variations are discussed p.342. Backup of a server site leads Fitzgerald to the creation and use of a test site for experiments with new modules and update procedures. No backup is complete without demonstrating the ability to recover your site. This chapter closes with short and detailed version of how to upgrade Drupal p.361.

The final chapter concerns a resource that is far from 'last' - How to work effectively in the Drupal community. Drupal.org is featured, the handbooks, becoming familiar with the issue queue, support forums and mailing lists. Drupal comes home so to speak with the groups, since there may be one near you.

I have really enjoyed this book and the sense of Drupal being established in education and keen to strengthen and extend its roots. Unfortunately, my reading has been rather broken, but this is a book I hope to use over the next few months. Those new to Drupal and not necessarily with an education or e-learning application in mind will also find much here to speed and ease their learning. As to my own learning the 80's was one thing the teenies will be another...

Additional links:

Drupal in Education Group

Drupal.org search 'education'

LAMP University

Open Academic


Acknowledgement: Thanks to Packt Publishing for the book copy.