There's been much talk over the last years about Chamilo 1 and 2, whether they were the same product, whether we were going to merge, etc. Last month's General Assembly of the Chamilo Association (which also made me the happy president of the association) helped us clarify a common line of conduct which, I am sure, most will appreciate. If you're in a hurry, you'd better move directly to the end of this article ("Conclusion"), because I want to drive you through the history of both projects now to give you a complete understanding of both pieces of software.
History of Chamilo 1 (now Chamilo LMS)Chamilo LMS's code starts to be written in 2001. A little before the first traces you might find about Moodle, so yes, in a way Chamilo is the older brother of Moodle (how about that, now?). It is born in the Université Catholique de Louvain as the Claroline project. In 2004, one of the founders of the Claroline project decides to fork the software to give it a increased focus on businesses, and launches the D0keos company. It could have been the Claroline company, launched as a spin-up of the university, but for human reasons it was not something the different people involved agreed on, so the new D0keos project was born, and an infamous e-mail was sent by the new D0keos founder to all the Claroline community, stating that "The Claroline project is dead, long live D0keos" (which was, obviously, not true - Claroline still lives today). The software (which is still the basis of Chamilo LMS) continued to be developed, with many changes and improvements, until 2009. During that period, the D0keos tried (but somehow failed, otherwise I wouldn't be writing all this) to develop a spirit of community. Somehow, it partially reached that objective, with a considerable involvement of mine, but decisions taken by the head of the company had the particular characteristic of pissing the community off and in 2008 it started using the nerves of the business partners as well, until in 2009, most of them (community and partners) decided the continuous lack of consistency in the lead's actions and opinions should stop affecting the software, the community and the businesses of his partners, and decided to launch Chamilo (in early 2010, although the decision had already been taken by the end of 2009). Since then, and in only 2 years time, without external funding, the Chamilo community has grown to 1 million users worldwide, pretty much the same results as D0kkeos in 5 years time, albeit with a more widespread internet connectivity. As you understand, this project (Chamilo LMS) is using the same codebase as in 2001 and shares many elements with the Claroline and the D0keos projects, but has since then been reworked to include many practical Web 2.0 tools for the teachers, which make his work much easier today. It has also received many SCORM improvements, tracking fixes and social networks integrations, altogether keeping the previous visual structure which make it possible for organizations to migrate easily from one version to another, without having to train their teachers again. Many aspects of the backend have been optimized (the next version comes with huge database structure improvements and great security filters which don't prevent the teachers from doing their work). Chamilo LMS is the one used on https://campus.chamilo.org and chances are that if someones tells you about Chamilo, they're talking about this version. It represents 98% of our user base (of our community) in 2014. Definitely, you could say that Chamilo LMS is a project that built its features for the masses, providing great tools, with great reliability and security, and that is continuing to improve by the day (I just checked and we have had 900 changes in the code in the last 30 days...). So while the 2.0 (or as we will see, the "LCMS Connect") project exists, Chamilo LMS will continue being developed at least for the next two years (and there will be support for it at least for the next 4 years, so fear not). Chamilo LMS's development is managed by companies spread over Belgium, Spain and Perú, and backed up by the universities of Grenoble (France), Pau (France), Carlos II (Spain), Genève (Switzerland), Tocantíns (Brazil) and San Ignacio de Loyola (Peru).
History of Chamilo 2 (now Chamilo LCMS Connect)Chamilo 2, or at least its concept, was first designed in 2006 by a team of (mostly Belgian, as was Claroline) university teachers and students as a way to redesign D0keos and increase its flexibility. It was, at the time, thought to become, at some point, D0keos 1.7 (the current version was 1.6). However, due to the innovative nature of the project (and its development team) and the little resources assigned to its development, the project soon felt into dismay and, two years later (2007), as the mainstream project released a new major version (called 1.8), it was decided the project would be reviewed and relaunched as D0keos 1.9. Sadly, the same fate stroke D0keos 1.9 and it was never actually released. In late 2008, it was decided the project would embark more redesign and be coined D0keos 2.0. Before this version was out, a split occured and the Chamilo project was decided to be launched, with the expectation that what had been developed until then as D0keos 2.0 would be released as Chamilo (the first ever real version of the software to be released). However, because of a lack of resources again, the team could not deliver and it was decided that, on the 18th of January 2010, the Chamilo project would be announced to the public with version Chamilo 126.96.36.199, which was the continuation of the D0keos project, as a way to give Chamilo 2.0 more time to get ready. Being two different software bases, it is currently too difficult for both development teams to join efforts without loosing months of work and thus affecting you, the users. In December 2010, Chamilo 2.0 was released as a first stable version, but many reported that, although the features it offered were certainly interesting, it still lacked the usability of Chamilo 1.8, and we temporarily decided to stop promoting 2.0 so that the team could focus on a better released. This is how Chamilo 2.1 came to be in January 2012, which was more stable. Chamilo LCMS Connect's development is mostly coordinated by the Hoogeschool University College of Gent, Artevelde Hoogeschool, Erasmus Hoogeschool and Vrije Universiteit of Brussels (all of them in Belgium, all of them mainly Flemish-speaking academical institutions). Although the original idea was to redesign the whole software and enjoy the usefulness of object-oriented programming from the ground up, a series of untimely or inadequate decisions have slowed down the development of LCMS and its reaching maturity. A few of these:
- (too) early split of the code into one core and about 50 "modules", which in consequence are not ideally maintained, generating a series of commits that should logically only be made at the top level of the inheritance schema, but that need to be "propagated" to about 50 modules
- lacking documentation and very high complexity of the code structure, making it complicated to delve into in less than a full-time week, and very complicated to master in less than a few months (most of new Chamilo LMS developers get their first hack ready in less than a day)
- badly known history of the project, leading to late major rewrite of the database layer (already resolved in 2009, but still surprising at the time)
- no decision taken, nor priority set on how to manage translations in order to allow for external translators (without developers knowledge) to contribute (that's an issue since 2010, and still is in 2014)
ConclusionBecause of the numbering in the versions (Chamilo 1 & Chamilo 2), people tend to be *very confused* (and this is an understatement) about the drastic changes of interface, the lack of translations to other languages than English and Dutch of LCMS (being worked on for the last 2 years without much results, I must say) and the missing features in comparison to version 188.8.131.52. This worries most of our users. Well, that's because these really are two, completely different pieces of software, developed by different teams (although they are in active communication to share best practices and decisions) for different environments. Although the objective of version 2 was to make things so flexible we could reach different environments with the same software, it still needs a little bit of time to get there. During the 2012 General Assembly, it was made clear that our goals (as two different teams) were still different, and we thus decided it was time to remove the ambiguous character of that naming mistake we did 2 years before. What was previously known as Chamilo 1 will now be officially named Chamilo LMS, and Chamilo LCMS Connect will be the name of the parallel project which was previously called Chamilo 2.1. This will soon show up on our website, as long as a set of characteristics for each, so people understand better what they're getting out of the Chamilo project, be it through Chamilo LMS or Chamilo LCMS Connect. Also, decisions have now been taken in common by the two teams to move towards a slow integration by re-using the same pieces of software at the core of both applications. This should vastly benefit the implementors of Chamilo as we will re-use more pieces of the Symfony framework, which means people working with Symfony directly or with other pieces of software using pieces of Symfony themselves (like Drupal 8) will be more easily able to tune Chamilo to their needs in the future. As a reminder, Chamilo differs greatly from its predecessors though three very important decisions:
- the trademark is owned by a non-profit association, governed by 5 different people of various countries and activities
- official providers can only become providers once they have contributed something, which means they will be much more likely to contribute in the future (the learning curve is acquired since the very start)
- official providers have to pass an exam, which includes understanding what free software means for their business