Hacker News new | past | comments | ask | show | jobs | submit login

Doesn't take a conspiracy theorist to figure out C#/.NET is no longer Microsoft's sole flagship strategy for developers...

Microsoft have recently discontinued their only managed .NET cross-platform managed UI effort in Silverlight in favor of the multi-language Win 8 SDK with JavaScript, C# and C++ bindings. Most Windows applications are still being written in C++ where you would barely notice the difference if Windows didn't have .NET installed, this is in stark contrast for instance with Apple's positioning of their own XCode/Obj-C development platform they've used to build OSX, which essentially would be a glorified terminal if you took away all Obj-C libraries and applications.

Microsoft have also made significant investments in JavaScript and node.js, with even Anders moving off C# to work on TypeScript for a bit.

Basically they're business models have changed where they're now positioning Azure (their new server strategy) as a multi-platform cloud strategy with support parity for .NET, node.js, Java, PHP and Python: https://www.windowsazure.com/en-us/develop/overview/

So I don't think it's a stretch to observe there has been in-fact a "Difference in strategic position" with Microsoft's attitude towards C#/.NET.




> Doesn't take a conspiracy theorist to figure out C#/.NET is no longer Microsoft's sole flagship strategy for developers

"Sole Flagship" strategies, be they for language or DB, whatever, are doomed to fail. The company has "picked a winner," reducing internal diversity and competition between approaches. Past a certain size threshold, a big company has become a number of interlinked ecosystems. Promoting standards to reduce friction of internal information sharing is the way to go. This enhances the positive effect of internal competition, instead of squashing it.


>> "Sole Flagship" strategies, be they for language or DB, whatever, are doomed to fail.

Riiight, cause standardizing on a single platform and maintaining one set of documentation and cultivating 1 shared knowledge-base is really hurting Android's use of Java and Apple's use of Obj-C.


I was talking about internal big company directives. The ones I've seen failed (Shell Oil), unless they were about infrastructure. (Amazon, Wells Fargo)

Android and iOS are a different case. The diversity they both want, they are getting. The diversity iOS doesn't want is controlled. In a big company, the ecosystems have mostly been internal, and standardizing interoperation has traditionally been about internal efficiencies. App ecosystems aren't necessarily like that -- they are for external consumption. (Though one could make the argument that Intents are about efficiency within the Android ecosystem.)


From this I see that C# as a UI language is not the future, that's hardly surprising.

There is no doubt that Azure is being pushed as a back-end, and front end is targeting web ui, metro, and other mobile devices. Silverlight never got market traction, so needs to be dropped.

But all that code on the Azure servers - that's all going to be .net based. Of that there is little doubt.

I think the problem here is conflating UI language usage with language usage in general. The bulk of app code is going into service layers, and they are all written on C#.


I think that you're reading the tea-leaves all wrong. You also have made a few unproven claims.

Chief among them to my mind, is that Microsoft has made a "significant investments in JavaScript and node.js". Significant compared to what? Certainly not compared to .NET which has been a gargantuan decade+ investment.

In my opinion: A strong cross-platform C# eco-system is simply not good for Microsoft. They had to kill Silverlight. By backing Javascript, they bought some time. Silverlight was getting too good. Microsoft does not want a good, easy-to-use cross-platform kit with static-typing and native capabilities to exist. Anything cross-platform from Microsoft is a head-fake, a bare-bones concession, or someone's pet-project that grows into a monster which will have to be killed.

I could be wrong, but I don't think that I am.


>> Significant compared to what?

Significant, in the fact that there's now a less clear choice of what to use when developing a Windows 8 UI or server application.

>> In my opinion: A strong cross-platform C# eco-system is simply not good for Microsoft.

In that case it's a conflict of interests, as it may not be good for Microsoft, but it's certainly good for the .NET community which lets .NET developers re-use and leverage their work on multiple platforms. Fortunately we have Xamarin filling this void, but if it wasn't for them .NET developers would be missing out on the most exciting mobile platforms to date: iOS / Android.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: