Sobre el proyecto
Lectern es el componente "Registrar" de una suite LMS de formato abierto y autoalojada (Lectern · Scriptorium · Oracle) dirigida a instructores de CS universitarios. Cubre el ciclo de vida administrativo de la gestión de cursos: andamiaje de términos, consolidación de calificaciones, construcción y verificación de exámenes, publicación de artefactos de calificación ISA, integración con GitHub Classroom, importación de listas/calificaciones del LMS del campus (Canvas) y archivado de fin de término.
Un principio de diseño central son los formatos abiertos. Los exámenes son LaTeX, el contenido y las notas son Markdown, las listas/calificaciones/registros son CSV, y las especificaciones de término, manifiestos de construcción y manifiestos de archivo son YAML. El proyecto argumenta que esto hace que cada artefacto sea difeable, versionable con Git, scriptable y duradero, evitando libros de calificaciones propietarios y flujos de trabajo solo en la nube.
Las herramientas se exponen como comandos CLI scriptables en la familia `reg-*`, incluyendo creación/finalización/archivado de términos, construcción de libros de calificaciones y exportación a Canvas, análisis de ítems de Gradescope, construcción/verificación de exámenes, importación de listas y calificaciones del LMS, siembra de listas de GitHub Classroom y vinculación de nombres de usuario, publicación ISA, generación de programas de estudio con seriales a prueba de manipulación, triaje de autenticidad de envíos y un pipeline de calificación de laboratorio de tres capas (reconocimiento → resumen → entrega de informes/retroalimentación).
El sistema de exámenes admite construcciones de un solo `.tex` y manifiestos YAML en modo paquete para múltiples formas (A/B/C), copias individualizadas por estudiante y productos de Gradescope. Las copias individualizadas llevan seriales por estudiante derivados de un hash SHA-256, y las construcciones son deterministas, por lo que los trabajos disputados pueden reproducirse a partir de fuentes archivadas.
La instalación es mediante un script de shell o pip en un entorno Python 3.11+; el pipeline de exámenes utiliza una cadena de herramientas LaTeX y utilidades poppler. Un ejemplo práctico recorre un semestre completo de CECS 378 de principio a fin. Lectern y Scriptorium tienen licencia MIT; el motor de calificación Oracle tiene código fuente disponible bajo una licencia separada.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.