We are a team developing resources on the PrairieLearn platform to support the teaching of algorithms, data structures, and other theoretical aspects of computer science, at several different levels of the computer science curriculum at the University of Illinois. This development effort started with CS 374 (Algorithms and Models of Computation), but has since expanded to include several other classes at Illinois, including CS 173 (Discrete Structures), CS 225 (Data Structures}, CS 277 (Algorithms and Data Structures for Data Science), and CS 401/403 (Accelerated Fundamentals of Algorithms).
- 🔥 Public GitHub repository — Free to use, copy, adapt, and/or remix in your own PrairieLearn courses!
- All text is released under a Creative Commons Attribution (CC-BY) License
- All code is released under The MIT License.
- 🔥 Public demo course / catalog on PrairieLearn.
- The course includes both a full suite of guided problems sets from CS 374 and a complete catalog of questions and elements available in our public Github repo.
- The course is freely accessible to anyone with a Microsoft account, Google account, or login credentials at a university with a contract with PrairieLearn.
- Contributions to the Spiffy Questions with PrairieLearn workshop at SIGCSE 2024
-
Jason Xia and Craig Zilles. Using context-free grammars to scaffold and automate feedback in precise mathematical writing. Proc. 54th SIGSCE, 479–485, 2023.
-
Jeff Erickson, Jason Xia, Eliot Wong Robson, Tue Do, Aidan Glickman, Zhuofan Jia, Eric Jin, Jiwon Lee, Patrick Lin, Steven Pan, Samuel Ruggerio, Tomoko Sakurayama, Andrew Yin, Yael Gertner, and Brad Solomon. Auto-graded scaffolding exercises for theoretical computer science. Proc. 2023 ASEE Annual Conference, 2023.
-
Caleb Evans and Eliot W. Robson. automata: A Python package for simulating and manipulating automata. J. Open Source Software 8(90):57–59, 2023.
-
Eliot W. Robson, Samuel Ruggerio, and Jeff Erickson. FSM Builder: A tool for writing autograded finite automata questions. Proc. 29th ITiCSE, 269–275, 2024.
-
Hongxuan Chen, Katherine Braught, Geoffrey L. Herman, and Jeff Erickson. Novice difficulties in graph layering for algorithm design. Proc. 56th SIGCSE, v. 2, 2025. Poster abstract. [Local copy]
-
🔥 Yael Gertner, Brad Solomon, Hongxuan Chen, Eliot W. Robson, Carl Evans, and and Jeff Erickson. Measuring students’ perceptions of an autograded scaffolding tool for students performing at all levels in an algorithms class . Proc. 57th SIGCSE, 393–399, 2026.
- Instigator: Jason Xia
- Chief Software Architect:
- Eliot Robson (2021–2025)
- Sam Ruggerio (since 2025)
- Director (since Fall 2021): Jeff Erickson
- Co-director (since Fall 2022): Carl Evans
- Research assistants: Hongxuan Chen, Eliot Robson, and Sam Ruggerio
Developers:
- Spring 2026: Aryan Arora, Aydin Ali, Anya Gill, Matthew Leonardson, Sam Ruggerio, Nehan Tarefder
- Fall 2025: Aydin Ali, Anya Gill, Matthew Leonardson, Katie Li, Sam Ruggerio, Nehan Tarefder
- Spring 2025: Anya Gill, Eli Kujawa, Eliot Robson, Elisa Carillo, Yuqing Zhai
- Fall 2024: Eli Kujawa, Eliot Robson, Elisa Carillo, Nathan Omerza, Yuqing Zhai
- Spring 2024: Alex Jin, Dhiraj Kuttichirayil, Eli Kujawa, Eliot Robson, George Huber, Nathan Omerza, Vedaant Jain, Yuqing Zhai
- Fall 2023: Alex Jin, Dhiraj Kuttichirayil, Eliot Robson, Nathan Omerza, Riya Verma, Yuqing Zhai
- Spring 2023: Anshul Bheemreddy, Ben Clarage, Tue Do, Zhuofan Jia, Eric Jin, Eliot Robson, Sam Ruggerio
- Fall 2022: Ben Clarage, Tue Do, Aidan Glickman, Zhuofan Jia, Eric Jin, Eliot Robson, Sam Ruggerio, Andrew Yin
- Summer 2022: Eliot Robson, Sam Ruggerio
- Spring 2022: Eric Jin, Eliot Robson, Sam Ruggerio, Jason Xia, Andrew Yin
- Fall 2021: Julie Lee, Steven Pan, Eliot Robson, Tomoko Sakurayama, Jason Xia
- Spring 2021: Patrick Lin, Jason Xia
Instructors at Illinois who have used TheorieLearn resources in their courses:
- CS 374 (since Spring 2021): Chandra Chekuri, Dakshita Khurana, Emily Fox, James Hulett, Jeff Erickson, Patrick Lin, Ruta Mehta, Sariel Har-Peled, and Timothy Chan
- CS 225 (since Fall 2022): Brad Solomon, Carl Evans, Harsha Tirumala, Kendall Koe, and Mattox Beckman
- CS 173 (since Fall 2022): Benjamin Cosman, Carl Evans, Daniel Gonzalez, Hongxuan Chen, Margaret Fleck, Naina Balepur
- CS 401 and CS 403 (since Spring 2023): Yael Gertner
- CS 277 (since Spring 2023): Brad Solomon, Harsha Tirumala, and Mahesh Viswanathan
If you are using these resources as an instructor at another institution, and you would like to be listed here, please contact Jeff Erickson.
Funding:
-
This project is primarily funded by the Grainger College of Engineering, through the Strategic Instructional Innovations Program, under the auspices of the Academy for Excellence in Engineering Education, with matching funds from the Department of Computer Science (now the Siebel Schhol of Computing and Data Science) since July 2023. The current faculty members of the SIIP team are Jeff Erickson (PI), Carl Evans, Yael Gertner, and Brad Solomon; the 2022–23 startup SIIP team also included Tiffani Williams.
- 2022-2023 startup proposal — AE3 Liaison: Yuting Chen
- 2023-2024 proposal — AE3 Liaison: Mariana Silva
- 2024-2025 renewal — AE3 Liaison: Mattox Beckman
-
🔥 Related research is funded by NSF grant CNS-2434363. “Theory-ABCs: Transforming online theory instruction while building ability, belonging, and confidence”, led by Diana Franklin (University of Chicago), with Jeff Erickson (Illinois PI), Yael Gertner, Geoffrey Herman (Illinois co-PI), and Seth Poulsen (Utah State PI).
Other Acknowledgments:
Many thanks to the core PrairieLearn development team, especially Dave Mussulman, Seth Poulson, Nathan Walters, and Matt West. Finally, we thank the more than 6000 students at Illinois who have used these resources, for their patience, frustration, and helpful feedback.
