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.
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
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??
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

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??
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
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
Angela
There's some interesting discussion in http://moodle.org/mod/forum/discuss.php?d=87024 about gzip.