just thought i'd share this, and see what you all think....
Those familiar with Drupal will have noticed the impressive improvements in usability for Drupal 7.
For anyone using Drupal as a CMS for a varied user base of content editors this will cut down the support and help by a massive amount. Round of applause for Drupal!
So how implement such radial improvements?
Check out the Drupal UX project with Mark Boulton & Leisa Reichelt.
Our UX Principles:
- Make the most frequent tasks easy and less frequent tasks achievable.
- Design for the 80%
- Privilege the Content Creator
- Make the default settings smart
Be great to see these principles applied to future developments and a similar project for the future of Moodle including http://docs.moodle.org/en/Development:Moodle_User_Interface_Guidelines.
What happened with the drupal ux project and my own experiences here in the moodle forum are leading me to one conclusion.
From various discussions on these moodle forums its obvious that moodle hq and core developers are so closely tied to the current moodle - in code, ui, workpatterns, ia and so many other ways - that its difficult for them to see it objectively.
This close association isn't productive for moving any system forward.
In order to progress moodle has to have an external ux review.
If that is the conclusion you are reaching, then you are wrong.
Imagine this scenario: You, and a group of friends are on holiday in Scotland, and on this day you are out for a walk in the hills, and are half way up one particular hill, but you are not sure if you are on exactly the right page, and you meet a stranger. The stranger claims to be a local, and starts telling you that you are doing the wrong walk, and that you would be having a much better time - much better views and all that - if you walked up that hill over there instead.
Now, he seems like a nice guy, but actually, when you look towards that hill over there, it does not look particularly different from the one you are on. Also, you can clearly see that the valley between this hill and that looks to contain several miles of nasty bog that you would have to wade through, so you are unlikely to decide to follow that guy, not matter now nice he seems. You will carry on with the walk you had planned, because you reacon you are probably safer trusing your own map-reading skills, and having the experience that you set out on.
Now, suppose instead, that rather then instisting of leading you on some other walk, the genial stranger, after waxing lyrical about how nice the other hill is, agrees to help you on you way on the walk you are on. He leads you confidentlly up the path; and clearly helps you avoid some wrong turnings that might (or might not) have confused you; and suggest a good spot for a picnic; and when the cloud comes does, you can see that it does not phase him. He has a compas with him, and knows how to use it. Then, when he suggests a slightly different route down, which he clearly explains is two miles longer, but has much better views, then you are inclined to trust him that far, and you take it. And so again you follow him, and he is right, the views there are great, and you eventually get to the pub, tired but happy, and buy each other some drinks.
Then, when the next day, he says it would be happy, to take you up the other hill, but you had better have stout shoes because the walk-in is a bit damp, then you might trust him enough to follow him there.
Right now, you are a relatively unknown stranger. At the moment, talk of other hills is just talk. We don't have enough cause to trust you. If you want to make Moodle better, start by showing is the best way up this hill. We are agreed that some parts of the Moodle UI clearly suck. It is not hard to make them better with our current tools, and fixing them will have an immediate benefit for everyone. Help us go up that path, and show us that you are a reliable guide with good mountaincraft. Once you have proved yourself to us, then we might be prepared to do more than talk to you about your preferences for other hills.
Maybe have another look at those drupal ux project pages. Try and focus on why they exist, how the recommendations were gathered and how they might be important for the direction of drupal.
How would they help you as a developer?
How do they help guide the direction of drupal?
It's all good stuff and it's something we are missing in moodle.
From your reply you seem to think i'm suggesting myself as a ux agency to do this kind of review? i'm very flattered, but unfortunately i'm just an individual and currently work for sussex.ac.uk.
I'd sugest engaging a freelancer/agency with the resources and a proved track record on large IA and UX projects such as (top of my head) :
Any good ux project will engage with the community - users, developers and other stakeholders. They may even take you up a mountain.
At the moment moodle seems lost. It's floundering in detail and confusion. As a result petty arguments over these details seem to be the priority rather then acknowledging a bigger picture and working towards a common goal.
When we first met you were highly critical of the fact that i didn't feel the moodle forums were supportive of the methods at sussex we have been using to bring moodle into the 2000s.
You encouraged me to start writing on these forums. It's been quite an unpleasant experience all round so far - should i stop yet?
You still have not got it. You are still proposing big-bang, whole-sale changes. That is not an effective way to engage an Open Source community.
This is what always seems to happen when the Moodle and UX worlds try to engage with each other. By comparison, Moodle has successfully engaged with the Accessibility community. The best (but far from the only) example being http://moodle.org/mod/forum/discuss.php?d=134143.
What happened there was one organisation did exactly what you said. They sat users down in front of Moodle, and observed them. Then they made a whole range of small practical suggestions for imporving what is already there. That lead to MDL-20409, which has 36 fixed sub-tasks, and 15 more that will be done some time.
That is how we work together towards a common goal of making Moodle better.
I hope that the experience of writing here has not been unpleasant. You have triggered some robust discussions, but I think they have been good ones. You certainly have not been ignored, which is a good start. And in terms of Moodle's Pedagogy, specifically "All of us are potential teachers as well as learners - in a true collaborative environment we are both." you certainly have a lot to teach us, if you are willing, but I hope that you are also learning. That should be - well, it may or may not be a pleasant experience - but it should be a rewarding, if challenging experience. If you come here with the attitude that you have nothing to learn, then you probably will find it frustrating.
Considering past attempts by the UX community to approach Moodle, it is ironic to try to think about what sort of user-experience the UX community is offering developers. To me it feels like a 1970s approach to software. You say to us something like
"Read this 300 page manual about our software, then once you understand our approach you can compile your owm mdl-ux-plus-plus executable, and run it from the command line to achieve all sorts of amazing effects that we have built into it."
The 2010s approach to software design is
"Tell me what your problems are? I may have some ideas about what you need, that we will get to later, but I want to her your take on your problems first." Then you go away and design a UI, and the finished UI is task focussed on what the user wants to achieve, with clear buttons and wizards to lead the user through the steps they require to acheive their goal. Or in the best cases, the new UI lets the user achieve some goal that they did not even know they had, but the UI still makes it really clear what simple action the user is expected to perform, and what the immediate rewared for taking that action is.
On the other hand, when I have heard UX people, like you, talk at conferences, they do tend to take an approach like the Accessibility report I linked to above. They talk about the testing they did, and what specific problems they observed users having, and then perhaps make suggetsions about specific ways to improve Moodle to fix those problems.
Usability is definitely a big issue for us all right now. We have all used better interfaces than Moodle offers, and I agree with basically all the detractors of our current interface. I've been thinking a lot about it.
I'd say there are two things we should approach here at the same time. In fact I've started putting them on the Roadmap recently.
- There is a lot of low-hanging fruit. Small easy-to-fix usability problems that really impact new users. These are the small specific issues that Tim mentions above. Stuff like better defaults for a new site, and less-cryptic names for things like the "HTML block". A major project for 2.3 will be identifying as many of these as possible and fixing them. I'll be posting more about this soon to gather info on people's "favourite" pain points (some of this has been happening already in past months, I've been observing new users with Moodle).
- We need to seriously look at the whole workflow of building and conducting and following courses. There's been a lot of good ideas about this over the years. We need to look at these and implement them in the medium-term, like 2.4. And yes, probably engage full-time usability experts to help.
Finally I should say that usability is really really REALLY hard to get right. A lot of so-called experts still produce interfaces that we (individually) may not like. Think of the outcry every time Facebook is updated, think of all the frustration you still experience even with the very latest stuff from Apple, think of the new 2.x quiz-editing interface in Moodle which, even though a usability person with training developed it by the book has ended up as something that I personally find completely non-intuitive and confusing.
Perfect interface design always has to cope with prior learning and technology constraints. All we can do is continue to strive to find a better balance.
One other thing I think we need to be mindful of is changing the Moodle paradigm too radically. Evolution not revolution. There are a lot of users who have invested a lot of time in learning how Moodle works, and we can't alienate them.
Stuart - it'd be great if you could share your knowledge to help us identify those low hanging fruit. At the UK Moodle in HE event a few months I recall you had identified a number of these issues- e.g. putting an 'add another section' button at the bottom of the course sections. If these sort of effective suggestions could be documented as issues in the tracker it really would help us a great deal to fix them. It might still take a while to fix them because Moodle is complex software, but at least then we could discuss that problem objectively.
@dan - i'll try keep posting the 'low hanging fruit' on the forums but here are some -
Paolo added on to the breadcrumb/developers and admin location indicator post here - http://moodle.org/mod/forum/discuss.php?d=171196
I added something about information architecture for content editors here - http://moodle.org/mod/forum/discuss.php?d=189542
I believe this - http://blogs.sussex.ac.uk/elearningteam/2011/05/11/moodle-pages-format/ is going into a version of moodle2
An overbusy landing page didn't suit any of users so we did this http://blogs.sussex.ac.uk/elearningteam/2010/08/09/new-study-direct-landing-page/ & this http://blogs.sussex.ac.uk/elearningteam/2011/03/02/giving-moodle-courses-visual-identities/
People got confused by moodle maintaining where they were last time so we did this - http://blogs.sussex.ac.uk/elearningteam/2011/03/01/moodle-extended-memory-issue-cache-with-user-display-course_display/
and keeping 'on-trend' with those quick random hit of endorphins loving students gave us this - http://blogs.sussex.ac.uk/elearningteam/2011/08/10/recent-activity-in-moodle/ - which we extended into a recent updates widgit in the footer, and will probably make more use of on the course listing page to engage user interaction
course tutors didn't really know what all those drop down things were about so we tried to help - http://blogs.sussex.ac.uk/elearningteam/2010/09/03/moodle-developments-adding-pedagogical-context-to-selecting-resources-and-activities/
probably more, but i REALY need to go to bed now.
The moodle-developments-adding-pedagogical-context-to-selecting-resources-and-activities one is similar to a change I made to the add new question UI in Moodle 2.0. It would be good to do this for Add resource / activity / block too.
Also, it would be good if someone could re-code this better than I did in the question bank. I manged to make it work, but it is not good code. Would be nice to have some base code that works nicely and consistently, so this feature behaves similarly everywhere.
Usability isn't easy thing at all to get right (and quite agree with Martin about new quiz-editing interface, that's a major reason why our university still using 1.9 now - along with new File management). Look at MDL-24206 for example.
But it never hurt to start with adding some consistency, so that at least inside Moodle things work one way. Moodle interface is plagued by custom code written all over the place, so the similar tasks is done by different ways, or when one interface is upgraded similar is not. Having interface done in OnceAndOnlyOnce way may help a lot. Or at least adding some standards.
One example of inconsistence is MDL-24206, mentioned above. Another one is question category editing interface, that still plagued by only moving category 1 step per click (page reload), which make handling large structures VERY inconvenient. That is MDL-20251. We even written a code to do it in much more robust (and consistent) way, shared it and upgraded to 2.0, but it still don't get reviewed/applied just because Moodle HQ was so busy. I beleive this code is still easily upgradable to the new Moodle versions, since affected files doesn't change much in subsequent releases as far as I know. So if anyone still want to get this job done, they are welcome to do so...
P.S. By the way, our code for MDL-20251 also eliminated loops doing DB requests, making moving a category O(c) instead of O(N), but it still wasn't enought to get attention.
I think you should rephrase your statement. If you lost your comment that is bad and we shouldn't allow it to happen, but the editing time limit has a pedagogical basis.
To quote Martin from that thread:
You can't edit speech, you can't edit email and letters (once sent), and you can't edit face-to-face activity. Forums are the online analogy of this and should be that way. It's a very particular kind of time-oriented interaction that shouldn't be messed with.
(FWIW I am always editting my forum posts, I wish there was a preview for formating - I should really report this issue as a bug)
@dan - sound like a good thing to introduce to me!
p.s. is low hanging fruit making everything hidden (i.e. like draft/preview?) until the tutor specifies otherwise? the draft/preview/publish pattern is well used one. Would this make sense in moodle?
i blatently still have not gone to bed, but should do...
@martin - i'm glad your interested in users workflow - it's a good place to start.
i find usability quite easy, its a central part of our ethos we follow at sussex. We all hate change, its human nature, but if a new/inexperienced user finds something easy without having to read a manual its normally a sign your doing it right.
If there ever is a discussion on the Moodle interface, I'd like to get involved. I'm the Moodle developer for a big college in Scotland. Although I do everything from front-end code to plugin development to server maintenence, I do love front-end code.
I've been refining our Moodle's theme over the summer, and it's ended up taking a lot of visual cues from Facebook. Here's why:
- We never set out to copy Facebook, it just happened. When we had an idea, we looked at how other sites had implemented the feature. Facebook seemed to get a lot of things right.
- The vast majority of our staff and students use Facebook, so it's a system they're already familiar with. Putting things in a similar place to Facebook increases familiarity and makes people feel more at ease with the system.
- We're trying to increase the use of our Moodle. It's already well-used, but we can do better. Driving repeated visits is all about stickiness. Social features and regular updates keep people coming back. By putting important updates and social features front and centre, we're hoping to give lecturers a richer platform that they'll want to use more, and that will give students greater incentive to use it more often.
- We're seeing that a lot of staff and students like to keep Facebook for their personal lives: they don't want to add work colleagues or classmates to their 'private life'. Our students make great use of Moodle's messaging feature, so we really want to push it front and centre and make it the college social network.
- Facebook spend millions on user interface design and layout. They've got some very talented designers, UX engineers and front-end developers. Why shouldn't we benefit from their experience?
To this end, I'd like to show you what I've developed. This is my test course on our Moodle: our theme is called 'City' and we've also got a custom course format called 'City' that puts links to lecturers' profiles and the latest three topics from the News Forum on the course's landing page. We've also got a custom navigation block called 'Dashboard' that links to key areas of Moodle, our ePortfolio and to our in-house developed areas that show students' exam results, timetable and (soon) attendance statistics.
If other people are interested in this, I'd be happy to share our 'City' course format and possibly the Dashboard block: I just need to get permission from the college to do so. Sadly, I can't share the theme because the college sees it as something that sets our Moodle apart, plus it integrates tightly with 5 other themes (the accessible themes, via the theme switcher).
It seems to me that we really need a solid common user interface language throughout Moodle, that we can convince plugin developers to adhere to. I hate to bang on about it, but Facebook do know what they're doing here. This is something I've tried to bring in, where I can. I've got the same look and feel on our Moodle, our Mahara ePortfolio and, soon, our in-house social networking tool CityBuzz (built on status.net). From a coding point of view, this can be achieved by embracing object-oriented CSS. I saw a great video by Nicole Sullvan on this issue (below). She covers CSS architecture, in particular Facebook's concept of the 'Media Block'. I know this is a pipedream right now, but when Moodle 3 rolls around...
PS: Sorry for the huge image.
Hi all. I'm a UX lead for the Drupal project and was heavily involved in the D7UX project.
It seems to me that you all agree that things need improvement. But that's not enough. You need to research and define a framework that helps define *what* needs improvement for *whom* and *why*.
And that requires a dedicated effort that allows for some serious big picture thinking with all kinds of silly/grandiose ideas and sketches.
Designing and implementing actual improvements is a step-by-step approach for sure.
It is absolutely critical to understand the user's perspective. What do they want to achieve, towards what goal, how do they imagine it would work, etc.
Good recent example is the recent Netflix debacle: http://www.cooper.com/journal/2011/11/inside_outside.html
Once you understand, really understand your users, you can asses which areas need work most. You will see where it makes sense to start fixing low-hanging fruit. And you will likely have found some problems that will challenge assumptions on a deeper level.
It's not easy, it will hurt at times and it will never be perfect. It's about defining a vision and strategy that will let everyone involved make well-considered trade-offs in the design.
Because most of you probably are Moodle insiders, it is by definition hard, almost impossible to 'imagine' you were the end user (curse of knowledge). The design research to uncover user goals and formulate a UX strategy should ideally be led or facilitated by relative outsiders who are initially not aware of any sore spots or pain points. That's the hurting bit
You will end up with a much clearer picture of the Moodle audience though, and be able to define a direction for what the software should do for them. And that is incredibly exciting.
Thank you very much for coming here and giving us the benefit of your experience.
One bit I don't get is who you consider your users, and how you deal with a hugely diverse user-base. I am sure this applies to Drupal as much as Moodle.
With Drupal, who are your users? The people using Drupal to build their web-site, or the members of the public (or other consituency) who will ultimately use the web site. (I would guess both.) And so I suppose that for Moodle we roughly need to consider Students, Teachers and Admins.
Next the diversity of users. People use Drupal to build all sorts of web sites. There are relatively static plugic sites. There are more community sites, and there are people using it in companies to build intranets. (That is my gross over-simplification as an outsider.) How do you deal with that diversity when making UX decisions?
In the Moodle world, Moodle used by: primary schools, secondary schools, technical colleges, universities, within comanies for in-house traing, and by companies who sell commercial training services to others.
For Drupal 7 the explicit brief was to focus on improving things for the content creator. For Drupal 8 we'll invest in improving the site builder tools. So it's a strategic choice about for whom you want to optimize.
As for the diversity in types of site: we'll aim to focus attention on the common ground there: no matter what type of site, you build pages, components that go on those pages and build menus and navigation, etc.
For Moodle the distinction between Students, Teachers and Admins makes sense to me. Three roles you could develop personas for to build an understanding of how they percieve, approach Moodle.
@roy - just to say a big thanks for dropping by.
As a freelancer who deploys drupal as a cms for clients i'd like to say thanks for 7+! Saves me lots of those RTFM emails
i'll try help this thread by posting parts of the sussex external usability review of moodle1.9 later this week, along with some of the initial finding from user testing of moodle2. It's not a ux review - there are no recommended solutions - but it did help us focus on what our users needed, and what we should be focusing on to help them.