Physics tutoring center queue system

The physics department needs to update an app used in the physics tutoring center (aka Wormhole).  The code manages and maintains a queue of requests and includes a front-facing website. Students using the Wormhole enter help requests using either a set of remote boxes in the Wormhole (for in-person help) or directly through the Wormhole website (for remote help).

The system is overseen by the Wormhole manager.  This person must interface with app to manage the queue, maintain the list of tutoring assistants. retrieve data on help requests, edit the website, and deal with any problems that arise.

Most of the existing code resides on an AWS server; code specific to interfacing with the hardware resides on a PC in the Wormhole.  It's written in a combination of languages, including Laravel / PHP, and uses SQL for the database. At a minimum, we need the code rewritten in a more familiar language - our preference is Python - while making minor functional changes.  At the same time, we would like to develop documentation on running and maintaining the site. We're open to ideas from the team on better ways to design the system, if redesign could be implemented in the time-frame of the project.

Objectives


New, bug-free code on the AWS server, ready for use by tutoring assistants in the Wormhole.  Documentation for running and maintaining the code.  Early deliverable date over spring break, with a hard deadline at the end of spring term.

Motivations


The code is currently maintained by a physics graduate student.  This person would be available for consultations as necessary.  At the end of this project we plan to transfer management of the system to a staff member to be determined. Using a familiar language will make it easier to do this.  Python is widely known in physics and more readable than the current algorithms.   We hope rewriting the code also helps with stability and maintenance issues.  This is also an opportunity to make some improvements and changes to the system and to add documentation.

Qualifications


Minimum Qualifications:

Fluency in Python.  

Preferred Qualifications:

Experience with ubuntu OS on servers and AWS.  Familiarity with SQL.  Experience interfacing code with remote hardware.  Experience working with Arduino-based hardware. Website development.


Details


Project Partner:

Fred DeAngelis

NDA/IPA:

No Agreement Required

Number Groups:

1

Project Status:

Accepting Applicants

Website:
https://wormhole.physics.oregonstate.edu/
Keywords:
Pythonapp developmentWebsite developmentDatabase managementHardware interfacing
Card Image Capstone