We got super excited when we saw that one of HackNYU's tracks for this hackathon is Sustainability & Social Impact. After settling on this track we looked at FEMA's website to see how they responded to natural disasters, and tried to see if we could think of a way to use tech to streamline the way they provide aid. Looking at pictures of hurricane Katrina victims crowded in Houston's Astrodome waiting to receive resources from FEMA made a proverbial lightbulb turn on over our heads: rather than anxiously crowding to reach the front of a physical line, victims could wait with their families until they get a text that someone is free to provide them aid.
What it does
Our project uses SMS messages to organize large groups of people in a way that minimizes crowding, and lets people feel more at ease while waiting. Users text a widely broadcast number and get added to a queue, which is available emergency relief workers through a web app. Users' messages appear in cards on the side of the app, and workers and send messages alerting people that a crisis center is able to help.
How we built it
As a proof-of-concept, we built a simple Flask app (with Twilio and ngrok) with that sends users pin numbers to create a queue for the bathroom with a lock. Once we got that system working, we used the same principles to build the CQueue, our SMS-based crisis management system.
Challenges we ran into
Our biggest challenge was configuring all of the different APIs that we wanted to use. Installing the MongoDB client database took a big chunk of our time. Another challenge was integrating the front end with Flask and managing to get HTTP forms to send to the backend. Learning how HTML and post requests work was a useful experience that will hopefully help us going forward.
Accomplishments that we're proud of
We’re proud of all we've learned at this hackathon, having such an intensive, focused environment for honing our coding prowess has been so beneficial. We're proud of our project, and all the sleepless hours we put into it!
What we learned
During the execution of this project, we learned how to use non-relational databases, how to use the Twilio API to send SMS messages, and how to time out our caffeine consumption.
What's next for CQueue
While we've achieved our short-term vision for CQueue (having a working prototype), we'd love to add more functionality and advise others trying to build a similar system--we'd love to see it in use!