Mobile Intentions
It is with great pleasure that I officially announce that I am now planning to begin the process of thinking about the initial development of KitchenPC mobile and tablet apps. In other words, the phrase “I need a mobile story… but now what?” has popped into my head recently.
The very first launch of KitchenPC included an extremely basic, and poorly thought out mobile solution (which was reachable at m.kitchenpc.com). Thinking I needed some sort of mobile solution prompted me to craft this web-based turd in the matter of a single weekend, and it ended up being used by absolutely no one. Seriously, I think it got about 0.000001 visitors per day. Though this mobile site was optimized for smaller screens, allowed basic scenarios like recipe search, shopping list management, and basic calendar functions, it was a flop. It suffered from a very common problem. Mobile sites are often just watered down versions of a real website, since most developers fail to look past any differences between the desktop and mobile beyond mere screen size.
Surely, a better solution needs to be devised that takes into account what sorts of culinary tasks people are actually doing on their phones. Surely, creating a mobile app that’s a straight port of the KitchenPC website would be an exercise in futility. Surely, I should stop calling you Shirley.
Brainstorming
Last night, I grabbed my dry erase markers and tapped them against my knuckles as I stared pensively at the massive 8×4′ whiteboard I have on my office wall. I started thinking about the types of features this awesome new mobile app would need. As I started writing down some ideas, it became clear after about ten minutes that I was repeating the exact same dumb mistake that I made before. I was enumerating all the KitchenPC features in my head and writing down the ones that I thought could potentially be useful on a phone; a scaled back version of the website. These included things like recipe search, adding recipes to menus, managing saved menus, adding recipes to the queue, creating a shopping list based on a menu, and more. I was also trying to add extra bells and whistles, such as voice search by ingredient, and sharing recipes between devices using NFC.
It became increasingly clear that I was looking at months of development time, and all to develop a product that would be a mobile port of what I already have today on the web. I really needed to take a step back and figure out what people are doing on phones. What’s the minimum viable product to create on a phone that will target these key scenarios? I was writing a version 1.0 product, not “KitchenPC 2.0 Now With Smart Phone Support”.
Take a Step Back
So, really now, what is the most basic mobile recipe app I can create? One that will insult users over the features it’s blatantly missing? When you hear users complaining that your app is missing features, only then do you know you’re on the right track; it means people are using it, they want to be using it, and reacting to these requests becomes consumer driven, not engineer driven.
Well, I need the ability to log on to KitchenPC, which means using an existing account, creating a new account, or logging on with Facebook credentials. Yes, log on is good. What else?
Shopping Lists?
One of the scenarios that miserably failed during the beta was a persistent shopping list. Turns out, no one wanted to manage their weekly shopping list on a desktop computer. Most people just write this on paper, or throw it together right before they leave for the store. Plus, the people who were using this feature complained that adding specific ingredients and amounts was somewhat of a hassle, as the database schema was normalized just as recipe ingredient data is. So, the current incarnation of KitchenPC has a “What You’ll Need To Buy” list whenever you’re looking at multiple recipes, however no real shopping list management feature.
Perhaps a mobile device is different though. People take their smart phones to the grocery store with them, and there are plenty of successful shopping list apps for every mobile platform. Using the KitchenPC back-end, I could easily build a very powerful shopping list app. This would be flexible, allowing NLP ingredient entry, storing arbitrary non-food items (such as “paper towels”,) and let the user cross off items after they were purchased. It could also use push-updates to sync shopping list changes instantly between devices that were logged on to the same account. This is a great example of a feature that’s designed specifically for mobile scenarios, rather than a straight port of a website feature.
My Menus?
One of the most powerful features of KitchenPC is the ability to organize recipes you find into various menus. This allows for basic meal planning (since you can create a menu each week, or a menu for a certain gathering or event) and also just lets you save your favorite recipes, grouped any way you wish. However, does this correspond to any mobile scenarios?
For meal planning scenarios, most definitely. Users who plan out recipes to make during the week need to be able to scroll through them while at the store and easily see what they’ll need to buy. I’ve also more than once found myself somewhat peckish while wandering the food aisles and wanted to look up the ingredients for a specific recipe. Allowing users to access their saved menus on their smart phone is definitely a primary goal.
Recipe Search?
All of my initial specs for KitchenPC Mobile have included a basic recipe search. KitchenPC is a recipe search engine, of course you’d need to be able to… like.. search for recipes on the mobile version, right?
Right?
However, recipe search seems to infect any spec I write, like a virus, slowly spreading into more and more features. Once you have recipe search, you need a mobile interface to define various search criteria. Keywords, meal types, ingredients to include and exclude. Then, users would start wanting some of the more advanced search options like time limits, ratings, pictures, dietary restrictions, etc. Then you’d need a results list, the ability to add results to menus, which turns into full menu management features (creating menus, managing the recipes within those menus, and removing recipes from menus.) Suddenly, you’re back to creating a mobile port of the entire website.
So, do people really need recipe search in the mobile app? I found myself leaning towards no. However, then one thing struck me. Cutting this feature creates a dependency between the KitchenPC website and the mobile app. The app is all of a sudden useless for first time users, as well as users who rarely use desktop computers. Without the ability to find recipes in the database, users can’t create menus. It would be useful as a shopping list app, if they wanted to type in everything manually, but there’s already myriad apps for this. Do I want KitchenPC Mobile to basically be an extension of the website? Probably not.
Obviously, I need an extremely simplified search feature, even if it just allows keyword search and nothing else.
Priorities
In the end, I decided to create a list of “must-haves” for the mobile site, which would enable the key scenarios I wanted to deliver. Then, create a list of “bonus features” or “nice-to-haves” that would extend those scenarios, or perhaps be on the road map for future versions.
Must-Haves:
- Ability to log on, create an account, and log off (Duh)
- Powerful and flexible shopping list feature
- At least a read-only view of saved menus, with perhaps a sample menu for new users
- Ingredient aggregation within menus, allowing users to see what they’ll need to buy at the store to make the recipes within a menu
- Basic recipe search (keywords only) and a results list that lets you save a recipe to a menu, or create a new menu
Nice-To-Haves:
- More powerful recipe searches, more on parity with the website
- More control over saved menus; moving recipes between menus, removing recipes from menus, creating new menus and renaming menus
- Queue feature (adding any recipe to the queue, viewing the queue and de-queueing recipes)
- Selecting individual recipes from search results or menus and seeing a real time tally of ingredients you’d need to buy
Next Step, Wireframes
The next step in the process will be defining the overall flow of this app. This includes mocking up wire frames, defining each screen, and figuring out how the features relate to each other. Since I know the basic scenarios, I know to make those tasks easy to accomplish using the fewest number of button clicks.
Hopefully, I can resist the urge to overly complicate the design. I’d really like to be able to get something together within a month or so, and get it out there for users to try out. Getting a tablet version out (which of course targets different scenarios, like in-kitchen use) is also important, and can hopefully be available for all the new tablets sold during the holiday season.
Comments? Wishlist features? Just want to talk about how you use your smart phone or tablet? Let me know in the comments below, or shoot me an email!