Why do some companies prefer private Microsoft solutions when in the majority of cases there are open source solutions or free software for them? What does Microsoft offer that the open sourece or free software communities do not offer?

closed as primarily opinion-based by whatsisname, Basile Starynkevitch, Doc Brown, 9000, Kilian Foth Jun 12 '17 at 6:01

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    @immibis: what planet do you live on? Clearly not Earth. – whatsisname Jun 12 '17 at 4:03
  • @whatsisname One where I've used lots of open source software that doesn't quite do what you want, and lots of commercial software that does (usually because our company paid them to make it do what we want)? – immibis Jun 12 '17 at 4:06
  • 1
    For the record, open source is being embraced by pretty much everyone these days. Even MSFT is open sourced various parts of the .NET runtime. So it's hard to figure out what you're really asking on this site. Surely your question on a site for programmers is not about choosing to use Excel in the marketing department. If this is about tools, or programming languages, or platforms, most companies these days probably choose something other than MSFT. Java is open source. Companies choose that all the time. I think the question is based on a false premise. – RibaldEddie Jun 12 '17 at 5:19
  • 1
    Companies does not choose between "Microsoft" and "open source", they choose between actual product like Microsoft Office and Libre Office. The price tag certainly makes a difference, but there are also other important considerations like compatibility, the quality of the products, cost of retraining personnel and so on. Same issue when say designers are choosing between Adobe Photoshop and Gimp. – JacquesB Jun 12 '17 at 7:25
  • 1
    Sometimes Microsoft just has the better product (for example, it's hard to dispute that MS Office is better than Open Office). Sometimes open-source software is better. (GIT vs TFS). – Roy T. Jun 12 '17 at 9:19

Here are a few reasons why a company may choose Microsoft solutions over open source:

  • Integration with Microsoft Windows. Company plans to target Microsoft Windows as a platform, and the company supposes that Microsoft products offer best integrations with Microsoft Windows.
  • Support and maintenance. By paying Microsoft, you get some level of support for the product you're paying for, and there should be bug fixes and maintenance on the software you buy.
  • Ease of acceptance/popularity. Most companies have some Microsoft products already deployed (e.g. Windows or Microsoft Office), so it's less difficult to convince others that buying a Microsoft product is a worthwhile investment.
  • Availability of human resources. Here in New Zealand Microsoft dominates the software market, so most engineering jobs are for Microsoft languages and software is deployed on Microsoft platforms. If a company were to choose an alternate language/platform it may be more difficult to find engineers to work on them.
  • Open source indemnification. Some companies may be concerned about legal issues of using open source software. They may suppose proprietary software is safer from a legal perspective.
  • I think this sentence summarizes it: "Microsoft dominates the software market" – Giorgio Jun 12 '17 at 5:51
  • 1
    Nop if you put into the market Android or iOS :-) – Laiv Jun 12 '17 at 12:37
  • 1
    @Laiv: PCs (desktop or laptop) are still predominant for writing documents, technical presentations, developing software, and so on. You can sell so many smartphone as you want, but companies are still using PCs for most production tasks. – Giorgio Jun 12 '17 at 17:19

This is a difficult one, because different organizations will have different reasons. The reasons I have heard cited the most are:

  1. "Everyone already knows how to use it." This is usually used as an explanation for why Windows or Microsoft Office were chosen over competitors.
  2. "We need support and Microsoft has support contracts." This usually overlooks the fact that most major competitors to Microsoft products also offer support contracts (and frequently for less). Other times, someone performed an analysis (of some sort) and decided that Microsoft's support would better suit their needs.
  3. "[Microsoft product name] has features that [competitor] doesn't have." I hear this one a lot with Microsoft Office when comparing to LibreOffice. This may be a valid reason for some organizations, but in my experience, the features in question are usually things that almost no one uses. If people used the features, then the open source competition would replicate them (when not patent protected).
  4. "Our customer uses [Microsoft product] and we need to ensure compatibility." Where I work we use Microsoft Visual Studio, because a lot of our customers use Windows, so using Microsoft's compiler is a logical choice. (We also use open source tools on Linux to ensure cross-platform compatibility.)
  5. "Because we were told to use this tool." This is the worst one I hear (usually within large organizations) and it means that someone high up the chain of command chose a tool, mandated that the organization use it, and failed to explain why. (I have a coworker who once spent months trying to find out why a proprietary software suite had really been chosen after hearing this reason.)
  6. "[Microsoft product name] just works better." I have a bias towards open source on this point. I find that very few of Microsoft's products are significantly more stable or functional than the competition. However, I'm sure that a few of Microsoft's products do in fact work at least a little better than the competition and the experience of the decision maker may be different than mine.

Another reason that I have not heard, but that may factor in to decisions at some organizations is "trust/reliability". By this I mean that we know exactly who provided the software, we trust them not to cause too many problems, and we can rely on them being around if things suddenly get bad. Microsoft is unlikely to go bankrupt overnight. Some open source providers may.

On the one hand, if the provider of open source goes under, you can always try to maintain it yourself. An option that is not available with proprietary software, as RibaldEddie pointed out. On the other hand, if the software causes damage to your organization in some way, it's nice to know that your lawyers will definitely be able to find the right person to blame. That may not be comforting to the engineers, but managers seem to like knowing who they can blame.

As a final note, I'll address the comment by immibis. As I pointed out before, proprietary software does sometimes have a feature that some organizations need. These features usually are not widely needed, so the open source organization doesn't bother with it. However, many open source organizations are open to the idea of "bounties" where a pledge of money will result in a feature being worked. Some companies will even assign engineers to work on open source software to ensure that the features they want are there. Whether this type of arrangement works better than a proprietary license depends on the specific dynamics of the company in question.

  • 2
    The idea that some small or medium size company is gonna sue MSFT for anything at all is absolutely ludicrous. In fact pretty much every proprietary software license doesn't allow the user to sue anyone and the software is expressly licensed under terms that claim it's unfit for any purpose. – RibaldEddie Jun 12 '17 at 5:09
  • The OP did not specifically ask about small or medium sized organizations. Most of my experience has been as an engineer working for large organizations, so I answered from that perspective. Most lawsuits regarding software will involve larger corporations, but if the development of software were to involve gross negligence, lawsuits could involve smaller parties. (Yes, it's unlikely that Microsoft would ever be that negligent.) Also, the EULAs that we all scroll through have not always protected companies from lawsuits. EULAs have been partially invalidated by courts before. – Kyle A Jun 12 '17 at 12:18

Microsoft has a fix for everything and it is a safe bet. The dependency is there but it works both ways. With open source... not so much.

Businesses want software that just works, like you want your coffee maker to just work. You are not interested in being able to get parts from different vendors, you want to be sure it is fixed the next day if there is a problem.

MS is a big well known player offering proven technology. Businesses like that, it is stable and safe. You jump on the same boat a lot of others are happy on. They cannot be all wrong.

Depending on your infrastructure, with a few exceptions it is easy and cheap.

If you want to hand pick an OS solution for any of your problems and then try to make them work together, keeping an eye on updates, hoping they will continue to flow and not break any of your interfaces, go ahead. You better know what you are doing. Most people would choose to leave that responsibility to a party that has shown it can handle that sort of thing. Sort of.

OS is not the better or worse choice, it serves a different purpose and a different market at this moment in time. People chosing propriety over OS are typically not stupid, they just take into account more factors than your question suggests you are aware of

  • Microsoft has a fix for everything and it is a safe bet. The dependency is there but it works both ways. With open source... not so much. WannaCry :-) - Sorry I had to say it. – Laiv Jun 12 '17 at 12:42
  • @Laiv WannaCry is a poor example because Microsoft did offer a fix. Take instead all the other vulnerabilities in older products for which no fix exists nor will ever exist. – a CVn Jun 12 '17 at 13:00

Technically speaking, the answer is nothing. Even free and open source software can be purchased with support contracts and the like. And, indeed, since MSFT software is generally closed source, you are hitching your company's wagon to MSFT and are at their whim. If a piece of software becomes mission critical for a company and the vendor, like MSFT, decides to stop supporting it, you have zero chance of supporting or improving it yourself. With open source you can always take the code, learn it, and keep it improving indefinitely. So it's almost idiotic to run a business on proprietary code.

You'd have to ask the companies who choose MSFT software why they do. Otherwise this question's answers are based on opinion.

  • 2
    For most companies it is totally unrealistic (and a waste of resources) to continue developing abandonware on their own. It is simply not a relevant consideration for anybody except perhaps governments and major IT-companies. – JacquesB Jun 12 '17 at 8:54

Not the answer you're looking for? Browse other questions tagged or ask your own question.