views:

187

answers:

5

Hi Guys,

We have been asked to look into a fully open source solution for a big project, they want the project be as near to 100% Open Source as possible, mainly because as its a community project there may be very little money available in the future except for the running of a host. Using OS software saves on licence costs as the server will be managed in house by the existing IT systems team.

One of the suppliers is proposing .net as the makeup of system, which is fine I understand that .net applications can quite rightly be released under open source licences such as the GPL etc.

However as im not a .net developer, im a little confused when it comes to what powers the .net. Does it HAVE to be a windows server, which of course leads to higher server costs and a tie in to MS products, or is it possible to run .net applications on open source servers such as Linux etc.

Please dont turn this into a MS Vs Linux argument and the benefits or using one or the other. We are just wanting to make sure we are fully informed when it comes to using .net and just how open source it can be. Im hoping to have my eyes opened.

+3  A: 

"True" .NET only runs on Windows. However, the Mono project allows applications written for .NET to run on Linux (and other platforms) so long as there aren't any compatibility issues. Mono has a compatibility checker which can help you to have a cursory look at how many problems you're likely to have, but I don't have any experience with it myself. There's also a Portability Guidelines page which you may find very useful.

Jon Skeet
There **is** a compatibility checker. It's called Moma: http://www.mono-project.com/MoMA
sgwill
@Sam: Thanks - will edit the answer.
Jon Skeet
+1  A: 

I think you will find that the open source community and shear volume of choices is much greater in non-Microsoft environments. While you can use Mono to run .Net on Linux, you are probably just adding another layer of unnecessary complexity.

Also, be sure to evaluate the true cost of choosing open-source solutions. There may not be a community to support the software you choose and in the long run you can end up spending as much time/money on maintenance as you would have saved otherwise.

Geoff
Yes the true cost of choosing open-source is something we are very aware off, the 'system' being developed will have to have long term support,and only recognised supported systems are going to be considered. That is something we have to balance against a number of MS licences (multi servers).
Paul M
On the other hand support of closed source is often just as bad, but then without the source
Stephan Eggermont
A: 
Gavin Miller
A: 

As others have already, there is Mono, but given it's immaturity, it is not only an extra level of complexity, it is an extra level of risk. Furthermore, the supplier offering a .NET solution is highly unlikely to want to support their application on Apaches + Mono.

So either opt for OSS (Apache + PHP/Perl/Python/Ruby etc) or choose IIS + .NET. There is absolutely nothing wrong with choosing the .NET solution, if it's the best application for the job, but don't try to shoe an application essentially designed for one platform onto another.

CJM
This is pretty much what we were thinking, thnks
Paul M
A: 

Does this supplier have real experience with mono on an open source operating system? Or just with .net on windows? And what about your system guys? You probably don't want to force them onto something new they don't actively support

You don't sound very license-aware. GPL does not combine well with some others. Please consult a professional for this.

Stephan Eggermont
We are well aware of how the GPL combines with others, we are just looking at some possible solutions.
Paul M