A month ago I wrote about our newly enabled capability to measure quality of service on a customer by customer basis. In that post I mentioned that we had actually identified a customer experiencing issues before they even contacted us about them and had started working with them to understand the issues. Well, the rest of that story…
We’ve identified the underlying issue. The customer had an unusually large number of Team Projects in their account and some of our code paths were not scaling well, resulting in slower than expected response times. We have debugged it, coded a fix and will be deploying it with our next sprint deployment.
Now that’s cool. We’ve already started working with a few other of the accounts that have the lowest quality of service metrics. Our plan is to make this a regular part of our sprint rhythm where, every sprint, we investigate a top few customer accounts on the list and try to deploy fixes within a sprint or two – improving the service every sprint.
Today we began deployment of our sprint 68 work. There’s a bunch of really good stuff there. I say “begun” because deployment is a multi day event now as we roll it out across instances. Everyone should have the updates by tomorrow (Tue) afternoon. You can read the release notes to get details.
You’ll see that one part of the licensing changes I described a couple of weeks ago are now live – addition of Test Hub access to the Visual Studio Online Advanced license. The remaining stakeholder licensing changes are still tracking to go live in mid-August. Stay tuned for more.
Azure Active Directory support
The biggest thing in the announcement is the next step in our rollout of Azure Active Directory (AAD) support in VS Online. We started this journey back in April with the very first flicker of AAD support at the Build conference. We added more support at TechEd but I’ve stayed pretty quiet about it because, until this week, there was no way to convert and existing account to AAD. With this deployment we’ve enabled it. Officially it’s in preview and you have to ask to get access to do it but we’re accepting all requests so it’s nothing more than a speed bump to keep too big a rush from happening all at once. With these last set of changes, you can:
- Associate your OrgID (AAD/AD credentials) with your MSDN subscription, if you have one, and use that to grant your VSO license
- Create a new account connected to an AAD tenant
- Connect an existing account to an AAD tenant
- Disconnect an account from an AAD tenant
- Log in with either a Microsoft Account or and OrgID (AAD only or synchronized from you on prem Active Directory) giving you single sign-on with your corporate credentials, Office 365, etc.
- I’m probably forgetting something but you get the point
I encourage you to read the docs and more docs for details. One thing I’ve asked be included in the docs and I’m still not satisfied with the clarity is one detail about binding an existing account to AAD. If you have an existing account not connected to AAD then, by definition, you are using Microsoft Accounts. When you connect you VS Online account to AAD, your identities have to be recognized by AAD to authenticate. You have 3 options for each existing user of your account:
- Add the Microsoft Account as an “external identity” in your AAD. All your data and in-progress work carries forward. The draw back is that external Microsoft accounts won’t fully honor you AAD policies – like Two Factor Auth, Password policies, etc. It’s still a Microsoft Account that’s been associated with your AAD, giving your AAD admin central control over access.
- If you created your Microsoft Account using the same email address as your AD/AAD identity (for instance, for me it’s email@example.com) then, when you connect your VSO account to AAD, your Microsoft Account will be seamlessly rebound to your corporate identity. All your data and in progress work carries forward and your login get the full set of AAD governance. This is the “best” of the 3 options but requires that you created your Microsoft Account a certain way.
- If you can’t do #2 and you don’t want to do #1, then you can just add your AAD identity as a “new” VS Online user and remove your old Microsoft Account identity from the VS Online account. To VS Online this is just like adding a new user and deleting an old user. VS Online has no idea they are the same person. This has the advantage of getting full AAD administration but the downside that in-progress work (checkouts, work items assigned to you, …) and other places where your old MS Account identity was associated need to either be deleted or reassigned to your new identity. Work items can be reassigned. Workspaces, shelvesets and stuff like that can be deleted. History will always be associated with your “old” Microsoft Account identity.
So that’s a good segue to what’s left for us to do to really complete AAD support…
- Add the ability to migrate one identity to any other identity, thereby having all references in VSO changed to the new user (to get around the issue in #3). This is on the backlog but is going to take a while.
- Add support for using AAD groups (to assign permissions, query work items, etc) in VS Online. Today you can use AAD users, but you can’t yet AAD groups. This feature is coming fairly soon (within the next few sprints).
I’m sure I’m missing something else we haven’t done yet but I don’t think anything big. AAD support is ready for prime time for most user scenarios.
And I have to say something about account deletion. Until this week, VS Online account deletions could only be done by contacting support – and we had to do a delicate dance to ensure that the person requesting a deletion had the rights to. For the past few months, account deletion has been the #1 support request, with dozens of requests a month. There are all kinds of reasons –
- Merging multiple accounts into one
- Moving from VS Online back to on-premises TFS
- Wanting to just wipe everything out and start over (for instance after an evaluation)
With this week’s deployment, account deletion is self service (assuming you are an account administrator). However, it’s important to understand that all account deletes are “soft” deletes only. Meaning the account is “marked for deletion” and no one can access it any more but it is *not* actually deleted. It will be physically deleted, I believe, 90 days after you delete it in the UI. This gives you a window to have your “Oh sh%t!” moment. If you realize that you deleted something you did not intend to, you can contact support and they can “undelete” your account. This is indicative of a general direction we are headed where all deletes are “soft” and you always have a time window to go back and recover it. It will take us quite a while to get there on everything that can be deleted but we’ll make progress every chance we get. Of course, if there’s some reason you *REALLY* need a VS Online account permanently deleted immediately, you can contact support to help you.
Oh, and lest I manage to avoid mentioning any feature in this deployment, check out the new trend reports. They are very cool and make the VS online charting experience even more useful. And, because I know several people will ask, yes, these charting enhancements will be added Team Foundation Server (our on-premises product). If everything goes according to plan, they will be in TFS 2013.4 (Update 4) later this fall.
It’s a bunch of stuff. Maybe you have to be a bit of a geek to appreciate all of it We’ve been working on some of this for a good while and I’m really happy to see it all available. Check it out and let us know what you think.
Through the fall and spring, we transitioned VS Online from Preview to General Availability. That process included changes to branding, the SLA, the announcement of pricing, the end of the early adopter program and more. We’ve been working closely with customers to understand where the friction is and what we can do to make adopting VS Online as easy as possible. This is a continuing process and includes discussions about product functionality, compliance and privacy, pricing and licensing, etc. This is a journey and we’ll keep taking feedback and adjusting.
Today I want to talk about one set of adjustments that we want to make to licensing.
As we ended the early adopter period, we got a lot of questions from customers about how to apply the licensing to their situation. We also watched as people assigned licenses to their users: What kind of licenses did they choose? How many people did they choose to remove from their account? Etc.
From all of this learning, we’ve decided to roll out 2 licensing changes in the next couple of months:
A common question we saw was “What do I do with all of the stakeholders in my organization?” While the early adopter program was in effect and all users were free, customers were liberal with adding people to their account. People who just wanted to track progress or file a bug or a suggestion occasionally, were included. As the early adopter period ended, customers had to decide – Is this really worth $20/user/month (minus appropriate Azure discounts)? The result was that many of these “stakeholders” were removed from the VS Online accounts in the transition, just adding more friction for the development teams.
As a result of all this feedback we proposed a new “Stakeholder” license for VS Online. Based on the scenarios we wanted to address, we designed a set of features that matched the needs most customers have. These include:
- Full read/write/create on all work items
- Create, run and save (to “My Queries”) work item queries
- View project and team home pages
- Access to the backlog, including add and update (but no ability to reprioritize the work)
- Ability to receive work item alerts
Some of the explicitly excluded items are:
- No access to Code, Build or Test hubs.
- No access to Team Rooms
- No access to any administrative functionality (Team membership, license administration, permissions, area/iterations configuration, sprint configuration, home page configuration, creation of shared queries, etc.)
We the surveyed our “Top Customers” and tuned the list of features (to arrive at what I listed above). One of the conversations we had with them was about the price/value of this feature set. We tested 3 different price points - $5/user/month, $2/user/month and free. Many thought it was worth $5. Every single one thought it was worth $2. However, one of the questions we asked was “How many stakeholders would you add to your account at each of these price points?” The result was 3X more stakeholders if it’s free than if it’s $2. That told us that any amount of money, even if it is perceived as “worth it”, is too much friction. Our goal is to enable everyone who has a stake to participate in the development process (and, of course, to run a business in the process). Ultimately, in balancing the goals of enabling everyone to participate and running a business, we concluded that “free” is the right answer.
As a result, any VS Online account will be able to have an unlimited number of “Stakeholder” users with access to the functionality listed above, at no charge.
Access to the Test Hub
Another point of friction that emerged in the transition was access to the Test hub. During the Preview, all users had access to the Test hub but, at the end of the early adopter program, the only way to get access to the Test hub was by purchasing Visual Studio Test Professional with MSDN (or one of the other products that include it, like VS Premium or VS Ultimate).
We got ample feedback that there were a class of users who really only need access to the web based Test functionality and don’t need all that’s in VS Test Professional.
Because of this, we’ve decided to include access to all of the Test hub functionality in the Visual Studio Online Advanced plan.
I’m letting you know now so that, if you are currently planning your future, you know what is coming. I’m always loathe to get too specific about dates in the future because, as we all know, stuff happens. However, we are working hard to implement these licensing changes now and my expectation is that we’ve got about 2 sprints of work to do to get it all finished. That would put the effective date somewhere in the neighborhood of mid-August. I’ll update you with more certainty as the date gets a little closer.
What about Team Foundation Server?
In general, our goal is to keep the licensing for VS Online and Team Foundation Server as “parallel” as we can – to limit how confusing it could be. As a result, we will be evolving the current “Work Item Web Access” TFS CAL exemption (currently known as “Limited” users in TFS) to match the “Stakeholder” capabilities. That will result in significantly more functionality available to TFS users without CALs. My hope is to get that change made for Team Foundation Server 2013 Update 4. It’s too early yet to be sure that’s going to be possible but I’m hopeful. We do not, currently, plan to provide an alternate license for the Test Hub functionality in TFS, though it’s certainly something we’re looking at and may have a solution in a future TFS version.
As I said, it’s a journey and we’ll keep listening. It was interesting to me to watch the phenomenon of the transition from Preview to GA. Despite announcing the planned pricing many months in advance, the feedback didn’t get really intense until, literally, the week before the end of the early adopter period when everyone had to finish choosing licenses.
One of the things that I’m proud of is that we were able to absorb that feedback, create a plan, review it with enough people, create an engineering plan and (assuming our timelines hold), deliver it in about 3 months. In years past that kind of change would take a year or two.
Hopefully you’ll find this change valuable. We’ll keep listening to feedback and tuning our offering to create the best, most friction-free solution that we can.
I’m not going to make too big a deal about this because there’s going to be tons of them between now and when VS “14” ships. But we shipped another CTP today and you can learn more about it here: http://blogs.msdn.com/b/visualstudio/archive/2014/07/08/visual-studio-14-ctp-2-available.aspx
We’re continuing the practice of making Azure VM templates available to make it really easy to try out the CTPs.
We are starting to show some nice new features that are worth learning about. I think the lightbulb feature is promising, for instance.
For reasons I explained in my last post on the subject, we are not releasing TFS “14” CTPs at this time and, quite honestly, won’t for a while. We will start releasing CTPs of TFS well before the release but there’s just not a good enough cost benefit analysis to it right now. You can see the majority of the work we are doing on VS Online as we do it.
Years ago, I used to do monthly updates on TFS adoption at Microsoft. Eventually, the numbers got so astronomical that it just seemed silly so I stopped doing them. It’s been long enough and there’s some changes happening that I figured it was worth updating you all on where we are.
First of all, adoption has continued to grow steadily year over year. We’ve continued to onboard more teams and to deepen the feature set teams are using. Any major change in the ALM solution of an organization of our size and complexity is journey.
Let’s start with some stats:
As of today, we have 68 TFS “instances”. Instance sizes vary from modest hardware up to very large scaled out hardware for the larger teams. We have over 60K monthly active users and that number is still growing rapidly. Growth varies month to month and the growth below seems unusually high (over 10%). I grabbed the latest data I could get my hands on – and that happened to be from April. The numbers are really staggeringly large.
|Current||30 day growth|
In addition we’ve started to make progress recently with Windows and Office – two of the Microsoft teams with the oldest and most entrenched engineering systems. They’ve both used TFS in the past for work planning but recently Windows has also adopted TFS for all work management (including bugs) and Office is planning a move. We’re also working with them on plans to move their source code over.
In the first couple of years of adoption of TFS at Microsoft, I remember a lot of fire drills. Bringing on so many people and so much data with such mission critical needs really pushed the system and we spent a lot of time chasing down performance (and occasionally availability) problems. These days things run pretty smoothly. The system is scaled out enough and the code, and our dev processes have been tuned enough, that for the most part, the system just works. We upgrade it pretty regularly (a couple of times a year for the breadth of the service, as often as every 3 weeks for our own instances).
As we close in on completing the first leg of our journey – getting all teams at Microsoft onto TFS, we are now beginning the second. A few months ago, The TFS team and a few engineering systems teams working closely with them moved all of their assets into VS Online – code, work items, builds, etc. This is a big step and, I think, foreshadows the future for the entire company. At this point it’s only a few hundred people accessing it but it’s already the largest and most active account on VS Online and it will continue to grow.
It was a big decision for us – and we went through a lot of the same anxieties I hear from anyone wanting to adopt a cloud solution for a mission critical need. Will be intellectual property be safe? What happens when the service goes down? Will I lose any data? Will performance be good? Etc. Etc. At the same time, it was important to us to live the life that we are suggesting our customers live – taking the same risks and working to ensure that all of those risks are mitigated.
The benefits of moving are already visible. I’ve had countless people remark to me how much they’ve enjoyed having access to their work – work items, build status, code reviews, etc from any device, anywhere. No messing with remote desktop or any other connectivity technology. As part of this, we also bound the account to the Microsoft Active Directory tenant so we can log in using the same corporate credentials as we do for everything else. Combining this with a move to Office 365/SharePoint Online for our other collaboration workflows has created for us a fantastic mobile, cloud experience.
I’ll see about starting to post some statistics on our move to the cloud. As, I say, at this point, it’s a few hundred people and mostly just the TFS codebase – which is pretty large at this point. Over time that will grow but I expect it will be slow – getting larger year over year into a distant future when all of Microsoft has moved to the cloud for our engineering system tools.
I know I have to say this because people will ask. No, we are not abandoning on-prem TFS. The vast majority of our customers still use it, the overwhelming majority of our internal teams still use it (the few hundred people using VS Online is still rounding error on the more than 60K people using TFS on premises. We continue to share a codebase between VS Online and TFS and the vast majority of the work we do accrues to both scenarios – and that will continue to be the case. TFS is here to stay and we’ll keep using it ourselves for a very long time. At the same time VS Online is here to stay too and our use of it will grow rapidly in the coming years. It will be a big milestone when the first big product engineering team not associated with building VS Online/TFS moves over to VSO for all of their core engineering system needs – I’ll be sure to let you know when that happens.
I’ve talked about this before but something happened today that got me thinking about it again. One of the necessary components of the rapid release cycle we are on for VS and TFS is an easy and seamless upgrade process. All through the 2012 Update cycle (.1, .2, .3) we worked on making the TFS Upgrade process easier and more reliable – mostly focusing on the upgrade leaving your server configuration exactly how it was.
What caught my eye today was a mail from a customer titled: RE: [ TFS2013 ] Feedback - Upgrade to 2013.2 RC does not keep IIS settings required for Kerberos
It was a response to an email from February and unfortunately, it was too late, at that time to make a fix for Update 2. The body of the mail was:
“I just upgraded to TFS 2013.3 RC and the IIS settings were preserved, Thank you!”
I tend not to mention fixes/changes like this in my posts about releases because there are so many that the post would be crazy long. Sometimes I try to look for themes in the fixes and describe the intent/benefit of a set of work but I don’t always have time. We’re trying to get better about listing all the significant bug fixes in the KB article but I don’t know that we’re all the way there yet.
Regardless, every update, whether we describe all the fixes or not, generally includes dozens of little improvements like this that are just designed to make life better. Improvements that make it easier to digest more improvements are particularly valuable.
Today we are releasing Visual Studio 2013 and Team Foundation Server 2013 Update 3.
- Download Visual Studio 2013 Update 3 RC
- Visual Studio 2013 Update 3 KB article
- Visual Studio 2013 Update 3 RC release notes
You’ll find a complete list of download links in the release notes.
This is a “go-live” release and is expected to be the last preview before Update 3 is released. It will be supported in production, can be used to upgrade production environments and will support upgrades to the final version when it is available. We expect the final release to be within the next month or two.
There is quite a lot of stuff in VS 2013 Update 3. You can read about a lot of the detail on the Visual Studio blog or in the release notes I referenced above. I’ll call out a couple of the things that I’m particularly passionate about:
CodeLens support for Git – In Update 3, we’ve added CodeLens support for projects using Git, in addition to those using Team Foundation Version Control. CodeLens for Git works against the local Git repo and, as such, works whether you are using an onprem TFS server, VS Online, another Git service (like GitHub) or are offline completely. Next up on the CodeLens slate (not in Update 3 though), is support for CodeLens with TFVC on VS Online. Read more here.
Mixed Case Menus – I know I’m going to get some feedback on this one :) This is a long standing request by a vocal portion of the VS user base since VS 2012 to change the “ALL CAPS” menus. In VS 2013 Update 3, we have added a Tools –> Options setting to control whether you see ALL CAPS or Mixed Case. The default is still ALL CAPS but, if you change it, it will persist across upgrades and will roam across your IDE instances using the VS Online roaming settings feature (if you log into VS so it knows who you are). For grins, I’ve copied the DECLINED User Voice suggestion from 2 years ago. I guess we can “undecline” it now :)
In Team Foundation Server 2013 Update 3, we’ve also included some nice enhancements.
Test Plan and Suite customization – We’ve modified test plans and suites to be backed by work items so you can use the same customization techniques – adding fields, designing forms, etc. It also means you can query them like work items and you have versioning/history of them.
Release Management support for PowerShell DSC and Chef – The TFS release management solution now support writing deployment scripts in PowerShell DSC (Desired State Configuration) or in Chef. Among other things, this means we now have first class support for non-Windows platforms.
Some nice usability fixes – We’ve tried to slip in some nice customer driven TFS usability fixes into Update 3. A couple of the top ones are:
- We brought back the ability drill into group membership from within the web based permissions UI. This was a capability we had in TFS 2012 but lost in 2013 and have gotten a lot of feedback on it.
- We added a “filter setting” to the backlog to control whether “current sprint” user stories show up. They used to be included and we got a lot of feedback that people didn’t want them there so we took them away. Then we got a lot of feedback from people who do want them there. So now we’ve made it configurable.
Looking forward to your feedback. We’ve already started making progress on Update 4 so expect to hear more from me in the next month or so on the kinds of additional enhancements you can expect.
This week we are deploying our sprint 67 updates. We've started on a set of small changes to the Agile Project Management experience and you'll see the first of them in this sprint's release notes: http://www.visualstudio.com/en-us/news/2014-07-01-vso.
Of course, we continue moving forward in other areas as well but I hope these will improve your experience.
Busy week for me catching up from my week at the beach last week so I'm going to keep this post short and sweet :)
I sometimes use an analogy to a bag of sand. I use it to refer to treating something in the aggregate. Each grain of sand can be inspected for mineral content, density, porosity, size, color, etc. but usually we just talk about how much of it there is. In software people sometimes use a similar technique to deal with customers, resources (oh, I mean people ), schedules, etc. Treating things in the aggregate is sometimes necessary but never forget what you are losing in doing so.
Today I am excited. Maybe sometimes I’m excited by small things, but, none-the-less, I am excited. Some months ago, I wrote a post on measuring the quality of a service where I tried to articulate a customer focused view of quality. For the last couple of years I’ve had a “north star” of building a great way of measuring the quality of the experience our customers have on a customer by customer basis – rather than treating the customers as a “bag of sand” and only looking at the health of the overall service. We’ve been gradually making progress on that journey and today is a milestone.
Now for a brief aside before I continue…
9 months or so ago, we created something we call the “Top Customer” program for Visual Studio Online. We measure activity in the service and identify the top N customers as defined by # of active users, depth of usage, etc. We then offer this set of customers participation in the Top Customer program – some accept and some don’t respond. It’s all good. The benefits of the program for the customer include a direct contact in the product group to help with any issues they experience, early access to new features (think kind of like traditional Beta programs), etc. The benefit for us is that we get feedback on important decisions and early features before we roll them out broadly.
Now, back to the story on quality of service…
We recently (like within the last week) actually produced a quality of service report that actually lists quality of service by account. And then in the last couple of days, we composed that with our Top Customer program to see if any of them were experiencing issues. Sure enough it seemed so – about 4 out the the top 30 or so seemed to be getting experiences of lower quality than we expect to be able to deliver. So we contacted them to ask if they were seeing issues themselves and today, we got the first response back. The response we got back included this:
“I had put this down to general connectivity/service issues, but if you’re saying that you’re seeing this your side then yes something must be amiss. The reports I’ve had from devs are slow pull requests / more than normal commit fails and general authentication issues. Nothing so severe that we’re unable to operate, but is requiring an extra retry or request.”
As my 16 year old daughter would say BAM! We identified an issue a customer was having before they were frustrated enough to contact us to complain about it. I’m incredibly happy about that. I suspect we’ll need to continue doing this kind of cross checking for a little while but, ultimately, we don’t want to even bother the customer with it, of course – we just want to fix it for them proactively.
I also ultimately want to evolve our service health dashboard on http://www.visualstudio.com/support/support-overview-vs to provide a personalized view so you can see how your individual account is doing rather than the entirety of the service.
It’s a journey and we’re not nearly done yet but I’m really excited about this milestone.
There was a question on one of our internal aliases today about version to version improvements in our test capabilities. One of the program managers in that area wrote a response that really caught my eye. Primarily because it seems like an awesome demonstration of the effectiveness of our “Updates” model. It’s a pretty cool, constant stream of value. Below is an excerpt from his mail that includes links to information on each of the new capabilities that have been released.
VS 2012 (Microsoft Test Manager) - RTM:
- Compatibility of Microsoft Test Manager with Visual Studio 2010
- Manual Testing Windows Store Apps
- Enhanced Action Logs for Windows Store Apps
- Exploratory Testing window
- Manual Test Steps Can Include Multiple Lines
- Manual Tests Includes Rich Text
- Microsoft Test Manager Test Plan Results
- Cloning Test Suites into Other Plans for New Iterations
- MTM Performance improvements
VS 2012 VS Update 1:
- Pause and Resume in MTM
- Populate test suites using hierarchical queries in MTM
- Edit test cases during execution in MTM
- Automatic updates in MTM
- Other enhancements in MTM
VS 2012 Update 2:
- Test Plan/Test Suite Cloning in MTM
- Light-weight Browser based Test management & Execution
- Customization of test result fields and marking test results as NA in MTM/Web
VS 2013 RTM:
- View step attachments inline during execution, Add attachments and Pause/Resume tests in Web
- Inline editing for tests during execution in Web
- Test Plan Creation, Test Suite Mgmt, Parameter editing from Web
- Transition to MTM from Web
- Launching Test Runner from Web and pasting images into work item forms
- Bulk entry/edit of test cases using the grid view in Web
VS 2013 Update 2:
- Column options for the test case grid view in Web
- Exporting test artifacts in Web
- Shared Parameters for Test Cases in Web
VS 2013 Update 3 CTP2:
We’ve certified TFS 2013 (and its subsequent updates) to work with SQL 2014. However, there’s a hitch. Because TFS 2013 shipped before SQL, the license than grants the right to use it with SQL Server only allows SQL Server 2012. Starting July 1st, we will be adding SQL Server 2014 to the list of license grants for TFS 2013. That won’t, apply to earlier versions of TFS though – we haven’t even tested those with SQL 2014.
Anyway, hopefully this will make your life a little easier if you want to use SQL 2014. Of course, you can keep using SQL 2012 if you like.
It’s time for our sprint 66 deployment already! Over the next couple of days the update will be rolling out across accounts. The big news in this update is Pull Requests for Git repos. Pull requests are a workflow often used with Git whereby a developer makes some changes in a private branch. They then submit a “pull request” with is essentially a request for changes checked into that branch to be merged into another branch by the “owner” (or a committer in Git speak) of the target branch. That workflow enables a code review experience with back and forth discussions of the changes, refinements if the changes need updates, etc. Ultimately the pull request is either accepted and merged into the target branch or rejected.
With Team Foundation Version control we have a code review experience in Visual Studio. With Git, we chose to do an analogous experience in the web so that it’s available on all platforms and regardless of the IDE you use. We expect to enable the TFVC experience on the web too – and, likely also have an “optimized” VS integrated experience. Never an end of work to do :)
Because the pull request workflow is so fundamental to the Git collaboration experience, we’ve chosen to make it available to everyone with a VS Online Basic license or higher (that includes the 5 free licenses, the advanced license, the pro license and a qualified MSDN subscription). We expect we’ll ship this feature in on premises TFS in the future and will have to sort out that licensing when we do so.
You’ll find a new “Pull Requests” tab under “Code” for any project that has Git repos. If you hit New Pull Request, you’ll get an experience that looks like this to select the source and target branch, review the changes, etc.
If you hit “more options” in the blue area, it expands enable a description and a list of reviewers (adding your team by default).
A notification will be sent to your team room and a new pull request will show up in your list.
You can open the pull request and review it., comment on it, etc. You’ll also notice that VSOnline has already gone ahead and done a “test merge” to see if there will be any merge conflicts when I decide to merge it “for real”. In this case, there are some.
One more very nice step on our journey to bring Git up to parity with the capabilities we have in TFVC. As with pretty much everything we do in the cloud, it will continue to be a “work in progress” for several more sprints as we take feedback and refine it.
We hope you like it and, as always, value your feedback.
Today we released the second preview (CTP) of VS/TFS 2013 Update 3. You can download it here.
That I know of, there’s not much in the way of new features over and above what I listed in CTP1. The changes are mostly bugs fixed and features refined.
I’ll remind you that CTPs are not “go live” and are only provided for “tire kicking”. I believe our next CTP is going to be “go live”, I’ll let you know for sure when it releases.
Over the last year, I’ve run across numerous customers who are looking for cloud benefits but aren’t ready to go to VS Online – for any number of reasons. I asked the Ranger team to put together some guidance on helping people make this decision and then best practices should the decision be to go with TFS on Azure VMs.
They just released a preview of the guidance. It looks pretty thorough to me. You can check it out on Willy’s blog post.
Feedback welcome as always,
This is so cool. Yesterday we uploaded the VS 14 CTP we released the other day as a VM in the Azure VM gallery. In the time that it took me to drink my morning cup of hot chocolate (I don’t drink coffee), I was able to spin up the VM, start up VS, connect to my VSO account (roaming settings made that even easier), sync my project locally and build my app. Very cool!
Hopefully we can start doing this with every pre-release to make it easier than every to check out the new stuff with no risk and little time investment.
Today we released the first Visual Studio “V.Next” Community Technology Preview. You can read more about it on Soma’s blog post. Don’t confuse this with my announcement of the VS 2013 Update 3 CTP that I announced 4 days ago. We are doing development on the next major version of Visual Studio in parallel with Updates to Visual Studio 2013. You can expect to see continued Update and V.Next releases in the next several months.
For the TFS community, I want to explain that we did NOT ship a CTP of Team Foundation Server V.Next at this time. Because we can deliver our TFS features on the Visual Studio Online service and because CTPs are not “go-live” and few people choose to install CTP releases of TFS, we chose not to release TFS in this CTP. I’m sure we will release it in some future preview but not for now.
Enjoy checking out this early peek at the next major release of Visual Studio if you get the chance.
Better late than never, I guess. Sorry for being so late blogging about this; it’s been a crazy week. About a week ago we announced the availability of Visual Studio 2013 Update 3 – Community Technology Preview 1. That's a mouthful. Just a bit of orientation. This is a VERY early preview of Update 3 – heck, we just shipped Update 2 at TechEd about 2 weeks ago. It is not intended for use in production environments. I’m not expecting everyone to run out an install it but, if you are really interested in what’s in it, it’s a good opportunity to track the progress. We will likely be shipping a few CTPs before we ship a final release – think of the update cadence as roughly a release every 3-4 months – so Update 2 in mid-May means Update 3 somewhere in the Aug/Sept timeframe, assuming all goes as expected.
If you want to check it out, there are the links you will need.
- Download Center: http://go.microsoft.com/fwlink/?LinkId=397827
- KB Article: http://go.microsoft.com/fwlink/?LinkId=397828
A few of the notable ALM related things already in Update 3 are:
Test plan customization
One of the big innovations in TFS 2013 Update 3 is with Test Plans and Test Suites. We’ve gotten a lot of feedback over the past couple of years about people wanting more capabilities. With Update 3, we’ve changed the underlying implementation of plans and suites to be based on work items – rather than the custom entities they were before. This means you get all the features you get for work items: customization, querying, an API, permissions, history, etc. automatically. We’ve done it in a way that it’s compatible with previous clients, reports, etc so it should be a non-disruptive change for you and should just make things better. This feature is not available on VS Online yet because we don’t enable any process customization in VS Online yet.
With this improvement, we’ve addressed a slew of User Voice suggestions. You can read more about it here.
CodeLens for Git
Since we released CodeLens, we’ve gotten consistent requests for more. In Update 3, we are adding support for collaboration indicators when you are using Git (in addition the support we already have for TFVC). You can read more about it here. Another top ask is CodeLens support for Visual Studio Online. We don’t have that yet but it’s next on our list after Git support.
We’re continuing our journey to make Codemap a great solution for visualizing your code and its dependencies. With Update 3 we’ve made lots of nice small improvements that overall improve the experience. Read more here.
Powershell Desired State Configuration support
I mentioned this one in my talk at TechEd. We’re continuing to evolve and improve our Release Management capabilities. Part of that is working with the Windows and Azure teams on creating the best solution for deploying applications on our platforms. Powershell DSC support is the next step on that journey and will ultimately be combined with other platform technologies coming that will make it very easy to deploy large scale distributed applications and to manage all the deployment automation and configuration assets the same way you do your application code. You can read more about our new Powershell DSC support in release management here.
Hopefully you like what you see so far. All this will evolve between now and the Update 3 release and we look forward to any feedback you have.
Check out Wookiki… It’s a Windows 8.1 store app for keeping up to date on build statuses on Visual Studio Online – it has push notifications, live tiles and more. A previous version had been built with the OData solution for TFS that Brian Keller put together a couple of years ago. Now it’s been ported to work with the new Open APIs that we announced earlier this month.
Here’s a short video of the previous version if you want to see what it does.
The VS Anywhere guys have been continuing to improve their real time developer collaboration capabilities by adding a web experience along side their VS add-in. They’ve also taken advantage of our new VS Online Open APIs to do so cool VS Online integration. They’ll be doing a web cast on it in a couple of weeks and I encourage you to check it out.
Session title Interactive Code Reviews with Visual Studio Online and VS Anywhere
· Date: Thursday, June 12th, 10:00am PST
· Registration link: http://aka.ms/VIS44PALReg
· Description: When a software development teams grows, it normal to have difficulties with collaboration, especially when members are not in the same time zone or physical location. Daily workloads can also make it tough to schedule reviews or knowledge transfer. Teams use tools like screen sharing, email, and asynchronous communication tools to handle these situations; however these tools are not efficient and time is wasted because of technical limitations.
This week we are deploying our sprint 65 work. You can read the release notes here: http://www.visualstudio.com/news/2014-may-20-vso
The really big news is that we’ve completed the next step in the journey to fully supporting Active Directory integration through Azure Active Directory. You can now create a new VS Online account through any of the paths we offer and connect the new account to Azure Active Directory in the process. The news post has a bunch more detail, tutorials, etc.
This has been one of the top service requests for a while now. In fact, there are two highly voted Uservoice items related to it that we’ve partially addressed.
There’s actually a ton more work that we’ve had to do to get to this point than you might imagine. It’s not just about hooking up another authentication provider. We’ve tried to make the whole scenario work well. For instance.
- MSDN subscriber benefits – Once you can login to VS Online with your corporate credentials, how are we going to recognize your MSDN subscription and give you credit for the license? We’ve had to add support to MSDN/VSO to enable you to specify a set of AAD credentials associated with your MSDN subscription by which you can get credit.
- Interplay between AAD and Microsoft Accounts – Microsoft Accounts (Live IDs) can be added to AAD as “external identities", making them kind of virtual members of the directory. That creates all kinds of problems. It means that with the same Microsoft Account, you can be a member of multiple organizations. How do you see all of the VSO accounts in all of those organizations you have access to? We’ve updated the profile page to round them all up and show them. What about the fact that you only have one user profile – display name, picture, etc? Many organizations want to control things like that with policy in their organization. We’ve added support for organization specific profiles. So the profile is yours but it has a “personality” specific to each organization you are a member of.
There have been tons of edges like these that we’ve had to deal with. The whole process has given me a renewed appreciation for how much more complicated identity is than you would, at first, imagine.
What you can’t do…
As I said, this is a step on the journey. There’s lots you can’t do yet. By far the biggest and most important one is that you can’t attach an existing VSO account to an AAD directory. You can only do it while creating a new account. Enabling attaching existing accounts is the next scenario on our list and, last I checked, we were estimating about 3 more sprints of work to get that done.
I know what you are thinking… How can I create a new account, move all my stuff over to the new account and keep working? Stop. Don’t go there. It’s complicated. If you just want to sync your source, create a new account and check it in – basically starting over, go ahead. But if you hope to preserve history, work items, tests, etc. Don’t. Just wait a few sprints and we’ll enable you to add AAD. Down the other path, you’ll pull out half your hair and probably be done about the time we introduce the feature anyway.
There are other things that still need to get done beyond that. For instance, once you can attach AAD to your VSO account, you will be able to add your Microsoft Accounts as external identities to your AAD and keep working. However, some of you, maybe most of you, would sure like to be able to move all of your work from your Microsoft Account to your linked on-premises AD identity – so for example, change firstname.lastname@example.org to email@example.com. We have yet more work to do to enable that and I don’t have a timeline but likely later this year. You will also want to be able to use your Active Directory groups to manage permissions (and other things) in VSO – also likely to happen later this year.
So, this is not the end but rather it is an important step.
As I said, I’ve found that identity is way more complicated than you’d expect and I’ve found that our current docs are not great at telling you everything you need to know. I’ve asked that we put together a one stop shop page that contains a good explanation, links to resources and an FAQ to really help people sort through it all and create a solution that works well for them. I’ll let you know as soon as we have it.
It’s an incredibly exciting step and I think once we get the next step (ability to support pre-existing VSO accounts), we’ll cover the most pressing needs. We’ll finish this out and start ramping up on the next most pressing requirement – process template customization.