Musings of a Tech Transfer Enthusiast
Make it work with 2012! :) -naspinski, from reddit
Well, the people have spoken, and we've (finally) delivered. The Sando code search extension is now available in VS2012 (in addition to VS2010), thanks in large part to Kosta Damevski. As we release this version I realize that not all readers are familiar with Sando's Raison d'être. For those of you new to Sando here's the top few reasons why we've spent the last year creating it.
Above I've quickly described a few reasons that we expect Sando to perform better than available regex-based tools and I've used a few scenarios to explain why. However, its important to know that Sando is not primarily based on my personal insights. Sando is built upon the huge body of code search research, started by Andrian Marcus's thesis work and so ably continued by researchers like Denys Poshyvanyk, Dawn Lawrie and David Binkley, Lori Pollock, Emily Hill, and many others. Thus, you can download and use Sando, assured that it's providing you with high-quality search results influenced by cutting edge advances in software engineering research.
Sando is available as a Visual Studio extension for VS2010 and VS 2012
While you may know Sando as a software search tool for Visual Studio many are unaware that Sando is also a research-enabling framework. Sando was built to be extensible, for open source enthusiasts who want to support new languages, but also for researchers who need to quickly prototype new search ideas.
You may wonder, why do researchers need to prototype their code search ideas? Because code search is a software engineering problem, involving aspects of program analysis, information retrieval, and even natural language processing, it's necessary for researchers to ground their new approaches in the reality of the engineering issues. They need to test their new search algorithm(s) on realistic source code bases, because it's difficult to simulate the complexity of the system through thought experiments alone.
So, if you're a researcher interested in code search or a developer looking for an open framework to experiment with have a look at my demo (above) on Sando from the 2012 Foundations of Software Engineering Demo Track. I'll cover not only how developers use Sando in their day-to-day work but also how Sando can be used to quickly realize your kooky research ideas. Happy searching!
The ABB team is headed out to FSE next week! While we regularly work with academics (e.g., Jonathan Maletic, Michael Collard, Lori Pollock, Thomas Fritz, Kostadin Damevski, Emerson Murphy-Hill, Gregg Rothermel, Myra Cohen, Mary Jean Harrold...) it's often over Skype, and so we are looking forward to meeting the academic community in person. Please stop by our table, where we'll have ABB tumblers to give away, or grab us during a coffee break. We are always looking for next year's interns, possibilities for collaborations, sabbatical opportunities, or students graduating on the next cycle... so don't be shy!
One of the best ways you can get to know what our research group is up to is to visit us at one of our three tool demo sessions. They are:
10:30-11:45 Research Tool Demos, Session Chair: Brian Robinson, ABB Corporate Research
Automating Adaptive Maintenance Changes with SrcML and LINQ
Vinay Augustine,ABB Corporate Research
13:00-14:15 Research Tool Demos
Practical Change Impact Analysis Based on Static Program Slicing for Industrial Software Systems
Mithun Acharya and Brian Robinson, ABB Corporate Research
Sando: An Extensible Local Code Search Framework
David Shepherd, ABB, Inc.Kostadin Damevski, Virginia State University
Bartosz Ropski, Autodesk, Inc. Krakow, Poland, Thomas Fritz, University of Zurich
If you'd like to read about some of these projects ahead of time you can check out this video on Sando, visit the srcML.Net code repository, or review one of Mithun's papers on slicing industrial scale programs. See you soon!
David Shepherd leverages software engineering research to create useful additions to the IDE.