Date of Award


Degree Name

MS in Electrical Engineering


Electrical Engineering


College of Engineering


Andrew Danowitz

Advisor Department

Electrical Engineering

Advisor College

College of Engineering


This thesis introduces "SNR," a Python library for programming robotic systems in the context of introductory robotics courses. Greater demand for roboticists has pressured educational institutions to expand robotics curricula. Students are now more likely to take robotics courses earlier and with less prior programming experience. Students may be attempting to simultaneously learn a systems programming language, a library API, and robotics concepts. SNR is written purely in Python to present familiar semantics, eliminating one of these learning curves. Industry standard robotics libraries such as ROS often require additional build tools and configuration languages. Students in introductory courses frequently lack skills needed for these tools. SNR does not use any additional build tools, so students are faced with fewer compounding learning curves. SNR presents students with concepts important to robotic systems programming such as modular and event driven architectures to bridge the gap between introductory programming courses and industry standard libraries.