Jerry Nixon on Windows

Jerry Nixon on Windows

Tuesday, January 1, 2019

Some goals for 2019

imageHi. Today is the first day of 2019; I have a few goals for the coming year I will codify here so I can look back and see how I did. This is not a list for you, it’s for me. That said, I am satisfied for my list to influence your list, should it.

I have some big things afoot in my life and should waters stay smooth, these goals are both attainable and what I want. I should also point out this year’s goals resemble last year’s goals. I am certainly a creature of habit. Some of last year’s goals were reached. Some are carrying over. Some, however, always make my list in one form or another.

Thursday, February 8, 2018

The three pillars of Technical Evangelism

Terms like evangelism are funny. Etymogically, evangelism is about converting and teaching. Where most of us are used to hearing it in the context of theology, technical evangelism is about teaching and converting in the context of technology, most usually software development.

I am a Microsoft Evangelist. It’s my real title, and I sometimes must show people my card before they believe me. As a Microsoft Evangelist I am converting developers to Microsoft Technologies. I also teach, of course, but it is a fundamental part of evangelism that teaching, though important, is secondary.

Saturday, February 3, 2018

Custom UWP-XAML attached properties

Look, this article is for me. I keep forgetting the basics of XAML attached properties & some advanced syntax. If this helps you, too, great. 
As the author of Template 10 (the best UWP framework) I keep on my UWP toes with XAML & WinRT. I may not be a XAML Jedi, but I’m on the path. You’d think after writing about this in my Navigation View article in MSDN Magazine article last month I would have it all locked in. But, I’m the type of guy who forgets things. Even stuff I mastered just last month. So, here goes.

Containing class

The only requirement for an attached property is that its containing class derive from DependecyObject. The class cannot be static.

Thursday, September 21, 2017

A personal review of some Star Trek swag I have lying around.

I have a few Star Trek things sitting on my desk, in drawers, or around the house. This isn’t really a review as much as it is an excuse for me to talk about them. This is important since the first episode of Star Trek: Discovery is only 3 days away and I am getting anxious about the whole thing. Don’t think of this as a buyer’s guide as much as me, dreaming up an excuse to talk about Star Trek in anticipation of the new show.


Tuesday, August 29, 2017

Cardinal XAML: a reflection

In 2014, at the VS Live in Chicago, Ben Dewey, a Microsoft MVP for Windows Client at the time, presented the session: XAML Anti-patterns. Not to be confused with Markus Egger’s excellent series with the same name in Code Magazine (also in 2014); Ben’s session had the playful subtext: The Seven Deadly Sins of XAML Development.

Between the two authors, they saw a regular set of common developer practices that harmed the efficiency and maintainability of XAML applications. In this article, I wanted to iterate those insights, consider the actuality of them, and review if they remain relevant to modern developers using newer, evolved XAML technologies and tooling.


Tuesday, August 1, 2017

What is a developer evangelist?

Much like asking what is the right way to develop software there are as many answers to that questions as there are people. But, developer evangelism or product evangelism has become a staple of companies wanting to reach a specific demographic in a particularly noisy marketplace. They speak, they listen, they code, they help, they advocate: but, what are they, really?

Microsoft Developer Evanglist, Jerry Nixon

Tuesday, July 25, 2017

Login to your UWP with your MSA

Here’s the idea, you want your UWP user to login with their MSA so you can get their information, access OneDrive, Outlook, Office, Rome devices or just their profile photo and name. Whatever the reason, it’s more simple than you think.

Please note: the Live SDK we used to use for this has been deprecated and now we use Microsoft Graph for just about everything around authentication & access.

Here are your four easy steps to follow:

  1. Register your app @
  2. Add your ClientID & ReturnURL to app.xaml Resources
  3. Copy AuthenticationHelper.cs
  4. Nuget packages
    1. PM> Install-Package Microsoft.Graph
    2. PM> Install-Package Microsoft.Identity.Client –pre

Monday, October 24, 2016

Set up Xbox One for UWP development

Since Anniversary Update (Windows 10 1607) Xbox One has supported UWP developers and the Windows Store has supported UWP apps targeting Xbox One. You can use any Xbox One as a developer machine. This blog will walk you through the process of setting it up. It's a lot of steps, but pretty easy.

First, what are the prerequisites?

  1. An Xbox One with local, shared network access
  2. Visual Studio 15 Preview 5 (or VS 2015 Update 3+)

Search for the Dev Mode Activation app in the Store


Friday, August 26, 2016

Is Windows Phone still a good option?

There is considerable uncertainty around Windows phone. I would like to talk through some of that. And I would like to evaluate if Windows phone is still a good choice for me. Not you, me. I am thinking out loud here, hoping my thought process will help you as you contemplate switching to or from Windows phone. Image result for microsoft windows 10 mobile

Monday, July 11, 2016

Understanding TargetDeviceFamily

imageIf you are like me, you might spelunk from time to time in the bowels of your application's manifest file. But, "why?", you might ask, "Isn't everything in the manifest revealed in the graphical editor in Visual Studio?" Oh, you poor child. Allow me to enlighten you on this one: No.

One such setting is the <TargetDeviceFamily /> node, the child of <Dependencies />, the child of <Package />.

You can find it documented on MSDN where it provides this illuminating prose: "Identifies the device family that your package targets." There are some examples, sure, but I wanted to take a moment and make it painstakingly clear. I want to remove any doubt and leave you with the confidence to look at your manifest and edit it without fear.

Fact is, you set this when you create your project. The dialog above appears when you create a new Universal Windows Platform app. It's asking you the Target and Minimum version. But, of what? It is setting the initial versions of the "Windows.Universal" target device family.