Collaborative NSF Grants Awarded to Runestone Academy, Michigan, Duke, Virginia Tech, and Berea and American Institute of Mathematics

NSF Logo Runestone Academy LTD got good news this week. We received our first collaborative NSF Grant! The grant (#2336758) Testing the Effects of Peer Discussion is a collaborative research project with the University of Michigan, Duke University, Virginia Tech, and Berea College! The grant will allow us to study the effects of different modes of discussion during peer instruction sessions on student learning in computer science. As I was writing this post I got a second email from the NSF indicating that a second proposal had also been awarded!! (#2334768) Collaborative Research: PreTeXt-Runestone: Open Textbooks Engaging Undergraduates in STEM which is a Collaboration with Mathematics educators at the University of Michigan and the American Institute of Mathematics.

We are excited to be working with two amazing teams of researchers and educators. We are also excited to be able to provide a platform for this research.

Peer Instruction

The first grant will allow us to improve the Peer+ platform on Runestone Academy. The grant will fund the following activities:

  • Improve the A/B testing mechanism on Runestone to better compare synchronous text-chat versus verbal discussion in the context of Peer Instruction (PI).

  • Add hundreds of existing questions for CS2 (in Java and C++) and discrete math to Peer+ on Runestone Academy.

  • Test the use of Large Language Models (LLMs) to improve the interactivity of the asynchronous text-chat.

  • Test Peer+ in CS1, CS2, and discrete math courses at the four institutions mentioned earlier.

  • Improve the instructor interface to reduce the time to find existing PI questions.

  • Improve the instructor interface for authoring new PI questions.

  • Conduct an instructor workshop to improve knowledge of PI and best practices.

  • Add additional instructor support to help writing PI questions for ebooks.

PreTeXt and Runestone for STEM

The second grant will advance our knowledge of the process of developing content for three novel interactive questions for four PROTEUS textbooks (PreTeXt- authored textbooks hosted in HTML format on the learning analytics platform Runestone Academy) and their use in classrooms. The project seeks to answer the following questions: How do groups of textbook users (students, teachers, authors, and researchers) work together to write interactive questions designed to elicit multiple ways of students’ thinking in classrooms? and How do students and instructors use those interactive textbook questions in their classrooms? The interactive questions are (i) Short Answer free response, (ii) Matching Exercises, and (iii) Parsons Problems. These will be embedded in textbooks for calculus and linear algebra (Active Calculus, Boelkins, 2022; APEX Calculus HTML Edition; Hartman et al, 2022; First Course in Linear Algebra, Beezer, 2022; and Understanding Linear Algebra; Austin, 2022), chosen because they vary in their support for active teaching, use of visualizations, and emphasis on proof. This grant also provides support for Runestone Academy to make a new hire in the area of development operations and technical support! Yahoo!!


The process of getting these grants was no small feat! Writing the grants was the easy part. Then, back in December, we learned that both had been recommended for funding. But that was just the beginning. In order for Runestone Academy to be awarded the money, we had to go through a rigorous review process to demonstrate that we were capable of managing the grant. This forced us to “grow up” a bit and add in more processes and procedures to our small operation. It’s all about checks and balances in the accounting world! To be clear, Runestone has been a part of several NSF grants in the past but as a contractor, not as a collaborating Principal Investigator.

Once we passed the “New Performer” process then we just had to wait. As you may know the NSF budget was held up in congress for a while, and funding is tight. We were not sure if we would get the grant or not. But this week we got the good news! We are excited to be able to start the project and to be able to work with such an amazing team of researchers and educators. We are looking forward to the results of the study and to sharing them with the community. This is a real boost for Runestone Academy and all of our students, teachers, and collaborators! Hopefully this will help demonstrate our legitimacy and help us to secure more funding in the future.

SIGCSE 2024: How do you do it?

Runestone Booth at SIGCSE 2024

A second SIGCSE is in the bag for Runestone as an exhibitor. It was a good year. It was amazing to see so many people who have been using Runestone for years and to hear their stories. The number of people who stopped by the booth to just say thank you was really overwhelming! I hope you all know that your gesture will keep me going for months! It was also great to see so many new faces who were just learning about Runestone. I am always amazed at the number of people who have never heard of Runestone before. I guess that is a good thing, it means there are still lots of people to reach.

It was great to connect with so many colleagues from years past. I was able to catch up with people I have not seen in years. I was also able to meet some new people who I have only known through email, Zoom, or Discord. It was great to put real live faces to names.

It was so interesting to hear the questions that people asked. This year felt different than years past. The top questions were “How do you do it?” “How do you keep Runestone going?” “How do you keep it free?” “Are you really free?”” And, “do you have a book that covers X?” But the question I want to address in this post is how do we keep it going? I understand that in this day and age the assumption is that “if it’s free online then the user is the product.” But that is not how we roll, that is not our mission, that is not our model. We are a non-profit and we are here to serve the community. We are not here to make money off of you or your students. We are here to help you teach and learn computer science and math. Our North Star is to make computer science and mathematics education accessible to everyone.

We had answered that question so many times that we determined that we needed to create a new table banner for next time. We also decided that we could have a tongue in cheek answer for the rest of the conference, so Rob created a tip jar. We had a lot of fun with that! Some people were so amused that they threw in a dollar! We are not going to get rich off of that, but it was fun.

Tip Jar

Here is the answer to the question “How do you do it?” We are a non-profit. We are funded by donations, grants, memberships, and ads. We have a small team of volunteer developers who put their effort into Runestone. We have a medium community of authors who help us keep Runestone up to date. We have a large community of students and teachers who help us find bugs and suggest improvements. Yes, professional copyeditors are great, but the masses of students and teachers are even better.

A second part of the solution is to serve ads through the Ethical Ad Network. We don’t like ads in general but the Ethical Ad Network is great because they don’t do any tracking! Also, we don’t show ads to students who are registered for a course.

Finally, we do have a Patreon account, and a Github supporter account, and of course you can donate directly We would love to have your support! We are always looking for new ways to fund Runestone, if you are independently wealthy and want to fund us, we would love to talk to you! If you have a contact at a foundation that might be interested in funding us, we would love to talk to them! If you have a contact at a company that might be interested in funding us, we would love to talk to them! We are always looking for new ways to fund Runestone.

Over the long term we are looking for solutions that will enable us to remain true to our mission of making computer science education accessible to everyone. We know there are many commercial offerings that have been free and then pulled the rug out from under all of the schools that could not pay. That is not who we are. We are committed to keeping the content and as much of the instructor interface free as we can, while planning for the day that Rob and Brad decide to step aside and really retire. It might mean a freemium model, it might mean a subscription model, it might mean a different model. We are open to ideas and suggestions as long as we can remain true to our mission.

In the meantime, we are always looking for new contributors. If you are interested in helping out, please let us know. We are always looking for people to help us with content, with the platform, with the community, with the business side of things. We are always looking for new ideas and new ways to make Runestone better.

Roadmap 2024

A lot of the podcasts I listen to, and quite a few of the blogs I read, encourage you to pick a touchstone word for the year. I’ve never done that before, but I’m going to try it this year. My word for 2024 is “Simplicity”. I’m going to try to use this word to guide my decisions and actions for the year, both in my personal life and in my professional life.

My decision to choose simplicity was reinforced by a recent blog post by Matt Mullenweg, the CEO of Automattic, the company behind WordPress. And a second by Terry Sutton, a front end developer. In Terry’s post he says:

Good open source software is / does / can (roughly in order):

  1. easy to install and setup, for free, both locally and on my own server

  2. powerful, capable

  3. make easy things easy

  4. make hard things possible

  5. opinionated, and so you get:

  6. a lot out of the box, so you don’t have to:

  7. constantly reinvent the wheel to do simple or common things

  8. interoperable, flexible, extensible

  9. Has a core user story in mind (ie: it appeals extremely well to a couple of use cases, while enabling many others)

  10. continuously improved and updated

I think that’s a great list, and I think that the Runestone software ticks a lot of those boxes, but not the first one, and I’ve heard from many of you, not not the third one. It certainly is the fifth one, and I think sixth through tenth follow. The good news is that principles 1 and 3 are closely related to my touchstone word for the year.

Runestone has been around since 2011, and it has grown organically over the years. Myself, students, other contributors added features as I’ve needed them, and as others have asked for them. I’ve tried to keep the code clean, and the architecture flexible, but I think it’s time to take a step back and look at the big picture. I think it’s time to simplify.

Moving to the monorepo was a first step in that direction. I think it’s time to take a second step. I’m going to try to simplify the user experience, particularly for instructors. I’m going to try to make it easier to install and setup, and I’m going to try to make it easier to use. I’m going to try to make it easier to contribute to, and I’m going to try to make it easier to extend.

Here are some some of the things I’m targeting especially for the first half of 2024:

  • Create a quick programming project interface to serve as a replacement for instructors who used

  • Simplify the experience for creating and grading assignments

  • Simplify the installation process

  • Simplify the configuration process

  • Make the developer experience better for contributors

  • We are going to have to bite the bullet on LTI 1.3 support soon! People are deprecating 1.1 as we speak.

Please note, these are Goals not guarantees. I had many features I wanted to implement in the Fall of 2023, but most of my time was eaten up answering questions from users, and dealing with growth and scaling issues. I’m hoping that by setting these goals, and by sharing them with you, I’ll be able to stay focused on them.

I’m not going to go into details here, but I’ll post about progress periodically. If you want to get into the details, it is all on Github in the form of six projects (Sort them by name). Under the hood the main goal is to get all of the instructor facing pages ported to the same underlying technology we use for the assignment and book serving pages. This will make it easier to maintain, and easier to extend. It will also make it easier to add new features, and to make the user experience more consistent.

Problem Solving with Algorithms and Data Structures using (Python|C++|Java)

A triumph of open source and open content

In 2005 I was in my second year of teaching computer science at Luther College. I had enough experience to adamantly oppose Java as our introductory language, and I had learned about Python at the 2004 SIGCSE conference. I was excited about Python and had been playing with it for a year. There was an excellent introductory textbook by John Zelle who was at a nearby college. In our departmental discussions we thought that Python would be a good introductory language, but we didn’t want to give students one semester of Python and then a second semester in Java or C++. We wanted to stick with Python. So I said to my colleague David Ranum, “lets write our own data structures book!” And so we did. We contacted Zelle’s publisher who was very interested in our idea. We wrote the book in 2005 and it was published in 2007. It has been used at several universities as the primary textbook for the data structures course taken by second year computer science majors, as well as a supplementary text for students in other disciplines. The book has been translated into Spanish as well as Chinese.

The goals for the book were: * To have a strong focus on problem solving, that introduces the students to fundamental data structures and algorithms. * To introduce algorithm analysis in terms of Big O notation. * To use Python as the programming language. * To illustrate that we are all “standing on the shoulders of giants.” In computer science we are building on the work of those who came before us.

I loved teaching from this book. The students seemed to enjoy the problems we introduced and learned a lot. By the end of the course they were all much more fluent in Python and ready to tackle other languages and more advanced topics. They all had good “gut level” understanding of the major data structures and algorithms. I was very proud of the book and the course.

I’m also proud that in the 17 years since the first edition was published we have only had two more editions. There is no need to gouge students every two years with a trivial update. The book is still relevant and useful today.

Fast forward to 2011, I was on sabbatical and was working on the second edition of this book. But I had a serious case of “writers block” my main problem was that I just hated the idea of a paper textbook for computer science in the 21st century. Books should be interactive, you should be able to run these algorithms right in the book! That was the genesis of Runestone Academy. The next step was to convince our publisher that we should make the book freely available online. I’ll never forget the response of our publisher, Jim Leisy, “Lets go change the world!” With that, we were able to make the book available under a Creative Commons license. The book is still available in print, but the online version is the one that is being actively maintained, and through our strong partnership with the PreTeXt project we can write once in PreTeXt and publish both online and in print.

The Creative Commons license is a great example of the “shoulders of giants” lesson we wanted to teach our students as in 2018, Jan Pearce of Berea College in Berea Kentucky took our book and created a version for her students that used C++ as the primary programming language! She kept the Python as “pseudocode,” and added C++ examples along side. The content was what she was looking for but the programming language was wrong. So she changed it! She also added some new content and examples. She then shared her changes back with us, and we were able to incorporate the book into our collection. The C++ edition of the book has been used by over 3,000 students in over 223 courses around the world.

In the Fall of 2023 J. David Eisenberg of Evergreen Valley College in San Jose, CA, took the book and created a version for his students that used Java as the primary programming language! The content was what he was looking for but the programming language was wrong. So he changed it! This book does not have Python as pseudocode, but has a lot more interactive exercises and more of the examples can be run in the book than in the Python edition. He also added some new content and examples.

I can’t tell you how proud I am of these two projects. Even though I was personally opposed to Java (and C++) as an introductory language, we don’t all need to agree. And I know I’ll never convince the college board they are wrong. These two books are a great example of the power of open source and open content. I hope that you will consider using this book in your own courses, and if you do, please consider sharing your ideas or changes back with us so that we can all benefit from your work. I would suggest that the Java book is very accessible to high school students who have had the AP Computer Science A course. The Python edition is very accessible to students who have had a semester of programming in any language. If you are willing to help with any of the editions, but especially the Python edition I would love to hear from you. I would really like to make the Python edition much more interactive.

PROSE Workshop Report

Last week we held the PROSE Organizing Workshop at the University of South Alabama. We had 30 people in person and several more attended virtually. The attendees included seasoned veterans from the PreTeXt and Runestone projects as well as some people completely new to the project. One virtual attendee had literally learned of the project just days before the start of the workshop. We had a great time and got a lot of work done. We have a lot of work to do still, but we are off to a great start. In this post I will summarize the takeaways from the workshop and the next steps for the project.

What is the Scope of the Ecosystem?

One key question that needed to be answered was What and/or who is the PreTeXt / Runestone ecosystem? After lots of good discussion we decided that the ecosystem is best described by a set of principles, anyone or any project that shares those principles may be part of the ecosystem. The principles are:

Our Open Source Ecosystem is a community of students, teachers, authors, researchers, and developers committed to the following principles:

  1. We exist to:
    • Help students learn more efficiently

    • Help teachers teach more effectively

    • Help authors write better materials

    • Enable researchers to develop more effective tools and pedagogies

  2. We are committed to ensuring access to the best open source learning environment to all of our stakeholders, but especially to the students who need it the most.

  3. We embrace the open web and open standards.

  4. We welcome new partners who share our values.

  5. We will be flexible in creating a platform that incorporates new innovations.

  6. We recognize and celebrate all contributors and innovations that move our ecosystem forward.

In an open source ecosystem we are all “standing on the shoulders of giants,” there are countless projects that we rely on to make our software work, however we want to recognize some of the initial projects that are core to our ecosystem:

  • PreTeXt - An XML vocabulary for authoring and publishing high quality print and digital textbooks

  • Runestone Interactive - A Learning Engineering and Analytics Portal (LEAP) for hosting textbooks, assignments, and interactive learning activities.

  • WebWork - An open source online homework system for math and science courses

  • Doenet - An open source platform for creating interactive learning activities

It also includes many textbook authors, instructors, and researchers who are using these tools to create and deliver high quality learning experiences for their students. Research is ongoing at several universities including the University of Michigan, the University of South Alabama, and the University of Illinois, UT Austin.


We have a long term vision for the leadership of the ecosystem that may become a formal entity like the Apache foundation or an academic society. For our initial work, we have created an advisory council of eight people who represent many different aspects of our ecosystem of Open Educational Resources (OER) and embrace our guiding principles.

The initial leadership council includes the following people, all of whom have committed to an initial two year term.

  • Rob Beezer - Professor Emeritus of Mathematics at the University of Puget Sound, Founder of the PreTeXt project, author of the open source textbook A First Course in Linear Algebra.

  • Matt Boelkins - Professor of Mathematics at Grand Valley State University, author of the open source textbook Active Calculus.

  • Steven Clontz - Associate Professor of Mathematics at the University of South Alabama, maintainer of resource library, and co-author of the PreTeXt-cli authoring toolkit.

  • Barbara Ericson - Assistant professor of Information at the University of Michigan, and co-author of the open source textbook CSAwesome.

  • Danny Glin - The University of Calgary, and member of the WebWork Executive committee.

  • Brad Miller - Professor Emeritus of Computer Science at Luther College, founder of Runestone Academy LTD, and co-author of the open source textbook Problem Solving with Algorithms and Data Structures using Python.

  • Jennifer Nordstrom - Professor of Mathematics at Linfield University, and author of the open source textbook Game Theory: a Discovery Approach.

  • Duane Nykamp Associate Professor and Director of Strategic Initiatives at the University of Minnesota, and founder of the Doenet project.

This group will guide us through the initial stages of the project and help us to create a more formal governance structure as the project matures.

As part of the next steps we will be creating additional leadership opportunities in the form of Fellowships for people who are working to grow our ecosystem. We will also be funding mini grants to inspire and reward contributors to the ecosystem.

Workshop Attendees

Next Steps

There were so many great ideas that came out of the workshop, I can’t possibly list them all here. But we did identify some concrete actions that we need to get busy on in the coming months in order to make this project a success. Here are some of the next steps that we identified at the workshop.

  1. Write a Phase II grant proposal for the NSF to fund the next stage of the project.

  2. Find a name for the project that is more descriptive of the ecosystem, and will allow us to create a website that will be the hub of the ecosystem.

  3. Work on ways to keep the community engaged and build on the momentum from the workshop.

  4. Develop a plan for making sure that we are defending the intellectual property of the ecosystem.

  5. Continue our discussions and planning to create a sustainable funding model for the project beyond the initial NSF grant.

  6. Continue the technical discussions that were started at the workshop. These include a working group for improving the user experience on Runestone Academy; a working group for improving the authoring experience for PreTeXt; continue the the work on integrating Doenet and WebWork with PreTeXt and Runestone.

  7. Develop a plan to be more inclusive and diverse in our ecosystem.

PROSE Workshop Day 1

Yesterday 30 of us convened at the University of South Alabama for the first day of the PROSE workshop. Steven kicked us off reminding us that the main goal for the week was to prepare for writing our Phase II proposal. Rob and I both gave a little talk on the state of PreTeXt and Runestone.

In the afternoon we did an exercise to get everyone thinking about the different groups of stakeholders in the ecosystem and how we might serve them better. We will hear more results from the that tomorrow.

In the evening, we convened a hackathon back at the hotel. It was a noisy affair and we brought the hotel wifi to its knees. We did manage to get a few things done though.

Important Privacy Developments

For years, student data privacy has been a hot topic in education. In 2014, the U.S. Department of Education issued guidance on the Family Educational Rights and Privacy Act (FERPA) and the Protection of Pupil Rights Amendment (PPRA) to help schools and districts understand how to protect student data. In 2015, the White House released a Student Privacy Bill of Rights to help ensure that student data is used only for educational purposes. And in 2016, the U.S. Department of Education released a new Privacy Technical Assistance Center (PTAC) to help schools and districts understand how to protect student data.

The way all of this has impacted Runestone Academy is that many school districts are now requiring that we sign a Data Privacy Agreement with them before they will allow their students to use Runestone Academy. In the beginning this was a giant pain because each district had their own agreement, usually thrust upon them by their state department of education. There was little chance to negotiate and many of the agreements contained clauses that were not acceptable to us. For example, some of the agreements required that we delete all student data at the end of the semester. This is not acceptable to us because we want to be able to provide students with a record of their work in the course. (We do automatically remove data after 2 years) Other agreements wanted us to certify that we were HIPPA compliant, but since we don’t collect any health information this was not something we could do. Most problematic was that many agreements had a clause that obliged us to reimburse the school district if we ever had a data breach. Although highly unlikely, the costs associated with recovering from a data breach could be very high and we could not afford to take on that risk. Thankfully after a long search, we were able to find a company that would provide us with reasonably priced insurance against a data breach and we are now comfortable signing these agreements.

In 2020 we signalled our strong support for student privacy by signing the Student Privacy Pledge. You can read the pledge here: I also bothered countless people with emails complaining that these data privacy agreements were killing open source projects like Runestone because we don’t have the resources or knowledge to negotiate these agreements. I am happy to say that things are getting WAY better.

Introducing the National Data Privacy Agreement (NDPA) which is a standard agreement that schools and vendors can use to protect student data. This agreement (fostered by the Student Data Privacy Consortium) was developed jointly by schools and vendors and creates a set of common expectations between schools and providers like Runestone. We have already signed agreements with several schools that use the NDPA. You can read more about it here: We are happy to sign this agreement with any school that requires it. Even better, if your school is a part of a consortium where another member has already signed the agreement, then all your school has to do is sign Exhibit E and send us a copy. These consortia are often run at the state level, but in some cases multiple states have banded together. The map below shows the states that have adopted the NPDA and have consortia in place. In addition most of the state consortia have a database of vendors so you can do a quick search to find out if Runestone Academy has already signed with that state. If we have, then all you need to do is sign Exhibit E and send it to us. If we have not, then you can send us the agreement and we will sign it.

Map of states with SDPC consortia

The development of the NDPA is such a positive step forward for student privacy and it is a huge reduction in the amount of work that I have to do to sign agreements with schools. I am very grateful to the Student Data Privacy Consortium for their work on this. If your school is not a part of a consortium, please encourage them to join one. It will make it much easier for them to sign agreements with vendors like us. If your school is developing their own agreement, please encourage them to use the NDPA rather than creating their own. It will save them a lot of time and effort and will make it easier for them to sign agreements with other vendors.


I have been enjoying using Github copilot with VSCode for both Python programming and writing blog posts. Copilot is based on OpenAI’s GPT-3 language model. In fact the first paragraph of this post was written by Copilot. I wrote the title and the first few words of the first sentence and it wrote the rest. I did have to edit it a bit, but it was a great starting point. It also had some good and not so good suggestions for other parts of this post, including making up urls to non existent pages. Its really great at taking some of the drudgery out of programming in that it can write a lot of the boring code very quickly leaving me more time to work on the hard stuff. I am looking forward to seeing how this technology develops.

Top 10 Reasons to Host your Book on Runestone Academy

After four years of collaboration, Runestone and PreTeXt are ready to encourage hosting PreTeXt books on Runestone Academy servers as a routine matter. We’ve got several months before fall classes, so now is a good time.

The process is quite simple: put your PreTeXt source on GitHub if it is not there already, and provide a publisher file that specifies that you want a build specifically for Runestone servers. If you are using the command line tools / Codespaces with a project file then you are nearly ready. Let Runestone know by creating an issue in the Runestone repository. Your book will be made available to thousands of instructors and will be re-built automatically every Saturday.

Here’s our Top 10 list for why you would want to consider this, numbered for mathematicians and for computer scientists.

  1. Free. In every sense of the word. Open-source software and texts, hosting free to instructors and students.

  2. Hosting is low-friction for instructors, no local IT required. Fantastic up-time.

  3. Weekly updating with no hassle. Or more frequently with the author interface.

  4. Runestone Academy had over 115 million page views last year and has good search-engine optimization to increase the exposure of your book.

  5. Instructors get a detailed dashboard of students’ work and progress.

  6. Runestone Academy is used by over 10,000 instructors–who already use OER and are happy to spread the word.

  7. Authors get gross analytics across all institutions. Which of your exercises work, and which don’t?

  8. Authors get accurate data on adoptions and readership. Impress your Dean.

  9. You maintain complete ownership and control of your materials.

  10. Instructors get autograding and autorecording. Get a spreadsheet at any time or link it to your LMS through LTI.

  11. PreTeXt and Runestone are actively promoting books at both Mathematics and Computer Science conferences.

To get started, read the chapter on Runestone in the Publisher’s part of the Guide, especially the second section. It has pointers to other relevant parts of the documentation.

Chapter 32: Conversion to Runestone

We would encourage you to look at the annotated sample book, especially the Runestone chapter to see the interactive elements that you can begin using in your books, written natively in PreTeXt but using Javascript developed by Runestone over the last 12 years.

There is a fast-developing converter from Runestone restructuredText syntax to PreTeXt, which will ease the transition for computer science textbooks to PreTeXt.

We would be remiss to not acknowledge the trailblazers who have helped test this out as it has been developed.

Native PreTeXt:

  • Oscar Levin; Discrete Mathematics, An Open Introduction

  • Sean Fitzpatrick; APEX Calculus

  • Mike May; Business Calculus with Excel

  • Alex Jordan; Open Resources for Community College Algebra

  • Kathy Yoshiwara; Intermediate Algebra: Functions and Graphs

  • Tom Judson; Abstract Algebra, Theory and Applications

  • Tom Judson; The Ordinary Differential Equations Project

  • Alex Jordan; WeBWorK integration (!)

  • Matt Boelkins, Mitch Keller, Chrissy Safranski; Active Calculus

  • Steven Clontz, Drew Lewis; Linear Algebra for Team-Based Inquiry Learning

  • Rob Beezer; A First Course in Linear Algebra

Conversions from Native Runestone:

  • Brad Miller; How to Think Like a Computer Scientist

  • Brad Miller; Problem Solving with Algorithms and Data Structures using Python

  • Brad Miller, Barb Ericson, J. David Eisenberg; Python for Everybody

  • Beryl Hoffman; Java, Java, Java (from LaTeX!)

  • Jan Pearce; Problem Solving with Data Structures and Algorithms using C++

  • Jan Pearce; C++ for Python Programmers

  • Jan Pearce; On Complexity

Runestone at SIGCSE 2023

I am pleased to announce that our NSF grant provides us with funds to be an exhibitor at SIGCSE this year. Please stop by our booth and say hello. If you don’t know anything about Runestone we would love to introduce you. If you are a long time user we would be happy to hear your feedback and ideas. Also, we have stickers.


Do commercial publishers have a place in the open textbooks ecosystem?

Suppose a textbook was used at more than 100 universities, with many websites advertising the book and showing off its numerous high-quality features. Suppose many experts in the subject have produce supporting materials: videos, worksheets, sample exams, sample syllabi, advice to the instructor, and suppose those materials were already available for free – making it very attractive for the textbook to be adopted by new institutions.

And suppose a commercial publisher was given the opportunity to produce and distribute the book. Would that be a good business opportunity? Of course it would! A textbook publisher should jump at the chance to bring out a new book with an already well-established market!

Except, it isn’t actually a new book. And unlike a traditionally published book, it isn’t the sole and exclusive property of the author, because the book has been released with a license that allows anyone to modify it and make their new version available. And everything in the printed book already exists on free websites, and for free as PDF, EPUB, or on a kindle. The printed book has to compete against itself in other formats.

Is the open nature of the book a deal-breaker for publishing commercially? I say No. Many open textbooks are already being published in print form. Students buy them: many want an inexpensive printed copy because the online versions are great in some ways but fall short in others. Many open textbook authors go to the effort to produce a print version; I speculate that many would be happy to hand that work off to a commercial publisher.

Issues, from the perspective of the author

We already mentioned an attraction for the author: they probably don’t want to do the work of preparing and distributing the print edition.

A commercial publisher would also provide effective advertising – another aspect of self-publishing where many authors fall short.

Also, it is still an unfortunate (and misguided!) fact that open/self-published textbooks are viewed with suspicion by textbook adoption committees. The stamp of approval from a commercial publisher carries a lot of weight.

Primary concerns for the author are price and availability.

The author may have been motivated by the seemingly high price of some commercial textbooks. If they have been self-publishing the print version, it probably sells for around $20. An excessively high price on the commercial print version could be a deal breaker.

The author probably has been making a high-quality HTML version available for free, and probably also a PDF version, and maybe also EPUB. It is unlikely the author would be willing to give up the free HTML version, hosted on a website that they control. It is unclear whether the author would have strong opinions about the EPUB and free online PDF.

There are other author issues, which do not seem specific to open textbooks, such as duration of the agreement with the publisher, what happens if the book goes out-of-print, expectations about subsequent editions, non-compete clauses about writing similar books, royalty rate, etc. As we will see below, some of those issues are in fact different for open textbooks.

Issues, from the perspective of the publisher

By far the biggest issue is dealing with an unfamiliar situation.

Until recently, there were not a lot of excellent open textbooks. Now there are. PreTeXt ( and Runestone deserve a lot of credit for facilitating authors to create high-quality books with many features that enhance teaching and learning.

So, it will take vision, and a tolerance for the unknown, for a commercial publisher to dip their foot in this pond.

For the sake of argument, consider the situation of an open textbook which is being used at several universities, with free HTML version available online (possibly at more than one website), with a print version from the author (or someone they designated) available for $20-25.

The publisher probably would like the author to stop publishing the print version. It is safe to assume the author would agree, provided that the price did not increase significantly.

The publisher would probably want the existing print version (which probably is print-on-demand) removed from the marketplaces where it appears. Again, the author should agree.

What does the publisher think about the author’s website hosting the HTML version? How does that relate to the home page of the book on the publisher’s website? Presumably those pages should link to each other, because both parties benefit from the success of the other.

How about the PDF version the author currently posts? Probably that is a non-issue, because for PreTeXt books you can print from the HTML, and for many purposes it does what one wanted from the PDF. If there is a reason the author would object to taking down the PDF, I would like to hear it.

EPUB is another issue. Many publishers make money by selling the EPUB: that revenue stream would be diminished if the author posted it for free. The EPUB version is recognized as a valuable resource for people in prison, because it does not require an Internet connection and it does not take up space. This is important to people involved with the Prison Education Project and related endeavors. Both sides should be aware of these issues during the negotiations.

If the above are the main concerns of the publisher, then they have missed some essential facts about the world of open textbooks.

Some realities which have to be discussed and understood

As was already mentioned, the book isn’t the sole and exclusive property of the author.

If the source is available with an open license, anyone can make a PDF version, or produce a print-on-demand version and sell it at whatever price they want.

Anyone can also add a new chapter or section and publish it however they want. Forbidding the author from using that book as the basis for a competing product, cannot stop someone else from doing the exact same thing. And the original author’s name is also on the new book! (How authorship is credited in these situations is untested waters. Open textbooks are touted for their ability to be modified and customized, but in practice this rarely happens and the community has not had to deal with complicated situations.)

The publisher has to accept that they do not have a monopoly on the book: they will be the only print publisher if the author agrees that it is better for the publisher to handle the print version, and nobody else decides that they can do it better (where “better” involves some combination of price, quality, and features).

A clause in a contract may forbid the author from taking certain actions, but if the book has an open license, that contract cannot prevent someone else from performing those exact same actions.

The general point has been made, but I’ll repeat it for this specific case: nobody can stop someone else from adding a small amount of material and publishing it as the “new edition” of the book.

Here is an issue which seems silly but is not: movie rights. The excellent open textbook APEX Calculus has a version with more than 600 videos by Sean Fitzpatrick (not the author of the book, and that version is not hosted by the author) with a cumulative duration of more than 75 hours, explaining concepts and working through numerous examples. Stacking those videos creates a multi-part epic movie version of the book. Whose rights are infringed by that cinematic extravaganza?

Most commercial publishers have a fundamentally misguided policy concerning Braille versions. Each institution which needs a Braille copy has to go to the effort, typically taking months and costing $20,000 or more, of having an expert Braille transcriber convert the book. They are not allowed to then share it with another university! Think about it: not only does the publisher not provide a Braille version, they make it as hard as possible for other people to do so. Textbooks written in PreTeXt automatically convert to Braille, at minimal marginal cost. That fact should have an impact on the publishing contract.

A modest proposal

One possible way to address some of these issues is for the publisher to commission a new edition of the book, and for the author to not release that edition with a fully open license. This would not change the fact that the previous edition was still available open source and with a permissive license. But the publisher’s concerns about competing products would be mitigated by the fact that the anyone other than the author would be several steps away from replicating the published book.

The “edition trick” is not a magic wand

The modest proposal would involve the author abandoning their previous vision for the open source ecosystem of their book. Would they release the new edition with a more restrictive open license, such as CC-Attribution-ShareAlike-Noncommercial, or would they keep the source private and reserve all rights? Would the restrictions apply only to print publishing, or would other online versions also be prohibited?

Is this modest proposal the author’s first step on the slippery slope of producing a commercial book that is exactly what they were trying to avoid when the decided to write an open textbook?

Keeping the fully-functional online HTML version available for free seems like an absolute requirement for the author. Is the author assigning the copyright to the publisher and the publisher granting rights for the online version, or is the author retaining copyright and granting the publisher the right to produce and sell a print version? Or does the book have an open license and the publisher has to accept the fact that keeping the author happy is their main protection against competing print versions?

If the book incorporates material under an open license from another author, putting a more restrictive license on the next edition might not even be an option.

Here’s an ironic fact. Suppose the author decides not to go with a commercial publisher and just releases the new edition with the same open license. Then the publisher can just produce and sell the print version anyway! And they won’t have to pay any royalties!

If I come out with a book that has 80% overlap with an existing book, I will be sued by the publisher, and I will lose. But for an open textbook, even with the “edition trick” I have been given the rights to produce such a similar book based on the previous edition. No agreement between the author and publisher can change that. And the author cannot remove the rights which I have previously been given.

Maybe all of these concerns are non-issues?

Perhaps, with or without the “edition trick”, the online versions of the new edition can function exactly like the previous edition, with the print version now coming from a commercial publisher who provides a modestly priced copy and still makes some money, and nobody is motivated to duplicate either the author’s or the publisher’s work?

There would be very little risk for an established publisher to produce and distribute the print version of an existing open textbook, on just a handshake agreement with the author. The author would agree to not publish a print edition, and would make a reasonable effort to promote the publisher’s print version and discourage others from making a competing print version. The publisher would agree to make their print version available at a price comparable to what the author could do on their own. The publisher would advertise the book in ways beyond what the author could do. Every free online view of the book would be an effective advertisement for the print version. The publisher makes money. The author probably makes a bit less per print copy, but they are spared the work of being their own print publisher and end up making more in the long run because more copies are sold.

The publisher’s lawyers might be unhappy with a handshake agreement, so a contract could codify the points in the previous paragraph. If the contract were for one year, renewable and properly synchronized with the academic year, then it could be workable for one party to handle the print version and traditional advertising, and the other party to manage the online versions and provide support and outreach to instructors using the book.

Are there commercial publishers who can appreciate this business opportunity? Do most open source textbook authors understand that they are not giving up anything if they enter the type of agreement I propose?

I await the publisher and the authors who fully understand the open source ecosystem and its relationship to commercial publishing, and see an opportunity for harmonious collaboration.