views:

314

answers:

20

Microsoft has great technology, but core assets, such as code, remain closed. Developers likes to have control over their development environment (and eventually on the deployment platform as well) - so what is your top motivation to develop for a closed source platform?

+11  A: 

customers. Windows still has by far the largest user base.

And although it's closed source, it's not really that much of a pain nowadays.

CookieOfFortune
+3  A: 

Number of users ([potential] customers)

Matt Lacey
+4  A: 

They have the best IDE, and .NET is a nice framework to code against.

Microsoft maybe hasn't always been a nice player in the PC software market, but they really know what developers like! (That's maybe the one thing they DO GET - in contrast with everything they try on the internet ;-)

fretje
Microsoft knows how to satisfy developers who are used to Microsoft's tools. However, their attitude towards command line shells and plain text formats has been my biggest annoyance about Microsoft as a supplier of development tools.
JesperE
Were you referring to PowerShell?
John Saunders
PowerShell FTMFW
Janie
+2  A: 

The .NET Framework is well designed and enjoyable to use.

frou
+1, although I'm a Java guy I really like what they've done with .NET. I'm honestly jealous of a few features it has.
Alex Beardsley
A: 
  • It's what I know
  • It's where my users are
  • It's a lower learning curve
  • It's (arguably) a better platform to develop for
  • It's a very nice environment and IDE to work in.
  • I can access the source code for platform, just not for the tools.
Joel Coehoorn
+3  A: 

The same as for other platforms: money.

Dev er dev
A: 

For me it has been a matter of personal history. When I started working my customers used Windows, so I developed expertise, code libraries and so on on tools for Windows Development.

tekBlues
A: 

It's a supported platform.

Galwegian
+4  A: 

It sickens me to repeat Microsoft marketing hype, but total cost of ownership plays a large part in us choosing Microsoft technologies. A few awesome libraries (CCR and ASP.NET MVC to name a couple) have saved us plenty of time, so overall we saved. Ouch. I said it.

spender
+2  A: 

Sometimes it's more pleasant, or at least less exhausting, to deal with products developed and supported by corporate drones than those developed and/or supported by hobbyist zealots. The zealot has more propensity to be doing what he or she does for arcane reasons that have little or no relation to meeting your needs.

chaos
A: 

Definitely not by choice. I had wished to work in linux from college days. But the project I joined in the beginning was in Windows :)

But I like the windows--the platform, the IDE, the tools and not to forget great MSDN support for development.

aJ
+2  A: 

My company issued me a Windows laptop.

S.Lott
+1  A: 

Work makes me.

Everywhere else its all UNIX and open source for me.

samoz
+2  A: 
  • It is easy to use. The IDEs are very intuitive to work on.
  • Huge customer base (this is partly because of the first point)
  • Covers pretty much everything from application development environments, databases, OS.
  • Good online support. Lots of stuff available online to refer to.
  • MS suites are taught at schools from an early age, which is also one of the reason why masses are used to it.
  • Good training materials like webcasts on myriad topics are put up.
  • All in all user experience is improved with every release and they strive to make it better.
Andriyev
I agree about the "taught at schools" part. For my part that meant using Unix, though. :-)
JesperE
A: 

I live in a very "technical-job sparse" area. If I were "Window-less" (which, truthfully, I'd prefer to be), I'd find my options extremely limited without relocating.

For the vast majority of us, ideology won't pay the mortgage.

Adrien
+1  A: 

Do you mean a development platform or a deployment platform? As a development platform I'm just more comfortable using Windows and obviously if you are using Microsoft technologies you almost need to use Visual Studio so you're required to use windows. As a deployment platform the question is a lot less personal and more dependent on your programming team's strengths and the problem you're trying to solve.

Hardwareguy
A: 

1) It has hands down the best development tools, and the .NET platform is a pleasure to use. 2) It has the most users

I should stress that #1 is significantly more important than #2 for me.

A: 

Visual Studio + C# + .NET = best development platform

... and I'm an Apple fanboy.

Christopher
A: 

Say what you will about Microsoft, but their development tools and support are top notch.

They really go out of their way to help people who develop on their platform.

I'm an ASP.NET developer primarily, and I can't imagine using anything else. At least not yet.

Jack Marchetti
They do help developers who buy into their whole concept, but they more or less ignore developers wanting to develop cross platform software. Their support for other platforms has often been (IMHO) very geared against helping people stop using other plaforms and start using Microsoft-platforms.
JesperE
How do they stand in the way of cross-platform development? Does Visual C++ not work anymore?
John Saunders
+1  A: 

I know it's a common jab at Microosft to use the whole "just works" thing when talking about Microsoft's competitors (namely, Apple). However, I've actually found that, more often than not, things really do just work on a Microsoft stack, especially when you're combining different applications (IIS + .NET + Visual Studio + SQL Server....you get the idea). I do enjoy working in the open-source web stack as well but I can't deny that you do a lot more fiddling around with components to get them to play well together. A classic example is Visual Studio vs. Eclipse. With Visual Studio, you can install and go and everything, for the most part, moves along pretty smoothly after that. With Eclipse, you can easily spend hours configuring your environment for a particular job and then find yourself troubleshooting why some plugins have disabled functionality of other plugins (I recently ran into this with the Aptana plugin combined with the JWT package killing each other's code-completion).

Also, all that said, even with open-source technologies, I really have found very few reasons (if any) to actually tear into the source-code for my operating system, development tools, etc. in order to modify or debug them directly. I realize it does open the doors to more finely-tune your application for that platform and various other reasons but still...with a limited amount of time and various frameworks to study the API's for as it is, I don't see myself going through the C source code for MySQL in order to make any specialized use of the product. Once again, I'm sure there are those out there that have really come up with something great and having the source-code to something else made it happen, but I really doubt that's the majority of us.

Lloyd McFarlin
Also wanted to add that things have improved on the open-source side of things with packages like XAMPP. However, it also goes to the point that the difficulty to get these components to work together has created the need for something like XAMPP to come along.
Lloyd McFarlin