Adding bibliography metadata to your web pages

320px-BooksOpen Access publishing is gaining popularity and, at the same time, increasing numbers of academics are uploading their papers on their personal websites, faculty pages, and blogs. This is great news for people who don’t have the luxury of an institution to pay for their access to the usually pay-walled research databases. Along with this positive development, I think providing bibliographical metadata in academic websites and blogs should become more of a priority. It is necessary for bibliography managers such as Mendeley and Zotero to quickly, easily, and accurately store, retrieve, and reference academic papers, which can save other academics, science writers, journalists, and students hours of work for each paper or article they write. If academic websites and blogs provide the metadata to support bibliography managers, it means that it’s that much easier for people to cite their research and provide links back to their websites, faculty pages, or blogs. However, unlike research databases, most websites, faculty pages, and blogs don’t usually provide this bibliographical metadata.

What is bibliographic metadata?

Metadata is intended for machines, rather than people to read. Bibliographic metadata tells bibliography managers and search engines by whom, when, where, what, and how an article or paper was published and makes it easier for people to find through title, author, subject, and keyword searches.

Can we embed it in a blog?

I use WordPress (this blog is built on my own customised version of WordPress) and it’s the most widely used and popular blogging software on the internet. While there’s a large and diverse range of plugins and extensions available, a search shows that while there are several that provide metadata for search engine optimisation (SEO), few offer support for bibliography managers, and none of the ones I’ve found support the minimum required metadata for academic citations. In order to find out how difficult or easy embedding metadata is, I tried an experiment on this blog to automatically generate as much relevant metadata from standard WordPress format blog posts as possible.

What does academic bibliography metadata look like?

Here’s an example metadata set for a published academic paper in an academic journal database (Applied Linguistics, Oxford Journals):

<!-- start of citation metadata -->
<meta content="/applij/4/1/23.atom" name="HW.identifier" />
<meta name="DC.Format" content="text/html" />
<meta name="DC.Language" content="en" />
<meta content="Analysis-by-Rhetoric: Reading the Text or the Reader's Own Projections? A Reply to Edelsky et al.1" name="DC.Title" />
<meta content="10.1093/applin/4.1.23" name="DC.Identifier" />
<meta content="1983-03-20" name="DC.Date" />
<meta content="Oxford University Press" name="DC.Publisher" />
<meta content="JIM CUMMINS" name="DC.Contributor" />
<meta content="MERRILL SWAIN" name="DC.Contributor" />
<meta content="Applied Linguistics" name="citation_journal_title" />
<meta content="Applied Linguistics" name="citation_journal_abbrev" />
<meta content="0142-6001" name="citation_issn" />
<meta content="1477-450X" name="citation_issn" />
<meta name="citation_author" content="JIM CUMMINS" />
<meta name="citation_author" content="MERRILL SWAIN" />
<meta content="Analysis-by-Rhetoric: Reading the Text or the Reader's Own Projections? A Reply to Edelsky et al.1" name="citation_title" />
<meta content="03/20/1983" name="citation_date" />
<meta content="4" name="citation_volume" />
<meta content="1" name="citation_issue" />
<meta content="23" name="citation_firstpage" />
<meta content="41" name="citation_lastpage" />
<meta content="4/1/23" name="citation_id" />
<meta content="4/1/23" name="citation_id_from_sass_path" />
<meta content="applij;4/1/23" name="citation_mjid" />
<meta content="10.1093/applin/4.1.23" name="citation_doi" />
<meta content="http://0-applij.oxfordjournals.org.aupac.lib.athabascau.ca/content/4/1/23.full.pdf" name="citation_pdf_url" />
<meta content="http://0-applij.oxfordjournals.org.aupac.lib.athabascau.ca/content/4/1/23" name="citation_public_url" />
<meta name="citation_section" content="Article" />
<!-- end of citation metadata -->

An APA Style (6th Edition) formatted citation from this metadata would look like this:

Cummins, J., & Swain, M. (1983). Analysis-by-Rhetoric: Reading the Text or the Reader’s Own Projections? A Reply to Edelsky et al.1. Applied Linguistics, 4(1), 23–41. http://doi.org/10.1093/applin/4.1.23

How can I add bibliographic metadata to my website or blog?

If you use WordPress, you’re in luck. I’ve made some modifications to my WordPress theme so that the appropriate bibliographic metadata is automatically added to the head section of each blog article.

Pre-requisites

  • A good FTP client. Filezilla is a good free and open source one.  Netbeans and Dreamweaver have FTP clients built in. If you’ve never used an FTP client before, look up some beginner tutorials to learn the basics of editing remote server files.
  • FTP access and login credentials to the web server where your blog is hosted.
  • A good text editor, e.g. Notepad++, NotepadqqGedit, GNU Emacs, etc., or an HTML integrated development environment, e.g. NetbeansBrackets, or Dreamweaver.

The metadata format for blogs is a little different from academic metadata, i.e. it uses the Dublin Core standard, but thee principles are similar. Here’s what I did:

  • I chose an existing WordPress core theme, twentytwelve, (but this should work with any theme) and created a child-theme: I created a new directory in /wordpress/wp-content/themes/twentytwelve-child/ WordPress automatically replaces files in themes with any files provided in child theme directories.
  • I made a copy of the header.php file from /twentytwelve/ and pasted it at /wordpress/wp-content/themes/twentytwelve-child/header.php
  • In a text editor, I opened the new header.php file and added the following lines of code between the PHP tags at the top of the page. This retrieves the metatdata from WordPress’ database:
// Set post author display name
$post_tmp = get_post($post_id);
$user_id = $post_tmp->post_author;
$first_name = get_the_author_meta('display_name',$user_id);
// Set more metadata values
$twentytwelve_data->blogname = get_bloginfo('name'); // The title of the blog
$twentytwelve_data->language = get_bloginfo('language'); // The language the blog is in
$twentytwelve_data->author = $first_name; //'Matt Bury'; // The article author's name
$twentytwelve_data->date = get_the_date(); // The article publish date
$twentytwelve_data->title = get_the_title(); // The title of the article
$twentytwelve_data->permalink = get_the_permalink(); // The permalink to the article
$twentytwelve_data->description = substr(strip_tags($post_tmp->post_content),0,1000) . '...'; // Take 1st 1000 characters of article as description
  • After that, in the same header.php file, between the <head> </head> tags, I added the following lines of HTML and PHP code. This prints the metadata on the article page. Please note that metadata is not visible when you read the web page because it’s for machines, not people to read. You can view it in the page source code (Ctrl + u in Firefox and Google Chrome):
<!-- start of citation metadata -->
<meta name="DC.Contributor" content="" />
<meta name="DC.Copyright" content="© <?php echo $twentytwelve_data->author; ?> <?php echo $twentytwelve_data->date; ?>" />
<meta name="DC.Coverage" content="World">
<meta name="DC.Creator" content="<?php echo $twentytwelve_data->author; ?>" />
<meta name="DC.Date" content="<?php echo $twentytwelve_data->date; ?>" />
<meta name="DC.Description" content="<?php echo $twentytwelve_data->description; ?>">
<meta name="DC.Format" content="text/html" />
<meta name="DC.Identifier" content="<?php echo $twentytwelve_data->title; ?>">
<meta name="DC.Language" content="<?php echo $twentytwelve_data->language; ?>" />
<meta name="DC.Publisher" content="<?php echo $twentytwelve_data->blogname; ?>" />
<meta name="DC.Rights" content="http://creativecommons.org/licenses/by-nc-sa/4.0/">
<meta name="DC.Source" content="<?php echo $twentytwelve_data->blogname; ?>">
<meta name="DC.Subject" content="<?php echo $twentytwelve_data->title; ?>">
<meta name="DC.Title" content="<?php echo $twentytwelve_data->title; ?>">
<meta name="DC.Type" content="Text">

<meta name="dcterms.contributor" content="" />
<meta name="dcterms.copyright" content="© <?php echo $twentytwelve_data->author; ?> <?php echo $twentytwelve_data->date; ?>" />
<meta name="dcterms.coverage" content="World" />
<meta name="dcterms.creator" content="<?php echo $twentytwelve_data->author; ?>" />
<meta name="dcterms.date" content="<?php echo $twentytwelve_data->date; ?>" />
<meta name="dcterms.description" content="<?php echo $twentytwelve_data->description; ?>">
<meta name="dcterms.format" content="text/html" />
<meta name="dcterms.identifier" content="<?php echo $twentytwelve_data->title; ?>">
<meta name="dcterms.language" content="<?php echo $twentytwelve_data->language; ?>" />
<meta name="dcterms.publisher" content="<?php echo $twentytwelve_data->blogname; ?>" />
<meta name="dcterms.rights" content="http://creativecommons.org/licenses/by-nc-sa/4.0/">
<meta name="dcterms.source" content="<?php echo $twentytwelve_data->permalink; ?>" />
<meta name="dcterms.subject" content="<?php echo $twentytwelve_data->title; ?>" />
<meta name="dcterms.title" content="<?php echo $twentytwelve_data->title; ?>" />
<meta name="dcterms.type" content="Text" />
<!-- end of citation metadata -->

Please note that I put the Dublin Core metadata twice in two slightly different formats for maximum compatibility with search engines and bibliography managers.

What about comprehensive academic bibliography metadata?

You’ll probably have noticed that the metadata I’ve included in my article pages, while sufficient for web page citations, doesn’t contain the same degree of detail as academic bibliography data (see first metadata snippet above), e.g. journal titles, ISSN’s, ISBN’s, etc.. As far as I know, there isn’t yet a way of storing that data in standard WordPress and so it more than likely needs a specialist plugin so authors can explicitly enter it to be stored and printed on the corresponding article pages. Would anyone like to develop one?

Online Cognitive Apprenticeship

A Cognitive Apprenticeship Approach to Student and Faculty Online Learning and Teaching Development: Enculturing Novices into Online Practitioner Environments and Cultures in Higher Education

cognitive apprenticeship

In a previous article, How prepared are learners for elearning? I wrote about the difficulties in identifying if learners are “ready” to study online and some suggestions for possible ways to identify the necessary knowledge, skills, and abilities for successful online learning.

I believe it would be unethical to identify or even diagnose such issues, thereby rejecting some learners who may otherwise be capable of thriving in online learning environments, without exploring some potential ways to address those issues. I’ve just created a small subsection on this blog that outlines a proposal for higher and further education oriented institutions and organisations that may help both learners and teaching practitioners involved in online communities of inquiry. It covers the following areas:

  1. Online Cognitive Apprenticeship Model
  2. Programme Aims and Objectives
  3. Organisational Structure and Context
  4. Programme Participants
  5. The Cognitive Apprenticeship Model
  6. Example Activities/Tasks
  7. Programme Delivery and Integration
  8. Evaluation and Assessment
  9. Participant Support: Necessary and Sufficient Conditions for Psychological Change
  10. The Programme as an Agent of Change
  11. References

Keywords: situated cognition, cognitive apprenticeship, meta-cognitive skills, enculturation, practitioner culture, legitimate peripheral participation, authentic tasks, reflective practice, online academic practice

Read the full proposal here: Online Cognitive Apprenticeship Model

PDF Version

pdfThere’s also a PDF version of the entire proposal from my Athabasca University Academia.edu account.

Instant, simple video conferencing for free

appear.inThe following is a quick, simple “How to… ” guide for setting up instant, free, “no frills”, easy to use, multi-way video conferencing and chat in Moodle for up to 8 people at a time. It also works on any web page as you see in the embedded room at the bottom of this article.

How to embed appear.in in Moodle

  1. Go to https://appear.in/,
  2. create a video/chat room,
  3. copy the URL link,
  4. in Moodle, create a page (Page resource module),
  5. in the Moodle HTML editor, click on the show source code button <>,
  6. copy (Ctrl + c) and paste (Ctrl + v) the following code: https://appear.in/room
  7. replace [room] with the name of the room you created in step 2,
  8. and save the Moodle page.

There are also options to claim a room as your own and lock it so that only users with the correct password can access it. If you lock a room with password protection, you can simply put the password at the top of the Moodle page where you’ve embedded the appear.in room.

If you want to record conferencing sessions, you can use one of the many screen recording applications that are available. A good free and open source one for Linux systems is Record My Desktop. Here’s a list of screen recording software for other operating systems.

What is appear.in?

According to their terms of service:

“Appear.in is a web based video conversation service that allows you to have video conversations with others in the browser simply by having individual participants typing in the same URL in the browser window. Typing in the same URL will make the participants appear in the same room where you can talk to each other with voice and text chat and see each other with transmitted video. You do not have to install any software or plugins to use appear.in. You also do not have to register or log in to use the service.

Video and sound communicated in appear.in, is only seen by the people who are present in a room at the time the content is communicated. It is not disclosed to anyone who are not present in a room. You should be aware that by default a room is open, so anyone who knows the url can enter the room simply by typing the URL in the browser. If anyone enters a room you are present in, you can see them in the room. You can prevent others from entering a room by locking the room. When a room is locked, only room owners can enter a room.

Chat messages communicated in a room can be seen by people who are present in the room when the message is sent and by people who enter the room during the same chat session. A session ends when there are no people in a room any more. At this time, all messages sent in the chat session will be deleted and can no longer be viewed by anyone.

You can claim a room as your own room. This will give you control over the room, and give you the ability to customize it for your own communication needs. When you claim a room, you enter your email address. You will then get an email containing a link that provides access to the owner privileges for the room. Room owners can customize a room e.g. by setting the background image in the room and by using other customisation options that is or may be provided in the service in the future. Only room owners can set the lock for rooms that have been claimed and the lock will be retained when everyone has left the room so you need the room code to enter back into the room. A crown symbol will be shown on the video feed of a room owner to make it apparent who is the owner.

You can follow a room by clicking the “follow” symbol. Following a room implies that you will be notified whenever someone enters a room you are following, even though you are not currently in the room yourself. You can click the notification to enter the room and have a conversation with those that entered the room.

We retain the right to create limits on use and storage at our sole discretion at any time without prior notice to you.”

Source: appear.in – Terms of Service

Example video conferencing room @ appear.in/matbury.com

https://appear.in/matbury.com

Disclaimer

I have no affiliation with appear.in or anyone associated with them. I have written this article based on my own use of the service with learners and it should not be considered as an endorsement. I am not responsible for anyone under any circumstances who decides to use the appear.in service.

Free and low-cost Moodle hosting options

MoodleEvery year, web hosting and installing web apps becomes less technically demanding, quicker, and simpler and it’s getting to the point nowadays where it’s a consumer level endeavour. Here’s a few of the easiest low-cost options for hosting Moodle that I’ve seen so far.

Disclaimer: I have no affiliation with any of the hosting providers mentioned in this article, neither am I endorsing any of their services. I’m citing them, without prejudice, as examples of types of Moodle hosting and they are by no means the best or only options that are available.

Why not use a regular web hosting service?

By “regular” I mean website hosting providers like GoDaddy, BlueHost, HostGator, etc. that are aimed at individuals and small businesses who only want to set up and blog or website to offer information, contact details, product and service catalogues, shopping carts, news, small downloads, etc.

Moodle 2.x is a large, powerful, and resource hungry piece of software. It’s a content management system, contacts and messaging management system, course management system, and can deploy multiple instances of discussion forums, wikis, blogs, presentations, documentation, multimedia resources, etc.. In other words, it requires a web hosting service that is more powerful than what most websites do. Using a regular web hosting service for Moodle is like using a car when you need a truck. The price gap between a website that runs WordPress, Joomla, or Drupal (a shared hosting service from about $5 per month) to a website that can handle Moodle (dedicated servers from about $80 per month) is a large jump and prohibitive to people who just want to try it out or run small, experimental, and/or exploratory projects (e.g. for research).

Are there cheaper ways to host or use Moodle?

Yes, there are. Here’s a few examples:

MoodleCloud[update 2015-07-05] MoodleCloud

Moodle Pty., the people who develop Moodle are now offering free Moodle accounts on their cloud hosting platform. It works in the same way as MDL2.com (see below) but has the following restrictions:

  • 50 users maximum
  • 200Mb disk space
  • Core themes and plugins only
  • Requires a mobile phone number to verify your identity

However, it does also include use of BigBlueButton, the free and open source video web conferencing and virtual classroom system for up to 6 users at a time.

Linkhttps://moodle.com/cloud/

FreeMoodle.org FreeMoodle.org

If you’re a complete beginner and just want to try out Moodle as a teacher and course content developer, and/or curriculum developer, you can get started for free with FreeMoodle.org. This service has been running consistently and, as far as I know, under the same terms of service for as long as I’ve been using Moodle (Since 2006).

Pricing: Free for your own course(s) but very limited admin controls or privileges and on your courses only.

Link: http://www.freemoodle.org/

If you don’t need an online Moodle and only want it for personal use, you can install it on your personal computer, on Windows, OS X, or Linux. Please see this article: Update: Do you want to get started with Moodle?

In the past few months, I’ve come across a couple of new Moodle hosting service providers that I think offer good value for money. They are:

MDLSpot.com

This is a shared hosting service which runs one installation of the Moodle software but creates multiple instances of Moodle so that everyone can set up their very own Moodle and have admin access and control over the entire instance (WordPress.com operates in a similar way). AFAIK, you can’t install any 3rd party plugins or extensions yourself, so you’re limited to what standard Moodle can do “out of the box” plus a few “pre-approved” plugins and extensions.

Pricing: They don’t publish their pricing but they informed me that they charge something similar to Amazon Web Services usage rates (you pay per hour for what resources you use) which starts at around $200 USD per year. I suggest contacting them to confirm exactly how much your Moodle hosting would cost and what plugins and extensions they make available.

Link: http://www.mdlspot.com/

MDL2.comMDL2.com

This is an advertising supported service, i.e. free if you allow advertising in your courses (which may or may not be appropriate). Again, you get your own “out of the box” Moodle and have admin access to it.

Pricing: Advertising supported

Link: http://www.mdl2.com/

Here’s a list of free and ad supported Moodle hosting services.

Bitnami.comBitnami.com

Bitnami.com are more than just a Moodle hosting service. They’re a full cloud hosting service provider, mostly aimed at web developers, that have also developed a number of consumer level, user friendly website installation systems and services. If you create a Moodle instance with them, you get a virtual private server (VPS) which allows you sysadmin level access. This gives you almost complete freedom to install and add whatever features to Moodle and also install other software alongside it, meaning you can do some very advanced things with Bitnami that most low-cost web hosting services don’t allow.

BTW, Moodle is designed to be run on a “LAMP stack” (Linux, Apache, MySQL, and PHP) so Windows hosting options are not advisable.

Pricing: https://bitnami.com/cloud/pricing (See the FAQs at the bottom of the page; They offer very favourable terms and conditions). A “micro instance” with Moodle installed starts at around $200 USD per year.

AWS pricing: http://aws.amazon.com/pricing/ If you’ve ever bought anything from Amazon, e.g. books, movies, electronics, or whatever, you already have an Amazon account. All you have to do is activate an Amazon Web Services account.

Link: https://bitnami.com/stack/moodle

Finally

These are just a few examples of the options available and there are many more. If you know of any others or are a service provider that offers low-cost hosting services capable of supporting Moodle (2.5 and later), please let me know.

Discussion

You can follow and participate in the Moodle.org community’s response to this article here.

Implementing star-ratings in Moodle

star-ratingsFollowing the upsurge of interest in gamification* of learning (not to be confused with “edugames”), this is a quick “How to” article for a question that seems to come up a lot these days: “How can I implement star-ratings in Moodle?”

How to implement star-ratings in Moodle

Moodle already has an elaborate, editable, and adaptable grading and rating system built in so the process is relatively simple:

  1. Log in to Moodle as an administrator (editing teachers can create scales for their own courses too)
  2. Go to Site administration > Grades > Scales
  3. Add a new scale
  4. Fill in the Add new scale form, e.g.
    • Name: Stars
    • Scale: ☆☆☆☆☆, ★☆☆☆☆, ★★☆☆☆, ★★★☆☆, ★★★★☆, ★★★★★
    • Description: (optional)
  5. Save

That’s it. Now, when you create/edit activities that support ratings, i.e. Forums, Glossaries, and Databases, the “Stars” rating will be available under the grading heading. By the way, you don’t have to limit your ratings to stars; you can also use more descriptive (text) ratings that inform learners in more meaningful ways, e.g.:

  • Scale: Please tell us more, Interesting, Insightful, Highly perceptive

or…

  • Scale: difficult to understand, fluent, complex, accurate, fluent and complex, fluent and accurate, complex and accurate, fluent complex and accurate

or…

  • Scale: I strongly disagree, I disagree, I agree, I strongly agree

or…

  • Scale: This is a bit like me, This is a lot like me, This is just like me

An important consideration to make when designing a set of ratings is how it may provide added incentives to learners to participate further in discussions, e.g. to elaborate on why they gave their particular rating to a forum post or glossary entry, or for the rating recipient to modify or elaborate on their post/entry, thereby encouraging deeper engagement and constructive discourse between learners. If learners find the ratings meaningful, helpful, and relevant to their learning needs, then they are more likely to use them to rate each others’ work (if you set the activity to allow peer rating).

Teachers can also use ratings for formative assessment, providing timely, easy to understand  feedback so that they can act upon it during the activities, thereby using ratings to initialise/invite instructional scaffolding. Here’s an example scenario:

  1. a learner posts a comment in a discussion,
  2. the teacher or a peer rates the comment,
  3. the learner has an opportunity to respond, i.e. make changes or ask for elaboration,
  4. the discussion might continue on its current trajectory or move in a new direction

* Gamification is the use of game thinking and game mechanics in non-game contexts to engage users in solving problems. Gamification is applied to improve user engagement, return on investment, data quality, timeliness, and learning. Source: Wikipedia.org