It's no secret that Microsoft has been analyzing the open-source world for a few years now from a competitive perspective. Microsoft is endeavoring to emulate some open-source best practices with projects like its officelabs incubator effort.
But if you really want to understand the extent to which the Softies are studying open-source methods for clues that might be used in shaping their own business practices, it's worth checking out a couple of recent posts from John D'Addamio, a software design engineer in test in Microsoft's Developer Aftermarket Solutions unit.
("For about 25 years, I worked in the proprietary UNIX, FreeBSD, and Linux world. We were using open source software before it was called open source," D'Addamio said in a recent blog post.)
Four-year Microsoft veteran D'Addamio describes his job at Microsoft as being "part of a team that is producing open source software." The Developer Aftermarket team is "primarily developing open source tools related to Visual Studio," D'Addamio said. And the team "has taken some cues from the Community Based Open Source world" in doing so, he said.
"(P)art of my work is evangelizing open source within Microsoft and exploring how processes need to change for corporate teams to work in the open source world," D'Addamio explained. D'Addamio said he's been focusing a lot lately on the differences between testing closed and open-source software.
"So, what is different about testing open source projects? I came to the conclusion that the answer is 'Not much!'"
D'Addamio made a couple of other observations:
* "The primary difference from the corporate model, so far, is that a corporate designer/developer does not usually manage the project."
* "I think the main thing our corporate team may do differently than the Community Based Open Source world is that we think about testing during the project definition phase."
D'Addamio also offers tips for developers looking to do Community-Based open-source projects, ranging from " Do not get discouraged!" to "After you go open, respond to bug reports quickly."
Meanwhile, Microsoft is continuing to add quietly to its list of developer tools and add-ins that it has released under Shared Source or full-fledged open-source licenses. There are 65 such tools listed on the Shared Source site, including everything from a Web client Software Factory, to the Contacts.Net set of managed programming interfaces introduced to support Vista.
What's your take? Do you see closed- and open-source development and testing models as more similar than different? Or at opposite ends of software-design spectrum?