By Rajen Kasha, Premier Field Engineer, Microsoft

As a Premier Field Engineer I have been delivering the Windows 8 App Excellence Labs (AEL) over the past couple of months. For those of you who don’t know, an App Excellence Lab is a 2-hour engagement with a Premier Field Engineer (PFE) that is used to help Windows Metro style app developers make the most of their application. The AEL program is currently also the singular path for motivated developers to gain early access to the Windows Store, allowing you to receive a token to register for a developer account.

Having run these App Excellence Labs in a few countries now, I’d like to spend some time in this article to outline what the process of an AEL is from my personal perspective and experience.

Who is it for?

The target audience for the AEL program is two-fold:

  • Developers who have almost completed their app so that they can get critical and constructive feedback to help enhance their app and get the token for the Windows store, and;
  • Developers who are in their early development/ideation cycle that would benefit from consultation with a Microsoft expert on the subject.

Let’s talk about the process for developers nearing completion of their app first. The most important benefit of the AEL for this group is the opportunity to have some face time with a Microsoft expert to get feedback to help enhance their app. Metro style apps is a whole new concept for developers to take in and we understand that it definitely takes some adjusting to fit app concepts in this new style.

What should I bring?

The files/assets you should bring depends on the type of session you’re looking for. Participants who want to verify their app before submission to the Windows Store need to bring an app package for the Release build of their application. This is used to deploy the application on our test hardware. They will also need to run the Windows App Cert Kit (WACK) beforehand, so common things can be solved before coming to the lab, and bring the result of WACK with them to the lab.

Participants looking for input on their design or concept should bring all relevant assets that they have (design documents, interaction design, functional specifications, etc.). If the app already exists on another platform, it definitely helps to bring that device with the app on it, so the scenario’s become clear during the actual AEL.

Goal: Getting your App into the Windows Store

The first thing we do in the AEL is install the app on one of our slate devices. We know that not all developers have the opportunity to develop or test on a slate device, so the AEL is an excellent opportunity to get a good feel of how the app performs and handles on it. Once the app is deployed, the AEL participant can demonstrate the app, hitting all the screens and functionalities as they go along.

While the app is being demonstrated, some discussion forms naturally around certain topics or specifics of the app. Recurring themes that often come up are: alignment and margins, use of the app bar, snap view implementation, mandatory sections under the Settings charm and the use of chrome in the app. The discussion around these topics is key to the AEL, because this allows the participant to provide valuable feedback on their experiences with the new development platform and it allows us to explain the thought process behind certain guidelines, which might not be evident from the documentation.

The AEL is also an excellent opportunity for participants to ask any technical or design questions for challenges that they have encountered during the development of their app. While the engineer leading the lab might not always have the answer straight away, it will definitely not take them long to get the right answer to the participant. This can significantly reduce time spent figuring out how to implement certain functionality, which can then be spent polishing the app. At the end of the AEL, if everything checks out, the participant will be granted a Windows Store token which can be used to register a developer account for up to two years, free of charge. It will also give them an opportunity to submit their app for entry in the Windows Store before the general public gets an opportunity to do so.

Goal: App design brainstorm

The other group of participants we try to reach with the App Excellence Program is developers who are starting out with their Metro style app, but could benefit from consultation with an expert at Microsoft on design, usage of Windows 8 features and implementation. The starting point for these types of sessions can be anything from an idea for an app or a design that could use some input on whether or not the features are designed the right way before starting development to an app that is already in development, but could use a mid-development sanity check.

Naturally the process for these types of sessions is more free-format, depending on the stage of development the app is currently in. Personally, I have had some great experiences with participants who have a good idea for an app or a design ready and want to see how this would translate to a Metro style app. Getting the proper information on how to utilize the features in the Windows 8 platform (e.g. the Charms contracts, app bar, navigation and user experience) is the biggest win for participants who decide to utilize the AEL for this purpose. At the end of the sessions, participants will have a much clearer idea on how to implement their app and how to start working on stuff they might have hit in an App Excellence Lab at a later stage.

Where do I sign up?

The App Excellence Lab program is run across multiple regions in a 40+ countries. Check out this site for more information for sign up or simply call 0845 073 7159 or email v-jat@microsoft.com today.

Hopefully this gives you a better understanding of what the App Excellence Lab program is, why Microsoft is doing it and how you can participate. Good luck with writing your app(s) and maybe we will meet in an App Excellence Lab sometime soon!

By Rajen Kishna

E-mail: rajenki@microsoft.com | Twitter: rajen_k