Not coincidentally, they just put the Cloud and Enterprise guy in charge of the company.
Not coincidentally, they just put the Cloud and Enterprise guy in charge of the company.
What happens when (say) .NET isn't the best tool for a particular job? Just close your eyes and use the inferior tool anyway? Or use the right tool and just throw the hard-won Microsoft ecosystem synergies out the window? I'm constantly using different technologies for different projects; doesn't this come up a lot in the enterprise world, too?
Granted, I'm not an enterprise developer. I've never worked on a code base that more than 20 people were working on at once. But I don't understand what makes large organizations see a walled-in ecosystem like that as a plus rather than a trap.
What made it worse was that prior to this I'd never really programmed anything for Windows.
However, as I've been using it more and more, I'm beginning to see why it is the way it is, how all this abstraction and scaffolding comes together to make programming easier.
Seriously, having everything a developer could ever want accessible through one interface has some nice upsides, and I now completely see how Microsoft makes so much money off this product.
Also, I think one of the things that makes. NET so attractive is that it seems to have features or libraries for everything and the kitchen sink. C# has excellent support for "business-y" things, to a degree that makes worrying about it not a problem for many companies.
This doesn't just apply to Microsoft... look at the money Oracle, IBM, SAP, etc. bring in. As the saying goes "No one has been fired for using X software before".
"What happens when (say) .NET isn't the best tool for a particular job?"
So like when you need to write something in Python (http://pytools.codeplex.com/) or Node.js (http://nodejstools.codeplex.com/)? Yea that is all supported in VS by Microsoft. Most people don't realize at some point over the last few years they changed from the MS or screw off attitude to a more let's support what we can one. They have also started opening sourcing a lot of their stuff.
I came from Unix/Linux/PHP and Perl at the time and once I got the hang of C# and Visual Studio I have not looked back.
.Net itself is the result of Microsoft abandoning (without even an upgrade path) all their previous developers twice, at around 2000 and 2002.
I've not seen any big non-tech company totally dependent on one programming stack. They spread their bets. One can see people sitting next to each other working on Node.js and Visual Basic.
If anything to go by what I've seen and provided competent people are making the decision, they try to use right tools for the right job.
As such it always amazes me to see otherwise intelligent people complain about Microsoft dumping or abandoning them and their Silverlight-based products.
The technologies in Silverlight are in most cases directly portable to WPF, Windows Phone and WinRT. Any Dev that throws out effort based on Silverlight probably deserves being abandoned.
Well... MS was that company, up until they weren't.
Imagine all you've used is Microsoft's products and all of sudden some hotshot programmer comes along and says "we're going to use this software that a bunch of people wrote for free" Now that is a foreign concept.
What else have you tried? IMO, it is very hard to find anyone that worked on the MS stack, moved to something else and wants to go back to Microsoft.
I don't know much about C++ though.
The myth that Eclipse users try to perpetuate that "you must buy Resharper just to be able to work in VS" is just that: a myth.
My team has worked on both C# and Java backends for AAA-games and after we moved to C# we have had people actively threatening to resign if we ever went back to Eclipse (and Java). The debugging capabilities, the speed of the tools, the relative sanity of C# compared to Java ... there is simply no comparison.
For example, how would you compare SQL Server install to Postgres? Did your team have an easy time integrating with AD? Was the team more productive in C# than Ruby?