Inspiration

The inspiration for this project came from the shared college student experience - a lack of sleep. As evidenced by the copious amounts of Monster and Root Beer that everyone at Boilermake was consuming, sleeping problems are no joke amongst college students of all ages, and getting up early for classes can often feel like a super-human effort. In fact, it's probably not a stretch to say that almost every student on campus has, or will, miss a class at some point in their college experience due to the cozy, yet dangerous combination of the snooze button and sleep deprivation. Luckly, we have just the solution!

What it does

ShakeAwake, as the name might imply, uses motor control systems and the onboard accelerometer to detect shaking of the phone - which is in turn required to disable the loud, annoying, yet highly customizable alarm the application blasts. The core idea behind it? If you're forced to do a little bit of rapid exercise in the morning in order to avoid annoying your roommate, you'll be up by the time the first alarm is done.

How we built it

The development process of our application took place using three key technologies. The primary development language was in Java, with bits of xml for front-end editing sprinkled here and there. Our team of three then forged these languages together in android studio - using our phones and emulators to test the different parts of the application. During the programming phase, we'd also rotate on and off of programming to the design portion of the application, using tools such as Gravit and pen and paper to sketch out mockups of screens, and eventually even the final vector art used for the application.

Challenges we ran into

Now the key thing to take away from there is that we're a team of three, three freshman who have limited experience with android studio. However, we didn't let this stop us, and instead of sticking with tools to that we were familiar with, we decided to branch out and try our hand at something new. Because of this, we ran into lots of bugs, build issues, and all-around annoying errors that we didn't quite understand, but were determined to overcome, nevertheless.

Accomplishments that we're proud of

With that said, every time we squashed a bug or fixed a dependency issue, we got a huge boost of confidence and doubled our efforts towards our next objective. In particular, the products that we were really proud of were the interactive animations, the accelerometer controls, and the overall look and feel of the application.

What we learned

Through this, we obviously learned a lot about Android Studio and mobile application development for android systems. However, we also learned just how important segmenting work and defining roles can be. By having each of us primarily responsible for different aspects of the code (Chris - Animations and fragments, Leo - Back-end and motor controls, Brayden - Front-end and UX) we were able to get honest opinions about each other's work, isolate any issues that arose, and ultimately provide 2 fresh pairs of eyes to every problem.

What's next for ShakeAwake

As for what the future of ShakeAwake looks like, our entire team plans to put the fully functional application to use in the coming days as we recover from the lack of sleep due to Boilermake. After that, who knows, maybe we'll even be able to spread the ShakeAwake revolution to the rest of Purdue and beyond!

Built With

Share this project:

Updates