Just throwing some thoughts around...

7 views
Skip to first unread message

Nicholas Tollervey

unread,
May 20, 2009, 9:44:48 AM5/20/09
to pinax-lms
Guys,

I've recently discovered Pinax and have enjoyed reading up on the
potential for a LMS. (Before becoming a developer I was a teacher in
the UK for several years and used Moodle extensively in my fist
development job for training customers in the use of our product.)

I've been meaning to get into designing, writing, developing a LMS -
and Pinax LMS seems like a great opportunity to "dive in".

So, I'll brain-dump some thoughts in the hope that they might be
useful and provoke interesting forward momentum:

1) To Moodle (or not) - If I wanted an open-source LMS that came with
the kitchen sink I'd use Moodle. I'm a big fan and, quite frankly,
think it's awesome. However, why re-create Moodle in Pinax? Just use
Moodle! I think there exists an opportunity for a lightweight LMS that
complements rather than competes with Moodle. Think something like the
80/20 rule: 80% of users only want to use 20% of features (the trick
is to identify the 20%). Moodle gives you 100% of the features, my
suggestion is to concentrate on the most useful 20% (and not re-invent
the wheel).

2) Scorm (or not) - as a teacher I always thought of SCORM as the
ISO9000 of LMS. I'm *sure* it must be useful but it's a great way to
get bogged down with bureaucratic, technological red tape if all you
wanted was speed, agility and simplicity (cards on the table: I do!).
Furthermore, if I wanted an open-source SCORM aware LMS I'd just use
Moodle (why re-invent the wheel *again*?).

3) Models - someone mentioned they had already worked out models.py
for representing courses, lessons, assessments, gradings and all the
other clobber a LMS would need. I learned Ruby on Rails a few years
ago by writing a simple LMS and could dig up the "models" from that
project and translate them into Python. Perhaps we could do a compare
and contrast and move forward with the cherry-picked best of both
worlds. I'll stick my stuff on GitHub when I've had the time to do it.

4) A Networked "social" curriculum - working to Pinax's strength.
(Apologies in advance for the length and overtly opinionated nature of
this section.)

It strikes me that the ever present "our school system is broken"
complaint is becoming especially hard to ignore now that learning
takes place in a world where change is the norm and the Internet and
other new technology is making the "old system" (whatever that is)
obsolete. The top-down approach (as used here in the UK) is slow to
react to change, mediocre in content, stifles innovation and limits
freedom (as the leader of the NAHT [the head-teacher's professional
association here in the UK] recently put it: "we didn't get
'education, education, education' [as the government promised] so much
as 'regulation, regulation, regulation'"). Happily there is the whiff
of change in the air as people realise something should and *can* be
done (Google for 'hacking education' for a US perspective or visit
futurelab.org.uk and read some of their reports).

What has this to do with Pinax LMS? Well, it strikes me that a LMS
broadly does three things:

1) Allows you to define the content and structure of a curriculm (the
courses)
2) Enables learners to interect with the content
3) Facilitates the measurement of the affect of the interaction
(evidence based assessment)

Add into this mix Pinax's heritage in social networking / blogging /
user generated content and you have the potential for a hybrid tool
that addresses many of the shortcomings described above: bottom-up
curriculum definition, quick to change and adapt (decentralized user
generated content), a *wide* range of content quality, freedom from
official approval and space to innovate. Furthermore, add a blog-like
linkback mechanism (http://en.wikipedia.org/wiki/Linkback) and you'll
start to see a distributed network of curricula similar to the
blogosphere. For example:

Fred hosts a Pinax LMS server and writes a "Widgets 101" course. Jim
hosts another Pinax LMS instance and writes an "Advanced Widgets"
course. Jim knows about Fred's course and does a linkback so "Advanced
Widgets" now has a requirement that you have knowledge of the stuff
covered in "Widgets 101". On the flip side of the relationship "Widget
101" can suggest further courses ("Advanced Widgets") upon completion.
Alternatively, Alice hosts a Pinax LMS that simply aggregates other's
offerings and links Fred and Jim's courses in her "Widgets, Sprockets
and Do-hickeys" "meta"-course - perhaps providing additional comment,
ratings, activities or feedback to add value to her LMS.

Bruce mentioned something similar in his post about BuddyPress and I'm
sure there are many other ways a LMS "platform" can be informed by
social networking tools.

Importantly for Pinax LMS, this could be a very positive
differentiator and unique "selling" point.

5) Resources. Continuing with the theme of distributed networking -
most LMS systems I've seen or used expect you to upload "content" to a
central database / server. Why? Because you know where your stuff is.
Any LMS should allow this for all sorts of media to be stored, but why
not make it just as easy to embed a YouTube video, a Slideshare hosted
presentation, photos from Flickr or a link to an iTunes or amazon.com
hosted mp3 and so on? Check out Nibipedia.com - they're doing
something like this by mashing together Wikipedia and YouTube content.

6) Student records (a final point on networking). One of the important
outcomes of an education is that you get proof (qualifications) that
you have passed a certain level of education in a certain subject
(would you want to go to a dentist with no qualifications?). How might
a student demonstrate proof of achievements and so on to third parties
or consolidate their various activities on different LMS into a
trusted single student record? I suppose this is similar to the
problem of unifying multiple IM names (on GTalk, ICQ, Yahoo, MSN, IRC
etc) or social network profiles (Twitter, LinkedIn, Facebook, MySpace
etc) into one discrete identity. Perhaps OpenID might help in some
way..? It'd be a difficult (but interesting) problem to solve.

Phew! Apologies for the length and blurb-like nature of the content,
but I'd like to help out as best I can with the Pinax LMS and posting
this message is the first step.

I look forward to your thoughts, objections, ideas and criticisms! ;-)

Best wishes,

Nicholas.

Skylar Saveland

unread,
May 20, 2009, 1:34:46 PM5/20/09
to pinax-lms
> I've recently discovered Pinax and have enjoyed reading up on the
> potential for a LMS. (Before becoming a developer I was a teacher in
> the UK for several years and used Moodle extensively in my fist
> development job for training customers in the use of our product.)

Awesome, welcome!

> I've been meaning to get into designing, writing, developing a LMS -
> and Pinax LMS seems like a great opportunity to "dive in".

Agree

> So, I'll brain-dump some thoughts in the hope that they might be
> useful and provoke interesting forward momentum:

Might as well!

> 1) To Moodle (or not) - If I wanted an open-source LMS that came with
> the kitchen sink I'd use Moodle. I'm a big fan and, quite frankly,
> think it's awesome. However, why re-create Moodle in Pinax? Just use
> Moodle! I think there exists an opportunity for a lightweight LMS that
> complements rather than competes with Moodle. Think something like the
> 80/20 rule: 80% of users only want to use 20% of features (the trick
> is to identify the 20%). Moodle gives you 100% of the features, my
> suggestion is to concentrate on the most useful 20% (and not re-invent
> the wheel).

I agree. I will still probably be working on django-moodle hopefully
as it just seems like it is going to be easier/more-maintainable for
me to experiment with the data and the objects and possible apps with
django's orm than with php. It will help me understand Moodle better
which I will probably have to do one way of the other. The idea of
envisioning a fresh system relatively from scratch is a lot more
appealing than playing the what is going on with this $haystack game
too.

> 2) Scorm (or not) - as a teacher I always thought of SCORM as the
> ISO9000 of LMS. I'm *sure* it must be useful but it's a great way to
> get bogged down with bureaucratic, technological red tape if all you
> wanted was speed, agility and simplicity (cards on the table: I do!).
> Furthermore, if I wanted an open-source SCORM aware LMS I'd just use
> Moodle (why re-invent the wheel *again*?).

I can agree here too, especially in the beginning. I'm not that
scared of SCORM though. From looking at Moodle it looks like the
SCORM-involved tables are separate from the course and so forth so
there's nothing to say that we can't add SCORM later. It is just a
fancy way to upload a zip with xml meta-data (or something.. still
haven't quite gotten to the bottom of it. But I'm not scared of
it!). It would be better that once we have something going and really
nice saying "wow! now we have to add scorm because this is just too
great not to compete in that world" than to hamstring the project from
the beginning, "this is nothing without SCORM". So I can agree with
"forget scorm (for now)" if I read you correctly.

> 3) Models - someone mentioned they had already worked out models.py
> for representing courses, lessons, assessments, gradings and all the
> other clobber a LMS would need. I learned Ruby on Rails a few years
> ago by writing a simple LMS and could dig up the "models" from that
> project and translate them into Python. Perhaps we could do a compare
> and contrast and move forward with the cherry-picked best of both
> worlds. I'll stick my stuff on GitHub when I've had the time to do it.

I think that we are all basically on the same page. If Bruce wants to
lead the way with the outline (he has basically already) or if you
want to (put something up!). I can come up with fields (maybe tables
too) that would be indispensable in my envisioned use cases. We are
going to go with a default auth.User + UserProfile scenario? (I really
need to look into how pinax handles this as is).

> 4) A Networked "social" curriculum - working to Pinax's strength.

As long as we are not thinking SCORM and tying in with existing dbs we
might as well make something really new and find other old ideas that
we can throw out as well.

> 5) Resources. Continuing with the theme of distributed networking -

Another area I would think, this goes back to my way outside of the
box (I know I have been schizo 1- Completely adhere to Moodle/WebCT
and be a mere appendage 2- Completely abandon these ideas and start
from scratch):

Why do schools not want to build a canonical repertoire for CALC 2101
or whatever class it is? I realize that teachers want some control
over how the content is displayed but why can the student not search
through the old archives and such and watch videos and read pdfs that
were posted by some other teacher last semester? Of course you could
then just click the "see my teacher for this semester
button" (probably think of a jazzier name) and you get the default
view for the course that only has items and quizzes and important
dates associated with the actual course instance that you are
registered for. Maybe even a Bool for the teacher defining the course
instance (allow auxilliary?). I don't know; I'm coming up with this
as a type:). It seems that most LMSs are specifically geared toward
keeping students in the dark about the wider world and focusing them
on the singular indoctrination at hand.

I am thinking along the lines of MIT's Open CourseWare at this point.
I mean, if I had my heart-of-heart druthers then this is a repository
of information where all registered students have read access to all
information but can only interact (ie message, get grades, take
quizzes) with courses that they are registered for. This kind of
takes the 'M' out of Learning Management System but the M could be
taken down a peg as it seemingly dominates the way these things
operate at this point. This kind of free-for-all could pose a problem
in certain use cases however.


> How might
> a student demonstrate proof of achievements and so on to third parties
> or consolidate their various activities on different LMS into a
> trusted single student record? I suppose this is similar to the
> problem of unifying multiple IM names (on GTalk, ICQ, Yahoo, MSN, IRC
> etc) or social network profiles (Twitter, LinkedIn, Facebook, MySpace
> etc) into one discrete identity. Perhaps OpenID might help in some
> way..? It'd be a difficult (but interesting) problem to solve.

<ramble>
That stuff is rocket-science to me but I have been trying to think
through the scenarios myself. I would like to see pinax-lms be able
to read the cookies from WebCT or Moodle and grab the user's records
out (and for students to not have to create an account for each LMS).
This is certainly bordering on pipe-dream as far as I can tell (my
idea). This idea with the OpenIds could grow into something more
substantial.

It would be cool if the student could have a front-facing page that
could enumerate all of the students grades and good deeds for people
that the student directs to their link. They could post pictures,
code, grades anything that was authentically moved through the
system... hmm, maybe the students even have their own forward-facing
(ie, you don't have to log-in or be a user to see it) blog for their
academic activities? Okay, I might be getting a little too discursive
here!
</ramble>

> Phew! Apologies for the length and blurb-like nature of the content,

HA! I bet you can make a more convoluted post than this!

Cheers!

Bruce D'Arcus

unread,
May 20, 2009, 1:36:39 PM5/20/09
to pina...@googlegroups.com
On Wed, May 20, 2009 at 9:44 AM, Nicholas Tollervey
<ntoll...@gmail.com> wrote:

> So, I'll brain-dump some thoughts in the hope that they might be
> useful and provoke interesting forward momentum:
>
> 1) To Moodle (or not) - If I wanted an open-source LMS that came with
> the kitchen sink I'd use Moodle. I'm a big fan and, quite frankly,
> think it's awesome. However, why re-create Moodle in Pinax? Just use
> Moodle! I think there exists an opportunity for a lightweight LMS that
> complements rather than competes with Moodle. Think something like the
> 80/20 rule: 80% of users only want to use 20% of features (the trick
> is to identify the 20%). Moodle gives you 100% of the features, my
> suggestion is to concentrate on the most useful 20% (and not re-invent
> the wheel).

I was actually playing with Moodle the other day for the first time
(e.g. beyond the demo sites), and have to say I cringe a bit about how
much it lags behind my expectations in terms of UI. So I agree that
I'd rather see a focus on a really right and elegant alternative, than
worry about all the features.

> 2) Scorm (or not) - as a teacher I always thought of SCORM as the
> ISO9000 of LMS. I'm *sure* it must be useful but it's a great way to
> get bogged down with bureaucratic, technological red tape if all you
> wanted was speed, agility and simplicity (cards on the table: I do!).
> Furthermore, if I wanted an open-source SCORM aware LMS I'd just use
> Moodle (why re-invent the wheel *again*?).

+1

...

> Importantly for Pinax LMS, this could be a very positive
> differentiator and unique "selling" point.
>
> 5) Resources. Continuing with the theme of distributed networking -
> most LMS systems I've seen or used expect you to upload "content" to a
> central database / server. Why? Because you know where your stuff is.
> Any LMS should allow this for all sorts of media to be stored, but why
> not make it just as easy to embed a YouTube video, a Slideshare hosted
> presentation, photos from Flickr or a link to an iTunes or amazon.com
> hosted mp3 and so on? Check out Nibipedia.com - they're doing
> something like this by mashing together Wikipedia and YouTube content.

Exactly. The traditional LMS is a silo, and that's a problem for all
kinds of reasons, pedagogical and otherwise.

Bruce

Bruce D'Arcus

unread,
May 20, 2009, 2:47:55 PM5/20/09
to pina...@googlegroups.com
I jotted a few notes on the model properties here:

http://gist.github.com/115011

Bruce

James Tauber

unread,
May 20, 2009, 7:36:53 PM5/20/09
to pina...@googlegroups.com
Lots of great stuff to think about and respond to but I wanted to just
make one comment on the notion of not reinventing the wheel and "why
re-create Moodle in Pinax? Just use Moodle!"

My response to this is the same as the response to comments like "why
build a software project management system in Pinax when we have
Trac?" or "why build a CRM in Pinax when we have SugarCRM?"

The answer is simply that these systems are siloed and themselves
reinvent the wheel by not building on a more generic foundation.

The goal of the Pinax LMS Edition is to build reusable Django
components that not only work together to achieve something Moodle-
like but also can be used separately as part of other Pinax-based (or
even just Django-based) projects.

What if you want some learning component in your intranet or extranet,
say integrated with your CRM? Django and Pinax are a great foundation
for that.

The initial idea for the Pinax LMS came out of requests for more group-
oriented and teacher-driven features in my site Quisition. Is Moodle
helpful for that? Not at all. LMS-oriented Django apps, particularly
ones that leverage Pinax and don't try to reinvent that wheel, are
what's needed there.

This is perhaps a point I need to better articulate in my
presentations about Pinax. Pinax is not an attempt to reinvent the
wheel but rather to provide a foundation for things like social
networks, LMSs, CRMs, e-commerce systems, intranets, etc so THEY don't
have to reinvent the wheel when it comes to lower layers and generic
features.

Plus, at the end of the day, there are many people that would rather
extend a project by writing Django and Python than by dealing with
PHP :-)

James

Skylar Saveland

unread,
May 20, 2009, 7:52:35 PM5/20/09
to pinax-lms
> Plus, at the end of the day, there are many people that would rather  
> extend a project by writing Django and Python than by dealing with  
> PHP :-)

This is primary:)

Nicholas Tollervey

unread,
May 21, 2009, 5:57:11 AM5/21/09
to pina...@googlegroups.com
Absolutely. Adding SCORM later *if* it appears that users/community
want / need it is definitely the best way around. My usual modus
operandi is to build the basics and find out what the client/user
would like next: evidence based development. :-)

>> 3) Models - someone mentioned they had already worked out models.py
>> for representing courses, lessons, assessments, gradings and all the
>> other clobber a LMS would need. I learned Ruby on Rails a few years
>> ago by writing a simple LMS and could dig up the "models" from that
>> project and translate them into Python. Perhaps we could do a compare
>> and contrast and move forward with the cherry-picked best of both
>> worlds. I'll stick my stuff on GitHub when I've had the time to do it.
>
> I think that we are all basically on the same page.  If Bruce wants to
> lead the way with the outline (he has basically already) or if you
> want to (put something up!).  I can come up with fields (maybe tables
> too) that would be indispensable in my envisioned use cases.  We are
> going to go with a default auth.User + UserProfile scenario? (I really
> need to look into how pinax handles this as is).
>

I'll have some time this weekend to dig out my old Ruby code and we
can move on from there.

>> 4) A Networked "social" curriculum - working to Pinax's strength.
>
> As long as we are not thinking SCORM and tying in with existing dbs we
> might as well make something really new and find other old ideas that
> we can throw out as well.
>

So section 4 was an extemporization (i.e. I made it up as I went
along). I suppose my aim was to get the creative juices flowing so
ideas - no matter how silly they at first appear - can see the light
of day so we can mould them into something sensible and realistic.
I agree, more brainstorming of ideas required in this area.
Well, a student could just syndicate "grades" and "qualification" to
*their* blog from the various LMS. Again, more brainstorming required
and an examination of use cases.

>> Phew! Apologies for the length and blurb-like nature of the content,
>
> HA!  I bet you can make a more convoluted post than this!
>

:-)

> Cheers!
> >
>

Nicholas Tollervey

unread,
May 21, 2009, 5:59:48 AM5/21/09
to pina...@googlegroups.com
On Wed, May 20, 2009 at 6:36 PM, Bruce D'Arcus <bdarcu...@gmail.com> wrote:
>
> On Wed, May 20, 2009 at 9:44 AM, Nicholas Tollervey
> <ntoll...@gmail.com> wrote:
>
>> So, I'll brain-dump some thoughts in the hope that they might be
>> useful and provoke interesting forward momentum:
>>
>> 1) To Moodle (or not) - If I wanted an open-source LMS that came with
>> the kitchen sink I'd use Moodle. I'm a big fan and, quite frankly,
>> think it's awesome. However, why re-create Moodle in Pinax? Just use
>> Moodle! I think there exists an opportunity for a lightweight LMS that
>> complements rather than competes with Moodle. Think something like the
>> 80/20 rule: 80% of users only want to use 20% of features (the trick
>> is to identify the 20%). Moodle gives you 100% of the features, my
>> suggestion is to concentrate on the most useful 20% (and not re-invent
>> the wheel).
>
> I was actually playing with Moodle the other day for the first time
> (e.g. beyond the demo sites), and have to say I cringe a bit about how
> much it lags behind my expectations in terms of UI. So I agree that
> I'd rather see a focus on a really right and elegant alternative, than
> worry about all the features.
>

Cool...

>> 2) Scorm (or not) - as a teacher I always thought of SCORM as the
>> ISO9000 of LMS. I'm *sure* it must be useful but it's a great way to
>> get bogged down with bureaucratic, technological red tape if all you
>> wanted was speed, agility and simplicity (cards on the table: I do!).
>> Furthermore, if I wanted an open-source SCORM aware LMS I'd just use
>> Moodle (why re-invent the wheel *again*?).
>
> +1
>
> ...
>
>> Importantly for Pinax LMS, this could be a very positive
>> differentiator and unique "selling" point.
>>
>> 5) Resources. Continuing with the theme of distributed networking -
>> most LMS systems I've seen or used expect you to upload "content" to a
>> central database / server. Why? Because you know where your stuff is.
>> Any LMS should allow this for all sorts of media to be stored, but why
>> not make it just as easy to embed a YouTube video, a Slideshare hosted
>> presentation, photos from Flickr or a link to an iTunes or amazon.com
>> hosted mp3 and so on? Check out Nibipedia.com - they're doing
>> something like this by mashing together Wikipedia and YouTube content.
>
> Exactly. The traditional LMS is a silo, and that's a problem for all
> kinds of reasons, pedagogical and otherwise.
>

OK, I'm playing Devil's advocate here in an attempt to draw out some
useful ideas: what are the problems and do you have suggestions for
solutions. :-)

> Bruce
>
> >
>

Nicholas Tollervey

unread,
May 21, 2009, 6:28:44 AM5/21/09
to pina...@googlegroups.com
Couldn't agree more. The pick'n'mix nature of Pinax is a great selling
point and was at the back of my mind when I was writing the "don't
reinvent the wheel" line. A more accurate sentiment would have been
"don't reinvent Moodle" (i.e. a monolithic LMS). The point being
exactly what you say James, we need to re-invent the component
applications of a LMS so others can do what *they* want or need. (We'd
probably be looking at some sort of courseware app, an assessment app,
a grade-book app etc...)

I also think this reinforces the 80/20 feature-set argument I put
forward: if a third party uses the Pinax LMS components then they are
then free to build the remaining 20% they need themselves to *their*
requirements.

As for extending a project written in PHP vs Python. This is, again,
one of Pinax's selling points. :-)

Nicholas.

> James
>
> >
>

Bruce D’Arcus

unread,
May 21, 2009, 8:17:49 AM5/21/09
to pinax-lms


On May 21, 5:59 am, Nicholas Tollervey <ntoller...@gmail.com> wrote:

...

> > Exactly. The traditional LMS is a silo, and that's a problem for all
> > kinds of reasons, pedagogical and otherwise.
>
> OK, I'm playing Devil's advocate here in an attempt to draw out some
> useful ideas: what are the problems and do you have suggestions for
> solutions. :-)

Some blog posts:

<http://community.muohio.edu/blogs/darcusb/?s=lms>

Related to conversations about alternative LMSs, open source, etc.

Bruce

Nicholas Tollervey

unread,
May 21, 2009, 9:18:02 AM5/21/09
to pina...@googlegroups.com
Bruce,

Some really interesting stuff in there! Do we have a wiki where we can
put all these ideas and collaborate?

Nicholas.

Bruce D'Arcus

unread,
May 21, 2009, 2:06:16 PM5/21/09
to pina...@googlegroups.com
On Thu, May 21, 2009 at 9:18 AM, Nicholas Tollervey
<ntoll...@gmail.com> wrote:

> Some really interesting stuff in there! Do we have a wiki where we can
> put all these ideas and collaborate?

James: can't we use the wiki on github?

Bruce

Nicholas Tollervey

unread,
May 21, 2009, 2:14:26 PM5/21/09
to pina...@googlegroups.com
Surely Pinax has a wiki..? :-P

> Bruce
>
> >
>

James Tauber

unread,
May 21, 2009, 2:28:10 PM5/21/09
to pina...@googlegroups.com
I can easily set up another instance of the code.pinaxproject.com code
base will which give us a wiki and tasks and a pastebin.

It's 2.30am here now but I'll see if I can quickly get it going :-)

James

James Tauber

unread,
May 21, 2009, 6:16:41 PM5/21/09
to pina...@googlegroups.com
Here it is:

http://code.pinaxlms.com/

This is our workspace so let me know if you have any suggestions for
how to improve it.

James

Skylar Saveland

unread,
May 21, 2009, 6:35:44 PM5/21/09
to pina...@googlegroups.com

This is our workspace so let me know if you have any suggestions for
how to improve it.

Once you get into the paste zone there is no navigation to wiki etc I think.  I will give a more thorough rundown here in a bit and start some pages and pastes.

James Tauber

unread,
May 21, 2009, 6:53:32 PM5/21/09
to pina...@googlegroups.com

Try logging in and that will fix it.

James

Bruce D’Arcus

unread,
May 22, 2009, 1:28:44 PM5/22/09
to pinax-lms


On May 21, 6:16 pm, James Tauber <jtau...@jtauber.com> wrote:
> Here it is:
>
> http://code.pinaxlms.com/
>
> This is our workspace so let me know if you have any suggestions for  
> how to improve it.

FYI, I just created a home wiki page for the project, with a list of
suggested new pages. Please feel to correct, enhance, etc.

I mostly wanted to get the ball rolling as I'm trying to draw some
people at my institution who deal with LMSs into this, and I didn't
want them to see a completely empty wiki.

Bruce
Reply all
Reply to author
Forward
0 new messages