Tech in the 603, The Granite State Hacker

#RandomAppOfKindness #PayItForward #WPDev Challenge

Yesterday, I happened to be at the Panera Bread café down the road with my family.  We took a table next to a sign that boasted an iPhone / iPad app for the company.   Out of curiosity, I checked to see if there was a Windows Phone app…  the search in the app store turned up four apps, none of which had much to do with Panera Bread.  

On a hunch, I redirected my phone’s web browser to appstudio.windowsphone.com, and drafted a new project… a wrapper for Panera’s mobile site.   In minutes, I had used my phone to generate and sideload a brand new app.  I realized I could publish the app with only a few tweaks, and from the time I sat down to eat to the time this new Panera Bread app was certified & available for download only about two hours had passed.

I’ve decided to issue a challenge to the Granite State (NH) Windows Phone Users Group (and anyone else who wants to join in) to a “Pay it forward” style friendly ‘competition’.  

Whenever you see an app marketed for platforms other than Windows Phone, see if you can’t whip up a respectful/respectable presentation of an app that provides some approximation of the functionality advertised… for the Windows Phone platform… and publish it as a free app with no advertising or in-app purchases.  It should be a “gift” of sorts in honor of the subject.

Then feel free to let the folks who might be interested that they are subject to our #RandomAppOfKindness pay-it-forward activity. 

If the subject of your app complains of copyright issues, you may be required by copyright holders to remove the app…  and you should comply.  After all, this app was created and published out of good will.

Here’s my first #RandomAppOfKindness…
http://www.windowsphone.com/en-us/store/app/panera-bread/2b1e2cd1-a440-4657-910d-a0eec15ecc5e

I’d love to turn this into a real competition… Perhaps in the future we’ll discuss crating a list of #RandomAppOfKindness apps and set a finish date to see who’s published the most qualified apps… but I don’t have a budget for that (as of yet)  🙂

Have fun!

Addendum:
Three new #RandomAppOfKindness entries since the Panera Bread app:

Tech in the 603, The Granite State Hacker

Publishing Content Separately from Presentation

Separating content from presentation is a very old “Best Practice”™. 

Publishing using web technology is not new anymore, either, but mobile puts a newish urgency in that best practice.  I’m seeing ignorance of the old best practice bite some in a potentially surprising way as the age of mobile apps become the preferred way to consume content.

Here’s what I mean by publishing separate content and presentation… 

Take for example a menu from a restaurant.  I’m finding in many cases, restaurants have web sites that publish their menu.  Their menu items are content, and the web site presents it in a pleasant manner.  In many cases, the presentation and the content are published just in that web page.  (The menu items are “hard coded” as HTML into the page.)

If the restaurant’s menu items are “hard coded” into the page presentation, it’s very hard for anyone to re-use that information in any other presentation.  It’s not impossible.  It can be “scraped”, and some tools do a decent job of it.  It’s just not easy enough. 

The more technically correct path is to publish the content as a web service, and then publish the web site.  The web presentation layer should consume content it gets from the service. 

Why does this matter?

There’s lots of functionality that can be provided by a content service.  Users can consume portions of the content by filtering it, sorting it, or classifying it.

To expand on that, I’ll pick on Microsoft’s Windows Phone AppStudio a bit, since they’re the star in my circles right now.  Microsoft’s AppStudio is one of many ways to create apps for mobile devices.  (In this case, for Windows Phones, but that’s beside the point.)  AppStudio’s niche is making it easy for people to pull in content from various sources and present it in their own Windows Phone app.  LOTS of people are building apps for just about everything you can imagine…  members of the Granite State Windows Phone Users Group are producing a ton of apps based on it.  

Here’s some statistics to try to paint a picture of this.  The NH Windows Phone UG community publishes a list of apps produced by its members.  In the past three months since App Studio was released, I estimate that the number of apps in that catalog has doubled, and 95% of the new apps are AppStudio apps, consuming and re-presenting, making use of content provided by 3rd parties. 

What makes it easy to build AppStudio apps is that it has a simple presentation of its own… all folks need to do is find content that’s been formatted in one of a few very standard ways.

We have, for example, a grade-school aged member of the #NHWPUG community building and publishing apps with AppStudio.  His publisher name is YoungMaster, and his first app is called “Kids Zone”.  The cool part about Kids Zone is that he was able to add video content from YouTube.  His app merely queries YouTube for certain kinds of videos, and YouTube responds with a list (in a standard format) of items.  Users of the app simply tap the list for more information about it, or to watch the video.

Now, back to that restaurant…  if a patron/fan developer wants to make an app for a specific restaurant, it would be very hard to add that restaurant’s menu items if the menu item information is not published separate from the web site presentation.  

Another application might be to allow a person searching for a meal to browse menu items from a number of nearby restaurants.  Will your restaurant’s menu items be available in the list?

Lots of folks already understand this concept of separately published content and presentation, and apps pop up around the content all the time.  Movie theaters, travel agencies, transit authorities, social media updates, news agencies… all publish their content separate from their web site presentations. 

What’s rougher, for folks using a CMS (Content Management System), chances are, you have the ability to publish a Syndicated Feed or RSS Feed that would do the job… but if you’re not enabling and exposing it, you’re missing a chance for folks to help spread the word about your company in these new ways.