Computer Science


Trevor Paley

MS Student

WPI – Computer Science


Monday, April 24, 2023

Time: 2:00 p.m. – 3:00 p.m.



Advisor: Prof. Charlie Roberts

Reader: Prof. George Heineman



While many companies and organizations have built applications which use collaborative features to help teach computer science in classrooms, they have traditionally provided very limited support for third-party developers to build on top of their platforms to add new features and interfaces. Using our own educational programming environment Necode, we develop a set of APIs and abstractions to enable third-party developers to integrate programming languages, design in-class activities, and implement algorithms (policies) for automatically generating peer-to-peer networks for real-time communication between students.

To prove the viability of our APIs, we translated all of Necode's built-in modules (consisting of languages, activities, and policies) to use these APIs, as well as developing new brand modules on top of them. We then demonstrated that these modules could be statically unlinked from the Necode build and packaged into a plugin for dynamic hot installation without requiring a re-compile of Necode or any downtime.