How does BIM allocate blog posts to prompts

The following is a response to the following query.


BIM is a plugin for the Moodle LMS. BIM is “Designed to support the management of individual student blogs (typically external to Moodle) as personal learning/reflective journals”. Students create their individual blogs (or anything that produces a RSS/Atom feed) and register it with BIM. BIM then mirrors all posts within the Moodle course and provides functionality to support the management and marking.

A part of that functionality allows the teacher to create “prompts”. The design of the original tool (BAM) assumed that students would write posts that respond to these prompts. These posts would be marked by teaching staff.

BAM (and subsequently BIM) was designed to do very simple pattern matching to auto-allocate a student post to a particular prompt. It also provides an interface that allows teaching staff to manually change the allocations.

Defining a prompt

A prompt in BIM has the following characteristics

  • title;
    A name/title for the prompt. Usually a single line. The original design of BIM assumed that this title was somewhat related to the title of a blog post. The advice to students was to include the title of the prompt in the title of their blog post, or in the body of the blog post.
  • description; and,
    A collection of HTML intended to describe the prompt and the requirements expected of the student’s blog post.
  • minimum and maximum mark.
    Numeric indication of the mark range for the post. Used as advice only. If the marker goes outside the range, they get a reminder about the range and it’s up to them to take action.


Auto-allocation only occurs during the mirror process. This is the process where BIM checks each student’s feed to see if there are new posts.

When BIM finds a new post from a student blog it will loop through all of the un-allocated prompts. i.e. if this student already has a blog post allocated to the first prompt, it won’t try to allocate any more posts to that prompt.

BIM will allocate the new post to an unallocated prompt if it finds the prompt title in either the body of the blog post, or the title of the blog post. BIM ignores case and it tries to ignore white space in the prompt title.

For example, if this blog post is the new blog post found by BIM, then BIM will make the following decisions

  1. ALLOCATE: the post to a prompt with a title of “does BIM allocate blog posts“.
    This matches exactly the title of this blog post.
  2. ALLOCATE: the post to a prompt with a title of “DOES    BIM ALLOCATE   BLOG POSTS“.
    BIM ignores case and white space, hence this matches the title of this blog post
  3. ALLOCATE: the post to a prompt with a title of “Auto-allocation“.
    The body of this post includes the word Auto-allocation.
  4. DO NOT ALLOCATE: the post to a prompt with a title of “does BAM allocate blog posts“.
    (Assuming that the above line didn’t appear in this post) This particular phrase (see the A in BAM) would not occur in the title or the body of this post, and hence not be matched.


Exploring BIM + sentiment analysis – what might it say about student blog posts

The following documents some initial exploration into why, if, and how sentiment analysis might be added to the BIM module for Moodle. BIM is a tool that helps manage and mirror blog posts from individual student blogs. Sentiment analysis is an application of algorithms to identify the sentiment/emotions/polarity of a person/author through their writing and other artefacts. The theory is that sentiment analysis can alert a teacher if a student has written something that is deemed sad, worried, or confused; but also happy, confident etc.

Of course, the promise of analytics-based approaches like this may be oversold. There’s a suggestion that some approaches are wrong 4 out of 10 times. But I’ve seen other suggestions that human beings can be wrong at the same task 3 out of 10 times. So the questions are

  1. Just how hard is it (and what is required) to add some form of sentiment analysis to BIM?
  2. Is there any value in the output?

Some background on sentiment analysis

Tends to assume a negative/positive orientation. i.e. good/bad, like/dislike. The polarity. There are various methods for performing the analysis/opinion mining. There are challenges in analysing text (my focus) alone.

Lots of research going on in this sphere.

Of course there also folk building and some selling stuff. e.g. Indico is one I’ve heard of recently. Of course, they all have their limitations and sweet spots, Indico’s sentiment analysis is apparently good for

Text sequences ranging from 1-10 sentences with clear polarity (reddit, Facebook, etc.)

That is perhaps starting to fall outside what might be expected of blog posts. But may fit with this collection of data. Worth a try in the time I’ve got left.

Quick test of indico

indico provides a REST based API that includes sentiment analysis. Get an API key and you can throw data at it and it will give you a number between 0 (negative) and 1 (positive).

You can even try it out manually. Some quick manual tests

  • “happy great day fantastic” generates the result 0.99998833
  • “terrible sad unhappy bad” generates 0.000027934347704855157
  • “tomorrow is my birthday. Am I sad or happy” generates 0.7929542492644698
  • “tomorrow is my birthday. I am sad” generates 0.2327375924840286
  • “tomorrow is my birthday. I am somewhat happy” 0.8837247819167975
  • “tomorrow is my birthday. I am very happy” 0.993121363266806

With that very ill-informed testing, there are at least some glimmers of hope.

Does it work on blog posts…….actually not that bad. Certainly good enough to play around with some more and as a proof of concept in my constrained circumstances. Of course, indico is by no means the only tool available (e.g. meaningcloud).

But for the purpose of the talk I have to give in a couple of weeks, I should be able to use this to knock up something that works with the more student details script.

Evaluating the use of blogs/reflective journals

The use of blogs in one of the courses I teach is now into it’s fourth semester. Well past time to do explore how it’s all going, evaluate some of the design decisions, and make some decisions about future developments. In preparation for that it’s time to look at some of the extant literature to look at findings and methods. The following is the first such summary and is focused on @spalm et al’s

Palmer, S., Holt, D., & Bray, S. (2008). The learning outcomes of an online reflective journal in engineering, 724–732.


Looks at the use of an “online reflective journal” (implemented using discussion forum in WebCT) in a 4th year engineering course. Combines a survey-based evaluation of student perceptions with “an analysis of student use of the journal…to investigate its contribution to unit learning outcomes”

Findings are

  • Most students understood the purpose and value the journal in their learning
  • Most read the entries of others and said this help their learning
  • Two most useful things about the journal
    • The need to continuously revise course material
    • Ability to check personal understanding against that of others
  • Least useful related to problems with using WebCT – the difficulty of the interface and “problems with CMS operation”.
  • Significant contributors to final mark
    • Prior academic performance
    • Number of journal postings
    • Mode of study


The quantitative nature of this is interesting as it’s something I need to do more of. If only to gain some experience of this approach and to tick the box (which is a great reason).

There is always going to be a bit of a “so what” issue with this type of thing as research. What really does a study in a single course reveal that’s new or easily transferable. But perhaps doing almost a replication addresses that somewhat.

Of course the real interest in doing this research is just to find out more about what’s going on in the course, its impact and what the students think so it can inform further development.

To do

  • Can I get a copy of the evaluation survey used?
  • Can I apply the evaluation survey to past students?
  • Do I need to get student permission to analyse the data around their use of their blogs and final results?

Comparison with EDC3100

My impression is that prior academic performance would be the most significant factor in EDC3100. Raising the question about how much value there is in what teachers do, if prior academic performance is a big contributing factor are we “failing” the weaker student?

Question: Could the students performance on the course be included in the evaluation survey in some form?

I think mode of study might play a role. My guess is that the online students would get see the value in the blogs more than some of the on-campus students.

Question: What impact does mode of study play in EDC3100?

Given that the blog posts were only marked based on number of posts, average word count and number of links it would be interesting to explore what impact that had on the final mark. Especially given the quote about “assessment” as a “strategic tool for creating student engagement”.

Question: Exactly what type of student engagement is the assessment of the blogs in EDC3100 creating?

Question: What patterns exist in the learning journal marks?

The journaling is contributes 5% of the total course mark for each of the 3 assignments. Is there a pattern in the marks for each assignment and the final outcome?

Question: Does the medium used make any difference?

In EDC3100 students are using their own blog hosted on their choice of external service. Very different from an LMS forum. Does this make a difference? Is it more their space?

Is it seen as too difficult or a waste of time creating a blog?

Question: Is the collection of technologies used to complete this task too difficult?

To get marks students have to create their blog (e.g. WordPress) and follow the blogs of others (Feedly, WordPress “follow” mechanism, WordPress reader etc). This leads to problems with creating links to posts. E.g. students link to the post in Feedly or the WordPress reader, not in the student’s blog.

But that said, the interface is “better” (subjective) and might be seen as more realistic – not a Uni tool, something broader.

Question: Does the time of posting make any difference? What are the different patterns of posting visible? Any patterns indicating task corruption?

Palmer et al (2008)’s journal is essentially a weekly task. In EDC3100 students need to post at least 3 posts a week to get full marks. There is no specific direction as to what or when to post. What patterns are there?

Question: How does the perception of reflection/journaling in the discipline impact thoughts?

Palmer et al (2008) describe how a work journal is a common practice for engineers. Hence doing this in the course can be linked to professional practice.

The same doesn’t apply to the teaching profession. While reflection is seen as important, there’s doesn’t appear to be the accepted practice of regularly keeping a work journal.

Making BIM ready for Moodle 2.6

The very nice folk from my institution’s ICT group warned me back in March that

I have started work on the moodle 2.6 upgrade that will be happening midyear and have come across some deprecation warning from BIM. Just giving you plenty of notice that an updated version will be needed before release.

That was just as my first use of BIM on the institution’s servers was getting underway. That’s gone reasonably well and it will be continuing (and hopefully expanding as I learn more about what’s required and possible with the approach) next semester, so I better get BIM playing nicely with 2.6. That’s what this post is reporting on.

BIM for Moodle 2.6 (and also 2.5) is available from the BIM plugin database entry and also from GitHub.

Get Moodle 2.6 running

Let’s get the latest version of Moodle 2.6 – 2.6.3 – and install that.

So that’s the first change. PHP setting for caching. Not that I’ll need that for testing. Looks like I can ignore it for now.

Get BIM installed

I’m doing this so irregularly now it’s good that I actually documented this last time.

That all appears to be working. Ahh, but I haven’t turned the debugging all the way up to annoying yet.

That’s better

get_context_instance() is deprecated, please use context_xxxx::instance() instead.

And about this stage it was always going to be time to….

Check the Moodle 2.6 release notes

The Moodle 2.6 release notes and then the developer notes. Nothing particularly related to this warning.

Do it manually

As outlined in this message it appears that this particular usage has been deprecated for a few versions. The deprecatedlib.php suggests this gets removed in 2.8.

So the changes I’m doing appear like this
[code language=”javascript”]
#$context = get_context_instance( CONTEXT_COURSE, $course->id );
$context = context_course::instance( $course->id );

I can see this is needed in the following

  • ./coordinator/allocate_markers.php
  • ./coordinator/find_student.php
  • ./index.php **done?**
  • ./lib/groups.php
  • ./lib/locallib.php
  • ./marker/view.php
  • ./view.php – this one had actually been done earlier
    #$context = get_context_instance( CONTEXT_MODULE, $cm->id );
    $context = context_module::instance( $cm->id );

That all seems to be working.

Do a big test

Will back up a large BIM activity with a temp course from my Moodle 2.5 instance and restore it under Moodle 2.6.

Some more issues

print_container() is deprecated. Please use $OUTPUT->container() instead. Done

Identifying some immediate changes to BIM

I have until the 21st of February to get BIM tested and ready for installation into the institutional Moodle instance. The following is some initial planning of what I’d like to get done in that time frame. A list that will then need to be further whittled away to what I can get done in that time frame. There are three categories of changes

  1. Changes to better support the pedagogy I’m currently using.
  2. Changes from the BIM issues list.
  3. Changes to ensure correct functioning.

Better support the pedagogy

The pedagogy/learning design that informed the initial design of BIM is fairly limiting. The learning design/pedagogy I’m currently using isn’t directly supported by BIM. I found myself last year doing a range of programming kludges to get it to work. This won’t work in the second half of this year when a non-technical academic takes over as course coordinator. BIM better fitting the current learning design saves me time and enables other people to use this approach.

  • Allow more than one post to be allocated to a question

    Already had this as an issue. Would allow “questions” to be though of as modules (in EDC3100 speak) or time periods.

  • Allow student allocation of posts to a question.

    Mentioned in this issue (amongst other extensions).

  • The student interface would also need to be changed to handle the display of multiple posts to a question.
  • Have BIM generate statistics about length of posts, number of links and number of links to other student posts. Display this to the student and generate a CSV file for the marker.
  • Also seems to suggest some sort of auto mark generation based on the statistics.
  • Have a default allocation of posts to questions/topics based on the date OR just have it set to a particular value (i.e. all posts should now be allocated – by default – to Module 1).

The basic idea behind these changes is that students are required to make a number of posts per Module in the course (one module = about 3 weeks). Students mark for the posts for each module is based solely on the number of posts and that the posts meet a certain set of statistics (length of posts, links etc). These marks are added as part of the bigger assignment that is associated with the module.

Students need to be able to see their progress. Markers need to be able to access the statistics to mark assignments.

Changes required would likely include

  1. Changes to student interface
    1. Show question allocation as a row (not a column).
    2. Replace the “Status” column with a “Statistics” column that includes the number of words, links etc statistics
    3. What options exists with parsing HTML and extracting links in PHP and in Moodle.
    4. Show unallocated posts together in a separate set of rows – perhaps even a special form – where the questions allocation drop box is available.
  2. Changes to the coordinator interface
    1. Configuration option for multiple questions

      database change required

    2. Change the default allocation of posts.
    3. Some how deal with questions that aren’t questions.
    4. How to specify statistics for auto marking.
    5. What if any changes are required for the “Manage Marking” page.

      May not need it. As this page simply shows counts. With multiple posts to a question, the count should still work.

    6. What to do about the workflow and the idea of marked/suspended/released if posts aren’t being marked, simply analysed.
  3. Changes to the marker interface
    1. “Mark posts” will still need to be used to allocate posts (or should this feature be added to “View student details”) even though “marking” may not make sense.
    2. “Mark posts” cell with a question would need to show the number of posts for that question implying no way to mark directly. Or perhaps list each post? Needs thought here
    3. “Allocate posts” page will need to retain all question names in the “Choose one” drop box.
    4. “Allocate posts” page should also have an additional heading to group multiple posts to the one question — this may enable doing without the database change for the new configuration option.
    5. May need to add to “Allocate posts” a link to “mark this post” so that “Mark posts” page can point to a list of posts and one can be chosen for marking. Mmmm.
    6. One of these pages should have a link to export a CSV file containing marks for students against posts.

From the BIM issues list

The BIM source code is hosted on github and I’ve been using the associated issue list to record any ad hoc improvements/fixes. The following are the issues that would be nice

  • No response to find student – a bug, has it been fixed yet?

    Seems to specific to Moodle 2.5, so not directly applicable to the institutional context.

  • Warn of summary feeds

    Problem from last year, blogs configured to just showing the first few lines of posts, not the whole post.

  • A couple of issues about updating posts – allow students/markers to update posts stored in BIM (mostly to fix errors or recent changes).

Correct functioning

  • Check out any and all warnings being generated by BIM now.
  • Bulk email

    Used in a number of places. This is not working. Either on mootest or my box. A missing parameter. Not sure when this cropped up.

  • User search

    Search for a student within BIM isn’t working on mootest, it does work on my box. My initial guess is some SQL type queries in BIM that are MySQL specific.

  • All teaching staff are coordinators

    The distinction between coordinator and marker isn’t kicking in as it should.

Reflective Blogging as part of ICT Professional Development to Support Pedagogical Change

I am planning to do some more work on BIM in preparation for using it in teaching this year, including finishing some analysis of how the blogging went in last year’s two offerings.

As luck would have it, I skimmed one of my feeds and came across Prestridge (2014). What follows is a summary and some thoughts. It’s nice to be reading an open access journal paper after a few very closed off articles.

Aside: I am wondering whether or not in the new world order being someone that reads feeds and has students blog is become somewhat old fashioned.


The abstract for Prestridge (2014) is

Reflection is considered an inherent part of teacher practice. However, when used within professional development activity, it is fraught with issues associated with teacher confidence and skill in reflective action. Coupled with anxiety generally associated with technological competency and understanding the nature of blogging, constructive reflection is difficult for teachers. This paper focuses on the reflective quality of school teachers’ blogs. It describes teachers’ perceptions and engagement in reflective activity as part of an ICT professional development program. Reflective entries are drawn from a series of blogs that are analysed qualitatively using Hatton and Smith’s (1995) three levels of reflection-on-action. The findings suggest that each level of reflective action plays a different role in enabling teachers to transform their ICT pedagogical beliefs and practices. Each role is defined and illustrated suggesting the value of such activity within ICT professional development, consequently reshaping what constitutes effective professional development in ICT.

This appears to be relevant to what I do as the course I teach is titled “ICTs and Pedagogy” and reflection through blogging is a key foundation to the pedagogy in the course. Of course, this appears to be focused on in-service, rather than pre-service teachers.


In the Australian education context various government policies illustrate that ICTs are important. There’s a move to 1-to-1 student/computer ratios. However, “success with regard to technology integration has been based on how extensive or prominent the use of it has been in schools rather than on whether the teacher has been able to utilize it for ‘new’, ‘better’, or more ‘relevant’ learning outcomes (Moyle, 2010)” (Prestridge, 2014). Suggests a need to “reconceptualise both the intentions and approaches to professional development” if there’s going to be an ROI on this government investment and if we’re to help teachers deal with this.

PD is “an instrument to support change in teacher practice”. Long held view that PD should move from “up-skilling in the latest software” to a deeper approach that focuses on pedagogy and context rather than technology; building teachers’ confidence in change; development of teachers’ metacognitive skills; and, as a philosophical/revisioning of ICT in learning (references attached to each of these). References work by Fisher et al (2006) as requesting “a cultural change in the teaching profession”, the principles of which need to be “activiated within ICT professional development if we are going to move from retooling teachers to enabling them to transform their practices”.

Note: I wonder how well this academic call for a cultural change matches the perceptions of teachers and the organisations that employ them? I have a feeling that some/many teachers are likely to be more pragmatic. As for the organisations and the folk that run them….

And now onto the importance/relevance of reflection to this. Schon gets a mention. As does the action research spiral, teacher-as-researcher, inquiry based professional development, reflective action, Dewey. Leading to research suggesting “that reflection brings automatic calls in the improvement of teaching” and other work suggesting there’s a lack of substantive evidence.

This paper aims to investigate “the role of written reflection as a central process in a ‘hearts and mind’ approach to ICT professional development.

Note: The mix of plural and singular in “hearts and mind” is interesting/a typo in this era of standardised outcomes/curriculum and increasing corporatisation.

Methods to framing the research

Background on a broader ARC funded project that aims to develop “a transformative model of teacher ICT professional development”. With “one or two teachers” volunteering from each school it would appear to suffer the problem of pioneers versus the rest. Teachers engaged in classroom inquiries, in particular the “implementation of an ICT application in regard their pedagogical practices and student learning outcomes”. Supported through a local school leader, outside expert, online discussion forum and personal blogging.

Has a table that lists the inquiry questions of the 8 teachers. Questions range from “How can students be supported when creating an electronic picture book using the theme ‘Program Achieve”?” to “What strategies need to be employed to promote effective/productive ICT practices that encourage intellectual demand and recognise difference and diversity?”

Teachers were encouraged to blog after teaching. Provided with a framework for reflecting after teaching (5R framework). Weekly blog mandatory. School leaders asked to encourage blogging.

This work focuses on

  1. teachers’ perceived value of the reflective activity

    Data from teachers’ final interviews and reports analysed using constant comparative method

  2. the role of written reflection in enabling change in pedagogy

    Blog posts analysed with Hatton and Smith’s (1995) three types of writing: descriptive reflection; dialogic reflection; and, critical reflection.


  • 1 teacher had consistent reflection of the year implementation
  • 4 teachers had spasmodic entries, mostly at the beginning
  • the other teachers writing could be seen as simply record keeping

Finds similar results in other use of reflective blogs and suggests that “teachers’ lack of understanding on how to reflect limits their reflective writing abilities”.

Note: Not a great result perhaps, but not entirely unexpected. Might get some idea of this from my students posts in 2013 later today.

Perceived value of reflective writing

Not surprisingly, the “consistent reflection” person liked blogging. Others didn’t.

A major theme on the value was “a lack of understanding on how to reflect”.

Note: I have a feeling this may be one factor for my students. Though I wonder how much pragmatism and especially how reflective blogging falls outside the realm of standard practice for many plays a role.

“What to write in the reflective blog and then what to do with these reflections were issues raised by the teachers”

Note: Raising the issue of BIM being better at providing “prompts” to students.

Ahh, a quote from a participant brings back the “realm of standard practice” issue

I think because this inquiry thing was such a different way of doing things I’ve ever done before, it took me a while to get fair dinkum about it. I still couldn’t get the blog…..that’s one positive that’s come out of it because if I were asked to do something like this again then I would do it much more readily.

Picks up on the idea of “reflection as description” through a number of quotes. An apparent lack of priority given to analysing on what had happened and going beyond description.

This is even though the teachers were given the 5R framework and a range of questions/prompts in project documentation and comments by the outside PD expert.

Note: Given this difficulty in understanding how to write reflectively, what impact does it have on the next part of the paper “examining the role of written reflections to identify how reflection supports teacher change in pedagogy”?

The role of reflective writing

The obvious “solution” is to focus on the 1 teacher who consistently blogged, generating the problem of a sample of 1.

The posts were analysed in chronological order. Emphasis on linking the type of reflection and the role it plays in “improving and or supporting teachers in transforming the beliefs and practices”

The most common type of reflection is descriptive, which really isn’t reflection. But this descriptive reflection “provides a leverage for dialogic reflection” which may or may not be pursued. As it turns out, generally not chosen. Only when a critical friend provides some additional prompting does it appear.

When it did occur, it helped shape the teacher’s pedagogical beliefs and practices. Descriptive reflection made conscious the connection between pedagogical beliefs and actual practice, but more as a justification.

Only spasmodic evidence of critical reflection.

Suggests that data supports the conclusion that there’s a developmental sequence to reflection. Start with descriptive and then the more demanding forms emerge.

The role played by each type of reflection in transforming pedagogical beliefs and practices

  1. Descriptive reflection – a connector, making conscious the links between pedagogical beliefs, current teaching practices, and student learning outcomes.
  2. Dialogical reflection – the shaper, where the connections were examined and explored, enabling transformation.
  3. Critical reflection – a positioner. Placing the role of teacher in the broader context and critical evaluate the role.


If how to reflect in written form is understood, then “reflective action plays a significant part in enabling them to change their pedagogical beliefs and practices”. Each type of reflection plays a different role.

A lack of guidance and support were found to affect reflective action.


Prestridge, S. J. (2014). Reflective Blogging as part of ICT Professional Development to Support Pedagogical Change. The Australian Journal of Teacher Education, 39(2).

#moodle, blogs, Moodle blogs and #bim

BIM is a Moodle activity module that I developed and use. BIM evolved from an earlier system called Blog Aggregation Management (BAM). BIM’s acronym is BAM Into Moodle. As the name suggests, BIM is essentially a port of all of BAM’s functionality into Moodle. Both BAM and BIM are designed to help with the task of managing students in a course writing and reflecting on their own individual web blogs. In particular, it was designed to do this for courses with hundreds of students.

The aim of this post is to explore and explain a comment that often arises when BIM is first mentioned. i.e. doesn’t Moodle already offer blog integration? The following tweet from @tim_hunt is an example of this.

The aim here is to answer the question, “What does BIM offer that Moodle’s existing blog integration doesn’t already provide?”

In short,

  • Blogs in Moodle are focused at providing a way for authors to create a blog inside of a Moodle instance.
  • BIM is focused on supporting teaching staff in managing a course where all students are expected to write on their own externally hosted blog.

Blogs in Moodle

Each user in Moodle has their own blog. i.e. the user’s (student, teacher or other) blog resides in Moodle. The functionality used to create and edit blog posts is provided by Moodle.

Each user’s blog can have an RSS feed if configured (by default this is turned off). However, standard advice appears to be to have RSS feeds secured (i.e. only people who can login to Moodle can access the feed).

There is support for “course tags” which allow particular posts to be associated with a course. Posts associated with courses in this way are still visible elsewhere.

If the Moodle administrators have enabled it, users can register their external blog with their Moodle blog. For example, if I registered this blog with a Moodle blog, then anything I post to this blog would also appear in my Moodle blog. Posts from an external blog can be deleted from a Moodle blog, but can’t be edited.


Moodle’s blog functionality is focused on helping users create and maintain a blog that sits within a Moodle instance.

It is user-focused, not course-focused. e.g. it appears to offer no functionality for teaching staff to find out which students have blogged or haven’t, and no functionality to mark blog posts.

The problem here (at least for some) is that

Reflective learning journals are demanding and time-consuming for both students and staff (Thorpe, 2004, p. 339)

Blogs with BIM

BIM doesn’t provide any functionality for students or teachers to create a blog. Instead, BIM relies on the author creating a blog on their choice of blogging platform (e.g. I always recommend This means that the students’ blogs (it’s almost always student blogs that BIM works with) are hosted external to the LMS. Each student’s blog is their individual blog.

What BIM does is

  • Make a copy of all the posts students make on their blog within the LMS just in case the dog eats it.
  • Provide a couple of aggregated views that shows you who has blogged, how much they’ve blogged and how recently they’ve blogged.
  • Allows different teaching staff to see these aggregated views for the students they are responsible for (while the “in charge” teacher can see all).
  • Shows which students haven’t registered their blogs yet and provides a mail merge facility to remind them to do it.
  • Provides an interface so students can check what BIM knows about their posts.
  • If you really want to, allows you to mark student posts.

    This is done by specifying a set of questions that student posts should respond to, and the provision of a marking and moderation interface. Finally, the marks will integrate into the Moodle gradebook.


BIM functionality is focused on managing (and marking) of student blog posts. It aims to reduce the time-consuming nature of reflective journals implemented using blogs.

What functionality BIM currently provides for this task remains essentially the same as was designed into BAM in 2007. I’m hoping 2014 will see some long overdue evolution in functionality.

Moodle blogs and BIM?

The Moodle blog functionality is all about helping authors produce blogs. BIM is currently all about helping teachers manage and mark the student use of blogs. It is possible to argue that neither do an overly fantastic job.

This means that it should be possible for the two to work together. i.e. a student could register their Moodle blog with BIM, rather than using WordPress or some other external service. Indeed it is. I’ve just successfully registered a Moodle user blog in BIM.

This is of potential interest in situations where what the students are reflecting on might raise privacy concerns (e.g. nursing students – or just about any other profession – reflecting on their placement experiences). In this situation, the students could create their blog within Moodle and register the RSS feed with BIM.

However, the privacy of this approach depends on the blog visibility settings within Moodle and their impact on the generation of the RSS file. There appear to be three relevant settings for “blog visiblity” in Moodle

  • “The world can read entries set to be world-accessible”
  • “All site users can see all blog entries”
  • “Users can only see their own blog”

The question is what effect this visibility setting will have on the RSS file required by BIM. i.e. If visibility is set at “Users can only see their own blog” will this stop generation of the RSS file? A quick test seems to suggest that the RSS file is still generated.

This begs another question about privacy. The “security” or “privacy” of the RSS file generated by a Moodle blog is an example of security through obscurity. i.e. if you know the URL for the RSS file, you can view. The “security” arises because the URL includes a long list of hexadecimal numbers that make it hard to guess.


Thorpe, K. (2004). Reflective learning journals : From concept to practice. Reflective practice: International and Multidisciplinary Perspectives, 5(3), 327–343.

BIM for Moodle 2.5

Earlier this week @sthcrft asked

Talk about good timing. My shiny new Mac laptop arrived the same day and I’d been waiting on its arrival to explore whether or not BIM was Moodle “2.5ish happy”. It turns out that there are a few tweaks required and some improvements made possible. The following is records those tweaks.

Current status

BIM seems to be working on Moodle 2.5.

I have made a minor change so that there is now a branch of BIM specific to Moodle 2.5. Will probably become the master branch in coming days.

Tested the changes with my current course’s use of BIM – about 100 students – but have yet to add this to the Moodle plugin database.

Crashing on tabs

It was looking quite good for BIM on Moodle 2.5. Installed without a problem and appeared to be basically working. Some of the interface tweaks helped the unmodified BIM look a bit nicer.

But then I tried to “Find a student”. At which stage it appears to crash/stall/hang. Sit’s there never completing (or at least not for a very long time).

A bit of exploration of what’s happening suggests that the problem is with print_tab which appears to be deprecated from Moodle 2.5 onwards. A quick translate to the new alternative still left the same problem. The tabs work for all of the pages, but not on the submission of “Find Student”.

And back to this on the next day.

After a lot of wasted time – you idiot – I haven’t setup the http proxy on my server and that’s causing the delay. And again, you idiot.

Other tests

Tests as other users all seemed to work fine.

Layout issues

Some of the more “busy” pages for the coordinator (some overlap with the marker) don’t display very well. Never have really, but the current default theme emphasises those problems. Let’s change to another theme and see.

  • The text editor for comments on MarkPost overlaps a bit

These are minor issues and after a quick look, can’t see any quick way to solve it beyond a broader re-working of the interface.

Nested tabs

The move to tab tree apparently gives scope for nested tabs, that could solve one of the (many) uglies in BIM. i.e. the coordinators ability under “Your students” to view details and mark posts. Implementing these as nested tabs could be useful. An exploration.

That seems to work surprisingly easily. Now to remove the old kludge.

BIM and broken moodle capabilities

The following is a long overdue attempt to identify and solve an issue with BIM.

The problem

BIM provides a three different interfaces depending on the type of user, these are

  1. coordinator;

    The name is a hangover from a past institution, but essentially this is the teacher in charge. Can do anything and everything, including the management of the marking being done by other staff.

  2. marker;

    Another staff role, mostly focused on marking/looking after a specific group of students.

  3. student.

    What each student sees.

The problem is that the code that distinguishes between the different types of users is not working.

For example, a user who should be a coordinator, BIM thinks is potentially all three.

The method

The method I use (and which was used in BIM 1 and has worked fine) is based on capabilities, essentially a few ifs
[sourcecode lang=”php”]
if ( has_capability( ‘mod/bim:marker’, $context )) {
# do marker stuff
if ( has_capability( ‘mod/bim:student’, $context )) {
# do student stuff
if ( has_capability( ‘mod/bim:coordinator’, $context)) {
# do coordinator stuff

These are then defined in db/access.php via the publicised means

What’s happening

To get to the bottom of this, I’m going to create/configure three users who fit each of the BIM user types and see how BIM labels them.

  1. coordinator user – BIM thinks can be marker, student or coordinator.
  2. marker user – is a marker
  3. student user – is a student and a coordinator

The above was tested within BIM itself. There’s a capability overview report in Moodle that shows “what permissions that capability has in the definition of every role”.

For coordinator, it’s showing “Allow” for “Student” and not set for everything else. Not even the manager. Suggesting that there is a mismatch between the BIM code and what Moodle knows. Suggesting that an upgrade of the BIM module is called for.

So, let’s update the version number, visit the admin page and do an upgrade. Success. Now check the capability overview report.

The capability overview report is reporting no change. This appears to be where the bug is. What’s in the db/access.php file is not being used to update the database.

Seem to have it working.

Clean test

Need to do a test on a clean Moodle instance.

  1. Coordinator – CHECK
  2. Teacher – CHECK
  3. Student – CHECK

Glad that’s out of the way. More work on BIM in the coming weeks.

Identifying and filling some TPACK holes

The following post started over the weekend. I’m adding this little preface as a result of the wasted hours I spent yesterday battling badly designed systems and the subsequent stories I’ve heard from others today. One of those stories revolved around how the shortening available time and the poorly designed systems is driving one academic to make a change to her course that she knows is pedagogically inappropriate, but which is necessary due to the constraints of these systems.

And today (after a comment from Mark Brown in his Moodlemoot’AU 2013 keynote last week) I came across this blog post from Larry Cuban titled “Blaming Doctors and Teachers for Underuse of High-tech tools”. It includes the following quote

For many doctors, IT-designed digital record-keeping is a Rube Goldberg designed system.

which sums up nicely my perspective of the systems I’ve just had to deal with.

Cuban’s post finishes with three suggested reasons why he thinks doctors and teachers get blamed for resisting technology. Personally, I think he’s missed the impact of “enterprise” IT projects, including

  • Can’t make the boss look bad.

    Increasingly IT projects around e-learning have become “enterprise”, i.e. big. As big projects, the best practice manual requires that the project be visibly led by someone in the upper echelons of senior management. When large IT projects fail to deliver the goods, you can’t make this senior leader look bad. So someone has to be blamed.

  • The upgrade boat.

    When you implement a large IT project, it has to evolve and change. Most large systems – including open source systems like Moodle – do this by having a vendor driven upgrade process. So every year or so the system will be upgraded. An organisational can’t fall behind versions of a system, because eventually they are no longer supported. So, significant resources have to be invested in regularly upgrading the system. Those resources contribute to the intertia of change. You can’t change the system to suit local requirements as all the resources are invested in the upgrade boat. Plus, if you did make a change, then you’d miss the boat.

  • The technology dip.

    The upgrade boat creates another problem, the technology dip. Underwood and Dillon (2011) talk about the technology dip as dip in educational outcomes that arises after the introduction of technological change. As the teachers and students grapple with the changes in technology they have less time and energy to expend on learning and teaching. When you have an upgrade boat coming every 12 months, then the technology dip becomes a regular part of life.

The weekend start to this post

Back from Moodlemoot’AU 2013 and time to finalise results and prepare course sites for next semester. Both are due by Monday. The argument from my presentation at the Moot was that the presence of “TPACK holes” (or misalignment) causes problems. The following is a slide from the talk which illustrates the point.


I’d be surprised if anyone thought this was an earth breaking insight. It’s kind of obvious. If this was the case then I wouldn’t expect institutional e-learning to be replete with examples of this. The following is an attempt to document some of the TPACK holes I’m experiencing in the tasks I have to complete this weekend. It’s also an example of recording the gap outlined in this post.

Those who haven’t submitted

Of the 300+ students in my course there are some that have had extension, but haven’t submitted their final assignment. Most likely failing the course. I’d like to contact them and double check that all is ok. I’m not alone in this, I know most people do it. All of my assignments are submitted via an online submission system, but there is no direct support in this system for this task.

The assignment system will give me a spreadsheet of those who haven’t submitted. But it doesn’t provide an email address for those students, nor does it connect with other information about the students. For example, those who have dropped the course or have failed other core requirements. Focusing on those students with extensions works around that requirement. But I do have to get the email addresses.

Warning markers about late submissions

The markers for the course have done a stellar job. But there are still a few late assignments to arrive. In thanking the markers I want to warn them of the assignments still to come, but even with only less than 10 assignments to come this is more difficult than it sounds due to the following reasons

  • The online assignment submission treats “not yet submitted” assignments as different from submitted assignments and submitted assignments is the only place you can allocate students to markers. You can’t allocate before submission.
  • The online assignment submission system doesn’t know about all the different types of students. e.g. overseas students studying with a university partner are listed as “Toowoomba, web” by the system. I have to go check the student records system (or some other system) to determine the answer.
  • The single sign-on for the student records system doesn’t work with the Chrome browser (at least in my context) and I have to open up Safari to get into the student records system.

Contacting students in a course

I’d like to send a welcome message to students in a course prior to the Moodle site being made available.

The institution’s version of Peoplesoft provides such a notify method (working in Chrome, not Safari) but doesn’t allow the attachement of any files to the notification.

I can copy the email addresses of students from that Peoplesoft system, but Peoplesoft uses commas to separate the email addresses meaning I can’t copy and paste the list into the Outlook client (it expects semi-colons as the separator).

Changing dates in a study schedule

Paint me as old school, but personally, I believe there remains a value to students of having a study schedule that maps out the semester. A Moodle site home page doesn’t cut it. I’ve got a reasonable one set up for the course from last semester, but new semester means new dates. So I’m having to manually change the dates, something that could be automated.

Processing final results

As someone in charge of a course, part of my responsibilities is to check the overall results for students, ensure that it’s all okay as per formal policy and then put them through the formal approval processes. The trouble is that none of the systems provided by the institution support this. I can’t see all student results in a single system in a form that allows my to examine and analyse the results.

All the results will eventually end up in a Peoplesoft gradebook system. In which the results are broken up based on the students “mode” of learning i.e. one category for each of the 3 different campuses and another for online students. But from which I cannot actually get any information out of in a usable form. It is only available in a range of different web pages. If the Peoplesoft web interface was halfway decent this wouldn’t be such a problem, but dealing with it is incredibly time consuming. Especially in a course with 300+ students.

I need to get all the information into a spreadsheet so that I can examine, compare etc. I think I’m going to need

  • Student name, number and email address (just in case contact is needed), campus/online.

    Traditionally, this will come from Peoplesoft. Might be some of it in EASE (online assignment submission).

  • Mark for each assignment and their Professional Experience.

    The assignment marks are in EASE. The PE mark is in the Moodle gradebook.

    There is a question as to whether or not the Moodle gradebook will have an indication of whether they have an exemption for PE.

EASE provides the following spreadsheets, and you’re not the only one to wonder why these two spreadsheets weren’t combined into one.

  1. name, number, submission details, grades, marker.
  2. name, number, campus, mode, extension date, status.

Moodle gradebook will provide a spreadsheet with

  • firstname, surname, number… address, Professional Experience result

Looks like the process will have to be

  1. Download Moodle gradebook spreadsheet.
  2. Download EASE spreadsheet #1 and #2 (see above) for Assignment 1.
  3. Download EASE spreadsheet #1 and #2 (see above) for Assignment 2.
  4. Download EASE spreadsheet #1 and #2 (see above) for Assignment 3.
  5. Bring these together into a spreadsheet.

    One option would be to use Excel. Another simpler method (for me) might be to use Perl. I know Perl much better than Excel and frankly it will be more automated with Perl than it would be with Excel (I believe).

    Perl script to extract data from the CSV files, stick it in a database for safe keeping and then generate an Excel spreadsheet with all the information? Perhaps.

Final spreadsheet might be

  • Student number, name, email address, campus/mode,
  • marker would be good, but there’ll be different markers for each assignment.
  • a1 mark, a2 mark, a3 mark, PE mark, total, grade

An obvious extension would be to highlight students who are in situations that I need to look more closely at.

A further extension would be to have the Perl script do comparisons of marking between markers, results between campuses, generate statistics etc.

Also, probably better to have the Perl script download the spreadsheets directly, rather than do it manually. But that’s a process I have’t tried yet. Actually, over the last week I did try this, but the institution uses a single sign on method that involves Javascript which breaks the traditional Perl approaches. There is a potential method involving Selenium, but that’s apparently a little flaky – a task for later.

Slumming it with Peoplesoft

I got the spreadsheet process working. It helped a lot. But in the end I still had to deal with the Peoplesoft gradebook and the kludged connection between it and the online assignment submission system. Even though the spreadsheet helped reduce a bit of work, it didn’t cover all of the significant cracks. In the absence of better systems, these are cracks that have to be covered over by human beings completing tasks for which evolution has poorly equipped them. Lots of repetitive, manual copying of information from one computer application to another. Not a process destined to be completed without human error.