Developer Support

Advocacy and Innovation

Microsoft’s Developer Blogs are Getting an Update

Update: The Premier Developer blog transition is now scheduled for early 2019 to ensure you have the best blog experience. In the coming days, we’ll be moving our developer blogs to a new platform with a modern, clean design and powerful features that will make it easy for you to discover and share great content. This week, you’ll see ...

Federation patterns using Azure AD

In this post, Premier Dev Consultant Marius Rochon considers scenarios where an application needs to be accessed by users from many sources of authentication (Office 365, owned and operated by Microsoft but whose use is managed separately by many independent organizations is an example of such a resource). It proposes a framework for determining an optimal solution for the application using Azure AD.

Microsoft Flow and PowerApps monitoring strategy

Both Flow and PowerApps are great tools that can be in the hands of business and power users to accelerate the building of automated workflows and business apps across on-premise and the cloud services. It’s easy to see how there could be many such Flows and Apps built, deployed and running within your tenant. It’s a best practice for the IT administrators to devise a monitoring strategy in place that could proactively keep a watch on these Flows, Apps and other related resources and alert and perform remediation actions as necessary.

Azure AD App Tracking with Logic Apps

Recently, I was asked by a customer with a very large internal Azure user base to help them find a way to keep track of Azure AD (AAD) application registrations in their directory. This customer has been on Azure for years, and the number of AAD application registrations has steadily grown during that time. There are so many applications now that it is hard for them to know which ones are still being used, and which are not. Furthermore, it’s common for application teams to create a secret key for their application and then forget that the key will eventually expire. How does the operations team know whom to contact when the expiration date is approaching?

Solving What’s Off About Monolithic Applications

It's all about the people. The resistance to change is human nature. Leaders and team members alike. Assessing the team is simple. If they can demonstrate an openness to changing how they do things you are on track. If team conversations consist of why things must continue to be done the way they are being done success will be a challenge. But leadership is the real key. Effective change is a collaborative process and management's primary team facing role is keeping the team within the agreed upon boundaries. But of equal importance is securing and managing executive sponsorship. The team is pushing hard against their own instincts for the betterment of the organization. The organization must support them and insulate them from organizational winds that look to disrupt their efforts.

The danger of TaskCompletionSource class

... when used with async/await. TaskCompletionSource class is a very useful facility if you want to control the lifetime of a task manually. I share a canonical example when TaskCompletionSource is used for converting the event-based asynchronous code to the Task-based pattern.

Uncovering The Details Of Hosting a Node Application On Azure

I was recently working on a Node JS application and I decided that Azure was the right place for me to host my application as it made it extremely easy to deploy it to production. But shortly after deploying the application I started to have questions about some of the magic that Azure was doing to make everything “just work”. This post summarizes my journey in attempting to uncover some of the magic involved in hosting a Node application on Azure.

DevOps and Waste

One of the great things we’ve learned from applying Lean to software development and operations is the notion of eliminating waste is our processes. In this article I’ll provide some background on why this is important and how to find and eliminate waste in your daily activities.