Over the past few years, Evernote has become an essential part of my life. Although I use it often, I regularly see myself complaining about how unwieldy it can be, especially on mobile devices and with attempting to create non-textual notes. Hedgehog aims to provide most of the same functionality as Evernote but in a heavily streamlined UI/UX package that is heavily influenced by Snapchat.
What it does
Hedgehog is designed to streamline the personal note-taking process into a sleek and efficient process. It greatly simplifies that visual note taking process into approximately 2 screen presses (excluding those needed to open Hedgehog).
How I built it
Hedgehog is written entirely in Java using the official Android SDK. It utilizes the Android Support Libraries in order to maintain as much compatibility as possible to previous Android releases while also providing a modern user experience.
Challenges I ran into
My primary challenge was getting the Camera to work properly. Hedgehog was the first Android project in which I've interacted with the Camera and thus, it took me some time for me to get it working to a point that I'm fairly happy with (I rewrote the camera fragment approximately five times throughout Saturday). I'd also planned to add support for video recording and playback, but unfortunately, it was for more complex and time-consuming that I had anticipated.
Accomplishments that I'm proud of
Although I wasn't able to achieve all my goals for Hedgehog that I'd planned to implement during PennApps, I'm satisfied with the amount of work I was able to do especially given the fact that this project far surpasses anything else I've done in the realm of mobile development.
What I learned
For one thing, I've learned that mobile development is far harder and challenging than most people believe it to be. I also learned about the Android camera APIs and their intricacies.
What's next for Hedgehog
Although in it's current state, Hedgehog is extremely hacky, I firmly believe it has a market potential. Thus, I will be continuing to develop and expand it in the future. My current plans are to add cloud synchronization, video notes (which I attempted, and failed, to add during PennApps), note sharing, and several other small and large features. I may even write iOS and web clients at some point in the future.
Bonus: Why is it named Hedgehog
Because hedgehogs are super cute... And because it was the first thing that came to my mind when I was figuring out a name for the project. Plus they're super cute!