SlideShare a Scribd company logo
1 of 40
Download to read offline
FHO Fachhochschule Ostschweiz
Unleashing Interaction
XAPI and Moodle
SAMOO Meeting Luzern
12. Feb. 2016
@phish108 @htwblc
XAPI and Moodle
§  XAPI Plug-in
§  Exposes Moodle Logs as XAPI Streams
(Read only LRS)
§  PowerTLA Drop-In
§  Full XAPI LRS with Document Support
§  Configurable User Identification
§  Authorization Layer for Tools and Users
§  Client-side API
my baby!
Why do I want XAPI?
§  Document student activities (E-Portfolios)
§  More flexible assessment
§  Gamification
§  Personalised OER
§  Tool integration
LMS plugins are too complicated
for building cool solutions
ActivityActivityity Activity Ac
Activity Streams and Statements
Context
Actor
Verb
Object
Result
TimeAuthority
UUID
The Basic XAPI Process
Senses
learner activity
Makes VLEs
respond
Sensor Networks
Senses
learner activity
Access a resource
Take a test
Post on a forum
Update a Wiki page
Upload an assignment
LMS Sensors
click
scroll
comment
align
Senses
learner activity
GPS
Light conditions
Display orientationNoise levels
Temperature
Tactile (shake, turn)
More Sensors
NFC
Unlock a resource
Example Actuators
Makes VLEs
respond
Evaluate test scores
Provide an assignment
Update Portfolio
Message updates
Provide feedback
XAPI allows us to implement crazy
complex learning environments
VLEDigital Library
Mobile App VLE
LRS
LRS
ensor
twork
Mobile App
LRS
ensor
twork
Mobile App
LRS
Local
Sensor
Network
Mobile App
LRS
Local
Sensor
Network
VLE
LRS
VLE
LRS
VLE
LRS
Sensors
Output
Actuators
Mobler Cards App LMS E-Portfolio
System
LRS LRS LRS
nsor
twork
E-Portfolio
System
LRS
E-Portfolio
System
LRS
SCORM
Mobile App
LRS
Local
Sensor
Network
Simulation
LRS
Local
Sensor
Network
VLE
LRS
VLE
LRS
E-Portfolio
System
LRS
HR-
Mangement
System
LRS
SCORM
PLE V
LRS
LR
V
LR
CMI /
LRS
CMI /
LRS
Content
Interaction Script
Proxy Content
DRM
Just a few settings I toyed with
simple is best ...
XAPI & Interactive Content
Educational Resource
LRS
ActuatorSensor
XAPI & Interactive Content
You have to code interactive resources
HTML and JavaScript are mandatory
Moodle Theme
Client XAPI
Moodle UI API
Educational
Resource
Resource Logic
(JavaScript)
Moodle Server
Moodle
Logging
API
XAPI LRS
Moodle
Services
Moodle Auth
API
Educational Design and
Privacy Issues with Moodle
Moodle does not offer a privilege system that
supports student collaboration
§  Logs are tool- and teacher-centric
§  Each activity can have separate privilege sets
§  Privileges are not object orientated
§  Privileges are agnostic towards social relations
Hence, PowerTLA has no collaboration support
A Word on
SCORM-style CMI
AICC CMI (Computer Managed Instruction)
New CMI-5 defines XAPI extensions and runtime
requirements
§  Not always smartly, but it’s mainly for aviation people …
New CMI-5 concerns no longer client APIs
Let’s have a closer look at the
PowerTLA Client XAPI
PowerTLA Client XAPI
§  Event-based API discovery
§  Abstracts and exposes XAPI Logic
§  Context management
§  Documents
§  Provides meaningful default values
§  Actors (default: yourself)
§  Objects (default: the page you’re on)
§  Long-running and nested activities
PowerTLA Client XAPI
Interfaces (WIP)
lrs.setActor(actorObject)	
lrs.unsetActor()	
	
//	Context	Management	
lrs.startContext(contextObject)	
lrs.endContext(contextObject)	
lrs.clearContext()	
contextObject	=	lrs.getContext()	
	
//	Activity	Management	
actionUUID	=	lrs.startAction(verb,	[objectURL])	
actionUUID	=	lrs.recordAction(verb,		
																														[objectURL],		
																														[result])	
	
lrs.finishAction(actionUUID,	[result])	
	
activityStream					=	lrs.getStream()	
activityStatement		=	lrs.lastAction()	
	
//	State	Documents	
lrs.setStateDoc(actionUUID,	activityStateData)		
activityStateData	=	lrs.getStateDoc(actionUUID)	
lrs.ready(function())	
	
lrs.enableAutoFinish()	
lrs.disableAutoFinish()	
	
//	LRS	Communication	
lrs.fetchMyActions(filter,	function(stream))	
lrs.fetchUserActions(filter,	function(stream))	
lrs.fetchActions(filter,	function(stream))	
	
lrs.fetchState(function(stateDoc),		
															objectId,	actionUUID,	actorObject)	
	
lrs.push()	
lrs.pushStream()	
lrs.pushState()	
	
//	Client	Persistency	
lrs.store()	
lrs.load()		
lrs.flush()
PowerTLA turns the good old
Page-Module into Activities
The
magic
happens
here
Simple Interaction Tracking
<p	class="clickTarget	btn-large	btn-primary	span4"	type="button">Click	here</p>	
	
<script	type="text/javascript"	src="/tla/js/rsd.js"></script>	
<script	type="text/javascript"	src="/tla/js/lrs.js"></script>	
	
<script	type="text/javascript">	
var	verbClick	=	'http://xapi.ch/verb/gui/click';	
	
lrs	&&	lrs.ready(function()	{	
					//	init	sensor	
				$(".clickTarget").click(sensorFunction);	
});	
	
function	sensorFunction()	{	
				lrs.recordAction(verbClick);	
				lrs.push();	
}	
</script>	
Load the
PowerTLA
API
Resource
Logic
Normal
HTML
Simple Interaction Tracking
<p	class="clickTarget	btn-large	btn-primary	span4"	type="button">Click	here</p>	
	
<script	type="text/javascript"	src="/tla/js/rsd.js"></script>	
<script	type="text/javascript"	src="/tla/js/lrs.js"></script>	
	
<script	type="text/javascript">	
var	verbClick	=	'http://xapi.ch/verb/gui/click';	
	
lrs	&&	lrs.ready(function()	{	
					//	init	sensor	
				$(".clickTarget").click(sensorFunction);	
});	
	
function	sensorFunction()	{	
				lrs.recordAction(verbClick);	
				lrs.push();	
}	
</script>	
Verify that
PowerTLA
is available
Init the
Interaction
Sensor
Record the
Interaction
Tell
Moodle
Our XAPI
Verb
Reusing Past Interactions
var	verbClick	=	'http://xapi.ch/verb/gui/click';	
	
lrs	&&	lrs.ready(function()	{	
					lrs.fetchMyActions({verb:	verbCLick,	object:	document.location.href},	
																							actuatorFunction);	
				$(".clickTarget").click(sensorFunction);	
});	
	
function	actuatorFunction()	{	
				$("#myActionCount").text(lrs.getStream().length);	
}	
	
function	sensorFunction()	{	
				lrs.recordAction(verbClick);	
				actuatorFunction();	
				lrs.push();	
}	
	
Fetch the personal
activities from Moodle
Filter only our
XAPI verb
Filter only the
current page
Look at the
activities
Update the
actuator
Our XAPI Click Counter
Actuator
updated with
every visit
Click
Sensor
The Activity Stream
[{"id":"3909970f-0b50-401f-9e12-0511435b8721","timestamp":"2016-02-12T09
:30:54.869Z","actor":{"objectType":"Agent","openid":"https://mdl-
tst.htwchur.ch/tla/restservice/identity/profile.php/user/
YTxpSdh"},"verb":{"id":"http://xapi.ch/verb/gui/click"},"object":
{"id":"https://mdl-tst.htwchur.ch/mod/page/view.php?
id=51"},"stored":"2016-02-12T10:30:55+0100"},{"id":"ba0f8385-a642-499f-
ab4b-3a8e4707412d","timestamp":"2016-02-12T10:48:34.900Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/
restservice/identity/profile.php/user/YTxpSdh"},"verb":{"id":"http://
xapi.ch/verb/gui/click"},"object":{"id":"https://mdl-tst.htwchur.ch/mod/
page/view.php?id=51"},"stored":"2016-02-12T11:48:35+0100"},
{"id":"d17760fc-db1b-4ce6-900c-387f6a3bb24f“,	
"timestamp":"2016-02-12T13:52:52.711Z",	"actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/
restservice/identity/profile.php/user/YTxpSdh"},"verb":{"id":"http://
xapi.ch/verb/gui/click"},"object":{"id":"https://mdl-tst.htwchur.ch/mod/
page/view.php?id=51"},"stored":"2016-02-12T14:52:51+0100"}]	
Let‘s look at this
statement
The Statement more Readable
{
"timestamp" : "2016-02-12T09:30:54.869Z",
"object" : {
"id" : "https://mdl-tst.htwchur.ch/mod/page/view.php?id=51"
},
"id" : "3909970f-0b50-401f-9e12-0511435b8721",
"actor" : {
"openid" : "https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/YTxpSdh",
"objectType" : "Agent"
},
"stored" : "2016-02-12T10:30:55+0100",
"verb" : {
"id" : "http://xapi.ch/verb/gui/click"
}
},
The page we
looked at
PowerTLA controlled
Student-ID
Our XAPI verb
All this has been generated by this JavaScript
			lrs.recordAction(verbClick);	
Student
Time
Moodle
Time
Use Activities from other
Resources
var	verbClick	=	'http://xapi.ch/verb/gui/click';	
	
lrs	&&	lrs.ready(function()	{	
					lrs.fetchMyActions({verb:	verCLick,	object:	document.location.href},	
																							actuatorFunction);	
});	
function	actuatorFunction()	{	
				var	activityStream	=	lrs.getStream();	
				$("#myActionCount").text(activityStream.length);	
					//	we	can	now	analyse	the	individual	objects	in	the	activityStream	...	
}	
Remove the
object filter to
get all clicks
The Result are Cross
Activity Analytics
The Activity Stream
[...,	
				{	"id"	:	"3a09a0d3-471d-4d82-8213-842c37996697",	
						"actor"	:	{	
							"objectType"	:	"Agent",	
							"openid"	:	"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/YTxpSdh"	
						},	
						"verb"	:	{"id"	:	"http://xapi.ch/verb/gui/click"},	
						"object"	:	{"id"	:	"https://mdl-tst.htwchur.ch/mod/page/view.php?id=50"},	
						"stored"	:	"2016-02-11T21:43:21+0100",	
						"timestamp"	:	"2016-02-11T20:43:21.694Z"},	
				{	"id"	:	"3909970f-0b50-401f-9e12-0511435b8721",	
						"actor"	:	{	
							"objectType"	:	"Agent",	
							"openid"	:	"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/YTxpSdh"	
						},	
						"verb"	:	{"id"	:	"http://xapi.ch/verb/gui/click"},	
						"timestamp"	:	"2016-02-12T09:30:54.869Z",	
						"stored"	:	"2016-02-12T10:30:55+0100",	
						"object"	:	{"id"	:	"https://mdl-tst.htwchur.ch/mod/page/view.php?id=51"}},	...]	
Click on Page 50
Click on Page 51
Complex Interactions
– Nested Activities
mainUUID	=	lrs.startAction(mainActionVerb);	
lrs.startContext({"statement":	mainUUID});	
	
lrs.recordAction(nestedActionVerb);	
	
lrs.recordAction(nestedActionVerb);	
	
lrs.recordAction(nestedActionVerb);	
	
lrs.endContext({"statement":	mainUUID});	
lrs.finishAction(mainUUID);	
	
lrs.push();	
Automaticaly link all
following actions to
the main activity
Wrap things up and
gather the results
Complex Interactions In Practice
Brainstorming+Categorisation Activity
The activity is just1 interactive Moodle page
Complex Interactions In Practice
Step 1: Brainstorming
Students enter
their ideas
Students mark
when they are
ready to proceed
Complex Interactions In Practice
Step 2: Categorisation
Student ideas are
expanded with
predefined terms
Students drag&drop
the ideas into
predefined categories
Students mark
when they are
finshed
Complex Interactions In Practice
Step 3: Feedback
Immediate
Feedback and
Results
Provided Ideas
Categorisation
Accuracy
Complex Interactions In Practice
Step 4: Flow-control
(when visiting the page again)
Students can
perform the activity
only once
Students &
teachers can look
at the results
The Activity Stream
[{"id":"e3118f32-3753-4700-bb6a-4e1b5f939e13","timestamp":"2016-02-13T02:08:05.844Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-
FDKeRx"},"verb":{"id":"http://mobinaut.org/xapi/verb/creative/ideacontribute"},"object":{"id":"https://
mdl-tst.htwchur.ch/mod/page/view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-
b6d2-88883b291d66"},"result":{"extensions":{"http://mobinaut.io/xapi/result/input":"ETH	LET"}}},
{"id":"c905bac8-89d9-470d-94e7-44ad88744e76","timestamp":"2016-02-13T02:08:10.059Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-
FDKeRx"},"verb":{"id":"http://mobinaut.org/xapi/verb/creative/ideacontribute"},"object":{"id":"https://
mdl-tst.htwchur.ch/mod/page/view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-
b6d2-88883b291d66"},"result":{"extensions":{"http://mobinaut.io/xapi/result/input":"Moodle	Café"}}},
{"id":"cc5f752f-7e5c-4360-91f9-d28fd1d3df43","timestamp":"2016-02-13T02:08:14.750Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-
FDKeRx"},"verb":{"id":"http://mobinaut.org/xapi/verb/reflective/ideaassociate"},"object":
{"id":"https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-
b6d2-88883b291d66"},"result":{"extensions":{"http://mobinaut.io/xapi/result/associate":
["block1","SAMOO"]}}},{"id":"3457f69f-fcf1-4bd0-b0fb-
a72923b6bbd5","timestamp":"2016-02-13T02:08:16.157Z","actor":{"objectType":"Agent","openid":"https://
mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-FDKeRx"},"verb":{"id":"http://
mobinaut.org/xapi/verb/reflective/ideaassociate"},"object":{"id":"https://mdl-tst.htwchur.ch/mod/page/
view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-b6d2-88883b291d66"},"result":{"extensions":
{"http://mobinaut.io/xapi/result/associate":["block2","Moodle	Moots"]}}},{"id":"35010d0b-a5fd-4154-
bebb-c77d79f0f448","timestamp":"2016-02-13T02:08:17.245Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-
FDKeRx"},"verb":{"id":"http://mobinaut.org/xapi/verb/reflective/ideaassociate"},"object":
{"id":"https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-
b6d2-88883b291d66"},"result":{"extensions":{"http://mobinaut.io/xapi/result/associate":["block3","HTW	
BLC"]}}},{"id":"147037b6-8b0d-492e-a21a-80ff5378c774","timestamp":"2016-02-13T02:08:18.446Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-
FDKeRx"},"verb":{"id":"http://mobinaut.org/xapi/verb/reflective/ideaassociate"},"object":
{"id":"https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-
b6d2-88883b291d66"},"result":{"extensions":{"http://mobinaut.io/xapi/result/associate":
["block2","Blackboard"]}}},{"id":"ec488973-
a632-4347-85a5-1a0b6aa21f96","timestamp":"2016-02-13T02:08:19.805Z","actor":
{"objectType":"Agent","openid":"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-
FDKeRx"},"verb":{"id":"http://mobinaut.org/xapi/verb/reflective/ideaassociate"},"object":
{"id":"https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"},"context":{"statement":"b68b9c22-de8b-4b4c-
11 activities
recorded in
the example
Nested Activities from Step 1
{	
						"id"	:	"e3118f32-3753-4700-bb6a-4e1b5f939e13",	
						"object"	:	{	
									"id"	:	"https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"	
						},	
						"result"	:	{	
									"extensions"	:	{	
												"http://mobinaut.io/xapi/result/input"	:	"ETH	LET"	
									}	
						},	
						"actor"	:	{	
									"openid"	:	"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-FDKeRx",	
									"objectType"	:	"Agent"	
						},	
						"verb"	:	{	
									"id"	:	"http://mobinaut.org/xapi/verb/creative/ideacontribute"	
						},	
						"timestamp"	:	"2016-02-13T02:08:05.844Z",	
						"context"	:	{	
									"statement"	:	"b68b9c22-de8b-4b4c-b6d2-88883b291d66"	
						}	
			}	
Student
Input Result
Link the framing
activity via its ID
The kind of
activity
lrs.startContext()		
creates the context for
all following activities
Passed to
lrs.recordAction()
Nested Activities from Step 2
{	
						"id"	:	"147037b6-8b0d-492e-a21a-80ff5378c774",	
						"object"	:	{	
									"id"	:	"https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"	
						},	
						"result"	:	{	
									"extensions"	:	{	
												"http://mobinaut.io/xapi/result/associate"	:	["block2“,"Blackboard“]	
									}	
						},	
						"verb"	:	{	
									"id"	:	"http://mobinaut.org/xapi/verb/reflective/ideaassociate"	
						},	
						"actor"	:	{	
									"openid"	:	"https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-FDKeRx",	
									"objectType"	:	"Agent"	
						},	
						"context"	:	{	
									"statement"	:	"b68b9c22-de8b-4b4c-b6d2-88883b291d66"	
						},	
						"timestamp"	:	"2016-02-13T02:08:18.446Z"	
			}	
Categorisation Result
Link the framing
activity via its ID
The kind of
activity
The Framing Activity
{
"result" : {
"duration" : "PT0H0M21S"
},
"actor" : {
"openid" : "https://mdl-tst.htwchur.ch/tla/restservice/identity/profile.php/user/-FDKeRx",
"objectType" : "Agent"
},
"object" : {
"id" : "https://mdl-tst.htwchur.ch/mod/page/view.php?id=53"
},
"id" : "b68b9c22-de8b-4b4c-b6d2-88883b291d66",
"verb" : {
"id" : "http://mobinaut.org/xapi/verb/creative/brainstormassign+state"
},
"timestamp" : "2016-02-13T02:08:05.842Z"
}	
The ID for the result
document
The verb tells us that
there is a state
document
lrs.startAction()	&
lrs.finishAction()
automatically produce the
activity‘s duration
The Activty State Document
{	
			"correcterms":3,	
			"ownterms":["ETH	LET","Moodle	Café"],	
			"association":{	
							"block1":[{"value":"SAMOO","match":1},	
																	{"value":"Moodle	Partners","match":0}],	
							"block2":[{"value":"Moodle	Moots","match":0},	
																	{"value":"Blackboard","match":1},	
																	{"value":"Moodle	Café","match":0}],	
							"block3":[{"value":"HTW	BLC","match":0},	
																	{"value":"ETH	LET","match":0},	
																	{"value":"Moodle	User	Association","match":1}]	
			}	
}	
Assessment
Result
Brainstorming
Result
Correct
Categorisation
Wrong
Categorisation
The state document storeswhat the activity needs
Conclusions
§  XAPI allows us to create lightweight activities
for Moodle
§  The PowerTLA Client XAPI simplifies the
activity tracking for interactive resources
§  The most complex part is the interaction design
not the experience tracking
FHO Fachhochschule Ostschweiz
Christian Glahn
Blended Learning Center
@phish108 @htwblc
http://www.htwchur.ch	http://xapi.ch	
https://github.com/phish108/PowerTLA

More Related Content

Similar to Unleashing Interaction - XAPI and Moodle

Report From JavaOne 2009 - part 3
Report From JavaOne 2009 - part 3Report From JavaOne 2009 - part 3
Report From JavaOne 2009 - part 3Lucas Jellema
 
Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...
Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...
Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...Tom Hofte
 
Why apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics FrameworksWhy apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics FrameworksSlim Baltagi
 
Apache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume NodetApache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume NodetNormandy JUG
 
How xAPI is going to bring "electricity" to learning !
How xAPI is going to bring "electricity" to learning !How xAPI is going to bring "electricity" to learning !
How xAPI is going to bring "electricity" to learning !Bill McDonald
 
2004 01 10 Chef Sa V01
2004 01 10 Chef Sa V012004 01 10 Chef Sa V01
2004 01 10 Chef Sa V01jiali zhang
 
xAPI 101 - webinar slides
xAPI 101 - webinar slides  xAPI 101 - webinar slides
xAPI 101 - webinar slides Sprout Labs
 
The LEAP2A approach to portfolio interoperability
The LEAP2A approach to portfolio interoperabilityThe LEAP2A approach to portfolio interoperability
The LEAP2A approach to portfolio interoperabilitySimon Grant
 
Relational Won't Cut It: Architecting Content Centric Apps
Relational Won't Cut It: Architecting Content Centric AppsRelational Won't Cut It: Architecting Content Centric Apps
Relational Won't Cut It: Architecting Content Centric AppsJeff Potts
 
Apps thatworkandflow
Apps thatworkandflowApps thatworkandflow
Apps thatworkandflowKoen Handekyn
 
Jug Poitou Charentes - Apache, OSGi and Karaf
Jug Poitou Charentes -  Apache, OSGi and KarafJug Poitou Charentes -  Apache, OSGi and Karaf
Jug Poitou Charentes - Apache, OSGi and KarafGuillaume Nodet
 
ATD ICE 2018 Building the xAPI Ecosystem Houck & Torrance
ATD ICE 2018 Building the xAPI Ecosystem Houck & TorranceATD ICE 2018 Building the xAPI Ecosystem Houck & Torrance
ATD ICE 2018 Building the xAPI Ecosystem Houck & TorranceTorranceLearning
 
Hadoop Frameworks Panel__HadoopSummit2010
Hadoop Frameworks Panel__HadoopSummit2010Hadoop Frameworks Panel__HadoopSummit2010
Hadoop Frameworks Panel__HadoopSummit2010Yahoo Developer Network
 
Building and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowBuilding and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowKaxil Naik
 

Similar to Unleashing Interaction - XAPI and Moodle (20)

Report From JavaOne 2009 - part 3
Report From JavaOne 2009 - part 3Report From JavaOne 2009 - part 3
Report From JavaOne 2009 - part 3
 
Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...
Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...
Mind The Gap - Mapping a domain model to a RESTful API - OReilly SACon 2018, ...
 
xAPI Vocabulary - Improving Semantic Interoperability of Controlled Vocabularies
xAPI Vocabulary - Improving Semantic Interoperability of Controlled VocabulariesxAPI Vocabulary - Improving Semantic Interoperability of Controlled Vocabularies
xAPI Vocabulary - Improving Semantic Interoperability of Controlled Vocabularies
 
Why apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics FrameworksWhy apache Flink is the 4G of Big Data Analytics Frameworks
Why apache Flink is the 4G of Big Data Analytics Frameworks
 
Cfalfresco
CfalfrescoCfalfresco
Cfalfresco
 
Apache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume NodetApache, osgi and karaf par Guillaume Nodet
Apache, osgi and karaf par Guillaume Nodet
 
How xAPI is going to bring "electricity" to learning !
How xAPI is going to bring "electricity" to learning !How xAPI is going to bring "electricity" to learning !
How xAPI is going to bring "electricity" to learning !
 
2004 01 10 Chef Sa V01
2004 01 10 Chef Sa V012004 01 10 Chef Sa V01
2004 01 10 Chef Sa V01
 
EPUB 3 and xAPI
EPUB 3 and xAPIEPUB 3 and xAPI
EPUB 3 and xAPI
 
xAPI 101 - webinar slides
xAPI 101 - webinar slides  xAPI 101 - webinar slides
xAPI 101 - webinar slides
 
The LEAP2A approach to portfolio interoperability
The LEAP2A approach to portfolio interoperabilityThe LEAP2A approach to portfolio interoperability
The LEAP2A approach to portfolio interoperability
 
Function as a Service
Function as a ServiceFunction as a Service
Function as a Service
 
Relational Won't Cut It: Architecting Content Centric Apps
Relational Won't Cut It: Architecting Content Centric AppsRelational Won't Cut It: Architecting Content Centric Apps
Relational Won't Cut It: Architecting Content Centric Apps
 
Apps thatworkandflow
Apps thatworkandflowApps thatworkandflow
Apps thatworkandflow
 
Jug Poitou Charentes - Apache, OSGi and Karaf
Jug Poitou Charentes -  Apache, OSGi and KarafJug Poitou Charentes -  Apache, OSGi and Karaf
Jug Poitou Charentes - Apache, OSGi and Karaf
 
ATD ICE 2018 Building the xAPI Ecosystem Houck & Torrance
ATD ICE 2018 Building the xAPI Ecosystem Houck & TorranceATD ICE 2018 Building the xAPI Ecosystem Houck & Torrance
ATD ICE 2018 Building the xAPI Ecosystem Houck & Torrance
 
Hadoop Frameworks Panel__HadoopSummit2010
Hadoop Frameworks Panel__HadoopSummit2010Hadoop Frameworks Panel__HadoopSummit2010
Hadoop Frameworks Panel__HadoopSummit2010
 
Building and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache AirflowBuilding and deploying LLM applications with Apache Airflow
Building and deploying LLM applications with Apache Airflow
 
Spsmi13 charts
Spsmi13 chartsSpsmi13 charts
Spsmi13 charts
 
RavenDB overview
RavenDB overviewRavenDB overview
RavenDB overview
 

More from Christian Glahn

Personalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit MoodlePersonalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit MoodleChristian Glahn
 
Digitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und MoodleDigitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und MoodleChristian Glahn
 
Dialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen GruppenDialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen GruppenChristian Glahn
 
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...Christian Glahn
 
Future Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovationFuture Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovationChristian Glahn
 
Flexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernenFlexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernenChristian Glahn
 
Mobiles Lernen gestalten
Mobiles Lernen gestaltenMobiles Lernen gestalten
Mobiles Lernen gestaltenChristian Glahn
 
The Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University StudentsThe Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University StudentsChristian Glahn
 
Getting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral ConsortiumGetting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral ConsortiumChristian Glahn
 
Design Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced LearningDesign Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced LearningChristian Glahn
 
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...Christian Glahn
 
Design Thinking for Learning Analytics
Design Thinking for Learning AnalyticsDesign Thinking for Learning Analytics
Design Thinking for Learning AnalyticsChristian Glahn
 
Learning Design for Teachers in a Hurry
Learning Design for Teachers in a HurryLearning Design for Teachers in a Hurry
Learning Design for Teachers in a HurryChristian Glahn
 
Integrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech EcosystemsIntegrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech EcosystemsChristian Glahn
 
How short can you make learning?
How short can you make learning?How short can you make learning?
How short can you make learning?Christian Glahn
 
Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2Christian Glahn
 
Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1Christian Glahn
 
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...Christian Glahn
 
Augmented Learning for the Digital Campus
Augmented Learning for the Digital CampusAugmented Learning for the Digital Campus
Augmented Learning for the Digital CampusChristian Glahn
 
Blended Learning Konkret
Blended Learning KonkretBlended Learning Konkret
Blended Learning KonkretChristian Glahn
 

More from Christian Glahn (20)

Personalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit MoodlePersonalisierung, Learning Design und Automatisierung mit Moodle
Personalisierung, Learning Design und Automatisierung mit Moodle
 
Digitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und MoodleDigitale Lehre jenseits von Zoom und Moodle
Digitale Lehre jenseits von Zoom und Moodle
 
Dialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen GruppenDialog und Prüfen im Flipped Classroom mit grossen Gruppen
Dialog und Prüfen im Flipped Classroom mit grossen Gruppen
 
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
Adaptive Learning Experiences across Devices: Leveraging Multi-Modal Learnin...
 
Future Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovationFuture Skills - Targetting curriculum innovation
Future Skills - Targetting curriculum innovation
 
Flexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernenFlexibel in neuen Kontexten lernen
Flexibel in neuen Kontexten lernen
 
Mobiles Lernen gestalten
Mobiles Lernen gestaltenMobiles Lernen gestalten
Mobiles Lernen gestalten
 
The Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University StudentsThe Multiple Apps and Devices of Swiss Freshmen University Students
The Multiple Apps and Devices of Swiss Freshmen University Students
 
Getting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral ConsortiumGetting Ready for the EC-TEL Doctoral Consortium
Getting Ready for the EC-TEL Doctoral Consortium
 
Design Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced LearningDesign Thinking for Technology Enhanced Learning
Design Thinking for Technology Enhanced Learning
 
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
Designing Mobile Inquiry-based Learning Activities: Learners' Agency and Tech...
 
Design Thinking for Learning Analytics
Design Thinking for Learning AnalyticsDesign Thinking for Learning Analytics
Design Thinking for Learning Analytics
 
Learning Design for Teachers in a Hurry
Learning Design for Teachers in a HurryLearning Design for Teachers in a Hurry
Learning Design for Teachers in a Hurry
 
Integrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech EcosystemsIntegrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
Integrating Native Mobile Apps into Institutional Ed-Tech Ecosystems
 
How short can you make learning?
How short can you make learning?How short can you make learning?
How short can you make learning?
 
Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2Getting Ready for the ECTEL Doctoral Consortium, Part 2
Getting Ready for the ECTEL Doctoral Consortium, Part 2
 
Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1Getting Ready for the ECTEL Doctoral Consortium, Part 1
Getting Ready for the ECTEL Doctoral Consortium, Part 1
 
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
10th eduhub days, 18 years Swiss Virtual Campus - looking back and looking fo...
 
Augmented Learning for the Digital Campus
Augmented Learning for the Digital CampusAugmented Learning for the Digital Campus
Augmented Learning for the Digital Campus
 
Blended Learning Konkret
Blended Learning KonkretBlended Learning Konkret
Blended Learning Konkret
 

Recently uploaded

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 

Recently uploaded (20)

PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 

Unleashing Interaction - XAPI and Moodle