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!

3 Answers
3

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.

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.

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.