Microsoft's open development approach
One of Microsoft's major software releases a few weeks ago didn't go too well. A huge amount of business software is built on top of a core Microsoft software library (the ".NET Framework").
The latest version had a major flaw, and Windows Update on machines across the world suggested it be installed. The problem was that in certain circumstances, a program might be busy passing around apples and oranges and then without warning the apples would simply vanish. It was rare, but who wants just oranges when you could have apples too? (Or say, a million dollars?) Before this becomes a fruit salad joke, let's look at the fascinating way this issue was handled.
For over a year, Microsoft have been making use of the most popular site in the world for open source software, GitHub (which by the way is not owned or run by MS). For many months, the source code that contained this issue had been based there. This meant that when a couple of senior developers that work on one of the top web sites in the world found this issue, they had a place to report the bug. A place that was public and open. A place for both Microsoft and the developer community to collaborate.
The results speak for themselves. A good test case for reproducing the issue was put together by users outside of Microsoft. In less than 24 hours, a patch had been submitted for public review that fixed the issue (by Microsoft, but it could have been anyone). Actually, Microsoft had fixed it sooner but in private, so it was resubmitted:
At around this time I started evaluating this release for a customer and came upon the issue. I read through the thread, and then was able to watch a web page showing one of Microsoft's servers churning through building a fixed release. A few days later, this was released to the public. Microsoft published a blog post, security bulletin, and KB article that accurately communicated what had been happening along the way.
The transparency around this flaw blew me away. This is not the company I was used to. Surely this opens Microsoft up to their competitor's advantage? The issue thread has some understandably concerned users asking questions like "how come this didn't show up in tests"? Microsoft's transparency and strong communication on this put them in control of the situation, and gave their users greater confidence and trust in Microsoft. Someone on the actual development team was answering their questions. This would be much harder to achieve under a closed model. People love it:
By the way, this is not an isolated incident. I also recently witnessed a Twitter stoush about a performance issue in a new Microsoft web server under development, and was able to watch a video about the ongoing resolution to that. Across the board, this new approach is now ingrained in Microsoft's process for their developer tools.
Microsoft's open source decisions have forced transparency to be the way that issues are handled. It shows how the community at large become involved and engaged in the process. Most importantly, it enhances the Microsoft brand and demonstrates its loyalty to its customers.
Posted by: Alex Angas, Senior Consultant, Business Productivity Solutions | 03 September 2015
Rate this post: