In my eyes the problem is no longer technical, but cultural. There are a million things Microsoft could do to please developers on other platforms, but I just think that there's no changing some peoples minds. When people think of .NET developers, they think of a middle-aged man that works for a big company writing corporate code, and this is not the kind of developer that start-ups or companies like Google want in their ranks.
The moves that Microsoft are making will help validate those .NET developers that enjoy working on the framework AND want to feel like a part of the larger developer community. Technically, things will continue to improve under this direction, but what I really hope is that the per-conceived notions about .NET developers are laid to rest.