As I've spoken about in the past, almost all of my eLearning is programmed by hand using the Adobe suite of products and creating interfaces, buttons and eLearning elements from scratch.
As I get ready to roll out my new business venture (Catapult Training Group...YAY), I'm debating about whether I should advertise on the new web site and in my promotional materials that I use/have used/can use the off the shelf eLearning development tools like Unison, Lectora, Articulate and Captivate. As an eLearning developer, I've always prided myself on the fact that I write from the source and do not use these tools when developing. Several of my clients have asked me to use these tools and help them to learn these tools, however should I be advertising that these tools are within my capability?
Does it diminish my reputation as a developer to talk about my company using these tools? Even though most of these tools are great, they have serious limitations when it comes to high degrees of complex interactivity. I feel that I shouldn't want it featured that I sometimes use them on behalf of clients...am I right to feel that way?
On the other side of the coin, some of my current clients are using them and I've been able to offer my assistance to those folks and make a little money to boot. In fact, one of my clients ONLY uses these tools and has required me to design within the confines of these applications. Is that a value to other companies? Should I advertise it?
I'm seriously interested in knowing your opinion! Please comment or shoot me an email to let me know your opinion. Thank you in advance!
Recently, several people have sent me emails asking how I've learned my web skills. I joke and talk about the painful process of trial and error, of late night hair pulling sessions and emails to online experts, begging for assistance. However, the reality is I am self taught - relying on books and projects to drive my learning.
I have never taken a single course on web design, graphic design or eLearning design. I probably could have been much better, much faster if I had, but the reality is that everything I've learned has come from a book or from a project. I never bothered to learn a technology until I accepted a project that required it. JavaScript, PHP, mySQL, SCORM, Flash and others were learned because I had received a contract to deliver a web application or site using these technologies and had to learn it or die trying!
I prefer to learn from books - nothing feels so good that to crack open a bound volume of knowledge and apply it. To me, its a rush to get a new book and then work through it.
Notice that I didn't say read it. I work through it. You don't learn web design or graphic design or eLearning design by reading a book. You need to use it as a workbook to push you into the learning and really DO the activities and projects in the book. In fact, when learning a technology, I seek out the books where the entire book is a series of activities and projects to learn.
So, what's my list? Here are my top publishers to whom I owe my success!
Friends of Ed
If you want to learn anything Adobe (in the past, Macromedia too!) you must, must, must visit the site and make a purchase. They are a small group out of the UK that publishes materials the way I like to learn - very project based. Flash, Dreamweaver, Fireworks, generic Web Design, CSS... all of it is there! Their Foundation series of books are phenomenal. I highly recommend these books and this publisher.
Peach Pit Press
After I've learned it, I need reference materials at the tips of my fingers. While Friends of Ed teaches me, the Peach Pit stuff gives me the instant info I need to solve a specific problem or find a solution for accomplishing a task. Their Visual Quickstart Guides are amazing. They provide you with the info you need very quickly. When you are armpit deep in the code and its 2:00 am, the Quickstart Guides come to the rescue. Think of a web technology, and they have a Quickstart Guide for it.
SitePoint
Lately, I've been reading a ton of books from SitePoint. While most of their materials cover specific web technologies, I've been finding gems in their theoretical books. Things like Freelancing, Web Marketing, Project Management and Principles books have all rounded out my rough edges - provided the missing practical knowledge I didn't have by not going to design school. You can review their site and see what kind of things they offer (lots of webby stuff!), but their books are short, fun to read and incredibly practical.
There you go! That's my list. Of course, I have benefited from Adobe Press, RapidIntake (when they were producing books) and the Missing Manual books, but the lion's share of my learning has come from my three favorites above.
I hope this helps you on your learning journey. Remember, good eLearning programming comes from a strong foundational knowledge of web technologies.
It's been a while since I had a podcast, but I am setting a new one up for this upcoming weekend! My topic will be Learning Management Systems (LMS). Love them or hate them, they can be an important tool in any organization. For the tracking, storage and reporting on learner activity, they can be an amazing asset.
However, they can also be a major pain in the butt! From installation issues, vendors over-promising (that never happens anymore does it???) to data integration and SCORM course issues, LMSs can be a nightmare.
I have an expert lined up who will demystify LMSs, talk about the reality of the LMS and hopefully give you new ways of thinking about this software. Keep your eye on this site...as soon as I am able to get into the studio, the new podcast will be up!
One of the most important elements to include in any eLearning project is a way to display current page numbers and total page numbers for your learners. Adults like finish lines, and there is something comforting about knowing how many pages you will need to work through when taking eLearning, as well as knowing where you are inside the eLearning program: "Page 10 of 100" feels different than "Page 98 of 100".
I used to do it all with regular old text fields in Flash, but with ActionScript 3.0, there are some calls you can make to identify where the user is at on the time-line. Combine this with a design methodology and a couple dynamic text boxes and you can create something that is quickly customized and scalable.
First, from a methodology perspective, you need to decide that each single frame of your Flash movie will be a single page in your eLearning project. You can have content and interactive media built into Movie Symbols, so you don't have to feel tied down to the single frame, but choosing to utilize the embedded symbols onto a single frame can help you better organize your overall project. This, by the way, is my preferred style of programming - a 30 frame eLearning project feels like 30 "screens" to the end user. Even though there is a ton of content dropped into Movie Symbols on each frame, this method works best for me and my development methodology.
Second, you need to add the ActionScript necessary to identify frame location. The ActionScript:
currentFrame
identifies where the user is on the time-line, while the ActionScript:
totalFrames
looks at the total number of frames in the movie.
Applying the code takes a bit of a twist, but once you think through it, its easy - when the user moves to a new frame (ala Next or Back button), then refresh the page counter and re-populate the current frame.
I create my page counter on a single layer with a Back button, Dynamic Text field (current frame), Dynamic Text field (total frames) and then a Next button.

I start with setting up the variable names like so:
var frames:Number; var totals:Number; frames=currentFrame; totals=totalFrames;
This sets up the variables and then pulls the data from currentFrame and totalFrames into those variables.
Then, I have to set up my Dynamic Text variables:
myLocation.text=(String(frames)); myTotalPages.text=(String(totals));
I have two Dynamic Text fields named myLocation and myTotalPages. Variables called as numbers do not display in Dynamic Text fields, so I have to convert them to text by re-categorizing them as Strings. I know...silly step, but it is the only way to take the number variables and display them as text.
Then, I add the code for my Back and Next button listeners:
next_but.addEventListener(MouseEvent.CLICK, goNext); back_but.addEventListener(MouseEvent.CLICK, goBack);
And then the functions for the Back and Next buttons:
function goNext(event:MouseEvent):void {
nextFrame();
frames=currentFrame;
myLocation.text=(String(frames));
}
function goBack(event:MouseEvent):void {
prevFrame();
frames=currentFrame;
myLocation.text=(String(frames));
}
Notice I use nextFrame() and prevFrame() to move the user back and forth. Also, I recall the
currentFrame
variable and then re-populate the Dynamic Text box with that updated data.
The
myTotalPages
doesn't update, as the user cannot control how many pages are in the total project, but if you, as the developer, want to add more frames, you don't need to reprogram the page counter. Some designers manually put the total number of pages in as a generic Text box, but adding and removing frames means you would need to change that number on each page. Using
currentFrame
allows it to be dynamically generated at run time, regardless of the total size of the project.
I'm sorry I've been away for so long...traveling around the United States teaching and speaking keeps me busy, but I hope this entry is helpful to you.
This past week I finished up my last ASTD Essentials Webinar Series and again had a "virtual" room full of highly engaged, highly interested learners. It was interesting hearing from this group: they are all going to be the eLearning Obmudsmen I commented on in an earlier post. As I was going through the software examples and demos, I started getting some really good questions about process. I have a standard routine that I use when building my eLearning project from scratch, and I thought that it might be of benefit to my reading audience.
After meeting with a client and getting my first installment check (!), we start the following process:
1) Instructional Design Phase
Some of my clients have at least an outline of the content to the site, some have complete storyboards, but most are somewhere in between. Its my team's responsibility to take what they have and build out a storyboard for their review. We use a PPT based storyboard to document screens, activities and simulations in a way that makes it easy for the client to see how their program will function and flow.
:: Next >>