In our recent introduction to eFront’s architecture, we emphasized it’s open source nature and extensibility. In this post we’ll take a look at eFront’s module system, and how it enables eFront users to extend and mold the software to their e-learning needs.
Modules what?
In the software world we call extensible programs “modular”, and their distinct units of functionality “modules”. When those modules are installed separately and after the installation of the basic software, they are also called “plug-ins” and “add-ons” (think of browser add-ons/plug-ins, from the Flash Player and IE toolbars to the rich Firefox add-on ecosystem).
So, “modules” are small programs that cannot run standalone, but are installed in order to extend a base program (in our case, eFront), and allow it to do something it couldn’t before.
The repository
Everybody can make a module to extend eFront, provided he has some basic familiarity with programming (we’ll get to the specifics in a later post).
Having made it, you can either keep just for your eFront installation, if it’s something that doesn’t make sense sharing or that’s proprietary to your e-learning service, or you can share it with the eFront community, so everyone can install it, and even improve it, in a true Open Source spirit.
But did you know that there’s already a curated list of modules available for eFront? In this page you’ll find over 30 of them, each adding a new capability to eFront. They are available to download for free, and installing them is a dead simple process.
We’ll give a brief introduction to a few of the more useful modules available, so you can get a sense of what’s out there and in what ways eFront can be extended.
A number of modules extend basic eFront functionality with very focused extra capabilities.
The “shared files” module, for example, allows the professors to share entire folders, by extending the ‘shared files’ feature of eFront.
In a similar vein, the “Last logins” modules allows users to see who last logged on to a lesson from the dashboard, while the “Quick mails” module allows users to send e-mails directly to their students/professors from a lesson’s control panel.
You see how basic built-in functionality, like how you can share files and folders, and what’s shown in the dashboard, can be extended in almost any way you want.
Further building on that are modules that add interoperability and compatibility with third party standards and systems.
Of course eFront already offers compatibility with lots of industry standards and interchange formats, but if you find yourself stuck with some unsupported obscure format, building a custom module to handle it is always an option. Or installing one somebody already shared, like the GIFT/AIKEN module, which allows users to import test questions to their lessons using the GIFT or AIKEN format.
Other modules go beyond extending built-in functionality and compatibility and offer whole new kinds of features and content types.
The Crossword module, for example, allows the creation of crossword puzzles that students can solve as a fun and interactive way to test their knowledge of a particular subject. Crosswords are generated using the “empty spaces” (“fill in the blanks”) questions that are assigned to units within a lesson.
The Journal module let’s users keep a personal diary (journal), allowing them to write down their notes, observations and thoughts as they study their courses. This makes something that would normally need external journaling software available for all users in the context of their studies.
From the educators end, the “Lesson blogs” module allows professors to create multiple blogs inside each lesson, to share insights and knowledge not available in the main course material.
You can also embed or enable inter-operation with third party services, including adding a full blown web-conferencing solution to eFront. The “BigBlueButton” module does exactly that, providing integration of the BigBlueButton conferencing service in eFront, and offering text chat, audio and video capabilities, a virtual whiteboard and many more presentation and conferencing features.
Yeah, eFront is really that extensible.
This, of course, is just the tip of the iceberg, with over 30 modules available for immediate download and install. But what’s perhaps even more interesting is that you can build your own modules and share them with the eFront community (or keep them to your business, it’s your call).
In our next installments we’ll take a look at a few more modules, installation instructions, and a brief tutorial in how to create your own.
Until then, keep warm. Unless you’re in the Southern Hemisphere, in which case, stay cool.