Monthly Archives: July 2019

LTI 2.0 Removed from Sakai-20 master and nightly

LTI 2.0 has been removed from Sakai in anticipation of Sakai-20 (https://jira.sakaiproject.org/browse/SAK-41789)

It is up in master on github and the Sakai-20 nightly server.

It took most of one day (Last Thursday at LAMP Camp) and the rest was testing and making sure.

I removed over 20% of the LTI code in Sakai (>7000 lines removed).

I updated all the QA test plans and wrote some test plans, and wrote some “how to documentation”.

https://github.com/sakaiproject/sakai/tree/master/basiclti/basiclti-docs/resources/docs
https://github.com/sakaiproject/sakai/blob/master/basiclti/README.md

With help from Andrea I went through all the QA tests to make sure they were up-to-date and to my surprise everything worked in my testing. I did find and fix two small bugs that had crept into the remaining LTI 1.x code – so that was nice. These fixes are already in master this morning as well.

While it has worked great in my testing, I want everyone to be vigilant and test LTI in Sakai as much as you can. We will definitely do a solid QA of LTI as part of Sakai-20 but if something feels weird let me know.

For the Tsugi folks using Java tsugi-util library from the Tsugi distribution, I will wait a few weeks and then port these changes to tsugi-util master:

https://github.com/tsugiproject/tsugi-util

It is mostly deletions. The only real change is that the ContentItem class in tsugi-util went from the org.sakaiproject.lti2 package to the org.sakaiproject.basicltii package. It never belonged in the lti2 package – but I built it while I was building lti2 so I put it there.

Reflection

It is kind of bittersweet in that it took me three years of almost 100% of my Sakai effort to develop the LTI 2.0 spec and build the Sakai implementation and less than six hours to remove it. But it is always good to remove complex and unused code from production software.

One of these mornings with a good cup of coffee and a little time, I will write a blog post about the lessons we can learn from the failure of the LTI 2.0 spec – but for now we are moving on to focus on LTI Advantage – as it should be.

Sakai 19.2 Released

(This message came from Wilma Hodges – the Sakai Community Coordinator)

I’m pleased to announce that Sakai 19.2 is released and available for downloading [1]!

Sakai 19.2 has 125 improvements [2] including

  • 23 fixes in Tests & Quizzes (Samigo)

  • 22 fixes in Gradebook

  • 17 fixes in Assignments

  • 16 fixes in Lessons

  • 12 fixes in Forums

  • 5 fixes in Rubrics

Other areas improved include:

  • A11y

  • Basic LTI

  • Calendar

  • Chat Room

  • Content Review

  • Dropbox

  • I18n

  • Messages

  • Preferences

  • Quartz Scheduler

  • Resources

  • Roster

  • Section Info

  • Sign Up

  • Site Info

  • Syllabus

  • Wiki

  • Worksite Setup

There were 3 security issues fixed in 19.2 (details will be sent to the Sakai Security Announcements list).

Please also note the upgrade information page [3] for important notes related to performing the upgrade. 2 Quartz jobs need to be run to complete the conversion steps for Sakai 12, including a new one for the Job Scheduler in 12.1.

[1] Download information- http://source.sakaiproject.org/release/19.2/

[2] 19.2 Fixes by Tool – https://confluence.sakaiproject.org/display/DOC/19.2+Fixes+by+tool

[3] Upgrade information – https://confluence.sakaiproject.org/display/DOC/Sakai+19+Upgrade+Information 

Building Tsugi Learning Tools – The Experience

The Tsugi project (www.tsugi.org) is providing a software environment to enable a wide range of educational technology use cases. Tsugi was developed to simplify the development of educational tools and to allow those tools to be deployed in an “App Store” pattern using standards like IMS Learning Tools Interoperability, Common Cartridge, Deep Linking (Content Item), and LTI Advantage. This will be two presentations in one. One thread of the presentation will cover how Tsugi uses the latest standards to implement a LMS agnostic Next Generation Digital Learning Environment (or is that Experience). All the while during the presentation, those in the audience who want to experience building a tool, will put up a server, and create a simple Python-based learning tool and integrate it into the Sakai nightly server. The attendees can be as active as they like.

Abstract for the 2019 LAMP camp