<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Posts on Tiago Pascoal</title><link>https://pascoal.net/post/</link><description>Recent content in Posts on Tiago Pascoal</description><generator>Hugo -- 0.145.0</generator><language>en</language><lastBuildDate>Sun, 06 Jul 2025 00:00:03 +0000</lastBuildDate><atom:link href="https://pascoal.net/post/index.xml" rel="self" type="application/rss+xml"/><item><title>GitHub Copilot Extensions: Adding tools support</title><link>https://pascoal.net/2025/07/06/gh-copilot-extension-tools/</link><pubDate>Sun, 06 Jul 2025 00:00:03 +0000</pubDate><guid>https://pascoal.net/2025/07/06/gh-copilot-extension-tools/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions: client-side and server-side extensions.&lt;/p>
&lt;p>In our &lt;a href="https://pascoal.net/2024/12/14/gh-copilot-extension-vscode-configuration/">previous post on Adding User Configurable Settings in VS Code Extension&lt;/a>, we enhanced our VS Code Copilot extension by adding user-configurable settings to control extension behavior and features.&lt;/p>
&lt;h2 id="goal">Goal&lt;/h2>
&lt;p>Agentic AI is rapidly transforming the technology landscape. Enterprises and startups are racing to adopt agentic architectures that move beyond simple automation to deliver autonomous, outcome-driven solutions. Unlike traditional generative AI, which primarily generates content or insights, agentic AI systems can proactively execute multi-step tasks, make decisions in real time, and adapt to changing contexts without human intervention.&lt;/p></description></item><item><title>GitHub Copilot Extensions: Adding user configurable settings in VS Code Extension</title><link>https://pascoal.net/2024/12/14/gh-copilot-extension-vscode-configuration/</link><pubDate>Fri, 27 Dec 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/12/14/gh-copilot-extension-vscode-configuration/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions. Client side and server side extensions.&lt;/p>
&lt;p>In our &lt;a href="https://pascoal.net/2024/12/14/gh-copilot-extension-vscode-feedback/">previous post on Collecting Feedback in a VS Code Copilot Extension&lt;/a>, we enhanced our VS Code Copilot extension by adding support for collecting response feedback from the user.&lt;/p>
&lt;h2 id="goal">Goal&lt;/h2>
&lt;p>This post demonstrates how to add user-configurable settings to your VS Code Copilot extension. We&amp;rsquo;ll cover:&lt;/p></description></item><item><title>GitHub Copilot Extensions: Collecting Feedback in a VS Code Copilot Extension</title><link>https://pascoal.net/2024/12/14/gh-copilot-extension-vscode-feedback/</link><pubDate>Sat, 14 Dec 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/12/14/gh-copilot-extension-vscode-feedback/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions. Client side and server side extensions.&lt;/p>
&lt;p>In our &lt;a href="https://pascoal.net/2024/12/01/gh-copilot-extension-vscode-references/">previous post on Using Context in a VS Code Extension&lt;/a>, we enhanced our VS Code Copilot extension by adding support for references to the UI and how to use explicit references in the prompt.&lt;/p>
&lt;h2 id="goal">Goal&lt;/h2>
&lt;p>This post demonstrates how to implement feedback collection in your VS Code Copilot extension. We&amp;rsquo;ll cover:&lt;/p></description></item><item><title>GitHub Copilot Extensions: Adding followup prompts in a VS Code Extension</title><link>https://pascoal.net/2024/12/08/gh-copilot-extension-vscode-followups/</link><pubDate>Sun, 08 Dec 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/12/08/gh-copilot-extension-vscode-followups/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions. Client side and server side extensions.&lt;/p>
&lt;p>In our &lt;a href="https://pascoal.net/2024/12/01/gh-copilot-extension-vscode-references/">previous post on Using Context in a VS Code Extension&lt;/a>, we enhanced our VS Code Copilot extension by adding support for references to the UI and how to use explicit references in the prompt.&lt;/p>
&lt;h2 id="goal">Goal&lt;/h2>
&lt;p>This post demonstrates how to enhance your VS Code Copilot extension by adding follow-up prompts to guide users toward further exploration within the Copilot Chat interface. We&amp;rsquo;ll cover:&lt;/p></description></item><item><title>GitHub Copilot Extensions: Using Context in a VS Code Extension</title><link>https://pascoal.net/2024/12/01/gh-copilot-extension-vscode-references/</link><pubDate>Sun, 01 Dec 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/12/01/gh-copilot-extension-vscode-references/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions. Client side and server side extensions.&lt;/p>
&lt;p>In our &lt;a href="https://pascoal.net/2024/11/30/gh-copilot-extension-vscode-llm-integration/">previous post on adding LLM capabilities&lt;/a>, we enhanced our simple chat parrot to use GitHub Copilot&amp;rsquo;s LLM API for transforming text into pirate and Yoda speech styles. Now, we&amp;rsquo;ll explore how to use references to provide additional context to our extension.&lt;/p>
&lt;style type="text/css">
.notice {
--title-color: #fff;
--title-background-color: #6be;
--content-color: #444;
--content-background-color: #e7f2fa;
}
.notice.info {
--title-background-color: #fb7;
--content-background-color: #fec;
}
.notice.tip {
--title-background-color: #5a5;
--content-background-color: #efe;
}
.notice.warning {
--title-background-color: #c33;
--content-background-color: #fee;
}
@media (prefers-color-scheme:dark) {
.notice {
--title-color: #fff;
--title-background-color: #069;
--content-color: #ddd;
--content-background-color: #023;
}
.notice.info {
--title-background-color: #a50;
--content-background-color: #420;
}
.notice.tip {
--title-background-color: #363;
--content-background-color: #121;
}
.notice.warning {
--title-background-color: #800;
--content-background-color: #400;
}
}
body.dark .notice {
--title-color: #fff;
--title-background-color: #069;
--content-color: #ddd;
--content-background-color: #023;
}
body.dark .notice.info {
--title-background-color: #a50;
--content-background-color: #420;
}
body.dark .notice.tip {
--title-background-color: #363;
--content-background-color: #121;
}
body.dark .notice.warning {
--title-background-color: #800;
--content-background-color: #400;
}
.notice {
padding: 18px;
line-height: 24px;
margin-bottom: 24px;
border-radius: 4px;
color: var(--content-color);
background: var(--content-background-color);
}
.notice p:last-child {
margin-bottom: 0
}
.notice-title {
margin: -18px -18px 12px;
padding: 4px 18px;
border-radius: 4px 4px 0 0;
font-weight: 700;
color: var(--title-color);
background: var(--title-background-color);
}
.icon-notice {
display: inline-flex;
align-self: center;
margin-right: 8px;
}
.icon-notice img,
.icon-notice svg {
height: 1em;
width: 1em;
fill: currentColor;
}
.icon-notice img,
.icon-notice.baseline svg {
top: .125em;
position: relative;
}
&lt;/style>&lt;div class="notice note" >
&lt;p class="notice-title">
&lt;span class="icon-notice baseline">
&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 128 300 300">
&lt;path d="M150 128c82.813 0 150 67.188 150 150 0 82.813-67.188 150-150 150C67.187 428 0 360.812 0 278c0-82.813 67.188-150 150-150Zm25 243.555v-37.11c0-3.515-2.734-6.445-6.055-6.445h-37.5c-3.515 0-6.445 2.93-6.445 6.445v37.11c0 3.515 2.93 6.445 6.445 6.445h37.5c3.32 0 6.055-2.93 6.055-6.445Zm-.39-67.188 3.515-121.289c0-1.367-.586-2.734-1.953-3.516-1.172-.976-2.93-1.562-4.688-1.562h-42.968c-1.758 0-3.516.586-4.688 1.563-1.367.78-1.953 2.148-1.953 3.515l3.32 121.29c0 2.734 2.93 4.882 6.64 4.882h36.134c3.515 0 6.445-2.148 6.64-4.883Z"/>
&lt;/svg>
&lt;/span>Note&lt;/p></description></item><item><title>GitHub Copilot Extensions: Integrating an LLM into a VS Code Extension</title><link>https://pascoal.net/2024/11/30/gh-copilot-extension-vscode-llm-integration/</link><pubDate>Sat, 30 Nov 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/11/30/gh-copilot-extension-vscode-llm-integration/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions. Client side and server side extensions.&lt;/p>
&lt;p>Previously &lt;a href="https://pascoal.net/2024/10/31/gh-copilot-extensions-vscode-creating-extension/">GitHub Copilot Extensions: Creating a VS Code Copilot Extension&lt;/a> we created a simple chat participant that just repeated what was typed in the chat window. In this post we will enhance our chat participant to use the GenAI API to parrot the messages like a Pirate or Yoda style, we are now going to improve the parrot extension to use the power of Copilot&amp;rsquo;s large language models.&lt;/p></description></item><item><title>GitHub Copilot Extensions: Creating a VS Code Copilot Extension</title><link>https://pascoal.net/2024/10/31/gh-copilot-extensions-vscode-creating-extension/</link><pubDate>Wed, 30 Oct 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/10/31/gh-copilot-extensions-vscode-creating-extension/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2024/10/22/gh-copilot-extensions/">first post of this series&lt;/a>, we introduced GitHub Copilot Extensions and discussed the two types of extensions. Client side and server side extensions.&lt;/p>
&lt;p>This post covers the basics of creating a GitHub Copilot Extension for VS Code. Future posts in this series will explore more advanced concepts and refinements.&lt;/p>
&lt;h2 id="goal">Goal&lt;/h2>
&lt;p>This guide walks through creating a simple GitHub Copilot Extension for VS Code. We&amp;rsquo;ll focus on the core extension features and development process, using a basic example that will be enhanced in future posts. Rather than getting lost in implementation details, we&amp;rsquo;ll emphasize the key concepts and capabilities of Copilot Extensions by using a simple sample.&lt;/p></description></item><item><title>GitHub Copilot Extensions</title><link>https://pascoal.net/2024/10/22/gh-copilot-extensions/</link><pubDate>Tue, 22 Oct 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/10/22/gh-copilot-extensions/</guid><description>&lt;p>On September 17, GitHub announced the &lt;a href="https://github.blog/changelog/2024-09-17-announcing-the-public-beta-of-github-copilot-extensions-%F0%9F%8E%89/">public preview of GitHub Copilot Extensions&lt;/a>, enabling developers to extend Copilot&amp;rsquo;s capabilities by creating and installing extensions for use in IDEs and on GitHub&amp;rsquo;s web interface. These extensions integrate with tools like Visual Studio, VS Code, GitHub.com, and &lt;a href="https://github.com/mobile">GitHub mobile app&lt;/a>, allowing developers to interact with databases, testing frameworks, deployment tools, and their own data—without leaving their preferred environment. This minimizes context switching and keeps developers in the flow.&lt;/p></description></item><item><title>GitHub Codespaces: Developing GUI Applications 3/3</title><link>https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-3/</link><pubDate>Sun, 28 Jan 2024 00:00:03 +0000</pubDate><guid>https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-3/</guid><description>&lt;p>Third post of a series of three &lt;a href="https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-2/">about running GUI applications on GitHub Codespaces&lt;/a>.&lt;/p>
&lt;p>The second post, &lt;a href="https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-2/">GitHub Codespaces: Developing GUI Applications 2/3&lt;/a>, showed you how to run a GUI application on a Codespace using &lt;a href="https://en.wikipedia.org/wiki/Virtual_Network_Computing">VNC&lt;/a>, this one will show you how to run a GUI application on a Codespace using &lt;a href="https://en.wikipedia.org/wiki/X_Window_System">X11 Server&lt;/a>.&lt;/p>
&lt;h2 id="x11-with-forwarding">X11 (with forwarding)&lt;/h2>
&lt;p>The second way is to use X11 Server, and for which we will rely X11 forwarding, with forwarding we will be able to graphical interfaces of X11 programs running on a remote machine to be displayed on a local client machine without the need to have direct connectivity between the remote machine and the local machine. (X11 was designed from the start to be used over local network connection).&lt;/p></description></item><item><title>GitHub Codespaces: Developing GUI Applications 2/3</title><link>https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-2/</link><pubDate>Sun, 28 Jan 2024 00:00:02 +0000</pubDate><guid>https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-2/</guid><description>&lt;p>Second post of a series of &lt;a href="https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-1/">three about running GUI applications on GitHub Codespaces&lt;/a>.&lt;/p>
&lt;h2 id="vnc">VNC&lt;/h2>
&lt;p>The first way is to use VNC. VNC is a graphical desktop sharing system that uses the &lt;a href="https://en.wikipedia.org/wiki/Remote_Framebuffer">Remote Frame Buffer&lt;/a> protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse events from one computer to another, relaying the graphical screen updates back in the other direction, over a network.&lt;/p>
&lt;p>So we need to install a VNC server on the Codespaces environment and a VNC client on our machine. There are several VNC clients. For this example I will use &lt;a href="https://tigervnc.org/">TigerVNC Viewer&lt;/a>, which is Open Source and available for Windows, Linux and MacOS.&lt;/p></description></item><item><title>GitHub Codespaces: Developing GUI Applications 1/3</title><link>https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-1/</link><pubDate>Sun, 28 Jan 2024 00:00:01 +0000</pubDate><guid>https://pascoal.net/2024/01/28/codespaces-developing-gui-apps-1/</guid><description>&lt;p>&lt;a href="https://github.com/features/codespaces">GitHub Codespaces&lt;/a> allows you to develop in the cloud, with a fully featured development environment that is spun up in seconds. It is a great way to develop your applications without having to install anything on your machine and have a consistent development environment across your team without having to worry about it.&lt;/p>
&lt;p>You can develop just using a browser or you can use one of the supported IDEs (&lt;a href="https://docs.github.com/en/codespaces/developing-in-a-codespace/using-github-codespaces-in-visual-studio-code">VS Code&lt;/a> or &lt;a href="https://docs.github.com/en/codespaces/developing-in-a-codespace/using-github-codespaces-in-your-jetbrains-ide">Jet Brains IDEs&lt;/a>) running on your desktop or even an SSH connection.&lt;/p></description></item><item><title>GitHub Actions: Accessing content from other repositories 2/2</title><link>https://pascoal.net/2023/12/14/gha-accessing-content-from-other-repos-2/</link><pubDate>Thu, 14 Dec 2023 00:00:02 +0000</pubDate><guid>https://pascoal.net/2023/12/14/gha-accessing-content-from-other-repos-2/</guid><description>&lt;p>In the first &lt;a href="https://pascoal.net/2023/12/14/gha-accessing-content-from-other-repos-1/">post&lt;/a> of this series I discussed how to access content from other repositories using the &lt;a href="https://github.com/actions/checkout">actions/checkout&lt;/a> and the different authentication methods that can be used to access private/internal repositories.&lt;/p>
&lt;p>In this post I will present you a simpler and better method to access content from other repositories but it makes sense for some use cases.&lt;/p>
&lt;p>This method is suitable when you need to access content from another repository but you don&amp;rsquo;t need the content to be placed in the workflow workspace.&lt;/p></description></item><item><title>GitHub Actions: Accessing content from other repositories 1/2</title><link>https://pascoal.net/2023/12/14/gha-accessing-content-from-other-repos-1/</link><pubDate>Thu, 14 Dec 2023 00:00:00 +0000</pubDate><guid>https://pascoal.net/2023/12/14/gha-accessing-content-from-other-repos-1/</guid><description>&lt;p>By default, GitHub Actions only allows access to the current repository. However, there are scenarios where you need to access content from other repositories. For example, you may want to use a template repository to create a new repository, built your code by stitching together multiple repositories, Or you may want to access a repository that contains a set of scripts that you want to use in your workflow, contains a set of configuration files that you want to keep in a central place or just data files to be shared in multiple repositories.&lt;/p></description></item><item><title>How to add user enabled feature flags to your Azure DevOps Extensions</title><link>https://pascoal.net/2019/09/03/azure-devops-extensions-user-feature-flags/</link><pubDate>Tue, 03 Sep 2019 00:00:00 +0000</pubDate><guid>https://pascoal.net/2019/09/03/azure-devops-extensions-user-feature-flags/</guid><description>&lt;p>Azure DevOps is quite an &lt;a href="https://docs.microsoft.com/en-us/azure/devops/marketplace-extensibility/?view=azure-devops">extensible product&lt;/a> product; you can develop your extensions that can be used privately on your organization or made publicly available on the &lt;a href="https://marketplace.visualstudio.com/azuredevops">marketplace&lt;/a>.&lt;/p>
&lt;p>There is a wide range of extensions you can write, from Azure Pipelines tasks to extensions that blend in the UI (e.g., a context menu) or add more complete functionality with its own hub.&lt;/p>
&lt;p>It is common in big organizations to have their extensions but don&amp;rsquo;t want them visible on some team projects/users; sometimes they only want to hide some features and not the full extension or even introduce preview features and let users opt-in until it&amp;rsquo;s &amp;ldquo;ready&amp;rdquo; for general consumption.&lt;/p></description></item><item><title>Blog Migration</title><link>https://pascoal.net/2019/07/28/blog-migration/</link><pubDate>Sun, 28 Jul 2019 00:00:00 +0000</pubDate><guid>https://pascoal.net/2019/07/28/blog-migration/</guid><description>&lt;p>I&amp;rsquo;ve decided many months ago to migrate my blog from WordPress to &lt;a href="https://jekyllrb.com/">jekyll&lt;/a>.&lt;/p>
&lt;p>I made an attempt a few months ago, but couldn&amp;rsquo;t find a satisfactory tool that allowed me to a migration without a lot of work.&lt;/p>
&lt;p>This weekend i tried again, I&amp;rsquo;ve found a &lt;a href="https://wordpress.org/plugins/jekyll-exporter/">tool&lt;/a> that is not perfect but it did a lot of leg work for me and they a bunch of regular expressions did the rest.&lt;/p>
&lt;p>All the content has been migrated (but not the comment which is a pain because it it had some good information in there).&lt;/p></description></item><item><title>VSTS: Collect Telemetry for build and release tasks using Application Insights</title><link>https://pascoal.net/2017/11/13/vsts-collect-telemetry-for-build-and-release-tasks-using-application-insights/</link><pubDate>Mon, 13 Nov 2017 23:15:40 +0000</pubDate><guid>https://pascoal.net/2017/11/13/vsts-collect-telemetry-for-build-and-release-tasks-using-application-insights/</guid><description>&lt;p>Developers of &lt;a href="https://docs.microsoft.com/en-us/vsts/extend/overview">extensions for Visual Studio Team Services&lt;/a> (or Team Foundation Server) tend to use &lt;a href="https://azure.microsoft.com/en-us/services/application-insights/">Application Insights&lt;/a> to collect telemetry about their extensions.&lt;/p>
&lt;p>Metrics like usage, performance, errors are collected to know which features are used, which features are working, how they are performing and if they are failing to improve them and better deliver value to its end users.&lt;/p>
&lt;p>There are several types of extensions&lt;/p>
&lt;ul>
&lt;li>Dashboard widgets&lt;/li>
&lt;li>Hubs&lt;/li>
&lt;li>Actions&lt;/li>
&lt;li>Work Item form elements&lt;/li>
&lt;li>Build and release tasks&lt;/li>
&lt;/ul>
&lt;p>Except for build and release tasks, all other extensions types run in a web browser, so it is easy to collect telemetry and Application Insights is a natural fit.&lt;/p></description></item><item><title>VSTS: Generating badges for Releases</title><link>https://pascoal.net/2017/11/01/generating-badges-for-visual-studio-team-services-releases/</link><pubDate>Wed, 01 Nov 2017 15:57:54 +0000</pubDate><guid>https://pascoal.net/2017/11/01/generating-badges-for-visual-studio-team-services-releases/</guid><description>&lt;p>Visual Studio Team Services (and Team Foundation Server) supports &lt;a href="https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/repository#report-build-status">build badges&lt;/a> out of the box giving you an URL for an image that can be embedded in a web page (eg: a wiki or a GitHub page) to visualize the (always updated) status of a build.&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2017/11/image.png">&lt;/p>
&lt;p>Unfortunately &lt;a href="https://www.visualstudio.com/team-services/continuous-integration/">Release Management&lt;/a> doesn’t offer the same support for releases, fortunately it easy to implement a release badge generator with a few lines of code and using VSTS built-in extensibility mechanisms.&lt;/p></description></item><item><title>VSTS Extensions: Improving load time by concatenating modules</title><link>https://pascoal.net/2016/08/16/vsts-extensions-improving-load-time-by-concatenating-modules/</link><pubDate>Tue, 16 Aug 2016 06:00:00 +0000</pubDate><guid>https://pascoal.net/2016/08/16/vsts-extensions-improving-load-time-by-concatenating-modules/</guid><description>&lt;h1 id="introduction">Introduction&lt;/h1>
&lt;p>When implementing a Visual Studio Team Service (or TFS) &lt;a href="https://www.visualstudio.com/docs/integrate/extensions/overview">extension&lt;/a> it is a good practice to split your code among several modules and load them dynamically with the provided &lt;a href="https://en.wikipedia.org/wiki/Asynchronous_module_definition">AMD loader&lt;/a> using the require/define function to load modules asynchronously.&lt;/p>
&lt;p>While having one file per module, improves code legibility and reuse it can have some performance penalty to load many files separately.&lt;/p>
&lt;p>In this post I will show you a technique where you can still have all the benefits of organizing your code in several files (one per module) with all the benefits that this brings and at the same time improve your load time by combining your modules into a single file.&lt;/p></description></item><item><title>Sharing secrets among Team Build and/or Release Management definitions</title><link>https://pascoal.net/2016/04/15/sharing-secrets-among-team-build-andor-release-management-definitions/</link><pubDate>Fri, 15 Apr 2016 23:47:35 +0000</pubDate><guid>https://pascoal.net/2016/04/15/sharing-secrets-among-team-build-andor-release-management-definitions/</guid><description>&lt;p>When creating a team build 2015 (often called build v.next) or a release management definition, you can store secrets in variable (for example for passing a password or a token to a task).&lt;/p>
&lt;p>&lt;a href="https://msdn.microsoft.com/en-us/Library/vs/alm/Build/feature-overview">Secret variables&lt;/a> cannot be seen when viewing/editing a build definition (hence the name secret), only changed.&lt;/p>
&lt;p>Secret variables have some disadvantages&lt;/p>
&lt;ul>
&lt;li>Their scope is limited to the build/release definition, if you want to use the same secret among several definitions you have to replicate them among the definitions&lt;/li>
&lt;li>You can’t apply security to variables, if a user has permission to edit a build definition he can change the secret.&lt;/li>
&lt;/ul>
&lt;p>In order to overcome these two disadvantages I have created a build/release task that can be used to have a single instance of a secret (per team project) and that can be used to pass secrets to tasks.&lt;/p></description></item><item><title>Visual Studio Online hubot scripts replies formatting</title><link>https://pascoal.net/2014/11/26/visual-studio-online-hubot-scripts-replies-formatting/</link><pubDate>Wed, 26 Nov 2014 22:30:00 +0000</pubDate><guid>https://pascoal.net/2014/11/26/visual-studio-online-hubot-scripts-replies-formatting/</guid><description>&lt;p>I have previously blogged about using Hubot with Visual Studio Online on:&lt;/p>
&lt;p>&lt;a href="http://pascoal.net/2014/09/using-hubot-with-visual-studio-online/">Using Hubot with Visual Studio Online&lt;/a>&lt;/p>
&lt;p>&lt;a href="http://pascoal.net/2014/09/using-hubot-with-visual-studio-online-team-rooms/">Using Hubot with Visual Studio Online Team Rooms&lt;/a>&lt;/p>
&lt;p>&lt;a href="http://pascoal.net/2014/10/running-hubot-for-visual-studio-online-on-an-azure-web-site/">Running Hubot for Visual Studio Online on an Azure Web Site&lt;/a>&lt;/p>
&lt;p>Hubot scripts are independent of the chat room type that is managing and can be executed regardless where they are running.&lt;/p>
&lt;p>However sometimes they are more or less tailored to work better with some adapters.&lt;/p></description></item><item><title>Visual Studio Online hubot scripts updated to support API V1.0</title><link>https://pascoal.net/2014/11/25/visual-studio-online-hubot-scripts-update-to-support-api-v1-0/</link><pubDate>Tue, 25 Nov 2014 22:30:00 +0000</pubDate><guid>https://pascoal.net/2014/11/25/visual-studio-online-hubot-scripts-update-to-support-api-v1-0/</guid><description>&lt;p>I have previously blogged about using Hubot with Visual Studio Online on:&lt;/p>
&lt;p>&lt;a href="https://pascoal.net/2014/09/16/using-hubot-with-visual-studio-online/">Using Hubot with Visual Studio Online&lt;/a>&lt;/p>
&lt;p>&lt;a href="https://pascoal.net/2014/09/23/using-hubot-with-visual-studio-online-team-rooms/">Using Hubot with Visual Studio Online Team Rooms&lt;/a>&lt;/p>
&lt;p>&lt;a href="https://pascoal.net/2014/10/20/running-hubot-for-visual-studio-online-on-an-azure-web-site/">Running Hubot for Visual Studio Online on an Azure Web Site&lt;/a>&lt;/p>
&lt;p>A few weeks ago Visual Studio Online &lt;a href="http://www.visualstudio.com/en-us/news/2014-oct-28-vso">REST API has reached V1.0 milestone&lt;/a>, this means it has left preview mode and that the preview API is now deprecated. It still available and works as is, but it will be eventually removed from the product.&lt;/p></description></item><item><title>Running Hubot for Visual Studio Online on an Azure Web Site</title><link>https://pascoal.net/2014/10/20/running-hubot-for-visual-studio-online-on-an-azure-web-site/</link><pubDate>Mon, 20 Oct 2014 23:30:00 +0000</pubDate><guid>https://pascoal.net/2014/10/20/running-hubot-for-visual-studio-online-on-an-azure-web-site/</guid><description>&lt;p>This is the third and last post on this series.&lt;/p>
&lt;p>On the first post &lt;a href="https://pascoal.net/2014/09/16/using-hubot-with-visual-studio-online/">Using Hubot with Visual Studio Online&lt;/a> I showed you, how you could install Hubot on a un*x box (I used an Azure virtual machine) and run commands against a Visual Studio Online account from a campfire chat room, by installing &lt;a href="https://github.com/scrumdod/hubot-vso-scripts">Hubot Scripts for Visual Studio Online&lt;/a>&lt;/p>
&lt;p>On the second post &lt;a href="https://pascoal.net/2014/09/23/using-hubot-with-visual-studio-online-team-rooms/">Using Hubot with Visual Studio Online Team Rooms&lt;/a> I showed, how you could connect the same install to a Visual Studio Online Team Room instead of campfire, by using &lt;a href="https://github.com/scrumdod/hubot-vsonline">Hubot Adapter for Visual Studio Online&lt;/a>&lt;/p></description></item><item><title>Using Hubot with Visual Studio Online Team Rooms</title><link>https://pascoal.net/2014/09/23/using-hubot-with-visual-studio-online-team-rooms/</link><pubDate>Tue, 23 Sep 2014 01:10:41 +0000</pubDate><guid>https://pascoal.net/2014/09/23/using-hubot-with-visual-studio-online-team-rooms/</guid><description>&lt;p>In the &lt;a href="https://pascoal.net/2014/09/16/using-hubot-with-visual-studio-online/">first post of this series&lt;/a> I have shown how you can interact with Visual Studio Online using Hubot.&lt;/p>
&lt;p>For simplicity, I’ve only shown how you could use hubot from Campfire (since it’s what is installed out of the box) to issue commands against Visual Studio Online.&lt;/p>
&lt;p>On this post I will explain how you can do the same, but using &lt;a href="http://visualstudiomagazine.com/articles/2013/09/01/team-rooms.aspx">Visual Studio Online team rooms&lt;/a> instead of campfire.&lt;/p>
&lt;p>Using Team Rooms, has some advantages over campfire. It’s integrated with Web Access, you easily integrate automatic posting of messages to two rooms with an easy interface (to be fair, Visual studio online, provides service hooks to achieve the same effects to other chat rooms, but you have to manage them with more work), links are shown on multi lines and you can even use Team rooms directly from Visual Studio with &lt;a href="http://visualstudiogallery.msdn.microsoft.com/c1bf5e4f-5436-465d-87da-09b2f15ff061">this cool extension&lt;/a>&lt;/p></description></item><item><title>Using Hubot with Visual Studio Online</title><link>https://pascoal.net/2014/09/16/using-hubot-with-visual-studio-online/</link><pubDate>Tue, 16 Sep 2014 23:00:00 +0000</pubDate><guid>https://pascoal.net/2014/09/16/using-hubot-with-visual-studio-online/</guid><description>&lt;p>If you have read Brian Harry post &lt;a href="http://blogs.msdn.com/b/bharry/archive/2014/09/04/visual-studio-online-update-sept-3rd.aspx">Visual Studio Online Update – Sept 4th&lt;/a> you may have noticed that with last week’s update (sprint 70) it is now possible to integrate Visual Studio Online with Hubot.&lt;/p>
&lt;p>Although that is not 100% correct, it was already possible before, the fact is currently there is not too much information how to do it.&lt;/p>
&lt;p>it is my intention with this post (the first from a series of three posts) to try to disseminate information how to integrate Visual Studio Online with Hubot.&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version .8.3 released</title><link>https://pascoal.net/2014/06/09/team-foundation-task-board-enhancer-version-8-3-released/</link><pubDate>Mon, 09 Jun 2014 20:00:00 +0000</pubDate><guid>https://pascoal.net/2014/06/09/team-foundation-task-board-enhancer-version-8-3-released/</guid><description>&lt;p>New minor release of Team Foundation Task Board Enhancer&lt;/p>
&lt;p>TLDR; Two feature changes and two bug fixes. One of them being a security fix. &lt;strong>You are advised to upgrade to this version&lt;/strong>&lt;/p>
&lt;h2 id="new-features-in-this-release">New Features in this release&lt;/h2>
&lt;h3 id="bug-fix-work-item-titles-were-not-properly-escaped">Bug Fix, work item titles were not properly escaped&lt;/h3>
&lt;p>The work item title where not properly escaped, if someone entered invalid HTML into the work item title the tile might not be correctly displayed.&lt;/p></description></item><item><title>VSO Enhancer support for the new User Voice Visual Studio Online Integration</title><link>https://pascoal.net/2014/05/12/vso-enhancer-support-for-the-new-user-voice-vso-integration/</link><pubDate>Mon, 12 May 2014 21:00:00 +0000</pubDate><guid>https://pascoal.net/2014/05/12/vso-enhancer-support-for-the-new-user-voice-vso-integration/</guid><description>&lt;p>One of the recent announcements at today’s &lt;a href="http://northamerica.msteched.com/">Teched North America&lt;/a> keynote, was a new integration between &lt;a href="https://www.uservoice.com/">UserVoice&lt;/a> and &lt;a href="http://www.visualstudio.com/">Visual Studio Online&lt;/a>.&lt;/p>
&lt;p>This new integration enables the creation of work items associated with uservoice suggestions without having to leave uservoice&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2014/05/image.png">&lt;/p>
&lt;p>From inside uservoice’s backoffice you can see which suggestions are linked to work items&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2014/05/image1.png">&lt;/p>
&lt;p>Comments on both uservoice and VSO will be synched to the other side&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2014/05/image2.png">&lt;/p>
&lt;p>This &lt;a href="https://www.uservoice.com/for/visual-studio-online/">integration is still in beta&lt;/a> (sorry no direct link, just click on Visual Studio). Visualstudio.com has &lt;a href="http://www.visualstudio.com/get-started/uservoice-vs">details how to set up&lt;/a>&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version .8.1 released</title><link>https://pascoal.net/2014/03/19/team-foundation-task-board-enhancer-version-8-1-released/</link><pubDate>Wed, 19 Mar 2014 00:00:00 +0000</pubDate><guid>https://pascoal.net/2014/03/19/team-foundation-task-board-enhancer-version-8-1-released/</guid><description>&lt;p>[Update: 24 March] Found a minor bug in 12.0.8.1 (requirement colors were not being shown) so version 12.0.8.2 has been released (no announcement)&lt;/p>
&lt;p>&lt;del>Download version 12.0.8.2 of the extension&lt;/del>&lt;/p>
&lt;p>New release of Team Foundation Task Board Enhancer&lt;/p>
&lt;p>This is a very minor release, it brings a new feature and support for TFS 2013 Update 2 (release candidate)&lt;/p>
&lt;h2 id="new-features-in-this-release">New Features in this release&lt;/h2>
&lt;h3 id="show-requirements-execution-summary">Show requirements execution summary&lt;/h3>
&lt;p>In the taskboard, under your sprint details you can now see a summary of the completed requirements.&lt;/p></description></item><item><title>A pre announcement for…</title><link>https://pascoal.net/2014/03/02/a-pre-announcement-for/</link><pubDate>Sun, 02 Mar 2014 23:49:03 +0000</pubDate><guid>https://pascoal.net/2014/03/02/a-pre-announcement-for/</guid><description>&lt;p>On new years eve, I promised myself it was going to a calm year, so I could finished some stuff I had been working. By the first week of the year I had already committed to so much stuff, I immediately knew it was going to be a not so calm one.&lt;/p>
&lt;p>In the meanwhile I was proved wrong, it went from not so calm to crazy status.&lt;/p>
&lt;p>I still want to do a proper pre “launch”, but since I have so many things going (really cool stuff, that I can’t talk about 😀 ), I want to do a pre announcement on something that I have been working on and off for last months.&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version .8.0 released</title><link>https://pascoal.net/2014/01/27/team-foundation-task-board-enhancer-version-8-0-released/</link><pubDate>Mon, 27 Jan 2014 19:05:00 +0000</pubDate><guid>https://pascoal.net/2014/01/27/team-foundation-task-board-enhancer-version-8-0-released/</guid><description>&lt;p>New release of Team Foundation Task Board Enhancer&lt;/p>
&lt;p>This is a very minor release, except for the fact it now brings support for TFS 2013 that so many people have been asking for.&lt;/p>
&lt;h2 id="new-features-in-this-release">New Features in this release&lt;/h2>
&lt;h4 id="requirement-coloring-bug-fix">Requirement Coloring bug fix&lt;/h4>
&lt;p>The version for TFS 2012, fixes an issue where on non english versions of TFS the color for the (different type) of requirements were all the same.&lt;/p>
&lt;h4 id="mark-a-blocked-work-item-with-a-tag">Mark a blocked work item with a tag&lt;/h4>
&lt;p>Previous versions allowed you to easily visualized blocked work items. The only way to mark them as blocked, was setting the Blocked field (field with the &lt;em>Microsoft.VSTS.CMMI.Blocked&lt;/em> reference name) to yes. This worked fine, if the process template didn’t had this field, you had to add it, but if you couldn’t change your process template then you couldn’t use this feature.&lt;/p></description></item><item><title>First NetPonto Community Windows Phone Hackaton (Lisbon)</title><link>https://pascoal.net/2014/01/22/first-netponto-community-windows-phone-hackaton-lisbon/</link><pubDate>Wed, 22 Jan 2014 18:53:51 +0000</pubDate><guid>https://pascoal.net/2014/01/22/first-netponto-community-windows-phone-hackaton-lisbon/</guid><description>&lt;p>On the 1st of February, NetPonto community is going to host its first hackathon.&lt;/p>
&lt;p>The hackathon is focused on Windows Phone. Besides the prizes (Nokia Phones, MSDN subscriptions), the winners will also receive &lt;a href="http://www.dvlup.com/">dvlup&lt;/a> points.&lt;/p>
&lt;p>You can read all the details &lt;a href="http://netponto.org/evento/1o-hackathon-da-comunidade-netponto/">on NetPonto site&lt;/a>.&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 2.7.9 released</title><link>https://pascoal.net/2013/11/04/team-foundation-task-board-enhancer-version-2-7-9-released/</link><pubDate>Mon, 04 Nov 2013 23:11:38 +0000</pubDate><guid>https://pascoal.net/2013/11/04/team-foundation-task-board-enhancer-version-2-7-9-released/</guid><description>&lt;p>New release of Team Foundation Task Board Enhancer&lt;/p>
&lt;p>This version only works on TFS 2012 with Update 2 or Update 3 installed. TFS 2012 (RTM or with Update 1) is no longer supported. You can still use version &lt;a href="https://pascoal.net/2013/06/10/team-foundation-task-board-enhancer-version-7-6-released/">0.7.6&lt;/a>.&lt;/p>
&lt;h2 id="new-features-in-this-release">New Features in this release&lt;/h2>
&lt;p>This version brings some parity of features between the kanban board and the task board. It adds too much needed features to the kanban board.&lt;/p>
&lt;h4 id="kanban-board-new-features">Kanban Board new features&lt;/h4>
&lt;p>It now shows on the kanban board the blocked status of a kanban card&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 2.7.8 released</title><link>https://pascoal.net/2013/10/12/team-foundation-task-board-enhancer-version-2-7-8-released/</link><pubDate>Sat, 12 Oct 2013 18:00:00 +0000</pubDate><guid>https://pascoal.net/2013/10/12/team-foundation-task-board-enhancer-version-2-7-8-released/</guid><description>&lt;p>[Update 16 Oct] I’ve decided to remove this version from the download since it has a few annoying bugs. I will release a fixed version next week&lt;/p>
&lt;p>New release of Team Foundation Task Board Enhancer&lt;/p>
&lt;p>This version only works on TFS 2012 with Update 2 or Update 3 installed. TFS 2012 (RTM or with Update 1) is no longer supported. You can still use version &lt;a href="http://pascoal.net/2013/06/team-foundation-task-board-enhancer-version-7-6-released/">0.7.6&lt;/a>.&lt;/p>
&lt;h2 id="new-features-in-this-release">New Features in this release&lt;/h2>
&lt;p>This is mainly a bug fixing release. It fixes two bugs and I’ve managed to sneak in a performance improvement.&lt;/p></description></item><item><title>TFS Work Item Tags: entering multiple tags in one swoop</title><link>https://pascoal.net/2013/10/07/tfs-work-item-tags-entering-multiple-tags-in-one-swoop/</link><pubDate>Mon, 07 Oct 2013 22:24:16 +0000</pubDate><guid>https://pascoal.net/2013/10/07/tfs-work-item-tags-entering-multiple-tags-in-one-swoop/</guid><description>&lt;p>&lt;a href="http://blogs.msdn.com/b/bharry/archive/2013/01/30/announcing-visual-studio-2012-update-2-vs2012-2.aspx">Update 2 for TFS 2012&lt;/a> brought us Work Item tagging. Work item tags allow users to add tags in a free format way.&lt;/p>
&lt;p>Besides adding tags to work items&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2013/10/image.png">&lt;/p>
&lt;p>you can also filter backlog items by tags&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2013/10/image1.png">&lt;/p>
&lt;p>while the current work item tags have yet to fill all their potential since there is still a lot that can be done in terms of features. Tags can only be added/edited/viewed in Web Access, you cannot query work items by tags (some people for example want to limit the tags a user can choose,something I think would be too limiting and it goes against the self organization of teams).&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 2.7.7 released</title><link>https://pascoal.net/2013/07/30/team-foundation-task-board-enhancer-version-2-7-7-released/</link><pubDate>Tue, 30 Jul 2013 20:00:00 +0000</pubDate><guid>https://pascoal.net/2013/07/30/team-foundation-task-board-enhancer-version-2-7-7-released/</guid><description>&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="https://pascoal.net/2013/06/10/team-foundation-task-board-enhancer-version-7-6-released/">.7.6&lt;/a>, &lt;a href="https://pascoal.net/2013/05/27/team-foundation-task-board-enhancer-version-7-5-released/">.7.5&lt;/a>, &lt;a href="https://pascoal.net/2013/05/13/team-foundation-task-board-enhancer-version-7-released/">.7&lt;/a>, &lt;a href="%222013/04/01/team-foundation-task-board-enhancer-version-2-6-2-released-for-update-2-only/%22">2.6.2 (update2 only)&lt;/a>, &lt;a href="https://pascoal.net/2013/02/04/team-foundation-task-board-enhancer-version-0-6-1-released/">0.6.1&lt;/a>, &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a> , &lt;a href="https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a> , &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a> and &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> ).&lt;/p>
&lt;p>If you want to know what Task Board Enhancer is or want to see the full list of features, head on to the &lt;a href="https://pascoal.net/task-board-enhancer">Task Board Enhancer page&lt;/a>.&lt;/p>
&lt;p>This version only works on TFS 2012 with update 2 or update 3 installed, TFS 2012 (RTM or with Update 1) is no longer supported (you can still use version 0.7.6).&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version .7.6 released</title><link>https://pascoal.net/2013/06/10/team-foundation-task-board-enhancer-version-7-6-released/</link><pubDate>Mon, 10 Jun 2013 23:50:00 +0000</pubDate><guid>https://pascoal.net/2013/06/10/team-foundation-task-board-enhancer-version-7-6-released/</guid><description>&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="http://pascoal.net/2013/05/team-foundation-task-board-enhancer-version-7-5-released/">.7.5&lt;/a>, &lt;a href="http://pascoal.net/2013/05/team-foundation-task-board-enhancer-version-7-released/">.7&lt;/a>, &lt;a href="http://pascoal.net/2013/04/team-foundation-task-board-enhancer-version-2-6-2-released-for-update-2-only/">2.6.2 (update2 only)&lt;/a>, &lt;a href="http://pascoal.net/2013/02/team-foundation-task-board-enhancer-version-0-6-1-released/">0.6.1&lt;/a>, &lt;a href="http://pascoal.net/2013/01/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a>, &lt;a href="http://pascoal.net/2013/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a>, &lt;a href="http://pascoal.net/2012/12/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a>, &lt;a href="http://pascoal.net/2012/09/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a>, &lt;a href="http://pascoal.net/2012/09/team-foundation-task-board-enhancer-more-features/">0.2&lt;/a> and &lt;a href="http://pascoal.net/2012/09/team-foundation-task-board-auto-refresh/">0.1&lt;/a>).&lt;/p>
&lt;p>If you want to know what Task Board Enhancer is or want to see the full list of features, head on to the &lt;a href="https://pascoal.net/task-board-enhancer">Task Board Enhancer page&lt;/a>.&lt;/p>
&lt;h1 id="new-features-in-this-release">New Features in this release&lt;/h1>
&lt;p>There are no new features in this release. It’s just a bug fixing release.&lt;/p>
&lt;p>In the previous version, I did an optimization for modern browser to make it a little faster in the process I’ve broke Internet Explorer 8 support (every time I do a release, I test it with only the newest version Chrome, IE 9 and 10 and Firefox).&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version .7.5 released</title><link>https://pascoal.net/2013/05/27/team-foundation-task-board-enhancer-version-7-5-released/</link><pubDate>Mon, 27 May 2013 21:50:00 +0000</pubDate><guid>https://pascoal.net/2013/05/27/team-foundation-task-board-enhancer-version-7-5-released/</guid><description>&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="https://pascoal.net/2013/05/13/team-foundation-task-board-enhancer-version-7-released/">.7&lt;/a>, &lt;a href="2013/04/01/team-foundation-task-board-enhancer-version-2-6-2-released-for-update-2-only/">2.6.2 (update2 only)&lt;/a>, &lt;a href="https://pascoal.net/2013/02/04/team-foundation-task-board-enhancer-version-0-6-1-released/">0.6.1&lt;/a>, &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a> , &lt;a href="https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a> , &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a> and &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> ).&lt;/p>
&lt;p>If you want to know what Task Board Enhancer is or want to see the full list of features, head on to the &lt;a href="https://pascoal.net/task-board-enhancer">Task Board Enhancer page&lt;/a>.&lt;/p>
&lt;p>When I started doing this, it was just a small thing. I never expected it to become so big, so on this release most of the time was cleaning up the code (which grew very organically) to prepare it for future features. So this a very small release with only one features and two small improvements.&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version .7 released</title><link>https://pascoal.net/2013/05/13/team-foundation-task-board-enhancer-version-7-released/</link><pubDate>Mon, 13 May 2013 17:00:00 +0000</pubDate><guid>https://pascoal.net/2013/05/13/team-foundation-task-board-enhancer-version-7-released/</guid><description>&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="2013/04/01/team-foundation-task-board-enhancer-version-2-6-2-released-for-update-2-only/">2.6.2 (update2 only)&lt;/a>, &lt;a href="https://pascoal.net/2013/02/04/team-foundation-task-board-enhancer-version-0-6-1-released/">0.6.1&lt;/a>, &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a> , &lt;a href="https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a> , &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a> and &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> ).&lt;/p>
&lt;p>This release brings a lot of new stuff. Some in form in features, others in form of things around Task Board Enhancer.&lt;/p>
&lt;h2 id="newsletter">Newsletter&lt;/h2>
&lt;p>The first is the creation of the Team Foundation Board Enhancer (you can subscribe it &lt;a href="http://eepurl.com/zharn%22">here&lt;/a> or on the form located on the right sidebar).&lt;/p>
&lt;p>I’ve created the newsletter to better understand the number of people using the extension, I have some ideas on the number of users by the downloads, comments and the occasional email I receive.&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 2.6.2 released (for update 2 only)</title><link>https://pascoal.net/2013/04/01/team-foundation-task-board-enhancer-version-2-6-2-released-for-update-2-only/</link><pubDate>Mon, 01 Apr 2013 23:50:00 +0000</pubDate><guid>https://pascoal.net/2013/04/01/team-foundation-task-board-enhancer-version-2-6-2-released-for-update-2-only/</guid><description>&lt;p>TL;DR This is an update release to make it work with the changes introduced in update 2 (it _only works _with TFS 2012 Update 2, doesn’t work on previous version). No new features, doesn’t work on any TFS version besides update 2&lt;/p>
&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="https://pascoal.net/2013/02/04/team-foundation-task-board-enhancer-version-0-6-1-released/">0.6.1&lt;/a>, &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a> , &lt;a href="https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a> , &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a> and &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> ).&lt;/p>
&lt;p>Let’s just start with standard disclaimer😀&lt;/p>
&lt;p>&lt;strong>This extension uses undocumented TFS mechanisms, this means _there is a risk _(which I’m not able to quantify) it will stop working in the future with new TFS releases or updates . If that happens, the fact that the extension no longer works, it will be my sole responsibility and not of Microsoft.&lt;/strong>&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 0.6.1 released</title><link>https://pascoal.net/2013/02/04/team-foundation-task-board-enhancer-version-0-6-1-released/</link><pubDate>Mon, 04 Feb 2013 23:55:00 +0000</pubDate><guid>https://pascoal.net/2013/02/04/team-foundation-task-board-enhancer-version-0-6-1-released/</guid><description>&lt;p>TL;DR This is mainly a minor release for bug fixing (with a minor feature added as bonus).&lt;/p>
&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a> , &lt;a href="https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a> , &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a>#160; and &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> ).&lt;/p>
&lt;p>Let’s just start with standard disclaimer😀&lt;/p>
&lt;p>&lt;strong>This extension uses undocumented TFS mechanisms, this means _there is a risk _(which I’m not able to quantify) it will stop working in the future with new TFS releases or updates . If that happens, the fact that the extension no longer works, it will be my sole responsibility and not of Microsoft.&lt;/strong>&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 0.6 released</title><link>https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/</link><pubDate>Mon, 07 Jan 2013 21:50:00 +0000</pubDate><guid>https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/</guid><description>&lt;p>New release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a>, &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a> and &lt;a href="https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/">0.5&lt;/a>).&lt;/p>
&lt;p>Let’s just start with standard disclaimer 😀&lt;/p>
&lt;p>&lt;strong>This extension uses undocumented TFS mechanisms, this means _there is a risk _(which I’m not able to quantify) it will stop working in the future with new TFS releases or updates . If that happens, the fact that the extension no longer works, it will be my sole responsibility and not of Microsoft.&lt;/strong>&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 0.5 released</title><link>https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/</link><pubDate>Tue, 01 Jan 2013 23:55:00 +0000</pubDate><guid>https://pascoal.net/2013/01/01/team-foundation-task-board-enhancer-version-0-5-released/</guid><description>&lt;p>[Update: &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">Version 0.6 released&lt;/a>]&lt;/p>
&lt;p>With the new year, comes a new release of my Team Foundation Task Board Enhancer (previous versions &lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">0.1&lt;/a> , &lt;a href="https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/">02&lt;/a> , &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">0.3&lt;/a> and &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">0.4&lt;/a>).&lt;/p>
&lt;p>Let’s just start with standard disclaimer😀&lt;/p>
&lt;p>&lt;strong>This extension uses undocumented TFS mechanisms, this means _there is a risk _(which I’m not able to quantify) it will stop working in the future with new TFS releases or updates . If that happens, the fact that the extension no longer works, it will be my sole responsibility and not of Microsoft.&lt;/strong>&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 0.4 released</title><link>https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/</link><pubDate>Mon, 10 Dec 2012 23:55:00 +0000</pubDate><guid>https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/</guid><description>&lt;p>[Update: Version 0.5 has been released]&lt;/p>
&lt;p>[Update: I’ve release version 0.4.2 to replace version 0.4.1 since a bug has been found on the Kanban board (the IDs were completely wrong). I guess I can now declare 0.4 the worst version released to date 😀 ]&lt;/p>
&lt;p>&lt;del>[Update: I&amp;rsquo;ve released version 0.4.1 to replace version 0.4, which was totally broken on 2012 RTM. My Apologies to everyone who had already downloaded version 0.4 and has not upgraded to TFS 2012 Quarterly update yet]&lt;/del>&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: version 0.3 released</title><link>https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/</link><pubDate>Sun, 30 Sep 2012 22:50:00 +0000</pubDate><guid>https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/</guid><description>&lt;p>[Update: If you are here looking for a way to see blocked tasks, then take a look at version &lt;a href="https://pascoal.net/2013/01/07/team-foundation-task-board-enhancer-version-0-6-released/">0.6&lt;/a> which already has this feature]&lt;br>
[Update: &lt;a href="https://pascoal.net/2012/12/10/team-foundation-task-board-enhancer-version-0-4-released/">Version 0.4 released&lt;/a>]&lt;/p>
&lt;p>[Update: Found an issue with expand/collapse all not working on Internet Explorer. Released 0.3.1 to fix this issue. Download at the bottom]&lt;/p>
&lt;p>This is the third release of my TFS Task Board Enhancer, a TFS Web Access 2012, that adds some features to the task board.&lt;/p></description></item><item><title>Team Foundation Task Board Enhancer: More Features</title><link>https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/</link><pubDate>Tue, 18 Sep 2012 22:19:00 +0000</pubDate><guid>https://pascoal.net/2012/09/18/team-foundation-task-board-enhancer-more-features/</guid><description>&lt;p>[Update: &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">Version 0.3 has been released&lt;/a>]&lt;/p>
&lt;p>In a previous post (&lt;a href="https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/">Team Foundation Task Board: Auto Refresh&lt;/a>) I talked about how Team Foundation Server task board is missing some functionalities and how I implemented a Web Access Extension to augment it’s functionality. Version 0.1 implemented an auto refresh feature, so it could be used to display the task board in big unattended wall screen.&lt;/p>
&lt;p>Even though the first version, only added the auto refresh feature, I mentioned this extension was called Task Board Enhancer because I wanted it to provide more than the auto refresh feature.&lt;/p></description></item><item><title>Team Companion: Free Personal Licenses Giveaway</title><link>https://pascoal.net/2012/09/12/team-companion-free-personal-licenses-giveaway/</link><pubDate>Wed, 12 Sep 2012 15:00:00 +0000</pubDate><guid>https://pascoal.net/2012/09/12/team-companion-free-personal-licenses-giveaway/</guid><description>&lt;p>Today &lt;a href="http://www.teamcompanion.com/">Team Companion&lt;/a> not only reached a new milestone (v 4.7) but is also shipping simultaneously with VS 2012.&lt;/p>
&lt;p>For those who are not aware, Team Companion is an Outlook add-in that allows you to manage your TFS work items, do agile planning, see the reports and SharePoint documents (associated with a team project) right from Outlook, without having to open VS. It allows you to easily send a list of work items via email, create work items directly from an email, among many other things.&lt;/p></description></item><item><title>Team Foundation Task Board: Auto Refresh</title><link>https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/</link><pubDate>Tue, 04 Sep 2012 23:50:00 +0000</pubDate><guid>https://pascoal.net/2012/09/04/team-foundation-task-board-auto-refresh/</guid><description>&lt;p>[Update: &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">Version 0.3 has been released&lt;/a>]&lt;/p>
&lt;p>In a previous post I talked how you could enhance TFS task board by adding &lt;a href="https://pascoal.net/2012/08/24/adding-work-item-ids-to-team-foundation-server-board/">the work item ids&lt;/a> to the cards using a bookmarklet and also mentioned several things that people usually want added to their task board (like card coloring).&lt;/p>
&lt;p>In that post I didn’t mentioned a common request (was saving it for this post😀) is the ability for the task board to be automatically refreshed.&lt;/p></description></item><item><title>Adding work item ids to Team Foundation Server Board</title><link>https://pascoal.net/2012/08/24/adding-work-item-ids-to-team-foundation-server-board/</link><pubDate>Fri, 24 Aug 2012 17:48:00 +0000</pubDate><guid>https://pascoal.net/2012/08/24/adding-work-item-ids-to-team-foundation-server-board/</guid><description>&lt;p>[Update: this feature has now been included in my Web Access Extension &lt;a href="https://pascoal.net/2012/09/30/team-foundation-task-board-enhancer-version-0-3-released/">Task Board Enhancer&lt;/a>]&lt;/p>
&lt;p>TL;DR Create a bookmark with this URL:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-javascript" data-lang="javascript">&lt;span class="line">&lt;span class="cl">&lt;span class="nx">javascript&lt;/span>&lt;span class="o">:&lt;/span>&lt;span class="nx">$&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;.tbTile&amp;#39;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">each&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kd">function&lt;/span>&lt;span class="p">(){&lt;/span>&lt;span class="kd">var&lt;/span> &lt;span class="nx">t&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">id&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">substring&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="mi">5&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="mi">999&lt;/span>&lt;span class="p">),&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nx">$&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">find&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;.witTitle&amp;#39;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">first&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">attr&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;_wi&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">===&lt;/span>&lt;span class="kc">undefined&lt;/span>&lt;span class="o">&amp;amp;&amp;amp;&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">attr&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;_wi&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="nx">t&lt;/span>&lt;span class="p">),&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">html&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;&amp;lt;strong&amp;gt;&amp;#39;&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nx">t&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="s1">&amp;#39;&amp;lt;/strong&amp;gt;-&amp;#39;&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">text&lt;/span>&lt;span class="p">()))}),&lt;/span>&lt;span class="nx">$&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;.board-tile&amp;#39;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">each&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="kd">function&lt;/span>&lt;span class="p">(){&lt;/span>&lt;span class="kd">var&lt;/span> &lt;span class="nx">t&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">id&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="o">=&lt;/span>&lt;span class="nx">$&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="k">this&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">find&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;.title&amp;#39;&lt;/span>&lt;span class="p">).&lt;/span>&lt;span class="nx">first&lt;/span>&lt;span class="p">();&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">attr&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;_wi&amp;#39;&lt;/span>&lt;span class="p">)&lt;/span>&lt;span class="o">===&lt;/span>&lt;span class="kc">undefined&lt;/span>&lt;span class="o">&amp;amp;&amp;amp;&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">attr&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;_wi&amp;#39;&lt;/span>&lt;span class="p">,&lt;/span>&lt;span class="nx">t&lt;/span>&lt;span class="p">),&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">html&lt;/span>&lt;span class="p">(&lt;/span>&lt;span class="s1">&amp;#39;&amp;lt;strong&amp;gt;&amp;#39;&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nx">t&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="s1">&amp;#39;&amp;lt;/strong&amp;gt;-&amp;#39;&lt;/span>&lt;span class="o">+&lt;/span>&lt;span class="nx">n&lt;/span>&lt;span class="p">.&lt;/span>&lt;span class="nx">text&lt;/span>&lt;span class="p">()))})&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>Team Foundation board has been introduced in TFS 2012 and it’s a pretty effective way to visualize your team’s work and the state of a sprint, not only it’s useful during day to day use, but it’s also pretty useful during your daily sprint meeting (for example you can see this Adam Cogan video (&lt;a href="http://www.youtube.com/watch?v=YR84qH6d7QE&amp;amp;feature=plcp">short version&lt;/a>) (&lt;a href="http://www.youtube.com/watch?v=-UUrLxNBK_g&amp;amp;feature=plcp">long version&lt;/a>)where he interviewed the team responsible for TFS’s agile tooling at Microsoft and how they are &lt;a href="http://en.wikipedia.org/wiki/Eating_your_own_dog_food">dogfooding&lt;/a> it).&lt;/p></description></item><item><title>Developer 0.0</title><link>https://pascoal.net/2012/04/09/developer-0-0/</link><pubDate>Mon, 09 Apr 2012 23:05:00 +0000</pubDate><guid>https://pascoal.net/2012/04/09/developer-0-0/</guid><description>&lt;blockquote>
&lt;p>The successful warrior is the average man, with laser-like focus.&lt;/p>
&lt;p>Bruce Lee&lt;/p>&lt;/blockquote>
&lt;h1 id="why">Why?&lt;/h1>
&lt;p>Last December I did a presentation on &lt;a href="http://netponto.org">Netponto&lt;/a>, a Portuguese .Net user group. It was a very atypical presentation for me, since it had zero technical content.&lt;/p>
&lt;p>The presentation served several purposes (and different objectives). First it was meant to fulfill a promise I had made to &lt;a href="http://caioproiete.com/">Caio Proiete&lt;/a> that I would do another presentation at a &lt;a href="http://netponto.org">Netponto&lt;/a> meeting. That was the first part of the promise, the second one, was that I would do an offensive presentation which would lead to no further invitations for talks (both a promise and an objective 😀). Thirdly it was a presentation that I wanted to do for a long time (with perhaps opposing motivations).&lt;/p></description></item><item><title>On Founder Mistakes…</title><link>https://pascoal.net/2012/02/20/on-founder-mistakes/</link><pubDate>Mon, 20 Feb 2012 00:30:00 +0000</pubDate><guid>https://pascoal.net/2012/02/20/on-founder-mistakes/</guid><description>&lt;p>This post is not technical. If you are looking for technical content post then you might skip this one.&lt;/p>
&lt;p>&lt;img loading="lazy" src="https://pascoal.net/assets/uploads/2012/02/goodchoicebadchoice.jpg">&lt;/p>
&lt;p>Recently my former &lt;a href="http://bfcamara.com/">business partner Bruno Camara&lt;/a> (I say former because we no longer own any shares of the company we &lt;a href="http://agilior.pt">the company we co-founded (a Portuguese consultancy shop focused on Microsoft products)&lt;/a> ) [re] started blogging.&lt;/p>
&lt;p>When we started the company (8 years ago), we knew it wouldn’t be an easy task. Specially in a country where those who succeed are not viewed with pride but with envy, whose success has surely arrived due to luck,scams or some shady patronage. Work, talent or risk taking are variables that are never considered to be part the equation.&lt;/p></description></item><item><title>My Blogging in 2011</title><link>https://pascoal.net/2011/12/31/my-blogging-in-2011/</link><pubDate>Sat, 31 Dec 2011 13:11:16 +0000</pubDate><guid>https://pascoal.net/2011/12/31/my-blogging-in-2011/</guid><description>&lt;p>Lately I haven’t had the time to blog, so I thought I could wrap the year with some of (my) blogging from 2011. A kind of retrospective&lt;/p>
&lt;h3 id="march">March&lt;/h3>
&lt;p>Restarted blogging (third round) on this domain with the &lt;a href="https://pascoal.net/2011/03/26/bootstrapping-my-blog-round-iii/">Bootstrapping my blog. Round III&lt;/a> post&lt;/p>
&lt;h3 id="april">April&lt;/h3>
&lt;p>&lt;a href="https://pascoal.net/2011/04/02/visual-studio-and-tfs-books/">Visual Studio and TFS Books&lt;/a>.****if I wrote this today I would &lt;strong>necessarily&lt;/strong> have to add &lt;a href="http://www.amazon.co.uk/Agile-Software-Engineering-Visual-Studio/dp/0321685857">Agile Software Engineering with Visual Studio: From Concept to Continuous Feedback&lt;/a> (you can read my review on Amazon) and probably &lt;a href="http://www.amazon.co.uk/Professional-Scrum-Foundation-Server-Programmer/dp/0470943335/">Professional Scrum With Team Foundation Server 2010&lt;/a> (which I haven’t read)&lt;/p></description></item><item><title>Team Foundation Build: Sharing parameters between several build definitions</title><link>https://pascoal.net/2011/11/15/team-foundation-build-sharing-parameters-between-several-build-definitions/</link><pubDate>Tue, 15 Nov 2011 23:30:00 +0000</pubDate><guid>https://pascoal.net/2011/11/15/team-foundation-build-sharing-parameters-between-several-build-definitions/</guid><description>&lt;p>Team Foundation Build provides us with a nice editor where we can define parameters (both at design time and queue time) to influence the behavior of our builds and it is really easy to change them.&lt;/p>
&lt;p>However sometimes we need to have a parameter shared across several build definitions. Using out of the box features we are forced to place the same value on all build definitions and if we wish to change the value we have to manually change all of them (we can always write some one off code that will replace the value in bulk).&lt;/p></description></item><item><title>Using Team Foundation Server Registry–Part II the API</title><link>https://pascoal.net/2011/11/13/using-team-foundation-server-registrypart-ii-the-api/</link><pubDate>Sun, 13 Nov 2011 23:31:00 +0000</pubDate><guid>https://pascoal.net/2011/11/13/using-team-foundation-server-registrypart-ii-the-api/</guid><description>&lt;p>&lt;a href="https://pascoal.net/2011/11/13/using-team-foundation-server-registrypart-i-the-concepts/">On the first part of this series&lt;/a> I talked about what is the registry and some basic scenarios usage, on this post I want to talk about how you manipulate registry entries.&lt;/p>
&lt;p>You have two choices, using an utility to manipulate entries or using TFS object model (or &lt;a href="http://archive.msdn.microsoft.com/TfsSdk">SDK as it is officially called&lt;/a>) using a .Net language or Powershell&lt;/p>
&lt;h1 id="using-an-utility">Using an utility&lt;/h1>
&lt;p>&lt;a href="http://blog.nenoloje.com/">Neno Loje&lt;/a> wrote tfsreg.exe that you can use to manipulate (both read and write) registry values.&lt;/p></description></item><item><title>Using Team Foundation Server Registry–Part I The concepts</title><link>https://pascoal.net/2011/11/13/using-team-foundation-server-registrypart-i-the-concepts/</link><pubDate>Sun, 13 Nov 2011 23:30:00 +0000</pubDate><guid>https://pascoal.net/2011/11/13/using-team-foundation-server-registrypart-i-the-concepts/</guid><description>&lt;p>Since the beginning Team Foundation Server uses a registry to store it’s settings (like Sharepoint location,external address,database configuration, etc), with the introduction of the 2010 version, the registry has been revamped to be much easier to use (pre 2010 it was a XML file that you had to manager yourself. Including the values that didn’t pertain you).&lt;/p>
&lt;p>So starting with 2010, we have a nice API to manipulate the registry in a easier way. The registry is not only used by TFS to store it’s settings but it can also be used to store your settings.&lt;/p></description></item><item><title>Team Build: Building code with Visual Studio</title><link>https://pascoal.net/2011/10/04/team-build-building-code-with-visual-studio/</link><pubDate>Tue, 04 Oct 2011 01:05:22 +0000</pubDate><guid>https://pascoal.net/2011/10/04/team-build-building-code-with-visual-studio/</guid><description>&lt;p>Little Synopse (so you don’t give up on the first boring paragraph 😀).&lt;/p>
&lt;p>On this post I’m intend to explain how you can build your code in Team Build using &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a>, for project types or for solutions that contains projects not supported by &lt;a href="http://msdn.microsoft.com/en-us/library/0k6kkbsd.aspx">MSBuild&lt;/a>.&lt;/p>
&lt;p>A few months ago (ok more than a few) I wrote two posts (&lt;a href="https://pascoal.net/2011/04/29/getting-visual-studio-installation-directory/">Getting Visual Studio installation directory&lt;/a> and &lt;a href="https://pascoal.net/2011/10/04/team-build-building-code-with-visual-studio/">Getting Visual Studio version of a Solution file&lt;/a>) where I explained how we could get the installation folder of a given version of Visual Studio and how you can determine the version of Visual Studio (solution) file.&lt;/p></description></item><item><title>Community TFS 2010 Build Extensions–September Release</title><link>https://pascoal.net/2011/09/22/community-tfs-2010-build-extensionsseptember-release/</link><pubDate>Thu, 22 Sep 2011 22:34:43 +0000</pubDate><guid>https://pascoal.net/2011/09/22/community-tfs-2010-build-extensionsseptember-release/</guid><description>&lt;p>The Community TFS Build Extensions just released a new version, these are a set of Team Build WF Activities that will ease the work of build masters. It has a over 100 activities that range from file activities, VMs (Hyper-V and Virtual PC, TFS objects manipulation, VB6 compiling, IIS7, code metrics, stylecop,assembly info file manipulation and powershell execution (to name just a few).&lt;/p>
&lt;p>You can read announcement in &lt;a href="http://mikefourie.wordpress.com/2011/09/22/community-tfs-2010-build-extensions-september-2011/">Mike Fourie’s post&lt;/a>.&lt;/p></description></item><item><title>Meanwhile…</title><link>https://pascoal.net/2011/09/14/meanwhile/</link><pubDate>Wed, 14 Sep 2011 22:02:59 +0000</pubDate><guid>https://pascoal.net/2011/09/14/meanwhile/</guid><description>&lt;p>While everyone seems to be downloading the Windows 8 developer preview from &lt;a href="http://dev.windows.com" title="http://dev.windows.com">http://dev.windows.com&lt;/a> I&amp;rsquo;m downloading &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> 11 developers preview and TFS 11 developers preview from MSDN. 😀 (only for registered subscribers)&lt;/p>
&lt;p>Go get it&lt;/p>
&lt;p>[Update] &lt;a href="http://blogs.msdn.com/b/briankel">Brian Keller&lt;/a> just posted the hyper-v images with Dev11 pre installed including hands on labs. &lt;a href="http://blogs.msdn.com/b/briankel/archive/2011/09/16/visual-studio-11-application-lifecycle-management-virtual-machine-and-hands-on-labs-demo-scripts.aspx">You can read more here&lt;/a>&lt;/p></description></item><item><title>Team Foundation Build: Reducing the amount of log of your own activities calls</title><link>https://pascoal.net/2011/08/24/team-foundation-build-reducing-the-amount-of-log-of-your-own-activities-calls/</link><pubDate>Wed, 24 Aug 2011 13:47:32 +0000</pubDate><guid>https://pascoal.net/2011/08/24/team-foundation-build-reducing-the-amount-of-log-of-your-own-activities-calls/</guid><description>&lt;p>When customizing a build definition you will soon discover that the logs may be pretty noise. Even if the activities don’t emit any logging information, just invoking an activity will result in it’s &lt;strong>Display Name&lt;/strong> being logged.&lt;/p>
&lt;p>This can be quite verbose, specially when you start nesting activities within containers.&lt;/p>
&lt;p>&lt;img alt="SNAGHTML1fe2c1fe" loading="lazy" src="https://pascoal.net/assets/uploads/2011/08/SNAGHTML1fe2c1fe_thumb.png">&lt;/p>
&lt;p>Look at this simple (perhaps a little convoluted example) whereas a simple FTP issues too much information.&lt;/p>
&lt;p>Unfortunately there is no way to disable this logging on an activity by activity basis by just using the Workflow Designer, however if you are willing to edit the build XAML in a text editor you can disable the logging by activity.&lt;/p></description></item><item><title>Team Foundation Build: Enhancing the experience with built-in custom editors</title><link>https://pascoal.net/2011/08/20/team-foundation-build-enhancing-the-experience-with-built-in-custom-editors/</link><pubDate>Sat, 20 Aug 2011 12:11:13 +0000</pubDate><guid>https://pascoal.net/2011/08/20/team-foundation-build-enhancing-the-experience-with-built-in-custom-editors/</guid><description>&lt;p>bi&lt;/p>
&lt;p>When designing or &lt;a href="http://msdn.microsoft.com/en-us/library/ms400688.aspx">customizing&lt;/a> a &lt;a href="http://msdn.microsoft.com/en-us/library/ms181709(v=VS.100).aspx">Team Foundation Build&lt;/a> process template you may have parameters that are not as basic as an integer or a string. You may want to provide your user with a nice UI to edit the values either when designing the build process template (for defining custom values for example) or queuing the build (in cases where the parameter can be defined/overridden when the build is queued).&lt;/p>
&lt;p>Even when the parameters are of primitive types defined by .Net, you may want to provide a nice editor that allows easier editing for a parameter that doesn’t have a simple syntax. One example is the Team Foundation Build built-in &lt;a href="http://msdn.microsoft.com/en-us/library/hh190719.aspx">Build Number Format&lt;/a> editor.&lt;/p></description></item><item><title>Give Feedback to the Visual Studio Team</title><link>https://pascoal.net/2011/07/16/give-feedback-to-the-visual-studio-team/</link><pubDate>Sat, 16 Jul 2011 10:43:10 +0000</pubDate><guid>https://pascoal.net/2011/07/16/give-feedback-to-the-visual-studio-team/</guid><description>&lt;p>In the past the most appropriate way you could give feedback to the &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> team would be to use &lt;a href="http://connect.microsoft.com">MS Connect&lt;/a> (if you don’t count comments on the numerous VS team blogs, and posts on the &lt;a href="http://social.msdn.microsoft.com/Forums/en-US/category/visualstudio">MSDN forums&lt;/a> which are mainly for asking questioos). Although connect can be used to give feedback and make requests it is mainly a way to report Bugs.&lt;/p>
&lt;p>So the Visual Studio is now giving us yet another method to post feedback. An &lt;a href="http://uservoice.com">UserVoice&lt;/a> site, UserVoice is more social (forums are also pretty social but in a different way) since not only allows you to post suggestions, but allows people to comment on it and better yet to vote on it. The most popular suggestions will percolate through their number of votes making them more visible to the team (which even so reads and analyzes all suggestions no matter how many votes they get).&lt;/p></description></item><item><title>Node.js on Azure or the importance of knowing history</title><link>https://pascoal.net/2011/06/23/node-js-on-azure-or-the-importance-of-knowing-history/</link><pubDate>Thu, 23 Jun 2011 20:52:19 +0000</pubDate><guid>https://pascoal.net/2011/06/23/node-js-on-azure-or-the-importance-of-knowing-history/</guid><description>&lt;p>Today’s rage on the blogsphere is the news that Microsoft and &lt;a href="http://www.joyent.com/">Joyent&lt;/a> are working together in order to have a native windows port of &lt;a href="http://nodejs.org/">Node.js&lt;/a> that will work on Azure (and off course Windows going back to 2003).&lt;/p>
&lt;p>For example one of the &lt;a href="http://www.zdnet.com/blog/microsoft/microsoft-to-work-with-joyent-to-port-nodejs-to-windows-azure/9802">reports&lt;/a>&lt;/p>
&lt;p>Node.js is an implementation that allows you to run javascript on a web server using an evented model (as opposed to a thread one) which is blazingly fast because of it’s evented nature and because it uses V8 (the javascript engine that powers Google’s Chrome) as it’s virtual machine.&lt;/p></description></item><item><title>ALM Rangers shipped Build Customization Guide</title><link>https://pascoal.net/2011/06/18/alm-rangers-shipped-build-customization-guide/</link><pubDate>Sat, 18 Jun 2011 11:16:43 +0000</pubDate><guid>https://pascoal.net/2011/06/18/alm-rangers-shipped-build-customization-guide/</guid><description>&lt;p>The &lt;a href="http://msdn.microsoft.com/en-us/vstudio/ee358786">ALM Rangers&lt;/a> Build Customization Guide has gone gold and the RTM version has been released into the wild.&lt;/p>
&lt;p>If you are new to TFS team build or you are familiar with it but want to learn more about, this guide is a very valuable resource.&lt;/p>
&lt;p>It contains complete guidance of how you can enhance or fully customize your build templates.&lt;/p>
&lt;p>If you are the sort of person who likes to learn by example hands on labs are also included to guide you to learn a lot of things using task driven examples.&lt;/p></description></item><item><title>ALM Rangers shipped Lab Management Guide</title><link>https://pascoal.net/2011/06/18/rangers-shipped-lab-management-guide/</link><pubDate>Sat, 18 Jun 2011 11:07:45 +0000</pubDate><guid>https://pascoal.net/2011/06/18/rangers-shipped-lab-management-guide/</guid><description>&lt;p>The &lt;a href="http://msdn.microsoft.com/en-us/vstudio/ee358786">ALM Rangers&lt;/a> Lab Management Guide has gone gold and the RTM version has been released into the wild.&lt;/p>
&lt;p>This project is a huge resource if you want to learn more about lab management and all of it’s related features.&lt;/p>
&lt;p>Not only it contains hands on guidance (planning, setup, configuration and usage), but it also contains hands on labs that can take you up to speed to lab management in an easy way.&lt;/p></description></item><item><title>My upcoming talks for June</title><link>https://pascoal.net/2011/06/02/upcoming-talks-for-june/</link><pubDate>Thu, 02 Jun 2011 00:05:09 +0000</pubDate><guid>https://pascoal.net/2011/06/02/upcoming-talks-for-june/</guid><description>&lt;p>The last few months have been just crazy. Been pretty busy and I thought now that we are entering June things were going to calm down a little.&lt;/p>
&lt;p>But not it seems June is going to be another crazy month, so besides the talk I did on the &lt;a href="http://lanyrd.com/2011/workshop-desenvolvimento-aplicacional-alm/">MS ALM event&lt;/a> a few days ago, on June I’m going to do two public talks (and new one seems to be rails).&lt;/p></description></item><item><title>Test Manager fails to load after installing Test Scribe</title><link>https://pascoal.net/2011/05/19/test-manager-fails-to-load-after-installing-test-scribe/</link><pubDate>Thu, 19 May 2011 23:32:56 +0000</pubDate><guid>https://pascoal.net/2011/05/19/test-manager-fails-to-load-after-installing-test-scribe/</guid><description>&lt;p>A few weeks ago I was at a client doing a proof of concept for the testing tools (MTM for manual testing, &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> for automated testing at the UI level and off course also using TFS for full traceability and collaboration between the testing team and the development team). And&lt;/p>
&lt;p>I had a little problem MTM was crashing immediately on startup (there is was no evidence why this was happening, just a stack trace on windows event log).&lt;/p></description></item><item><title>Help Improve Visual Studio performance</title><link>https://pascoal.net/2011/05/19/help-visual-studio-performance/</link><pubDate>Thu, 19 May 2011 09:46:44 +0000</pubDate><guid>https://pascoal.net/2011/05/19/help-visual-studio-performance/</guid><description>&lt;p>Performance is something that we can never have enough off. Nobody minds if things would go faster,in fact we always want things to go faster now matter how fast they already are (and any speed improvement won’t be noticeable).&lt;/p>
&lt;p>In terms of performance my favorite phrase is a quote from djb “&lt;a href="http://en.wikiquote.org/wiki/Daniel_J._Bernstein">profile don’t speculate&lt;/a>”. If you ever tried to optimize code, after you take care of the low hanging fruit making things go faster requires  experimentation, analysis and specially a lot of hard data that you can act upon, so you can optimize the most common paths and operations.&lt;/p></description></item><item><title>TeamCompanion 4 has been released</title><link>https://pascoal.net/2011/05/18/teamcompanion-4-has-been-released/</link><pubDate>Wed, 18 May 2011 22:33:42 +0000</pubDate><guid>https://pascoal.net/2011/05/18/teamcompanion-4-has-been-released/</guid><description>&lt;p>Ekobit just released &lt;a href="http://www.teamcompanion.com">TeamCompanion 4.0&lt;/a>, teamcompanion is an outlook addin that allows you to interact with TFS without having to leave outlook.&lt;/p>
&lt;p>It allows you to synchronize workitems with outlook so you can manage work items without having to leave it. It also makes a great bridge between work items and your email. You can send a work item by email, send a list of work items and create work items from a received email (if you want the email and attachments can automatically be attached to the workitem itself). It can intelligent detect when you receive a TFS notification by email (checkin event or build event) and with one click you can open the changeset or a build detail for easy inspection just like in Team Explorer.&lt;/p></description></item><item><title>Look the good news that MS Teched US is bringing us for Visual Studio</title><link>https://pascoal.net/2011/05/18/look-the-good-news-that-ms-teched-us-is-bringing-us-for-visual-studio/</link><pubDate>Wed, 18 May 2011 01:57:02 +0000</pubDate><guid>https://pascoal.net/2011/05/18/look-the-good-news-that-ms-teched-us-is-bringing-us-for-visual-studio/</guid><description>&lt;p>Being a MVP has one downside, you can’t talk about a lot of things that you know. Things that are going to available on future releases, because we know about them, we have seen them (screencasts, conference calls, documentation,etc) or in case some we have already played with them (early bits). Sometimes people ask specifics questions how a certain thing can be accomplished or complain about something that is missing and we simple can’t say that they will be getting that in the next version.&lt;/p></description></item><item><title>MS Test Manager– Registering why a test is blocked</title><link>https://pascoal.net/2011/05/05/ms-test-manager-registering-why-a-test-is-blocked/</link><pubDate>Thu, 05 May 2011 12:02:58 +0000</pubDate><guid>https://pascoal.net/2011/05/05/ms-test-manager-registering-why-a-test-is-blocked/</guid><description>&lt;p>This week I was at a client and I have been asked if it is possible to register the reason why a test is blocked.&lt;/p>
&lt;p>With test manager you can specifically mark a test as blocked. To mark you can’t test it for some reason (typically an external dependency that needs to be resolved. In Scrum wording an impediment. For example you need some special hardware for the testing and it’s not available or a server broke and it is being repaired (which normally signals you aren’t using Lab Management😀)).&lt;/p></description></item><item><title>Getting Visual Studio version of a Solution file</title><link>https://pascoal.net/2011/05/05/getting-visual-studio-version-of-a-solution-file/</link><pubDate>Thu, 05 May 2011 06:40:25 +0000</pubDate><guid>https://pascoal.net/2011/05/05/getting-visual-studio-version-of-a-solution-file/</guid><description>&lt;p>In the previous post I talked about &lt;a href="https://pascoal.net/2011/04/29/getting-visual-studio-installation-directory/">how we could determine the installation path&lt;/a> of a given Visual Studio version, in this post I’m going to talk a little how we can determine the version of a &lt;a href="http://msdn.microsoft.com/en-us/library/bb165951%28VS.90%29.aspx">VS solution file (.sln)&lt;/a>.&lt;/p>
&lt;p>Determining the file version isn’t of relevance if you are opening solutions via the file explorer. If you have multiple versions of VS installed side by side and try to open a solution, the VS Version selector automatically chooses the right visual studio version for you.&lt;/p></description></item><item><title>Getting Visual Studio installation directory</title><link>https://pascoal.net/2011/04/29/getting-visual-studio-installation-directory/</link><pubDate>Fri, 29 Apr 2011 01:03:10 +0000</pubDate><guid>https://pascoal.net/2011/04/29/getting-visual-studio-installation-directory/</guid><description>&lt;p>Determining the installation path of &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> is something that sometimes is needed. For example we may we need to interact with Visual Studio executable (for example to reset visual studio or registering something on an installer).&lt;/p>
&lt;p>But how can we determine where Visual Studio is installed? There are basically two ways of doing it.&lt;/p>
&lt;ul>
&lt;li>Getting it from the environment variables.&lt;/li>
&lt;li>Reading it from the registry&lt;/li>
&lt;/ul>
&lt;p>The path is stored in an environment variable called &lt;code>VS&amp;lt;internal version number&amp;gt;COMNTOOLS&lt;/code> where &lt;code>&amp;lt;internal version number&amp;gt;&lt;/code> is the visual studio internal version number (multiplied by 100). This is not exactly the installation path but we can infer from it.&lt;/p></description></item><item><title>Controlling Lab Management VM Placement Policy</title><link>https://pascoal.net/2011/04/25/controlling-lab-management-vm-placement-policy/</link><pubDate>Mon, 25 Apr 2011 15:46:54 +0000</pubDate><guid>https://pascoal.net/2011/04/25/controlling-lab-management-vm-placement-policy/</guid><description>&lt;p>&lt;a href="http://www.microsoft.com/visualstudio/en-us/solutions/software-quality/lab-management">Lab Management&lt;/a> is part of &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> 2010 and it’s a great way to virtualize your test laboratory. In a simplistic way, we can say it allows you to test your applications without having to have a multitude of physical machines and different installations (multiple OS versions, multiple languages, multiple browsers. Whatever matrix of configurations you have to test your applications in).&lt;/p>
&lt;p>It does this by allowing your to virtualize your environments in an easy way. Specially it allows your testers to easily launch virtualized test environments without having to have knowledge of virtualization (not only launch but also self provision), your lab administrators to easily provisions new environments based on VM templates. It also reduces the gap between developers and testers since when tests are being executed data can be automatically recorded (Intellitrace, video, event log events,etc,etc) and attached to a bug for easier reproduction of issues.&lt;/p></description></item><item><title>TFS Phone Explorer. Another TFS client for WP7</title><link>https://pascoal.net/2011/04/18/tfs-phone-explorer-another-tfs-client-for-wp7/</link><pubDate>Mon, 18 Apr 2011 21:01:45 +0000</pubDate><guid>https://pascoal.net/2011/04/18/tfs-phone-explorer-another-tfs-client-for-wp7/</guid><description>&lt;p>When only I few days ago I wrote &lt;a href="https://pascoal.net/2011/04/15/tfs-and-windows-phone-7/">TFS and Windows Phone 7&lt;/a> I was far from guessing that only a few days later I would be writing again about this topic. So this should be probably title TFS and Windows Phone 7 II, but I don’t want to take a chance of writing a third series so I’m not using another title.😀&lt;/p>
&lt;p>&lt;a href="http://www.blackmarble.com/">Black Marble&lt;/a> just released on WP7 Marketplace &lt;a href="http://www.appsfuze.com/applications/windowsphone.productivity/tfs-phone-explorer,12812">TFS Phone Explorer&lt;/a>.&lt;/p></description></item><item><title>TFS and Windows Phone 7</title><link>https://pascoal.net/2011/04/15/tfs-and-windows-phone-7/</link><pubDate>Fri, 15 Apr 2011 19:35:55 +0000</pubDate><guid>https://pascoal.net/2011/04/15/tfs-and-windows-phone-7/</guid><description>&lt;p>A long time time I entered on my backlog the user stories for a WP7 application to get data from TFS, when Microsoft release the beta for &lt;a href="https://pascoal.net/2011/04/09/odata-service-for-team-foundation-server-2010-beta-now-available/">OData Service for TFS&lt;/a> I reckoned I could dispose those entries on my backlog since it was merely a question of time someone wrote a WP7 client for TFS that would allow to easily visualize data stored on TFS.&lt;/p>
&lt;p>I was not very far from the truth, yesterday I was browsing WP7 marketplace and found &lt;a href="http://www.windowsphonegeek.com/AppHub/Application/57d4bdd0-d25a-e011-854c-00237de2db9e">TFS Monitor&lt;/a> that allows you to see data from TFS. It supports viewing builds, work items, team projects and also allows to see events (apparently work item changes, check ins and failed builds).&lt;/p></description></item><item><title>Getting updated info on TFS and Visual Studio with little effort</title><link>https://pascoal.net/2011/04/12/getting-updated-info-on-tfs-and-visual-studio-with-little-effort/</link><pubDate>Tue, 12 Apr 2011 22:23:23 +0000</pubDate><guid>https://pascoal.net/2011/04/12/getting-updated-info-on-tfs-and-visual-studio-with-little-effort/</guid><description>&lt;p>There are dozens and dozens of high quality blogs on TFS and &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> that helps up not only keep up with the latest information but also have a huge amount of high quality information that allows us to make a better use of TFS and Visual Studio.&lt;/p>
&lt;p>Unfortunately the day only has 24 hour and people are typically so busy that the available bandwidth to keep up with the deluge of information that is thrown at us every day is very low.&lt;/p></description></item><item><title>OData Service for Team Foundation Server 2010: Beta now available</title><link>https://pascoal.net/2011/04/09/odata-service-for-team-foundation-server-2010-beta-now-available/</link><pubDate>Sat, 09 Apr 2011 09:54:18 +0000</pubDate><guid>https://pascoal.net/2011/04/09/odata-service-for-team-foundation-server-2010-beta-now-available/</guid><description>&lt;p>Microsoft has released a &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=d6f8968c-f27f-43fb-88ae-8805db257a67&amp;amp;displaylang=en">beta version of an OData service for TFS 2010&lt;/a>. This is great way for people wanting to get data from TFS without having to use the object model.&lt;/p>
&lt;p>[Update: If you are having problems installing this, there is a know issue. More details and workaround on &lt;a href="http://blogs.msdn.com/b/briankel/archive/2011/04/10/known-issue-with-odata-service-for-team-foundation-server-2010-beta-dependency-checker.aspx">Brian Keller&amp;rsquo;s Post&lt;/a>]&lt;/p>
&lt;p>Besides exposing all TFS capabilities via Web Services, TFS provided from day one an object model SDK that allows you to interact and extend TFS capabilities (incidentally this is the same object model Microsoft uses to write Team Explorer, so Microsoft  can&amp;rsquo;t do on its own client  anything that you  can&amp;rsquo;t do yourself). The object model is the recommended way to interact with TFS, since not only provides a good abstraction over the web services but it also isolates you from changes made to the web services from release to release.&lt;/p></description></item><item><title>Improving Visual Studio source offline support with TFS</title><link>https://pascoal.net/2011/04/07/improving-visual-studio-source-offline-support-with-tfs/</link><pubDate>Thu, 07 Apr 2011 22:24:24 +0000</pubDate><guid>https://pascoal.net/2011/04/07/improving-visual-studio-source-offline-support-with-tfs/</guid><description>&lt;p>When TFS 2005 was released there was no offline support, if you went somewhere to which you had no connection to TFS you couldn’t be considered an happy camper.&lt;/p>
&lt;p>After a few months, Microsoft released a version of the Power Tool that had the ability to work offline. But it was a very manual process. You had to remove the read only attribute of a file and when you got your connectivity back, you would invoke the (command line) Power Tool command so changes could be reconciled (files without the read only attribute would be checked out, new files would be added, etc.).&lt;/p></description></item><item><title>Organizing your build definitions in folders</title><link>https://pascoal.net/2011/04/02/organizing-your-build-definitions-in-folders/</link><pubDate>Sat, 02 Apr 2011 01:15:13 +0000</pubDate><guid>https://pascoal.net/2011/04/02/organizing-your-build-definitions-in-folders/</guid><description>&lt;p>As most people know from experience Team Projects who have a lot of build definitions are hard to navigate. The list of builds is endless and presented in a flat view.&lt;/p>
&lt;p>Something that would a lot on these cases would be a search/filter and a way to organize your build definitions in an hierarchical mode.&lt;/p>
&lt;p>The community has been asking Microsoft for this for a long time. Since 2010 didn’t introduced this feature, fellow ALM MVP &lt;a href="http://geekswithblogs.net/Terje/Default.aspx">Terje Sandstrom&lt;/a> as taken matters into his own hands and developed a Team Explorer add-in that allows you to organize you build definitions in a tree.&lt;/p></description></item><item><title>Visual Studio and TFS Books</title><link>https://pascoal.net/2011/04/02/visual-studio-and-tfs-books/</link><pubDate>Sat, 02 Apr 2011 00:57:31 +0000</pubDate><guid>https://pascoal.net/2011/04/02/visual-studio-and-tfs-books/</guid><description>&lt;p>I’m asked fairly frequently which books I recommend about &lt;a href="http://www.microsoft.com/visualstudio">Visual Studio&lt;/a> or TFS, so I decided to write some words about it to see if I get this asked less frequently.&lt;/p>
&lt;p>Before Visual Studio 2010 there were not a great number of books that I (could) recommend. If a person wanted to have a light yet complete view out TFS was all about then I would recommend &lt;a href="http://blog.hundhausen.com/">Richard Hundhausen&lt;/a> introductory book &lt;a href="http://www.amazon.com/Working-Microsoft-Visual-Studio-Pro-Developer/dp/0735621853/ref=sr_1_13?s=books&amp;amp;ie=UTF8&amp;amp;qid=1301702554&amp;amp;sr=1-13">Working with Microsoft Visual Studio 2005 Team System (Pro-Developer)&lt;/a> (this was the first I ever read about Team System (I’ve read the edition it was still targeting Team System Beta and was still called &lt;a href="http://www.amazon.com/Introducing-Visual-Studio-System-Pro-Developer/dp/0735621802/ref=sr_1_6?ie=UTF8&amp;amp;s=books&amp;amp;qid=1301702606&amp;amp;sr=1-6">Introducing Visual Studio 2005 Team System Beta Edition (Pro-Developer)&lt;/a>))&lt;/p></description></item><item><title>Bootstrapping my blog. Round III</title><link>https://pascoal.net/2011/03/26/bootstrapping-my-blog-round-iii/</link><pubDate>Sat, 26 Mar 2011 20:31:04 +0000</pubDate><guid>https://pascoal.net/2011/03/26/bootstrapping-my-blog-round-iii/</guid><description>&lt;p>This is my third attempt to start blogging regularly.&lt;/p>
&lt;p>I&amp;rsquo;ve started blogging in &lt;a href="http://weblogs.asp.net/tspascoal/archive/2004/01/12/58024.aspx">2004&lt;/a> in the &lt;a href="http://weblogs.asp.net">asp.net&lt;/a> blogging platform. A blogging platform started by &lt;a href="http://scottw.com/">Scott Watermasysk&lt;/a> using his .Text project, that later has been passed to Microsoft (and used as the showcase for Telling Community Server), there i kept my blogging pace at a regular level (although irregular)&lt;/p>
&lt;p>When I become a founding partner at &lt;a href="http://agilior.pt">Agilior&lt;/a>, it made sense to blog under the company wing, as (poor man) marketing  campaign (one of the many cheap tactics we used) 😀.&lt;/p></description></item></channel></rss>