אוק 03

Cursive Technology, Inc. – Your writing is one of a kind.

An Authorship-First Approach to Writing

continuous authorship in MOODLE

continuous authorship in MOODLE

Cursive, a first-of-its-kind solution, offers seamless biometric authentication, ensuring consistent identification of students throughout their academic writing. We’re enabling teachers and students to show ‘proof of effort’ for writing in the classroom and bringing authorship back to the forefront.

Source: Cursive Technology, Inc. – Your writing is one of a kind.

ספט 17

Setup AWS CloudFront for Moodle

  1. Add a custom policy for Moodle with the “create cache policy” button under the Custom policies section:

    The new cache HEADERs cache policy should include the following headers and setting

  2. Now go to the “Origin request” tab and create a new origin request policy

    With the following headers and settings:

    aws cf4

  3. Now go to the “Response headers” tab and create a new Response headers policy
    With the following headers and settings:

    You can also turn ON the Content-Security-Policy, if you do not have teachers uploading JS code for special Moodle questions that you do not wish to block.
    And also the X-Content-Type-Options “nosniff”, if you do not have old plugins that will break.

  4. Now go back into you CloudFront distribution that is connected to your Moodle ASG target (called by CF “origin”), and then on the Behaviors tab set the above 3 new custom policies as follows:
יונ 21

moodlehq/moodle-performance-comparison: Set of shell scripts to run Moodle performance tests using different hardware and configurations and compare results.

Set of shell scripts to run Moodle performance tests using different hardware and configurations and compare results.

Source: moodlehq/moodle-performance-comparison: Set of shell scripts to run Moodle performance tests using different hardware and configurations and compare results.

אוק 13

KeyDB – The faster Redis Alternative

KeyDB now has support with multiple masters when replicating, and It’s a drop in replacement to REDIS.

When KeyDB connects with multiple masters it behaves differently than with traditional replication:

Multiple invocations of the replicaof command will result in adding additional masters, not replacing the current one
KeyDB will not drop its database when sync’ing with the master
KeyDB will merge any reads/writes from the master with its own internal database
KeyDB will default to last operation wins

This means that a replica with multiple masters will contain a superset of the data of all its masters. If two masters have a value with the same key it is undefined which key will be taken. If a master deletes a key that exists on another master the replica will no longer contain a copy of that key.

Source: KeyDB – The faster Redis Alternative

ספט 16

VOD & Moodle

Putting together a DIY VOD streaming solution for Moodle based on NGINX + Kaltura-streamer + WordPress + Moodle.

Plugins used in the solution:

https://github.com/nadavkav/moodle-repository_wpvod

https://github.com/nadavkav/moodle-mod_videofile

https://github.com/kaltura/nginx-vod-module

Source: A DIY VOD streaming for Moodle

ספט 16

catalyst/moodle-local_smartmedia: Moodle LMS Smartmedia local plugin

Smart media aims to enhance Moodle’s processing and delivery of multimedia while simplifying the process of managing multimedia for teachers and students.

The smart media plugins in Moodle aim to solve the following two user stories:

As a teacher I have a video that works on my local device and I want to make that video available to my students in a suitable format, by adding it to any rich text area in Moodle. Without the need for me to do any other operations on the video apart from uploading to Moodle.

As a student I want to be able to view any video on my chosen device; added to a rich text area in Moodle by a teacher. Regardless of the environment I’m accessing the video or my bandwidth limitations.

Smart media leverages cloud services provided through Amazon Web Services (AWS) in order to conduct video transcoding into required formats and provide additional analytics functionality for multimedia.

Source: catalyst/moodle-local_smartmedia: Moodle LMS Smartmedia local plugin

יונ 27

catalyst/moodle-tool_excimer: A Moodle tool to find bottlenecks in your code safely in production

PHP profiler moodle tool excimer​This is a Moodle admin plugin that provides developers with insights into not only what pages in your site are slow, but why. It uses the the Excimer sampling php profiler to so.

It is complementary to the profiler in core which uses Tideways. The key downside to Tideway is that it has a substantial performance hit and can’t be used in production to capture everything and only later decide what to keep or analyse.

This plugin was developed by Catalyst IT Australia: https://www.catalyst-au.net/

Source: catalyst/moodle-tool_excimer: A Moodle tool to find bottlenecks in your code safely in production

אוק 20

CatalystAUInf/azure-moodle-autoscale

Autoscaling Moodle stack for Postgres and MySQL databases

This work is mostly based on Paulo Teixeira’s work. It adds several configurable features and switches to a web stack with caching. It also uses Azure resources for Redis, ObjectFS and Databases.

After deploying, these templates will provide you with a new Moodle site with caching for speed and scaling frontends to handle PHP load. The filesystem behind it is mirrored for high availability and optionally backed up through Azure. Filesystem permissions and options have also been tuned to make Moodle more secure than a default install.

Source: CatalystAUInf/azure-moodle-autoscale