Brian Keller

Director of ALM Evangelism for Microsoft

  • Brian Keller

    Bringing OData to Team Foundation Service


    I am pleased to announce that starting today we are enabling OData access for Team Foundation Service. The goal of the Team Foundation Service OData API is to help developers build applications for multiple device types (such as smartphones and tablets) and operating systems which interact with projects on Team Foundation Service. OData ( provides a great solution for this goal, and has been embraced by numerous developers for building great device-specific applications. OData is accessible from any device and application stack which supports HTTP requests.

    You can get started at which includes information on how to enable basic auth credentials for your Team Foundation Service account along with API documentation.

    A sample Windows Store application is also available for download. This sample is licensed as MS-PL and we encourage you to learn from it and build upon it if you would like to build your own Windows Store application which works with Team Foundation Service.

    image image
    image image


    As of today this service is a beta. We are looking for feedback from the development community as we continue to refine this service offering. Please email with your suggestions and bug reports. We know that performance for the service is an area we need to continue to invest in, especially for very large projects. If you have any specific feedback related to slow requests you are experiencing please provide us with details so that we can continue to make improvements here.

    The Team Foundation Service OData API builds upon the work we have done to provide an OData Service which can be used with Team Foundation Server. If you are running Team Foundation Server on-premises and you would like to enable an OData endpoint for your server, please check out the OData Service for Team Foundation Server v2. Whenever possible we will keep the API structure identical between these two projects so that the applications you build will work regardless of whether you are using Team Foundation Server or Team Foundation Service.

    We are excited to hear from anyone who publishes an application which works with the service. How are you using it? Where can we download it and can we advertise it to others?


  • Brian Keller

    OData Service for Team Foundation Server v2


    2/17/2013 Update: Version 2.2.0 of the service is now available which includes several bug fixes, feature enhancements, and performance optimizations based on the feedback we have received from beta testers. Please view the changelog for details on what is new in this release. A new sample application is also available and showcases how to use the OData Service from a Windows Phone 8 application. Both of these items can be accessed at the Download link below.

    1/24/2013 Update: A beta of the Team Foundation Service OData API is now available for people wishing to use this with Team Foundation Service. You can read more about it here.

    Today we are releasing the beta of the OData Service for Team Foundation Server v2 along with a sample Windows Store application


    The purpose of this service is to help developers work with data from Team Foundation Server on multiple device types (such as smartphones and tablets) and operating systems. OData provides a great solution for this goal, and has been embraced by numerous developers for building great device-specific applications. OData is accessible from any device and application stack which supports HTTP requests.

    The OData service interacts directly with the TFS client object model, and will work with CodePlex, Team Foundation Server 2010 and Team Foundation Server 2012.

    TFS Dashboard for Windows Store
    My colleague Nisha Singh built a Windows Store application – TFS Dashboard – using this OData Service. All of the source code is available for the application which can be downloaded alongside the OData Service. This is a sample which you can extend and customize yourself to learn more about how to consume the OData Service in your own applications. Nisha has more information about this application on her blog where she will be sharing additional information soon about how she implemented the Live tiles, Search and Share features supported by WinRT APIs.

    image image
    image image

    Since this is a beta, what is your roadmap for future releases? Is this supported?
    This beta release is designed to solicit feedback from the community and to help identify any lingering bugs before declaring a v2.0 release. Please let us know what you think. Information about a v2.0 release will be made via an update to this blog post when it is available.

    I should make it clear that this is not an official release from the TFS engineering team. The TFS engineering team has reviewed the service and approved of the approach we are taking, but there is no official support for this service. That said, all of the source code is provided for you, the license permits you to use it in production and extend it for your own purposes, and we are interested in (but not committed to) continuing to add capabilities over time.

    Will this work with Team Foundation Service?
    Not currently, although we are very excited about this possibility in the future. We are working on a release which work with Team Foundation Service but I do not have a timeline to share at the moment. More details will be posted as an update to this blog post when it is available.

    The Team Foundation Service OData API is now available! You can read more about it here.

    I found a bug or have some other feedback about this beta.      
    Please let us know so we can add it to our backlog!

  • Brian Keller

    Visual Studio 2012 and Team Foundation Server 2012 pre-releases expiring Jan 15


    Happy New Year! As you settle back into your work environments, please remember to see if you are running any pre-release versions of Visual Studio 2012 or Team Foundation Server 2012. This software will stop working on January 15, 2013 and cannot be extended.

    You can check your Visual Studio 2012 development environment by clicking on Help –> About and inspecting the version. If you see Beta or Release Candidate (RC) you’ll need to upgrade to RTM (or Update 1, which is the newest post-RTM release).

    For Team Foundation Server, launch the Team Foundation Server Administration Console.


  • Brian Keller

    Visual Studio 2012 Update 1 ALM Virtual Machine Now Available


    The Visual Studio 2012 Update 1 ALM virtual machine and 21 hands-on-labs / demo scripts are now available for download.

    All of the existing hands-on-labs / demo scripts were updated slightly to reflect UI and workflow changes included in Update 1.

    One new lab / demo script was created focusing on new ALM tooling for SharePoint 2010 developers and testers.

    Finally, two existing labs / demo scripts were enhanced to include exercises based on new capabilities included with Update 1.

    The new and updated labs / demo scripts are referenced in the table of scenarios listed on the download page.


  • Brian Keller

    Free up disk space after upgrading to Windows 8


    I have been helping friends and family upgrade to Windows 8 lately, and wanted to share one quick tip on how to reclaim several gigabytes of disk space after the upgrade.

    When you upgrade to a new operating system, Windows will store several files related to the upgrade in case you want to uninstall the upgrade or troubleshoot anything which went wrong.

    Most of the time, however, these files can be safely deleted after you have confirmed that the upgrade was successful. You might want to wait a few days after upgrading just to make sure you are happy with the upgrade. Assuming you are, here are the steps you should take to reclaim that disk space.

    1. Right-click on the C: drive and select Properties.


    2. Click on Disk Cleanup.


    3. Click on Clean up system files.


    4. Disk Cleanup will analyze your system again and show you new options for reclaiming drive space. On my machine, I selected Previous Windows installation(s) and Windows upgrade log files. This resulted in a savings of 8.62GB. Click OK to apply changes.


  • Brian Keller

    Understanding the two different flavors of Internet Explorer in Windows 8


    I’ve installed Windows 8 on all of my machines, and I absolutely love it. To cite the tagline: it’s fast, it’s fluid, and it’s Window reimagined.

    Of course there are a few changes that new users will need to understand when they first start using it. The disappearance of the Start button is an obvious one, but I’ve found that’s easily mitigated once you point out to people that you can open the Start screen by pressing the Windows key (if using a keyboard), mouse into the upper-right or lower-right corners (with a mouse), or swipe from the right (if using a touch monitor).

    I believe that the more challenging switch for some users (at least based on my sample group of friends and family who I have helped to upgrade) will be that there are effectively two different flavors of Internet Explorer installed with Windows 8.

    Internet Explorer 10: Internet Explorer 10 is optimized for a touchscreen experience. The enhanced security and reliability model means that it doesn’t support plug-ins, although some popular Flash web sites have been whitelisted to work with this version of Internet Explorer. It’s a beautiful, full-screen browser experience with lots of new features and excellent support for Web standards. You can read a lot more about the features of this browser over at

    Internet Explorer

    Internet Explorer for the desktop: Internet Explorer for the desktop is also Internet Explorer 10 under the covers, but the look and feel of this browser is like that of previous versions of Internet Explorer. It supports tabbed browsing and plug-ins (like Flash and Silverlight).

    So how do I pick which version I should use?
    Both browsers offer unique benefits. The best part is that you can switch back and forth based on what you are doing. If you have a touch screen monitor and you are surfing the web from the sofa, you’ll likely want to use Internet Explorer 10 to get the full-screen, touch-optimized browsing experience. If you are writing code or planning your wedding, and need to have several windows open alongside web pages, Excel, and Visual Studio, then Internet Explorer for the Desktop provides a great experience for this type of surfing or work.

    What I have noticed, however, is that some users who don’t yet understand the difference between these browsers can get a little confused when they unknowingly switch back and forth between these browser experiences. At Thanksgiving last week I spent some time teaching my friends and family about the difference between browsers and helped them understand under which circumstances each browser will be launched.

    Internet Explorer for the desktop will be launched when you click the Internet Explorer icon from the Windows 8 desktop, or follow a hyperlink from within another desktop application.


    Internet Explorer 10 will be launched if you click the Internet Explorer icon on the Windows 8 start screen, or follow a hyperlink from within any application which was written for WinRT.


    You can override this behavior if you want to (thanks to my friend Joey Snow for the tip!). Open Internet Explorer for the desktop, press Alt+T for the Tools menu, click Internet Options, click Programs, and change the options at the top. The first drop-down controls which flavor of Internet Explorer will be used when you follow links from other programs. The checkbox allows you to determine whether or not the Internet Explorer icon on the start menu will open Internet Explorer on the desktop.



    I hope this blog post helps you hit the ground running with Windows 8 so that you can start enjoying it as much as I do.

  • Brian Keller

    Visual Studio 2012 Update 1 and the ALM Virtual Machine


    December 6, 2012 Update: The virtual machine and corresponding hands-on-labs / demo scripts have been upgraded to use Visual Studio 2012 Update 1. You can download them from here.

    Now that Visual Studio 2012 Update 1 is available, several people have asked whether or not I am updating my ALM virtual machine. The answer is yes – and it will be available by sometime next week. Watch my blog for details. There are some really nice improvements in Update 1 that I think developers, architects, project managers and testers alike will enjoy.

    A longer question I have also been asked is whether or not Update 1 can be installed by end-users into my virtual machine. The answer is “not really” (unless you want to jump through some workaround steps). The reason for this requires a bit longer of an explanation.

    If you have worked with my virtual machine you may have noticed that every time you boot it up, the date and time jumps to May 16, 2012. The reason for this is that in order to show a pseudo-realistic example of how Team Foundation Server can be used to support an actual development team, we need to pin the system date to a specific day in the middle of an iteration. If we didn’t do this, then the VM might look great on the day I shipped it, but if you downloaded it a month later the data is going to start to look stale. You’ll be in some future iteration with no recent work item activity, a flat burndown chart, etc., sort of like any good post-apocalyptic zombie movie where life and routine as we know it stopped months ago.

    Setting your operating system to an older date and time is of course a “hack” that you should never use on your actual Team Foundation Server instance, but since my virtual machine is for training and evaluation purposes I have taken this (and a few other) liberties where necessary to optimize the virtual machine for those experiences.

    One implication of this hack is that after you boot the virtual machine and start working with Team Foundation Server you should never reboot the virtual machine. If you do, then the operating system will reboot into the morning of May 16, 2012, and Team Foundation Server will get confused since you will be going “back in time” – something that Team Foundation Server is simply not designed to support. Instead, I always suggest that users take a Hyper-V snapshot of my virtual machine after they boot it up for the first time but before they start working with it so that they can always roll back to a known clean state in case they make a mistake or simply want to repeat a scenario (which is what I do routinely when I am demonstrating Team Foundation Server at conferences and customer meetings).

    Which brings us to Visual Studio 2012 Update 1. If you try installing Update 1 into my virtual machine you will notice that you are prompted to reboot during the installation process. While you won’t receive any errors or warnings during the setup/upgrade process, if you attempt this you will start to notice problems later on – especially in web access. This is because you are going back in time every time you reboot.

    I know a few people were burned by this and I’m sorry for the time you may have wasted going down this path. Generally speaking, I always tell people that the virtual machine was built specifically to support the nearly two dozen hands-on-labs / demo scripts which go along with it. While you are welcome to use it for other purposes, your mileage may vary, and this is a good example of something which just won’t work.

    One workaround if you really want to install Update 1 yourself into my virtual machine would be to go into the Task Scheduler and disable the task which configures the date and time to May 16, 2012. After you disable this you can run Update 1 as expected, but keep in mind that the project management data will no longer look accurate since you will be many months ahead of when it was designed for. Or, you can wait a week until I publish an official version.

    Thanks for reading and as always for all of the feedback.

  • Brian Keller

    Radio TFS: The one with Brian Keller


    This morning I had the pleasure of being hosted on Radio TFS to talk about a few of my favorite new features of Visual Studio 2012 and Team Foundation Server 2012. We talked about capturing stakeholder feedback, exploratory testing, lab management, and more!

    You can catch the whole show here. Don’t forget to subscribe to Radio TFS for a ton of great new content in each show. And thanks to Greg, Martin, Mickey and Paul for hosting me this morning – it was a lot of fun.

  • Brian Keller

    Important Note: The Visual Studio 2010 ALM Virtual Machine is Expiring Soon


    The Visual Studio 2010 ALM Virtual Machine will stop working on September 10, 2012 and will not be updated. If you are still using that virtual machine, please upgrade to the Visual Studio Visual Studio 2012 RTM ALM virtual machine. The 2012 version is based on final RTM software and includes all of the sample data and hands-on-labs / demo scripts which were available in the 2010 ALM virtual machine.

    The good news is that 2012 virtual machine uses a different build process which effectively gives it an infinite shelf life, since you can retain the original RAR files and extract a fresh copy whenever you need to. That fresh copy can be activated and will work for 180 days.

  • Brian Keller

    Updated: Visual Studio 2012 RTM ALM Virtual Machine and Hands-on-Labs / Demo Scripts


    The Visual Studio 2012 RTM ALM Virtual Machine is now available!

    This new VM replaces the previously available Visual Studio 2012 RC ALM virtual machine to use the final Visual Studio 2012 RTM releases.


    This is the most comprehensive ALM virtual machine yet. It includes 20 hands-on-labs / demo scripts. 8 of these labs highlight features/scenarios which are brand new in Visual Studio 2012, and the remaining 12 of these scenarios were upgraded from the older Visual Studio 2010 ALM virtual machine.


    Go here to start your downloads and to read more about this release!

Page 3 of 29 (287 items) 12345»