Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I would like to understand why do some people like open source and some others like closed source? Let me be more specific and make my question about web development. If I build my site using an open source server side language what are the benefits for me? and if I build it using a closed source server side language, what are benefits?

I just want to understand how can I choose between the two differnt paradigms when building different types of web sites and applications!

share|improve this question
    
You might find this article to be of interest: joelonsoftware.com/articles/StrategyLetterV.html –  user34530 Mar 2 '12 at 21:11

3 Answers 3

up vote 2 down vote accepted

Initial Cost has a role to play. Open Source is generally cheaper on both the hosting and the tooling. The only way that closed source competes is by trying to provide better tools, sometimes even free tools. If your input costs are low open source can be an excellent option.

Microsoft will give away the web developer version of Visual Studio to bait developers in, and then give them a beautifully functional environment that makes development easy. They hype everything up and keep new features rolling in.

Consider portability VS level of integration. Open Source can be very sustainable, because you can change out parts you don't like or parts that fall out of favour. With Closed source you are stuck.

Generally speaking Closed Source solutions are more tool focused and more integrated. Open source does not enforce use of any specific tools and represents a mix-in manner of solving problems.

The level integration in closed source can be high. For instance Microsoft provides

  • The programming language (c#)
  • The framework (Asp .Net)
  • The Database (Sql Server)
  • The Web Server (IIS)
  • The OS (Windows)

With open source you can have any combination of operating systems, DBMS, framework and language. They are not tightly integrated, but they are portable.

Consider customizability . Closed source systems are not very customizable. They try to provide pluggable frameworks etc but mostly there are points where you get stuck. Sometimes they have a premium product that you then have to invest in.

Consider giant applications that need custom caching, database solutions, or even a customized OS to run. If you reach that point that your application is so massive that no prebuilt solution can deal, and you want to customise, open source will pay off.

share|improve this answer

This has probably been discussed to death, but...

Choosing between an open-source and a closed-source language probably won't matter much to you. However, choosing between an open-source and a closed-source framework might.

For example, if you found a bug in the framework, and it was open source, well the code's right there. Go look at it, fix the bug, tell the developers, and carry on with your day. Closed source? Well, hopefully the project's owners are willing to take a look.

With that said, usually it doesn't matter. You should choose based on the language or framework's community, featureset, and ability to accomplish what you want to do.

share|improve this answer

Many companies forbid their programmers from using Open Source as they perceive it to be just some hacked together code that that they cannot have supported by a company.

While there is some truth in that (most/many not officially supported via paying for incidents etc), many open source projects are better supported by their great networks of builders/users and needless to say can be customised by you yourself if need be.

Some people like the comfort blanket of having paid for something and assuming/getting guaranteed support.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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