Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yes, there's definitely a split. Core infrastructure like the CLR, OS, and IDE greatly benefit coming from MS (although none are requirements, as Mono demonstrates). But anyone who does serious .NET dev work knows that tons of third-party tools are used.

One big difference I notice in .NET shops is that they seem a lot more willing to pay for the best solution. Whereas for FOSS shops they seem more likely to get an adequate solution for free.



     although none are requirements, 
     as Mono demonstrates
Not to bash on Mono, as Miguel and the Mono team did a fantastic job, but Mono has been more focused on client apps (like for embedding in games).

Another reason for why hosting ASP.NET projects on Linux is awful is because ASP.NET was built for Windows. Things like async operations are built for the Windows kernel, having architecture decisions that have a negative impact on Linux. Last time I tried it, it also leaked memory, heavily.

Nobody sane uses it, unless they made a bad decision to build on ASP.NET at the beginning and it is cheaper to just try using Mono.

    tons of third-party tools are used
But only tools that are replaceable, used mostly in development mode.

How many .NET shops are using MySQL or PostgreSQL? How many of them are using NGinx or Varnish? How many are using CouchDB or MongoDB?

    .NET shops ... seem a lot more willing 
    to pay for the best solution
This is wrong on so many levels I can't even begin to comment on it.

First of all, .NET shops are digging themselves in a hole by using .NET in the first place.

Of course the best solution is SQL Server, because stuff like LINQ doesn't work reliably for PostgreSQL and because the performance of the PostgreSQL client is awful and because the reliable way of designing a database is through Visual Studio, which again, doesn't work so well for PostgreSQL. You would be mad to choose PostgreSQL if working with .NET

That's the whole point - Microsoft doesn't care to have interoperability with third-parties. Microsoft wants you to buy Window Server licenses that are limited in the number of CPUs you can use and it wants you to use nothing less than SQL Server, even though for the same money you can buy multiple kick-ass servers and use PostgreSQL for free.

This isn't about cheapness, it's about the value provided (i.e. being frugal). Running a business should be done frugally, since you're only in business as long as the money supply doesn't run out. Paying more money than you should is irresponsible.


But only tools that are replaceable, used mostly in development mode.

I'm not sure what "tools that are replaceable" means (because to me everything is replaceable), but the comment about mostly in dev mode is just not correct.

There are tons of uses of Oracle. In that 25%, it's probably 75%. Tons of MS shops use Flash. Tons of MS shops use EC2. Tons of MS shops use SQLLite. Tons of shops use nHibernate. Tons of MS shops use components from Telerik, Infragistics, Actipro, Component Source, ESRI.

Those are all things deployed with the application and not made by MS. Again, the characterization you made is just false.


    to me everything is replaceable
Well yes, you can always rebuild from scratch.

    There are tons of uses of Oracle
Microsoft has been collaborating with Oracle for the integration provided. It's the only third-party database with that privilege.

     Tons of MS shops use Flash
What's more interesting to me is that tons of MS shops are using Silverlight, even though it isn't the best solution by any stretch of imagination, having the extra handicap that its reach is at most half than the reach of Flash, even inside an intranet environment.

    Those are all things deployed with the 
    application and not made by MS
When you have to choose between software STACKS, you don't decide on the availability of a Hibernate clone, or on the availability of payed ASP.NET components that you wouldn't need if you weren't using ASP.NET in the first place.

You decide based on the 5 biggies - OS, database server, web server, application server, caching layer.

And nothing replaces SQL Server, Windows Server and IIS. And if .NET shops have been using Memcached, that's because no alternative was available from MS.


Microsoft has been collaborating with Oracle for the integration provided. It's the only third-party database with that privilege.

Doesn't explain the use of MySql, DB2, Teradata, etc... I don't know who MS works with, but I do know that there are shops that use a wide range of database solutions.

What's more interesting to me is that tons of MS shops are using Silverlight, even though it isn't the best solution by any stretch of imagination, having the extra handicap that its reach is at most half than the reach of Flash, even inside an intranet environment.

Kind of like HTML5 features right? :-)

You decide based on the 5 biggies - OS, database server, web server, application server, caching layer.

And nothing replaces SQL Server, Windows Server and IIS. And if .NET shops have been using Memcached, that's because no alternative was available from MS.

You make it sound like there are a million OSes the FOSS community chooses from. It's Linux. Done. Some random bloke uses BSD, but really it's Linux.

And half the time ppl in FOSS talk about databases its key/value dbs, and there are tons on Windows too. Plus they're often written from scratch. Apache works if you use ASP.NET MVC. Memcached, as you note, also works.

My point, virtually everything you mentioned can swapped out. And even the OS can be, with Mono. With that said the MS implementations tend to work well together. But I conceeded that in the very first line of my original post.


<i>Another reason for why hosting ASP.NET projects on Linux is awful is because ASP.NET was built for Windows.</i>

For some reason I'm reminded of Chilisoft ASP. I know it's not the same, but there was quite a market for catering to people who wanted to run ASP on non-Windows servers all those years ago. I guess it never went away.


A solution that costs money is not necessarily the "best" solution simply because it cost money.

cough perforce cough


A solution that costs money is not necessarily the "best" solution simply because it cost money.

I didn't say it was. I said they're WILLING to pay for the best solution. Not that they go and look for paid products only.


An example of this is the fact that something like ReSharper both exists and is awesome.


FOSS is adequate and .NET is the best solution, huh?

How do you reconcile that with the fact that .NET MVC is a blushingly obvious imitation of Ruby on Rails?


FOSS is adequate and .NET is the best solution, huh?

Sigh. No. But .NET shops seem more willing to pay for a solution if it is the best one for their task. But if a free solution is the best, then everyone is happy.


They're both implementations of the MVC pattern, but short of that there seem to be very few similarities between them. Admittedly, I've only built one project in RoR, but the framework itself required much less configuration and Ruby is a huge departure from the Java/C# coding style.

The MVC design pattern has been in use since 1979; it's nothing new. It's also worth noting that Java devs and Microsoft devs were building MVP (a modified version of MVC) based apps in the 90's.

I'm not trying to dis RoR, because it seems like a pretty solid framework and nobody can deny that the 37signals guys were the motivating force behind the current wave of MVC development. However, what they created was a better web implementation of an existing pattern and I honestly think Django and CakePHP are much more obvious imitations.

Finally, it's worth noting that the ASP.NET MVC framework is open source and has similar license to RoR.


ASP.NET MVC is a far closer imitation of Ruby on Rails than either CakePHP or even Groovy on Grails. Django isn't even an imitation, by any stretch of the imagination.

The similarities between ASP.NET MVC and Rails aren't just that they both use MVC, that's shallow. ASP.NET MVC is blushingly similar, nothing else comes even close, not even those who claim to try to imitate Rails.

I'm not saying ASP.NET MVC is bad, in fact it seems pretty good. But anyone using and liking it really ought to have a look at the original, from where Microsoft lifted it wholesale. Those guys must be doing something right.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: