Updating OER Foundation Web Services for July 2024
It's been over a year since my last update - not too much has changed as far as our technology stack goes, although other aspects of our situation have been rather more volatile.
The OER Foundation (OERF) has been in limbo with the major disruption of the the vocational education sector here in NZ (the foundation's shareholder was Dunedin-based Otago Polytechnic, which has now become Te Pūkenga) - first the amalgamation of all 20+ regional vocational higher education institutions into a single national one (another perspective), and then, post 2023 election, the new government's reversal of that policy decision (another perspective), which has made our organisation's direction somewhat uncertain.
Our interest in the 'Fediverse' (namely the set of libre technologies that are tied together by their use of the ground-breaking ActivityPub open standard - this video provides a useful intro) continues unabated, and we've made a few minor refinements to our tool set. We've also been able to service some of our technical debt, which (as any technologist will know) is constantly mounting. And of course, we've continued our work identifying and implementing libre software services so they can be used by education technology practitioners and assessed for their fitness-for-purpose.
Here's where things stand in mid-July 2024, across all the OER Foundation's online services (the OERu, the FOSSDLE Commons, the Centre for Open Education Practice, and our past work with the Samoan Ministry of Education, Sport, and Culture), listed by underlying technologies:
Content Management Systems for Websites
To maintain rich informational and educational websites, we make extensive use of content management systems.
WordPress (multisite)
We maintain a quite a few Wordpress Multisites, which allow a single installation of Wordpress to host many different blogs under the same web address - each blog has a separate 'path' - the first part of the web address after the '/': the first is https://fossdle.org - our main FOSSDLE Commons site, with subsites for related purposes, like support and other documentation. Posts are shared via the Fediverse using the Wordpress ActivityPub plugin. Wordpress, a vastly extensible FOSS blogging engine, is the single, most widely use platform on the World Wide Web - 43% of all websites and 65% of websites that use a Content Management System (CMS) are built on Wordpress. The next two closest web platforms are also FOSS - Joomla (4.6% of CMSs) and Drupal (3%). Wordpress is unrivaled in its popularity. The first is our main course delivery site, where each course is a 'subsite' - https://course.oeru.org, and we have another used for our 'train-the-educators' blog and sandbox course site. Each educator gets a 'blog' subsite for their own use, and a 'course sandbox' subsite - https://edt4ol.oerfoundation.org.
For the Commonwealth of Learning we host OER-based course sites for the Pacific Partnership in Open Distance and Flexible Learning initiative - https://pacificopencourses.col.org.
WordPress (single site)
We run a trio of standalone WordPress instances for the OERF and related initiatives: the OERF's own organisational website - https://oerfoundation.org, the Centre for Open Educational Practice (COEP) - https://coep.nz, the OERF's initiative to help educators in the developing world cope with the challenges of COVID19 - https://oer4covid.oeru.org.
Drupal
We have a pair of Drupal sites (they've been upgraded to Drupal 10.x). They are the OERF's information tech site (this site!) - https://tech.oeru.org, and our H5P learning object builder site - https://h5p.oeru.org.
SilverStripe
We have a SilverStripe instance for our main OERu website - https://oeru.org.
Video Hosting - PeerTube
We have a PeerTube instance - a distributed YouTube-like video hosting service - https://stream.fossdle.org
Event Management - Mobilizon
We have a Mobilizon instance - a distributed Event management and registration service a bit like Facebook's event management tools - https://events.oeru.org
Micro-blogging - Mastodon
We run three Mastodon instances, superficially similar to Twitter, but decentralised, open, non-profit, and community-run and moderated. This is the most widely used Fediverse application, which syndicates content via the ActivityPub open data standard. Our Mastodon instances are https://social.fossdle.org - a home for open educational technology practitioners, https://mastodon.oeru.org - for those learners wanting to safely dip their toes into the otherwise roiling waters of social media, and https://social.milll.ws - for Samoans wanting to participate in the Fediverse!
Image & video sharing - PixelFed
We have a PixelFed instance: https://pic.fossdle.org - similar to Instagram in that it allows easy upload of images and video, but shares them on the Fediverse via ActivityPub.
Link sharing, aggregation, & ranking - PieFed (was Lemmy and Kbin)
There are several 'Fediverse-enabled' link sharing technologies that similar to Reddit, but use the ActivityPub data standard to syndicate content. In the past, we implemented a Lemmy instance, which we then replaced by a more feature-rich Kbin instance, which we recently replaced by a more maintainable, locally-developed (by an NZ-based lead developer) PieFed (here's the project site). Our instance is https://link.fossdle.org.
Streaming - OwnCast
We have an OwnCast instance - https://stream.fossdle.org - a streaming platform like Twitch, but streams and viewer comments are Fediverse content.
Multi-tenanted Blog Syndication - WriteFreely
a WriteFreely instance - https://write.fossdle.org - a no-nonsense blogging system similar to a decentralised Fediverse-enabled Medium.
Federated Messaging - Matrix & Element
We have a Matrix server with an Element client - https://chat.fossdle.org - Matrix is a comprehensive and secure open standard for messaging (aka 'chat') applications, and it's also a reference implementation of that standard. It's a fully FOSS alternative to Slack or MS Teams, and integrates with IRC and just about anything else under the sun. It support text, audio, and video chat as well as document transfer.
Single Sign-On - Authentik
We have an Authentik instance - https://auth.fossdle.org - an authentication and authorisation platform for Single Sign-On.
Remote Desktop sharing & Support - RustDesk
We have a RustDesk server instance, allowing us to provide anyone anywhere on just about any computing platform (Linux, Windows, MacOS, iOS, and Android) with live interactive shared desktop support. Equivalent to TeamViewer or AnyDesk, but without the need to trust a third party service, or deal with incessant nagging to buy a 'full version'. Bliss.
Markdown Editing - HedgeDoc
We have an instance of HedgeDoc - https://md.fossdle.org - a collaborative editing environment for MarkDown content.
Kanban Project Management - Wekan
We have a Wekan instance - https://kanban.fossdle.org - a Kanban project planning and management board similar to Trello.
Password & Secret Management - BitWarden/VaultWarden
We run several instances of (Bit|Vault)Warden - e.g. https://safe.fossdle.org - it's a full-featured password manager like LastPass (but secure) and 1Password, et al. with clients for every platform, and the ability to share secrets securely, provide multi-factor authentication, among other features.
Productivity & Document Management - NextCloud + OnlyOffice
We have a couple NextCloud instances, integrated with OnlyOffice instances - https://hub.fossdle.org and https://docs.oeru.org - for file sharing and collaborative project work. NextCloud alone is like Google Drive, Dropbox, or MS OneDrive, and with OnlyOffice it's equivalent to the Google Apps Suite, but refreshingly Google-free. It also has a broad ecosystem of additional apps that, for example, provide group scheduling functionality equivalent to Doodle Polls, among many other capabilities.
Forum - Discourse
We have several Discourse instances - Discourse is the market leading, modern, full-featured (and fully FOSS) forum. They are https://forum.fossdle.org, https://forum.oeru.org, and https://forum.milll.ws.
Video Conferencing - BigBlueButton
We run a couple BigBlueButton instances - a large scale real-time video conferencing and educational collaboration platform. Our FOSSDLE commons instance is https://talk.fossdle.org, and we manage one for the Samoans at https://bbb.milll.ws.
Email Marketing Automation & Newsletters - Mautic
We have a couple Mautic instances - Mautic is a high-powered mailing list automation management system (think 'Mailchimp on steroids'). Our two instances are https://mautic.oeru.org and https://mautic.fossdle.org.
Rich Messaging - Rocket.Chat
We maintain a Rocket.Chat instance - a rich chat service comparable to Slack or Discord but fully open source (and we hold all our own data) - https://chat.oeru.org - Rocket.Chat, though very good, is not nearly as powerful or secure as Matrix, so we have shifted most of our activities to Matrix and Element, which also offers more mature mobile apps. We also host an instance for the Samoans.
Email Services - MailCow
We have a Mailcow instance for managing all our email - Mailcow is a full multi-tenanted SMTP/IMAP/POP email system with active spam filtering, user self-service, DKIM configuration/management, webmail, & much more - even virus scanning for Windows clients - https://about.oerfoundation.org - it supplies email services for the oeru.org, oerfoundation.org, coep.nz, and fossdle.org domains, among others! It means we don't use Google or Microsoft mail, and, as such, people corresponding with us don't have their email scanned like users of those 'Big Tech' services do, so that Google and Microsoft can build user profiles (for every email they hold) which they sell to advertisers for a huge profit.
Link Shortener
We have an instance of YourLS - a link shortener - https://oer.nz - which allows us to create short, easy-to-remember-and-share links. We can also count how many people follow each link, useful for tracking interest in our courses through various marketing vectors. Note: you won't see anything if you go to the URL above, as it's not a website for public consumption - it's only visible to logged in administrators (by design)...
Website Analytics
It's useful to see how many people are visiting our various websites so we can decide where to invest more time and energy. Most people use Google Analytics for this, however doing so is a huge privacy violation for those being tracked - the EU have recently banned the use of Google Analytics under the terms of their GDPR legislation). We use libre technologies that don't infringe on our site visitors' privacy.
Matomo
We have a Matomo instance - website analytics (like Google Analytics, but without infringing on the EU's - https://stats.oeru.org.
Plausible
We added a Plausible instance - another very nice FOSS website analytics system which uses different technologies and is similarly privacy-respecting to Matomo. It also serves to provide a check of our Matomo analytics - https://stats.fossdle.org.
Portfolio Management - Mahara
We maintain a Mahara instance - online academic portfolio tool - https://portfolio.oerfoundation.org.
Learning Management System - Moodle
We have a Moodle instance - the market-leading learning management system - which we use primarily for offering quizzes and awarding certificates for participants - https://moodle.oeru.org.
Collaborative Wiki - MediaWiki
Our flagship collaborative open educational resource (OER) development platform is a MediaWiki instance - it's the same platform on which Wikipedia is built. All our courses are developed here - https://wikieducator.org - this site has long been one of the 'top 100,000 sites' on the web!
We also maintain an active Spanish language version of the OER development wiki: https://es.wikieducator.org.
Software Development Forge - GitLab
We run a GitLab instance. It's a software developer version control/collaboration tool where we make all our code available - https://git.oeru.org - we stopped using Github when Microsoft bought the platform. We prefer to use libre software to host our libre software. Proprietary software is incompatible with our ethics.
That said, Gitlib is also potentially problematic, having adopted an 'open core' libre software model, where 'enterprise' features are not part of the libre code base available to 'community' users like us. A more ethically appealing (but functionally comparable) alternative is Forgejo, and I've been running an instance of it for myself for the past year to evaluate it. It's superb. We will likely migrate to it in the coming year or so as the behaviour of Gitlib's developers becomes increasingly less community-and-libre friendly.
Forms & Surveys
We've long hosted a LimeSurvey instance - survey tool - https://survey.oeru.org, but it's become difficult to maintain due to changes to the LimeSurvey community and a slow decline in its commitment to being a libre tool. It's led us to explore other options for surveying and creating online forms.
For testing purposes, we set up instances of the following stand-alone form applications: LiberaForms - https://forms.nzoss.nz, FormBricks - https://forms.iridescent.nz, FormTools - https://forms.fossdle.org/.
In addition, we investigated Drupal's Webform module ecosystem which seems to be by far the most feature-rich (with lots of useful extensions for creating rich forms and interpreting and presenting results, supported by the insanely powerful Drupal platform). To give you an idea of that power, the Webforms module, out of the box, supports the full management of a conference, including online signup and ongoing coordination with participants via email and other modes of communication.
Also, because we already run NextCloud, we have looked at NextCloud Forms app. It's very easy to use (similar to Google Forms).
Ultimately, we're spoiled for excellent choices. LimeSurvey is definitely the most comprehensive platform for surveys, but it's complex to use, and painful to host. And there are many other useful contexts for forms beyond surveys.
Monitoring
Given how many web-based services we run, it's crucial that we have ways of monitoring their availability, performance, and longer term health (things like disk space use and processing or memory requirements).
Uptime Kuma
We have an instance of Uptime Kuma, a superb system for periodically (i.e. every minute) checking that all of our services are doing what they ought to be. It alerts us via Matrix integration if any service is misbehaving based on a variety of parameters. It also provides a pretty dashboard with green, orange, and (occasionally) red lights. It also allows us to monitor each service's performance over time. This is an invaluable tool. Highly recommended.
Munin
We have a server which aggregates longitudinal performance data from all our Virtual Private Servers, using a tool called 'munin', which allows us to proactively identify capacity issues, like running out of disk space, before they cause problems.
Grafana + Prometheus + Alertmanager
We maintain a server monitoring solution based on Grafana, Prometheus, Node-exporter, Alertmanager, cAdvisor, and other tools, which provide a graphical monitoring solution for each of our servers.
Development and Testing
We also maintain development and testing/staging instances of most of these services. We do frequent (daily or, in some cases, hourly) database backups and daily remote incremental encrypted filesystem backups onto a server with a LOT of storage. Aside from one co-located physical server with large disk capacity, our services are all hosted on virtual Linux servers (we mostly run Ubuntu Linux) provided by commodity cloud hosting providers via Docker and orchestrated via Docker Compose.
Costs and Usage
In the past several years we have served tens of thousands of registered users and more than 200,000 anonymous learners access our courses per year (the full content of which are open to all without requiring authentication).
It's also important to note that all of these services can be provided at no cost to our collaborators and learners as there are no per-seat license fees (nor any license fees) associated with any of the services. Our only costs are related to the 14 (at last count) generic 'cloud'-based Virtual Private Servers (VPSs) (all running a FOSS Linux operating system) we hire from a host of competing commodity hosting providers including Digital Ocean, Hetzner, and Linode. We actively avoid using any vendor-specific proprietary services so that we can shift providers with minimal hassle and service interruption if required.
Our entire annual IT infrastructure cost, including for our 'on behalf' hosting partners, continue to hover around USD10,000 per year for all of the above. What's more our usage monitoring suggests that most of our servers were operating well below 50% capacity, meaning that we have a plenty of additional headroom.
Blog comments
Martin, My mistake too. I…
Martin,
My mistake too. I could not see the use of QR codes. I had a QR Reader app on my phone for years but only used it a few times when I downloaded it and never after that. I openly dismissed it at several presentations. Still, I would rather a traditional physical menu at restaurants than having to QR the menu with my phone.
All the best.
Rory
Add new comment