Updating Excel data with Project Siena

This post describes a method of using Project Siena with Excel data that can be updated later without having to change the app. [Yes Its been a while since I posted anything, thought it was about time so here is my first post, using the cool product I am now working on] Siena can import…


Common Questions (and Answers) about Windows Phone 8

Here at Microsoft we have a high percentage of Windows Phone 8 users (go figure?), however despite this I see so many of the same questions being asked by WP users on the DLs and internal Yammer pages. Here are those questions, and my answers to them. If some MS employees don’t know these things,…


Getting the Name of your Windows Phone 8 device

You can name your phone to whatever you like, but how can an app display that name? There isn’t an obvious API for this, but I accidentally discovered an un-obvious API. The quick version is that you can ask getaddrinfo for the canonical network name. Too quick? OK, here is some C++/CX code to show…


Handling Contract assertions on Windows Phone 8

If you are a fan of System.Diagnostics.Contracts and use them on WP8 you may find a problem: when a contract fails, you get no clue why. Here’s how to find out. Firstly lets start with a trivial repro app, take the default WP8 project, add a using System.Diagnostics.Contracts, add a button, then this code:         void TestContract(int arg)…


Native Code on Windows Phone 8: The assert Problem

So there you are, cranking out some new C/C++ (or CX/C++) code on Windows Phone. Its all new, so you add asserts all over the place to make sure its working. You run your app under the debugger to see how far it gets, and boom: it exits for no obvious reason. Turns out assert…


The Best Microsoft Keyboard. Ever. The Natural Keyboard Pro.

Keyboards are a very personal thing. For those of us whose job requires their use basically all day, every day, they are the piece of hardware that we have to be comfortable with. A good keyboard will stay with you for years, decades in fact, but PCs will be upgraded and so will your monitors….


Using Flurry Analytics on Windows Phone

I recently added Flurry Analytics support to my application and in the few weeks it has been available I have learnt huge amounts about my users, their habits, and found and fixed several bugs that no-one has even reported. [This post is my personal opinion as some guy producing Windows Phone apps, and should not…


UPNP on Windows Phone 7.5 Part 2: Invoke

With UPnP discovery worked out, the next feature is to turn the discovery results into a Device, find a Service on that device, and to make calls on that service, ie Invoke some Actions. I’ll start with the code from my test app, to give you an idea of where we are heading. I wanted to…


Waiting for Your Windows Phone Beta App

Publishing a beta version of a WP7 app is both exciting (“does it work on someone else’s phone?”) and frustrating (“when is it going to actually show up?”). Having submitted maybe five beta versions over the holidays I wanted to improve the latter problem. The beta submission process today looks like this: Submit your app…


Car Head Unit Compatibility with Windows Phone 7.5 Mango

I recently had a desperate need to upgrade the audio system in my car, and wanted a good Mango-compatible system. I learnt a lot about Bluetooth and what to look for to get a great in-car experience, which I am sharing here. Please note these are my personal findings and opinions, none of this should…