Everyone loves free food, especially college students low on meal swipes. We love giving and receiving
free food so much so that the students of Cornell University created a group chat in GroupMe with
over 3K members
and dozens of messages every day
solely to share about free
food offerings on campus.
People use this group chat for mainly four reasons:
- Finding when, where, and what kind of free food is being given out on campus
- Publicizing student organizations' events
- Asking whether the food has run out or is worth the trek/wait
- Getting rid of leftover food
However, there are also problems with this method of communication.
Typical message content
Confusion about location and time
The chat is cluttered with irrelevant content (people leaving and joining)
Members cannot filter the notifications from a group chat, so most members that I spoke to have the group
on mute and rarely check the messages. The chat also includes a lot of irrelevant activity, such as people
joining and leaving the group. Ultimately, the group is an overload of information that makes it hard to digest.
From the conversations I had with students, I learned that people won't go out of the way or plan ahead to
get free food, but it is a good way to save money or get some light fuel throughout the day.
People want free food that is convenient for them, and student organizations want to attract more people
to their events by providing food. But, this is hard because:
It's hard to find offerings nearby or on the way.
The group chat is annoying and cumbersome to keep checking.
So, for the three-week
CU AppDev Hack Challenge
, my group set out to create a way to:
- Easily find and sort through all of the convenient free food events offered
- Better organize how information about free food is delivered so people can quickly scan for relevant information
- Update event info in real time
To replace the free food GroupMe, our app had to be organized and easy to understand. We brainstormed different features
such as a map or a calendar, but ultimately decided to keep the interactions and screens simple with just a main feed.
Framework for our ideas
I read through many messages and food postings in the current group chat and evaluated what content delivered the most
clear and information to people. Then, I also spoke with students about what information they care about when browsing
these events. Once I had an idea of the content that is absolutely essential and extra content that could be optional,
but still helpful, I laid out the quick-view for the main feed as well as a detailed view.
Information displayed for each event in a consistent, easily scannable format
I also created a UI kit to establish a clear hierarchy throughout the app.
Next, I decided how to organize the main feed. To simplify and streamline the app, I knew we wanted a
main feed of upcoming event sorted by those happening soonest. Free food is usually a spontaneous decision,
rather than a planned out meal.
But, since users experience frustration when messages get lost or buried in the current group chat, we also
wanted to allow users to save an event to easily find later.
Besides upcoming and saved events, another distinct type of event is those created by the user.
A user might want to update or end the event to let people know food has run out. I explored various ways
to separate and organize the user's own events so that they can view, edit, or update them.
I originally proposed option A and split the feed into three tabs. But, the "By Me" tab would often
be empty and useless for many users who do not post. It felt to heavy to have an entire tab dedicated to this.
Option D's bottom navigation is similar to A, except I changed the "Events By Me" page into a user profile with added features.
In an ideal world, this would provide the most functionality with the option to set a user's notification
preferences. However, due to our limited time for this hack challenge, I decided that C would allow for easy
access to the events created by the user without an entirely separate page.
We won something! 🎉
At the end of the semester, our team won Judge's Choice from the Cornell AppDev judges!
Our team and mentors: Kevin Chan (mentor), me, Yuxuan Chen, Haiying Weng, Leo Liang, and Conner Swenberg (mentor)
During the Hack Challenge, I treated this project as a 3-day design sprint to give the team most of the time to develop.
This case study is a redesign I did out of interest.
You can view our github and final submission
based off of my earlier designs.
This project started as a silly and fun idea thrown out during our first brainstorming session, and turned into a very rewarding
project. It was my first time ideating and designing an app from start to finish. Though we were not able to
implement every feature desired (such as updating events and notifications), there were many lessons learned!
- The importance of communication. Our team was made up of busy students getting through midterm
season, so communication was critical. Making sure we met in person and held each other accountable was the main reason
we were able to ship an awesome product as beginners during a busy time period. 😊
- Working with constraints. The biggest constraint for this project was time. My team was concerned about
finishing the project on time on top of their other responsibilities. So, my top priority was getting the designs ready quickly.
I also had to work with engineering restraints, since some of our desired features were outside of the scope of the engineers'
knowledge as first time app developers.
- Taking ownership. My group members spent the semester learning how to engineer an app, but had
no exposure to how product design plays into creating a successful and intuitive product. I learned to explain my thinking
and process, and to back up my design decisions with reason and intentionality.