Talks

How Rails helps make cooking more fun in Japan

How Rails helps make cooking more fun in Japan

by Masahiro Ihara

The video titled "How Rails helps make cooking more fun in Japan" presented by Masahiro Ihara at Rails Conf 2012 discusses how Cookpad.com, the world's largest recipe website, leverages Ruby on Rails and AWS to enhance cooking experiences for users in Japan. The main mission of Cookpad is to inspire happiness through cooking, which it pursues with a dedicated team of engineers and employees. The company, founded in 1997, has evolved its services based on user feedback and systematic development practices.

Key Points Discussed:

  • Company Overview: Cookpad is headquartered in Tokyo and employs around 100 people, including 40 engineers focused on improving development speed and services.
  • Development Philosophy: Emphasizes a user-centric approach, continuously gathering feedback to create valuable services. Engineers conduct interviews and build minimum viable products to validate ideas early.
  • Culture and Values: The company promotes principles around user empathy, the practical application of technology, continuous improvement, and honest communication. This helps engineers to focus on features that genuinely benefit users.
  • User Engagement: Cookpad serves approximately 15 million unique users monthly, primarily Japanese women in their 20s and 30s, with a vast library of over 1.1 million user-submitted recipes.
  • Technological Framework: The platform is built on Ruby on Rails, using agile methodologies to develop features swiftly. They employ open-source software and tools like a remote specification testing framework to optimize development and deployment.
  • Response to Crisis: After the 2011 earthquake and tsunami in Japan, Cookpad quickly adapted by creating a category for recipes that required minimal resources, allowing users without cooking facilities to prepare meals. This initiative highlighted the platform's role in helping communities during times of crisis.

The primary takeaway from the session is that technologies such as Ruby on Rails can significantly enhance user experiences by enabling rapid development and systematic feedback loops. Cookpad's example illustrates the impact of combining technical infrastructure with a strong community-driven mission in making cooking enjoyable and accessible in Japan.

00:00:05.920 Hello everyone!
00:00:27.359 Cookpad has a very clear mission: to make people smile by inspiring them to enjoy cooking. We want to create enjoyable cooking experiences for people all over the world in any way we can.
00:00:52.239 Let me tell you a little about our company. Our main office is in Shirokanedai, Tokyo, Japan, close to the center of Tokyo, next to the lush greenery. On a sunny day, we can see Mount Fuji from our office.
00:01:15.840 Cookpad was founded in 1997, and for 14 years, we have been dedicated to our mission of making people smile through cooking. This mission has never changed, and we continue to work every day to make cooking more enjoyable.
00:01:34.640 We have about a hundred employees, with 40 of them being engineers responsible for our infrastructure. They play a crucial role in speeding up our development processes and ensuring stable deployments.
00:01:46.640 For example, they upgrade the version of Rails we are using for better stability or conduct pair programming with other engineers. They take their responsibilities seriously to ensure smooth collaboration across teams.
00:02:18.239 An interesting aspect is that one of our services consists of about 800 models, and around 40 engineers work collaboratively on various applications daily. It's essential for everyone to be invested in the code to foster quality contributions.
00:02:47.120 Our team comprises talents from many parts of the world, including Japan, France, Hungary, Jamaica, China, and England. We value this diversity in our culture.
00:03:11.200 Our main goal is to build a great company and a great product, continually delivering happiness to our users. Our engineers work closely with ideal users and conduct interviews to create minimum viable products for testing and feedback.
00:03:35.120 This approach mirrors the lean startup methodology, and we encourage all our employees to be adventurous and exploratory. We focus on finding out what we should primarily concentrate on by using a three-circle framework.
00:03:55.680 This framework helps identify the intersection between doing what you love, what you are good at, and what users will pay for. By centering our focus there, we can achieve greatness.
00:05:00.240 Cookpad has a manifesto for our engineers, which guides their behavior. It consists of six key elements. The first part emphasizes the importance of being user-centric, as our passionate users are crucial for solving their problems.
00:05:52.160 Our second principle revolves around technology; we strive not just to build cool features but to focus on solving our users' problems. It's common for engineers to want to implement amazing features, but these may not always be what users actually need.
00:06:20.319 Our third principle focuses on skill; it's essential to know what you're best at and become a leader within that field. When you excel, your peers and users benefit from your expertise.
00:06:50.800 Our fourth principle emphasizes action – we encourage continuous efforts to ensure that other engineers can efficiently provide value. Small actions, like taking the time to ensure your code is clear and well-organized, have significant impacts.
00:07:09.440 We also encourage honesty and regular self-reflection. Being fearless of speaking up and making mistakes is vital for growth and improvement.
00:07:28.639 Lastly, our communication should be based on concrete decisions supported by real metrics instead of assumptions. It's better to build a quick prototype for user feedback than to overanalyze in discussions.
00:08:05.199 What we aim for is to keep a strong focus on our users and recognize that technology's purpose is to find and solve real-world problems.
00:08:44.399 Cookpad.com is a recipe-sharing service that is accessible on all devices. This accessibility is crucial for our users who may want to access Cookpad on PCs, smartphones, or tablets while cooking at home or shopping.
00:09:15.600 Cookpad offers three main features. First, the recipe authors can upload their recipes and share them with everyone in the world, making use of user-friendly editing tools and displaying their recipes beautifully.
00:09:45.279 Second, users can search for recipes they want to cook from the public menu and can showcase their creations by uploading photos and comments.
00:10:10.000 Cookpad collects feedback from users in the form of ratings, which enhances the recipe's visibility and success. Notably, our most popular recipe has garnered around 8,000 reviews, showcasing active user engagement.
00:10:32.399 Users feel proud of their culinary creations and sharing their cooking experiences through feedback encourages a positive atmosphere. We strive to help talented individuals express their cooking skills through sharing recipes and engaging with the community.
00:11:06.399 Currently, Cookpad has approximately 15 million unique monthly users, producing around 500 million page views across all devices. Interestingly, half of regular users are Japanese women in their 20s and 30s.
00:12:18.560 I would like to share a significant event in our recent history. Last year, Japan experienced a devastating earthquake and tsunami that affected many lives.
00:12:34.560 Many people lost their homes and faced hardship without access to basic resources like electricity or food. In response, our employees began brainstorming ways to assist those in dire situations.
00:13:00.000 We initiated a new category featuring improvised recipes that required minimal ingredients and could be prepared without traditional cooking facilities. This initiative allowed our users to share ideas on how to make meals with the resources they had.
00:13:30.000 For those who had electricity but no gas, we suggested ways to cook with microwaves instead. As our users began to contribute, it created an invaluable repository of recipes tailored for those in need.
00:14:00.000 Our platform allowed users to post recipes that required no running water or special appliances. The immediacy and accessibility of our platform enabled many to nourish their families during a critical time.
00:14:22.800 Cookpad showed how technology can play a vital role in supporting people through crises by connecting those who want to help with those who needed it most. The enthusiasm and support of our community were remarkable.
00:15:17.519 We encourage our employees to enjoy cooking daily, providing an open kitchen in our office stocked with various ingredients for all to use. We even reimburse employees for some cooking expenses, making it easier for everyone to share meals together.
00:15:50.480 Our company culture revolves around collaboration and sharing, and we believe this nurtures a sense of community among our employees.
00:16:05.600 At Cookpad, we heavily rely on open-source software and choose technologies that enhance our capacity for rapid prototyping. The primary goal is to develop features quickly to discover what brings real value to our users.
00:16:42.560 We use the Rails framework to develop Cookpad, upgrading from Rails 3.0 to 3.3, and Ruby versions as needed. This flexibility allows us to innovate and deploy new features effectively.
00:17:15.919 Our infrastructure operates entirely on AWS in the Tokyo region. This cloud approach has significantly accelerated our ability to scale and build new servers without managing physical data centers.
00:18:00.480 For search capabilities, we use Solr, which provides efficient methods to implement features like dynamic fields. Our flexible development framework allows us to quickly adapt and test new functionalities.
00:18:47.679 We've also introduced feature testing through a simple extension framework that helps us try out new features with limited users without affecting the broader audience.
00:19:23.840 Introducing new features was previously a challenge due to our large user base. However, we can now test hypotheses in a controlled environment before launching them widely.
00:20:03.679 As we develop and deploy changes, we continuously improve our user experience, ensuring that features are valuable and do not overwhelm our users.
00:20:50.639 Additionally, we've revamped our data management practices, utilizing tools like Git for our codebase and seamlessly integrating testing protocols to maintain code quality.
00:21:35.680 We are committed to openly sharing our improvements and contributions to the coding community, enhancing our collaborative efforts with developers worldwide.
00:22:22.560 As we continue this journey, we aim to provide even more happiness to people across Japan and the world, emphasizing how we can leverage technology for societal benefits.
00:23:10.560 I would like to thank all of you for your support in this mission. Cookpad is honored to be a platform that brings joy and enhances culinary experiences in everyday life.
00:23:45.760 If you have any questions or would like to learn more about our initiatives, please visit our booth or reach out to anyone within our team.
00:24:18.560 Once more, thank you all for your attention and support. Together, we can keep improving and spreading happiness through cooking.