Forum Discussion
How to Create a FREE Leaderboard for eLearning with Google
This is the intro. Read the full article, watch the videos, and download the sample files from here: http://elearningbrothers.com/how-to-create-a-leaderboard-elearning-google/
Play with a live Storyline example here and see how you rank! http://elbrotherscustom.com/jk/blogs/leaderboard/story.html
“Gamification.” We recognize the benefits (even through all the hype) and we would like to add it to our courses. But where to begin? It is not enough just to add a game to your course. We need a way to make it social. After all, bragging rights go a long way towards reinforcing learning.
I think one of the easiest ways to tip your toe into eLearning gamification is to add a Leaderboard to your course. Leaderboards remind learners that they are not alone, others are completing the same training. They also create some friendly competition and let learners see how they rank among their peers. And often, if they rank low, they will go back and try again on all their own.
But how to add a Leaderboard? And how to do it for free? Google Sheets and a little code provide the solution. I know a lot of you use Google Docs every day. You may not realize that Google allows users to develop add-ons and applications on top of Docs using Google Apps Script (GAS). GAS looks a lot like JavaScript and it hooks into Google Docs to enable you to create all sorts of new tools. I have used it in the past to create printable certificates, detailed course interaction reports, and even a sort of scaled down LMS.
I decided to use Google Sheets and GAS to create a sort of database and API for a Leaderboard. With GAS I was able to turn a spreadsheet into a web application that will receive data from a course and send back a list of the top ten users. I added some JavaScript to my course to handle the sending and receiving from that end. I packaged it all up for you and wrote some directions, which you’ll find below. This week I am adding a Leaderboard to Storyline 2. If you are familiar with JavaScript and feel adventurous you can adapt this to work for Captivate, Lectora, HTML5, etc. And soon I will post code and videos for those tools as well.
The files linked in the resources section of this post have the GAS code and JavaScript in them. Using the instructions below (and watching the videos) you will be able to learn how to create a leaderboard for eLearning with Google:
- Create a Google Sheet
- Add GAS to the Sheet
- Setup the Sheet
- Deploy the Sheet as a Web App
- Add the required variables to your Storyline 2 course
- Trigger the JavaScript to send and receive the data
- Display the Leaderboard to learners
Read the full article, watch the videos, and download the sample files from here: http://elearningbrothers.com/how-to-create-a-leaderboard-elearning-google/
- jackloganbill1Community Member
Yes, it is great. Had (have) it up and running in less than 1/2 hour, start to finish.
Oh, that is great! Thanks for the update Jack :)
- ashokkumar5Community Member
Hi Jack I tried this and Yes this great! but if I choose- Only myself or Anyone option. I can't get scores in spreadsheet. Is there any other way to do this. because I can't get 3rd option (anyone, even anonymous) in my client google id.
- onEnterFrameCommunity Member
Hi Ashok,
Unfortunately that is the only way it will work unless you tie into
Google's User API and get your learners to sign in with their Google
account. The JavaScript posts the data anonymously (it doesn't have a
Google account).There are a few ways you maybe able to work around it.
1. Set up the whole system in your Google account and then pass
ownership of the doc to your client. I am not sure if the doc ID will
change.
2. Help your client install the code in their account. Then update your
JS with the new document ID.Thank you,
James KingsleyNeed an awesome way to collect feedback?
Don't just collect feedback. Start a conversation.
ReviewMyElearning.com
Hello Ashok - Hopefully Jack is still subscribed here and will be able to pop in and assist you here. If you do not hear back soon, please feel free to reach out to the user directly via the 'Contact Me' option on the user profile.
- Pano_KallisCommunity Member
Hi James,
It appears the leaderboard for the Storyline game you shared no longer works. In looking at the eLearning Bros site, I found the following comment by a member who had the same issue with the leaderboard screen stuck on "Loading..."
"Data wouldn’t send or receive and instead, my projects would just show the “Loading…” message. On these same projects, I noticed that the ‘/exec’ address generated by Google sheets contained ‘macros/s/u/0/’. I put the address in my browser, and found out it was incorrect. I figured out that when there’s a ‘u/0/’ in the address, the app wouldn’t work. The correctly working address always seems to just contain ‘macros/s’ (no ‘u/0’ in sight). I now delete the ‘u/0/’ section in the addresses generated and the projects and respective apps work perfectly."
Hi Pano,
In case you don't hear back from James, you may want to message him directly using the Contact me button on his profile.
Best of luck with your project!
- edutechdivaCommunity Member
I would be curious to know if anyone has fashioned a version of this for themselves that allows learners ("players") to complete milestones of a game/quest at their own pace, while the module reports their progress/score along the way, updating their established/existing leaderboard record dynamically. That is my particular challenge beyond the reporting/recalling of leaderboard stats within the game. Thanks in advance for your insight.
-tvt
- SusanLeighCommunity Member
I've been using this fantastic leaderboard code for a long time in my storyline projects but have come across a problem since upgrading to Storyline 3.
In the storyline 2 output, the %TextEntry% variable displays perfectly with every person on the leaderboard appearing on their own line. But in the storyline 3 output there are no line breaks and it is displaying as one big paragraph - making it difficult for the user to read.
Has anyone else come across this?
- onEnterFrameCommunity Member
Due to the issues with formatting the leader board in SL I have started building a separate web page to display it.
Then the course devs can insert it as a web object in the course.
- SusanLeighCommunity Member
That sounds great! The leaderboard is excellent and adds such a lot to my storyline interactions so thank you for showing us how to do it :)
- LauraIngleCommunity Member
Has anyone been able to get this to work in Storyline 360?