Tips for building quality Windows Store apps
Pete Brown | @pete_brown
Technical Evangelist
Microsoft Client & Devices
DEV-B352
Quality is important
Quality apps have a symbiotic relationship with the Windows Store. Their presence makes the Store better, and the Store provides a way by which the developer can reach distribution and revenue goals.

We like to Spotlight high quality apps!
Why quality is important
Quality apps are good for your reputation and, if you choose, your wallet.
The Windows Store has good reason to want to see high quality apps bubble to the top, and low quality apps fall off the bottom.
Spammy apps, and multiple submissions with little or no change in the app itself, are not considered “quality”
What is quality?
Useful
Beautiful
High performance
A great experience
A joy to use
What we’ll cover
Creating useful, durable, and original apps
Beauty: Moving beyond two rows of boxes
Embracing the platform through common patterns
Supporting high DPI displays
Testing
A useful app provides value
An essential app for your users, or a fun diversion
Solves a problem, or fulfills a desire
Is task or goal-based, not a giant suite
An app other people want to use
Distribute virally or via word of mouth
An app that makes people say “I want Windows 8 so I can have that app”
These types of apps make it easier for you to be successful on Windows
Increases customer satisfaction
An internal mobile / tablet app vs. a desktop or laptop app
A public app which helps customers with a task
Ask yourself “am I doing more or better than I could do with a web site?”
A quality app puts the user in control
Device
Profile
Time
Money
Data
It is the user’s:
A quality app is durable
Seasonal or short-lived apps don’t have time to build momentum and make sales
Short-lived apps tend to be free and disposable
Conference apps
Christmas card apps
They can still be useful and high quality even if short-lived
We generally look for long-lived “durable” apps which can build reputation and standing, and persist in the Windows Store.
When possible, consider making single apps which have seasonal upgrades / themes
A quality app is original
image001
Not a straight copy of anotherapp or idea
Not a copy of another of yourown apps
Copies are bad for reputation
Copies can be bad legally, aswell
A quality app is beautiful and branded
Windows Store apps are “brand forward”
Use your brand’s colors, fonts, images
Who can create beautiful apps?
You don’t need to be a big agency to create great apps
A designer will always improve your app, but for individuals, this is usually not an option
Use templates to help with different UI approaches
Use third-party controls to enhance the experience
Enlist a friend who has design skills
In a business, use your web property designers
Your internal apps should be as well designed as your customer-facing properties
Customer facing apps and web site should be consistent
Don’t be boxed in
The Windows Style is not just two rows of boxes
That’s just the default Visual studio temple
Think outside the boxes
demo
Look great on high DPI displays
High DPI displays are more popular with Windows 8
Visual Studio includes built-in DPI scaling support
All image assets, not just splash screen and app tiles

Fuzzy Wuzzy made a great bear, but he’d make for a horrible set of icons
High DPI image support
demo
Embrace the platform
For a ported app or multi-platform app, takes advantage of Windows 8 features:
Trial mode rather than separate apps for trial/purchase
Third-party payment providers for in-app purchases
Share contract for sharing to anything
For games: Xbox controller
Roaming settings or skydrive/azure-backed settings/sync
Windows Azure integration
More
Apps unique to our platform, which use platform features, are even more exciting
The app’s main page
Your main page, or hub, IS the app
Provide immediate value
Nav bar and app bar
Top app bar for navigation
Bing news app is a good model to follow
Can be flat or hierarchical
Can also include back button
Bottom app bar for commands
Avoid putting commands on top app bar, or navigation on bottom app bar
App main pages / hubs
demo
Don’t be an island
Share your data!
Implement the search contract so your data can be found
Increase the usefulness of your app
Implement share source if you have data to share
Implement share target if you can do something with data
Search and share
demo
Test, test, test
Well tested on more than just the developer machine
Enlist your friends
Bribe your family!
Coerce your co-workers!
Remember to test on all supported architectures
Apps are small, but need as much testing as large apps
1-star ratings are hard to shake
Many apps fail store certification due to crashes on test machine hardware
Check performance
Meet performance requirements
5 seconds to launch, 2 to suspend
Perform well on all target architectures
Remember to test on ARM
Complexity affects performance
Performance tips
Minimize element overlap
Try not to draw the same pixel many times
Turn off animations when not on-screen
In XAML/.NET apps, reduce code in UI thread
UI thread needs to be lean and mean
Test early and often on low power devices
ARM based devices with Windows RT
Low-power Intel devices with Windows 8
Evaluating performance
demo
Quality apps support all architectures
x86, x64 and ARM
Apps must support all three architectures to be promoted, especially in TV and other ads
User must be able to find your app no matter what device they use
Further reading
Windows 8 App Certification Requirements
http://bit.ly/Win8AppCert 
My book on XAML and Windows Store apps
http://manning.com/pbrown3 
Windows UX Checklist
http://bit.ly/http://bit.ly/WinUXChecklist
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Plan details and subscriber benefits
Included for certain paid MSDNsubscribers:
Free Plan for up to 5 users
Additional information athttp://tfs.visualstudio.com
* Capability in preview – limits may apply.  Authoring load tests requires Visual Studio Ultimate 2013 Preview.
Version control (TFVC or Git)
Comment on changesets & commits
Work item tracking and tagging
Team rooms
Agile planning tools
Feedback Management
Agile Portfolio Management*
Build*
Web-based test case management*
Load testing*
New!
New!
New!
New!
MSDN Subscribers – Accelerate Your Development & Test using Cloud VMsWe’ve enhanced the Windows Azure MSDN benefit and added cloud use rights for select MSDN software. You’ve already got it, now use it! 
Activate and try out your Windows AzureMSDN benefit today & you could win anAston Martin V8 Vantage!
Learn more and activate today at http://aka.ms/AzureContest
Complete an evaluation on CommNet and enter to win!
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\bestbuy-gc.png
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\Xbox360_Matte_Sensor_7-8View.png
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\Geek-military-hat.jpg
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\Geek-usb-hub.jpg
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\LED-flashlight.jpg
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\Neoprene-accessory-case.jpg
\\192.168.1.51\Shared\ADI_Projects\Microsoft\MS_11-01457_TechEd_2012_Template\Working_Art\Eval-prizes\Cloud-power-shirt.jpg
Evaluate this session
Scan this QR code to evaluate this session and be automatically entered in a drawing to win a prize
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.