Moodle development traffic 38/2010
Latest stable version 1.9.9+
There are five commits into the stable branch from the last development week (from Tue Sep 21 to Mon Sep 27). ♦ Rossiani Wijaya fixed a bug in Forum module that allowed students to delete their posts even after $CFG->maxeditingtime (MDL-24258). Rossie also applied a patch suggested by Ken Gibson that deals with a bug in Internet Explorer 8. This browser does not support links to empty anchors like <a id="gohere"></a> and caused that section links from Course sections block (and Course contents extension, too) did not work in it. Credit goes to Matthew Davidson for discovering this IE8 behaviour (MDL-18232). ♦ Andrea Bicciolo committed a fix prepared by Daniele Cordella that fixes a regression in Database module, caused by recent work on MDL-24033. ♦ Iñaki Arenaza continues with fixes of CAS authentication module that crashes if there is no LDAP server set up (MDL-16168). Iñaki also applied a correction by Jose Garcia that fixes CAS synchronization with Microsoft Active Directory.
Moodle 2.0 RC1
There are 110 commits into the main branch from the last week. Development is now focused on fixing bugs and polishing the code style. More than 50% of total 176 QA tests already passed the second QA testing cycle, more testers are welcome to confirm the rest.
Eloy Lafuente’s recent work on Question bank backup landed in CVS and he is currently in a heavy combat with their restore. Backup and restore of Questions is not trivial job. By the design, Moodle backup and restore (now stored in *.mbz files) works best with whole course backup. But questions generally live in their own contexts outside the course, they can be used from multiple activities across courses, there is a complex machinery of access rights etc. These factors make the procedure of their backup and restore pretty complex.
Quotes of the week
“I sort of think at this point the best solution is to install an orbital death laser which will be automatically targeted at any server that ever runs MySQL, however I will try to come out with a plan B just in case that one doesn’t work out.”
– Sam Marshall encountered a feature of MySQL: you cannot update a table and select from it in a subquery.
CVS is fine if you aren’t using git.
– Martin Dougiamas originally said this in a different context but I like the sentence as it is :-p
Who to blame for Moodle 2.0
Moodle project is approaching 2.0 release. Let us look back on who contributed to the HEAD branch during this development cycle.
The work on Moodle 2.0 officially started on 10th October 2007 when the branch MOODLE_19_STABLE was forked and the HEAD branch was renamed to ’2.0 dev’. Today, there are 8097 files in the source code tree, containing 1.9 millions lines of code (if they all were considered as text files – some of them are binary files like pictures).
For the purpose of this report, I used moodle.git mirror and a couple of shell lines combining common UNIX data processing tools (like sed, awk, cut, sort and uniq) to go through all these files and executing ‘git blame’. This command displays the content of the file and (among other information) the name of the developer who most recently modified every single line in it. We can roughly estimate a developer’s contribution by counting all the lines reported for them by git-blame. Note that this method does not say anything about the amount of the real work – the most recent modification could by a fix of a stupid typo or even just a removal of trailing whitespace. Also, if a developer just commits some other’s work, git-blame will consider them as the author. Which is not that bad actually as the person is really the one who is responsible for that code being part of Moodle. While having in mind what this really represent, let us look at the aggregated figures.
The following table contains the list of top 20 contributors into Moodle 2.0 according the number of most recently modified lines of code. The sum of numbers of lines modified by these people represents around 97% of all lines in the current Moodle 2.0 tree.
| Lines of code | Developer |
|---|---|
| 771185 | Petr Skoda |
| 347213 | Sam Hemelryk |
| 271274 | Martin Dougiamas |
| 105830 | David Mudrak |
| 70984 | Nicolas Connault |
| 64176 | Eloy Lafuente |
| 74115 | Jerome Mouneyrac |
| 41782 | Dongsheng Cai |
| 34527 | Tim Hunt |
| 16141 | Dan Poltawski |
| 14544 | Patrick Malley |
| 12236 | Penny Leach |
| 9506 | John Stabinger |
| 8072 | Jamie Pratt |
| 7882 | Iñaki Arenaza |
| 6839 | Andreas Grabs |
| 6729 | Andrew Davis |
| 5140 | Francois Marier |
| 4732 | Dan Marsden |
| 4495 | Sam Marshall |
At first, I was surprised by the amount of ‘my’ lines. Then I realized that while working on new format of Moodle strings in 2.0, I re-committed all the language files from legacy /lang/en_utf8/ folder into new lang/en/ folders. Therefore I am the one reported as the most recent editor of most of 15000 strings in Moodle and git blames me instead of the real string authors. Let us take it as an example that similar statistics should be always interpreted very carefully.
Post scriptum
Yesterday, I had my last John Smith’s Extra Smooth beer can and so the last relic of my holiday trip to Wales has gone.



September 30th, 2010 at 22:22
[New Post] Moodle development traffic 38/2010 – via #twitoaster http://blog.mudrak.name/2010/10/moodle-d…
October 8th, 2010 at 12:59
I am sorry but because of my webhosting’s database crash, all comments to this post were lost
This is copied from Google cache:
–
Dan Poltawski Says:
October 1st, 2010 at 01:36
I’m surprised by my place on that list of recently modified files, as it certainly doesn’t feel like i’ve been putting the work in to make it there!
–
Dan Poltawski Says:
October 1st, 2010 at 01:37
ps. David, I can ship you John Smith’s Extra Smooth beer, but I don’t recommend it!
–
David Says:
October 1st, 2010 at 10:59
@Dan Poltawski: I guess your results are strongly influenced by http://github.com/moodle/moodle/commit/80d72d56bc818ab0a6a66e223432be9c35876887 as you were the one who committed SimplePie library. Thanks to their coding style, it gives you more 13000 lines. git-blame apparently keeps them assigned to you even if the file itself was renamed and replaced with newer version later… As I said in the post, any stats may lie so easily. But still – if there is a problem with SimplePie, we will blame you :-p
–
David Says:
October 1st, 2010 at 11:00
@Dan Poltawski: Also, don’t forget about the great work you’ve done personally on repository plugins. Thanks for that!