Developer meeting August 2012

Jump to: navigation, search

Developer meetings > August 2012 meeting notes

Time 13:00 UTC on Tuesday, 28 August 2012
Meeting room Moodle Dev Meeting Course

In this meeting we focussed on activities outside Moodle HQ.

Invited speaker: Andrew Nicols (LUNS)

Andrew spoke about Lancaster University's move from Lotus Notes to Moodle.

Activity Chooser

  • As part of this he wrote the new Activity Chooser, inspired by a the Quiz Bank Chooser.
  • The Activity chooser is written using YUI and Moodle renderers. It is modular. Improvements in usability have been made.

Course page changes with JavaScript

  • The LUNS team re-wrote the moving of sections and resources using drag-and-drop.
  • They added the potential to rename activities on the course page.
  • Hopefully the changes will make Moodle more resilient.

Barriers to implementation

  • Andrew attempted to get feedback from HQ, devs and end users through multiple channels (Tracker, a demo site, posting in the General Developer and Usability forums, screencasts, Twitter, a demo at a General Developer meeting), but wished he had received more.
  • Forums can be intimidating. Developer chat can be quicker and useful.
  • A mentor scheme may be helpful in future.

Thanks to Andrew and others at LUNS for their efforts. Thanks for Dan Poltawski for helping as an intermediary.

Moodle 2.4 progress

  • There will be a strict code freeze six weeks before 2.4 release, which is in six weeks time. Changes not in by that time will be delayed to 2.5.
  • Performance is an area we are working. Sam Hemelryk is developing the Moodle Universal Cache (MUC). This will introduce a common caching architecture with three kinds of caching: static, session and shared.
  • Course category management is another area that Sam is working on, but no progress has been made recently (forum).
  • Barbara Romero is creating new icon sets that will be more consistent, clearer and more attractive.
  • ForumNG is being reviewed as a possible replacement.
  • iCal integration with the Calendar is ready to integrate.
  • Course formats are being refactored.
  • An audio/video recording repository was developed as a GSoC project and may be considered for integration into core.
  • Collection module (to be called Survey) is about 60% done.


  • We will have various groups of difference sizes.
  • A general outcome will be to set the roadmap for the next few years.

Other business

  • Tim is working on improving searching for students when enrolling into courses and required feedback (MDL-34657).
  • The death of CVS is imminent. We will stop mirroring to CVS soon.

If you would like to correct these notes, please edit this page this page or email Michael d.

Meeting chat log

Paul Vaughan 14:54 Good afternoon. :)
Tim Hunt 14:54 That's weird. I cannot resize this Firefox window that has the BBB UI in.
Andrew Nicols 14:55 Hi Martin
Mary Cooch 14:55 bonjour
Andrew Nicols 14:55 Hey - I've got some slides instead
Andrew Nicols 14:55 Cheers
Andrew Nicols 14:55 Wooh magic
Tim Hunt 14:56 The new BBB UI is nicer than it was before
Andrew Nicols 14:56 Hopefully these will convert nicely - I've just checked them on our local insatllation
Andrew Nicols 14:56 Had some issues with bullet points etc
Helen Foster 14:56 not really, hmm
Mary Cooch 14:57 ooh! Andrew
Helen Foster 14:57 nice to see you Andrew!
Adrian Greeve 14:58 Should there be sound?
Mary Cooch 14:58 I can hear
Adrian Greeve 14:59 curses.
Davo Smith 14:59 what's the magic setting for enabling soud?
Andrew Nicols 14:59 Shouldn't be nything special afaik - I had to click 'Join Audio'
Helen Foster 15:00 sound preferences on your computer?
Andrew Nicols 15:00 Did he have his Theremin?
Tim Hunt 15:01 Is someone remembering to record this?
Tim Hunt 15:01 Ah, cool!
Eloy Lafuente (stronk7) 15:03 who is that long-haired guy? lol
Andrew Nicols 15:03  :p
Mary Cooch 15:03 it's lovely hair :)
David Mudrák 15:03 /me says hello to Andrew, Martin and Apu
Davo Smith 15:03 Yay - closing browser and reopening seems to have fixed the sound for me
David Mudrák 15:03 DISCO!
Andrew Nicols 15:03 It's a bit long at the moment
Helen Foster 15:03 I promised Michael d that I would write some meeting notes. Is it best to do so here or in the dev chat?
Eloy Lafuente (stronk7) 15:03 the main question is.. what's Moodle?
Helen Foster 15:04 +1 to lovely hair
Itamar Tzadok 15:04 hy
Gareth J Barnard 15:05 Hello :)
Paul Vaughan 15:05 Hi! :)
Martin Dougiamas 15:06 Nice to actually see you Andrew
Tim Hunt 15:10 That was very early in the cycle fo my learning JS.
Tim Hunt 15:11 Has that been integrated yet?
Tim Hunt 15:11 Sure, but please submit for peer review soon!
Mark Nielsen 15:14 To prevent the main window from scrolling, did you turn overflow to hidden on the body?
Helen Foster 15:15 what are toolboxes?
Helen Foster 15:15 ah, thanks!
Mary Cooch 15:17 nice
Martin Dougiamas 15:17 yes yes
Itamar Tzadok 15:17 About the chooser if there many modules there is scroll. So perhaps collapsibility of the two sections activities and resources
Tim Hunt 15:17 ForumNG needs an Ajax HTML editor too.
sam marshall 15:18 re htmleditor - consider iframe (I'm switching forumng from pure ajax to iframe for the editors)
David Mudrák 15:18 we all need it. it's the matter of core cupport for preparing draft areas AFAIK
Martin Dougiamas 15:18 Could drag and drop to change order, and it stays that way
Martin Dougiamas 15:18 yeah
Gareth J Barnard 15:18 Its a really good enhancement :)
Tim Hunt 15:19 It is really hard to get feedback.
Paul Vaughan 15:19 Andrew, what's your Twitter username?
Eloy Lafuente (stronk7) 15:20 that's coz you use the wrong language, lol.
Andrew Nicols 15:20 _andrewrn_
Paul Vaughan 15:20 Thx :)
Gareth J Barnard 15:20 Did you ask for a posting on MoodleNews?
Eloy Lafuente (stronk7) 15:21 (very good points, that slide ones)
David Mudrák 15:21 that's important feedback for HQ
Martin Dougiamas 15:21  :-( we don't want to be scary
Martin Dougiamas 15:21 BOO
Mary Cooch 15:22 thats a pity you feel that
Paul Vaughan 15:22 Releasing even a little block is scary!
Gareth J Barnard 15:22 Tim, Dan and Davo are really helpful in the developer forum :)
Eloy Lafuente (stronk7) 15:22 I'm scared what the hell you all eat @ LUNS, monsters!
Mary Evans 15:22 lol
Juergen Zimmer 15:23 sorry, also pretty new to moodle devel. Where do I find the developer chat? I keep bothering Tim ;)
Eloy Lafuente (stronk7) 15:23 monsters (developing, of course, lol)
Mary Cooch 15:23 anonymous forum -hmmm
Mark Johnson 15:23 Developer chat isn't very well advertised
Juergen Zimmer 15:23 Cool, Tim is my mentor then ;)
Gareth J Barnard 15:23 What's the link for Developer Chat?
Mark Johnson 15:23 you have to know its there and go looking for it
Martin Dougiamas 15:23 that last one has been on my wishlist for a while
Mark Johnson 15:24
Juergen Zimmer 15:24 thanks
Gavin Henrick 15:24 with your background in human interaction, what did you think about moving from 2 clicks to 3? from drop downs, to using the UI.
Tim Hunt 15:24
Steve Bader 15:24 I'm new as well, now I am a full time developer for Moodle for my University. New resources are great!
sam marshall 15:24 click +double click, innit?
Juergen Zimmer 15:24 "Sorry, but you do not currently have permissions to do that (View chat logs)"
sam marshall 15:24 new one
Rex Lorenzo 15:24 I get the same error
Gareth J Barnard 15:25 Thanks Mark, I don't have access, please could Contrib developers have access too :)
Martin Dougiamas 15:25 It's less decisions
Gavin Henrick 15:25 sam, yes, thats 3 :)
Tim Hunt 15:25 The problem with suggestions like anonymous forums, etc. is that they go against Moodle's pedagogy.
Mark Johnson 15:25 ah, you might need to be a core committer (?)
Gavin Henrick 15:25 try adding 1000 url resources, the extra clicks count
David Mudrák 15:25 IIRC Developers chat is open for Moodle contributors, isn't it?
sam marshall 15:25 3 clicks > 1 + double, imo :)
Tim Hunt 15:25 4. Useful to knowo someone's brackground if you are answering their question.
Helen Foster 15:25 Gareth, get in touch with me, I'll let you in!
Gareth J Barnard 15:25 Thanks Helen :)
Martin Dougiamas 15:25 Jabber to
Helen Foster 15:26 or anyone else (until we automate access)
Eloy Lafuente (stronk7) 15:26 we also need to explode and accept more sources.
Davo Smith 15:26 I played around with adding mod_edit forms in an iframe
sam marshall 15:26 that form is monstrous, so I sincerely hope it doesn't get added in to the picker :)
Gareth J Barnard 15:26 How long did it take to create?
Davo Smith 15:26 I think it might be in contrib somewhere
Helen Foster 15:26 Martin what were you referring to "that last one has been on my wishlist for a while"?
Gareth J Barnard 15:26 Cool :) - testing is a *** espectially with IE
Mark Johnson 15:26 I've played with loading mforms via AJAX, it's doable but it's not pretty. I dont know if it's doable with TinyMCE
Eloy Lafuente (stronk7) 15:27 clap, clap, clap => Andrew
Paul Vaughan 15:27 Thank you Andrew. :)
Mary Cooch 15:27 applause
Sam Hemelryk 15:27 (y)
Helen Foster 15:27 really interesting, thanks a lot Andrew
Mark Nielsen 15:27 Thanks
Andrew Nicols 15:27 Thanks for listenig :)
Juergen Zimmer 15:27 thanks, interesting stuff!
Helen Foster 15:28 oh, shall I create one right away?
Eloy Lafuente (stronk7) 15:28 hope listening does no implies understanding, lol, slides really helped.
Gareth J Barnard 15:28 Yes please :)
David Mudrák 15:28 The problem with threads at is that they become "down the screen" pretty quickly
David Mudrák 15:29 so announcing a new project there is tricky
Mary Evans 15:29 Thanks Andrew
Andrew Nicols 15:29 There was a question about moodlenews - I didn't know about Moodle News back then ;)
Gareth J Barnard 15:29 Would be cool if when you clicked on a thread it jumped to the last post in the forums.
Gareth J Barnard 15:29 Thanks Andrew :)
sam marshall 15:29 gareth 0 click the numbrt
sam marshall 15:29 number
Tim Hunt 15:29 If you click the number of unread posts, it takes you to first unread post
Helen Foster 15:30 there is a last post link
Gareth J Barnard 15:30 Did not know that - thanks guys & girls :)
Helen Foster 15:30 Dan is super!
Mary Cooch 15:31 Superdan
David Mudrák 15:31 I remember myself having difficulties with getting feedback on workshop spec in pre-2.0 times. it took weeks to gather useful info.
Tim Hunt 15:31 The main problem with dev chat is that only a limite dnumber of peple see it.
Mary Evans 15:31 I find dev chat is really difficult to manage i always end up with old logs
Mark Nielsen 15:33 Developer only forum?
Tim Hunt 15:33 MArk, General developer forum exists.
David Mudrák 15:33 isn't that GDF?
Martin Dougiamas 15:34
Mark Nielsen 15:34 More developer only though, less posts. Devs asking devs stuff...
sam marshall 15:34 GDF is mainly used by non developers imo :)
Tim Hunt 15:34 Shoudl sam H talk about htis?
Sam Hemelryk 15:35 I think I'm lined up to speak briefly about things
Tim Hunt 15:35
Mark Johnson 15:35 +1 on what sam said, GDF has a lot of questions from non-devs who ask there becuase it's active with lots of knowledgeable people
Mark Nielsen 15:35 Yeah, that's what I'm getting at
Andrew Nicols 15:36 yup
Mark Nielsen 15:36 Get some instant send forum posts, smaller audience - easier to follow posts
Eloy Lafuente (stronk7) 15:36 too loud
Adam Olley 15:36 its perfect
Adam Olley 15:36 everyone else was too quiet ;)
Eloy Lafuente (stronk7) 15:36 lol
Mike Churchward 15:36 What Adam said...
Adam Olley 15:36 (sorry eloy)
David Mudrák 15:37 Eloy: get a new Mac with the volume button (not that Apple-sexy but hey it works)  :-p
Tony Levi 15:37 its a partly magic bullet ;-)
Martin Dougiamas 15:37
Rex Lorenzo 15:37 what is the ideal server setup to take advantage of the MUC?
Tim Hunt 15:38 I guess it is a bullet, but you ahve to aim it yourself ;-)
Martin Dougiamas 15:38 3 kinds of caching ...
Helen Foster 15:41 static, session and ?
Andrew Nicols 15:41 you need to click publish
Sam Hemelryk 15:41 application
Martin Dougiamas 15:41 shared
Andrew Nicols 15:41 nope
sam marshall 15:41 no?
Mark Johnson 15:41 no :(
Mary Cooch 15:41 no
Tim Barker 15:41 no
Rajesh Taneja 15:41 no
Mary Evans 15:41 no
Helen Foster 15:42 application caching?
Helen Foster 15:42 thanks
Mary Evans 15:43 does Martin need to closed his screen?
sam marshall 15:44 Is there an example definition file? Maybe stick it on pastebin or something?
Sam Hemelryk 15:45
sam marshall 15:45 interested but no time :( It sounds good though, & I know Tim looked at it.
Sam Hemelryk 15:45 Tim === legend (thanks once more Tim)
sam marshall 15:46 thanks for definition list, looking now :)
Mark Nielsen 15:46 Sam, when reviewing I thought that the idea of definitions were confusing. Would it make more sense that when I want to create my own cache, that I would extend some base class and then use my class for my cache?
Tim Hunt 15:47 Subclassing is a bad way to configure anything.
Eloy Lafuente (stronk7) 15:47 I'd declare all core impls as final to prevent custom extension
sam marshall 15:47 I had a question about multi-server systems. Is thre a way to indicate in definition or whatever that a certain cache can be stored locally on each front-end server & doesn't need to be invalidated
Mark Nielsen 15:47 It's not really a confugration IMO
Justin Filip 15:48 Sorry if this is in the Wiki but is the cached data being stored in DB or on the filesystem?
Mark Nielsen 15:48 Sam, how should I reach you
Tim Hunt 15:49 It is probably a 'local hard disc' cache back-end type.
Tim Hunt 15:49 No reason it cannot be added later, sam, I think.
Tim Hunt 15:49 That is sam m
Justin Filip 15:49 =) Got it. Cool, thanks.
sam marshall 15:49 thinking of junk like the config cache, strings, would be nice to reduce net requests is all.
Tony Levi 15:49 I did that, so xcache could be used between servers, it works nicely for lang cache
Sam Hemelryk 15:50
Kris Stokking 15:50 Does this assume that there's a single cache backend being used for Application, Session, etc. caching?
Tim Hunt 15:51 Kris, each cache can use a different back-end
Eloy Lafuente (stronk7) 15:51 sure xcache can be used. no single, multiple allowed, each cache definition is associated with a chache instance (servers, configuration @ admin afaik)
Sam Hemelryk 15:51 Nope sorry
Sam Hemelryk 15:51 Kris: You can have several application back ends, there will be one used by default and you can map them for use etc
Kris Stokking 15:52 Right, but if I wanted to store certain session data on disk and other data in memcache, would an admin have the ability to configure that?
Tony Levi 15:52 I'm not sure the coherency problem has been dealt with yet
Mark Nielsen 15:52 You mean you can configure each definition to use a specific backend (potentially)?
Sam Hemelryk 15:52 Mark: Thanks for look at it btw, please do post on MDL-25290, certainly I'd like to hear more about what your thoughts were and perhaps look at how we can address issues like the definition confusion
Justin Filip 15:52 SVG? =)
Rex Lorenzo 15:52 Retinal display
Mark Nielsen 15:52 Sure thing Sam, I'll be able to elaborate some more
Sam Hemelryk 15:53 Year, each definition can make use of 1or more backends (they can be stacked to provide redundancy)
Sam Hemelryk 15:53 Great thanks Mark
Sam Hemelryk 15:53 Kris, yes that is the idea, providing the cache has a definition you can map it to any suitable backend
sam marshall 15:54 agree, wait for me to make it work in 2.3 :)
sam marshall 15:54 then look at it again, i hope
Mark Johnson 15:54 Yay ical!
Sam Hemelryk 15:55 Tony we had best have a chat about the coherency concerns, certainly the more complete we can make this the better
Gavin Henrick 15:55 not all of europe :)
Tony Levi 15:55 yeah, I need to actually set up the existing code and poke it with a stick first
Sam Hemelryk 15:56 Hehe great, please do, I'll be keen to hear how it goes
Tim Hunt 15:56 I have a small, but scary, proposed change for 2.4 that I would like to talk about.
David Mudrák 15:56 sorry, no mic here
David Mudrák 15:58 talking about plugins, there is this Plugins -> AMOS integration langing soon. Watch MDLSITE-1836 for progress
Gareth J Barnard 15:58 Updating plugins with the ability to 'undo' a version would be good :)
Anthony Borrow 15:58 what are the plans on getting stats on plugins for registered sites?
David Mudrák 15:58 Undo is tricky because of backups. And making full backup is tricky via PHP
Mark Nielsen 15:58 Yes :)
Tim Hunt 15:59 Why not use themes for that?
Gareth J Barnard 15:59 That would be cool as discussion on
Mark Nielsen 15:59 Course formats currently cannot select the layout, themes can still theme the layout, etc
Rex Lorenzo 16:00 ticket for the course format changes?
Itamar Tzadok 16:01 I have suggested to automate creation of issue tracker and Moodle docs page upon approval of a new contributed plugin.
Justin Filip 16:03 Yeah, for any of those other projects in progress, can that page be updated with tracker / wiki links (where applicable)?
Rajesh Taneja 16:03 FYI:
Gareth J Barnard 16:03 I think that course formats should stick with layouts and reference 'base class' type themeing in core that themes could then 'inherit' from.
Rex Lorenzo 16:03 What did you mention about the Collection module?
sam marshall 16:04 feedback: if this is a survey/feedback/questionnaire module, Collection is not a very obvious name :)
sam marshall 16:04 ah, cool
Tim Hunt 16:04 Please may I talk about my user-searching feature?
Tim Hunt 16:05 Well, it is a 2.4 thing
Tim Hunt 16:05 Hopefully
Tim Hunt 16:05 I could edit the roadmap wiki page to add it there, thenit woudl fit onw on the agenda!
Mary Cooch 16:05  :)
Andrew Nicols 16:06 Did you guys ever move to Postgres?
Justin Filip 16:06 Is there an easy way for us to find issues in the tracker that have API changes? We've been getting bitten by changes to core APIs, removal of methods/functions, new APIs.
Tim Hunt 16:06 Justin, there is now an API cahnge label./
Rex Lorenzo 16:06 release notes have a good collection of changes
Helen Foster 16:06 justin, there is a api changes label
Tim Hunt 16:06 Also, in the code, look for upgrade.txt files.
Justin Filip 16:06 Excellent, thanks.
Tim Hunt 16:06 Like question/type/upgrade.txt
Helen Foster 16:07
Tim Hunt 16:07 For chagnes to the question type API
Justin Filip 16:07 Are those upgrade.txt files written before a release or is that part of the release process?
David Mudrák 16:07 before
Tim Hunt 16:07 Justin, then should be writted whene the development is done.
Justin Filip 16:07 Perfect
Tim Hunt 16:08 If you make a comit changing an API, it shoudl get rejected in integration review if you have nto updated the upgrade.txt file at the same time.
Kris Stokking 16:08 I assumed you were a bit busy, but thanks! :)
Mark Johnson 16:09 yes
Andrew Nicols 16:09 yup
Mark Nielsen 16:09 yes
Tony Levi 16:09 yep
Paul Vaughan 16:09 Yep.
Martin Dougiamas 16:09 yes, though you sound english
Tony Levi 16:09 love it.
Mary Evans 16:09  :)
Tim Hunt 16:09
Tim Hunt 16:10
Andrew Nicols 16:11 Thanks Tim - seems like a great idea
Paul Vaughan 16:11 exact / fuzzy option - good idea
Helen Foster 16:12 I didn't find it applying to but will look again
Gareth J Barnard 16:12 Chuffin Nora - a big change Tim!
Mark Nielsen 16:12 Anyone still interesting in that developer only forum?
Tony Levi 16:13 waho
Eloy Lafuente (stronk7) 16:13 Please announce CVS EOL for 2.x (<=2.5 ok, <= 2.4 perfect)
Tony Levi 16:13 that sorting code is scary
Tim Hunt 16:13 I personally think that is a bad idea. Developers need tot alk to users more, not less.
Tony Levi 16:13 i.e slow
Gareth J Barnard 16:13 I'm looking forward to the course format changes - please keep up the good work guys :)
Helen Foster 16:13 Mark, do you mean moderate the gen dev forum more?
Mark Nielsen 16:13 No, it's basically dev chat but a forum
Tim Hunt 16:13 Re API change lablel. See, for example,
Sam Hemelryk 16:13 kill it
Mary Evans 16:13 I wonder if ther is a need to drop some old themes
Eloy Lafuente (stronk7) 16:13 idiot question, can the same application caches be shared between multiple sites? Can be really useful for partPlease announce CVS EOL for 2.x (<=2.5 ok, <=2.4 perfect)
Sam Hemelryk 16:13 kill it now
Andrew Nicols 16:14 Please kill it?
Justin Filip 16:14 *single tear*
Darko Miletić 16:14 A bit late to the call
Iñaki Arenaza 16:14 Yep, I'm collecting CVS stats on our server
Anthony Borrow 16:14 lang 1.9 still uses cvs
Mary Evans 16:14 we could do with the ability to add images into theme via settings page
Eloy Lafuente (stronk7) 16:14 I'm interested only on core. feel free to keep langs/contrib
Gareth J Barnard 16:14 Odd question, why Git and not Mercurial?
David Mudrák 16:15 sorry?
Eloy Lafuente (stronk7) 16:15 lol, gar
Gareth J Barnard 16:15 Ok ;)
Itamar Tzadok 16:15 Contributed plugins: tie newly approved to docs page and issue tracker automatically
Iñaki Arenaza 16:15 Gareth It's all Martin Langhoff's fault!!!!
Gareth J Barnard 16:15 ROFL
Gareth J Barnard 16:15 I've grown to love Git, now use it in other projects too :)
Martin Vögeli 16:16 tim & mary: can we have a chat about MDL-31365 after the main chat?
Sam Hemelryk 16:16 Mary had a feature request for admin settings being able to deal with files
Mary Evans 16:16 yes
Mark Nielsen 16:16 File upload? Yes, we would like that as well!
Gareth J Barnard 16:16 Plus thumbs up for Mary Coochs' Git help :)
Sam Hemelryk 16:16 Everyone would love that I think
Martin Vögeli 16:16 cool :)
Martin Vögeli 16:17 tim? it won't take long...
Andrew Nicols 16:17 Thanks all - and thanks to HQ for staying up til stupidly late :)
Gavin Henrick 16:17 thanks
Tim Hunt 16:17 Thank you
Gareth J Barnard 16:17 Thanks :)
Mike Churchward 16:17 Bye everyone.
Mary Evans 16:17 Thank YOU!
Paul Vaughan 16:17 Ta all.
Mary Cooch 16:17 thanks
Iñaki Arenaza 16:17 Thanks
Mark Nielsen 16:17 thanks
Kris Stokking 16:17 Thanks everyone
Eloy Lafuente (stronk7) 16:17 (finger)
Justin Filip 16:17 Thanks
Itamar Tzadok 16:17 Thanks
Mark Johnson 16:17 Thanks, bye!
Paul Vaughan 16:17 Nite!
Sam Hemelryk 16:17 Morning everyone
Rajesh Taneja 16:18 ciao
Andrew Nicols 16:18 Yup :)
Eloy Lafuente (stronk7) 16:18 ciao :-)
Tim Hunt 16:18 Anyone who cares about black-board question import, you owe Jean-Michel Vedrine
Rossiani Wijaya 16:18 byee
Tim Barker 16:18 night