Kevin Herrera

CINAHL CEU modules are interactive educational modules that allow nurses to satisfy CE requirements online. They contain the latest topics on patient care and drug administration and are included in CINAHL at no additional charge. Each CEU module consists of course material, an interactive review, and a competency test with a certificate of completion. – EBSCO

The first version was created back in 2004 and offered courses to only nurse practitioners. In 2007, our business requirements changed and we eventually began offering continuing education courses to other professionals as well. It was at around this time that I was tasked with creating a new version of the website, as well as a suite of tools to simplify the process of creating and maintaining our new and existing content.


The website was built using a custom framework leveraging the great work done by the Symfony community on the Symfony Components. At around this time, Composer did not exist and libraries were managed through Git submodules, but it was later changed to Composer when it was more widely adopted by the open source community. Custom libraries, stylesheets, and schemas were written to store and install new and updated content in XML format. Later, a WYSIWYG editor was created in order to vastly improve content development times (from 4 hours to roughly 10 minutes.) It was important that I replicated many of Microsoft Word’s functionality while also introducing our own to simplify content authoring. This made content production accessible to anyone with knowledge of Word.

The WYSIWYG editor was a lot of fun since I had to learn about XSL Formatting Objects. We later dropped the editor in favor of a more complete content management solution which included using a more robust XML editor.


  • Git
  • CSS
  • HTML
  • JavaScript
  • Bash
  • PERL
  • PHP
  • DTD
  • XML
  • XML Formatting Objects
  • XML Schema
  • XML Stylesheet