- Get Started
- Write Code
Posted by Tim Martin
Posted 2 February 2016
Welcome to week one of the post-acquisition Rustici Software world. I just thought I’d take a moment here to discuss one of the reasons we agreed to sell Rustici Software to LTG, because it’s not all about the money.
Mike and I were seeking investment funding for Watershed, but we really weren’t on the lookout for anything related to Rustici Software. It was a profitable business, I know very well how to run it, and we have several sets of work that give us cause for optimism. LTG, however, saw the value in both Watershed from an investment point of view and Rustici Software from a market and profitability point of view.
After LTG’s first visit, Mike and I asked ourselves two questions.
Throughout the negotiations, due diligence, and these two long days as an LTG company 😉 we’ve consistently believed that we could do both of those things and still do. LTG is not an LMS provider like some of our prior suitors have been. We always used to worry that an acquisition of that sort might include aggressive interactions with our customers. With LTG, we’re going to continue to be agnostic, supportive of the standards, and generally the same company we always have been. We’re excited about it, and excited about continuing to support our customers and the industry in general in exactly the same way.
Posted by Tim Martin
Posted 29 January 2016
Today, I want to share a piece of news that’s really exciting for us. As of this morning, Rustici Software has been acquired by Learning Technologies Group plc (LTG), a publicly listed learning technologies agency made up of specialist digital learning businesses. As a part of LTG, we’ll have the opportunity to work with the other Group companies in creating the next generation of technically-focused learning solutions.
LTG has a great deal of learning expertise and serves organizations worldwide. LTG’s portfolio includes LEO, a pioneering learning technologies firm, the multi-device authoring tool gomo learning, games with purpose company Preloaded, and Eukleia, an e-learning provider to the financial services sector.
As part of LTG, we’ll continue offering exactly the same services we do today to an ever larger group — not only will we provide our world-class e-learning standards support to LTG companies and their customers but as part of the Group, we’ll also have the platform to reach new global audiences.
This has no impact on the xAPI/Tin Can API. We’ll still continue to work with ADL and the e-learning community to foster adoption and advancement of the specification.
For our Rustici Software customers, the story is simple. The very same people will be providing to you the very same services in the same way. Our ability to serve our customers in the way we always have is something we feel really strongly about.
We’re excited to have the opportunity to work with the fine folks at LTG, and to continue to serve the e-learning industry in an even bigger way than before. We’re also excited because we’re spinning off Watershed at the very same time. Watershed will continue to push forward with their exploration of learning analytics and LRSs, and has also received a significant investment from LTG as part of Watershed’s Series A funding round. Mike and I, as CEO of Watershed and CEO of Rustici Software respectively, are both excited about where the two companies are headed.
If you have any questions or need more specific information regarding the acquisition, please let us know. Any inquiries or requests for additional documentation should be sent to email@example.com.
Posted by Tim Martin
Posted 20 August 2015
On August 13th, 2015, we launched a heavily revised version of tincanapi.com. Andrew Downes has been working away, as he does, creating new content. Rather than direct it all at the blog, though, he’s been rethinking and restructuring the core site and sharing his insights for first-timers, learning designers, learning product vendors, and organizations. There are countless other updates laid out below. Please spend some time with them.
Many readers of the site, though, will likely notice a significant change to our handling of the name… tincanapi.com. Years ago, Mike shared our perspective on the name, that we were going to call it Tin Can API. For some, this has been a contentious issue. With the new site, we’ve made the site behave as we have been personally for a long time. We call it whatever you call it.
On the site, you’ll notice a toggle in the upper left. If you prefer to call it Tin Can, do so. If you prefer xAPI, that’s great too. Whether you visit tincanapi.com or experienceapi.com, the site will present everything to you using your prefered name.
It comes down to this: arguing about an API’s name simply isn’t productive. We have far more important things to accomplish together.
So please, enjoy the new content. Go build a brilliant activity provider. Make some statements. Or ask us for help if you need it.
Here are the new sections of the site:
The existing Tin Can Explained page gives a really helpful introduction to Tin Can if you’ve never heard of it. We’ve brought this section up to date a little and added some pages around the different components of the new enterprise learning ecosystem that Tin Can enables. We’ve also added pages targeted specifically at organizations, learning product vendors and vendors of products outside L&D.
By now, if you haven’t heard of Tin Can and got a basic understanding, you’ve probably been living on mars. These days, the question we get asked most isn’t “what’s Tin Can?” but “how do I get started?” If that’s your question, then good news – we’ve created a new section just for you!
The get started section includes pages targeted at product vendors, content authors and organizations. It includes guides to help you see Tin Can in action, get a Learning Record Store (LRS) and run a pilot project in your organization. There’s a collection of pages to help you think about moving on from SCORM, too.
We already had a bunch of resources for developers, but not much really aimed at learning designers. We’ve added a page outlining the impact of Tin Can on learning design, including reflections on a handful of learning models and theories in the light of Tin Can. If you’re thinking more at the strategy level, we’ve got a page on incorporating Tin Can into your learning strategy, too.
The developers section was already crammed full of resources. We’ve tidied these up to make them easier to find and created an interactive statement explorer page to help you understand the structure of the statement.
The statement generator we created a few years ago was due for an update and ADL recently published a new more comprehensive statement generator. We don’t believe in reinventing the wheel, so we’ve taken the ADL tool, made it orange and included it on the site.
To help you put all these resources into practice, we’ve created a series of challenges for developers to try out writing code for Tin Can.
The previous webinar list contained embedded YouTube videos for all our webinars. We’ve got so many webinar recordings now that it was getting hard to find webinars on specific topics so we’ve created a new categorized webinar list. Each of the webinars is now on its own page, making it easier to share the recording with other people.
Posted by Andrew Downes
Posted 7 May 2015
I’m super excited about the latest recipe we’ve published on the registry! Not only is it a great recipe tackling an important use case, but it was written by adopters who needed it for a real project. It was written incredibly rapidly, going from first draft to ready-to-try in less than two weeks. This blog gives you the details.
Sometimes when I talk to people about recipes, they’re disappointed to hear that there isn’t yet a recipe for the use case they are interested in. “Don’t worry!” I always console them, “You can write your own.” TES took that advice to heart and one of the first things they did after hiring a developer to take Tin Can further in their app was to draft up a recipe covering the events they wanted to track. In this case, attendance at events such as meetings, classroom sessions, conferences, etc.
The actual recipe can be found here in the registry. The recipe is split into ‘Simple Attendance’ which uses a single statement to record that a group attended the event, and ‘Detailed Attendance’ which is used to record more events such as scheduling, registering, joining and leaving. It’s envisaged that some recipe adopters will implement only Simple Attendance whilst others will compliment it with the nuances captured by Detailed Attendance statements.
The bulk of the recipe was written by Sean Donaghy of TES. I helped by reviewing each iteration and making a couple of edits where it was faster to make the change directly than write up an explanation. I’m very happy to help anybody who wants help with reviewing a recipe they’re working on.
This first release of the recipe is considered an alpha version. Aside from the TES developers who are busily implementing the recipe in their product, nobody else has tried the recipe yet. There are likely some changes to come as implementers run into challenges we couldn’t predict. If you do implement the recipe, we really appreciate your comments and feedback. You’ll use the recipe ids (http://xapi.trainingevidencesystems.com/recipes/attendance/0_0_1#simple and http://xapi.trainingevidencesystems.com/recipes/attendance/0_0_1#detailed) as a “category” Context Activity so that when you upgrade to the final release version of the recipe you can easily identify which statements used which version.
Recipes are really important to ensure your statements can be understood by other tools. If you’re working on a Tin Can project and neither following nor writing a recipe, please do get in touch so I can help you.
You can expect this to be the Year of The Recipe for Tin Can. We already had the Open Badges recipe last month and there’s a few more in the works that will pop up as the year progresses. Watch this blog for more news sometime soon!
Posted by Brian Miller
Posted 15 April 2015
We’ve had some great contributions from the community over the last three months, and thrown in a little of our own time to push a bunch of our open source libraries and tools forward. Here’s a summary:
Hot off the press is release 0.7.0 which adds support (contributed by Dave Smith) for JSON document updates via the POST method.
A couple of releases for this library that were driven by a need from the prototypes (see below). 0.32.0 improved the library’s conformance and add a couple of handy methods for dealing with ISO8601 durations. 0.33.0 was a small release that landed a fix for URL parsing.
A small bug release that fixed “registration” handling in State Document handling, and corrected Result “duration” handling by allowing it to be null (read: not present).
This one landed a little while ago, but was a significant improvement to the overall code structure and the Score class in particular. George Cooksey provided this one with a really good bump in unit test coverage as well. Look for more about this library coming soon; it’s getting a neat new feature!
This group of code doesn’t follow a specific release scheme, but it recently received a big bunch of love from Andrew Downes. We made some backwards incompatible changes, but it really was time to modernize the prototypes in line with more current best practices around IRIs and Recipes. They should also run more smoothly taking advantage of a bump of a few releases of TinCanJS under the hood. You can get the code now, but look for a comprehensive blog from Andrew this coming Monday.
Technically, this one isn’t open source, but it is a popular, free tool available from our website and one of my favorites for capturing the informal learning I’m doing while working on all our open source stuff. Recent improvements include a new display of past sent statements so you can see whether you are repeating yourself, and improved Activity ID creation which removes certain query string parameters added to URLs just for analytics tracking.
We’ve been working on some improvements to the LRS Conformance test suite to make it easier to see whether an LRS is considered conformant, to provide an easier way to compare the conformance of two LRSs, and to fix kind of a big issue with how we were testing statement conflicts. Those improvements should be landing soonish.
I love that my job affords me the opportunity to work on projects that I can openly contribute back to the community, but that’s made all the better by receiving such well done contributions to those projects from the users out there in the world.