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

What is all the Fuss About Python?

The Python programming language has been around for over 20 years but these days it feels like it is an overnight sensation.   Python has moved from being a fringe language for beginners, biologists, and natural language analysis to being the go-to language in nearly every domain of computing.  Whlie there is a lot of inertia in the choice of a programming language for a project, the adoption pattern of Python is quite different than “that cool new language that came out a few years ago”.  While most new programming languages are exciting for early adopters, by the time they are a few years old, many early adopters have moved on to the next big thing and the languages never find their way into the mainstream.  Python seems different – Python seems to have a solid and continuously growing market share – and in particular Python seems to invade and take over application areas previously dominated by well-established technologies.  We will look at some of the inherent aspects of Python that make it “sticky” – once you go Python you rarely go back or go anywhere else.  This presentation will also look at the world’s largest programming course (in Python) and how the course fits into the Python movement and how the course benefits from Apereo Open Source Software, Open Educational Resources, and the Open Course Enrollment (a.k.a the MOOC movement).

Abstract for Apereo 2019

New PMC Members for Sakai (2019)

We are pleased to announce that three new members are joining the Sakai Project Management Committee (PMC).

Matthew Hall – University of Virginia

Matthew is the Technical Lead for the University of Virginia’s learning management system team. He manages software development and system administration for UVACollab, UVA’s implementation of Sakai. His focus is on the tools, services, and integrations that make up UVA’s central online collaboration and learning environment. Matthew has been working with Sakai since 2011. He holds an MS in Computer Science, a BS in Computer Engineering, and a BS in Mathematics from the University of Virginia.

Miguel Pellicer – EDF – Entornos de Formación

Miguel is the CTO at EDF and an LMS market entrepreneur with a strong commitment in Open Source education technologies.  An active member of the Sakai Community and the Spanish Team since 2008, security and internationalization lead. Miguel has led more than thirty Sakai deployments all over the world, including elite universities in Spain, Netherlands, UK, Colombia, Mexico, Chile, and the USA.

Joshua Wilson – Longsight Inc

Joshua is Longsight’s Chief Operating Officer.  He leads client relations, business operations, project management, and strategic planning. In addition, Josh chairs the Sakai Community’s Marketing Team. He has been a leader in academic technology for more than a decade, serving most recently as Associate CIO for Academic Technology at Brandeis University, where he directed the strategic and client-centered renewal of the University’s academic technology environment, including its open source LMS.  Josh has served for a decade on the management team for the nationwide MISO Survey, which measures the effectiveness of IT and libraries at more than 150 higher education institutions.

About the Sakai PMC

PMC membership is reflective of significant contributions to the community and a dedication to the shared goals of the Sakai community.

In terms of what PMC membership “means”, the PMC members are already active members in the various groups in the Sakai/Apereo community (QA, Core Team, Marketing, FARM, Accessibility, Teaching and Learning, etc.). Most of the decisions about Sakai are made in those groups without any need for the PMC to take a vote or render an opinion because we believe that those closest to the actual work should make decisions regarding the work whenever possible.

The PMC gets involved when there is a significant or broader issue or a decision needs to be made regarding Sakai’s direction or resource expenditure by Apereo on behalf of Sakai. The PMC does all of its work in full view of the community on a public list except for votes on new PMC members.  Everyone in the Sakai community is welcome to join, monitor, and participate in the PMC mailing list.

Please join me in thanking these new PMC members for their past, present, and future contributions to Sakai and welcoming them to the Sakai PMC.

/Chuck

P.S. Thanks to Matt Jones (PMC Treasurer) for running the PMC nomination and election process.

Why do People Like Sakai, given the Market Share?

A Sakai user saw this report where Sakai was highly ranked against its market competitors and wondered “How could this be with Sakai at a 5% market share?”

https://www.softwarereviews.com/categories/education-learning-management-systems

Here is my answer.

There is a pretty simple explanation as to why Sakai polls well in some situations and yet there are a lot of folks that say “lets go Canvas”.

It depends on who you ask.

I knew a school that did a year-long evaluation of Sakai, Canvas, Blackboard and Desire2Learn. The faculty and students ranked them in exactly that order. The IT organization that was already convinced they wanted Canvas, removed the Sakai data, published the report, and then chose Canvas based on the report that showed Canvas#1 – it was clearly the “overwhelming favorite” of the faculty and students.

In general, IT staff prefer Canvas because it means less responsibility for them. Canvas rarely listens to its end-users and throws good parties – there is a certain stability and simplicity in not being able to influence the direction of your commercial vendor. Just accept it and move on. Faculty and IT staff at Sakai schools can dream up ideas and some of those ideas make it into the core product, often surprisingly rapidly. That is both a joy and a responsibility.

I would like to see a survey of a lot of schools (Sakai and others) where we ask the faculty and students how well they like their current LMS. I think that if you exclusively listened to the end-user’s voices, Sakai schools would “like their current LMS” more often than commercial LMS schools. (see the NYU data on this)  I expect this would even be true for end-users who had no idea of our wonderful community or our 100% commitment to open source.

If you, on the other hand, polled the IT folks at schools across the board and asked them, “Does your current LMS make your job easy or hard?”, Canvas would win as the LMS that makes IT folks jobs easiest – by far. I would say that Sakai schools that completely outsource hosting to LongSight, EDF or OpenCollab would also get pretty high marks. The more a school is involved in the Sakai community, the more they are working to make Sakai better, the more some of the IT staff might want to switch to Canvas to “take a load off of themselves”. Sakai schools that are self hosted and have senior (expensive) in-house Sakai developers are great for a few activist IT organizations – but too much to handle for IT organizations that can barely handle Wifi, the SIS, printers and desktop support on their campus.

So you get this strange anomaly that does not correlate to market share. If you ask the end users at Sakai schools – they love Sakai. If you ask Canvas users at Canvas schools, they like Canvas and it kind of goes down from there.  And the graphs you cite reflect that.

And it is why Sakai continues to be so focused on meeting the end-user requirements above our “corporate” profitability and market share. Our end-user satisfaction is high, our community is strong, our profitability is zero, and our market share is low. Separately, our impact on overall market innovation is *extremely high* through Sakai-led innovations like LTI and Common Cartridge. Our contribution and impact and end-user satisfaction unfortunately does not correlate to rapidly growing market share because after we meet end-user needs year after year with a best-of-breed 100% open source product, we don’t have any money to hire sales people to visit every university on the planet and buy free lunches for the IT staff.

/Chuck

P.S. We do have a pretty cool SakaiCar with ears – https://www.sakaiger.com/sakaicar/ – like which other LMS has a race car?

P.P.S. Instructure spent $135M last year on marketing and sales.  They took this money from the pockets of higher education and used it to convince more schools to give them more money.  (link)

Tsugi Achieves LTI Advantage Certification

Tsugi (www.tsugicloud.org) is one of the first learning tools to achieve a brand-new certification for an interoperability standard called LTI Advantage, continuing the longtime leadership of open source learning projects in the Apereo Foundation (www.apereo.org) in standards and interoperability.   Tsugi is an application library that allows rapid development of standards-compliant learning applications.

https://www.imsglobal.org/cc/statuschart/lti-advantage

Tsugi certification coupled with the recent Sakai certification completes an open source end-to-end solution for both the Platform and Tool versions of the LTI Advantage specification.  Open Source implementations allow proprietary vendors to examine source code and have an endpoint for regular interoperability testing.

Apereo projects like Tsugi and Sakai benefit the entire marketplace whether or not a school adopts the software that is produced as part of Apereo.   – Charles Severance, Founder Sakai and Tsugi Projects

The Tsugi project provides a free test server that allows LMS vendors like Sakai, Blackboard, Canvas and Desire2Learn to do regular LTI Advantage interoperability testing with a scalable production LTI Advantage compliant educational application store.

https://test.tsugicloud.org

In addition to using LTI Advantage for integration into enterprise LMS systems, Tsugi tools also can be integrated into Google Classroom.

For more information or to see how to use Tsugi to develop standards compliant learning tools see www.tsugi.org.

Abstract: Coursera Office Hours @ Pengucon – Python for Everybody

This is a meeting between students of Dr. Chuck’s Python for Everybody, Internet History, Technology, and Security, and Web Applications for Everybody (PHP / SQL) online Coursera courses and anyone else who is interested in MOOCs and the MOOC movement.  You can see other meetings that Dr. Chuck has had with students at https://www.dr-chuck.com/office/

What Should I do After I Finish the Python for Everybody Specialization?

I got this message from a student:
I am currently a student in your Python for Everybody online Coursera specialization, and am about to complete the Capstone course. I would like to move my career into App Development / Software Engineering management, what is the next course that you would recommend that I take?
Here is my answer.

Congratulations on making it through the specialization. In terms of what to do next – a lot has to do with how confident you feel at this point. If you are still struggling with the programs in the specialization – then you might want to go back and take another “beginner class” – there are levels of beginner classes and you might benefit from one that is more rigorous like this one from UMich:

https://www.coursera.org/specializations/python-3-programming

If you are confident in your programming skills, it depends on what you want to do. If building web apps is something you find interesting, these specializations will move you in that direction:

https://www.coursera.org/specializations/web-design
https://www.coursera.org/specializations/web-applications/

If you want to go into Data Mining – we have a specialization for that too:

https://www.coursera.org/specializations/data-science-python

You should have your programming skills well in place before you take the data science specialization – but it has a lot of good stuff and important job-ready skills.

Abstract – Building LTI Advantage Tools for Blackboard using the Tsugi Application Environment

This presentation will introduce users to the free and open source Learning Application development environment available at www.tsugi.org. Blackboard supports the IMS Advantage suite of specifications including LTI 1.3.  Tsugi to allow external tools to be easily integrated into Blackboard using either LTI 1.1 or LTI 1.3 to increase the richness and diversity of the course experience.   External tools can provide functionality not present in Learn like a social grading system, or a YouTube viewer with analytics.   External tools can also build very rich auto-graders that make online classes bother more interesting and more effective.  Imagine if you could easily develop an interactive system like Pearson’s MyMathLab for *your* course and field.  Tsugi provides a set of libraries that allow you to write learning applications without any need to read an LMS integration standards document.  Tsugi’s run-time environment takes care of complying with the necessary standards to make plugging Tsugi tools into Learn, edX, Coursera, or any other LMS.  Tsugi also provides a hosting environment that is as easy to deploy as WordPress and allows institutions to host tools and provide an “App Store” of available tools to their users.  There is also a free cloud-based Tsugi App Store that provides scalable hosting for open source Tsugi applications at www.tsugicloud.org.  It is easy to learn to write Tsugi applications using the online materials at www.tsugi.org.

Sakai Passes LTI Advantage Certification

Sakai 19 has officially passed the IMS Global LTI Advantage certification suite along with Canvas, Blackboard, and Moodle.  The standards have not yet been released to the public but as part of the process to validate the certification suite itself – IMS Contributing Members help with the testing of the suite before its formal release to insure a smooth release once certification is completed.

Having nearly every major LMS passing the certification for LTI Advantage before it is done is unprecedented and gives a hint of the big things to come with LTI Advantage.  It is the most important standard in educational technology since IMS LTI 1.0 was released in May of 2010.

I think that most everyone who has been around long enough to know and been part of standards development for the past 15 years would agree that without Sakai the market would never have created IMS Learning Tools Interoperability (started in 2004 by Sakai) and IMS Common Cartridge (started in 2005 by Sakai).  Being 100% open source and with an open community, Sakai has always put the best interests of teachers, learners, LMS administrators, and those who want to improve the educational technology ecosystem above our own market-share success.

Building an enterprise-grade open source LMS (read the book)  was a challenging effort but it gave the Sakai community and its adopters far greater influence in the marketplace than the typical university that took the easy way out and installed proprietary commercial products like Blackboard, Angel or WebCT (back in the day).  Moodle has been open source since 2004, but not actively involved contributing to the development of interoperability standards until recently.

The Sakai community was willing to invest in the greater good of interoperability and use our small (6%) market presence to gain attention for the standards that we knew would transform the market far more than the software that we were building.

When LTI 1.0 was released in May of 2010, the only major LMS that truly supported LTI was Sakai.  I had written LTI 1.0 code and contributed it to the OLAT, ATutor and Moodle open source projects to help build momentum but none of the major players provided support for IMS LTI 1.0 until Desire2Learn announced it in their 8.4.7 release at Educause in the Fall of 2010.   Blackboard announced  support in the first quarter of 2011.

The key point to all this is that back in the old days (i.e. 2010) when the LTI standard came out it was over a year before the major LMS vendors came on board and it took a lot of travel, begging and encouraging.  I even made a promise of a tattoo of their logo on my shoulder to get the vendors attention.

Now with LTI advantage, we not only have bundled four standards together:

  • LTI Core Launch
  • LTI Deep Linking
  • LTI Names and Roles
  • LTI Assignments and Grades

Four of the five of the leading LMS vendors *already* are certified for all four standards.  Believe me, this changes everything – just wait and see.

This would not have been possible without tremendous effort and cooperation between the LMS vendors and tool providers for over 18 months.   The following folks have been in weekly meetings and on Slack nearly continuously to bring this very complex suite of standards to life.

We (and I) owe these organizations and their staff a great deal of appreciation for this wonderful new suite of standards: Cengage (Chair), Canvas (co-chair), Blackboard, Moodle, Unicon, VitalSource,  the IMS Staff, LearningObjects, TurnitIn, McGraw-Hill, Houghton-Mifflen-Harcourt, and Desire2Learn.  LTI Advantage was so significant that Microsoft and Google brought engineers to the meetings.  They were somewhat limited in how much they could dive in and show source code and help others debug their code – but they provided a valuable contribution by carefully architecting and reviewing the security protocols that underpin LTI Advantage.

As I worked on adding LTI Advantage to Sakai and Tsugi I had the luxury of being surrounded by so much talent from these organizations.   I got a lot of help in the PHP version of LTI Advantage in Tsugi from Martin Lennord of Turnitin and I got a lot of help from Eric Preston of Blackboard and Paul Gray of LearningObjects who helped me when the going got rough in Java.  They were always there when I got stuck to help me get unstuck – whether in a meeting or on Slack.  I also owe a big debt to Derek Haskins of IMS who helped me work through certification issues at the last minute – we both found a few small issues in each other’s code.

All in all, being part of such a talented team of engineers from so many organizations was one of the most collaborative engineering projects I have ever experienced.

And the most important point of all is that this is just the beginning.  Just the first release.  The first release is always the most difficult.   In terms of building new standards – we have been holding our collective breath for about two years and putting any good idea that someone came up with in the “parking lot”.

This group of talented people and dedicated organizations, can now start to prioritize all those ideas.  You should expect that the next two years will be very productive as LTI Advantage expands further.

Python for Everybody, Everywhere

I am very proud to announce courses from my popular Python for Everybody (PY4E) MOOC series is now live and open for enrollment on edX. The series is composed of two courses, Programming for Everybody (Getting Started with Python) and Python Data Structures – you can enroll in both and start learning today.

Back in 2009, my goal for PY4E was very simple: create the ideal first programming book and course for my students at the University of Michigan. There were lots of solid “beginning Python” courses that, in many ways, are not aimed at real beginners with absolutely no technical training, or math knowledge. So I created a course that does not try to teach Computer Science using Python but instead teach a subset of Python that represented the essentials of programming.

When I was originally building the course (in Python 2.0 at the time), I would not have predicted the exciting growth of Python and the success of the MOOC movement. Ten years later, PY4E has reached more than 2 million learners to become the largest Python course in the world, graduating thousands of new Python programmers every week.

As a result of its own success, PY4E is an incredible de-facto prerequisite for almost any Python-oriented course or MOOC. If a person wants to learn “Data Mining” or “AI,” and they have no Python background, they may quickly realize they need to step back and learn the foundations of Python programming. In other instances, students in a first Python programming course may find the technical perspective a bit daunting and can enroll in my introductory Python courses to build confidence.  PY4E helps to fill in the gaps by giving learners a complete picture of programming avoiding language that might be challenging for a beginning learner.

One way or another, PY4E has become the entry point into programming for hundreds of thousands of new programmers. Given the success of the course, free textbook and support materials, and free supporting website (www.py4e.com) – my new goal is to share this introduction to programming with any and all learners.

That is where edX comes in.

PY4E is coming to millions of learners on edX, who are welcome additions to this growing community of Python learners and practitioners. I hope PY4E can serve as a low-barrier introduction to programming for edX learners prior to pursuing any number of excellent Python courses from great institutions. This is an exciting moment toward the goal of reaching as many learners as possible in as many countries as possible.

I’m excited to welcome the edX community to start their programming journey with PY4E. Enroll here today and let’s learn together!