Phew. Enough with the Apple stuff. I actually still have one or two more posts on the topic that I want to return to at a later time, but I need a break from it. (I’m sure you do too.)
So here’s a slightly different angle. As regular e-Literate readers know, Patrick Masson and I published an article in eLearn Magazine in which we advocated for “an LMS for a mashup world.” Since then, there have been a lot of questions of what such a beast would look like. Can you build a system that has both the ease-of-use that comes from tight integration in traditional enterprise apps and the nimbleness that you get from mashups?
In response, I present Exhibit A: Zimbra.Zimbra is a web-based competitor to Microsoft Exchange. So it’s pretty enterprise-ish in nature. It’s traditional integrated calendar/email/addressbook/to-do lists. But they’ve built into it something that they call “Zimlets“:
Zimlets are an extensible mechanism for marrying Web 2.0 technologies to enterprise messaging (e.g., email, IM, voice) and collaboration. With Zimlets, arbitrary message content can be made live by linking it with web content and services on intranets or the Internet. No more cutting and pasting from email to browser. “Mousing” over actionable content gives the user a real-time preview (subject to security constraints) that can be factored in decision making:
- Mouse-over a date or time, and see what’s in your calendar;
- Mouse-over a phone number, and see what’s in your address book;
- Mouse-over an physical address, and see a map or even driving directions and estimated arrival time;
- Mouse-over a flight, and see whether or not it’s on time;
- Mouse-over a customer email address or case tracking number, and see its status;
- Mouse-over an equity to get a quote;
- Mouse-over a part number to check inventory;
- Mouse-over an Internet order, and see its shipping status; and so on.
- Right click on a phone number to make a call with your soft-phone (such as via Skype or a Cisco VoIP phone);
- Right click on a date to schedule a meeting;
- Right click on a name, address, or phone number to update your address book;
- Right click on a airline reservation to print your boarding pass;
- Right click on an equity to trade;
- Right click on a part number to place an order for more inventory;
- Right click on a purchase order, provisioning request, or other internal workflow request to approve or reject it; and so on again.
Pretty cool, eh? We see some of this being built into apps like GMail, but what’s cool about Zimbra is that they provide an easy-to-use generalized extension mechanism which lets you mashup to your heart’s content.
How do Zimlets work? From their white paper:
Zimlets are the first actionable content model designed to leverage Web 2.0 technologies-AJAX, XML/web services, and mash-ups. Most Zimlets can be specified declaratively in a simple XML definition file that specifies the UI, behavior, and URL endpoints associated with the Zimlet. While Zimlets allow the definer to “drop” into JavaScript (client-side) or Java (server-side) code in order to provide rich, highly customized behavior, the vast majority of Zimlets are “weekend projects” that are fully characterized via that declarative template.
At the same time, Zimlets are also designed to address enterprise deployment constraints:
- Under Zimlets, the deployment is done on the server-side, where extensions/customizations can be centrally installed and managed by the system administrator.
- Security, too, is managed on the server-side under the AJAX �based Zimlet model; a client’s requests are routed via a secure, managed server that can proxy the client’s security privileges as appropriate.
- Zimlets run under a protected execution model (much like JSPs and Servlets) in a manner that prevents them from inadvertently or maliciously interfering with other processing on the system.
Can you picture extending this sort of model to an LMS? Wouldn’t it be cool to, say mouse over a student (discussion post, blog post, essay, etc.) and drop in an evaluative comment and/or rating? Or attach a comment to the student on whatever the item is? Or have the student be able to mouse over a (discussion post, blog post, essay, reading, etc.) and blog it or comment on it or email the author? If we had a mechanism that allowed this sort of extension to be created while minimizing the labor involved, all kinds of capabilities could blossom.