When you’re starving, and you need to cook dinner, where do you go to search for recipes? Apparently, nearly 100 million Americans head to social media for inspiration. But with 1.1 billion #instagood posts flooding our feeds, it can be inundating to find recipes that are tried and true and recommended by the people we trust.
Now, assemble four CS students (who are also foodies and chefs) and you get Fond – a social media application built for those looking to find and post recipes without the need to search through #dogsofinstagram and #gym posts.
“Not only did you build a great app with a really great focus on user needs and what would be useful to people, you made an amazing video. Overall, start to finish, the production value and the way you thought about the way it could monetize, the way you presented and communicated about your work, we could tell that you really loved it and we are all really impressed with the quality of this product.”
Connie Yang – Design Leader at Stripe
To learn more about Fond and the team behind the application, I sat down with Kat Kim, Gavin S, Karen McFarland, and Mae LaPresta to learn more about them and their vision. (Note: minor edits have been made for brevity and clarity.)
Questions are in bold, while team Fond’s answers are italicized.
Tell us about the motivation behind Fond — what problem were you aiming to solve and what triggered the idea?
Well, we’re all foodies and several of us are great chefs. Gavin had initially brought up the idea of doing an application related to food. The initial concept was to enter ingredients that you had on hand and see the available recipes. However, after doing some market research and interviews, it was obvious that individuals wanted a food-related app with more social media focus.
What steps did you take to define the scope of the application, and how did you prevent scope creep?
When we started, we were all really concerned about capturing the needs vs the nice-to-haves. We used a Slack app called Poker Planner to vote on all the features and Karen spent a lot of time documenting and rating the features as required, nice-to-have, and stretch. We also voted on user stories and discussed them in detail. Finally, we spent a lot of time discussing the MVP before we started coding to ensure that we were all on the same page.
The team was on 3 separate time zones. How did that work for you?
We think the fact that we are all post-bacc students with industry experience had a significant impact on how we worked together, even in different time zones. We initially decided on and set up our infrastructure (what tool we would use to communicate, what phone we would use for emulating, etc.) so that we were all on the same page from the beginning. We did run into some roadblocks, but we quickly worked through them.
What new technologies and/or tools did you have to pick up and learn in order to accomplish your goals?
Each of us had experienced different tools and technologies coming into this. Karen, Mae, and Gavin were all new to Java. Mae helped the rest of us learn how to effectively use Github. Retrofit was new to all of us.
Why did you choose to take the iOS course vs. the Android course?
We all use Android and Kat was looking to improve her Java skills.
So, tell me about the roadblock(s) and how you overcame them?
A major roadblock for us was when we implemented round-robin code reviews. We found that we would end up waiting for the individual assigned to review and commit the changes. We overcame this by allowing anyone that was open to do the review and commit the changes. Our mentor, Yaov Gray (a senior Android engineer at UberEats) did a great job by giving us the breadcrumbs we needed to overcome our challenges.
How was the team set up and how did the team dynamic play a role in the success of the application?
Karen actually set up the team. We had never met each other in person, but we all attend Oregon State University. The team dynamic was great. We actually switched Program Managers each week which gave us the opportunity to try out different leadership styles. It also worked well with our personalities and schedules.
You mentioned that you are all post-baccalaureate students. What did you all study prior to taking on a Computer Science Degree at OSU?
Kat – Economics
Karen – Urban and Regional Planning and Analysis
Gavin – Economics
Mae – Electrical Engineering
Looking back on the semester, about how many hours per week did you spend learning and developing your application?
We all agreed on spending 5-10 hours per week. However, it was likely much more than that for each of us.
Where do you see the application going? Can we get some insight on Phase 2? Phase 3?
We love our app and we have a lot of ideas on next steps that we would like to keep as part of Intellectual Property. We do plan to push it to the store at some point after testing the app and getting some user feedback.
Tell us about your experience with CodePath, the course, instructors, and the community.
There are so many CodePath evangelists and the organization is often referenced in our OSU Slack channels. Mae had already been involved and had taken previous courses. Karen had heard about it from Kat and both Kat and Gavin had heard about CodePath by word-of-mouth.
We are living through some unprecedented times. Covid-19 has impacted all of us individually and collectively—What kind of challenges, if any, did Covid-19 create during your course?
It really helps to have online communities. It was nice having something like CodePath to give us something interesting to do and help keep us focused.
You’ve learned some valuable lessons and added new tools to your resume—What’s next? Where do you see yourself working or what is your dream job?
Kat: I know this is very specific but I want to build augmented reality tools for going to Mars.
Karen: I’d like to be a Machine Learning Engineer.
Mae: I really enjoy being given a problem and working to solve it so anything that allows me to do that.
Gavin: I think it would be interesting to design and develop APIs.
Kat, tell me more about this very specific career goal of yours? How did it come about?
My dream in life is to be part of missions that push humanity forward. I believe one of those missions is putting humans on Mars. I will never be an astronaut, myself (the idea of dying in space is terrifying). But for those that are brave enough to take on the mission, I’d like to support them. Thanks to Mars rovers (Curiosity, Opportunity, etc.), we’ve mapped out the Mars terrain pretty well. But, we’ve never experienced the topography in person. Constantly looking down at one’s navigation tools would be dangerous – one misstep could be life threatening. With that in mind, I’d like to work on helmet-embedded augmented reality to help astronauts navigate the Mars terrain safely. Sort of like a Google Glass for Martians, if you will.
Where did that come from? Welp, I’m a huge science fiction nerd, and that’s the type of stuff we like dreaming about.
What is one piece of advice that you would give yourselves if you could go back to day one of your semester?
Make sure that we do the Stretch Stories.
The unit assignments are a good start with step-by-step walkthroughs, so they’re an excellent way to get initial exposure to a concept like the recycler view. The stretch stories don’t come with as much hand-holding as the assignments, and they usually apply the concepts we’re learning in slightly different ways, so they’re a good litmus test to make sure you’re actually learning the material.
Finally, what advice would you give the reader if they are interested in CodePath?
Just Do It! Also, the remote class does not have a lab but we recommend that you recreate the experience of having lab sessions as a team.
Fun question – if all four of you met in person and had to plan a dinner party, what dishes would you make?
Check out the Fond project on GitHub.
Kat, Gavin, Karen, and Mae completed CodePath’s Android mobile development class. To learn more about CodePath’s Android course and other curriculums, please visit https://codepath.org/classes.