The Microsoft journal for developersJune 2013 VOL 28 NO 6

Windows 8:  Code-Sharing Strategies for Windows Store and Windows Phone Apps
If you’ve been thinking about building apps for Windows 8 and Windows Phone 8, you’ve probably wondered whether you’ll be able to share any code between the different versions of your apps. You can, and Doug Holland shows you how.
Doug Holland

Kenny KerrWindows with C++: A Modern C++ Library for DirectX Programming
Kenny Kerr rolls his own header file that developers can use to build apps more easily with Direct2D. Along the way, he challenges those frustrating “C++ is hard” and “DirectX is hard” arguments that he’s tired of hearing.
Kenny Kerr


Online-only Features

Microsoft Office:   Exploring the JavaScript API for Office: A Sample Mail App
Here’s a step-by-step example of how to build a mail app with the JavaScript API for Office. This Web feature is a companion to the June issue print feature by Angela Chu-Hatoun.
Angela Chu-Hatoun

Patterns in Practice:   Adding Functionality to the Object: Refining the Design
Peter reviews his design for adding functionality to an object at runtime when the functionality is required. Along the way he takes the opportunity to improve the application’s performance and make the objects easier to use.
Peter Vogel


Windows 8:   Getting Your App into the Windows Store
With the right guidance, getting an application into the Windows 8 Store is surprisingly easy. Bruno Terkaly shows you how in 10 simple steps.
Bruno Terkaly

ASP.NET:   Enabling and Customizing ASP.NET Web API Services Security
If you’re calling Web API service from secured ASP.NET pages, you probably have all the security you need. But if you want to extend Web API’s security system, protect from CSRF attacks, or just access your service from other clients than Web pages on your site, you’ll need to leverage the underlying ASP.NET security framework.
Peter Vogel

Microsoft Office:   Exploring the JavaScript API for Office: Mail Apps
This discussion of mail apps for Outlook and Outlook Web App provides code snippets to illustrate key features of the API, moving from basic techniques to more advanced concepts.
Angela Chu-Hatoun

ALM Rangers:   Extending Visual Studio Team Explorer 2012
Visual Studio 2012 introduced a completely redesigned Team Explorer and user experience. This article covers extensibility points in Team Explorer and builds a working sample to highlight the new architecture.
Mike Fourie


Data Points
A New Option for Creating OData: Web API
Julie Lerman explores two ways of creating ODATA feeds—WCF Data Services and the new ASP.NET Web API—and discusses why you might choose one approach over the other
Julie Lerman

Windows Azure Insider
Architecting Multi-Tenant Applications in Windows Azure
Multi-tenant applications make sense from a business perspective, since compute and storage resources can be maximized by sharing them among multiple subscribers. This article introduces you to some key concepts and principles, and provides guidance on where you can get the hands-on skills you need in order to get up to speed.
Bruno Terkaly
Ricardo Villalobos

Modern Apps
Use TypeScript in Modern Apps
TypeScript is a superset of JavaScript that allows you to write and generate JavaScript code that acts more strongly typed and object oriented, but retains the flexibility that developers love (or sometimes hate) about JavaScript.
Rachel Appel

DirectX Factor
An Introduction to Audio Processing Objects
Charles Petzold shows you how to create XAudio2 Audio Processing Objects (APOs) to perform customized processing of audio streams.
Charles Petzold

Test Run
Amoeba Method Optimization Using C#
Some difficult problems, especially in the areas of machine learning and artificial intelligence, can't be solved easily using classical optimization techniques. In such situations, alternatives, such as amoeba method optimization, can be of value, as James McCaffrey explains.
James McCaffrey

Don't Get Me Started
Getting Heisenberged
Heisenberg's Uncertainty Principle says that certain complementary properties are entwined such that knowing more about one means knowing less about the other. Devs can bump into Heisenberg when they try to figure out what users want in their programs.
David Platt

Editor's Note
Unbridled Expectations
The world is amazing and nobody is happy. Why comedian Louis C.K.'s observation on human nature applies so strongly to software development.
Michael Desmond