About 8 months ago I did a comparison of EDU 2.0 lines of code vs. Moodle. Since then, we've added a huge amount of functionality, including:
- Facebook-like feeds for classes, groups, and per-user.
- Full customization of portals
- Major ease-of-use improvements
- Improvements to the class catalog and e-commerce features
- Improvements to the library functionality for reuse
- Simplified search
Here are the updated figures for our code base:
- 37,000 -> 47,000 lines of code (+27%)
- 742 -> 858 classes (+15%)
- 4977 -> 6192 methods (+24%)
- 6 -> 7 methods per class (+16%)
- 5 -> 5 lines per method (+0%)
So overall, the code base went up by about 25%, which is pretty good considering how much functionality we added. In addition, the platform got *faster* and the code is simpler to understand.
In contrast, Moodle 1.x is over 1,500,000 lines of PHP.
Graham, cool info.
I mentioned above my panel proposal for SXSW. I'd love for this to be part of the story.
Some questions:
- When you say 858 classes, are you differentiating the new classes you create? I'm guessing not, that you have included Rails itself, plugins, gems, etc? Or am I underestimating the task you took on?
- And the implication: when you say you added 10,000 new loc, how many were actually written in house, vs. installed?
What I'm looking for is the story of how even a pathetic programmer like me can use rails and its gems/plugins to produce near-magic, and professional programmers to change worlds.
ed
Posted by: Ed Jones | Oct 06, 2010 at 06:42 AM
Hi Ed,
The statistics only show the code that we wrote ourselves. We do not include Rails itself or any gems.
The #1 most important thing for creating elegant, efficient software is having a good architecture, which is mostly a function of the architect, not the software stack.
Cheers,
Graham
Posted by: Graham Glass | Oct 06, 2010 at 11:03 AM