I had always envisioned giving my users the ability to contribute language translations for Yinzlate, but how do you really do that for an app that may not catch on?
I didn't really want to commit to a paid type of architecture for submitting language translations for Yinzlate because I wanted to be realistic and not start paying for something that may not be successful but be forced to stick with it because it's a paid app.
At first glance, the easy solution is to just add a link to email the developer and enter text what translation you would like to contribute. This is OK, but it's certainly lazy, isn't it. The ideal situation would be some cloud app that can submit this information and I can check up on from some client application I write. I'd love to use Windows Azure for this, but is it really the best idea? I know Azure tries to do a good job of making it easy to understand how much you will be paying per month but it's not that clear to me in this situation. It's at least going to cost me about $7 a month to do it with the technologies I want to use. Is that realistic for a $0.99 app that's probably not going to get much attention from the Windows Phone Store for marketing? I don't think so.
I'm a big fan of Yinzlate (obviously) and if I find that it is successful and could pay for something like that, I'd be happy to pay for those kinds of services.
Until then, I came up with a clever way to make the contribution feature feel like a first class feature of the application. I took the time to really develop the feature as if I were submitting it to some service like I stated. I'd like to walk you through the steps to show you how the user is presented with the option to contribute a language suggestion.
To get to the contribute page, you can simply use the main page menu option in the next update thanks to a user suggestion. For the version that is currently in the store, you need to select the "what should I say?" option from the main menu then "submit your own" from the suggestions menu. From there, you are presented with a new page with instructions and conditions on how to contribute.
The first step is to say the word or phrase in English you would like to suggest a translation for. This is the same interface that users are already familiar with in the application: the brown callout for you to press to start your translations. This consistent user experience was important to me and I feel that it really adds to the integrated feel of the feature. Once you have spoken the English word or phrase, it is added as the text of the button. To change this, you can just tab the callout again (just like the rest of the app).
The second step in contributing is to type what you feel the Pittsburgh translation should be for the speech you just entered. Just tap the brown callout, but this time you get to type the translation in. While the Windows Phone 8 speech recognition is fantastic, it's not going to pick up on your yinzer dialect, so we're not even going to try. Enter in your text, tap away and you're done with that step.
The third step, I try to cover myself a bit by giving some terms and conditions. Really, they are brief and honest, I'm no lawyer. This is just stating that I may use your contribution on yinzlate.com or any other applications from Yinzlate. Isn't that what you wanted anyway? I also wanted to mention that I may contact you by email about your contribution. I don't want to spam you, but if I have a question about your translation, I want the option to contact you.
The last step (that is just off the screenshot) is just a submit button. This is exactly how I would implement this feature if I were using some cloud service to send me a contribution, but I'm not using anything like that. I had you go through this whole step just to send me an email.
I know... after tapping that submit button you might feel a bit underwhelmed, but hopefully I have dulled the pain or whatever concern you have about sending an email by filling in the email for you. I was able to give you a native Windows Phone 8 experience to gather all that information, but I really gathered all of the information I need as a developer to add your submission and added that information to the email body.
I personally think that this is a great (free) approach to doing app submission ideas. It allows me to prevent those terrible submissions where a user may not give you all (or any) information in the email. Then you can't really help them without contacting them to explain what they really want, and neither party really wants that interaction. This way, as long as the user does not modify the request, I'm getting exactly what they requested and I can implement it in a matter of minutes and eventually submit an app update.
I think it's a rather clever idea for doing more with less. By that I mean, more useful, and user centric features for less cost to the developer. That's a win for me.
What do you think?