 Hi, I am Biju, Program Manager on the Visual Studio team. In this video, I'm going to give you an overview of the new code search feature on Visual Studio team services. I'm going to begin with an introduction to code search. We'll see the use of search in a couple of key scenarios which will also illustrate the many powerful feature it has. Finally, I'll share with you resources that will help you get the most out of code search. Here are some of the key features of code search. You can now search for code across TFEc and Git projects in a Visual Studio team services account. Near real-time indexing ensures that you always see the most recent changes made. Full-text search allows you to search across all non-binary files, be it code or config files. Powerful semantic search and ranking for CC++ and C-sharp files enables you to specify exactly what you're looking for. For example, you can scope the search to comments or string literals, or you can search for definition or for references to a selected term. Support for additional languages will be added in future. Rich query filters allow you to further refine your search results. You can create powerful and precise queries using operators such as and or not. And you get to see all the search hits in full context of the code file that contained them. Seamless integration with version control allows you to look up who may change to a given line of code or track the change history for a file. Search honors file permission that you have set in version control, so you can be sure that users can't see files they don't have access to. In this demo, I've logged on to my Visual Studio Team Services account. Once you install the extension, you can see a new search box. Let's take a code reuse scenario. I want to explore and perhaps find some reusable code in a colleague's application. The application is called Backlog Maps. And I want to look for any code that I can use to build an app that makes displaying work item in TFSEC. So let me begin by searching for work item. You can see that I can scope a search across all projects in this given account. Just as easily, I can also scope it to a specific project within a given account. Given that this is a TFSEC project, I get to scope to a given path in that project. For Git projects, you can scope to repositories. Code search understands code semantics for CC++ and C-sharp files. For example, I can search for all occurrences of work item in comments. You can see that not only the file's display gets coped, but also the hits in file preview are updated to show the applied filters. You can easily navigate between the search hits. The full file preview makes it easy for you to study the code in and around search hits. Code search uses code semantics as one of the many signals to rank search results. For example, definitions of term are ranked higher than references. You have access to a rich set of filters that allows you to refine search results further. So let me go ahead and scope my search to just all the C-sharp files. I can also add a not operator and exclude all the C-sharp files. That's how easy it is. Now let me locate all classes that have been derived from the class work item. I can do recursive search for the references or definition of a given term. I can use the annotation view to find out the developer who had last changed the line of code. I can now go and talk to the respective developer for further clarification. Let's take an example of debugging scenario. A user encountered an error while using backlog maps and has logged this bug. It states that he saw a specific error message while trying to submit a work item. I'll now search for this error message in code and try to locate the source of the error. I see zero hits from backlog maps. But the count in the project filter indicates that there is a hit in one of the other repositories. This happens to be the repository for the component that backlog map uses. By extending the scope of search, I can now see the error message. I will now do another search for the resource to locate the resource ID. I have located the place where the null exception was thrown. Let me do another search to find the location from where the method is called. It's clear that we need to do some work to analyze null condition and handle them appropriately. Now let me edit this file and drop a note for follow-up action. You just saw a scenario wherein we started with a bug in an app when saving a work item. Use semantic search to trace the source of the issue and made edits to the code that others users can easily find. Now let me search for the recent changes that I made. You can see that the changes I made a few second back are now reflected in search results. This is real-time indexing. So that's it for the demos. I hope you found them useful. To conclude, here are resources you can use to find more information about code search. I have included documentation on MSDN, the forum you can ask questions, the user voice site wherein you can post suggestions. Thanks for watching.