I (still) spend a fair amount of time thinking about the learning object repositories work that was done back at the turn of the century. A bunch of folks (myself included) took up the task of building software to let people easily publish, describe, share, find (and hopefully use) digital assets or learning objects (assets with a bunch of metadata tacked on the side).

I think it’s fair to say that the experiments failed pretty dramatically. The only content that was added to CAREO was done under the auspices of Large Projects and/or Institutions. Individuals, by and large, didn’t spend much time with it, or its ilk. Why is that? Why have other applications and platforms gone on to be much more successful, by any definition of the word? Well, here are some reasons:

  1. Sharing. With all of the talk about interoperability, all that really happened was some loose agreement that “metadata is important, for some reason, and that people will want to write lots and lots of stuff to describe every resource, for some reason.” We wound up with a bunch of quasi-standardized metadata, but no real way to share it - sure, there was the OAI. That’s a pretty powerful end-user strategy.
  2. API. The closest the Learning Object Repositories got to an API would be either OAI or EduSource. Name 3 apps that you use today that use either or both of those. Both are rather cumbersome to implement, and not too mashup-friendly. Nowadays, as David Wiley is fond of saying, people “just use RSS”. Sure, you can add other APIs if needed (atom? custom?), but RSS is good enough for most interaction between systems.
  3. Social. Sure, CAREO had a threaded discussions feature, and a wiki for every resource in its database, but without PEOPLE, it was just a bunch more empty web pages. One of the lessons I’ve learned from David Wiley’s recent presentations is that we should be leveraging what people are already doing, where they are already doing it. Don’t make them come to CAREO to comment on something. Let them comment on del.icio.us, or digg, or wherever. And work on ways to tie those conversations together. That’s not to say that this functionality isn’t necessary, but that it shouldn’t be exclusionary. Play well with others (see points 1 and 2 above).

I’ve mentioned before that much of the functionality of a “learning object repository” could be implemented for free with Google and del.icio.us. That’s a bit facetious, but not that far off the mark. I’m seeing some recent stuff that is really promising. Most recently, fOUnd It, from the Open University. It’s just a Pligg install. That’s it. But it lets people add resources (”news items”) that can be tagged, referencing any web page. And it supports rating/reputation (thumbs up/down, promoting to front page, etc…) and discussions. This takes care of 99% of CAREO’s functionality. For free. And, because it’s not a Learning Object Repository project, there are more developers working on it (because it’s more generalizable - there is NO need to build special apps just for education).

Or, you could just grab a copy of Drupal, install a couple of modules, and have a learning objects community site that could connect with del.icio.us, flickr, or any other app/platform that supports RSS. And have full-on blogging, forums, etc… for free, out of the box. Without any focus on metadata, or interoperability, or any of those other helpful things that just get in the way of individuals connecting. If we’d just waited 5 years, the “learning object repository” work would have been completely different, and would have been able to focus on important stuff, like content and context.

CAREO: Resurrection

Filed under: Uncategorized. Tags: , , . | 5 Comments 

One of the tasks that’s been on my desk for awhile has been giving some love to CAREO. It sorta stopped working a few months ago, and nobody really cared enough for it to be a High Priority Urgent Fix. The hard drive started to corrupt, and services went from spotty to unavailable. And stayed that way.

Actually, I think it’s a pretty impressive statement about Institutional Repositories that something that was once trumpeted as The Next Big Thing can be out of action for 9 months without many people even noticing. Relevance of top-down, centrally ordained institutional Repositories?

Personally, I just kept feeding my stuff into del.icio.us, Flickr, and my blog, completely (and blissfully) unaffected by the crumbling of an aging prototype repository.

But, apparently, some people still wanted access, so I spent the day getting my head back into the code (mmm… spaghetti….) and realizing just how much I dislike Java (or, perhaps, all compiled languages). I spent SO much time wasted in compile-recompile-forcecompile-compile-deploy-launch-test-fix-repeat that it was way more frustrating than it needed to be. With an interpreted language, I could be modifying the code on the fly and seeing the changes in realtime. Much better for fixing and debugging stuff.

Anyway, CAREO is back on the air, with its library of 4145 contributed “learning objects” (of which, the vast majority don’t really provide much context for learning, but are rather simple assets or resources to be used in other contexts…

It’s now running on my old dual-800MHz-G4 desktop box, which would sound slow except that CAREO is now running on a box that has more than 4x the horsepower it did before The Fall From Grace. Pretty sure it won’t handle a Slashdotting, or even moderate use. But it should work well enough for people to refer to again.

My first reaction on seeing it again after over a year was “Blech! THIS was the best we could come up with?” - The interface is pretty hideous, especially by “modern” standards. And it’s so un-Web2.0 that it hurts. I did bolt on wiki and discussion features, but that’s what they are - bolted on grift.

Of course, it was pre-Web2.0, so it’s funny how perceptions change with experience.

ps. the CAREO Project Website, which was hosted by Athabasca, is unavailable for completely different reasons (they let the domain lapse and didn’t renew it. doh.)

Thanks to Scott for linking to this in his del.icious.net linkstream. It’s a nearly-year-old article about implementing a “learning object repository” using the Small Pieces philosophy. For me, the takeaway message was a reinforcement of something I’ve been seeing a lot of lately.

My feeling is that the Capital R “Object” Repositories beloved of systems designers of the old fashioned IMS school are rapidly losing currency in higher education, but - bizarrely - gaining credibility among decision-makers in the schools sector.

It’s amazing just how many questions I’ve been getting about CAREO recently. From all over the place, from various levels of administration.

Just as the main CAREO project website went dark due to lack of provincial support. And the CAREO repository itself is slowly failing while being neglected on life support.

It seems as though we went through a phase where the IMS/Large Tools approach was favoured, and that’s how many of us mocked up the first round of Learning Object Repositories. But - we were a couple of years too early. The whole “Web 2.0″ thing wasn’t quite there as a concept yet, otherwise I’m positive that’s the tack we would have taken.

It’d be a shame to have others doomed to repeat our entire process. We tried the Repository approach. It didn’t work too well. Learn from that and start with the Small Pieces Loosely Joined / Web2.0 approach.

Teemu Leinonen posted a link on the IIEP-OER list, referencing the LeMill project he's working on. I just checked it out, and it's pretty cool. This one is based on the Plone content management system / framework, so it's great to see what can be done on top of these maturing platforms.

It's still being developed, but it looks like LeMill is another great option as a CAREO replacement. It's got some things in it that CAREO lacks (collections - an evolution of "subscribed objects", tagging), but doesn't have comments/discussion for each item (yet?). It's multilingual, easy to install, and runs just about anywhere.

Repository really isn't the right term any more. LeMill is (intended to be) more of a community than a repository. That's a much better model - one that seems to be working well on other projects like SocialLearning.ca (and many others - perhaps Merlot is the granddaddy of them all?)

I like the distinction between "pieces" (assets - images, video, etc…) and "materials" (compound products - websites, learning objects, courses…). The resource addition (upload or reference) process was pretty simple - maybe too simple, since there doesn't appear to be a license selector or copyright description available. I had an image uploaded and tagged in about a minute, though.

update: found a page on the LeMill wiki describing mandatory IEEE LOM metadata fields, so perhaps that widget just isn’t exposed for Pieces…

Where LeMill stands apart is the concept of Activities and Tools - perhaps these are just variations on a theme, and might be analogous to the different content types they've got in SocialLearning.ca. The implementation of the different content types lets you do some interesting things to group/sort/categorize/display various items, so that's a handy step in the right direction.

I'm going to have to make some time to play more with LeMill, and to finally get around to mocking up a Drupal port of CAREO.

Scott is demoing BCCampus ' SOLR application for sharing online learning resources in the province of BC. I'm really liking the tie-ins with Creative Commons licensing, making it easy for content creators to safely share their stuff.

Here's a screenshot of the cool "Browse All Creative Commons Resources" utility, ala Flickrlilli et. al.

BCCampus SOLR Creative Commons Browser: a screenshot taken of the SOLR BCCampus repository 's Creative Commons browsing interface.BCCampus SOLR Creative Commons Browser: a screenshot taken of the SOLR BCCampus repository 's Creative Commons browsing interface.

They've put a lot of work into making it easy to safely share resources. Many lessons in this… The content submission process is kind of long - lots of linear steps. Some streamlining (maybe ajax loving?) would help. Still, it only takes a minute to submit something…

I was forwarded an email last night by someone asking where they could download a copy of CAREO to use as a national learning object repository (in a nice, tropical country south of here). I’ve been thinking about it since I checked email early this morning. There is no need for CAREO (or its ilk) anymore. Other solutions have evolved and surpassed what we came up with as a prototype Learning Object Repository.

If I was to start an organizational/institutional/regional repository of resources, I’d just use a copy of Drupal.

Yes. Drupal. It provides every feature that CAREO does/did, and many many more that we would have never had time to implement.

You can create custom content types, and any taxonomies you like, so it would be perfectly possible to create a full LOM record as a Drupal node. Or, you could stick with simple nodes and multiple free taxonomies and have a more organic system.

It can handle internal content (uploads of files - even resizing images) as well as external (simple hyperlinks). It can handle access control (either role based, or group based, and I’m working on user-based). Threaded discussions can be tied to any piece of content. Rating systems and voting is supported. Full searchability and browsing is supported out of the box. Multiple themes - users can even select their own themes if needed. Multiple websites on the same instance of the application. LDAP authentication. Nice rich text WYSIWYG editors. RSS feeds all over the place (even podcasting!). Tracking statistics (popular items, etc…). The software scales pretty well, too (handling big sites like The Onion, NASA, SpreadFirefox and many others).
And it’s a widely used, free, open source project that can run on literally any webserver (or desktop box) that can handle PHP and MySQL (and if your server can’t handle that, it’s crap).

So, there it is. Drupal would provide a more robust, flexible, and extensible solution than CAREO could. I might have to look at migrating the data from our instance of CAREO into Drupal…

I’m not the first to realize this, either. The folks at SocialLearning.ca are building what is essentially a learning object repository and community support system. In Drupal.

With that said, if you STILL want a copy of CAREO, the instructions to install it are here. Contact me for a download package, but I won’t be able to provide support.

David Wiley just wrote an excellent post about the “death” of learning objects. He’s right on the mark, emphasizing the learning part of the buzzword, while us geeks who were attempting to implement some of the early LO-based software got so woefully distracted by the object and reuse angles. He’s also much more articlate than I am, so give his article a read, then come back here. I’ll wait. Go ahead.

OK. You’ve read his post. Good, eh? Now, I just wanted to add some thoughts from the perspective of a “learning objects” software developer (I was rather involved with the development of CAREO, which has apparently been championed as one of the early Learning Object Management Systems).

I was as guilty as anyone, if not moreso. CAREO was intended to provide a central clearinghouse of these magically reusable bits of buzzword compliant digital goodness. I was sucked into the hype, along with an entire generation of implementors. We had an entire nationally funded project (EduSource) with the goal of working out the plumbing problems to get these wondrous Learning Objects flowing. As geeks, that’s all it was - a plumbing problem. All we had to do was hook a few things together, attach an input or thirteen, throw a switch, and revel in the magical incredibleness that would Just Happen Because We Built It.

And, of course, outside of carefully scripted demos, nothing really happened. EduSource sort of dissolved. CAREO continued to operate, sortof, but without any financial or institutional support. There are still some users of the system, but it’s basically running as a snapshot. A postcard from 2002.

Was CAREO a failure, then? I’d argue an emphatic “absolutely not, bucko!” because it served (and continues to serve) a crucial role. Before CAREO, there wasn’t a solid, concrete example that we could all point to and say “there’s learning objects!” We didn’t have a testbed, a sandbox, a lab. Through CAREO, and an entire generation of “learning object management” software, we learned a heck of a lot about the concept. We were right sometimes (metadata should be as transparent as possible, people to want to share stuff…) and we were wrong sometimes (the UI as a thin veneer over the database, overemphasis on metadata specifications and interoperability…). But we learned.

Also, I get the feeling that the Learning Objects Movement was just a few years ahead of itself. Now, social software is oozing out of the woodwork. Tagging and folksonomies are pushing metadata into every corner of the networks. Mashups via “Web 2.0″ web-application-API layers are amplifying and exposing network effects to connect and layer sources of information that were previously relegated into locked silos.

Personally, I learned a very valuable lesson that can best be distilled into Ward Cunningham’s description of the original wiki software:

The simplest online database that could possibly work.
- Ward Cunningham

I used to have a version of that written in big block letters across the top of my whiteboard.

It’s something that was essentially ignored by all of us Early Learning Object Implementors. We wound up with insanely complicated data schemas (have you ever looked at the full IMS/IEEE LOM?) and attempted to find elegant ways to store the XML directly in databases (before XML-in-databases was in vogue). We came up with these funky national networks of unique and distinct flavours of webservices, so we could share our overly complex data. We invented new, innovative and cool ways of connecting these systems.

But, we completely lost sight of the simple fact that the reuse that is important. and actually much more difficult, is the pedagogical use of content and not a futile pursuit of technical interoperability. I suggest that learning objects are not dead. Far from it. New ideas like implementations of the semantic web, and structured blogging, and social software for creating and sharing resources - they all combine to breathe new and fresh breath into the concept of the learning object. But, with the ability to place the emphasis on learning rather than object.

I’ve got a nagging feeling that the whole buzz over ePortfolios is following a familiar path. Which is why I’m choosing to ignore the buzz on that topic and play with some of my own ideas.

Whew. OK. That’s off my chest. Albatross released. Monkey off of back. Thanks to David for the cognitive nudge required.

Susan Smith Nash raises some very good points about learning objects - what are they? why would anyone care? how would someone reuse them?

CAREO is mentioned specifically, and the concerns with it are entirely valid. It should be noted that CAREO and its ilk are from the first generation of learning object repositories - a necessary step in the evolution of the concept - and we’ve got some stuff that begins to address many of these concerns (Pachyderm, APOLLO, etc…).

This “second generation” learning object repository stuff is just starting to see the light of day - and even that isn’t anywhere near where we want to end up. It’s all just baby steps along the way…

Disclosure: I built a good chunk of CAREO, and am pretty deeply involved with the development of APOLLO and Pachyderm.

I just took a few minutes and built a simple MySQL table to store the 51 Dublin Core metadata elements that make up the “core” and “other elements”. Except for elements that are dates, I used “text” fields for everything so that it can hold anything you can throw at it, while still being indexable and searchable.

I haven’t updated the Lightweight Asset Manager to use the full schema yet, but here’s the raw SQL to generate your own copy of the table if you want it.

There is a small chance that there are some typos etc (since I haven’t tested it yet, and I built it while stretched out on the couch watching the finale of the Race).

Scott Leslie just posted about the new Dublin Core DC-Education Application Profile. Looking at the wiki page he links to, it looks more like IEEE LOM Lite than Dublin Core ++ but it is definitely good to see the DC folks thinking about some of the other potential uses.

I’ll be updating the Lightweight Asset Management database to support the extra fields once they’ve been fleshed out or finalized a bit more, and when I get some time (it’s currently a version 0.1 application profile - adopters beware :-) ).

By supporting some of these additional educational fields, we’ll have the ability to store both “automagically generated” and “brute-force manually entered” metadata, all comingling in one happy metadata freakout party zone…

I wouldn’t have made this a post on its own, but Scott’s been forced to turn off comments due to those evil spam roaches, so trackbacks are the only way to converse publicly…

UPDATE: Looks like these elements have been in Dublin Core for some time now - the educationLevel element was added in 2002, for instance… It’s not part of the core set of elements, so may have been overlooked by many (including myself).

Next Page →

Creative Commons License
This work is licensed under a Creative Commons Attribution 2.5 Canada License.