Jeffrey
Rhodes, a long-time e-Learning developer and the CTO and owner of Platte Canyon
Multimedia Software Corporation, has just released a book that belongs on the
shelf of every e-Learning developer, and of many a designer and manager as
well. Programming for e-Learning
Developers: ToolBook®, Flash®, JavaScript™, and
Silverlight™ shows you, step-by-step, how to handle common coding
tasks in these four authoring tools.
Having co-authored books on programming and scripting, I can attest to how difficult it is to write this kind of tutorial work. Rhodes has done a superlative job, complete with lots of screen shots and code examples. His editors even managed to get most of the screen shots positioned right next to the text that refers to them, another difficult task.
Let me give you some specifics.
The content
The book is organized around a dozen common tasks that developers must deal with again and again in e-Learning projects. These are:
- Handling a Click Event (Parts I and II)
- Setting a Property
- Creating an interactive “rollover” screen
- Hyperlinking to a URL
- Sending e-mail
- Organizing navigation
- Dynamically loading graphics and media
- Reading XML
- Making SCORM calls
- Creating “drag & drop” interactions
- Building a glossary
- Creating a simple calculator
The book also includes an essential chapter on debugging your applications, plus tutorial-type material on Object-Oriented Programming (OOP), and a detailed OOP example. These three are specifically written for readers who have no experience in OOP in general, and in Flash and Silverlight in particular; they explain the sometimes arcane syntax and terminology involved.
The book closes with a “Conclusions” section that reviews the strengths and weaknesses of the four tools covered in the chapters. This will be useful if you are in the process of selecting your first authoring tool, or deciding on one to supplement a tool that you are using now, or to replace a tool that isn’t meeting your needs.
The tools
Rhodes chose four authoring tools that account for a great deal of development work other than that done with “rapid development” tools. Developing skills with his chosen tools will also assist you if you are using, for example, Adobe® Dreamweaver® and any of the other tools in the eLearning Suite, tools based on Flash (e.g., Articulate® or Captivate), or tools based on HTML (e.g., Lectora or ReadyGo).
The tools, as mentioned in the title are:
- ToolBook: An old-line but very powerful and (relatively) easy-to-understand-and-learn authoring tool. You can use ToolBook to create e-Learning applications for native deployment (not on the Web) and for Web deployment.
- Flash: Everybody knows about Flash, but not everybody knows how to create e-Learning applications with it. Flash runs on nearly all browsers and platforms, and probably accounts for most e-Learning content today.
- JavaScript: It isn’t common to create all e-Learning content in JavaScript and HTML, but JavaScript is a great way to get beyond the limitations of your preferred tool. This is a truly essential skill, and you can call JavaScript from the other tools Rhodes addresses, as well as from many others.
- Silverlight: This is very new, and not many developers create e-Learning with it … yet. However, it offers a cross-platform player and has great multimedia capabilities. In addition, if you have Visual Basic programmers available (and Visual Basic is the most widely-used programming language on the planet), they will find it easy to work with Silverlight.
In the book, each chapter addresses one of the common tasks, and each one begins with a worked example in ToolBook, followed by Flash, JavaScript, and Silverlight. This consistency (in my opinion) makes it easier to follow what is happening in the code.
In addition to the screen shots and printed code, Rhodes has also made all of the code and the resources (graphics and external content) available in an archived file on his company’s Web site. The link to the archive is on page 2 of the book.
A word of caution: the archive is password-protected, and the password is in the book as well (the archive tells you where to look). If you are using Windows as your operating system, the archive file will open without any trouble. If you are using a Mac running OS X, you will need to download a free (Open Source) tool called The Unarchiver 1.6.1 from http://www.versiontracker.com in order to open the file. (The Mac Archive Utility cannot open password-protected files. Many people have tried Stuffit Expander on the Mac to open password-protected files, there are many disaster stories about that application – including my own – and I don’t recommend it. The Unarchiver works, doesn’t create problems, and the price is certainly right.)
What’s the book like?
The first thing to understand is that this is a practical guide, intended to help solve specific challenges. It is not a programming textbook. While it addresses many, perhaps most, basic concepts in OOP, it seems to me that it still assumes that the reader has two resources:
- Some knowledge or experience with programming or scripting, even it that knowledge or experience is only with basic HTML; and
- A system running at least JavaScript and one of the other three tools, in order to try out the examples and to “experiment” with.
This does not mean that you won’t find this book useful if you are an utterly inexperienced person when it comes to dealing with programming. I believe that a person new to programming will find Rhodes’ examples extremely useful in coming up to speed in any of the four tools. That is, as long as the new person is also getting some instruction or help in the basics of the tool, say from an experienced person or from the tool publisher’s tutorials online.
Otherwise, programmers and developers who are already skilled in dealing with (for example) Authorware or XHTML, and who need to learn one of the four languages, will save a lot of time with Rhodes’ book. The same is true of those who are simply struggling with one of the four.
I particularly like the way Rhodes deals with the usual things that are hard to explain and get right. He is, for example, very good about giving the reader warnings about things that can go wrong. He even addressed practices that open JavaScript up to script attacks – something every developer needs to be keenly aware of these days.
Another good feature is the way Rhodes points out unique features of each tool. For example, he is very helpful in showing how to use the Popup in Silverlight as an alternative to the Message Box. In doing this, he manages to still take things in order from simple to complex. The further you go in the book, the more complex and lengthy the code examples get (good thing you don’t have to type them in yourself!).
Probably my favorite parts of this book are the chapters on dynamically loading graphics, reading XML, and making SCORM calls. In my opinion, these three chapters alone are worth the price of the book. I don’t know that you will find the content on making SCORM calls from Silverlight anywhere else.
Recommendation
If you are new to development, I would suggest starting by placing a bookmark near the back of the book, at the beginning of the session on OOP. You might even read through it quickly first. But then go to the front of the book, and work through it in order. Don’t skip around. You can trust Rhodes. He isn’t going to leave you high and dry.
If you are more experienced, you may be able to start with whatever sort of problem is giving you most trouble. This is especially true if you have already worked with Visual Basic, C#, and other similar languages.
This is a book that should be in the library of any organization that is doing in-house e-Learning development. I would even recommend it to those who are using rapid development tools, just because of the information on using JavaScript and Flash.
Bibliographic details
Rhodes, Jeffrey M. (June, 2009). Programming for e-Learning Developers: ToolBook®, Flash®, JavaScript™, and Silverlight™. Colorado Springs: Platte Canyon Press. 358 pages. $45.00. ISBN-13: 978-0-9711099-2-6

