Being Blackboard’s Sakai Chief Strategist – One Year In

Note: I am not speaking for Blackboard in this post and I am not speaking for the University of Michigan in this post. The opinions in this are my own.

Just over a year ago, in addition to my full-time job as a Clinical Associate Professor at the University of Michigan School of Information, I became a part-time employee of Blackboard, Inc. as with a title of Sakai Chief Strategist (My Blog Post / Press Release)

I figure it is probably a good time to give a bit of a status update as to how things went this past year and what I did.

A little more context on my decision / strategy

You can go back and read all my motivation, rationalization, and plans from my blog posts from late March and early April of last year. While all I said was completely true – there was one small detail in my motivation for going to Blackboard that I somewhat understated a year ago. You can see a running theme of Sakai CLE resources in those posts but not up-front and explicit. Now a year later I can be much more explicit.

Early in 2012, things were looking really bleak for the Sakai CLE. The progress toward the 2.9 release had slowed and eventually stopped. I was really worried that if Sakai 2.9 (most importantly Rutgers LessonBuilder) did not ship that Sakai 2.8 would not be able to hold its market share because of Sakai 2.8’s lack of structured and sequenced content. But I felt that 2.9 with its new portal and LessonBuilder would be a solid and competent LMS that would have a long life in the US and around the world.

I did not want to quit so close to the finish line. If you recall, Sakai 2.9 was in *beta* when the TCC cancelled all further release activity.

In January – March 2012, I felt that we were seeing the end of Sakai before our eyes. In this blog post from March 31 last year – I get a little testy and call out the Sakai community for its lack of investment in the commons. You can see my frustration, anger, and fear with respect to Sakai’s long-term survival in that post.

Michael Chasen was willing to give me money and resources to invest in Sakai so we could finish and ship Sakai 2.9. He would put little or no constraints on how I spent the money – it was mine to spend as I saw fit. It was not enough money to take over Sakai development and release management but I gave him a figure that I felt would get things moving again when added to the rest of the Sakai community resources.

You can look at the Sakai 2.9.0 release cycle document to see that 2.9.0 was finished November 12, 2012. The code freeze and first release tag (A01) had been created 13 months earlier on October 17, 2011.

I want to make it really clear that many people deserve credit for the 2.9.0 release. My contribution and Blackboard’s contribution to 2.9.0 was non-trivial but many others contributed much more than Blackboard or me. It was a cross-community effort and I was only a part of that effort – which is as it should be.

What Got Done? How Did You Spend Your Time? How Did You Spend the Money

Here is a list in no particular order.

  • I bought food, drink, stickers, and shirts for community leadership. Sorry – but this is important. For those of you who have been in Sakai from the beginning, you may remember situations where I used the University of Michigan Credit card (backed by grant funds) to pick up the tab for 40-50 people at a time. If you are going to volunteer your spare time to doing hundreds of hours Quality Assurance or software development – then *someone* should at least buy you a meal or two to say “thanks”. I don’t hesitate to use my Blackboard American Express Card to pick up the tab when I am sitting at a table with a bunch of amazing community volunteers. I took the entire TCC and a few guests to Ruth Chris at the June 2012 meeting. I turned in an expense of $3700 for the TCC dinner. It was approved with no questions asked. It was a bargain given the amount of work that the people eating those steaks have contributed over the years.
  • I contracted with developers in the Sakai community from June 2012 – February 2013 to work on resolving any and every outstanding Sakai 2.9 issue they could find. When I paid these contractors I did not ask that they make any public statements about the source of their funds. This was not about getting credit for Blackboard per se, it was simply to get the product out the door with whatever it took.
  • I paid for travel for several people in the Sakai community who could not otherwise attend meetings where I felt their presence was very valuable and their organizations could not afford their attendance. Again, the funds were given without any requirement of public announcement that the funds came from Blackboard. These funds were a gift/grant because I wanted the particular person to be at the meeting – it was not to make it about Blackboard.
  • I travelled to the Sakai meetings in Atlanta, Paris, and Puebla Mexico as well as had Blackboard pay my way to the Sakai Foundation board meetings while I was still on the board. I also went to a Moodle Moot in Los Angeles. I gave talks at each of these meetings – mostly focused on bringing some excitement back to the CLE and making sure that everyone knew how awesome Sakai 2.9 was.
  • Blackboard paid my part-time salary and made it possible for me to spend nearly all my own spare time working on Sakai. Beyond bug fixes and release support for Sakai 2.9, the my primary large developments were to completely replace the Sakai Web Content tool with a JSR-168 portlet that eliminated the double iframe problem and allowed us to deal with sites that are starting to set the X-Frame header. The second development was a major investment in cleaning up the LTI code in Sakai and release a new version of LTI with Sakai 2.9.2 that fixed over 45 problems that were identified in the LTI code from the 2.9.0 release. Both the new Web Content tool and LTI code should be in the upcoming 2.9.2 release. This was all supported by Blackboard. University of Michigan (Beth, Zhen, and John) can also take a bunch of the credit for the new LTI code as well. Matt Jones and Sam Ottenhoff of LongSight also helped with the Web Content tool.
  • I even spent Blackboard funds to send myself to a purely academic conference. I figure I am an academic researcher – I should go to an academic (i.e. not industry) conference once in a while. It was my first non-industry conference in years.
  • I installed a Sakai 2.9 QA server on my Blackboard-provided server hardware. I wanted this so I could do more complete tests of Sakai’s increasing support for LTI-related web services.

So What Did You Do For Blackboard Last Year?

I did do a few things for Blackboard that weren’t just working on Sakai.

  • I advocated internally for quick implementation of LTI 1.1 in ANGEL – which was completed in mid-summer and announced at BbWorld 2012 in July. I joyfully filled out my IMS Ring of Compliance with the ANGEL logo and got the tattoo in New Orleans with Linda Feng doing the filming.
  • I did a review of the xpLor integration API and made suggestions that led to a new version of the API that makes it more reasonable to integrate xpLor into an LMS at “arms length” – it made xpLor more like just anther external tool in terms of its access to information within the LMS. I hope this new API will be the basis for a general-purpose Learning Object Repository Integration (LORI) API in an upcoming version of IMS LTI 2.x and that such an API will allow many tools (i.e. not just xpLor) to enjoy deep integration with LMS systems.
  • I built the API code to support the revised LORI API so that Blackboard’s xpLor (as well as other LOR products) can smoothly integrate into Sakai’s Lessons capability as of Sakai 2.9.2. I also built PHP sample code/unit tests for that API.
  • I have been interacting with the Blackboard Engage (formerly Edline) group that sells a very successful K12 CMS system. I am working with them as they explore LTI integrations. (I am not announcing any delivery of any product here)
  • I have been attending IMS quarterly meetings and Learning Impact to continue to move IMS LTI 2.0 and other IMS activities forward.
  • I have been working with Blackboard Collaborate (formerly Wimba/Elluminate) as they explore the LTI integration. They are in pretty good shape on their own but I help a little bit here and there when they ask.
  • I worked with my new colleagues from Moodlerooms. But really I mostly just learned from them. We went through the design of the Moodle 2.3 LTI code and its design approaches – and I stole many of those ideas for LTI in Sakai. They showed me some of their secrets of how they get Moodle to scale so well. Their approaches really informed what I think we should do in Sakai if we want to become a SaaS application. Seeing the Moodlerooms SaaS implementation makes me just a little jealous.

There were several things I did not do in the past year. First, I am not allowed to work on closed-source products directly as part of the employment contract between University of Michigan, Blackboard, and me. So I have not written any code for Learn, xpLor, or any of Blackboard’s non-open source products. This has not been a problem – I have been plenty busy with Sakai and IMS things and Blackboard has plenty of really talented folks working on those products. The second thing I have not done is any kind of sales support. Three times in the past year a sales person in a situation where Sakai was involved in a possible Learn sale has contacted me asking for help. In each case I have politely declined. My management (in the Blackboard engineering organization) has put absolutely no pressure on me at all to do any sales support at all. I doubt they even knew I was contacted. I have answered a few technical questions about different versions of Sakai or how to convert data but nothing on the strategies or tactics of a particular sale.

So I feel very comfortable and feel no conflict of interest. If Blackboard products fare well in the marketplace I am happy because my budget for money to spend on Sakai goes up. But I have had no problem at all remaining 100% loyal to Sakai and the Sakai community over the past year as a Blackboard employee – in particular because my management expects me to be committed to Sakai and the Sakai community.

So What Went Wrong?

Nothing is perfect, right? There must be some disappointment.

If I look back over the year, the only thing that leaves me a little disappointed is that I really wanted to get to the point that I could use Blackboard’s performance testing lab and quality assurance processes and apply them to Sakai as a way to increase overall resources available to the community. This would be an amazing contribution if I can pull it off. I made some progress on this last summer when the performance test lab in Blackboard (which is awesome) did some performance testing on Sakai and identified some areas that could be improved.

I really would love to have gotten that work finished and presented to the Sakai community – but I just got too distracted by other things to stay on top of that task and bring it home. And once Sakai 2.9.0 shipped it seemed to me to be less pressing. Perhaps in time I will come back to this task and finish it. But even now, it is kind of on my back burner.

Not much else went wrong.

So What Is Next?

In general, much of the roadmap of the Sakai CLE is discussed and set at the annual meeting – this year in San Diego. So some of these priorities might get adjusted after that meeting. But for now, these are the two tasks I will set out to accomplish this summer as my Blackboard contribution to Sakai:

  • I want Sakai to be the first LMS to ship LTI 2.0 support. While LTI 1.1 is great and nearly universal, it is starting to fray at the edges as each LMS pours more and more extensions into it. These extensions take widely different approaches, use different formats and web service interaction patterns. There is no interoperability and no conformance tests for these extensions. LTI 2.0 gives a way to solve all these problems – but we have to get started before there is any payoff. So I plan to write the Sakai LTI 2.0 support, a full set of PHP sample code to compliment the Rails sample code developed by John Tibbets and contributed to IMS, and work to get LTI 2.0 into Moodle through my MoodleRooms colleagues. I will also start building sample LTI 2.0 tools and write LTI 2.0 documentation to help evangelize LTI 2.0 to other LMS systems. This is a long task – but the best time to get started is now.
  • Once I have LTI 2.0 underway I want to circle back and look at IMS Common Cartridge import and export in Sakai. Chuck Hedrick has done a great job with Lessons in terms of CC import and export – but I want to expand it to interact with everything in Sakai – not just content in Lessons. I want to look at interoperability of the cartridges in a way that supports open educational resource use cases.
  • I will be teaching a Python MOOC on Blackboard’s CourseSites platform. I want to use this as a way to learn how to teach using Bb Learn and explore some of the cool features of Learn as well as spread my Python material to a few thousand more students through yet another channel. I also expect to serve as an early heavy user of LTI in CourseSites to make sure that it is easy for others who come in after me. I want to also play with the nice Common Cartridge and Open Educational Resource support in Learn as well – again to serve as an pattern for others to follow building MOOC / OER courses. Here is the link to enroll in my course (scroll down to Python for Informatics).

I would like to increase Blackboard’s direct support of the Apereo Foundation. We spent three+ years merging Sakai and JASig – for me it is time to invest in Apereo so it can move into the kinds of wonderful new areas we had imagined as we designed the merger.

Summary/Reflection

It has been a heck of a year. Releasing Sakai 2.9.0 and (soon) Sakai 2.9.2 will be really important milestones for me. My own measurement of the value of my Blackboard activities is simply that the Sakai community is thriving and healthy and the product continues to move forward and improve.

Back a year ago I told people that this would all be “no big deal” and everything would be fine. I hope that people now see a year later that this is indeed the case. Blackboard has gently supported the Sakai community in appropriate ways and without fanfare. As was stated March of last year, Blackboard intends to have a healthy engagement in open source activities like Moodle and Sakai and do so in a way that advances the causes of those communities in order to have a healthy open source ecosystem in higher education.

When I look at both my involvement in Sakai and the Moodlerooms team’s involvement in Moodle – I am pretty pleased and proud of what has been done so far.

As always, comments welcome.