A Moodle Diary

Tuesday, October 04, 2005

Moving Moodle: Moving to an External Host

We eventually decided that we would use an external web host for our Moodle system. The monthly fee was a lot easier to raise that a the couple of grand we would need to kit ourselves out with a new server in-house. (Plus it was a lot less hassle for the IT guys).

Moving our Moodle system from the old Dell system in my office onto the external host was a lot simpler than cloning it onto the Dell system. I simply had to make a zip file of the Moodle software directory, a zip file of the Moodle data directory and dump the SQL database to a file on the Dell. I uploaded the three files to the new host (which is Linux based), unzipped the to zips and used the host's SSH access to restore the sql dump from the command line, which was detailed in their FAQs. All that was left to do was edit admin/config.php in the Moodle software folder to set the new hostname and database info.

Wednesday, July 13, 2005

Moving Moodle: Cloning a Unix System

A while back I got my hands on an old Dell Poweredge 2200 server, that the IT department were getting rid of. It isn't the fastest, or most powerful machine around (and it didn't have a hard drive) but I figured It would probably be a better home for my plodding Moodle demo system that was still running on the old FreeBSD PII desktop machine.

I got a new 18gb, 10,000rpm SCSI HD for the 2200 off eBay and figured I would just clone the HD in the desktop machine onto the new drive. Unfotunately the desktop only had an IDE/ATA drive and an IDE/ATA bus and no SCSI. The 2200 only had SCSI, no ATA. Fortunately the 2200 had a SCSI PCI card that gave an extra internal SCSI bus, as well as an external one. I took this card out the 2200 and stuck it in the desktop, and connected the new HD to it with the ribbon cable out the 2200.

All I had to do now was clone the IDE drive to the SCSI drive, only problem was I didn't have the first idea how to do this :-/ After a lot of googling (these pages were helpful: Cloning a Computer With Free Software, Using DD to clone a HD) and a lot of rummaging around with apropos and man pages on the FreeBSD system, I figured out that using dd was probably the way to go.

dd will carry out a block by block copy of a file to another, and seems to be used a lot for disc level stuff. In Unix systems, all hardware devices appear as files in the file system, eg the SCSI disk driver is the file /dev/da, the 1st SCSI disk is represented by the file /dev/da0, likewise /dev/ad, /dev/ad0 for ATA. This means that doing a dd copy from ad0 to da0 would copy exactly what's on the IDE drive to the SCSI drive, file systems, partition table and all. The command goes:

     dd if=/dev/ad0 of=/dev/ad0


'if' is the input file, 'of' the output file. Unfortunately dd doesn't give any kind of progress indicator, so when I ran the command, I just had to wait for about 90 mins with my fingers crossed :-/

After the dd copy was complete, I tried booting from the SCSI drive and everything seemed OK The system would boot to an sh shell, but not be able to mount partitions listed in fstab, as the entries in this file were hard-coded to point to the ATA drive. Sorting this was simply a case of changing any ad's to da's in the fstab file.

I stuck the SCSI drive into the 2200 and it booted there OK. This system was a good bit faster agian, but the fans in that machine are *really* loud, not an ideal candidate for keeping under your desk ;-)

Staff and Student Adoption

We are currently preparing for the next stage of our Moodle pilot: putting the system into full production for the next intake of 1st year BA Technical and Production Arts students. The BA TPA course is a highly practical course, training students in various technical theatre and theatre design disciplines. In the first term of the first year students undertake classroom, lecture and workshop based sessions in all disciplines, to provide a general grounding before beginning their practical production work. The next stage of our Moodle pilot is to create Moodle Courses for each of these first term subjects to provide online resources to support the students learning in these areas.

Since this pilot is being used with a fresh intake of students, we will not be trying to teach new methods to existing students, which we hope will make the student adoption of the pilot a good deal easier. Although our existing and previous students have generally shown an aptitude for IT and computer work, possibly due to the technical nature of the subjects taught.

Initially, we had more concerns about staff adoption, as some of the disciplines we teach do not have a strong reliance on computer skills, and we were worried that some staff might be daunted by a VLE. However, I recently passed a quick questionnaire around the department staff (around 20 tutors) to gauge their familiarity and comfort with computers and it seems this may not be a great concern at all.

The questionnaire included a series of 10 point Likert scales to measure each tutors level of comfort with using computers in general, and their level of familiarity with specific computer uses: Word Processing; Email and Web Browsing; Spreadsheets; Databases; CAD & Computer Graphics; Web Programming (HTML, PHP, etc); and Application Programming (C/C++, Java, etc).

The average response to the general level of comfort with computers scale was 7.8, with no tutor giving a response below 5 and over a third giving a response of 10. 82% of tutors gave a response of 7 or greater to the familiarity with email and Web Browsing scale (average response was 8.6). 18% of tutors gave a response of 7 or greater to their familiarity with Web Programming (HTML, PHP) scale, the average response was 3.

Given this level of familiarity with computing and IT amongst the department staff, I hope that using a VLE should not cause any great difficulty to anyone. At the beginning of term I would like to give similar questionnaire to the incoming 1st year students before they begin using the VLE, hopefully to gain an idea of the minimum level of IT skill required to make use of such a system.

The staff questionnaire also took measure of the amount of time that tutors currently spend on computer work, which I would like to repeat at the end of this next stage of the Moodle pilot, to try to gauge the impact that working with a VLE will have on tutor's workloads. Currently tutors estimate an average of 38% of the working week over the summer period is spent of computer work.

Friday, July 08, 2005

Identifying types of VLE content

I now had a usable Moodle installation to play with, so I created my first course. Our first planned use for a Virtual Learning System was as a resource to accompany the first block of classroom and workshop teaching received by the next incoming first year students, so my first Moodle course page was one to accompany the course I teach the first year during this time.

I identified 3 types of content for this type of Moodle course page that I felt were worthwhile resources for the students: Materials and resources used in the classroom; revision aids; and guidance of further learning.

The first type of content is reasonably self explanatory. If I used images and diagrams presented with powerpoint in a lecture, I felt it would be worthwhile including them in the course page so students could have a second look, spend more time studying them and print them off and annotate them.

The second type of content, revision aids, I felt would be useful as a further resource for practical workshops. By adding photographs, diagrams or descriptions of the equipment and processes taught in the classes to the course page, students can refresh their memory of the equipment/processes and have the resources to make the kind on revision notes that they would take in a lecture, but do not have time to take in a workshop session. I found that the Moodle quizzes provided a good platform for presenting this kind of content.

Finally I found that the Moodle course page was an ideal platform to give students guidance on how to further their study of a subject taught in class. Even at this first year, first term stage in the degree, there are always students who already have a keen interest and good level of experience in a subject, and show a clear interest in specializing in it. By providing more advanced materials on class topics, providing links to websites that contain materials on these topics and identifying other means to further investigate a topic, these students can expand on their classroom learning, and perhaps gain a headstart in their specialism.

Tuesday, July 05, 2005

Creating a Moodle test site on Unix

To try and squeeze a bit of performance out the old PC that was hosting the Moodle test I decided to scrub Windows and try to install a small Unix OS instead, on the assumption that it wouldn't be as much of a drain on system resources. I picked FreeBSD for the OS as it has a pretty good reputation and also I'm a Mac user and Darwin, the Unix core of Mac OS X, is based on FreeBSD.

I'll not go into detail on the FreeBSD installation process since it's covered pretty clearly in the FreeBSD Handbook. Basically, I downloaded the 3 installer images from the FreeBSD website and burned them onto discs (though it turned out I only needed disc 1). Booting from the 1st CD started the installation process, which took care of re-formatting the hard drive. Following the instructions on the handbook saw me through the process OK, but there were a couple of things worth noting:

  • Be sure to install the FreeBSD Ports Collection, which will let you install the webserver & database software, etc.

  • I didn't bother installing much more than the basic OS, to keep the drain on system resources down. I didn't bother with the X windows system, etc

  • I wanted to use SSH to log into the computer remotely, so I could ditch the monitor and stick the case under a desk. The installer asks if you want to use xinetd, a program that manages network services like SSH & FTP. I said yes to this, and activated SSH on it. A stage or two later in the installation process it asks if you want to use SSH, which I also said yes to. It turns out this is activating another SSH service and I ended up with both running on the computer, which was sticking a bunch of error messages onto the console. Once I realized and turned off one of them, every thing was fine.


Once I had FreeBSD installed and running, I used the Ports Collection to install Apache webserver, PHP, MySQL and Webmin, a program that allows system administration through a web interface. Installation of programs from the Ports Collection is also covered pretty clearly in the handbook. In summary, installing a program from the collection involves navigating to it's directory from the command line and typing 'make install'. The appropriate files are downloaded from the internet and compiled.

Since the Moodle demo I'd been running on Windows hadn't been up for long, I just did a fresh install on the FreeBSD system. Again a MySQL database had to be created beforehand for Moodle, which I created using Webmin. The Moodle software itself just had to be unzipped into the Apache documents directory, and then accessed via a web browser to run the initial configuration scripts.

The Unix Moodle system did run a bit quicker than the Windows one, and I scrounged another 64mb module for the last slot on the machine which gave another little boost. It was a lot more usable and could cope with 3 or 4 users at a time, which was fine for demoing. Once the system was up and running there was little need to use the unix command line. The only times I had to use it were to turn Webmin on and off and to install extra Moodle modules and themes.

Monday, June 27, 2005

Creating a Moodle test site on Windows

The Moodle software can be installed on any platform on any machine, the only requirements are webserver software with php and an sql database. To evalute Moodle I installed it in on an old Windows 95 PC in my office. As recommended in the Windows installation documentation I donwloaded a copy of EasyPHP, which is a neat little package that will install the Apache webserver software, PHP and MySQL database software all at once and provides a neat little interface to control them with. The downside is that a lot of the dialogues are in french :( though the Moodle docs provide a quick translation of OK, Next, Start, etc, and since there seems little need to alter the default settings, it doesn't really matter too much.

So installing EasyPHP was pretty easy: I ran the installer .exe file, clicked though the french dialogues and there's webserver, PHP and MySQL up and running. The only thing to do before I could install Moodle itself was to create a database for it use. Again this was pretty easy, it was just a case of finding the database admin section of the EasyPHP admin page and hitting the create new button.

Installing Moodle was simply a case of downloading the software, unzipping it into the webserver documents directory and running the config script from a browser, exactly as described in the Moodle installation instructions. That was it, a complete, working Moodle system that anyone on the sub-net could access by pointing a browser at the Windows PCs IP.

I began creating some course pages, uploading stuff and generally mucking around with Moodle. It became apparent very quickly though that the test system was unbearable slow because, seemingly, of the specifications of the PC, which had only 64mb of RAM and a PII 266 (I think) processor. Another 64mb of RAM donated from another aging PC gave Moodle a noticeable speed bump, but it was still frustratingly slow. I tried things like dropping the display res and number of colours in the Windows control panels, but it didn't really help. The slow speed of the system made it pretty useless for evaluation purposes, and if more than one person tried to access the system at once it came to a grinding halt. I decided then to scrub Windows completely and stick on a Unix OS instead, in the hope that not having a big graphical OS might free up resources for the webserver & PHP.

Friday, June 24, 2005

Choosing a VLE

While I'm currently of the belief that Moodle is the VLE system best suited to the needs of my department at the RSAMD (the eventual outcome of our pilot system may prove otherwise), it does not necessarily make it either the best VLE system on the market or the best system for any particular institution, though discussions with other institutions show that it is gathering a strong following.

The Ferl website has a list of questions to consider when choosing a VLE, and the JISC website has a document describing the people and processes that should be involved in procuring a VLE.

Why Moodle?

Our department came to Moodle almost indirectly. Initially we were not actually looking for a VLE. We have a new requirement to provide electronic copies of all our printed course materials and considering our options of how to deliver this. We were also interested in giving students the ability to create blogs, as an alternative to written journals, and creating web forum for students to discuss the course and their work.

Unaware of VLEs, I started looking around for an intranet type system that would let us provide these facilities to students. I found a piece of software called Course Foum, a web based e-learning system discussed in this post. This was our first exposure to a VLE and we experimented with a demo of this software for a while, and started looking further into VLEs.

Around this time we spoke to our Information Services department about our ideas, since it was becoming apparent that a VLE would suit our needs and we were keen to implement one. It transpired that the IS department had independently been interested in VLEs for the Academy. They gave us a link to a Moodle test site that their counterparts at Glasgow University were experimenting with, and we started looking into the Moodle software.

The software is very robust and flexible, and free. The appearance of a Moodle system is very easy to customize to match your institution's website or whatever, course areas are easy to create and are very customizable. It is simple to add multimedia content, files and images and discussions, forums, quizzes and content created externally (java, flash, etc). There is also a great support community to be found on the Moodle.org site.

Based on this we decided to try the Moodle software and created demo system on an old PC in my office. This demo has proven Moodle's ability to fulfill our needs and more, and subsequently we have decided to adopt it for our VLE pilot system.

Other VLE software

There are many pieces of software available that provide Virtual Learning Environments, both commercial and open source. The Lancaster University website contains a fairly comprehensive list of available software packages.

Speaking with people from other academic institutions, it seems that Moodle, Blackboard and WebCT seem to be the most common VLE systems in use in our area. A interesting report from a comparison between Blackboard and Moodle from Humboldt State University can be found here. At the end of the report are the results from asking students involved in the comparison which system they preferred. Interestingly, the majority of students (42.9%) expressed no preference (with 35.7% preferring Moodle, 21.4% preferring Blackboard).

Whilst investigating VLEs for use with our Technical and Production Arts degree I also came across Course Forum, described on its website as "web-based e-learning software that makes it easy for you and your students to interact, whether to create, post, share or discuss course content." Course Forum provides web pages for courses/departments/classes/whatever, and each page has its own discussion forum attached and can host pictures and files, etc. It provides navigation tools, web based admin tools and is very simple to set up and run. It runs on Windows, OS X, Linux & Unix and doesn't require any web-server software. You just run the installer on the machine you want to host it, and point your browser to that machine.

I downloaded a demo of course forum and installed it on an old desktop windows machine in the office, and we spent some time trying it out. Whilst it was very easy to setup and install, it was was a little limited in what it could provide and the method of creating and editing courses pages seemed a but unintuitive for our tutors who less familiar with web technology.

Thursday, June 23, 2005

What is a VLE? What is Moodle?

A Virtual Learning Environment (VLE) is an interactive, usually web based system for providing online courses, online resources to support courses and interactive resources to support learning. The Wikipedia has a good in-depth entry describing VLEs.

Moodle is a piece of software that serves a a platform for delivering a VLE. It is described on moodle.org as "a course management system (CMS) - a free, Open Source software package designed using sound pedagogical principles, to help educators create effective online learning communities". The Wikipedia also has an entry describing Moodle.

Moodle is Open Source software, which generally means that the software and it's source code are freely available to use, modify and distribute. The Moodle software is covered by the Gnu General Public License, which list terms under which the software can be used, and ensures that the software remains free and open.

Introduction

A little background for you.

I teach on a BA Technical and Production Arts degree course at the Royal Scottish Academy of Music and Drama. For the last year I have been investigating Virtual Learning Environment (VLEs) for use with our course, and we are about to launch a pilot system for our next intake of first years at the end of September. The system we are going to use is Moodle (http://moodle.org), an open source, php based system which is gaining a great deal of popularity in the academic world.

There is a great voluntary support community surrounding the Moodle project and I decided to publish a blog of my experience with implementing a Moodle based VLE for our department in the hope that it might be of use or interest to that community and to other teachers, institutions, etc, considering implementing Moodle, or another VLE system.