New Flash Activity Module - Please contribute!

New Flash Activity Module - Please contribute!

by Matt Bury -
Number of replies: 14
Picture of Plugin developers
You may or may not have seen my previous posts on the subject. I'm working, so far on my own, on a project to create a new Flash activity module.

Why?

1. Flash is undeniably one of the most important formats for deploying interactive e-learning. For any LMS to be up to date and comprehensive, it's imperative that an LMS can handle all versions of Flash effortlessly in an integrated way. (And simply saying 'use SCORM' will have developers pulling their hair out at you!)

2. The old one's out of date and you can only use it with Flash version 6 (MX 2004) We're currently on version 9.

3. Later versions of Flash are more stable at using external media and have extra classes that makes it much easier too.

4. My proposed new Flash activity module offers the possibility to create and edit new lessons 'on the fly' with a 'mix-and-match' approach i.e. by combining SWF templates, which any Flash developer can easily create, with XML files to reference the lesson content.

5. The new module is a simple PHP/Javascript wrapper that can accommodate all versions of Flash and can be easily adapted for other emerging technologies, such as Silverlight (Microsoft's new competitor for Flash which uses Javascript).

Please check out my 'experiments' so far and contribute where you can. Any help, advice, constructive criticism, etc. should be posted here.

flashnew_3rd-March-2008.zip

I look forward to your responses.

Matt
Average of ratings: -
In reply to Matt Bury

Re: New Flash Activity Module - Please contribute!

by Paul Holden -
Picture of Core developers Picture of Moodle HQ Picture of Moodle Workplace team Picture of Particularly helpful Moodlers Picture of Peer reviewers Picture of Plugin developers Picture of Testers
Hi Matt,

Your project sounds interesting and will hopefully lead to some nice rich content resources smile

I've had a quick look through your source code - is there any reason you're not using the Moodle API, specifically for things like db access and security? For example, you could take advantage of Moodle's plugable architecture to have it automatically take care of setting up and/or upgrading any database tables you need.

Good luck,

Paul
In reply to Paul Holden

Re: New Flash Activity Module - Please contribute!

by Matt Bury -
Picture of Plugin developers
Hi Paul,

The code in the zipped file is my experiments so far. I'm not a Moodle developer and I'm not too sure about how to integrate what I've done so far into Moodle's API. My PHP is pretty poor too - I'm a Flash Actionscript developer!

I've downloaded and had a good look at the NEWMODULE.zip file contents, but I'm still not too sure of how to use it. I really need to learn more PHP - at the moment this is painfully slow for me.

I've been unable to find any documentation or tutorials on how integrate my code with Moodle. Can you help?
In reply to Matt Bury

Re: New Flash Activity Module - Please contribute!

by Mike Churchward -
Picture of Core developers Picture of Plugin developers Picture of Testers
I'd suggest looking at the 'Flash' module already in 'contrib' cvs. It can probably help you out quite a bit. ('/contrib/plugins/mod/flash')

mike
In reply to Mike Churchward

Re: New Flash Activity Module - Please contribute!

by Matt Bury -
Picture of Plugin developers
Hi Mike,

The old Flash Activity Module is the one I referred to at the start of this post. I have checked it out and this is why I'm trying to get this project off the ground.

Matt
In reply to Matt Bury

Re: New Flash Activity Module - Please contribute!

by Matt Bury -
Picture of Plugin developers
Ok, as requested:

Summary of desired functions of new Flash module

The new Flash activity module is a PHP wrapper that integrates SWFs into Moodle. Please feel free to suggest changes/improvements to this summary.

1. User can upload assets into library directories:

    • moodle/mod/flashnew/swf/ - (Flash SWF files)
    • moodle/mod/flashnew/xml/ - (XML files)
    • moodle/mod/flashnew/pix/ - (image files - JPEG, GIF, PNG)
    • moodle/mod/flashnew/mp3/ - (MP3 files)
    • moodle/mod/flashnew/flv/ - (FLV video files)

2. The user creates a database entry to create a lesson. A lesson database entry consists of:

  • lesson name - a unique value that identifies the lesson
  • lesson type - a means of categorising lessons for easy searching and reference
  • lesson text - a brief description of the lesson for reference purposes
  • XML file URL - the structure of the XML tree is not defined and can be set by the Flash SWF developer. The XML file contains text and references media from the media directories pix, mp3 and flv.
  • the parameters to embed the SWF - (SWF URL:String, name:String, height:String, width:String, Flash version:String, background color:String)

3. The user deploys the lesson in courses.

4. The PHP wrapper passes the URL of the corresponding XML file (optional*) into the SWF via Javascript (Geoff Searns' SWFObject) There are other optional parameters listed on this link that developers might want included in the lessons database.

* Some SWF lessons might not require external media and therefore no XML file is necessary.

5. When a student participates in the lesson, the PHP wrapper retrieves the course, student, group and session, details and records any results in the Moodle gradebook.(This is one of many parts of Moodle that I don't know much about.)

Where developers can contribute:

Adapting the NEWMODULE.zip package or the original Flash Activity Module code to incorporate the new functions.

Any suggestions for how you'd like the new module to be.

Constructive criticism welcome.

Oh yeah, here's a working demo I've got on one of my servers. It's text only and there are 3 lessons using a different XML file for each and using the same SWF. Just a silly hangman game - try to save George's life!:
Hangman 1
Hangman 2
Hangman 3

Have fun! smile

In reply to Matt Bury

Re: New Flash Activity Module - Please contribute!

by Martin Dougiamas -
Picture of Core developers Picture of Documentation writers Picture of Moodle HQ Picture of Particularly helpful Moodlers Picture of Plugin developers Picture of Testers
You really do not want to put assets among the module code itself. That way madness lies. Remember that you may have 1000 courses on a site with 1000 teachers wanting to include some Flash they found somewhere. The module itself should just handle the uploading of assets into $CFG->dataroot/$course->id/$CFG->moddata/flash/something and then serve the files using /file.php.

I suggest sticking as close to existing standards as possible. I don't like SCORM either but it really is the best thing available. At the very least consider using IMS content packages to describe your content package. If you aren't using standards then YOU ARE PROPOSING A NEW STANDARD FOR CONTENT PACKAGING so you need to approach it like that with a detailed specification and very good justification, otherwise no-one will spend the effort to put their data in that format.
In reply to Martin Dougiamas

Re: New Flash Activity Module - Please contribute!

by Martín Langhoff -
Matt,

200% with MD here. Before trying to define your own standard, learn a lot about SCORM. It has some problems, but it is on the right track, and has a lot of users behind it. (Maybe not "The" right track, but it is a rather reasonable track. Most do worse than that.)

So it's about understanding in depth the lessons learned with SCORM first. A few things can be fixed within the SCORM "mindset" and others need to break with it. But defining a new standard -- specially one that ignores what we learned w SCORM -- is not the way to go.
In reply to Martín Langhoff

Re: New Flash Activity Module - Please contribute!

by Ger Tielemans -

I love Moodle - especially the new version 1.9 - and it fits 100% my personal needs, especially after my 100 local patches smile

But having said that, Moodle is:

  • NOT a CMS (yet): no version control, no metadata, no learning object catalogue.
  • NOT a LMS: Moodle has no idea or opinion about the learner and his learning process: it only can make lists of activities and tell me if each activity is finished or not, without understanding the relation between these activities. (And I can nowhere teach Moodle these relations: missing metadata fields and metadata mechanism)
  • Even when you can connect with other applications (like resource) it only offers oneway static parameters for that connection, no handshake, no OO Wirffs-Brooks "info exchange contract",
  • ANd NO, it is not SCORM compatibel, it offers no real connector
  • It only offers a clever SCORM simulator, including a simulation of an also not to Moodle connected SCORM-scoring-screen, despite what users THINK!!
    (..and yes I know, the final score can go to Moodle grades, but that was also possible for the old Hot Potatoes without scorm.)
  • I also adore the new version of the Book-module, where you now can create a living book, export it as IMS/CP and the read it with a Scorm player in Moodle or any other VLE with SCORM..
  • If you change the comment "NEW STANDARD" into "ATTEMPT TO MAKE A PROPOSAL FOR AN example of a Container filling mechanism" this proposal makes maybe more sense?
     
  • Again I am not complaining: Moodle is great in visualisation and suspense..
    • It shows me in one screen the structure of a complete course
    • it is queing me and the student in that visual methaphor with suggestions of relations between activities and resources, all organised in clear zones (= sections), only by GESTALT.
    • It frees me from the burden of filling stupid datafields which only make sense when I want to share complete courses with other platforms, there is no standard for that, I am trapped, but happily trapped in the Moodle community..

 

In reply to Ger Tielemans

Re: New Flash Activity Module - Please contribute!

by Martín Langhoff -

We need focus on enhancing mod/scorm -- which is a hard task. Ger, do any of your "100 local patches" help with mod/scorm issues? Talk is cheap - show us the code! wink

The SCORM standard definitely has flaws but it still sets the bar quite high. (IMHO, after having worked with SCORM and various flash-to-php schemes.)

Matt, we need your expertise and that you are thinking in this space is great. But the focus is on SCORM -- it can do (almost?) everything you are trying to do, and it has enormous leverage from the content that has been developed for it.

And after working with SCORM for a while (and moodle's mod/scorm), you'll have a better understanding of what SCORM "gets right" (quite a few things, after all), and what things it doesn't, and we could improve on the Moodle side (an "Extended SCORM") and perhaps start talking about a completely different format that covers the ground that SCORM covers, and some more.

(We may be able to help shape future versions of the SCORM standard if we can show a working implementation of enhancements to the standard. IMS is at last starting to listen.)

The code and approach you are proposing right now are a bit green. Help us with SCORM and you'll get what you need to do done, learn a ton, and we'll all be reaching higher.

In reply to Martín Langhoff

Re: New Flash Activity Module - Please contribute!

by Matt Bury -
Picture of Plugin developers
To get back on track, what I am proposing is an update of Jamie Pratt's Flash Activity Module (FAM). As far as I know, this isn't SCORM compatible, nor does it pretend to be. Neither are any of the other activity modules (please correct me if I'm wrong here).

Putting it as simply as I can:

I would like to create a simpler, more flexible, easier to update and Flash version independent activity module, so that Flash developers using all versions of Actionscript can easily create learning content for Moodle and organise it in any way they please.* A lot of Flash developers that I know would like to have the option to deploy their learning interactions in Moodle and have students' results show up in the gradebook.

* Very good point from MD about mixing content folders in with the Moodle code. I keep my content separate anyway.

Adobe support for SCORM compliant e-learning output stopped at Flash version 8. If you want to develop in Flash 9 for SCORM, you have to do it all yourself, although I understand some 3rd party SCORM.as classes have been coded. I haven't tried any of them out.

I have no pretensions to making learning content produced for it compatible with any other LMS's, VLE's, CMS's or whatever. That's what SCORM is for in the first place. The same goes for making the module comply with IMS standards. If a content developer wishes to create SCORM compatible content, then they can install the extensions to whatever IDE they're using and create SCORM/IMS content. It isn't difficult to do, even I've done it.

Could we please keep this thread on topic and not turn it into an open discussion about standards, IMS, SCORM, etc.?

Thanks, Matt.
In reply to Matt Bury

Re: New Flash Activity Module - Please contribute!

by Ger Tielemans -

What I hope is that your Flash development goes in the direction where a teacher can use the Flash/MX of another developer by putting the .swf in place and then feeding that Flash/MX with his own - again simple - XML-content.

Simple examples of the direction it could go are the XML-exercises from Jeremy FitzPatrick of the OSLOR project
© 2004 Waikato Institute of Technology - www.elearning.ac.nz/

(I am only missing the" give the result back to Moodle")


Attachment logo051.png
In reply to Ger Tielemans

Re: New Flash Activity Module - Please contribute!

by Matt Bury -
Picture of Plugin developers
Ok, it's pretty clear that this thread has been hijacked by SCORM.

I am disappointed.

I will start a new thread. Please do not accuse me of cross-posting, double-posting or whatever. I will make it very clear what the new thread is and I will ask contributors to kindly keep the thread 'on topic'.

All the best with your SCORM discussion.

Matt
In reply to Martín Langhoff

Re: New Flash Activity Module - Please contribute!

by Ger Tielemans -

Martin,

  • Several years now -see my profil? - the other Martin has a CD-rom with al my patches for 1.4.2
    ..and I understand how busy you all are at headquarters, I deeply respect all your effort and the way you try to survive this killing succes of Moodle
  • In the meantime I work on new local patches for 1.9 - but be warned - I am an informatics-tourist, not a programmer. I dare not to ask for a developer account at the CVS, and I think that is very wise... I only make uasble (and working, that's the miracle) prototypes
    (So if you want a CD-rom with my patches for 1.9, feel free to ask and kill them all with better and more secure code smile)

Back to the SCORM discussion

Nothing wrong with improving the SCORM-quality in Moodle, I like to show other VLEs in The Netherlands how our SCORM-player is always better, but:

  • SCORM stands for "learning on your own on the internet", nothing wrong as additional activity, but sick if it will determine the mainstream of a course in Moodle: If your "coup" against the other Martin goes that we, I will give up Moodle for another platform smile or I stick to version 1.9.12871155
  • I Sincerely hope that SCORM in Moodle stays isolated in the two formats it is delivering now:
    • the small, humble scorm-module, living next to the better and richer Moodle modules
    • the course format, trying to take over complete control, and offering a course for individuals, which I only can compensate and heal with the sidebar block where I can offer compensating Moodle modules: when will sidebar be part of the core?
      • With the new code for centerblocks I even can place Module activities on top and in line with the course-outline in the center. (so please, make centerblocks part of the core activity?) 
      • Slightly off topic: With the new IMS-option of BOOK we can create great interactiv books (and also the hidden text filter came just in time!) ..we now can export IMS/CP to other VLEs and the Moodle scorm-player can be used for checking the IMS-correctness of the books.
  • Moodle has not a SCORM heart and a SCORM vison on what education should be (and I hope it never gets one), so code never can help, only the local-isolated- scorm-simulator can get better.
  • I hope that the effort will shift from pure scorm support to the developing of a mechanism that can read the XML-manifest of a zip-container and then offers me a drag-and-drop interface for moving parts of that zip-contaner to better place in a Moodle course outline
    • On this moment we only have the IMS-plugin from Helen and the SCORM-player, but none of these offer this kind of service
    • .. and yes, I uderstand that some SCROM-packages have built-in conditions with alocal scope which "educational resist" against such disassembling action. 
    • Yes, we need a learning model of a student in Moodle for handling dynamic information of the learning process and yes it is very pitty that LD does not solve the final problems before we can implement that bettter model in Moodle, but to give up and go back to poor SCORM? please reconsider..
In reply to Matt Bury

Re: New Flash Activity Module - Please contribute!

by Anthony Borrow -
Picture of Core developers Picture of Plugin developers Picture of Testers
Matt - I would second Mike's suggestion. I would have to go in and look at what you have written but it may help if you could provide (and you may have already done it earlier) an outline of exactly how you would like your module to do. Peace - Anthony