MSDN Magazine January 2012 issue


Jesse Liberty walks you through a simple yet handy Windows Phone application that touches on many aspects of building good-looking and useful XAML-based Windows Phone applications.
Jesse Liberty

Joseph Fultz

Microsoft Azure Caching Strategies

Joseph Fultz maps Azure caching capabilities, balancing the desire for fresh data with the desire for the best performance.
Joseph Fultz

Online-only Features

Web Development Report - Getting Started with Mobile Web Development Using HTML5, jQuery Mobile and ASP.NET MVC 4

Web Development Report:   Getting Started with Mobile Web Development Using HTML5, jQuery Mobile and ASP.NET MVC 4
New MSDN Magazine Web columnist Rachel Appel explains how using jQuery Mobile library and ASP.NET MVC 4 with HTML5 can help you create small, maintainable code bases that work on many mobile devices.
Rachel Appel

Agile Development - Working with Agile in a Distributed Team Environment

Agile Development:   Working with Agile in a Distributed Team Environment
Learn how to tailor Agile processes to overcome challenges faced when working with distributed teams.
Sandeep Joshi


Editor's Note
A Quarter Century and Counting
For 25 years, Charles Petzold has been writing about software development in the pages of MSDN Magazine, going back to the very first issue of Microsoft Systems Journal.
Michael Desmond

The Cutting Edge
Enhancing the Context-Sensitive ASP.NET MVC Progress Bar
Canceling an ongoing server-side task from within a client browser is not a trivial operation, but Dino Esposito meets the challenge as he enhances last month’s context-sensitive progress bar with cancel capabilities.
Dino Esposito

Data Points
Making Do with Absent Foreign Keys
The absence of foreign key properties in classes adds some challenges to working in disconnected apps. In this column, Julie Lerman explores behavior with inserts and updates when no foreign key is available and demonstrates how to make Entity Framework toe the line.
Julie Lerman

Test Run
Simulated Annealing and Testing
James McCaffrey explores an artificial intelligence technique based on the behavior of cooling metal.
James McCaffrey

The Working Programmer
Building Combinators
Ted Neward finishes his discussion of parser combinators by extending the Spache library to parse the exact number of parsers you pass to it, incidentally demonstrating the power of functional programming.
Ted Neward

Touch and Go
Playing Audio Files in Windows Phone
Before he tackles the new background audio capability in Windows Phone OS 7.1, Charles Petzold explores the ins and outs of the more standard way to play songs.
Charles Petzold

Don't Get Me Started
Lowering Higher Education
The Internet is set to hammer the higher education industry in the same way it hammered the newspaper industry. I hope that my industry will respond to this challenge with creativity and imagination that will make the world a better place. I expect to find the landscape radically different when my daughters start college, 9 years from now.
David Platt


Windows Phone 7 - Using Cameras in Your Windows Phone Application

Windows Phone:   Using Cameras in Your Windows Phone Application
Windows Phone 7.5 devices can have both back and front cameras. Matt Stroshane introduces the camera APIs and associated capabilities and discusses a few ways you can use a camera in your next Windows Phone 7.5 app.
Matt Stroshane

Windows Phone 7 - Design Your Windows Phone App!

Windows Phone:   Design Your Windows Phone App!
Spend time up front designing your app, Mark Hopkins advises, and you’ll save time in the coding process and reap rewards in the Windows Phone Marketplace.
Mark Hopkins

Building HTML5 Applications - Using HTML5 Canvas for Data Visualization

Building HTML5 Applications:   Using HTML5 Canvas for Data Visualization
The new HTML5 canvas element gives you the power to create and manipulate images and animations on the fly. And it’s not just for complex projects like games. As Brandon Satrom demonstrates, you can use it to do some pretty cool data visualization as well.
Brandon Satrom

NuGet - Becoming a NuGet Author

NuGet:   Becoming a NuGet Author
Clark Sell continues our series on NuGet by exploring what it takes to become a NuGet package author and how to incorporate NuGet into your development life cycle.
Clark Sell

Orchard CMS - Orchard Extensibility

Orchard CMS:   Orchard Extensibility
Orchard is a new open source Web CMS that puts a lot of emphasis on extensibility. This article presents some of the techniques you can apply to build unique sites and contribute to a growing ecosystem.
Bertrand Le

ASP.NET Security - Securing Your ASP.NET Applications

ASP.NET Security:   Securing Your ASP.NET Applications
Continuing his exploration of ASP.NET security, Adam Tuliper takes a look at cross site scripting and cross site request forgery—how these attacks occur and what you can do to prevent them.
Adam Tuliper

Screen-Based Input - Customized On-Screen Keyboards with the .NET Framework

Screen-Based Input:   Customized On-Screen Keyboards with the .NET Framework
Learn how to create an on-screen keyboard that uses key randomization in the .NET Framework to enhance security and the porting of applications to mobile platforms.
Christopher Frenz

SQL Server Reporting Services - Extending SSRS: Developing Custom Charting Components and Rendering Extensions

SQL Server Reporting Services:   Extending SSRS: Developing Custom Charting Components and Rendering Extensions
Though SQL Server Reporting Services (SSRS) provides excellent charting capabilities, the native options may not always satisfy your requirements. Learn how you can create a custom charting component and integrate it with an SSRS report, and how you can develop a custom report renderer (by extending a native one) to render a report just as you’d like.
Manpreet Singh