Developer Support
Advocacy and Innovation
Latest posts
A higher level of Premier Support for Developers – Premier Mission Critical
In this post, Sr. Application Development Manager, Wyn Lewis-Bevan spotlights Premier Mission Critical Support. So, you have a multi-million-dollar revenue generator that uses Microsoft supported technologies, either on Premise, in the Azure cloud, or both. Because it generates a significant portion of your company’s revenue and is therefore a mission critical application, you want to make sure it performs well and stays running during busy periods of your business. When things go downhill for whatever reason, you want high quality help from Microsoft with a fast response/resolution time. If you are reading th...
TFS automation – User management
In this post, Sr. Application Development Manager, Nandu Muralidharan introduces the TFS API set to help automate administrative tasks associated with managing users in Team Foundation Server. He also shares a set of helper components that he authored to assist developers in this space. You can check out Nandu’s blog here. This is part 1 of the TFS automation series, aimed at developers and administrators building systems to automate various portions of the SDLC pipeline. Today we will talk about the automation of user management. Overview User access management is a critical piece of the TFS automatio...
Using Application Insights SDK in Aspect-oriented programming (AOP) style with .NET
This is the second post in a series on the Application Insights SDK from Premier Developer consultant Nasir Syed. Check out his previous post here. In my previous post I talked about using Custom Attributes to avoid repetition, code pollution etc., and illustrated it from a very high level to use with Application Insights API, custom events. “C# – Attributes. Advertisements. An attribute is a declarative tag that is used to convey information to runtime about the behaviors of various elements like classes, methods, structures, enumerators, assemblies etc. in your program. You can add declarative informati...
Managed object internals, Part 1. The layout
The layout of a managed object is pretty simple: a managed object contains instance data, a pointer to a meta-data (a.k.a. method table pointer) and a bag of internal information also known as an object header. The first time I’ve read about it, I’ve got a question: why the layout of an object is so weird? Why a managed reference points into the middle of an object and an object header is at a negative offset? What information is stored in the object header? When I started thinking about the layout and did a quick research, I’ve got few options: Chris Brumme -- one of the CLR ar...
Hardening your web server’s SSL /TLS ciphers
In this post, Senior Application Development Manager, Anand Shukla shares some tips to harden your web server’s SSL/TLS ciphers. I recently worked with a customer who had security requirements to disable the weak RC 4 ciphers from their Windows 2008 and Windows 2003 servers. The process is little different for Windows 2008 R2 servers and Windows 2003 servers, and there are multiple articles on internet on how to disable the RC 4 ciphers. Below is a quick summary. One of the main challenges was testing for weak ciphers to make sure it is remediated. We could use SSL Labs for ex...
Avoiding Code Pollution when using Application Insights SDK
This post comes to us from Premier Developer consultant Nasir Syed. “Insert a few lines of code in your application to find out what users are doing with it, or to help diagnose issues. You can send telemetry from device and desktop apps, web clients, and web servers. Use the Azure Application Insights core telemetry API to send custom events and metrics, and your own versions of standard telemetry. This API is the same API that the standard Application Insights data collectors use” …… Copied from here. The above statement is very true and my experience of using Application Insights for custom events has...
DevOps diversité & inclusion
Premier Support for Developers is available in various regions worldwide. Representing our Canadian team, Application Development Manager, Adlene Sifi, provides our first French post on DevOps Diversity and Inclusion. Malgré les années, il demeure difficile de définir clairement ce qu'est DevOps. À la base DevOps était défini comment étant une meilleure cohésion entre les équipes de développement et les équipes d'opérations. Cette définition a beaucoup évolué avec le temps. Désormais, certains le voient comme une culture, d'autres comme un mouvement et finalement certains le voient comme un ensemble de pr...
Practical Git Commands Kickstart
This very useful guide to Git commands comes to us from Premier Developer consultant Crystal Tenn. Git command line is extremely useful for managing your resources – it is the only way to utilize all Git commands possible as most GUI’s only have a set of available commands. Although many guides exist to explain Git command line, many are brief introductions or extremely comprehensive. I will share a practical guide of commands I needed to use to get through my day, no more, no less as part of a kick start to get you going with Git. I will list commands by group in tables and will give an explanation below each ...
Monitoring, and Why It Should Come First In Your DevOps Strategy!
Senior Application Development Manager, Dave Harrison, spotlights the importance of instrumentation and metrics as the backbone of your DevOps movement. Monitoring has long been the secret sauce of DevOps. How else do we get feedback on our priorities, and actual metrics – not guesses – on which features are in use? What’s often overlooked though is that it can actually help you fight back against the wrong kind of change management – one that increases your bureaucratic workload and actually makes your build riskier and harder to fix. How is that possible? The Blame Game Let’s start with some basic nega...