Mynerva is a cloud-based computational textbook platform designed to enhance the power of educators teaching computational science, including data science and machine learning. Mynerva allows instructors to craft compelling computational content with an innovative narrative structure and enables students to focus on what matters: connecting concepts to code and applying knowledge to solve real problems.

The codex is the core concept of Mynerva. Codices are a novel way to author lessons, homework and lab assignment, and even entire textbooks for teaching anything under the umbrella of *computational sciences*.

The *code* in *codex* is a nod to the interactive coding element which is ubiquitous in the computational sciences.
A typical codex contains exposition and math (like a traditional textbook) as well as code that runs inline to output figures and plots and compute solutions to the problems posed by the instructor.
A codex extends the structure of a "traditional" book chapter into that of a *living* document and, from the student's perspective, responds like a game.
Since structure deeply influences narrative, a codex influences and engenders new forms of conversational narrative based on computational interaction between the author and its reader.

Every codex is punctuated with conceptual multiple-choice quizzes, auto-graded programming assignments, and/or free-response exercises where students complete proofs or summarize their learning. Each codex guides the student one step at a time towards a working algorithm, built from scratch, by mixing exposition with just-in-time assessment and code checking.

Typically, each codex begins with the math, incrementally links the concepts with relevant code segments, and finally brings the various pieces of the code together to showcase everything that the student has learned. For example, at the end of a codex, a student will have created their own algorithm able to recognize their own handwriting or stitch together a panorama from several different photos.

Codices make a computational book feel alive and dynamic in a fundamentally new way. Each codex facilitates a deeper and holistic understanding of the subject matter and allows a student to not only *learn* about a concept, but *experience* it via coding, debugging, and deeper analysis.

The impetus for creating Mynerva was the Computational Machine Learning and Data Science. This content has been used to teach a graduate level course of the same name for several semesters at the University of Michigan.

There is a computational machine learning online course, taught using Mynerva through the University of Michigan. We plan to have regular cohorts of students, so be sure to express interest in the next available offering.

We also plan to offer a computational linear algebra for everyone online course taught using Mynerva and the codex format.

We hope to roll out an authoring tool in early 2021 to allow others to author and publish computational textbooks on Mynerva. To receive a notification when a beta version of author tools are available for use, please fill out this online form.

This is one of the best things I've seen. I think it should replace textbooks for most programming classes.

I liked the built–in conceptual questions and proofs and instant feedback because they helped me learn the concepts. I'd recommend other courses to adopt a similar system if it makes sense for them.

A prototype of Mynerva has been used to teach Computational Data Science & Machine Learning at the University of Michigan as well as for guest lectures at MIT and other institutions.