I've been involved in web-based multi-media since the mid-nineties. While I a company called Micromentor (now defunct), I was called on to move interactive content from CD-ROMs to the web. Well, web delivery of media was pretty poor in those days. Average connection speeds were via 56KB modems, which is a pretty narrow pipe, especially for video. Technology and connection speeds have improved, but many of the basic methods for delivering content and media via the web is still with us.
Eric Vogt, president and founder of Micromentor had an idea that content could be described by Learning Structures. In many ways, this idea was similar to learning objects (etc), but did capture the notion of sequencing as part of the process. Some of these ideas are included in Sousa.
Some reference to earlier projects leading to the current work can be found in Sousa Motivation.
Those of you who attended the Seventh Sakai Conference in Amsterdam (June 2007) may recall a session on How Teaching Ideas and Collaboration Needs Become Sakai Tools - Getting Involved Along with Peter Knoop and Stacy Maronne, we walked through the whole process of getting an idea, shopping it to the community, getting it built, and included in the next release of Sakai. I mentioned publicly during the presentation that I'd started work on a Content Sequencing Tool that would play well with the Sakai Resource tool. Well, all kinds of people wanted to participate, use it, or just kick it's tires. Thing is, I didn't really want to share the development of it at that time. I was writing this application purely for my own enjoyment. This might seem strange to non-developers, but I like writing code, else why be a programmer? So I kinda pushed back and told everyone that I'd report on it at the next Sakai conference.
After the Amsterdam conference ended, my wife (Brigid) and I went on a cruise of the Baltic Sea for our 25th wedding anniversary. Ah peace and quiet at last! Much of my free time was spent working on what would later become Sousa. That's me on the left with a picture of my laptop showing early Sousa code. My stateroom is in the background. Ok, my wife did think it was a bit weird that I wanted to write code during a cruise-vacation, but she used to be a programmer as well, so she kinda understand the attraction.
POCS - Page Object Content Sequencer
After cruise, I collected all the stuff I had on the sequencer and posted it to my personal Confluence space. I decided it needed a name came up with POCS. The name was supposed to convey a viral marketing approach, but the ick-factor was a bit too high for most people. Not one of my better naming efforts. I presented a summary of how things were going at the Eight Sakai Conference in Newport Beach, CA in a presentation called Sequencing Sakai Content. This page has the podcast audio, so you can hear it as well as view the slides.
The Sousa Project
I reported on the status of the sequencing project (stilled called POCS) at the Eigth Sakai Conference in Newport Beach, California. I was scheduled across some popular session, so attendance was limited but there were many who were very interested. The POCS name seemed a bit icky to people and it was suggested that, perhaps, another name should be found.
After returning from the conference, at the beginning of 2008, I changed the name to Sousa. The idea was that J.P. Sousa was a great band leader and wrote music that made people march (in line and in sequence), and so it was adopted as the official project name. I re-organized the code quite a bit, checked it all into subversion, and cut the first release (2.4.x-1).
Major Functional Improvements
The first half of 2008 was spent working on providing support for editing in Sousa. Editing is an essential part of any content authoring and delivery, so it had to be a major focus of Sousa. By June of 2008, Sousa supports creation and editing of sequences, grid layout pages, and media objects. Support for media objects goes well beyond what the Sakai Resources Tool provides natively, though the new media handler feature allows it to do almost anything. Media objects in Sakai have three forms: file based, text based, and parameter only. File based objects are things like images, video, and audio. Editing these is pretty much out of scope at this time. Text based objects, on the other hand, can be edited. This also provides support for cut and paste of marked-up media objects, like MathML. Finally, Sousa might provide support for parameter only media objects in the future. These would have either no content (such as spacers) or fixed content (perhaps other Sakai tools).