Educational gaming for Moodle.

Re: Educational gaming for Moodle.

by Matt Bury -
Number of replies: 17
Picture of Plugin developers

Hi Ryan,

Re: "being able to goto some website pick a game and drop it into moodle. and have it interact with moodle."

-- Adding activities to Moodle and having Moodle record learners' interactions with them, e.g. duration, grades, and/or generated artifacts, requires some kind of wrapper module that can act as an interface, capturing the data output from the 3rd party activity and then translating it into something that Moodle can use. The usual sequence for activity modules is:

  1. Teacher creates an activity instance and configures it. I this case to deploy a 3rd party learning interaction.
  2. Instance creates a grade item in Moodle's grade book.
  3. The learner uses the activity instance, generating data.
  4. Moodle logs record that the learner has accessed the instance as well as other salient usage data (for tracking purposes). The activity module developer must explicitly write the code to inform Moodle about users' activities for the logs, so this can be as detailed or sparse as you like.
  5. The learner's activity may generate some learning outcomes/assessment data. This must be captured by the wrapper activity module and sent to Moodle's back end, where it can be "translated" into suitable data to put into Moodle's grade book and/or other database tables.

In order for 5. to work, you need to know exactly how the 3rd party activity works and what the output data from it is, what format it's in, and what it means. This is why many wrapper activity modules for 3rd party apps are for one particular app or set of apps only. The only general activity module that is standardised to accept a wide range of learning activities is the SCORM module. However, all 3rd party activities must be SCORM compliant and the output/generated content and artifacts must conform to the SCORM specification, which was designed many years ago in the "bad old days" of test-oriented elearning for the military.

The Moodle Scratch filter doesn't integrate the Scratch Java applets with Moodle's back end, as far as I know. It's also no longer supported past Moodle 2.2. Poodl (suite of modules), NanoGong, and SWF Activity Module are supported and do provide integration with Moodle.

I hope this helps!

Average of ratings: Useful (1)
In reply to Matt Bury

Re: Educational gaming for Moodle.

by ryan sanders -

hey Matt, things began to click for what ever reason after reading your post! thanks!

i still just cringe when i read wrapper. 

sent an email to www.tincanapi.com to see about some sort of "rules/triggers"  aka "events, conditions, actions" and be applied to Tin Can API.  if it happens at TIN CAN API specifications. it would take a larger burden. off my shoulders.  seeing that there website was recently updated. and a list of adopters of it on there front page

it would seem a lot extra examples can be found at https://twitter.com/ProjectTinCan,  

someone has a plugin for tin can api https://moodle.org/plugins/view/mod_tincanlaunch Monday, October 13, 2014, 6:43 AM for moodle ver 2.5 might be something there.

===========

if TIN CAN API can get some sort of "event", "condition", "action"  and sharing some information via. https://github.com/bobthecow/ruler  like notations. but via json / xml. for the TIN CAN API.  more information might get moving for 2 way communication, and ability to adjust stuff on the fly. in both directions.  at moment i am just seeing data itself being passed back and forth. via json / xml. 

In reply to ryan sanders

Re: Educational gaming for Moodle.

by ryan sanders -

on a different note a few of my collage teachers, i remember stating something like all they got was hey you are hired. for this role. fend for yourself. and needing to order books for students and going through them and deciding what to choose within a couple weeks time, so books could be ordered and students buying/picking them up at local collage book store, along with finding information for students to work on.  via worksheets / assignments, etc....  i also remember teachers grabbing from multi books. and complaining about information not up to date. or covers things very well. i would like to say there was some "paper work" how much i do not know. of teacher sending info to collage. of what they were going to cover and when they were going to cover it. 

but then there was a couple other collage teachers. that had different requirements. "higher blah blah paper work" they had to go by.  stuff already in place. this is more for classes that had already been around for some time ((non IT / tech stuff)) language, math and like. 

In reply to ryan sanders

Re: Educational gaming for Moodle.

by Natalie Denmeade -

Andrew Downes is the man to learn from about Tin Can Api. He wrote the plugin in the Moodle database and has a great website and an iMoot presentation available. Seems Andrew has recently move to work with Tin Can full time. That is great news for education. I tried implementing Tin Can Api statements and succeeded. The instructions were very thorough. There is so much potential there, its great to see eager minds exploring it Ryan!

http://tincanapi.co.uk/

I made a poster a few years ago on Moodle and gamification. I have redesigned it to summarise  options for games in Moodle. What do you think?

http://bit.ly/1Dto9PY

http://bit.ly/1K6rEVB




In reply to Natalie Denmeade

Re: Educational gaming for Moodle.

by ryan sanders -

Natalie

if you could print the picture out on say 1 or 2 pages with glossy paper. and hand out at say a conference. that would be a very informative doing!

being on internet and being able to link to it even better!  suggest doing a "insert image" into this thread. 

thx for video BEH!  no wonder why i'am having problems with TIN CAN API.  "i did this" vs "event, condition actions",  and use of "verbs" vs sentence structure explanation. or rather Rules ECA explanations. 

i got through 25 minutes worth of video.  running out of internet usage for the billing period... and i thought kids/teenagers were bad. *yikes*

In reply to ryan sanders

Re: Educational gaming for Moodle.

by Natalie Denmeade -

 I made a similar poster on gamification a few years ago which did get distributed and translated into four languages!  See: bit.ly/mfm2013 . This focused more on player motivation and encouraged diversity in assessment choices.

And yes I do take it to conferences. I am a regular presenter at Moodle Moot and iMoot. I have recordings online explaining it in depth smile Last year at Cairns I facilitated two workshops on gamification and was surprised to see so many people from the uni sector interested. 

ps. The embedded images took up too much room as they had to be large enough to read the font.

In reply to Natalie Denmeade

Re: Educational gaming for Moodle.

by Matt Bury -
Picture of Plugin developers

Firstly, I hope Tin Can API has found a way to get over SCORM's narrow definition of a learning interaction where every solution to a learning objective is a test. Never mind teaching to the test, SCORM is teaching with tests.

I also hope the folks at ADL have learned their lessons from SCORM's mixed reception over the years and are making the new Tin Can API more accessible to software developers and curriculum developers. Here's an extract from a blog post I wrote a while back:

"Finally, SCORM is incredibly complicated and difficult to understand. Here's an extract from a user's post on Moodle SCORM support forums:

"Right now I'm trying to figure out how to do basic SCORM compliancy (e.g. I have an authorware file with pictures of my cats and their names, buttons are there, one even has a quiz question)  How do I go from there to saying "Haha!  This is SCORM Compliant!  These are the steps to follow to ensure our product complies and we get paid!”  I've downloaded the tools off of adlnet, and I'm driving myself crazy at this point.”

And the reply:

"I feel your pain. I spent the last two years hoping for such a solution, and the bottom line is that the solution only exists by pouring over the documentation on the ADLnet.org site. Here's the nutshell, but if you do a project for the navy with only this information, you will run into trouble. The best I can do for you is point you to ADLs "SCORM 2004 Conformance Requirements” pdf file and offer my consulting services. I lived on the ADL product downloads page while I was learning to develop for the SCORM.”

I think that with the amount of time and resources an organisation could spend on adopting SCORM and providing IT support, it might in some cases, be more cost effective to develop proprietry frameworks for authoring and deploying e-learning interactions. It would certainly be less time-consuming to use one of the many alternatives available."

Additionally, Moodle HQ had to hire a specialist SCORM developer to make it work with Moodle. They couldn't work it out for themselves and the folks at Moodle HQ and the Moodle community are no slouches.

Also, Oxford University Press noted that they had to make different SCORM packages for different LMS' because SCORM was so complicated that nobody seemed to be interpreting it the same way. Buyers needed to know if the packages were Blackboard SCORM, Moodle SCORM, or some other SCORM. To me, that defeats the whole point of having interoperable standards.

Advice? If the solution you're looking for is a test, then SCORM is probably what you're looking for. Buy one of the many SCORM compliant rapid elearning IDEs, e.g. Adobe Captivate or Raptivity, and do the best you can with that. Unless you're going into large scale production (where you'll have dedicated full-time professional developers and curriculum developers), it'll save you a lot of pain, dead-ends, and wasted time. But before you choose SCORM, make sure that Moodle's own quiz module can't already do it. Using Moodle's native tools is preferable in my opinion.

Hurray for Moodle's quiz module! But don't over-use it. Remember the bit above, "SCORM's narrow definition of a learning interaction where every solution to a learning objective is a test. Never mind teaching to the test, SCORM is teaching with tests."?

Source: http://blog.matbury.com/2009/02/16/scorm-the-pros-and-cons/

Average of ratings: Useful (2)
In reply to Matt Bury

Re: Educational gaming for Moodle.

by Natalie Denmeade -

Matt,

There are some good discussions here on Moodle.org about xAPI and LRS which is quite a complex subject worthy of it's own topic.   I spent quite a bit of time exploring xAPI and eventually realised that it is a shame it is being sold as another version of SCORM. The two have little in common as the approach is so totally different. There is no content in xAPI - it is the protocol for exchange of data. The LRS is the record store. So the content has to be somewhere else. It is more flexible than SCORM as the actual content and structure of that content is not prescribed. Only the way that the final data / results are stored. It's more like a giant Moodle events log. It can be generated from a number of sources online /offline and collated into a central record. This can already be achieved in Moodle through LTI or Scorm.

High level development skills  are required to generate valid Tin CAN statements. Certainly not in the domain of teachers! I am hoping apps like H5P do that level and then create a top layer for teachers to add specific content. Form that point of view it is more complex than SCORM. 

For longer learning interactions using Articulate or Captivate and exporting as TIN CAN Api compliant will be the same process as producing SCORM now. I totally agree that core Moodle can do a lot of what these products offer. The responsive themes we use now are much better to navigate. It is so much easier to stay within Moodle and add pages, lessons or quizzes. At the moment I am sitting on the fence on whether Moodle needs to be an LRS, or connect to one. If I had to choose I would say that it already offers similar solutions in a much simpler way. LRS need a reporting interface to understand all of that data being generated. Moodle has awesome inbuilt reports already done so it is years ahead in that respect.


Average of ratings: Useful (1)
In reply to Natalie Denmeade

Re: Educational gaming for Moodle.

by Andrew Downes -

Did somebody mention "Tin Can"? smile

Great to see you guys discussing Tin Can and that Natalie is doing a great job of explaining things. Certainly Tin Can is a lot more flexible than SCORM and is able to track a much wider range of activities. I'd love to see it if one day all the events in Moodle's logging system could be tracked with Tin Can and sent to an LRS to be analysed in comparison to data from outside the LMS. 

On the Moodle launch plugin, somebody mentioned that it's targeting Moodle 2.5. This is true, but I'm yet to find a Moodle version it doesn't function with. There's also some work happening right now to convert the deprecated add_log_log calls to use the new Event classes that are the way things are done in Moodle 2.7+. 

If anybody wants to contribute to development of that plugin or to putting Tin Can into Moodle in general, feel free to get in touch and ask me how!



Average of ratings: Useful (2)
In reply to Andrew Downes

Re: Educational gaming for Moodle.

by Andrew Downes -

Oh, i should also mention: 

People have expressed concerns about the work required to implement SCORM and to achieve interoperability. 

With Tin Can, we deliberately made it so that as much of the complexity is put on the LRS as possible. This means that building an LRS within Moodle would be hard (but why bother anyway - use an existing one and plug it in!) but that it's relatively straightforward for a client activity provider to send and receive Tin Can data. In fact using our client libraries, we've had reports of people getting basic Tin Can tracking going in less than 30 minutes. The hardest part of tracking Moodle events with Tin Can will be getting the data out of the Moodle database, not sending that data to the LRS. 

That said, interoperability is still a hard problem. SCORM made it easier (even though it was still very hard) and Tin Can and our code libraries makes it even easier, but it is still hard. When tracking from Moodle we'll have to consider very carefully what data we send and how that will be handled by systems reading and using that data. 

Average of ratings: Useful (2)
In reply to Andrew Downes

Re: Educational gaming for Moodle.

by dawn alderson -

Andrew, hi

this post might be off kilta....but I think worth the while.

When you say:

 1. With Tin Can, we deliberately made it so that as much of the complexity is put on the LRS as possible. To me this looks fab...I can't see a problem only nice possibilities.

2. This means that building an LRS within Moodle would be hard....I assume this is because of the OS nature of moodle-right? If not...why hard? Looking at the diagram.....those four components-the simulator -is that the tricky part?...or is it to do with the db design/functionality in moodle? 

3.  (but why bother anyway - use an existing one and plug it in!)  Not the most convenient of options if truth be told.

4. The hardest part of tracking Moodle events with Tin Can will be getting the data out of the Moodle database, not sending that data to the LRS.  Linked to 2-again I assume?

Attachment learning-data-delivered-to-LRS.png
Average of ratings: Useful (1)
In reply to dawn alderson

Re: Educational gaming for Moodle.

by ryan sanders -
Hey Andrew Downes
  1. Tin Can ApI -> LRS (learning record store)  about all i can tell about it, is it would be good for like a "skill tree editor" in a game.
  2. overall all i see is tin can Api is passing data. there is no communication layer / protocol layer.  when i goto look at a network layer example TCP/IP it has a few layers within it.
  3. if i look at moodle. or any software tincan API relies on. as soon as a third party developer creates a new plugin, for example http://moodle.org/plugins Tin Can API just became outdated. 

in above, what am i missing, were am i not connecting the dots? 


In reply to ryan sanders

Re: Educational gaming for Moodle.

by Andrew Downes -

Hi Ryan,

I'm afraid I don't follow at all. Can you explain a bit more of what you're saying and/or asking? 

Just to check that we're talking about the same thing, Tin Can API is this: tincanapi.com whereas TCP/IP is something completely different that's related to how the internet fundamentally works. 

In reply to Andrew Downes

Re: Educational gaming for Moodle.

by ryan sanders -

Hey Andrew

sorry about previous post. off in my own little world. 

below links (work in progress)

i need "rules events, conditions, actions" at the tincanapi so i can pass entire set of "rules" back and forth between software.  and i need to be able to load up "custom sentence structures"  (not just pre-defined verbs).  see https://github.com/bobthecow/ruler   scroll down to "combine rules" and other logic of bobthecow/ruler in tincanapi.  i need to pull up a list of variables and there types from one software, and push them into another software, and have them load up in different rule sets (custom sentence structures).  

i need the visual programming found in scratch.mit.edu  as well as the Rules ECA (event, conditions, actions) i need to push/pull (2 way communication) between software.  so if say a monster in scratch.mit.edu dies. i need to be able, to pull up a list of monsters, with an option "unit dies" in moodle (still in research advanced editor).  these have nothing to do with pre-defined verbs, events. i need to load them up via xml,json, in the communication layer. and passing of data and logic if, then, else, foreach, dowhile stated and defined in tincanapi. i need the basic math functions, and comparison operators. as well.

if i take an "object" OOP (object oriented programming) and pass it into a JSON.  so i get say monster(health(min:50, max:100),monster_type:undead,name:codjer) from a game engine, i need tincanapi.  to pass monster type, health type, name array through xml to another software. so i can load up a different "customized sentence structure" and be able to drill down. so that i could make a statement of..  if monster("codjer") grade is between (30 and 100) then send email to student("johns") or if student(mike) dies then make a mark in gradebook(student(mike), grade(F)) ya sentence structure kinda funky in examples, but that is what i am looking for.  i am not looking for tincanapi to define verbs for me. i need to be able to make "sentence structures" for myself. and be able to send sentence structures back and forth between software. so i can see if UNIT DIES then do THIS ... if (event_type(object_type)), (condition_type), then do (action_type) in moodle. 

when i goto tincanapi.com all i am seeing is a long list of verbs that covers a lot of things. but i am not see anything of the above.  hey i get the list of verbs. and (do not remember if all i saw was just event, or just action types). i am not seeing the extra, i was hoping to see. and wondering if i am just not connecting the dots some place?  or if i am looking at something simpler. that would qualify more like a "skill tree editor" in some game. were it has more of a limited very defined structure to it. and that is structured directly to the game engine, and that structure can not be used out side of the game engine. 

my internet is on a fritz. they are working on gateway unit, is what i have been told sad  hopefully this goes through, and does not result in a double post.

Average of ratings: Useful (1)
In reply to ryan sanders

Re: Educational gaming for Moodle.

by ryan sanders -
adding another example to my last post.


if say www.wikipedia.org inserted some <xml>  into there website. that denoted (rules ECA).  so that a teacher, could pull link up into moodle. from www.wikipedia.org and obtain a list of "event types, condition types, action types" from the page.  along with a list of variable types.  all through xml  otherwords through tincanapi.  then as a teacher, within moodle. and setting up some activity for students to read about history of (_fill in blank_) and being able to capture what that page gives for events, conditions, actions. i could say hey. student needs to read for X length of time. or do a page edit to a wiki page. or find out if page has to many words above person "reading level"   i need other software, and the developers to offer up the rules (ECA) in there own words.  and then i need to be able to at management systems, such as moodle or a LRS (learning recording store) software. be able to push/pull rules ECA. and adjust things.  in a visual programming way such as scratch.mit.edu, and many other websites like it.

i should not need to create a custom plugin for each software. in there native programming code. it would be nice to simply pass rules ECA back and forth.  and let each software have there own rules eca code in them. 

In reply to ryan sanders

Re: Educational gaming for Moodle.

by dawn alderson -

is it not worth thinking about starting small?  TinCanAPI....it is obvious to me that LRS/LMS communications need to be finely grained for what you want Ryan.....sentence structures....and while I may be wrong.....sentence structures come with semantics....(more depth-as opposed to verbs)...I said I could be wrong, of course.

Alternative thinking for joining the dots (poss)=  H5P and some further innovation with conditional activities.....I think the latter has scope to offer a much broader repertoire of choices/functions-building on the premise of what it is set up to do. 

In reply to Andrew Downes

Re: Educational gaming for Moodle.

by Natalie Denmeade -

Hi Andrew,

Thanks for joining in.. this is really feeling like a giant dinner table with cross conversations going on  - and you never know who is listening ;)

As you are here... can I ask... if I have a test LRS set up on Watershed demo should it work with the Moodle plugin to show an activity stream? Will it show a range of activities eg Moodle activities that are tin can api compliant, the book marking tool, and the checklists from my Watershed account?  I have entered the LRS end point and authentication details but still get no results - just  a blank box (Moodle 2.7). (Perhaps I should be posting this question somewhere else.)

I have used Rustico's Scorm cloud successfully but tried to install Learning Locker on Amazon Cloud hosting but got lost somewhere with security keys. If Watershed is limited as a demo only is there a free simple LRS I can use for proof of concept?

I was googling some links for Ryan  and see that you have joined the TIn Can Api team. That is great news! I researched Tin Can for quite a while a few summers ago and really found some clarity when I came across your tincanapi UK site. The whole solution is really quite simple... but a shock coming from such a a complicated background as the  SCORM world.


In reply to Natalie Denmeade

Re: Educational gaming for Moodle.

by Andrew Downes -

Hi Natalie,

The best place to ask about the plugin is github https://github.com/garemoko/moodle-mod_tincanlaunch/issues or to email me directly andrew.downes@tincanapi.com. As a rule I don't follow Moodle forums due to the inability to subscribe to a single thread so that's a bad way to contact me! I picked this up because it's on the internet and you used the term "tin can api" so it came up in my daily Google search. 

On to your question, if you got the plugin working in Cloud, they should also work with Watershed the same way. And yes the learner stream plugin should pull in all the data from Watershed, not just data from Moodle. I have this set up and working with Watershed and whatever version of Moodle is on my laptop (2.8 I think). Are you logged on to Moodle with the same user account (email) as the actor in the statements? I believe the plugin only shows the current user's own statements. 

The learner stream plugin is probably a little quirky though - it's only really an early prototype and needs a lot of work to be useful.