Markdown to WordPress Extension Published

Utilities, Visual Studio Team Services
While I will always be a developer at heart (have been more many, many years!) by day I lead an enterprise architecture team consisting of four enterprise architects and four enterprise applications developers (along with an assortment of other contractors that help out with various development and architectural "hygiene" tasks). One area I continually push my team to excel in is communication. One of the various conduits we make use of is a WordPress-based site (hosted internally within our organization). For various reasons I won't go into in this post, we chose WordPress over SharePoint as the repository for the various guidance documents our team produces. Along the way, several other teams have also adopted WordPress for their respective team blogs. While WordPress is a very effective platform for creating…
Read More

VS Code + Ctrl+Shift+S = Wat?!

Tips, Visual Studio Code
Like many of you out there, I’ve been using Visual Studio (literally) ever since there was a Visual Studio (and Visual InterDev prior to that). One of the keyboard shortcuts that has been burned into the muscle memory of my left hand for years now is CTRL+SHIFT+S which is a common shortcut for “Save All”. I can’t claim that this keyboard shortcut has consistently mapped to “Save All” for the life of Visual Studio but it has definitely been around for quite a while (if not its entire life).I also can’t claim that CTRL+SHIFT+S is a well-known universal key combination for “Save All”. However, taking a quick look at a few apps on my workstation (that supports multiple tabs/documents being open/edited), here’s what I found: ApplicationCTRL+SHIFT+S = “Save All” Visual…
Read More

Creating a File in VSTS with APIs

API, Visual Studio Online
Following along the same line as some of the previous API examples I've posted I thought I'd post an example on how to make use of the VSTS APIs to create a new file in a VSTS-based Git repo. This can be handy if you need to get a file into VSTS but don't want to mess around with calling out to the Git command line or making use of various Git libraries. If you're new to calling the VSTS REST APIs or you are new to this series of articles then I would recommend you check out the other articles in this series before getting started. For our example (of creating a new file) there are two VSTS APIs that must be utilized: the refs API and the pushes…
Read More

Custom Build Tasks in VSTS

Team Foundation Build, Visual Studio Online
[Updated 16 Jun 2016 to reflect name change from VSO to VSTS][Updated 28 Dec 2015 to reflect latest changes in command line interface]If you’ve been making use of the new Team Foundation Build technology in Visual Studio Team Services (VSTS) or Team Foundation Server (TFS) 2015 then you might have wished you had the ability to create and upload your own custom build tasks. Well, that day is now here! You can now create a custom build task and upload it to your VSTS account for use across your build definitions. Caveat The ability to upload custom tasks is still considered to be in a “pre-release” mode so you might run into the occasional issue. However, if you do, Microsoft is committed to resolving any bugs/issues uncovered and will fully…
Read More

Android: Two Weeks In

Android, Windows Phone
Well, it’s been two weeks since I officially switched to Android. I’ve been spending years (literally) reading other people’s accounts highlighting their experiences with switching from Windows Phone/mobile to Android and/or iOS (and occasionally the other way around). I figured this was my chance to finally put my initial thoughts and experiences on paper (so to speak) since I’ve been using Windows-based phones for a long time (10 years!).So, two weeks in, what have I learned? For the Clint Eastwood fans out there, I’ll break it down into The Good, the Bad and the Ugly.The GoodHardwareAs I mentioned in my previous post I switched to the Samsung Galaxy S7 Edge. When I first got this phone I was really impressed with the look and feel of the device. I had…
Read More

Why Should I Leave XAML Builds?

Team Foundation Build, TFS, Visual Studio Team Services
If you have been using Team Foundation Server for any amount of time (say, 2 years or more) then it’s likely you have a decent investment tied up in your XAML-based builds. It’s likely that you have spent a lot of time tweaking the XAML ever-so-carefully to get your automated builds to do your bidding. It’s also possible that you have utilized multiple custom build tasks for scenarios specific to your organization that are not supported out of the box.Along with this, you and/or your team has gained a good amount of knowledge in learning how to tie the various pieces of a XAML-based build together. So, with all that said, you might be wondering why your company should make the move to the new(‘ish) VSTS-style builds. Here are a…
Read More

When is Enough, Enough?

Android, Windows Phone
Ask anyone who has known me for more than a few hours and odds are they can tell you that I love technology! Specifically, I am a huge fan of the Microsoft software developer ecosystem. I was a Java developer before .NET/C# became available but, once I got my hands on C#, there was no going back (to Java)! To me, .NET & C# was what Java should have been from the beginning.Since those days, I’ve written many apps – web apps, “fat client” (Windows) apps and mobile apps. Since Windows Phone (7) came on the scene back in 2010 I’ve published 9 apps (some better than others :-)) for Windows Phone. For me, it was a natural fit – writing mobile apps using C#. It leveraged the skills and…
Read More

VSTS-Tools ‘Keep’ Build Extension

Extensions, Visual Studio Online
If you are making use of Visual Studio Team Services (VSTS) to manage your automated builds then you are likely already aware that completed builds are kept for a maximum of 10 days by default. You can increase the default up to 30 days but no longer (using TFS on premises gives you more control over the retention). If you want to keep your build artifacts longer than the maximum 30 days allowed, you must set the retention for the build to “keep forever”. There are some cases where it makes sense to automate this task – e.g. you’re calling out to a 3rd party deployment tool (e.g. Octopus Deploy) from your build definition and you want to set the retention to “keep forever” for production builds.Adding to the VSTS-Tools…
Read More

VSTS-Tools Build Extensions

Visual Studio Online
Last week I wrote about how you can make use of PowerShell to log extended diagnostics information when running a build. The two examples I included showed you how to collect environment variable information (e.g. names and values) as well as list (recursively) folders and files beneath a specified folder. As an additional exercise, I decided to convert these two examples to build tasks and publish them as the VSTS-Tools extensions.The VSTS-Tools extensions currently includes two build tasks:VSTS-List FilesVSTS-List VariablesVSTS-List FilesThis extension will list out (in the log) all files beneath the folder specified as the Root Folder. There are two parameters that can be set with this task:Root Directory - all files and folders beneath the root directory will be listed (recursively). Execute on Debug Only - if checked,…
Read More

Get (more) Build Agent Details with PowerShell

TFS, Visual Studio Online
Chance are you are already aware that you can use the system.debug variable with your builds to get diagnostics-level information (i.e. verbose) when running your builds. If this is news to you, then try setting system.debug to true in the Variables tab for one of your build definitions and run the build.   After running the build, check the build log and you will notice a lot of extra information that wasn’t there before. This is great for getting a better understanding of what is going on behind the scenes when your build runs. However, keep in mind that some build tasks provide more (or less) information than others. In some cases you might want to log additional information on your own. Enter PowerShell PowerShell can be used to provide…
Read More