Motivation & Necessity
In the U.S., nearly 30-40 percent of food is wasted while 15 percent of U.S. households are food insecure.  Food waste makes up a large proportion of landfills in the U.S., contributing to 14 percent of US greenhouse gas (GHG) emissions.  The economic, social, and environmental consequences are staggering. Globally, 1 trillion USD are lost to food waste per year. The social costs from preventative health care to government subsidies are close to USD 900 billion, and the environmental costs are close to USD 700 billion. 
At the University of Washington (UW) in Seattle, Washington, Human Centered Design & Engineering (HCDE) student, Madison Holbrook, and HCDE faculty, Irini Spyridakis co-led an interdisciplinary nine month research and design project with 33 Bachelor’s and Masters’ students from HCDE, the Paul G. Allen School of Computer Science and Engineering, and the Information School, to build open source, donation matching software to aid in food recovery work.
Donation matching software is critical in providing information about food donation availability and it supports community partnerships from donation sites to receiving sites to delivery groups. Currently, some UW dining halls work with food delivery groups to transport left over food to non-profit agencies, but struggle with reliability, transparency issues, resources, and time.
Food Recovery Programs
A few key facts to take note of include the following:
1.2 meals are created from each pound of left over food recovered (ReFED).
Transportation of food is one of the larger pain points in food recovery work.
Many large institutions, including the UW, have needs that are not fully addressed by existing apps or food recovery programs.
Smaller donations (under 50 pounds) are costly for food recovery organizations to pick up and deliver, leading us to tap into students signed up for service learning credits as deliverers. (See our "Facts" page for more on the social, environmental, and economic costs.)
We have been addressing these issues by building an interactive, responsive, open source website, Meal Matchup, to connect stakeholders and pair up left over food from UW dining halls with non-profit agencies in need, and facilitate the transportation of food with the help of UW students who register for service learning credits and deliver the food.
According to ReFED’s rankings of 27 methods of food recovery work, donation matching software like Meal Matchup ranks 3 out of 27 methods after donation tax incentives and standardized donation regulation in food recovery work (see bar 4 in Figure 1).
Further, the Environmental Protection Agency identifies feeding people in need of food as the second most important component in proper reduction and disposal of food waste from their six component food recovery hierarchy below:
Source Reduction: Decrease the amount of food produced/needed.
Feeding People: Feed hungry people with excess food.
Feeding Animals: Feed animals with food scraps.
Industrial Uses: Convert waste oils and scraps to energy.
Composting: Bring food waste back to the soil.
Landfill: Incinerate food waste as a last resort.
We completed a successful pilot with two shelters and three of the larger dining facilities on campus in May 2018 along with the assistance of service learning student deliverers from the College of the Environment. We plan to launch the project in full in Autumn 2018.
We employed numerous user centered, participatory methods to research, design, build, and test Meal Matchup with the help of students, industry and academic advisory boards, UW Housing and Food Services, and the generous support of the UW Campus Sustainability Fund. For more on our research methods and tech stack, please see below.
We employed six user research methods to design and build Meal Matchup. We also developed training and evaluation materials, and created a sustainability plan to ensure longevity and transferability of the project.
Contextual inquiry: learned about best practices in handling food delivery logistics: e.g., types of bags and bins, set-up, number of people needed, temperature monitoring, safety regulations.
Competitive analysis: researched more than 15 existing apps to understand food recovery efforts and constraints, advantages, designs, and best practices.
UW student surveys: received 78 online responses and conducted 5 in-person interviews, both for understanding volunteerism motivation, behavior, and food waste concerns.
Interviews: interviewed 4 dining hall managers and 50 shelter and food bank managers concerning food recovery efforts, constraints, pain points, and receptivity to websites or apps as tools for aiding in food recovery work.
Participatory design: engaged with 4 managers from the largest dining halls at the UW, 3 shelter managers, and 16 students whom we worked with concerning the design and development of specific website features and the site’s interaction flow.
Usability tests: conducted iterative, in-person usability tests with 4 dining hall managers, 3 shelter managers, and 16 students to test and iterate upon our design so to best serve our users.
Collaboration Tools & Tech Stack Approach
To design the website, we used Figma and Slack for design and collaboration tools, and to build the open source website, we employed the following tech stack:
React.js for front end implementation in order to have reusable, composable, and stateful components
Firebase to provide built-in functionalities
The Firebase Realtime Database uses data synchronization; every time data changes, any connected device receives that update within milliseconds, which is required for the best user experience. Meal Matchup employs a real time database to display up-to-date information, allowing concurrent users to modify data in real time.
Built-in Authentication allows for design of different user groups and is an essential part of this project. Being able to create accounts and authenticate users is an important functionality. With its ready-to-use UI libraries for authentication, we can reduce development time and leverage industry standards like OAuth 2.0 and OpenID Connect.
Cloud Functions in the project require certain server-side functionalities. The Cloud Function feature allows us to have a “serverless” architecture. Google manages all servers that run our code.