This could be used for pretty much anything (photos, slides, etc) besides the original intent of a simple and easily modifiable elearning course architecture that leveraged XML to load in the content dynamically. I was recently asked about how best to develop elearning in Flash, from an architectural standpoint. Clearly XML is the way to go these days and the foreseeable future. Attached is a zip containing a simple flash app (with source) and example content (purely to demo the functionality….it’s all pretty ugly as I put it together quickly just to test the code). Feel free to download and use as you wish. I only ask that if you improve it you email a copy of the fla/code so I can have it : )
With the proliferation of Learning Management Systems at all price points (from what I’ve seen Moodle is the best and it’s free!) and with the need to track progress (ie, bookmarking, testing, etc) you’ll certainly want to expand on this for the tracking and such. But for new elearning developers this may be a good jumping off point.
As always, feel free to email me with any questions or leave a comment. Particularly if you like it and get use out of it : )
Simple Reusable XML/Flash-based Course Architecture Example
UPDATE: I’ve had some folks email me over the past few months asking me how to get started learning how to leverage XML for their courses. Well, in order to do it you have to get a decent understanding of Flash ActionScript. ActionScript is the programming language of Flash. A new version of ActionScript, version 3.0, was debuted with flash player 9 and it is wonderful and extremely powerful. And in some cases, way better and to some easier (particularly for traversing XML). In my opinion (for what it’s worth…not much), ActionScript 3.0 is *way* more difficult for a beginner to just pick up and learn. Why? Well, I learned to program with ActionScript 2 (with only minimal use of classes), so mostly procedural programming. In anticipation of the then forthcoming ActionScript 3, I signed up and completed 2 Java courses at my local college. ActionScript 3.0 is as close to Java as you can get without it actually being Java. Yes, there are a lot of syntax differences (though not as many as you might think), and the libraries/api is completely different. But if you know Java you can pick up AS3 very quickly. And undoubtedly Adobe targetted that crowd as a quick browse of Java Developers Journal will yield a ton of Adobe Flex articles. Anyways…if you’re a beginner and want to learn ActionScript 3.0 the right way, I *highly* recommend this book:
Learning ActionScript 3.0: A Beginner’s Guide
The author of that book did an awesome job and in my opinion it is by far the best for new programmers, and even those with extensive AS1/2 experience but not a lot of OOP experience.
3 Comments
Thanks for the ZIP file. Looks good. Only problem for me… how can I learn more about using XML for this purpose? I love this modular concept for work flow. I can see how it would be great to create elearning content this way because it can easily be reformatted to fit for different uses (e.g., mobile devices vs desktop). But how do I begin to learn about doing all this stuff? What are the best of breed applications and tools to assist in the process? Thank you!
Hi Richard,
The last few years it seems everyone has gone either the route of XML-based elearning (like the guys at RapidIntake.com) or PowerPoint-based.
To learn how to develop for it you basically need to learn actionscript, the language of Flash. There are a number of good books and tutorials, but for a beginner, by far the best book out there now is Rich Shupe’s book. But be forewarned - learning actionscript takes a lot of time, especially the new version (ActionScript 3), which in my opinion requires a good understanding of object-oriented programming. I took a couple of college courses in Java last year in order to prepare for the switch to AS3 and without that I think I’d be completely lost with it. Anyways, I’ve edited the blog post to add a link to the Rich Shupe book.
the great thing about XML is that it’s ‘machine readable’ and ‘human readable’. For example, when you do content in XML and using Flash Templates, you can easily train your editors or content experts to edit in XML for any changes rather than having to go into the flash files which requires a programmer.