It all Started with an Egg and an Egg-centric Idea.
Everyone has time. Not everyone has time maneggment. As newly hatched college freshmen, we felt it was important to create an effective and light-hearted way to make time allocation and prioritization easier and simpler for busy people.
We were inspired by an age-old demonstration on prioritization. In many videos, we see motivational speakers fill a jar with some arbitrary large, round objects, representing the important tasks for the day. Then, they sprinkle in sand to fill in the cracks, representing one’s “free” time. If the “important tasks” enter the jar first, the “free tasks” can trickle in, and everything fits in the jar. However, if one expends their time on tasks of lesser importance first, they will fail to keep their jar from overflowing. If we think of our daily responsibilities in the same manner -- that is, to fill up our day with our bigger, more important tasks first -- we will be more efficient and productive throughout the day.
Not all Eggs are Made Alike.
When prompted, a user can type in their daily tasks and assign a priority level to each one, ranging from 1st priority, high priority, medium priority, and finally to low priority. Each level is represented by eggs in varying sizes and quantities. The user will enter activities throughout their day, and assign them a priority level. The app does not create an inflexible schedule for the user, but rather, encourages the user to think about how they are spending their time. For each activity, based on the number of activities and the priority level of each, a specific number of eggs will be allocated: large for first priority/high priority, and small eggs for medium/low priority. If the user fills up the jar with their small eggs first, they will not be able to fit the rest of the eggs in the jar. The goal is to fill up your jar (your day) with the larger eggs first (first priority tasks), then, when those tasks are completed, you move on and add your other eggs to the jar until it’s full but not so much that the eggs spill over.
An Empty Jar.
Not all things were sunny-side-up -- 12 hours before Dubhacks, all of us knew close to nothing about XCode, Swift, or app development in general. In the days prior to our project development, we put all our eggs into one jar and learned the ins and outs of Swift, acquiring the skills necessary to create an egg-xcellent product.
The development all started with our trusty search engine. We learned about placing, manipulating, and connecting objects in the built-in storyboard within XCode. Soon after, we learned the syntax of Swift, developing basic skills on programming buttons and other features, our trusty tutorials in hand. With our past experience in other programming languages, we learned to adapt to Swift, searching for patterns and connections to other languages. First, we took to pencil and paper, creating a flowchart of tasks while drawing out templates for our app. After designing a basic outline for our app pages, creating buttons, labels, and objects, and implementing graphics, we took to the Swift programming language to allow for user interaction, collect user data, and create a guide of events for the day to follow. And of course, with CAD in hand, we printed our eggs of two different sizes for the user to aim to fit into their jar of daily life.
Not Always so Over-easy...
For the first time, all members of our team took a deep dive into XCode, Swift, and graphic design. Learning the new syntax, creating an aesthetically pleasing user interface, and implementing objects with one another served as moderate hurdles. However, the biggest challenge was found in collecting and storing data from the XCode ViewControllers. Sharing data between views was not as simple as in other programming languages, and we found ourselves stumped for hours at a time on multiple occasions. The scope and process of instantiation resulted in a number of frustrations. But, of course, what would be the point of tackling a brand new project if not willing to learn from mistakes and challenges?
Our Egg-xceptional Accomplishments
Learning a brand new language and environment within less than a 48 hour period serves as more than enough to motivate our future strive for projects and success. However, in addition, we are most proud of overcoming our obstacles throughout the day and night. Taking to the internet to solve complex debugging issues with data and object instantiation proves that barriers of “in-egg-xperience” are not a reality.
Egg-xtending Beyond Dubhacks...
In terms of this project, there are more features we would like to implement, including means of displaying, visualizing, and analyzing user data so they can view their progress. Unfortunately, we lacked the time to develop the iOS app for other devices than the iPhone 11, so we plan to address potential comparability issues in the future. In addition, we would like to collect user data over time to show them how they have progressed in managing their time, and connect users to a cloud service so they can "compete" with each other, earning priority points, turning our useful app into a fun game!
As freshmen here at U.W., we will definitely continue to pursue our own personal projects, but we are also looking forward to participating in more hackathons in the future. For us, Dubhacks 2019 was not only a chance to learn a new language and hone our technical skills, but we became incredibly close as a team, and this has made the experience incredibly valuable to us.
Although things weren’t always over-easy, we persisted through this egg-xhausting, yet incredibly fun and egg-xceptional weekend!