App Building Learning Journey #1: Misadventures
As of August 5, 2014, I have built three mobile apps for Windows so far.
All of them have turned into a different idea then what I originally set out to build.
First App: "George Takei Media" for Windows Phone 8.1
Set out to make: Microsoft Acronym Glossary phone app
They throw so many acronyms at us here, it's like learning a new language through immersion. I just want to be able to pull out my phone and discreetly type in an acronym without slowing the conversation down or derailing someone's train of thought completely. There is a Microsoft internal website that has most acronym definitions, but you have to have an internet connection and a web browser open in order to use it. I wanted to develop across Windows, Android, and Apple by using Cross Platform Cloud Kit (XPCK or XPLAT) and make it a Universal App so that it would work for Windows 8.1 PC and phones.
Roadblock: "Whoa there! Gear down, big shifter."
My coworkers suggested I start with something far easier, like a tip calculator. The beginner's app builder, App Studio, has a very limited range of purpose. The glossary app is going to have to be coded by hand. For a beginner's first app, I used App Studio, as demonstrated by Martin Schray here https://vimeo.com/92610272 to create a quick app just to get my first app in the store.
What Actually Happened: Celebrity Facebook-following app.
I tabled the acronym glossary idea and set out to build a tip calculator in App Studio. After 5 minutes, the tip calculator quickly turned into a celebrity media fan app. Emulating Martin's Jimmy Kimmel Live app, I made "George Takei Media" as a fan app. It's in the Windows 8.1 Phone store currently.
[View:https://www.youtube.com/watch?v=c5Y25FT7DxE]
Second App: Web App Template
Set out to make: Microsoft Acronym Glossary phone app, take 2!
My dear coworker Christine Matheney told me about a way to take a website and turn it into an app, easy as pie! A fellow Tech Evangelist named Sertac Ozercan worked on something called WAT: Web Application Template, a quick & easy way to bring web content to native Windows apps. "Taking websites and turning them into Windows apps is so easy it'll take an afternoon," she said.
Roadblock: Internal corporate website can't go public.
I downloaded the Web App Template for Visual Studio 2013. I configured the file to apply to Microsoft's glossary URL. I even got Sertac Ozercan on the phone with me and we walked through the process together while sharing our screens. Pretty soon it became clear that a Microsoft corporate internal site was not going to display on a public network. This means that I could not publish an app with this URL, because the administrators would not be able to see my app, and it would not pass certification to get into the store.
What Actually Happened: Well, I can use any other public website...
No sense in letting a perfectly good coding project go to waste. I could turn any website in the public domain into a Windows app! The result: I turned this very blog into an app. It really was as simple as Christine said. Next step: publishing it to the Windows Stores, not just the phone store. You can bet I will be leveraging the work and effort of my coworkers mentioned in this post -- Microsoft teamwork looks like connecting with others and building on their successes, misses, inputs, and ideas to maximize the collective impact against a set of shared priorities. This is not about taking credit for others' work; instead, it is about using learnings from others as a base for future innovation in order to accelerate my execution and amplify the value that I deliver to the team and the value Microsoft delivers to the marketplace.
Third App: Tip Calculator
Set out to make: Universal App Tip Calculator
My coworker Paul DeCarlo pointed me to a resource which he said taught Universal App Development using a tip calculator at https://channel9.msdn.com/Series/Windows-Phone-8-1-Development-for-Absolute-Beginners/Part-10-Exercise-Tip-Calculator-as-a-Universal-App This video by Bob Tabor speed-walks the viewer through the process of building a simple calculator in C#.
Roadblock: There's a better way!
I finished the tutorials on Channel 9 and showed my new TipCalc app to my manager, Chris Koenig, during our next chat. I had some bugs in my code that we fixed together, but Chris said there was a better way to build a Tip Calculator app!
What Actually Happened:
Chris told me to talk to him again later so that he could teach me about Data Binding, a mechanism for applications to present and interact with data, to make a better tip calculator.