Projects

Here’s a (very incomplete) list of coding projects that I’ve worked on over time. The starred projects I consider to be my most significant projects for technical or personal reasons.

ångstromCTF
By: Noah Singer

ångstromCTF is an online cybersecurity competition for high school students. I directed the competition from 2015 to 2018 and wrote several iterations of its RESTful website platform, where competitors logged in to the competition platform, formed teams, and worked together to answer questions in cryptography, binary exploitation, web exploitation, digital forensics, reverse engineering, and more.

Software: Angular 2, Django, Ansible

Code Site

Darkside OS
By: Noah Singer, George Klees

Darkside OS is an operating system written entirely from scratch in C and Assembly with a focus on modern architecture, flexibility, portability, and speed. It includes a custom bootloader and features such as multithreading, a virtual filesystem (VFS), memory management, device management, and executable loading.

Software: C, Assembly, various CPU emulators

Code

Silver Chips Online
By: Noah Singer, Noah Kim, Mark Jung

Silver Chips Online is the online version of Montgomery Blair High School’s newspaper. I designed the project’s overall architecture and implemented the entire backend and much of the frontend; I implemented a polymorphic content system supporting a wide variety of multimedia formats (stories, photos, videos, polls, etc.), rich-text style content editing, content embedding, permissions and user administration, newspaper layout, content approval pipelines, and more.

Software: Bootstrap, Django, QuillJS

Code Site

AlgViz
By: Noah Singer

AlgViz is a web framework for visualizing the execution of computer algorithms. Currently it supports several different sorting algorithms and can simulate Turing machines and automata. I developed it as an aid to use during lectures and talks I give on topics in computer science.

Software: JavaScript

Code

MBMT
By: Noah Singer and Noah Kim

The Montgomery Blair Math Tournament (MBMT) is an annual math competition for middle school students in the local area that the Blair Math Team has hosted for several years. This platform allows coaches to register their teams and students, and competition staff to record attendance, scores, and winners.

Software: Django

Code Site

Science Bowl
By: Noah Singer

Science Bowl is a nationwide science trivia competition hosted by the Department of Energy that I participated in for 7 years in middle and high school. On this website, students register their school’s teams and can put together online tryout and practice rounds.

Software: MongoDB, Express.js, Angular, node.js

Code Site

singerng.github.io
By: Noah Singer

Wow, this is meta! This site was written as a mix between a blog and extended curriculum vitae and incorporates years of lectures and projects as well as lots of information about me.

Software: Jekyll

Code Site

Kraken
By: Noah Singer

Kraken is a fully compiled programming language in development. I’ve used it as an opportunity to implement my own lexer and parser generators as well as learn more a lot about how compilers work. The algorithms are mostly implementations of those described in the first edition of Compilers: Principles, Techniques, and Tools (Aho et al., 1986).

Software: C++

Code

ångstromCTF Learn
By: Noah Singer

ångstromCTF also includes interactive learning materials for students interested in cybersecurity, housed separately from the competition. Individual modules teach students concepts and let them try out techniques and ideas in real time.

Software: Jekyll, Ruby

Code Site

Vivid
By: Noah Singer, Noah Kim

Vivid is a music player and visualizer written in Javascript/HTML5. It uses WebAudio’s built-in Fast Fourier Transform API to extract frequency data from an audio file and then displays it in a set of dynamic views. Vivid is open source and allows for customization through its modular visualizer system.

Software: JavaScript

Code