From a FOSS pov, both Google and Microsoft have positive and negative sides to it. They're massive companies, you can't judge them as one giant blob.
What MS is doing right now with .NET is fantastic for open source. Just like what Google is doing right now with Hangouts is frankly bullshit. Judge actions, not entities.