Inspiration
When John was growing up, his grandmother always reiterated the importance of a balanced check book. Like many millennials, however, John failed to recognize the potential dangers an unbalanced check book might have. Without careful monitoring, it's possible to be overcharged for expenses and consequentially experience undue financial stress. In response to this need, we have created DoublCheck, a tool to help millennials track their bank charges and manage their financial future.
What it does
DoublCheck provides a web interface for users to track their expenses and identify unexpected bank charges. Users link their bank account to our site through a secure interface, and we provide a clear interface for check book balancing. In addition, DoublCheck offers an optional over-the-phone service where the user's expenses are read aloud and then may be verbally confirmed or flagged as unrecognized.
How we built it
DoublCheck uses the Plaid API to collect transaction data from a user's bank accounts and present the information on a web page for their review. Our webpage is built on the Bootstrap framework with a customized user identification and log in system. Additionally, we use the Twilio API to guide the user through an automated system to review their bank charges. Finally, we use the Houndify API to enable the user to request more information about or related to their transactions.

Challenges we ran into
Integrating Houndify's Speech to Text feature into DoublCheck proved to be a challenge for our team. The goal of this feature was to combine Twilio's communication interface with Houndify's ability to interpret and respond to user input. Unfortunately, sound files from Twilio are formed by an automatic sampling rate of 8kHz. While Houndify is capable of handling both 8kHz and 16kHz sampled files, the Python SDK in particular was biased to upsample any file to 16kHz. Through thorough testing, we realized that this feature caused the interpretations to be unreliable. With the help of the Houndify developers, we modified the SDK code to correctly identify input from an 8kHz wav file.
Furthermore, as our team is composed of Computer and Electrical engineers, we were relatively inexperienced with web development tools and strategies at the beginning of this Hackathon. Learning to utilize json, php, mysql, jquery, and javascript proved a continuous challenge throughout the event.
Accomplishments that we're proud of
With a limited background in web development, we are particularly proud of our web deliverables for DoublCheck. We worked together to become familiar with the intricacies of non-linear programming and solve problems as they arose. Additionally, we were able to incorporate (not one, but...) three(!) external APIs into our project.
What we learned
As primarily a hardware engineer, John had the ability to make his first deep dive into web programming. He learned the strength of php in maintaining data integrity and security, and he experienced the challenge of parsing a json file relative to an xml file.
This hackathon was Dave's first opportunity to implement the features afforded by APIs. Although previously familiar with their purpose and usefulness, this was his first occasion to put them to use. In creating DoublCheck, Dave worked with three different external APIs: Twilio, Houndify, and Plaid.
Catie gained experience with php and learned how to integrate php within other languages like xml. She became familiar with how to integrate APIs and specifically learned many features in the Twilio and Houndify APIs.
What's next for DoublCheck
Free tacos? :)
About Us
Dave, John, and Catie are all seniors studying Electrical and Computer Engineering at Purdue University. This is our first time at PennApps, but we previously competed as a team at the 2014 Purdue Boilermake competition. We also worked together in ECE 362, Purdue's introduction to microcontrollers course, to develop a motion-controlled RC car. After graduation, Dave will work as an Electrical Systems Integration Engineer for United Launch Alliance, Catie will work as a Software Engineer for ExxonMobil, and John will pursue graduate studies in Robotics Engineering.
Log in or sign up for Devpost to join the conversation.