The last entry in the SCORM for Developers series discussed iframes versus AJAX and reactive frameworks. I'd like to provide some historical context for iframes in SCORM courses. The SCORM documentation and early SCORM examples have a heavy emphasis on framesets because SCORM 1.0 was released in
The last lesson in the SCORM for Developers series covered SCORM wrappers . All of the code we've examined so far has been for single-page 'courses' (I use that term loosely). We’ve added our SCORM initialization code, and the course launches as expected. But
In the last lesson, we discussed how to package SCORM courses . In this lesson, we'll discuss how to make your life easier with SCORM wrappers. A SCORM wrapper is JavaScript library that serves as an abstraction layer between the SCORM API and your course. If you’ve
In the last lesson we briefly covered how to test SCORM courses . If you’d like to test a course in an LMS, you’ll need to package the course, so let’s take a moment to discuss packaging. Packaging SCORM 1.2 Courses A SCORM package
Before we start building functional SCORM courses, let’s take a moment to discuss how you can test your SCORM courses. One of the biggest obstacles for venturing into hand-built courseware is probably the lack of a built-in preview feature. This also impacts testing. When you use
In the last lesson in this SCORM for Developers series, we dipped our toes in the water and created the most barebones SCORM course possible. In this lesson, we’ll wade a little deeper, adding sophistication to the course via a smattering of JavaScript and HTML. We’ll
Let’s roll up our sleeves and create a minimalist SCORM 1.2 course! This will be a fast and loose example, containing only the bare minimum of SCORM code and not much else. I will be moving quickly, but don’t worry if you don’t
SCORM has been around for 20+ years, and the ecosystem has matured to the point where we can make certain assumptions about vendor support. Commercial course creation tools like Adobe Captivate, Articulate Rise, and iSpring are hyper-focused on broad compatibility with as many LMSs as possible. Acknowledging they couldn&
For the purposes of course development, you will need to learn how to work with three components: the SCORM API , the CMI data model , and the course manifest (imsmanifest.xml). Here’s a quick overview of each component. I will provide real-world examples later in this series. The
The Shared Content Object Reference Model (SCORM) is a system for standardizing how e-learning courses interact with a learning management system (LMS). In the mid-1990s, the Internet — still spelled with a capital “I” — was booming, and new learning management systems were popping up left
I’m about to publish a series of tutorials demonstrating how to build SCORM courses by hand. Some may ask: Why hand-coded, and why SCORM? Let’s address the SCORM question first. There are a dozen reasons why e-learning developers and instructional designers might scoff at
Trax is a no-frills learning record store (LRS) designed for gathering and storing xAPI data. It’s open-source and a great way to dip your toes into the world of the Experience API. I wanted to take Trax for a spin, so I installed it on a
I’ve used Google Analytics for probably around 15 years. That’s a long time. Google Analytics has always felt like a deal with the devil: It’s such a convenient way to get basic site stats — how many people visit, which pages are getting the
Last week, I released https://fretboard.buzz , a free online tool that helps luthiers design fretboards for guitar, bass, mandolin, ukulele, and more. I’ve been playing guitar since I was a teenager in the late 80s, and got the bug for building guitars circa 2018. A chance encounter
PDFObject 2.3.0 has been released and is available immediately on NPM and related CDNs. It continues to support all major browsers (even that pesky little IE11). There are quite a few improvements in 2.3, including switching to a pure iframe solution for more robust cross-browser support,