- Extended the functionality of our course management system to accommodate Humble Bundle promotions
- Rewrote the back-end file delivery system for our mobile apps
- Rectified multiple issues relating to unique nature of Manga content
In late 2021 Humble Bundle approached us to see if we could facilitate ebook distribution for them in cases where book publishers required DRM. All technical responsibility was placed in my hands. After initial meetings, I determined that the most effective way to complete this would to adapt our course management platform, ECM to suit their needs.
The unique requirements of Humble Bundle were as follows:
- Each Humble Bundle customer required a unique voucher code
- The set of books that customers had access to depended on their payment tier
Adapting our course management platform was fairly straightforward. I created a new access method “Pre-generated Voucher Codes” that allows administrators to generate and download these codes. Each Humble Bundle tier would be assigned to a separate group of course participants, the result looked as follows:
After creating the promotions, I asked all of our employees to test redeeming the promotions on their devices. This highlighted some issues due to the fact that all the ebooks were Manga:
- The ebooks are read to from back to front, our online reader was not rendering pages in the correct order
- The size of the ebook files were prohibitively large since they were composed entirely of images.
- Our mobile app had issues with downloading this many large files concurrently
We resolved these issues by:
- Having one of our developers add back to front reading functionality for our online reader for a subset of publishers
- I determined that the publisher was not providing us with the smallest files they possibly could. By utilising lossless image compression tools, we could reduce the size of most of their ebook files, in some cases reducing the files size by over 50%. After gaining permission from the publisher to do so, we optimised all their files.
- I completely rewrote the back-end delivery code (.NET 6) to improve logging, error handling, concurrency.
- I worked with our mobile app developers to fix issues on both iOS and Android.
Our support desk received no issues relating to the promotion, and we will be working with Humble Bundle on additional promotions going forward.