Skip to main content

Saturn (and Titan)

·

Saturn and Titan are an IDE and assembler, respectively, that we use in Computer Organization (CSC258H1) for teaching MIPS assembly programming. They are both open source (Saturn, Titan). And you can try Saturn out right now in your browser. Here’s a screenshot:

A screenshot of the Saturn IDE running in the browser.

Inception #

The project was initially created by a student, Taylor Whatley, over the holiday break after he completed the course in the Fall of 2022. He developed the core code for Saturn and Titan, then continued to improve it during the Winter 2023 term. Near the end of March 2023, I received the following email:

Hello Professor,

I’ve been working on a MIPS IDE alternative since last term concluded. I’ve tried to make key improvements in usability, appearance and performance over MARS and I’m really excited about the end product.

Since you’ve previously taught CSC258 and have talked extensively with students about their challenges with MIPS programming in MARS, I’d like to demo the IDE to you and gather some feedback.

Let me know if you have some time soon to talk. I’m able to talk today or tomorrow after 12:00pm, but I also have time to talk Monday and Wednesday after 11:00am or after 2:00pm. Let me know if another time would work better for you.

Thanks, Taylor

We managed to get Professor Steve Engels to share the tool in the current (at the time; Winter 2023) offering of CSC258H1. Students could choose between Saturn or the traditional MARS IDE. On the final day of the project, we took an informal survey to collect feedback, using it to improve Saturn.

Continued development #

Saturn has continued to evolve with the help of Taylor and other students, including Milo Mighdoll. My role in the project has been mainly hands-off in terms of development. Perhaps one day I will learn Rust, but until then I have been happy to provide feedback on how the tool can be improved for teaching and learning.

Professor Steve Engels, Taylor, and I also published a 2-page courseware paper on the tool and how it is used. The paper will appear in ITiCSE 2025:

Steve Engels, Mario Badr, and Taylor Whatley. 2025. Enhancing MIPS As- sembly Language Education with Saturn. In Proceedings of the 30th ACM Conference on Innovation and Technology in Computer Science Education V. 2 (ITiCSE 2025), June 27–July 2, 2025, Nijmegen, Netherlands. ACM, New York, NY, USA, 2 pages.