Just submitted my Locavore app to the iPhone App Store. It will most likely be available in the next week or two. To be notified of when exactly, follow @enjoy_locavore on Twitter.
So, as you most likely know, it’s an app that determines where you are, and then shows you what fruits and vegetables are in season where you are. And around that idea are a couple other interesting ideas:
- Sorts fruits and vegetables by how much longer they’re in season, so you can appreciate the carrots, or whatever, now, before you spend the rest of the year without access to super fresh carrots.
- Shows you farmers markets near you, thanks to the lovely cooperation of LocalHarvest. They were kind enough to let me access their data, and I look forward to finding more things to do with it.
- See a map of all the states a given food is currently in season in, thanks to Google’s awesome Chart API.
- Browse by food (I have 237 different kinds in the database).
- Browse by state to see what’s in season in other parts of the country (right now, we’re limited to US-only data).
- Find out more information about any food with a direct link to the mobile Wikipedia page.
- Find out what recipes are popular for a given item with a direct link to epicurious.com’s search results page (I do wish there was a more iPhone-friendly source for this).
All expertly designed by the very talented Matt Hickey.
Here are a few screenshots:
The interesting thing in my development of this app was that sometime last week I realized that the way I was building the interfaces wasn’t going to scale. I was using Interface Builder to designe the table cells for various screens, and it turns out that this method of design doesn’t scale to tables that have a lot of rows. And so my app became sluggish as a slug.
But after some internet research, I found an entry by the creator of Tweetie that explained in nice detail about how to speed up table scrolling. A couple other entries that were useful were this one from stackoverflow and this one from rudis.net. Most likely, if you aren’t an iPhone developer, you’ll have no idea what they’re talking about so there’s no need to click. But in my slowly developing studies, I find articulate developers like these people invaluable.
Patterns of iPhone apps that I enjoy
I love collaboration. And this app in particular has been a great act of collaboration. From Tattfoo who gave me permission to use the collection of colors that he collected from different fruits and vegetables. To LocalHarvest (a wonderful site that’s 10+ years old and has the most comprehensive database of farmers’ markets in the US, and so much more) who opened up their data to be used in the spirit of increasing awareness of how to find locally grown foods. To Google’s generous creation of map-making APIs and reverse geo-coding web services. To the various sites and sources that gleaned data about what’s in season when and where. To the stock photography websites that allow, in many cases, free use of beautiful images. To Wikipedia for creating a beautiful mobile version of their site. To the creators of iphoneonrails.com. The only true contribution I brought to the table was glue.
I love simplicity. iPhone apps lend themselves to simplicity. Do something simple, do it well, and do it in an aesthetically-pleasing way. From the iPhone app itself, to the Objective-C programming language, to integration of Xcode, the iPhone Simulator, and Interface Builder, to the simple constraints of screen size, computing power, and human interest, everything about iPhone app development rewards the beauty of simplicity.
I love small projects. I love that one or two people can create an app. It doesn’t take a team, or a company, to take on an interesting idea and make it happen. $99 is all you need to get all the tools to build an app. You don’t have to host the code, or find a way to charge for it, or find a way to sell it, or anything, really. You build it, you upload it, you choose a price (or free), you wait for the reviews and feedback to come in and you continue to improve upon it. It’s really truly amazing.
I created a new twitter account (@enjoy_locavore) to talk about news, updates, and whatever else Locavore related. Add it if you want. The twitter account is also built into the app so that users of it can always see what the latest developments are.
It’s such a tiny little world all to itself, and I hope that my little contribution to the idea of learning to enjoy food that is local is at least a little bit useful.