Impact of user interface design on Moodle performance

Impact of user interface design on Moodle performance

by Colin Chambers -
Number of replies: 7
Is anything being done to help the user interface load faster. In firefox if you view the source of a page and refresh it you will actually reload the page in the source view. I have been using this trick while developing Moodle and found a massive increase in speed.

This has highlighted how slow the user interface is to render. I know some of the tricks are to add the defer statement to javascript include statements and do everything necessary to encourage browsers to cache relevant files.

I just wanted to kick off a discussion on this as the current rendering speed makes Moodle appear slower than other applications I have developed even though underneath it actually quite fast.
Average of ratings: -
In reply to Colin Chambers

Re: Impact of user interface design on Moodle performance

by Jenny Gray -
I recently heard Steve Souders from Yahoo presenting about the work he's done to improve the performance of their websites, focussing on front-end rather than back-end changes.

He has written a plug-in called YSlow for FireBug, which is itself a plug-in for FireFox (for those who haven't heard of it - its great, try it!). You can download the plugin here http://developer.yahoo.com/yslow/ It will assess your site against 14 "rules" and gives you a score based on grades A - F, like at school!

I ran YSlow against the Moodle.org site. Some things come out well, others badly:

B Make fewer HTTP requests
F Use a CDN
F Add an expires header
F GZip components
A Put the CSS at the top
D Put JS at the bottom
B Avoid CSS expressions
n/a Make JS and CSS external
A Reduce DNS lookups
A Minify JS
A Avoid redirects
A Remove duplicate scripts
F Configure ETags.

Interestingly I also ran it against the OU's VLE which fared much the same (more JS) and against our Open CourseWare site which was a little worse again (more HTTP requests, more javascript, more DNS). Clearly the more blocks, and the more complicated they are, has some impact - at first glance a lot of the problems with OpenLearn come from the GoogleMaps integration sad

So some of the rules you might disagree with, or might not be suitable for your site, some depend on your individual site setup, but others we ought to try to look at as a community.

Volunteers??

In reply to Jenny Gray

Re: Impact of user interface design on Moodle performance

by Tim Hunt -
Picture of Core developers Picture of Documentation writers Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers
Put JS at the bottom

There might be a quick win here just be tweaking require_js, and how it is called from print_header (move it to print_footer!)
In reply to Tim Hunt

Re: Impact of user interface design on Moodle performance

by Colin Chambers -
If it's that simple it could make a huge improvement. We used a cms where I previously worked that used far less js and it was very snappy even on a slow box. That was the main difference I can remember about how the page was structured
In reply to Jenny Gray

Re: Impact of user interface design on Moodle performance

by Carlos Merida Campos -
Adding more Ajax would definitely improve presentation performance (and smoothness in the visualisation). I guess some parts are already ajaxed, aren't they?


In reply to Carlos Merida Campos

Re: Impact of user interface design on Moodle performance

by Colin Chambers -
I like ajax in that it should reduce network traffic and the need to reload pages. However it has accessibility issues that need to be resolved to become more useful and acceptable. If we can show that we can add ajax without detracting from usability and accessibility then I agree it would be a great improvement
In reply to Colin Chambers

Re: Impact of user interface design on Moodle performance

by Angela Roberts -
Does anyone know if anything has happened on this front? Has anyone done the research to determine what would be involved step by step. Maybe if the person who knows what to do (but doesn't have the time) could guide us willing to put in the time....we could make this happen sooner than later.

Angela