State of Drupal in education update

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
btopro's picture

Just a quick community note about some momentum in projects that often times directly benefit the drupal edtech community.

LTI is moving along in the community it seems -- http://drupal.org/sandbox/jzornig/1809350

Epub would be an excellent format to support exports to which funnymonkey has some work into that I need to test -- http://drupal.org/project/epub_export

Textbook is now significantly more robust then in the past with its own API for defining new style sets and Context module integration to allow for conditions to trigger the application of textbook styling. Still with a commitment to accessibility and ease of setup -- http://drupal.org/project/textbook

Request was put in recently about the idea of getting user progress module to talk to tincan API -- http://drupal.org/node/1829346

OG is also significantly stabilized (though I say this after fighting with it much of the last week) and I'm hoping by Beta3 will be "good enough" to start to build distros and platforms on. Funnymonkey has a lot to do with this as do people that heavily support complex projects of this kind like Phase 2.

Speaking of P2, Open Atrium 2.0 is getting more love -- http://www.agileapproach.com/blog-entry/moving-forward-open-atrium-20 This is great news because all the projects required to build that will need patched / upgraded / refined. ELMS distribution based most of its architectural core off of Atrium for this reason (strength in numbers) and so Ulmus/ELMS will be able to benefit greatly from this work.

MOOCs are all the rage and I have a distribution that I'm working on to get a decent starting point for people to build massively open online courses with. It's kind of the "Drupal as course" initiative I posted in the ELMS group and it's still early on but everything to assemble it is from some of the best of contrib -- http://drupal.org/project/mooc

For those that don't know, popcorn is awesome! Yes the food, but also the mozilla library for interacting with and augmenting HTML5 based media -- http://drupal.org/project/popcornjs is an attempt to integrate this into Drupal. If you haven't played with popcorn yet I HIGHLY recommend checking it out as I think it will one day replace flash based interactivity on the web (or something like it) http://popcornjs.org/demos

Course module by EthosCE appears to be picking up some momentum as well and has a lot more code out in the open then in the past -- http://drupal.org/project/course . It also has active development in both the Drupal 6 and Drupal 7 branches and is definitely worth a look.

There is also a lot of movement locally around Drupal / ELMS / edtech systems at Penn State that I'm not at liberty to divulge at the moment but Drupal at PSU is alive, well, and going to be deployed all over the place here! (thanks in large part to http://drupal.org/project/nittany )

That's it for now, if you have other modules / projects that have helped you in developing edtech projects please add them in the comments!

Comments

@btopro great summary! I've

kreynen's picture

@btopro great summary! I've been struggling with the changes to OG as well, but watching @Amitaibu's DrupalCamp Montreal Session really cleared things up for me http://vimeo.com/51646056

As for Popcorn, the http://drupal.org/project/popcornjs module is only designed to load the core .js required for playing Popcorn output. The really exciting things start happening when we merge Popcorn with all the great working happening in the Media2.x branch with modules like http://drupal.org/project/popcorn_chapters.

mikethetall's picture

Hello!

Sorry if this is off-topic but I'm still not quite up to speed with how to contact people in the Drupal community.

I'm looking for web-based software for a community college to use (internally) to schedule it's courses. Even though it's small it needs to support multiple Deans, 100-150 teachers (some full time, some part time, some not currently teaching but still interested in teaching), and several hundred courses each quarter. After searching I haven't found anything that's quite targeted at this (the "Conference Organizing Distribution" seems close but not quite right)

I was wondering if you knew of any modules / distributions set up to do this?
(I figure that even if you don't know then maybe you might know of someone who does?)

A couple of suggestions: (1)

Dustin@PI's picture

A couple of suggestions:

(1) If you are look for software specifically for that kind of scheduling see: http://www.jasig.org/bedework it's an opensource solution targeted at what you need.

If you are interested in using Drupal as the base for a calendar (which my institution did for a number of reasons including skillset and ease of integration), there are a number options to investigate.

(2) There are a number modules specific to calendaring/Date. Here's a tutorial on pulling together some of the most common into a calendar: http://training.opensourcery.com/recipes/event-calendar you can also just search the modules.

(3) Several of the distributions have calendar configure as part of the distribution:
http://drupal.org/project/distributions/calendar?f[0]=bs_project_sandbox%3A0 (see julio, atrium, etc.)

Note: Accessibility is not the right group for this question. I would recommend the distributions group (http://groups.drupal.org/distribution-profiles) or the date api group (http://groups.drupal.org/date-api)

Thanks!!

mikethetall's picture

These are great suggestions! Thank you very much!

(I'll definitely repost on the distributions group. I'm very, very new to this site & I had a tough time figuring out where to post. I post this below an article about "The state of Drupal in Education". Or at least, I tried to :) )

Thanks!!!!

Unbelievably early in its

btopro's picture

Unbelievably early in its infancy but I'll be open sourcing everything I'm working on related to the problem space you are describing as part of this distribution -- http://drupal.org/project/cis

My distros are more of starting points to launch off from but this will be the hub to a larger series of "suite of tools" for education, of which the ELMS distribution is just one small piece (I've said too much..) :)

Also today a new

mradcliffe's picture

Edit: Sorry i didn't really read this fully and I realized this wasn't new. But they're aim to try to replace the others is new. I think this will lead to just another LMS.

Published today, adrenna has big plans: http://www.gilfuseducationgroup.com/drupal-lms-to-replace-moodle-sakai-i...

Correct, it won't solve any

btopro's picture

Correct, it won't solve any problems it'll just build a different LMS off of a free framework that they either won't be able to monetize or will provide no tangible end-user benefit. The way to improve student experiences is to transform the LMS into a learning network of tools and not just 1 provider of experiences.

I have a few too many posts on the subject to point you to just one but here's my thoughts / plans which really haven't changed much the last few years -- http://btopro.com/ . That's the nice thing about using philosophy and a single technology stack -- you can do a lot in the same direction and build on previous success while providing increasingly sophisticated services with 1 employee :)

Course scheduling, not LMS

mikethetall's picture

Hi everyone,

Thank you all for your helpful and informative posts!

FWIW I'm not looking for an LMS. My college uses one, there's Moodle, and it looks like Drupal has at least one distribution that can be used as an LMS.

What I'm actually looking for is a tool to help with the course scheduling itself.

Our college isn't huge, but there's several hundred courses offered each term. Most them use a "standard" schedule (Mon,Weds or Tues, Thurs for 2 hours at a time) but some don't. We need to check that we don't schedule multiple courses into the same room at the same time, and we want to avoid scheduling classes that all appeal into the same population at the same time (i.e., don't run Physics for Engineers at the same day/time as Calculus 2), etc, etc. Staffing all those sections is a challenge, too - every has preferences about when they'd like to teach, and those preferences can change each quarter.
Plus, many teachers will have suggestions about how to schedule stuff, thus add yet another layer.

At the end of the day, though, we can (mentally) model all the work as people sitting in a room & scribbling things on pieces of paper. I'd love for Drupal to be that paper, and to make it easier for everyone to talk to each other :)

Course schedule

mercergirl's picture

We had a vendor build our Drupal site and they coded a custom module for adding courses, descriptions and schedule info. First we grab the course catalog data (on another website) and pull that into Drupal. Then periodically the module processes a batch file from our MIS department that contains the actual course schedule info. Some of the logic and code came from a PHP/MySQL script I wrote for our previous website.

It all works good, but I know creating that custom module was a lot of work, mostly because they never asked us about business rules or requirements. It was fly by the seat of your pants, agile development. The developer is a genius.

That's it!! :)

mikethetall's picture

Yes! That's exactly what I"m talking about! :)

I don't suppose that any of that is open-source, is it?
(It's fine if it isn't - it sounds like it wasn't cheap to have done - but I figure that it's worth asking about :) )

Custom module

mercergirl's picture

No, I am sorry, but the module is proprietary.

We don't use Drupal to schedule classes, but we could. Our MIS department has a course system that doesn't have a web front-end, so we were left with building our own into Drupal and importing the schedule files. The scheduling could be done in Drupal now, I can go in and manually tweak the course schedule nodes, for instance, but we prefer to import the data from the mainframe.

Sure thing - I kinda figured

mikethetall's picture

Sure thing - I kinda figured that but also thought that it couldn't hurt to ask :)

This thread is going in a

kreynen's picture

This thread is going in a number of directions. I'm responding to the scheduling question here and creating a new thread about install profiles.

@mercergirl's solution sounds like that school is pulling the classes and schedule info into Drupal. NOT using Drupal to schedule courses. Just for display.

@mikethetall is that really what you wanted?

If so, look at the Feeds and Migration modules. If you can get the course data in a CSV file, you can import it into Drupal without needing any custom code and run periodic updates. If you are looking to use Drupal to schedule classes in physical room, you might be able to get what you want from want is a combination of the functionality found in http://drupal.org/project/civicrm_multiday_event and http://drupal.org/project/reservations.

We use those solutions for community media groups to either allow producers to schedule studios, edit spaces, or meeting rooms themselves or configure the modules a staff solution.

I'm looking to use Drupal to

mikethetall's picture

I'm looking to use Drupal to schedule courses. The first time I needed a web app I'd whipped up something in PHP from scratch. The second time I used CakePHP to save me some time. This time I'm thinking about using something like Drupal so that I don't have to write user management (or anything else I can reuse).

So knowing about the Feeds & Migration modules (and those two projects) is great! In order to interoperate with the rest of the college we'll need to be able to import & export stuff. If I can mostly resuse those projects that would be ideal.

Have multiple confirmed

btopro's picture

Have multiple confirmed reports of the LTI connector working (I've been able to get it to work successfully as well). This is both with the test harness and our internal LMS (ANGEL). Currently working on building out our network of services so that the CIS distro based system will be able to publish a file that a MOOC based multi-site understands. This will then have our course information system being the driver for what MOOCs we offer to students as well as validate that this services based approach is viable.

From there we'll try to do an LTI launch to create something in CIS that makes something in MOOC and does the pass through / emails the instructor automatically. This will create a SaaS style system that informs us about what's going on as well as empowers faculty to use systems outside of the (broken) traditional LMS environment.

From there we'll be working on an open online student submission platform (studio) and assessment tool (rubric). Both of these will tap into the CIS / SaaS goodness so that we can have people constructing dynamic learning environments outside of the traditional LMS but with the same data assurances.

Also keeping an eye on the horizon to the idea of a SaaS based popcorn builder instance to allow faculty / anyone to remix media in our own popcorn-maker style system and then utilize these objects as stand-alone or embedded in any of the other SaaS solutions.

Busy up coming few months / years / life ;)

LTI 2.x Draft

mradcliffe's picture

It looks like IMS Global announced draft status for LTI 2.x. Support for Rest & Json-ld means that supporting serialization should be much easier in Drupal 8 because we have Serializer component (and Jsonld serializer is being worked on).

I spent most of yesterday

jzornig's picture

I spent most of yesterday reading the draft specs and scoping what changes would need to be made in the LTI Tool Provider module. Other than data format changes to JSON-LD from XML and many parameters moving from the base set to custom, the major change is a new registration process for setting up tools in consumers. Luckily LTI 2 is backwards compatible, so other than not supporting the automated registration process, the existing LTI Tool Provider module should function correctly with a LTI 2 compliant Consumer (LMS). Our group is looking at joining the IMS GLC so that we can participate in the standards development process.

JZ

Forgive me if this sounds

kreynen's picture

Forgive me if this sounds ridiculous. I've been trying to wrap my head around the benefits of LTI when developing and distributing OERs built w/ Drupal, but I'm still pretty confused. I have tried to get up to speed on this. I've read about the standard at http://www.imsglobal.org/lti/index.html. I've tried talking about LTI at the Open Ed Conference in Vancouver, the BADCamp's Higher Ed summit, and Educause. Several people had heard about LTI. A few people even knew what the acronym stood for and that it had something to do with shared authentication and reporting. A number of vendors at Educause were happy to sell me one... one what, I still don't know.

In some ways LTI seems similar to the way PHP Stream Wrappers are used Drupal, but I may be misunderstanding LTI. In the Drupal Media ecosystem, each media_[provider] module declares, "I own www.[PROVIDER].com URL! When you see content from there, ask me how to handle it". In LTI, it looks like this functionality is handled by defining how the default_base_url is handled in a ToolProfile in the LMS. Is that right?

After I configure the shared key/secret pair in the provider and consumer of the tool, I understand how the consumer can recognize links from a provider and authentication takes place, but is there a standard for passing information back and forth between the provider/tool and the consumer or is that platform specific? It looks like there are just place holder functions in the lti_tool_provider module...

http://drupalcode.org/sandbox/jzornig/1809350.git/blob/refs/heads/7.x-1....

I'm still trying to figure out where the magic happens :)

Let me describe a simple use

jzornig's picture

Let me describe a simple use case.

I am a course instructor and I want to have a FAQ facility where students can ask and answer questions like stack overflow. Someone tells me about a great drupal module that does just this, but my course is running in Bb.

I build a Drupal site using the module. It could be hosted at my uni or in the cloud. Before LTI I would put a link to this site in my course and students would have to register and get accounts set up or I would have to do some sort of authentication integration with my uni systems. But still the students would see that they are leaving Bb and going to a separate site.

With LTI I can install the LTI Tool Provider module, and make the link in my bb course a LTI link. Then when students click the link, they do not leave Bb, but the FAQ is embedded in Bb and they are already authenticated.

Now some other instructors at my uni see what I've done and ask to use my tool. I don't want to have to run a separate drupal site for every course, so I install OG and turn on the LTI Tool Provider OG submodule. Now any instructor at my uni can put a FAQ link their course and they get their own FAQ separate from mine.

Word spreads and other Unis want to use my tool, so I just register their LMS systems as additional Consumers.

Now I want to give my students some marks for participation, so I install Rules and LTI Tool Provider Outcomes, then create a rule that counts the number of Questions and answers a student has created weighted by the number of votes to compute a score. The rule calls the LTI set outcome action and my students now get this participation score sent back into the Bb gradebook. All the other users of the FAQ system can also get this function.

I hire a drupal developer to do a pay wall and set my system up as a Tool as a Service, then retire to a tropical island;-)

Basically any functionality that you can build in Drupal that is useful within the context of a course, is a candidate for creating an LTI tool. Given the number of drupal contributed modules and the ease of developing in Drupal as opposed to most LMS systems, I see great potential for Drupal and LTI.

It is easy to publish a tool you create as a service or as a Drupal Feature, module or distribution. In the future you will also be able to package up your course as a common cartridge, with LTI tool links included, as another distribution mechanism.

JZ

I understand the single sign

kreynen's picture

I understand the single sign on potential. While arguably less open and elegant, we've had the potential for SSO with other solutions for years.

What I want to know is how do I move define how data is moved back into Bb for reporting. Using your example, let's say that a requirement for an assignment in a course is that a user participate by either asking or answering 1 questions on the Drupal stack exchange solution. You've made it easier for the student to move from the Bb -> Drupal, now how to I get the activity in Drupal back to Blackboard?

http://www.imsglobal.org/lti/v2p0pd/mediatype/application/vnd/ims/lis/v2...

How do you tell Bb to expect this result from the Drupal site for an assignment?

LIS

mradcliffe's picture

Edit: I realized I began typing and didn't really answer your question. Whoops. That's how scatterbrained I am. Sorry.

IMS Global's SIF (?) implementation, LIS, is where that happens if I understand it correctly. Granted I am new to all of this.

Report Score to the Tool Consumer. After the Learner has completed the assignment, the Tool should report a score by issuing a PUT request to the Tool Consumer’s Result Service.

If the Tool Consumer (Blackboard) supports the request, then this is possible. [Begin developer talk] Like with any data integration you would hook into whenever an assignment or quiz or whatever is saved and then probably add an item to the Queue (see Queue API). Then your own Queue API processor can claim a queue item and make the Curl or SOAP requests necessary as documented in IMS Global's specification. Another option would not to automatically submit the scores back, but to make it an active Batch API operation that a course instructor or administrator must push a button to do. This is a headache for the user, but automated processes can also lead to headaches. [End developer talk]

However in order to know what your site as a Tool Provider is capable of there are additional requests. I'm pretty fuzzy on this as a newcomer.

Some capability in LTI 1.1

jct's picture

LTI 1.1 (which not all LMSes support) already has some capability for reporting grades back from the external tool to the LMS.

http://www.imsglobal.org/lti/v1p1pd/ltiIMGv1p1pd.html#_Toc309649691

The other big advantage that I didn't see in the above conversation is user and permissions management (though I could have missed it). Having tried to coordinate the development of a module that would tie into our Student Information System for course roster management... it ain't fun. Single sign on may have done this for some time, but tying it to a course structure is arguably novel.

yes yes yes imsglobal is the standards i use

kwyrick's picture

i'm very interested in having this conversation with you and others.
not sure about what's available in drupal but i use an offline editor and a few lms
http://exelearning.org desktop outline editor with ims, scorm export..i like the file format .elp which is very compact. it uses and it runs inside it's own firefox browser.

http://dotlrn.org is a lms package running on http://openacs.org dual coded in tcl for postgresql and oracle

http://moodle.org - lms

http://turnkeylinux.org/canvas is a new one that i'm also testing