Find Me Online

HTML5 Powered with CSS3 / Styling, and Semantics

Managing The Unmanageable

Over the past 2 months or so, 2 stories came out where Microsoft didn’t look too good. The first time around, the company was accused of stealing open source code for its USB/DVD Download Tool for Windows 7. Paul Thurrott had the story in early november on his SuperSite for Windows. In that case, we later learned that a contractor for Microsoft had built the tool using open source components without telling anyone. The company later apologized and will reissue the software shortly with full source code to comply with the GPL.

Today, Techcrunch has another similar story. We do not yet have all the details, but it seems like Microsoft China decided to build itself a Twitter competitor for the local market to compete with the small (but popular) startup Plurk. So what did they do? According to the report on Techcrunch, they copied the design almost verbatim and then copied many of the code too. I mean, why stop at the design?

Now it’s obvious Microsoft inc. did not issue a directive to all employees to start stealing code left and right. The problem here though, is that it’s the kind of thing that’s really hard to manage when you have over 35 000 employees in several countries around the world. God, when I managed my team of 6-8 programmers here in Montreal, it was sometime hard to see if one of them wasn’t screwing things up, so it’s easy to imagine managing 35 000 employees in this regard being incredibly hard.

Interestingly, Apple has not yet been accused of this kind of thing, so perhaps the company does manage to do a better QA or code revision on everything that’s sent out? There are pluses and minuses to mandatory code reviews (and certainly, many programmers dislike the idea) but this is one area where perhaps it would help. Then again, Microsoft most certainly does code review for its main products (Windows, Office, etc.), but how do you ensure everything is A-OK in China where some mid-level manager might just decide using a competitor’s code is good enough. Deadline, you know?

The scary part as I said is that in my 12 years as a programmer, lead developer, team leader and tech leader for various businesses, I’ve seen similar problem creep up from time to time in what can only describe as very small projects. How do you manage the unmanageable? Maybe the solution is to simple accept that inevitability and react once you get caught.