MoodleNet testing: Day 13 update

Update: Check out this overview video showing the changes we’ve made!

MoodleNet screenshot - Day 13

Yesterday, we made our first major update to the version of MoodleNet currently undergoing initial testing. Not only did this update alter the look and feel of the interface, but it also added some useful new functionality and fixed some bugs reported by users via Changemap.

Functionality added

  • Gravatars to represent users
  • Community overviews
  • List of members in communities
  • Collections display number of resources they contain
  • Collections indicate number of followers

UI tweaks

  • Button styles and positions improved (e.g. for ‘Create a community’)
  • Increased character limit in text fields
  • Moved language selector to menu and removed flags
  • Added full-width images in communities
  • Sidebar has a darker colour

Bug fixes

  • Improved metadata import when adding resources
  • Users can only add resources & edit collections in communities they’ve joined
  • ‘All collections’ page fixed
  • Switching languages and then back to British English no longer causes an error
  • Word wrapping on community descriptions

Next week, we’re aiming to add collection-level discussions, featured collections, and basic user profiles.


For those interested in our product management processes, we’ve also switched to Moodle Tracker (Jira) for stories and epics while sticking with GitLab for issues. Check out bit.ly/MN-epics 

Evolving the MoodleNet UI

We’re a week into the initial testing of MoodleNet and are already getting some fantastic feedback from testers!

MoodleNet current (early Feb 2019)

While there’s a long way still to go before we can open registrations, things are really starting to come together in terms of the user interface (UI) for MoodleNet.

The above screenshot was taken today. Even in this very initial version, the feedback we have had from testers has been mostly positive. Our anonymous survey to ask for their first impressions included responses such as “nice interface”, “attractive” and “clean and clear”.

MoodleNet staging version

Our designer and front end developer, Ivan Minutillo, isn’t content to rest on his laurels, however. The above screenshot is taken from our staging server and shows an iteration of the UI that we will make available to users over the next few days.

As you can see, there are many improvements, including:

  • Image width
  • Placement of ‘Create a community’ button
  • ‘Overview’ tab in communities
  • Indication of community members
  • Dark sidebar
  • Use of gravatars

MoodleNet - future mockup

Ivan hasn’t stopped there, either, though! Although the above mockup isn’t coded yet, this is the direction we are currently thinking of heading with MoodleNet. As you can see, the sidebar now includes ‘MoodleNet’ at the top, there is search functionality (which we will be doing across federated instances) and the whole experience feels much more refined.

Whether or not you’re part of the initial testing process, we’d love your feedback on this! Do you like what you see? 

What are we hoping to get out of testing MoodleNet?

Test pattern

Last week, we put out a call for initial testers of MoodleNet in English and Spanish. We’ve been delighted with the response, and have now closed the sign-up process until the next round.

When developing a new product or service, it’s important to test, test, and test again – which is exactly what we’ve done with MoodleNet so far. The concept of a resource-centric social network came out of talking to a wide range of experts and educators. That led to a design sprint that included user testing of the resulting prototype. We tested the sign-up process to MoodleNet, solicited feedback on our code of conduct, tested out community calls and office hours, how we work as a team, done some internal testing, and will be very soon running a privacy and security testing programme.

The most important test so far, however, starts next week. That’s the time when we’ll be putting MoodleNet in front of users for the first time. We’re testing the value proposition: “Do educators want to join communities to curate collections of resources?” This doesn’t mention federation. There’s no mention of mobile devices, fancy user interfaces, or machine learning. We’ve tried to create a very simple approach to test this basic value proposition.

It may turn out that users agree with this value proposition. They may think that, yes, joining communities to curate collections of resources is something they want to do. Alternatively, they may indicate that they prefer a different approach. Either way, this test is of vital importance; it makes no sense to continue along this particular path without a mandate from real-world users!

For those interested, but who aren’t part of the initial testing, here’s how it will proceed:

  • Successful applicants will have their email address whitelisted and be invited to sign up to a Moodle HQ-run instance of MoodleNet
  • Feedback from users during the testing process will be collected in two ways: via Changemap and through weekly surveys
  • New features will be rolled out during the testing process, as detailed on this milestone

If you missed the sign-up process this time around, or weren’t available for the first testing period, then don’t worry! You will have an opportunity to put your name forward again in a few weeks’ time.

Sign up to be one of the first testers of MoodleNet!

Update: we’ve closed the sign-up forms for the time being. Thanks to everyone who signed up!


Note: also available en español

Lab

We’re delighted to announce that we’ve begun the process to recruit 100 testers for the first iteration of MoodleNet!

The sign-up form, a link to which can be found below, is available in both English and Spanish. The form should be self-explanatory, but if you do have any questions, please add a comment to this post or ask in the MoodleNet discussion forum.

We’re looking for a diverse range of educators, and you don’t need to be currently using Moodle. Please do consider putting your name forward!

Sign-ups close next Wednesday 23rd January, and we envisage the initial test running for three weeks from Tuesday 29th January.

Could you help translate MoodleNet in your language?

We want MoodleNet to be useful for educators around the world, so of course we need it to exist in as many languages as possible!

That’s why, as well as launching in English, it’s very important for us to launch with the interface available in other languages, too. We want to encourage the communities, content, and discussions that will come to life on the platform to be representative of the wonderful diversity of this community.

If that sounds like something with which you’d like to help, please head over to this thread on the MoodleNet forum and provide:

  1. A list of languages you know, including your level in each: Native ; Fluent ; High writing profiency ; High reading proficiency; or Intermediate. (Please don’t forget to include your level in English).
  2. A few words about your experience (if any) with translation, and a link to some of your work (for example, if you’ve helped translate Moodle Core, include a link to your profile on AMOS)

We will then direct message you if we need any more details, and with information about how to get started when translation into your language(s) is ready to begin. We’re going to start with some of the most common languages among users of Moodle, including Spanish.)

If you’re selected to help translate the pilot version of MoodleNet before it launches, you’ll also be invited to join as one of the first pilot users to try out the platform for yourself.

 

Photo credit: Slava Bowman 

Seeding our security and privacy bounty programme with a Mozilla MOSS grant

MOSS Secure Open SourceThe MoodleNet team is delighted to announce that we have been awarded a Mozilla Open Source Support (MOSS) grant. We pitched for this at the recent Mozilla Festival, and the judges were impressed enough to award us $5,000 to help us perform a privacy and security audit of MoodleNet.

Creating a decentralised platform for MoodleNet is important to our goal of creating an open, safe, connected solution that can be installed and run by any organisation. Doing so, however, increases what security professionals call the ‘attack surface’ of the software environment. We are delighted to not only have a grant from Mozilla to help with this, but also access to their community of talented technologists.

Our plan is to create a series of ‘bounties’ for security testing MoodleNet. This is a proven method for incentivising ethical hackers to disclose privacy and security vulnerabilities in software products and platforms. Using this method, we hope, will not only increase the reliability of our systems, but also help increase trust in open source and federated solutions.

“Thanks to Mozilla for their MOSS initiative, and for their grant towards security testing of MoodleNet. It’s a pleasure to be involved and our team is using it as effectively as we can.” (Martin Dougiamas, Moodle CEO)

We’re still reviewing which platform to use for our security bounty programme, but you can see how organisations and projects such as WordPress, Brave and Discourse use such platforms to improve the quality of their products.

If you’re interested in helping out with this programme and potentially receiving a cash reward for your efforts, there are a number of things you can do:

Finally, if you have any suggestions for how we could set up this privacy and security testing programme for even greater success, we’d like to hear from you. Either add a comment below, or get in touch with us directly via email : moodlenet-moderators@moodle.com

MoodleNet in 2018: a retrospective

Captain Hindsight

Intro

This year, MoodleNet has gone from idea to code. In fact, we’ll be launching a Minimum Viable Product in January 2019 to gather feedback from around a hundred testers. That process will start in the New Year.

In a world of agile development, where speed-to-market is everything, why has it taken a year for MoodleNet to emerge? Hopefully, this post (and its many links) will help explain some of that. We agree with Abraham Lincoln’s philosophy when he said: “Give me six hours to chop down a tree and I will spend the first four sharpening the axe.”

MoodleNet is a new open social media platform for educators, focused on professional development and open content. It aims to sustainably empower communities of educators to share and learn from each other to improve the quality of education, and will be an integral part of the Moodle ecosystem.

If we were building a centralised system such as Twitter, if we wanted to “move fast and break things” like Facebook famously does, then we could have launched months ago. But what we’re building with MoodleNet is, just like Moodle Core has proven to be, for the long haul. We’re building something to last.

Batman thinking

Conceive

Back in January, we began by scoping out what we wanted to achieve in a white paper that included feedback and suggestions from a whole raft of people who are credited at the end of the document. We based it on scenarios that, while fictional, are based on the real-world situations faced by different groups within the millions of people who make up the Moodle community.

Realising that it’s important to build Open Source projects upon strong principles, we defined what we meant when we said that MoodleNet is:

search-refine-curateBryan Mathers began helping us visualise some of what we were trying to achieve with the project, bringing it to life beyond mere words. At this point, the MoodleNet team consisted of a single person – me, Doug Belshaw. To quote another American President, this time Woodrow Wilson, I decided to use “not only all the brains I have, but all I can borrow”. As an educator and a technologist, I got in touch with experts in my network to ask for their advice. They are listed at the bottom of this post, and their input was invaluable for refining what we wanted MoodleNet to be.

In February, at a management meeting in Perth Australia, I ran a couple of MoodleNet workshops based on what I’d heard from the experts in my network, and also what Martin Dougiamas, Moodle’s Founder and CEO, had requested. This was a very positive experience, as it was clear that MoodleNet was going to be vital to the whole Moodle ecosystem.

While still in nascent form, and in the run up to the implementation of the European General Data Protection Regulation (GDPR), we focused in on compliance, and testing some ideas around using the very new ActivityPub protocol. We tested various approaches, such as those taken by Hubzilla and Mastodon.

Once we knew that MoodleNet was going to be a federated social network – one that could be installed just like Moodle Core, but with each MoodleNet instance connected together – it was time to focus in on what people would be doing with this social network. Work in March involved gathering inspiration from different types of social networks that involved resource-sharing. We felt that, in 2018, asking people to join yet another generic social network would be fighting an uphill battle.

At the MoodleMoot UK & Ireland in March, we gave a presentation and ran a workshop on MoodleNet, soliciting feedback on the ideas we had come up with. Feedback was positive, with the community tweeting about the soft spot between pedagogy and technology, and seeming to get why we had decided to start by focusing on building something small.

Blueprint

Plan

By the time the OER18 and OE Global conferences came around in April, we felt that we were ready to plan what MoodleNet would look like in more detail. Conversations at these two events really helped us explain what we hoped to be the value proposition, and fed into a series of blog posts aimed at winnowing the project down to MVP size.

It was at this time that we also began running the MoodleNet community calls. Having run many of these before with other Open Source projects, I was delighted that many people gave up their time to join us. Unfortunately, we had to give these up after the first three, as the way we were collecting user data wasn’t GDPR compliant. It’s still something we’d like to do, so we’re still looking for a better way to run these in 2019.

MoodleNet - a resource-centric social networkOne extremely important feature of any social network, but particularly one focused on resource-sharing, is search functionality. Get it right, and nobody notices. Get it wrong, and everyone complains. I asked Mike Larsson, who I’d worked with at Mozilla, to do some thinking around this for us. He came up with several approaches, including a custom search index. As we prepare for the MVP, we’re currently building upon these ideas.

In May, as the project began to need more technical input, I asked for some input from Phil Barker around metadata, schemas, and standards relating to Open Educational Resources (OER). We also started looking for a Technical Architect to join the team. After going through 80 applications, and interviewing many diverse candidates from around the world, we offered the position to Mayel de Borniol.

Mayel’s first day at Moodle was also the first day of a week-long sociocratic design sprint with Outlandish, a tech co-op based in London. Martin Dougiamas flew in from Australia to be with us and, based on information we’d gathered – including a pre-sprint community survey – we designed a prototype which we then tested with members of the Moodle community. Bryan Mathers again helped us visualise proceedings.

The design sprint gave us a real impetus and mandate to get started in June with the technical architecture of MoodleNet. Mayel outlined some options for how we could set up and run MoodleNet, and we established a code base in GitLab. By the time we both presented in Barcelona at MoodleMoot Spain, we had a clear idea of where we were heading, both conceptually and technically. We received great feedback and questions, both in person and via Twitter.

Code

Develop

After the design sprint, we engaged the services of Outlandish to continue designing MoodleNet. UX Milestone 1 in July demonstrated our thinking around the potential look and feel of the user experience on mobile. At the same time, given what the community had told us, we began planning for how MoodleNet could integrate with Moodle Core.

I flew over to the US for the MountainMoot of which I’d heard so much. I ran a workshop on MoodleNet, gaining some extremely useful insights both during the session and in conversation during the event. It was at this time we also started thinking about the use of Open Badges in MoodleNet. Although we have de-scoped them from the MVP release, it’s still something we’re looking to integrate as soon as possible in 2019! We also started thinking about identity in decentralised social networks.

moodlenet-betaWhile I spent most of August on holiday interrailing around Europe with my family, work continued on MoodleNet in my absence. Mayel settled on a technical architecture for the project, and decided to use Elixir for the backend code base. This led to questions both within Moodle HQ and the community, and to Mayel presenting to Moodle Core developers.

Outlandish continued their work through UX Milestone 2, which resulted in four screencasts to show the community the work we’d done. By the time September came around, we were ready to accelerate development of the project. I presented at ALT-C, Mayel and I participated in a front-end development workshop with Outlandish in London (leading to a demo and draft style guide), and after a several-week search, we welcome Alex Castaño to the team as backend developer.

It’s good practice in open source to avoid reinventing the wheel and to instead use shared libraries of code for functionality that exists in more than one project. When we didn’t find a suitable code library for creating federated apps, we decided to build a generic ActivityPub backend server. This was for several reasons, but the most important is that the more ActivityPub-enabled services there are, the better for the entire decentralised application ecosystem. We’ve already seen the resulting CommonsPub repository attract contributions from the Open Source community, and it’s being used in other projects as well as MoodleNet.

Designing tech in 3D

Iterate

By October, MoodleNet was really coming into focus. Alex quickly realised he’d joined a team building something going beyond merely another tech project, and an interview with Mary Cooch helped explain to the Moodle community why we’re building something completely different to the existing moodle.net.

Version 0.8 of our overview slide deck told a much better story than previously, thanks to some feedback from the wider MoodleNet community. At the end of the month, Mayel and I attended the Mozilla Festival in London. There was a whole decentralisation floor where we ran a workshop, and proceeded to successfully pitch for a small grant – details of which we’ll reveal in early 2019!

Hot on the heels of the Mozilla Festival was MoodleMoot US, where I ran a workshop. People from a diverse range of backgrounds participated in the session, from K12 and Higher Education to the corporate world. They could all see how MoodleNet would be useful in their context, and we again received positive feedback both in person and on Twitter.

Principles-ConnectedMoodle HQ has hired many new colleagues in 2018. In late October, Gry Stene joined us as Chief Product Officer. As her job title would suggest, Gry now oversees all of Moodle’s products, ensuring we are using resources effectively, building interoperable products, and preventing too much overlap.   

In November, with around two months until the MVP, we spent time thinking about the user sign-up experience. Outlandish built a prototype (with live code) and tested it with volunteers from the community. As is to be expected, although it was fine with no major flaws, the feedback pointed to how it could be better. We returned to the drawing board, reimagining the process to be even easier and more GDPR-compliant.   

Outlandish joined us for two days of a MoodleNet team in-person workweek, where Mayel and Alex met one another in person for the first time! The main purpose of the week was to ensure that the work on the front-end and back-end was hooked up together, using a data query language called GraphQL. Although we didn’t get through everything we wanted to get done that week, it was a very productive time, and meant we were in better shape than we would have been had we continued to work remotely.

Over the previous few weeks, Mayel had worked on contribution guidelines for the community, based on his own experience and other Open Source projects. We opened this for comments and, after a two-week feedback window, made modifications based on what we heard. We’ve adopted the Contributor Covenant and added specific guidance around how community members can get involved in making their first contribution.

contributeGiven he was in Athens, Mayel took the opportunity of running a workshop at MoodleMoot Greece, with a specific focus on localisation. After talking since at least July about the potential use of emoji triplets for identity and identification in decentralised systems, I finally got around to writing this up in a post describing what we’re calling Emoji ID.

As I write this towards the end of December, we’re in good shape for the MVP in early 2019. Mayel recommended Ivan Minutillo, a UX designer and front-end developer for our team and Gry did a fantastic job at getting him onboard very quickly. Not only that, but Ivan really hit the ground running, already having contributed to CommonsPub and experience with the core technologies we’re using on the front-end.

We had planned for Outlandish to overlap until next month with Ivan. However, given how quickly he came up-to-speed, and how efficiently the project has been documented, this was kept to a minimum. The six months we spent working with Outlandish were invaluable; there is no way we would be in the same position without them. I hope that we’ll be able to lean on their expertise again in 2019 for future stages of the project!

Since handing over from Outlandish, we’ve re-scoped the project milestones, drafted a testing plan for January 2019, and published v0.9 of our overview slide deck.

Adventure Time

Final words

It’s been an exciting but tiring year and I think the whole team is ready for a well-deserved two week break over Christmas! All of the above would have been enough for a team working full-time to achieve. As it happens, the only person working five days per week has been Alex, and only since early October. The rest of us work between two and four days on the MoodleNet project!

The proof of the pudding, as the English saying goes, is in the eating. So I’m looking forward to testing our first value proposition in January 2019: do people want to join communities to curate collections of resources?

Time will tell. Lots of people have given us their thoughts and opinions about MoodleNet this year and this project is better because of them. Any problems or issues with the project are, of course, my responsibility as MoodleNet Lead. However, anything that’s useful is due to the fantastic team I’ve had the privilege to assemble, input from my talented colleagues at Moodle HQ, and the following people who so have so generously lent their time:

  • Outlandish
    • Rob Cornish
    • Matt Crow
    • Sam Gluck
    • Kayleigh Walsh
  • Consultants
    • Phil Barker
    • Mike Larsson
    • Bryan Mathers
  • Testers
    • Miles Berry
    • Luca Bösch
    • Mary Cooch
    • Martin Deinhofer
    • Andy Field
    • Jessica Gramp
    • Oliver Quinlan
    • Emma Richardson
    • Christian Turton
  • Open Source & ActivityPub community
    • César Awad
    • Ruben Cancho
    • Hubert Chathi
    • Thomas Citharel
    • cj
    • Elizabeth Dalton
    • Nolan Damon
    • Debashish Datta
    • Julie Day
    • Noel De Martin
    • Vijay Anand Deenadayalan
    • Vicke Denniston
      Lynn Foster
    • Rogério Furtado
    • Wayne Gibbons
    • Ralf Hagemeister
    • Bob Haugen
    • Ralf Hilgenstock
    • Laura Hilliger
    • Don Hinkelman
    • Mandy Honeyman
    • John Hunter
    • Chris Kenniburg
    • John Kuti
    • KS Læring
    • François Lizotte
    • Lilian Low
    • Dan McGuire
    • Greg McVerry
    • Richard Oelmann
    • Adam Procter
    • Felipe Raimo
    • Ben Reynolds
    • Julian Ridden
    • Luiggi Sansonetti
    • John Saylor
    • Séverin Terrier
    • Cyril Z.
    • The creators and contributors of ActivityPub, ActivityStreams, Pleroma, Elixir, React and the countless open source projects we on which we rely.
  • Experts 
    • Martin Hawksey
    • Alan Levine
    • Stephen Downes
    • James Easton
    • Meg Goodine
    • Jim Groom
    • Grainne Hamilton
    • Kristina Ishmael
    • Khari Khambon
    • Tim Klapdor
    • Rick Jerz
    • John Kuti
    • Clint Lalonde
    • Kin Lane
    • Scott McLeod
    • Greg McVerry
    • Ian O’Byrne
    • Alan O’Donohoe
    • Richard Oelmann
    • Nitin Parmar
    • Mark Pegrum
    • Emma Richardson
    • R. John Robertson
    • Tom Salmon
    • Amber Thomas
    • Martin Weller
    • Tom Woodward

My deepest apologies if I have missed anyone from this list. Please do let me know if I have neglected to credit your input!

applause

Say hello to Ivan Minutillo, MoodleNet’s new UX Designer/Front End Developer!

Ivan Minutillo

Those following the development of the MoodleNet project will be aware that we’ve been working closely with Outlandish over the last six months. The team there have been invaluable in getting us off the ground with design and front-end development.

As the project matures, it’s time for that work to be taken in-house. That’s why we were delighted to have the opportunity to quickly snap-up Ivan Minutillo, a talented UX designer and front-end developer, who lives and works in Gaeta, Italy. He’s already started to build on the work that Outlandish have started, and will continue to refine our vision for MoodleNet on a two day per week basis over the next six months.

Let’s find out a little more about Ivan…


We would love to hear a bit about your work history?

I worked in different agencies and startups during my twenties. In a more or less spontaneous way I was often been involved into the development of dashboards and social networks – which over the years have become my main interest from a UX, code and social point of view.

My first experience with the creation of a social network was in an italian startup, building a social e-commerce app. In the last few years I’ve worked on a dashboard with aimed to provide Identity Access Management for secure machine-to-machine connections, based on blockchain technology. In December I quit to focus on development “for the open”, building economic networks to facilitate the creation of economies within communities.

What do you love about what you do?

Code is politic, since every choice that a developer makes, creates constraints that are reflected in social and economic interactions between users. This aspect, which over the years has created a new class of power, can be seen as a lever to evolve a dialogue between the writer and the user of software, to transform authority into responsibility and to lighten the gap between the two parties.

Furthermore, since code is politic, by writing software based on assumptions different from those of the current dominant culture, we can create new possibilities and spread new ideas. Basically, code is my medium of expression.

What are your interests outside of work?

During the recent period I got interested in agriculture, and together with a group of friends we’re planning to start a mushroom cultivation on the next year.

I have a long time passion about beat generation literature, especially anything wrote by Ginsberg and Burroughs, and rock music (Little Wing by Jimy Hendrix is one of the best thing I’ve ever heard) But more than all, my main interest is create, enhance and be part of local and global communities, to move outside capitalism together.

Where is your favourite place in the world, and why?

I dont have any favourite place, but I am especially bound to the mountain range where I live: Monti Aurunci with all the flora and fauna that lives there.