What is LRN? What are Webcomponents? Why is it the future?

If you’ve been paying attention to twitter, I’ve been rambling on and on about 1 thing lately. #Webcomponents / #Polymer. Depending on the tweet I use one or both. It’s not that I’ve left the #drupal community or converted elmsln over to a different platform; it’s that I’ve found a design paradigm that I can’t un-see.

Webcomponents

Let’s back up a bit.. What are Web Components? Webcomponents (of which you can find many on the webcomponents.org community site) are moving along as a recommended W3C specification (hasn’t 100% stabilized yet but it’s been in the works since about 2014 when Google really started pushing the idea and currently all major browsers can support them via polyfills or javascript filling the gaps). In other words, really smart people that meet to discuss the direction the web should go have said that all browsers should natively support the concept and are largely in agreement about the way to do it (very different from when they were proposed in 2014 with no route to implementation).

Webcomponents aren’t actually 1 standard, they are 4 standards that when paired together, make web components possible. If you are interested in the 4 specific standards you know how to google but TL;DR version:

  • Webcomponents are made up of Custom Elements that are Imported into the page
  • This is a fancy way of saying a <custom-html-tag-like-this> can be added to any webpage like this <link rel=”import” href=”../custom-html-tag-like-this/custom-html-tag-like-this.html”>
  • Modern browsers implement a “shadow dom” approach meaning that it renders the contents of custom-html-tag-like-this.html meaning that it doesn’t need a compiler like Angular or other web framework in order to render (which means much faster then them at doing so), then at run time sees the <custom-html-tag-like-this> tag and goes “Oh, I should throw this in its place!”. Shadow Dom also enables “scoped CSS” which basically means that elements present themselves exactly like they do in documentation as opposed to influenced by global CSS.
  • Browsers have all agreed (to varying degrees of implementation thus far) that these make sense
  • This isn’t really that different from the HTML5 <video> tag as far as how the browser processes that to build a player to run the video

What’s in a custom-html-tag-like-this.html file?

That’s the best part, everything required for just that single tag to do it’s magic. So you get a very clean file that has dependencies (since webcomponents can reference other webcomponents), css for this component, normal looking html (though it could also be other <custom-tags-that-you-made> since they stack just like normal HTML), and javascript to define custom properties and functions.

We’ve been working on many but I think lrndesign-blockquote is one of the most straight forward examples we’ve produced thus far. This allows us to wrap the <blockquote> element in a structured way so that we can provide new options / attributes. This will allow our end users the ability to write something like:

<lrndesign-blockquote decorate quote=”It was the best of times, it was the worst of times” citation=”An old dusty book”></lrndesign-blockquote>

and have it show up in the browser like it does here.

Polymer

So now that we have working knowledge of what a Webcomponent is we can jump ahead to Polymer. Polymer is a google backed community / open source project that effectively helps solve the chicken and egg issue of developing against new standards:

  • Chicken: Developers will only implement the standards browsers have
  • Egg: Browsers only implement the standards developers will use

To combat this (and provide general efficiency when building) Polymer has created what are known as Polyfills, or javascript that fills in the gaps in browsers to support different aspects of a specification. These Polyfills progressively enhance IE 11, Edge, Firefox, and Safari in order to make them able to support all aspects of the Webcomponent specification as best they can. The idea being that these training wheels can be taken off / modified as the other browsers implement the 4 parts of the webcomponent specification.

You didn’t mention Chrome or Opera

Correct, because all aspects are natively implemented in both which means your webcomponents you produce run crazy fast in Chrome and Opera, as if it’s no different from normal HTML!

Polymer also comes with a Command Line Interface and some other efficiencies when building webcomponents that make it much faster then building without. Basically a single command of polymer init in a blank folder asks you prompts and then starts downloading and positioning code in the right places.

Then running polymer serve –open and polymer will start a mini-webserver to serve up your element as a documentation site like this one. It’s pretty damn magic and incredibly easy to get oriented to.

So this is all on your generally less-technical ELMS:LN blog because…

Because we’re working actively on building out our own series of custom HTML elements intended for ELMS:LN but we are planning and developing them in a way that they will be usable by any educational or non-educational solution. These tags will all be open source individually and packaged in a way via our ontology that allows for remix and reuse in amazing ways.

LRN – Webcomponents for learning

We’ve prefixed these tags with three letters to make them very easy to read and say as a sentence: LRN. This also is abstracted from “education” so that we can share terminology and design needs with training and mooc communities of practice. You can see demonstrations of our current tags we’ve built through our webcomponents.org organization page.

lrn is broken into 4 levels of tags which you can read about in our ontology documents. These are:

  • lrn – an instructionally focused group of elements
  • lrndesign – a design focused group of elements
  • lrnsys – a behavior / system layer group of elements
  • hax – lrnsys tags which are more repurposable then even lrn so named differently

Together, we can build a well documented style guide for the expression of educational concepts that will have no system specific boundaries. These elements can be loaded into any system connected to the internet so long as the tag definitions are imported. In ELMS:LN we are obviously doing this via a Drupal integration, but there’s nothing stopping us (or you) from running these in any other solution you can come up with!

Design elements (lrndesign) are abstracted from logic (lrnsys) and purpose (lrn) driven elements. Instructors / instructional designers would then be able to write an html tag that has the exact purpose of what is instructionally significant about what they are trying to write instead of constant translation of concepts and assets to code tags. It also will allow us to build a method of content construction we are code naming HAX (short for headless authoring experience).

Video showing our shared future

This is a video I shot just as I was about to make a new webcomponent. It jumps in right at the point that I’ve copied an existing one and renamed it, so it’s a bit of jumping around talking through what works and how it works while at the same time me just coding / fixing some issues that pop up. We’re always looking for people to join us both as developers and idea people sharing how they could utilize something like this best for their needs. Let us know what you think!

Advertisements

A reaction to “A Spartan LMS”

Original post: http://learningnuggets.ca/ed-tech-thinks/a-spartan-lms

My response below (this may be my new blogging style, reacting to the rest of the world w/ commentary, other person provides the prompt, and then I can word vomit :))

 

So to do the twitter thing: “This.”

This post is great, I love how you’re viewing the LMS as something that needs to be fragmented because of reasons of ownership, pushing boundaries, and the fact that CMS (which I’ll call Domain of One’s own in this case) based technologies can replace so much of the BS in LMSs without the cruft.

To the point of throwing the baby out with the bathwater (and past arguments of walled gardens vs completely open spaces) I’d like to propose this analogy. Envision the baby in the baby tub. Instead of throwing them out, when the baby grows and matures and there isn’t the same fear of drowning, we submerge the smaller baby tub into a larger bathtub. We do both at the same time for a time to get the baby acclimated to the new environment and the new freedoms of this larger space. We don’t immediately remove the baby tub or throw away the water from this tub, but we submerge it in a larger pool.

This larger body of water slowly, naturally, becomes one with the body of water in the smaller baby tub. Once the child is comfortable with the larger tub, they eventually exit of their own free will and eventually, we don’t need the baby tub.

In this worldview, I see the LMSs of the past 20 years to be that baby tub. A relic of the training wheels of online education. A forum system that needed to exist because well, our learners and instructors had no knowledge of the world. But as we’ve gotten our feet wet in the larger ecosystem of the web, we’ve lost the need for these training wheels. We’ve outgrown them.

So, how best to react when administrations and IT silos for 2 decades have handcuffed our institutions with purchasing decisions which are great for “good enough” but not for Great? Well, we need to take this baby pool submerged into the larger body of the web approach. This is where systems like ELMSLN come in (my baby). We know that you need an LMS (for now) and we structure ourselves in such a way that we assume that we’re going to be integrating with lots of things. We do this, while simultaneously besting the last 20 years piece by piece (which trust me, ain’t hard to do w/ most of the vendors out there).

So the question isn’t do we walk entirely, it’s what’s the course we can chart to make a clean break (some day)? I view elms:ln as part of a journey with the higher educational industrial complex. If it wants to survive the coming singularity, IoT revolution, app-ification of knowledge and eventual commoditization of “learning”, then it needs to lay down the vision of how to get off our single solutions before the baby outgrows the baby tub and has no need for tubs at all but instead gets up, plugs into Google “How do I do my job today?” and goes off to work; never having experienced tubs at all.

I’m not on your blog to pitch a product, I’m here to pitch the same world view you are espousing here (which is awesome). How can we best chart a course to an lms-less world (https://btopro.wordpress.com/2011/06/08/envisioning-a-lms-less-university/)? We’d love to have navigators like you join us in this vision to save (via improvement) the educational establishment we’ve all known and love.

What I’m really excited about..

I’ve been really excited about the progress I’ve been able to make with the ELMS distribution for the latest version.  To most, it will seem that this has to do with adding functionality and additional stability to the platform.  Those are great, but there’s something far more subtle that I’ve been able to establish in the platform with this version: Something not specific to education.

As I’ve written before, I believe fully that better technologies / frameworks breed better, more sustainable solutions.  As such, it may seem counter-intuitive to put all this effort into something that is inherently non-educational.  I’ve done this to maximize the impact and eyes that can get on the code at all levels.  If this was just something that worked for educators (like Moodle is) then I’d be more or less barring 80% of the community from caring.

While previous versions of ELMS were mired in the context of Courses and Offerings of courses, as of Alpha 6 I’ve been able to break free of these connotations at a code level.  Everything you see with ELMS that makes you think it is specific just to education has been abstracted.  Here’s how:

  • Install Cores – ELMS ships with two install cores as of Alpha 6.  This is mostly just to showcase that it is possible to install the system towards very different purposes off 95% of the same code-base. The Instructional CMS (ICMS) is what was originally being developed towards solely, this will now enable me (or anyone) to develop towards a more collaborative learning environment (CLE) while reusing almost all of the work I’ve done for ICMS.
  • String Overrides – All language that references Courses, Versions, Offerings, and things specific to the ICMS have been written back to a single variable in the database.  The module providing this is called String Overrides and essentially allows you to alter the context of the system’s language globally with a simple form.  ICMS alters this language a little different from CLE, and suddenly we start to have two very different systems.
  • No required Theme – This is a major difference between ELMS and all the current distributions out there. ELMS has no required theme. While it ships with a theme called Cube enabled for the system layer, this and any theme from drupal.org should be able to be used in the mini-sites that are created.  Most of what a system is to people is in the theme layer so this is critical in my mind.
  • Regions – ELMS as a system layer is more of a wrapper on top of traditional Drupal.  This wrapper (provided by a project called Regions) enables the user to do one very important thing: Never have to touch Drupal pages. I think this will take some getting used to for some devs but ultimately it provides much more consistent, touch friendly interface elements that keep people focused on the site without detracting from it.
  • Kit Compliant Features – if functionality works one place it works many.  That’s what Kit packaged Features in Drupal allow you.  It’s like modules and configuration of how to use them all rolled into a simple enable button.  Because ELMS features are kit compliant they will work in the various implementations of ELMS that are going to come down the pipe (ICMS and CLE are the beginning)

It is for these reason that I’m so excited about the potential for the types of systems that ELMS can create.  It also puts my mind to rest knowing that I can swap out the entire connotation of the system on install. This vision is of a picture I’ve had in my head for the better part of a year, driving me slowly to madness :).

I’ll be presenting at Drupalcamp Baltimore Friday on this concept of using one distribution to mutate into many. I think you could reduce the development time of many complex systems as a result of the ELMS code-base.  The code / feature set allows for anything that meets these requirements:

  • There is a wrapper of some kind (parent, or course) that has micro-sites associated to it
  • There is a micro-site (site, or version) that can function also to the same level of flexibility as a full Drupal site

Here are some concepts that I think could be built with ELMS pretty quickly:

  • Popular Blog site dot com – This web service has a User to Blog relationship (ELMS + blog theme + blog + simple aggregators)
  • Popular Survey site dot com – This web service could have a User to Survey or Organization to Surveys relationship (ELMS + Webform)
  • E Portfolio –  1 to 1 Student to slightly different kind of blogging platform (Popular blog site dot com + a few image views)
  • Rubric Management service — Course to Instructor relationship (ELMS + Rubric)
  • Student Club management — Club to website relationship (ELMS + a few themes + features from atrium / commons for collaboration)
  • Asset Management System — Organization to Project relationship (ELMS + few content types to handle media implementation)
  • Traditional LMS – While i wouldn’t recommend this, it’s certainly not far off (ELMS + Quiz + Gradebook + LTI)

I know a few people have asked if this is an LMS platform to which I say, this is about transforming the LMS model.

My 2012 Prediction for EDTech

Many others will give you their predictions for 2012. I am not many others, so I will give you one prediction.  In typical fashion, this will be probably seen as completely over the top, but I never could paint with pastels.

2012 is the year that Learning Tools Interoperability (LTI) starts to hollow out the Learning Management System (LMS).

Last year—and flowing into this year—the groundwork and infrastructure has been laid that will bring about the death of the traditional, single point of entry LMS.  I believe that technology standard is something known as  (LTI).

What is LTI?

LTI works essentially the same way Twitter and Facebook do when authorizing other apps to share a login.  Using a standard called OAuth, FB and Twitter are able to generate a secure one-time login time of address that is only valid during the current connection.  In plain English, it’s a secure way of letting you login without creating an account.

LTI brings this same type of security standard to the LMS world.  Site builders can create trusted login relationships between the traditional LMS and toolsets outside the LMS.  This allows you to pass information about students and instructors (and other roles) between systems, creating a seamless experience for the end user. You can then pass someone multiple directions as needed.

LMS (e.g., Canvas) to LMS (e.g., Moodle or Sakai) and, more importantly in my mind, LMS to non-LMS.  Maybe you can understand the next heading when framed with the following context:

  • All major LMS projects (proprietary included) are getting behind LTI;
  • LTI is far less complicated to understand and implement than SCORM; and
  • LTI can easily be implemented in non-LMS systems to bridge them with LMS systems

The Trojan Horse

LTI is how we finally escape the pit of singular system that has boxed up educational experiences for so long.  Why do you think faculty and students always end up utilizing ad-hoc methods to manage and communicate knowledge?  We provide them with tools for drop boxes, they use Flickr. We give them email, they want light-weight chat integration.  We give them forums to structure content, they use Google Docs.

LMSs and the scale they need to be built to, combined with the pace at which universities adopt new systems is a perfect storm scenario.  We constantly are behind the needs of our users, off-the-shelf and custom solutions never meet needs for long or fully satisfy audiences.  It’s not because the tools are poor, it’s because the structure is wrong.

LTI allows instructional designers, instructors, developers and management to think differently about the way they plan and implement learning systems.

A Structured Anarchy Future

Many of my ideas for my original Structured Anarchy post were borne from trends I noticed in the non-edu space with regard to technology; ideas that have turned into my obsession.  LTI/OAuth is the solution to a problem that the corporate/Web 2.0 crowd solved many years ago — pervasive logins across multiple websites / servers.

Students don’t want to have to learn multiple interfaces, yet Google seems to have over a dozen services strung across different addresses and different functions and are very successful.  Have you ever not used Google maps because the interface was strikingly different from Gmail? I realize I’m just pinging on Google, but Yahoo, Apple, Microsoft and many others are doing similar things.

Ultimately, you need to make a focused Web service; do something REALLY well; create project teams to sustain development for it and then feed users to it; create a singular method of login; make the experience seamless or reduce it to a “click to connect to {XYZ};” and provide standard UX / UI elements.

Personal Learning Environments

A Personal Learning Environment (PLE) is the suite-of-tools approach to learning systems designed to minimize the LMS.  Look, we need an LMS/central system (at least until this gets wider implementation) —it’s just the role of that system needs to be far more minimalist.

An instructor wants to create a blog for their course. Let’s provide them with the best tool possible. Name the LMS that handles blogging well, please. (while I don’t support using this) WordPress comes to mind for blogging.

An instructional designer wants to create an e-text that’s separate from the LMS because it’s mostly static content. Name the LMS that handles content really well. Hence the need for an Instructional Content Management System.

An instructor wants their students to have a conversation around video / audio assignments.  Name the LMS doing that well.  I’m told they are getting better at it but will they ever be youtube or a youtube clone?

Students want to collaborative work in teams and manage their project.  LMSs project group spaces and areas for document management, but do they come close to Google Docs, Basecamp, or Atrium?

Now, rubrics, gradebooks, email communication…I’ll leave these to the LMS.  Social interaction on the Internet is changing at light speed, while university and college infrastructure was built to house knowledge in a similar form for decades at a time.  It’s time for a change.  Universities and colleges need to transform or fade away.

An old adage is that college is an experience, and that many people are paying for that experience.  As that experience becomes increasingly more digital, let’s build systems that can help provide the best experiences possible.

If only there was a system positioning itself as part of the learning platform revolution…

Rumblings of the Drupal LMS

I’ve been seeing a lot of chatter recently about Drupal as part of the university landscape.  One system that has yet to be created but there seems to be rumblings of is the Drupal LMS.  Conversations with various colleges and universities about the potential of using Drupal as the next LMS seem to be popping up more and more as well.  There are lots of closed source LMS out there, which I’m obviously in love with but a Drupal based LMS is a massive undertaking and currently, one does not exist (that’s an open distribution at least).

I was accused of starting to build an LMS a couple years ago when we started talking about ELMS (pronounced elms like the tree not E {pause} LMS).  I say accused because many open source LMSers will tell you to use Moodle and that anything else is a replication of effort.  As a side note just to make sure its in writing: ELMS is not an LMS, if anything it’s closer to a LCMS — Learning Content management system but as there is no fine grain user tracking or grade book component it’s not a learning management system.  I’m writing this to give exposure to a larger movement that seems to be afoot to make drupal a LMS.

Now as I’ve found in the past, you don’t bad-mouth Moodle, especially not while sitting in a MoodleMoot presentation ;).  Trust me, I’m sure you’d get a lot of platform fan-boyism from me about Drupal if criticized too, everyone loves their own kids :p.  But here are the reasons I usually steer people to Drupal away from Moodle.

  • Moodle is just an LMS
  • Drupal can be anything
So applying these logical conditions to the following problems, which makes the most economic sense long term (not tomorrow)?
  • We want to build a website for our college (Drupal)
  • We want to build an intranet for our department (Drupal)
  • We want to build a community site for our students (Drupal)
  • We want to build a mailing list for our alumni (Drupal)
  • We want to build an asset management system (Drupal)
  • We want to build a content management system (Drupal)
  • We want to build a LMS (Moodle?)
  • We want to build a blogging platform (Drup…ok no seriously just use WordPress)

So let me get this straight.  You’re telling me that Drupal can be used for all these different systems?  And that we will hire Drupal people and train people in Drupal for all these different purposes and can share employee knowledge / skills across the different units of our university… except for the LMS?  That’s a special exception because of the size and scale and it just can’t be done.  We need specialized programming knowledge in order for that to be achieved.

Really? I think what we need is access to specialized end-user knowledge.  Based on some discussions and presentations floating around the web I think you’ll start to see some movement towards a Drupal LMS.

Some postings I’m referencing as my “evidence” that there is movement here:

Ultimately I think various Drupal LMS platforms will start to emerge or at least good recipes for people to follow in building their own.  A few reasons as to why since I don’t need to go over them endlessly:

  • Drupal’s community is huge
  • Wide variety of Drupal themes
  • Tons of Drupal usage in higher education
  • Drupal is NOT educationally focused, so solutions are tailored to solve big architectural problems of the web (= lots of devs) and then viewed through the lens of an educator, modules can be selected and developed
  • Quiz, Gradebook, Content Outline Designer modules already exist and I’m sure others will start to pop up

Open Source Learning Environments, they’re about STUDENTS DUMMY!

I was recently reading a literature review about open source in higher education.  If you can get your hands on a copy of the document I highly recommend it.  To summarize, Williams van Rooij identifies five reasons that all literature cite as to why open source in higher education is awesome-sauce:

  • Social and Philosophical believes (Education is thought it should be free so code / systems should be too)
  • Software Development Methodology Benefits (design in the open, collaboration)
  • Security and Risk management benefits (many eyes on code, collaboration again)
  • Software adoption life cycle benefits (less chance of lock in, constantly updated / improved by others, collaboration…again…)
  • Total cost of ownership benefits (reduction in cost because of distributed programmer base and their…collaboration)

Does anyone else notice a problem here though (other then Williams van Rooij)?  Other then collaborative and strategic mission blah blah, blah, WHAT DOES CODE COLLABORATION HAVE TO DO WITH STUDENT LEARNING?!?  Nothing.  She identifies that all these papers talk about how great open source is but they all attack the problem from the same angle — money, collaboration, lock in, risk assessment… essentially a whole lot of awesome manager bullet points on a PowerPoint slide.

  • We participate in Open Source
  • Our Students Use Twitter
  • Our Teachers Use Facebook
  • Our IT staff saved X dollars last year
  • We were able to do more with less resources
  • Insert bottom line and philosophy crap here

Now, don’t get me wrong.  Those are some great reasons to adopt open source software (OSS).  Open source technologies are all about community development and a culture that fosters open development; often times breeding more successful solutions.  My issue is exactly what the author find to be lacking in the research: pedagogical Reasons for educators to adopt OSS.  How does OSS improve the instructional transaction between instructor and learner?  How does it solve issues related to open education? How does it solve the growing divide we see between haves and have-nots when it comes to education?  Can it solve these issues? Can it even begin to address these problems or is it purely something great for tech circles to engage in and IT philosophers to write papers about?

The backing is coming in time. Admittedly what I’ll be posting is mostly collaboration commentary but phrased how we all need to be shaping the conversation — collaborative efforts directly impacting learning experiences.  Here’s some of the ways that  the whole educational process can benefit from a distributed learning environment.  OSS in house as well as free / open services available on the web.  I group all of these  under an umbrella term I am deeming an Open Source Learning Environments (OSLE):

  • Open software leads to open standards — If your unfamiliar with open education, SCORM, and OER, I suggest looking into them further.  These are all concepts born out of the open source movement in education.  They directly impact the student / teacher relationship because it reduces the number of times resources have to be re-created.  Someone, somewhere has written a lesson or whole course on everything from String theory to what is Chord progression.  It’s out there, search for it and let the open standards move that content between systems.  Or better yet, if it’s truely open just point your students to it for a lesson or two.  Seeds of my previous article are being planted all over the place…
  • OSLE embrace social media formats — Enter Vimeo, YouTube, Flickr, Picasa, Blip.tv,… need I go on?  Sure, these technologies are often times distracting, but OSS breeds transmission standards and formats that allow things like Vimeo and YouTube to display their videos within your course just by knowing the url (ala Embedded media fields in Drupal).  There’s a wealth of [legal] educational material on YouTube that provide a great way to have students react to documentaries and other articles.  For example, the white-house posts all most all media there in some form for a civics discussion or students can watch parts of Discovery and PBS programming for science concepts.
  • Improved teacher to student communication — We’ve reached a point where e-mail is impersonal and students don’t want us bugging them on their FaceBook, mySpace, and twitter social spaces.  But there are still great opportunities to leverage the power of social technologies to benefit student – teacher interactions.  We added online rubrics (open Drupal project) to several online classroom settings and now students get richer, more detailed feedback then ever before possible online.  New modules are created everyday for Moodle, Drupal, WordPress and the rest that hook better and better social services together.  Imagine an internal Gigya service for education and the potentials of optional, cross-posted participation.  Or, [and I just started looking into this] a diigo environment specific to a course environment in Sticky Notes (Drupal).
  • Improved student learning through collaboration — remember when collaboration was just setting up a wiki, giving people accounts and telling them to edit stuff?  Remember how painful that was to get setup, painful to manage, painful to teach people how to use the technology.  All those barriers are melting away.  Sites are 1 click creation, accounts are pervasive (openID, LDAP, co-sign), and the wall between the student and the teacher known as technology has turned into an open plain.  Students can set up their own OSLE on blogger or WordPress to create a semi-professional learning resource of their own.
  • Instant Online Portfolios — “I have all this great work I did in class” no longer has to be a problem.  Ideas aren’t trapped in endless Word files, presentation scripts, Drop Boxes (*dig) and Power Point slides.  Projects are collaborated on in Google docs, they’re discussed in Blogger, they’re viewable on YouTube.  Students can leave higher education with a toolbox showing everything they’ve been able to accomplish while in school.  Are you enabling their work to be portable through Views and pointing them to post to social services? Or are they still dumping their knowledge to a drop box?  The knowledge economy of the future will demand they be able to sell themselves and their ideas before they graduate.
  • Production Creativity — Do you remember early 2000 how long it took to produce a high quality learning resource?  Never mind the mindlessness of uploading HTML in DreamWeaver or Homesite (old school); how about creating a high quality video?  The cost of creation is so much lower (which is what social media is all about) but think of how much higher quality resources we can create as education providers now then before?  And for that matter, how many MORE educational opportunities we can create.
  • Distributed Learning Environments — How often do you see  “experience using FILL IN SPECIFIC TECHNOLOGY” on a job application and it not be something generic like Word or Word processors? For the longest time I heard from people “we need to unify the student experience” and I have ALWAYS disagreed.  Students are tweeting, IMing, texting, watching a movie, taking your course, and thinking about what they’ll do in an hour when they’re done reading…all at once.  They are distracted and constantly moving between frames of reference and environments.  Your branding changing a little bit when linking off to another system isn’t going to kill them; if anything it’s only going to help them be more marketable.  Diversify the learning environments and engage students in a variety of systems so they learn to utilize a wider skill set.  The more experience they have using a multitude of systems the better off they’ll be, their work environments are only going to be changing at an ever increasing pace.
  • Learning Experience Design — This is a philosophy that’s becoming more apparent at my place of employment — Learning Experience Design.  We don’t just want students to come to our bland –insert default theme here– course / learning environment.  We want students to get sucked into the material.  The more engrossing and engaging the EXPERIENCE, the more likely you are to get them to close twitter, their phone, turn off TV and focus on your content.  Embed YouTube and they’ll be in your material watching YouTube, not on YouTube watching LOL-Cats videos in between your lectures thanks to “related videos”.  Leverage open tools so you can leverage the magic that is good theme design.  Remember, like it or not we’re not just selling knowledge, we’re selling a commodity.

I’d love for someone to write articles proving some of the claims above so that they are more then just ‘best practices’ but that’s part of the point of writing this.  To get you to ask yourself, are you leveraging any of these approaches above or just a few?  Are you fully embracing the potential of an OSLE or are you just playing here and there to make your management happy?

Are you working towards another bullet point, or towards actually changing the lives of your students?

  • Your move

Global success, Global failure of the CMS/LMS needs to stop

We need to rethink the way we go about implementing and building large-scale university systems.  I started answering a post recently on Drupal.org about a Moodle / Drupal merger.  The commenter was saying that Moodle could be plugged into Drupal somewhere down the road as a module because of how much better Drupal is at…well.. everything (outside of LMS).  As I started to respond, it occurred to me that this fits in well with a system design I’m working on.  Let’s lay out an example of how you’re screwed now…

  • You bought into a CMS / LMS (one package)
  • People said “OMG this does everything possible but nothing well”
  • This CMS / LMS is bought out, losses popularity, is no longer maintained, is too expensive to hire independent people / your own people to keep afloat
  • You need to move to something new and soonish because everyone’s clamoring for it and you’re just waiting for the day something breaks that no one knows how to fix

So right now, your stuck in one system and want to start looking at another.  You can look at Moodle and hope that your SCORM packages will transfer correctly.  You can look at Sakai or any number of other projects and say the same thing.  OR, you can do what I’m doing currently and start looking at NO, ONE, SOLUTION.  I know you’re saying “but Bryan, didn’t you mean just the Drupal solution”, no. Drupal is not the answer. Plone, WordPress, Moveable Type, Joomla, PHPNuke, Moodle, NOTEPAD is not the answer.

We need to start looking at systems development based on a services and scalability perspective.  No one system is going to solve that problem.  We need to start looking at what systems do well and then play to those strengths in the creation of a service.  Right now I’m planning out the new version of ELMS (version 3) and it doesn’t involve just 1 Drupal site / system.  In fact, in the grand scheme of things, it doesn’t even just involve Drupal.  It involves a star / ring based network of systems approach to network design.

Here’s a sample setup

  • A lightweight, data transmission and organization system at the center.  This is either Moodle or Drupal (or anything open source that meets data / record keeping needs).  It also polls the rest of the systems to pull together a view of all data relevant to users in a portal type of display
  • It then dictates to all the other systems in the network what users can access what, who’s in what course, what courses are running.  All that fun stuff.
  • Other systems in this setup include:
    • A CMS. Something that presents course content and presents it very well.
    • A social media management system (SMMS).  I’ll be making another post shortly hashing this lightbulb out a bit more but think a SMMS that’s specific / internal to your learning ecosystem is the future.
    • Syllabus / course objectives communication system.  This is more of a traditional LMS with JUST the course framework and pacing components involved.
    • A Communications system.  Forums, FAQs, Email, all that traditional communications management stuff
    • Blogging platform — A space onto itself that’s a living community where students / staff can blog about whatever (or make course specific ones).  Free flowing, loosely knit together via track backs and comment streams
    • Wikispace for collaboration — kinda dur what to use here…

So, what I’ve proposed above is more of a communication between and across systems.  Things like single sign on systems and simple modules within each project could allow users to flow seamlessly between them.  RSS and XMLRPC calls could allow session / user display data to flow seamlessly across each.  The most important thing though is that any system can be any CMS/LMS choice.  Example of that….

  • Core LMS / data system is Moodle
  • CMS is Drupal
  • SMMS is Drupal
  • Syllabus system is WordPress
  • Communications system is Plone
  • Blogging platform is moveable type
  • Wiki collaboration via Wikispace

All systems can now scale independently of one another both people, database and server wise.  We all have people around EVERY major university that have people with these skills right?  And one big barrier to switching to 1 standard is that ” we have Plone/Drupal/Moodle/WordPress/Joomla/Wikispaces programmers that will all be re-trained on Plone/Drupal/Moodle/WordPress/Joomla/Wikispaces”.  So avoid the barrier, play to your staffing’s strengths.

Will some need to be retrained? Definitely.  But there’s no longer a global success, global failure involved. We don’t have to worry about “what happens if we all go Drupal and the project fizzles?” and the same can be said for any other system.  I have my own personal preferences to different systems and coding practices (obviously) but a lightweight communications system could be cobbled together between each system to allow information to pass freely.

Everyone keeps their skill set, everyone keeps their system of choice, everyone wins! Thoughts? Comment here or on twitter @btopro