Planet Sakai

April 21, 2018

Michael Feldstein

In “EdTech”, “Ed” comes before “Tech”: A National Louis University/Acrobatiq Case Study

A few weeks ago, I posted about our case study on the governance of the Courseware in Context (CWiC) Framework. CWiC is a laudable effort to take the traditional product evaluation matrix and get beyond "magic quadrant-ism" by adding some educational context to the selection process. Which product is "best" depends a lot on your goals, capabilities, and other contextual factors. The CWiC advisory committee members explain how hard it is to integrate these factors into a product evaluation matrix. A lot of the hoped-for value of CWiC is still aspirational. There's nothing wrong with that; it's good to have big goals and to recognize how close to (or far from) achieving them you really are.

Sometimes just seeing your path to achieving those big aspirations is hard in and of itself. As this next case study shows, even if CWiC realizes its potential, it's never going to be the right place to start if your goal is to meaningfully impact student outcomes and close achievement gaps. Our original goal with the National Louis University (NLU) and Acrobatiq interviews was to look at what it takes to implement courseware effectively with a vendor partner once the selection is made. In other words, what happens after you go through the process that the CWiC framework is meant to support. But we got so much more than that because NLU has been incredibly thoughtful about the program and students—the context—that impacts the use and value of the courseware. In other words, they also modeled what universities need to do before they select courseware, from designing a business/sustainability model that enables them to provide appropriate cost of an education to thinking about educational goals to figuring out where courseware does and doesn't fit into that overall model. All of that prework has a profound impact on the working relationship with the vendor partner, the kinds of support identified as necessary to make the courseware work, and the future vision for how to continue to broaden and deepen the impact.

In the end, I think this case study shows both that a tremendous amount of work is needed to integrate courseware if you truly want to drive improvement in student outcomes and that the significant amount of planning and implementation work involved is only a small percentage of the total necessary program planning and work required. NLU has effectively redesigned the entire undergraduate experience. Their partnership with Acrobatiq works in large part because Acrobatiq understands their role in NLU's larger goals, and because NLU maintains their focus on those goals rather than getting caught up in the notion that buying some magic product will solve all their problems.




I'm proud to have this be the final case study in this series of grant-funded stories. It neatly reflects a lot of what we believe about the ways in which universities and vendors need to work together if we want to improve higher education.

The post In “EdTech”, “Ed” comes before “Tech”: A National Louis University/Acrobatiq Case Study appeared first on e-Literate.

by Michael Feldstein at April 21, 2018 02:00 PM

April 20, 2018

Dr. Chuck

Sakai Coordinator: Funding in 2018

The Apereo Foundation is five years old. In that time we’ve grown from a handful of software communities serving higher education to almost twenty. The network of contributors to our software communities has grown significantly, encouraged by the global partnerships we forge.

We have structured our membership of educational institutions and commercial affiliates to be as inclusive as possible, and to reflect differing levels of financial resources available to higher education internationally. Large institutions are and remain important – but the voices of smaller institutions, or those with less available resource, should not be excluded or lost.

Membership subscriptions and in-kind contributions support everything we do. We have no endowment or other sources of revenue. Our membership structure has two main components – a core membership subscription, which supports the functions and activities the Foundation provides for all our software communities, and individual software community subscriptions supporting the specific activities of our constituent software communities.

Last year Foundation membership grew by more than twice the numbers we lost. In overall financial terms, our core membership revenue more or less broke even. Sakai supporting subscription revenue did not meet its target. In these circumstances, reluctantly, the post of Sakai Community Coordinator is being terminated effective April 30th.

Neal Caidin, the current postholder, has done an amazing job, and this decision does not reflect on the ability, enthusiasm and good humor Neal has brought to the role. In addition to Neal’s management of the Sakai release process worldwide, Neal has been a valuable coordinator and contributor from the introduction of the Lessons tool in 2.9 through the responsive and mobile design of Sakai 12 to the WCAG 2.00 AA certification effort – and much more. Sakai has matured to become a more inclusive and effective community as a result of Neal’s leadership and capacity to facilitate with sensitivity and empathy. Apereo itself has benefited from Neal piloting processes such as Funding and Resource Management (FARM), feature prioritization, and conference planning. We would like to thank Neal and to wish him well on his next ventures. Neal’s last day is April 30.

Sakai is losing a Community Coordinator, but is not losing community coordination. In the coming weeks the Sakai PMC will work with the Foundation to evaluate the best means to deploy available resources to meet the needs of the Sakai community. The Sakai Supporting Subscription will continue to make a very significant contribution to meeting those needs. We will conduct as much of this work in the open as possible, and ensure regular community communication and consultation.

Chuck Severance, Chair of the Sakai PMC
Ian Dolphin, Apereo Foundation Executive Director

by Charles Severance at April 20, 2018 03:36 PM

April 18, 2018

Michael Feldstein

Comparing the First Ten Years of Blackboard and Instructure in LMS Market

Last year Blackboard celebrated their 20th anniversary as a company, and this year Instructure celebrated their 10th. Yes, the company with Canvas, the "new" LMS solution, is a decade old. To gain historical perspective, it is interesting to compare each company's first ten years in business in terms of primary financials - revenue and income - and performance in their core North American Higher Education market.

We can only go so far in comparing the companies on this basis, however, due to different circumstances.

  • Most importantly, Blackboard helped create the LMS market and therefore had significant portion of its expansion in a greenfield situation, picking up clients who had not previously used an institution-wide LMS. Canvas entered the market well after saturation, with greater than 90% of institutions already having a standard LMS.
  • Blackboard developed its product line pre-cloud, with on-premise hosting being the primary deployment model. Canvas was cloud-native, developed on top of AWS infrastructure.
  • Blackboard's growth was heavily based on corporate acquisition of competitors - Prometheus, WebCourse, WebCT in the first decade - while Instructure's growth has been almost exclusively organic.
  • Both companies sold in more than just the North American Higher Ed (NAHE) LMS market, even if that was the core. Blackboard acquired two companies in 2000 and launched a card-reader transaction business, and they played somewhat in the K-12 and corporate learning space. Instructure developed Bridge for corporate learning, Arc for video platform, and it has a heavy presence in the K-12 LMS market.

Interestingly, both companies went public in Year 7 (Blackboard in 2004, Instructure in 2015).

With that in mind, let's compare revenue, operating income - both derived from public SEC filings and adjusted to 2018 dollars - and market share in their core NAHE market. The financial data comes from public filings, and data for 2018 for Instructure are estimates based on their outlook presented in the most recent quarterly earnings release. Market share data is based on our LMS Market Analysis service and associated financial analysis for premium subscribers.

Blackboard and Instructure revenue and income in 2018 dollars, and north american higher ed market share in percentage and numbers

Some notes:

  • Blackboard raised ~$185 million in venture financing pre-IPO while Instructure raised ~$95 million (both in 2018 dollars). Part of this difference can be attributed to the much higher costs associated with pre-cloud enterprise software deployment models.
  • Blackboard's revenue was higher than Instructure's at similar points, and their operating income was mostly positive after Year 6. Instructure has maintained a significant loss each year from operations. One way to explain this difference is that Blackboard's used funds for corporate acquisitions, thus fueling growth, while Instructure invested funds into sales & marketing and organic growth. This is not the whole story, but it is a big difference between the two companies.
  • In market share represented as a percentage, Blackboard's growth was much faster, but this was in a period where the market was developing and not all schools had a standard LMS. When viewing this market share in raw numbers, we see that Instructure's growth would have exceeded Blackboard's were it not for the Year 9 WebCT acquisition.
  • Blackboard was already showing organic market declines (in NAHE market share %) and slowdowns in raw numbers outside of the immediate WebCT acquisition of customers. Instructure's organic growth shows no signs yet of slowing down, is less lumpy and more predictable.


The post Comparing the First Ten Years of Blackboard and Instructure in LMS Market appeared first on e-Literate.

by Phil Hill at April 18, 2018 09:08 AM

April 16, 2018

Apereo Foundation

April 11, 2018

Michael Feldstein

What is the Value of Empirical Education?

In my last post, I wrote about the goal of the Empirical Educator Project (EEP) as getting a critical mass of educators to be "socially empirical":

Socially empirical educators view effective teaching not as an individual art but as a shared pool of knowledge and experience that everyone can learn from and contribute to. They seek out common vocabulary, methods, and standards of proof so that they can learn with their colleagues and raise the collective bar. This is the beginning of disciplinarity.

One way of thinking about the goal of EEP is to create a critical mass of socially empirical educators. They may not all arrive at one shared vocabulary, set of methods, and standard of proof. We will likely need a family of subdisciplines and empirical approaches to handle all the many meaningful contextual differences in education. But if a majority of educators see their work as embedded in a collective effort to learn together about how we can be more effective educators, then we will progress much more rapidly as a sector.

What is the value of doing this? Here again, the EEP founding cohort participants weigh in:


Too often, our conversations about education are weirdly bifurcated. On the one hand, we talk about big problems—helping massive numbers of people improve their economic status, educating a sophisticated citizenry, solving societal equity problems, and so on. On the other hand, we talk about the day-to-day work—picking tools and content, solving a developmental math program at a single college...maybe at most we have consortia working on shared problems within the group. But we only rarely and sporadically talk about the link between solving the local problems and tackling the grand challenges. We don't have a plan for thinking globally and acting locally.

We at e-Literate contend that higher education is too focused on immediate peer groups, convinced that the most value will come from the people whose context is highly similar. There is some logic to that, given that effective education heavily dependent on many contextual details. But we seem to need a statement of common purpose around the educational part of the mission that is at once broad enough to accommodate differences and focused enough to bring together different types of institutions and individual stakeholders that have different strengths and resources to offer.

I won't go so far as to say that EEP can offer that, but we aspire to create a collaborative environment out of which that shared vision can emerge by solving specific problems—acting locally—through collaborations that cross peer network boundaries.

The post What is the Value of Empirical Education? appeared first on e-Literate.

by Michael Feldstein at April 11, 2018 05:00 PM

April 09, 2018

Apereo Foundation

April 05, 2018

Adam Marshall

WebLearn version 11-ox10 released 3 April 2018

(Compiled by Nick Wilson)
WebLearn was upgraded to version 11-ox10 this week (w/c 2nd April 2018). A number of bug fixes and improvements were implemented, described below.


The ‘Embed Replay Recording’ button has been added to the CK Editor in the Resources tool

Copyright status

Two additional copyright statuses have been included in the Resources tool (‘Crown copyright’ and ‘EU copyright’)


The Assignments tool now displays the correct maximum file size for Turnitin attachments (40MB):

The correct status of an open anonymous assignment is now shown:

Contact Us Tool

The text in the ‘Problem with access or content’ section in the Contact Us tool has been updated.


  1. A security vulnerability has been patched in which password reset tokens are not bound to users.
  2. Various UI improvements have been made, in particular, improving the size of modal popups in the Lessons tool, and the ability to use Bootstrap in HTML pages.
  3. Sign-up events now show their correct times in Office 365.
  4. When adding a discussion topic to a Lessons page, the description of that page from the Item Properties is automatically displayed.

If you have any questions, please contact


by Jill Fresen at April 05, 2018 03:28 PM

April 01, 2018

Aaron Zeckoski

March 25, 2018

Aaron Zeckoski

Leading Softly

I'm coming back to blogging after a few years buried under project work, and I want to explore some lessons learned as a technology leader managing a department growing rapidly and going through significant changes. My department builds educational software products and has grown from a couple employees and a dozen consultants to over 70 employees and 100 contractors/consultants over 3 years.
The saying goes, "What got you here, won't get you there". This is especially true for leaders in technical fields like software engineering. It means you probably have the hard skills (coding, automation, design, coordination, etc.) and logical problem solving that helped you be successful as an individual contributor. Now you are in leadership and probably finding those skills are not helping you solve the same problems. Here are a few lessons I learned last week of the softer skilled sort.

1) Unmet expectations are the root cause of upset people
If you are dealing with friction with someone at work (or helping 2 people in your team deal with their friction) then your best option is to look for the unmet expectation. Maybe they expected to be treated with more respect, or that you would be on time for the meeting, or that something would be done more quickly. Try to determine what the unmet expectation was and help address it and you will remove the source of the problem. This alone won't solve everything but it will help resolve the issue.

2) If you impact someone else, then at least inform them, and ideally engage them
This is easiest to think about using some examples. Are you waiting on something from another person in order to get your job done and it is late but you haven't heard anything? Do you depend on a process controlled by someone else to get your job done? Have you been pulled into a meeting beyond your control without knowing why? Do you get assigned to projects without having a say? All of these are examples of being impacted by the decisions of someone else. This is pretty common and probably pretty annoying for you (or whomever is on the receiving end). If you are the one causing the impact to someone else, try to always keep them informed. If there is flexibility, then engage them in the decision making about it (even if you only ask for their feedback). You would want this if you were in their place so treat others like you want to be treated.

3) Good communication is the key to everything
I've come to realize that most relationship and work challenges are caused by poor communication. Did servers go down during a recent release because the database configuration was mismatched between prod and dev? Bad communication. Did a recent feature get built differently than customers wanted? Bad communication. Are users angry because a bug was released that the testers knew about? Bad communication. Was someone surprised by bad news that they should have been aware of? I think you get it... The simplest step to improving communication is to simply take the extra time to do it. It's not a magic bullet, but most poor communication happens because we didn't bother taking the extra time to communicate for understanding. Try asking people to echo things back when you talk to them this week and do them the favor of doing the same. You won't regret spending some extra time on communication but you will regret not doing it when things go wrong.

Also find this on Medium and LinkedIn

by Aaron Zeckoski ( at March 25, 2018 11:47 PM

March 21, 2018

Dr. Chuck

Sakai 12.0 is released!

(This blog post is taken from an announcement by Neal Caidin the Sakai Community Coordinator)

Congratulations amazing worldwide community!

Our community wiki has both functional [1] and technical [2] release notes.

Download instructions are also available of course [3] .

Several of the top changes include:

  • Improved look and feel. New skin. More attractive and functional.
  • Improved responsive design, better performance on mobile devices.
  • Gradebook – performance enhancements, plus a number of minor interface improvements such as progressive rendering of student grades for large classes, and a new feature which allows instructors to view and adjust final grade distribution.
  • Assignments – Refactoring of Assignments tool. Makes Assignments more maintainable and easier to enhance.
  • Lessons has a new optional subpage left menu navigation feature. In addition, a number of useful enhancements such as a forums widget, announcements widget, calendar widget, resources widget, and personalization of text.
  • Test and Quizzes (Samigo) – Extended delivery of assessments for select individuals and groups.
  • Chat tool – updated interface.
  • Pluggable ContentReview which contains 4 plagiarism detection integrations.
  • Standards – support for IMS Content Item, including a “shopping cart” ubiquitously available in the rich text editor.
  • Accessibility improvements.

[1] Functional release notes –

[2] Technical Release notes –

[3] Download instructions –


by Charles Severance at March 21, 2018 07:48 PM

March 20, 2018

Adam Marshall

Improvements in WebLearn v11-ox9 released on 23 Jan 2018

A new version of WebLearn (version 11-ox9) was released on Tuesday 23 January 2018. There have been a number of improvements especially in the area of anonymous essay submissions.

Here is a breakdown of the enhancements.

Anonymous Submissions / Assignments

  • A warning is now issued if a file has been uploaded into the Assignment tool but the user has neglected to click ‘Submit’
  • The Turnitin Originality Report no longer loses anonymity once the due date has passed
  • Submission sites now have their own section in the Sites Drawer

Bulk Creation of Internal Subgroups

This release sees big improvements in the area of bulk creation of sub-groups (this is in Site Info > Manage Subgroups > Bulk Creation). It is possible to define multiple sets of groups and users in a file and have them created all at once. This facility should be particularly useful for Anonymous Submissions.

Visit Site Info and opt to Manage Subgroups.


On the next screen you are given the opportunity to upload a CSV file which can be generated by a spreadsheet application such as Excel. The contents of the CSV file can also be pasted into an on-screen text area.

Contact Us Tool

  • The link to the WebLearn Guidance site has been corrected
  • If a user tries to visit a site to which they don’t have access, the correct contact details are now shown, thus making it easy to ask to be added as a site member


  • In the Lessons tool, on a public site, hyperlinks inserted via the ‘Add Content’ option now work correctly for non-logged in users
  • There should no longer be any emails with a return address of
  • The title of the main panel of the Overview page has been changed from (the meaningless) Site Information Display to the more sensible Welcome!

by Adam Marshall at March 20, 2018 12:16 PM

March 19, 2018

Aaron Zeckoski

Management is a support role

I'm coming back to blogging after a few years buried under project work, and I want to explore some lessons learned as a technology leader managing a department growing rapidly and going through significant changes. My department builds educational software products and has grown from a couple employees and a dozen consultants to over 70 employees and 100 contractors/consultants over 3 years.
What is the role of a manager? What makes one "good"? Statistically speaking, most of us aren't too happy with our managers. If you are a manager, you probably think you are the exception (the 20-25% that are "good"). I think part of the issue is the common misunderstanding about what makes a good manager. A popular perception is that managers make the tough calls (and decisions), set strategic goals, and tell people what to do (while of course allowing them to decide how...).

Whether you are newer to management or have decades of experience, at some point before becoming a manager, you previously were amazingly successful as an individual contributor or small team leader. You always delivered on time and your work quality was amazing. As a result, you were recognized and given more responsibility. You might have even received advice about how you need a team in order to accomplish your newer and broader responsibilities. Now you have more to do and more people to help you do it. No problem because the role of your team is to help you get the job done... right?

If this is resonating with you, then you are trapped in a traditional management style. You are seeing the role of your team(s) as support for you. You are still operating like an individual contributor who happens to have lots of assistance. You are the brains and they are the brawn.

The trap here is that this actually works for some kinds of less creative and more repetitive jobs and therefore one can find lots of advice out there about how to run a team or organization of this type. For those of us in engineering or other creative fields though, this is a fallacy. The people in a creative organization will not respond well to this traditional style of management and you will not be successful in accomplishing your goals.

There is a better way. Invert the pyramid and see that management is a support role. Your team are the brains AND the brawn. You are the coach, mentor, and a supplier. You provide guidance, advice, and resources (money, time, etc.) to help them accomplish their goals. Yes, you heard that right. The goals don't come from you (at least, not entirely... but that's a nuance for a future post).

Think about it purely logically, who knows the customers and products best? Is it the CEO? Obviously that's impractical in all but the smallest organizations. How about the senior management team? The same logic continues to apply until you reach the team who is directly responsible for interfacing with the customer and creating the product. The entire organization (including you as a manager) is there to support those teams.

Here are some practical steps you can take this week to begin to manage in a more supportive and modern way:
  1. Ask your team how you can help them this week.
    If you haven't been doing this then you will probably get blank stares and confusion. Just hold your tongue and count to 10 slowly in your head. If no one has spoken up yet, then repeat the question and this time count to 20. Give people a chance to think and get comfortable with the reality that it will take time for your team to get used to seeing you as a supportive manager.
  2. Explain your supporting role to your team.
    You might have even done this in the past incorrectly. Don't worry about that. The key here is to explain that you are here to empower them and enable them to accomplish goals as individuals and as a team. Use an analogy like coaching a sports team. Coaches can't tell the players what to do every minute of the game but they can provide training outside of game time and guidance during the breaks in play. In combination with #1, you will begin to see your team culture shift to one of empowerment and intrinsic (vs extrinsic) motivation.
  3. Ask your teams what the next (or current) goal should be.
    If you and your team are used to traditional management then they probably have become dependent on you. Instead of empowering independence you have probably enabled dependence. Don't be an enabler anymore. Give decision making to your teams and embrace your supporting role. They may just echo your current plans to start. This is an opportunity to challenge your own thinking and ask people to suggest why the current plans are wrong. Find the problems in your own plan and ask your team for better options. Suggest that the current plan is likely to fail and you need their help to come up with one that will succeed. Take the role of facilitator and yield the floor at every opportunity. Your aim here is to get them to own the goals because their objectives are probably more effective than yours.
Welcome to your modern role in supportive management.

by Aaron Zeckoski ( at March 19, 2018 12:55 AM

March 10, 2018

Adam Marshall

Pilot of new ‘Add Participants’ functionality

We have been working hard to deliver a much-requested feature when adding participants to a site – dynamic lookup. This functionality has undergone a degree of user acceptance testing but we are very keen to pilot the facility more widely and, as such, are asking for volunteers.

If you would like to be an early adopter of this streamlined functionality then please get in touch by sending an email to weblearn at – we can enable the facility on one or more or your sites – please let us know any relevant URL(s).

The new pages cover all existing functionality but have an improved workflow with less clicks than the incumbent.

The user interface has been simpilified with better on-screen feedback.


by Adam Marshall at March 10, 2018 04:32 PM

February 28, 2018

Dr. Chuck

Abstract: Building Learning Tools for Canvas using the Tsugi Application Environment

This presentation will introduce users to the free and open source Learning Application development environment available at Canvas supports the IMS Learning Tools Interoperability to allow external tools to be easily integrated into Canvas and used to increase the richness and diversity of the course experience.   External tools can provide functionality not present in Canvas like a course map tool, or social grading system, or a YouTube viewer with Caliper analytics.   External tools can also be rich auto-graders that make online classes bother more interesting and more effective.  Imagine if you could easily develop an interactive system like Pearson’s MyMathLab for *your* course and topic.  Tsugi provides a set of libraries that allow you to write learning applications without any need to read an LMS integration specification.  Tsugi’s run-time environment takes care of complying with the necessary standards to make plugging Tsugi tools into Canvas, or any other LMS.  Tsugi also provides a hosting environment that is as easy to deploy as WordPress and allows institutions to host tools and provide an “App Store” of available tools to their users.  There is also a free cloud-based Tsugi App Store that provides scalable hosting for open source Tsugi applications at  It is easy to learn to write Tsugi applications using the online materials at

by Charles Severance at February 28, 2018 08:30 PM

October 11, 2017

Apereo OAE

Getting started with LibreOffice Online - a step-by-step guide from the OAE Project

As developers working on the Apereo Open Academic Environment, we are constantly looking for ways to make OAE better for our users in universities. One thing they often ask for is a more powerful word processor and a wider range of office tools. So we decided to take a look at LibreOffice Online, the new cloud version of the LibreOffice suite.

On paper, LibreOffice Online looks like the answer to all of our problems. It’s got the functionality, it's open source, it's under active development - plus it's backed by The Document Foundation, a well-established non-profit organisation.

However, it was pretty difficult to find any instructions on how to set up LibreOffice Online locally, or on how to integrate it with your own project. Much of the documentation that was available was focused on a commercial spin-off, Collabora Online, and there was little by way of instructions on how to build LibreOffice Online from source. We also couldn't find a community of people trying to do the same thing. (A notable exception to this is m-jowett who we found on GitHub).

Despite this, we decided to press on. It turned out to be even trickier than we expected, and so I decided to write up this post, partly to make it easier for others and partly in the hope that it might help get a bit more of a community going.

Most of the documentation recommends running LibreOffice Online (or LOO) using the official Docker container, found here. Since we recently introduced a dockerised development setup for OAE, this seems like a good fit. A downside to this is that you can’t tweak the compilation settings, and by default, LOO is limited to 20 connections and 10 documents.

While this limitation is fine for development, OAE deployments typically have tens or hundreds of thousands of users. We therefore decided to work on compiling LOO from source to see whether it would be possible to configure it in a way that allows it to support these kinds of numbers. As expected, this made the project substantially more challenging.

I’ve written down the steps to compile and install LOO in this way below. I’m writing this on Linux but they should work for OSX as well.

Installation steps

These installation steps rely heavily on this setup gist on GitHub by m-jowett, but have been updated for the latest version of LibreOffice Online. To install everything from source, you will need to have git and Node.js installed; if you don’t already have them, you can install both (plus npm, node package manager) with sudo apt-get install git nodejs npm. You need to symlink Node.js to /usr/bin/node with sudo ln -s /usr/bin/nodejs /usr/bin/node for the makefiles. You’ll also need to install several dependencies, so I recommend creating a new directory for this project to keep everything in one place. From your new directory, you can then clone the LOO repository from the read-only GitHub using git clone

Next, you’ll need to install some dependencies. Let’s start with C++ library POCO. POCO has dependencies of it’s own, which you can install using apt: sudo apt-get install openssl g++ libssl-dev. Then you can download the source code for POCO itself with wget Uncompress the source files, and as root, run the following command from your newly uncompressed POCO directory:

./configure --prefix=/opt/poco
make install

This installs POCO at /opt/poco.

Then we need to install the LibreOffice Core. Go back to the top level project directory and clone the core repository: git clone Go into the new 'core' folder. Compiling the core from source requires some more dependencies from apt. Make sure the deb-src line in /etc/apt/sources.list is not commented out. The exact line will depend on your locale and distro, but for me it’s deb-src xenial main restricted. Next, run the following commands:

sudo apt-get update
sudo apt-get build-dep libreoffice
sudo apt-get install libkrb5-dev

You can also now set the $MASTER environment variable, which will be used when configuring parts of LibreOffice Online:

export MASTER=$(pwd)

Then run to prepare for building the source with ./ Finally, run make to build the LibreOffice Core. This will take a long time, so you might want to leave it running while you do something else.

After the core is built successfully, go back to your project root folder and switch to the LibreOffice Online folder, /online. I recommend checking out the latest release, which for me was 2.1.2-13: git checkout 2.1.2-13. We need to install yet more dependencies: sudo apt-get install -y libpng12-dev libcap-dev libtool m4 automake libcppunit-dev libcppunit-doc pkg-config, after which you should install jake using npm: npm install -g jake. We will also need a python library called polib. If you don’t have pip installed, first install it using sudo apt-get install python-pip, then install the polib library using pip install polib. We should also set some environment variables while here:

export SYSTEMPLATE=$(pwd)/systemplate
export ROOTFORJAILS=$(pwd)/jails

Run ./ to create the configuration file, then run the configuration script with: 

./configure --enable-silent-rules --with-lokit-path=${MASTER}/include --with-lo-path=${MASTER}/instdir --enable-debug --with-poco-includes=/opt/poco/include --with-poco-libs=/opt/poco/lib --with-max-connections=100000 –with-max-documents=100000

Next, build the websocket server, loolwsd, using make. Create the caching directory in the default location with sudo mkdir -p /usr/local/var/cache/loolwsd, then change caching permissions with sudo chmod -R 777 /usr/local/var/cache/loolwsd. Test that you can run loolwsd with make run. Try accessing the admin panel at https://localhost:9980/loleaflet/dist/admin/admin.html. You can stop it with CTRL+C.

That, as they say, is it. You should now have a LibreOffice Online installation with a maximum connections and maximum documents both set to 100000. You can adjust these numbers to your liking by changing the with-max-connections and with-max-documents variables when configuring loolwsd.

Final words

Overall, I found this whole experience a bit discouraging. There was a lot of painful trial and error. We are still hoping to use LibreOffice Online for OAE in the future, but I wish it was easier to use. We'll be posting a request in The Document Foundation's LibreOffice forum for a docker version without the user limits to be released in future.

If you're also thinking about using LOO, or are already, and would like to swap notes, we'd love to hear from you. There are a few options. You can contact us via our mailing list at or directly at

October 11, 2017 11:00 AM

September 18, 2017


Online Video Tutorial Authoring – Quick Overview

As an instructional designer a key component to my work is creating instructional videos.  While many platforms, software and workflows exist here’s the workflow I use:

    1. Write the Script:  This first step is critical though to some it may seem rather artificial.  Writing the script helps guide and direct the rest of the video development process. If the video is part of a larger series, inclusion of some ‘standard’ text at the beginning and end of the video helps keep things consistent.  For example, in the tutorial videos created for our Online Instructor Certification Course, each script begins and ends with “This is a Johnson University Online tutorial.” Creating a script also helps insure you include all the content you need to, rather than ad-libbing – only to realize later you left something out.As the script is written, particular attention has to be paid to consistency of wording and verification of the steps suggested to the viewer – so they’re easy to follow and replicate. Some of the script work also involves set up of the screens used – both as part of the development process and as part of making sure the script is accurate.


  1. Build the Visual Content: This next step could be wildly creative – but typically a standard format is chosen, especially if the video content will be included in a series or block of other videos.  Often, use of a 16:9 aspect ratio is used for capturing content and can include both text and image content more easily. Build the content using a set of tools you’re familiar with. The video above was built using the the following set of tools:
    • Microsoft Word (for writing the script)
    • Microsoft PowerPoint (for creating a standard look, and inclusion of visual and textual content – it provides a sort of stage for the visual content)
    • Google Chrome (for demonstrating specific steps – layered on top of Microsoft PowerPoint) – though any browser would work
    • Screencast-O-Matic (Pro version for recording all visual and audio content)
    • Good quality microphone such as this one
    • Evernote’s Skitch (for grabbing and annotating screenshots), though use of native screenshot functions and using PowerPoint to annotate is also OK
    • YouTube or Microsoft Stream (for creating auto-generated captions – if it’s difficult to keep to the original script)
    • Notepad, TextEdit or Adobe’s free Brackets for correcting/editing/fixing auto-generated captions VTT, SRT or SBV
    • Warpwire to post/stream/share/place and track video content online.  Sakai is typically used as the CMS to embed the content and provide additional access controls and content organization
  2. Record the Audio: Screencast-O-Matic has a great workflow for creating video content and it even provides a way to create scripts and captions. I tend to record the audio first, which in some cases may require 2 to 4 takes. Recording the audio initially, provides a workflow to create appropriate audio pauses, use tangible inflection and enunciation of terms. For anyone who has created a ‘music video’ or set images to audio content this will seem pretty doable.
  3. Sync Audio and Visual Content: So this is where the use of multiple tools really shines. Once the audio is recorded, Screencast-O-Matic makes it easy to re-record retaining the audio portion and replacing just the visual portion of the project. Recording  the visual content (PowerPoint and Chrome) is pretty much just listening to the audio and walking through the slides and steps using Chrome. Skitch or other screen capture software may have already been used to capture visual content I can bring attention to in the slides.
  4. Once the project is completed, Screencast-O-Matic provides a 1 click upload to YouTube or save as an MP4 file, which can then be uploaded to Warpwire or Microsoft Stream.
  5. Once YouTube or Microsoft Stream have a viable caption file, it can be downloaded and corrected (as needed) and then paired back with any of the streaming platforms.
  6. Post of the video within the CMS is as easy as using the LTI plugin (via Warpwire) or by using the embed code provided by any of the streaming platforms.

by Dave E. at September 18, 2017 04:03 PM

September 01, 2017

Sakai Project

Sakai Docs Ride Along

Sakai Docs ride along - Learn about creating Sakai Online Help documentation September 8th, 10am Eastern

by MHall at September 01, 2017 05:38 PM

August 30, 2017

Sakai Project

Sakai get togethers - in person and online

Group photo from Sakai Camp 2017 in Orlando

Sakai is a virtual community and we often meet online through email, and in real time through the Apereo Slack channel and web conferences. We have so many meetings that we need a Sakai calendar to keep track of our meetings. 

Read about our upcoming get togethers!

SakaiCamp Lite
Sakai VC

by NealC at August 30, 2017 06:37 PM

Sakai 12 branch created!

We are finally here! A big milestone has been reached with the branching of Sakai 12.0. What is a "branch"? A branch means we've taken a snapshot in time of Sakai and put it to the side so we improve it, mostly QA (quality assurance testing) and bug fixing until we feel it is ready to release to the world and become a community supported release. We have a stretch goal from this point of releasing before the end of this year, 2017. 

Check out some of our new features.

by NealC at August 30, 2017 06:00 PM