they're looking for someone to work on a C# to native code compiler. Even if .net as a VM and the C# to IL compiler are far from gone (and probably never will be), it doesn't look like C# and .net are in favor at Microsoft nowadays.
There were many factors that led to this decision. I described the primary factor in my posting: I've been at this job for sixteen years at the same company, I am turning 40, and it is very common for people at that age to want to make a change.
I assure you that "how C# is treated" was in no way a factor; C# is treated extremely well at Microsoft. Moreover, think it through: I would not have taken a job that continues to improve the broader C# ecosystem if I thought that the .NET platform was some kind of dead end. It is vital.
I was going to say something similar. It's odd how, in a community that exhorts its members to constantly be seeking the best opportunities, someone leaving a company after over a decade is considered a sign of some deeper problem.
As a long time fan of C# and how it evolved (started with .net beta 1), and even more so of Roslyn, I for one would be very disappointed to see C# not being considered from Microsoft as I consider it.
Good luck in your next position, I heard that Coverity for .net is using Cecil :)
Huh, I'm definitely not going “all conspiracy theory” on you. And by you I guess I mean Microsoft?
The perception from the outside, or let say, my perception, is that both .net and C# along (C# being the flagship language for the platform) don't have the same place in Microsoft's strategy than they had say 4 years ago.
Eric being one more visible .net profile leaving Microsoft, I'm just saying it's interesting to wonder if that's related.
> ...I'm not saying that we didn't land on the moon,
> I'm just saying it's interesting to wonder if it
> really happened.
I don't think that conflating speculation with conspiracy theories is necessarily productive. It's not like Microsoft doesn't have a track record of abandoning partners in the past[1] (e.g. Plays 4 Sure).
> If you haven't noticed, I've been part of this
> community for quite a while.
I'm not sure that 'pulling rank' is necessarily constructive either. It just reminds me of those Slashdot threads where people with increasing smaller UIDs would reply with, "You must be new here," or "get off my lawn."
[1] Though I agree that completely abandoning C# would be suicide in the enterprise market.
I don't think that conflating speculation with conspiracy theories is necessarily productive. It's not like Microsoft doesn't have a track record of abandoning partners in the past[1] (e.g. Plays 4 Sure).
Conspiracy theories are just speculation too. One could argue that the US government has a history of all kinds of activities and thus many of the current conspiracies are in keeping with history. The essence of a conspiracy theory is speculation not grounded in evidence or probability.
I'm not sure that 'pulling rank' is necessarily constructive either. It just reminds me of those Slashdot threads where people with increasing smaller UIDs would reply with, "You must be new here," or "get off my lawn."
My comment was directed quite clearly at the insinuation that I was speaking on behalf of Microsoft, which I do not do.
I may have been snarky, but only because I see this quite a lot on HN -- that people are the company they work for. We're just members of this community like any other.
This. It is unbelievable the number of times where people will say something like "I understand why you feel that way..." (if I am say arguing in favor of some MS product/decision) as if, because I work for Microsoft, I must be some non-thinking shill or purveyor of FUD. It is unfortunate because it prevents me from even wanting to participate in any conversation here involving any tech company because everything I say is apparently interpreted through the lens of my employer, because clearly people are that one-dimensional :)
Microsoft seems to be focused on Metro as the way forward. I don't think it's that much of a stretch that they might be pushing JavaScript to the fore-front of their development strategy while starting to side-line C#. I could draw parallels to Apple's sidelining of the Carbon API in favor of their Cocoa API. IIRC, Photoshop is still using the Carbon, even though the majority of development now is in Cocoa.
Granted, I don't follow the Microsoft development community closely, so there may be something that I'm missing out on, but I don't see it to be as 'out there' as claiming vast conspiracy theories surrounding historical events.
No offense but you're reading waaay more into it than what they wrote. "Difference in strategic position" doesn't equate to "dead language that no one uses" and a question into the departure of a high-profile MS exec doesn't rise to the level of moon landing lunacy. Unless you have some sort of inside knowledge about what the parent comment to yours actually meant I can only assume that this discussion in general is hitting too close to home for complete objectivity on your part.
I also don't think that being signed up for a site for a longer duration of time inherently gives you any right to speak for the entire site, even in a conversation with one of relatively less "seniority" on the site (whatever that even means). It's nice that you clarified what you meant by "us" but that wasn't being debated and it didn't add to any points you've made.
You're definitely high-profile amongst the engineer grunts and on various internal mailing lists. I don't know if that wins you any private soirées with Soma or not, but it's something :)
Much like the other commenters have mentioned, you're "high profile" if only because I've actually heard of you and read your writings with interest before (via the same means legions of other developers will have done so). I'll remove "exec" if I still have Edit perms though, apologies.
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.
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.
I know nothing about this particular situation but it pretty well known that power-struggles are the default mode of operation in many large corporations (and Microsoft in particular) and that further almost any manager who leaves a company without being escorted out in handcuffs is going to be "leaving for great things" according to all concerned. Thus speculation about power struggles and corporate emphases is natural unless the company is unusually transparent and/or all of the managers' product are doing well.
Not that managers don't leave for better things on a regular basis but making that the leaving-mantra sadly has reduced its credibility.
Edit: It would be "conspiracy theory" to light on one explanation and push it blindly without overwhelming evidence. But speculation in the dark is fine if it is labeled as such. Real, concrete information is better than speculation the dark. If one could count on such concrete information from Microsoft and others, one would want avoid.
>any manager who leaves a company without being escorted out in handcuffs is going to be "leaving for great things" according to all concerned.
That may be true, and would perhaps be applicable to this case, if Eric were a manager. He is not. He is (was) a Principal SDE. This means he writes code and likely has lots of input into high level architectural/design decisions. Any influence he had over the actions of others is likely due more to respect for his technical acumen than any kind of managerial title. I suspect the closest he would come to being a manager would be any mentoring (official or unofficial) that he did, which is likely more effective than being someones official boss :)
Sure but isn't the point that he is high enough on the "totem pole" that diplomacy needs prevail over all else?
It's not their particular authority over others but their general importance to the company's image and the company's importance to their image which incentivizes everyone to use euphemisms in the situation of a departing of manager. It seems logical that the case of a Principle SDE would be similar.
I'm not even sure why that's necessary. If you need a block of performant code, use unsafe C# (no array bounds checking, unmanaged pointers, etc). Otherwise, C# runs pretty fast the way it is.
Getting support issues nailed with the .Net framework has started to become a PITA in the last year or so. It does feel like they are winding it all down.
As we saw recently:
http://news.ycombinator.com/item?id=4842024
they're looking for someone to work on a C# to native code compiler. Even if .net as a VM and the C# to IL compiler are far from gone (and probably never will be), it doesn't look like C# and .net are in favor at Microsoft nowadays.
Oh well, as long as Eric keeps on blogging...