You're voting for

CP3108

CP3108 Source Academy Improvements

Projects
CP3108-01

Source Academy Update: Skip Button and Navigation Mode Integration

Sometimes, you don't 𝓻𝓮𝓪𝓵𝓵𝔂 want to hear Scottie or Hartin Menz talk for the next 5 minutes about something you already know. Maybe you're bored of the old navigation system from your room to the Dormitory Hallway. Well, with our new features, you now have something to look forward to in life (as a cadet in Source Academy)! With our new feature, the skip button, you can skip through all that annoying dialogue you don't want to listen to, and instead pay attention to the 𝓸𝓷𝓮 𝓪𝓷𝓭 𝓸𝓷𝓵𝔂 𝓟𝓲𝔁𝓮𝓵. Additionally, we have integrated the Move, Talk and Explore modes for seemless interactions. No more clicking "Move" and choosing where to move, just move to where you want to be.

CP3108-2

#2

Student View & Sinter

This project focused on introducing a “Student View” to bridge administrative and student perspectives. It also enhanced the Sinter system by improving usability and expanding functionality.

CP3108-03

CSE Environment Diagrams

This project enhances the CSE Environment Diagrams through optimized layouts, clearer arrow routing through Konva layers, and dynamic visualizations of garbage collection. It introduces several new visualization features and options. These new features provide CS1101S students with a more intuitive and comprehensive experience for learning mental models.

CP3108-06

Stream Visualization

A stream is a powerful concept but often serves as a "black box" for students. This gets especially confusing when functions such as stream_map and stream_filter layer on top one another. This project is thus designed to pull back the curtain, providing a real-time, visual representation of how streams are constructed.

CP3108-07

Stepper

We have added two new functionalities to the stepper, namely recursive hoverover and breakpoints. This aims to improve the visualization of recurive functions and improve the debugging experience.

CP3108-8

#8

Conductor Migration

CP3108-9

#9

Versioning and History

This project implements a versioning and history system for Source Academy's coding assignments, similar to that of Google Docs. Currently there is no versioning feature, and the database only keeps a record of the latest submitted version of a student's code. This new feature allows students to review, restore, and edit previous versions of their code.

CP3108-10

#10

AI-based Grading

CP3108-11

Chatbots for Source Academy

Motivated by the challenges faced by ourselves and many past students of CS1101S, we observed that general-purpose LLMs are often prone to hallucination, particularly when dealing with unfamiliar or specialized topics such as the SICP textbook, the Source language, and course-specific content. To address this gap, we developed Louis and Pixel.

CP3108-12

Adding Python to Source Academy

Support migration of CS1101S to the world's most popular language

CP3108-13

#13

Scheme in Source Academy

This project focuses on the development and integration of a Scheme programming language implementation within the Source Academy ecosystem. Currently, Scheme support in Source Academy is tightly coupled with the JavaScript-based runtime (js-slang), which limits modularity and extensibility. This project aims to decouple the existing Scheme implementation (scm-slang) from js-slang and transform it into an independent, conductor-compatible runtime. In addition to integration, the project also explores execution models (such as the CSE machine), improving both the robustness and educational value of Scheme in Source Academy.

CP3108-14

#14

Progress on Pie in Source Academy

CP3108-15

Source Academy Power Tools

Enhancing Tree Visualisation in Source Academy through an Object-Oriented Data Visualizer