Microsoft woos open sourcers with Visual Studio 2010
What price MySQL?
VSLive Microsoft has invited the open-source community to build plug-ins for Visual Studio 2010, and has improved database support to help build partner backing for its planned integrated development environment (IDE).
The general manager for Microsoft's Visual Studio told The Reg he'd like to see open-source developers contribute their best ideas to Microsoft's next IDE.
Visual Studio 2010 is still in the early planning phase, but is already scheduled to support a number of open-source projects and tools, mostly from Microsoft or people recruited from the community.
The single exception to the Microsoft presence will be JQuery, which developers will find is woven tightly into the IDE's fabric through the existing IntelliSense feature. Microsoft demonstrated JQuery's integration with IntelliSense along with the planned Visual Studio 2010 interface and tighter integration between testing and development features at its VSLive show in San Francisco, California on Tuesday.
Visual Studio general manager Jason Zander called JQuery a "good example of open-source contributed code" for Visual Studio 2010. "We will look for opportunities for things like that," he said.
He also signaled his openness to greater integration between Visual Studio 2010 and MySQL, the dominant open-source database - among web developers, at least. Microsoft also announced a plug-in for Oracle to the planned Visual Studio 2010 Team System (VSTS), completing the closed-source database troika for Visual Studio that includes SQL Server and IBM's DB2. The planned Oracle plug-in from Quest Software should let you use Oracle as a data and workflow repository for VSTS.
Missing, though, is an open-source database option.
Zander said that the Visual Studio 2010 features demonstrated at VSLive would work on "another database," and that it "would just take another vendor to go ahead and do the work".
"We will keep looking at what the market looks like and the demand looks like," he said.
Licensing could prove to be a sticking point, particularly in the case of open-source components for Visual Studio. Microsoft decided early on that it can't ship external open-source code with Visual Studio that uses a license that could expose it to IP litigation down the line.
This limitation could be navigated, however, should projects come with a license that's considered business-friendly - JQuery, for example, is under MIT in addition to GPLv2. Alternatively, code could be downloaded for use with Visual Studio instead of being shipped by Microsoft with the IDE, a step that would protect Microsoft from legal blow-back in any potential IP action.
A harder problem for Microsoft would be to persuade members of the open-source community to want to help, given the history of competition and animosity between them and Redmond.
Zander said Microsoft has tried to work closely with the open source community to prove its good intentions. He listed as positive moves the inclusion of the OSI-license compatible Dynamic Language Runtime in Visual Studio, allowing its IronRuby to be hosted on Ruby Forge, along with its willingness to take feedback on the scripting language and the fact Python author Jim Hugunin works on Zander's team on IronPython.
"We also know that to be a first-class member of that community - Ruby and Python are an example - it requires for us to work in that kind of way," Zander said.
The appeal to open-source comes as Microsoft takes steps to make it easier for the 200 partners in the official Visual Studio Industry Program (VSIP) to build plug-ins for Visual Studio 2010. This will be the first version of Microsoft's IDE with the shell written in its Windows Presentation Foundation (WPF) graphical subsystem, which separates the interface from the business logic.
According to Zander, WPF will let partners write plug-ins without focussing overly on the interface, since WPF will take care of that. He already expects partners to take the Visual Studio SDK and build components.
"[Partners] can spend more time figuring out what the data has to hook up to and less of their time writing really low-level graphics code," Zander said. ®