Beating rollover fever with the power of web services. Presented by Zoe Bogner, Flinders University, at MoodleMoot Australia on 24 September 2018.
In this presentation, I discuss ways in which web services can be used to automate many of the manual processes we undertake in every course rollover: importing content, meta-linking enrolments, and verifying that common activities and resources are present and adhere to policy.
2. How we roll(over) at Flinders
• Approx. 5,000 teaching topics (courses) created on Moodle each year
• Most topics copy some content from one teaching period to the next
• 45% of our topics are combined using the meta link enrolment method
• Rollover season is a great opportunity to contact every academic
• Opportunity to discuss topic design and plans for the Moodle course early
3. So many steps
Collecting requirements
Following up non-responses
Track progress in spreadsheet
Play filter wars on the shared spreadsheet
Import content
Create ‘shared’ sites
Exclude old lecture recordings
Add Turnitin assignments
Add missing content
Add meta enrolments
Name the shared course correctly
Put the course in the right category
Don’t anger the FLO Coordinator
Academic support
(the fun stuff!)
Learning design
Technology support
Training and help
5. Muppet Sing Along | Cabin Fever | The Muppets
https://www.youtube.com/watch?v=cmQwL6qiByo
6.
7.
8. Magic tricks
• Version one deployed in 2015
• PHP, Bootstrap. Keeping it simple.
• Targeting some of the most painful rollover tasks:
• Import
• Meta link enrolments
• Deleting old lecture recordings
• Adding new components, and components that can’t be imported
19. Just a few magical web services
• core_course_get_courses
• core_course_import_course
• core_course_update_courses
• core_course_get_contents
• core_webservice_get_site_info
• fl_course_get_parent_by_coursed
• fl_course_delete_by_module
• fl_enrol_add_course_meta_link
• fl_group_delete_group_by_keyword
• fl_turnitin_create_turnitintool
• fl_turnitin_create_turnitintooltwo
• fl_course_get_course_by_shortname
• fl_course_search_courses_by_keyword
20.
21. What’s next
• Automate all the things!
• Use previous data to pre-fill expected values
• Automatically perform tasks on strict timelines
• Automate many of the checks to
ensure courses meet baseline standards
http://hyperboleandahalf.blogspot.com/2010/06/this-is-why-ill-never-be-adult.html
22. The payoff
We have more time to do the important things!
We’ve saved hundreds of hours, and put them to better use.
(and we’ve saved the sanity of our staff!)
23. Let’s roll
How do you roll over?
zoe.bogner@flinders.edu.au
@ZoeBogner
Editor's Notes
Zoe Bogner
Flinders Learning Online Coordinator
Flinders University
At Flinders, we create ~5000 topics on Moodle every year. And at the start of each teaching period, we go through the huge task of rolling over content from one teaching period to the next. ---- We start by contacting academics 3 months out from the start of teaching ---- we collect their requirements. Qs like: “do you want to start with a fresh site, or copy content from somewhere else. Do you want to metalink 2 or more sites together?”
Touching base with all TCs is a very valuable opportunity for all of us. We’re able check in and ask, ‘hi, how are you going? Can we help?, Is there anything here you’re struggling with? Have you seen or tried this new thing?’ ----- It allows us opportunity to talk about their topic design & plans for teaching at the BEGINING of the process, and set the foundations to get things right from day one. However, laying these foundations in the LMS is a huge manual task for our staff.
There are so many steps in a rollover. They vary depending on the academic’s preferences and College standards. There’s a mix of simple tasks and skilled ones, and ones that are simple but require a lot of concentration. It demands focus on a repetitive, uninteresting & time consuming task for days or even weeks on end. We’re not machines. We’re humans, and as humans we’re really bad at this stuff. We lose concentration. We make mistakes.
And these demands have led to some interesting interactions with our moodle support staff.
We have those video phones on our desks (like in the Jetsons), and the staff will call me up, and straight away you can see they have this look in their eyes.
And they’re asking strange questions, claiming something is broken or different, when it’s been that way for 5 years...
It’s like their brain has melted a little bit.
It’s like they have cabin fever. Or as I like to call it, ROLLOVER FEVER
(the good kind with muppets, not the spooky movie)
And we’re not alone with this concern.
At the UK and Ireland Moodelmoot back in March this year, attendees voted....
... rollover tools among one of their most wanted Moodle features.
I brought this up with a few former colleagues who worked on our solution originally, and they said “YOU KNOW YOU’VE JUST DOBED YOURSELF IN FOR A MOODLEMOOT TALK?!”
So I’m really excited to be here sharing some of our rollover magic tricks. And I’m really excited to see this on the radar. Back around 2015, around the time I moved into the FLO Coordinator role, we deployed the first version of our own Rollover Tool. It really is a bit of magic. -----
We built in PHP, & it chains together a collection of core moodle web services, plus a few we built ourselves, to take as much of the repetitiveness out of the rollover processes as we possibly could.
Before I get carried away – if you’re not familiar with web services, maybe you’ve heard the term api. Basically this is a way for an authorized external application to request information and provide instructions to a web application, like moodle.
An example – I’m going to show code please don’t freak out -----
...is to import content from one course to another, we can use a function like this.
I haven’t included the boring parts like auth, this is just the fun bit. We tell this little function, through the bit that I’ve highlighted in yellow - a course id we want to copy from, and a course we want to copy to. Run the code and it just does the work. We don’t have to log into moodle. We don’t have to look at Moodle at all.
So we can skip all these screens.....
<import screen 1 – search>
We don’t have to look up the topic
Or tick these boxes
Or untick all the old lectures and turnitin assignments or whatever that we don’t want to roll, the tool does all that for us.
<import screen 5 – import in progress>
<import done>
We don’t have to wait around for the import.. No 4,000 seconds..
Waiting waiting
Done. But NO MORE OF THIS
Instead we use some core Moodle WS, plus a few more we’ve written ourselves, and we drive the entire rollover process through our external application, using workflows written in a way that works for Flinders.
We’ve built a number of interfaces around these WS, for academics and professional staff, to manage their rollovers and monitor the process end-to-end.
And self-management & automated workflows are the philosophy behind our rollover process. We want to minimise the time our elearing support staff are spending doing ROBOT work. We want them to concentrate on the HUMAN tasks. Not creating spreadsheets and waiting around for import jobs to finish. We want them focusing on the work that requires their expertise. The advice, the design, the decision making & the support they can provide. (It also happens to be the fun work!)
So that was 2015...
Our plan this year are to take this to the next level. -----. We think we’ve built up enough history in the tool that we can make accurate predictions around what each TC will ask for. So the Rollover Tool is going to start pre-filling these forms on behalf of the academics. We’re going to do this much earlier than we have in the past too, because it’s automatic and doesn’t require anyone to format spreadsheets or send individual emails.
Then we’re going to work to some strict deadlines. We’re going to give academics a deadline to respond (because we’re crazy brave). And after that deadline passes the rollover tool is going to roll with the information we have. That's going to buy us 2 weeks to do cleanup tasks that we can't, or haven't yet written into the rollover tool. Those two weeks were previously spent doing the manual rollovers. We now have that full 2 weeks before academics have access to their topics, to do anything we need to do.
We’re also going to beef up the reporting and automatic checks that ensure all our topics meet a baseline standard. We have certain resources, mostly LTIs and text-matching related activities that all of our Moodle courses should contain. Making sure we meet this baseline was a big part of the manual clean-up in the rollover process, and we’re making our first moves into chipping away that that part of the pile.
So all of the hours we were spending on rollovers in the past – some areas worked through their lists in solid blocks, other spread the task right out until the 11th hour or worse.
My back of the napkin calculation is it took us around 600 hours to do this before. With this tool, we’re cutting this right down. I think we’ve already cut this back by at least 75%, but I want to do more.
Until all we have left if the important work. The topic design, building engaging learning experiences. We’re not robots. We don’t want our staff doing robot work, right?!
Now, I’ve been speaking with a lot of institutions and unis over the past few weeks about how they do their rollovers. And the one single constant, is everyone is doing this differently. And that’s really hard. There’s no one tool, one tracker item or a github link that’s going to solve this problem for everyone. My tool does Rollovers the Flinders way. Because the interface and the data that’s fed in are built on assumptions and decisions that Flinders have made, they’re going to be different than the ones needed by everyone here. ---- But I know there’s components here that you may find really useful. There are web services in our tool that I plan to polish and contribute to core, because if we’ve found them useful, I think you will to.
So please, I want to hear HOW YOU ROLL. Here is my email address and twitter. I’ll be around for the whole conference. Let’s chat, and see what we can do and what we can contribute to shape rollovers in our Moodle sites. Let’s make something great. Let’s cure rollover fever :)