Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Microsoft open sourcing C# and a lot of the rest of .Net

Discussion in 'General Discussion' started by MaxieQ, Apr 4, 2014.

Thread Status:
Not open for further replies.
  1. MaxieQ

    MaxieQ

    Joined:
    Nov 1, 2012
    Posts:
    295
  2. jc_lvngstn

    jc_lvngstn

    Joined:
    Jul 19, 2006
    Posts:
    1,508
    Hopefully it will mean great things. C# is an excellent language, one I enjoy using and digging into.
     
  3. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
  4. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    From the same article:

    That sounds interesting! :rolleyes:
     
  5. MaxieQ

    MaxieQ

    Joined:
    Nov 1, 2012
    Posts:
    295
    I can't actually think of any downsides. Well, it would be if this was the first step toward Microsoft abandoning .Net, but I don't see that happening.
     
  6. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    This is pretty awesome. I'm secretly hoping that when Unity said they were working on a new C# compiler, they actually meant that they knew about this one but couldn't share the info yet.
     
  7. cynic

    cynic

    Joined:
    May 21, 2013
    Posts:
    142
    Fantastic, this is great news.

    The great part about this is the licence Microsoft chose.
    This in turn could enable Unity to integrate the new open source .NET into Unity, rather than relying on Mono. They'd also be free to actually write their own and/or extend the compiler to cover all the platforms they need. Not only that, but thanks to the license, iOS static linking shouldn't be a problem anymore, either.

    This is really sweet, as though it sounds like the solution to all our current Unity Mono woes. Question is: is Unity up for this major effort of implementing this?
     
  8. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    Well now there's no more excuses about Xamarin licenses! Let do it now Unity!
    PS: The faster the quicker I'll upgrade my current licenses to Unity5! :rolleyes:
     
  9. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
    Microsoft is really trying to make inroads to the Android / iOS computing device competition that's been created. They have the money to buy Unity and transform Unity and Microsoft into advertising / software / hardware giants and it'd be tough to compete against. Is Apple going to reject using .Net natively when it's ported to osX? What about Linux and Android?
     
  10. minionnz

    minionnz

    Joined:
    Jan 29, 2013
    Posts:
    391
    Looks like they've open sourced the compiler, but not the core framework itself.. For that, we'll probably have to stick with Xamarin.

    I get why Xamarin want to charge for Mono though - they've gotta pay the bills somehow. Just wish there was some way to help the Mono upgrade along - if UT started a kickstarter to fund the licensing costs, I'm pretty sure a lot of people would help out :)
     
  11. UndeadButterKnife

    UndeadButterKnife

    Joined:
    Sep 29, 2013
    Posts:
    115
    That is not Microsoft's style. They prefer to ignore something for years, and then announce the next thing™, with maybe a passing remark about the old stuff.
     
  12. techmage

    techmage

    Joined:
    Oct 31, 2009
    Posts:
    2,133
    Ya unity really needs to get on this mono, .NET lagging behind issue. It's the one thing that really bothers me. It also bothers me that these threads don't get more feedback, just a few scant posts hinting at things that go in closed door meetings. Last impression that got left on me was, Mono will never be officially updated to the latest stuff of Xamarin, but will only get patched here and there where there are serious issues. Which I think is really a let down. UT simply cannot compete with Xamarin partnering with Microsoft on this, they need to join forces with that somehow, not be off on the side.

    You know Unity maintains the mono compilers for wii, and playstation, as well as blackberry (but who cares about that). I don't understand why Xamarin and Unity don't just straight up merge. Unity gets all Xamarin mono codebase, Xamarin gets all Unity mono codebase. Xamarin then sells Mono wrapped around native UI libraries (mono touch), and unity sells mono wrapped around the game engine. Everyone is kind of losing something by not joining forces, and unfortunately I think Unity is getting the shortest end of the stick in this current arrangement. Unity being an up to date .NET engine I think attracted a lot of interest and respect from a lot of developers. If Unity falls behind and turns into some weird lacking .NET flavor, it will not longer be seen as professional a solution as it could be.

    For C# as a whole, I think this is great and super smart on Microsofts part. Microsoft is failing to enter the tablet world and the phone world with great efficiency. Xbox has serious competition. Windows has serious competition. Office has competition. Microsoft has no cleanly winning front. Except C# is pretty much the best interpreted language, and Java is getting less respect as time goes on. There really is an opening for a new interpreted language to become front and center, and the standard basis of everything. If Microsoft plays everything right, and goes so far to get C# running great multi platform, on everything, desktop and mobile and console, they could end up with C# being the next major world standard of language leaving java in the dust. How microsoft will make money from this however, I do not know. I mean imagine a C# based android, an actually ideal C# framework for iOS, OSX, Unity, everything. And microsoft only gets money when people buys windows or an xbox? Seems to good to be true. Although Microsoft in the past has had a mentality to try to just wrangle as many developers. MS could do something like get C# out there and used on everything, and everyone programming in C#, then pull some card where Windows, Xbox and Windows Phone are the best C# performers on the market, hoping to make developers focus on those. It'd be kind of a dirty trick. Will be interesting to see how this goes. Or MS might really just be trying to win back reputation and respect of developers and may actually just give out C# to the world to be a symbol of something good...
     
    Last edited: Apr 4, 2014
  13. UndeadButterKnife

    UndeadButterKnife

    Joined:
    Sep 29, 2013
    Posts:
    115
    They are struggling to get app developers on Windows Store and Windows Phone. If they can open source C# and .NET, make them the ideal platforms for IOS and Android, they will get the those developers to port their apps to their platforms.

    This is the same tactic as the Windows 8. They wanted Windows Store to take off, and provide an ample app ecosystem for their mobile devices, that was the whole purpose of Metro interface. If they forced desktop developers to work with it, and if porting was just a click of a button away, then they would have lots and lots of apps on their mobile platforms. Win8 failed for obvious reasons, so they failed at creating a large ecosystem to jumpstart their platforms.

    Another way to monetize the developers using open source C#, would be their tools. Visual studio is the hands down, the best IDE you can get for .NET platforms. I would argue it is the best IDE overall across all platforms, but that is my opinion. If you can use those tools, and publish to large number of platforms without pain, that would inevitably benefit them in the long run.

    It is a win-win for Microsoft, with no downsides.
     
  14. goat

    goat

    Joined:
    Aug 24, 2009
    Posts:
    5,182
    Yes, MS's interest in Unity and Xamarin / Mono is to make inroads into the smart phone / tablet world. Don't forget they are no longer are charging for using Windows Phone OS on devices. They want a mobile installed HW base and they are trying to take from Android 1st and Apple 2nd. Apple 2nd because cost is not as near a big concern to Apple purchasers as with Android purchasers. Most of the world that makes less than $50K buy Android.
     
  15. cynic

    cynic

    Joined:
    May 21, 2013
    Posts:
    142
    Well first off, I agree with you.

    As for the above, they could certainly monetise where their strengths have always been and that is in the Enterprise market and their huge third party ecosystems built around them. Have a look at certain Azure services (and they're a good deal actually), which cater specifically for mobile developers and specifically for game developers. Expand those services, make them even more accessible through .NET on ALL platforms. Monetise on services, premium support, utilities and dev tools. Stop being stubborn, you've got Office on the Mac, now it's time to bring Visual Studio to the Mac. I'm sure people would buy it like hot cakes, especially combined with .NET becoming truly first hand multi-platform.

    And yes, I agree. If they manage not to screw things up, they could have something big here, which might actually become the next big thing and relevant in fields, where Java unfortunately never managed to establish itself.

    In a way, this means back to the roots for MS. Ironic, considering they started out writing Mac software. They just need to realise that they actually provide seem really good software and some really good services. Stop messing things up and restricting this huge potential by forcing everyone to use your Windows everywhere platforms. That's how you got into the position where you are now.

    Edit: And while I do realise that it is probably very difficult at the moment to talk about those things and possible Xamarin licensing issues, it would be really fantastic to hear what UT intends to do about this in the near future. I think we all agree that we can't maintain the current situation forever. Especially in the light of Unity 5, some Mono roadmap would be extremely welcome.
     
    Last edited: Apr 4, 2014
  16. dterbeest

    dterbeest

    Joined:
    Mar 23, 2012
    Posts:
    389
    Well, it's a well known fact that MS is abandoning the whole .Net framework (finally)

    I hope UT will implement a native C# compiler :)
     
  17. minionnz

    minionnz

    Joined:
    Jan 29, 2013
    Posts:
    391
    Not that well known - Have I missed something? What do you mean? Unless you mean .NET Native, in which case I'd argue that they are different tools for different problems.
     
  18. dkely

    dkely

    Joined:
    Mar 3, 2014
    Posts:
    22
    I am guessing this means we are going to see later framework versions, be it in mono or a transfer over to .net. But i assume that wont be making it in to Unity 5 and they wont release such a big change until a major version like 6... so it will still be a long time until we feel the impact of this? I am asking because i will soon be porting an architecture package over to the web and i was hoping to use Unity, but the libraries are not compatible. Waiting until late summer is feasible, but i am not sure i can convince management to hold of until 6 is released! ;)
     
  19. jashan

    jashan

    Joined:
    Mar 9, 2007
    Posts:
    3,307
    I hope that it means that UT will eventually drop Mono and use .NET instead, no longer having that dependency on Xamarin. In the end Mono has been only confusing for people anyways (just read another thread where people mistook MonoDevelop for Mono and the other way round).
     
  20. Nanity

    Nanity

    Joined:
    Jul 6, 2012
    Posts:
    148
    Why they didn't use .NET in the first place? .NET is Windows only, so no more Mac, Linux, Android, iOS, Wii, WiiU and PlayStation support.

    The Java/JavaScript confusion is more present imo.
     
    Last edited: Apr 5, 2014
  21. SmellyDogs

    SmellyDogs

    Joined:
    Jul 16, 2013
    Posts:
    387
    Can you provide something to back this up? I am entirely unaware of this well known fact.
     
  22. Jarhead

    Jarhead

    Joined:
    Jul 4, 2009
    Posts:
    38
    That's because this is categorically false. Microsoft is absolutely NOT abandoning the .net framework. I work very closely with Microsoft so I have some knowledge regarding what's going on there. However, for those interested, here is an article from last year...

    http://redmondmag.com/articles/2013/08/01/apology-accepted.aspx
     
  23. cynic

    cynic

    Joined:
    May 21, 2013
    Posts:
    142
    I can only imagine he meant the whole thing about Microsoft focusing on web technologies initially for their Metro apps, which gave everyone the jitters back then. Until they realised that no one apart from web developers actually wants to use web technology for writing apps.
     
  24. thxfoo

    thxfoo

    Joined:
    Apr 4, 2014
    Posts:
    515
    I normally only read this forums, but to that I have to write something. First, both are JIT'ed not interpreted.

    Do you work in application development or integration? I can tell you from working at the biggest high end developer and integrator in my country, that .NET is irrelevant except for some "scripts" around share point or office. There are some web shops and niche developers that use C#, because M$ does everything that people are trained in C#, so some companies use that stuff because there are people that know only that.

    But lets focus on real business, the 10-100 million dollar systems that drive a companies core business. I do not know a single example that uses .NET. And I have seen many companies over the years.

    Actually I know one such system on .NET, the story is famous and very funny if you read the details (London Stock Exchange). Google it. Microsoft invested millions to have that one big project that they could show to CTOs who have no idea. Accenture built it together with M$. In short it was not stable, slow as S*** (so slow traders switched to other exchanges that were geographically far away but still faster) and it crashed one day so that no stocks could be traded. In the end all responsible were fired and they bought a company that creates stock exchange software with c++ on linux for less. Not only is that new system stable and much faster, now they can sell that software and have a top team instead of some Accenture noobs that could not even say why the thing crashed. Everybody with an idea about software development said it will end like that at the moment this project was announced.

    If it is about real money and core business, you don't want a gui to click, you want completely automated builds and deployments by scripts to servers that are hardened and the OS customized or down-stripped. If you need it with 128 CPUs. And complete reproducibility and log traces (with earlier IIS versions you would not see on IIS that the server sent a "500 Server Error", so you call the Windows guy to ask what is wrong and he does not even know he is sending errors, and has no idea how to tell you why). You don't want a GUI on such a server and no "pass the hash: I take over your whole enterprise with one captured message" BS. M$ was never relevant in that league and will never be.

    Don't get me wrong, C# is a very nice language. But the ecosystem around Java is just in another league. It's like W8 phone vs Android. M$ has to finance much of C# ecosystem, with Java so many companies rely on it that many excellent OSS frameworks are created for everyone to use. With luck and M$ money some of them are ported to .NET.

    M$ invests much money in FUD and in education (multiple of my Professors had sabbaticals at M$ where they implemented compilers for .NET for languages nobody would ever use, for very good money. After they come back they will suddenly teach .NET). I assume that is even more extreme in the USA, so that probably means .NET is a little more relevant in medium business apps there. But globally it is a niche for anything serious. Yes there are some paid for articles that show how many companies use .NET, M$ paid FUD.

    That also means M$ cannot compete in the long run against Java. Look for research papers about VMs or JITs, everything is Java. Yes M$ is frontrunner with some things and some syntactic sugar, but I mean sustainability. There is that much more money in that market that it is very expensive for M$ to play as single player. With Java there are multiple compilers and multiple VMs, so as a business I know it survives. Java is platform independent. .NET is M$, it runs on other systems but check out the linux repos how many .NET applications are in there.

    M$ could save .NET by open sourcing everything, and then help port the missing bits to all other platforms such that they are first class citizens like windows is. This will never happen (the 2nd part). And even if, who would care? Only the people that already use .NET anyway?

    Like I said, I like C# as a language but did not use it since I had to for university. I write all my code future prove, that means it runs on *nix systems and on windows (or would run on windows with minimal effort), without depending on any one company (Java, C++, Python, QT, ...). This stuff will live forever. Are you sure your .NET stuff will be usable in 10-30 years (Silverlight, Windows Forms or Windows Presentation Foundation (WPF) anyone?)?

    This is not about making money, it is about loosing less money. More and more will be the Job of Xamarin and the new community. In the end M$ can say we did not kill .NET, we freed it and the community is doing its best.
     
    Last edited: Apr 4, 2014
  25. Dantus

    Dantus

    Joined:
    Oct 21, 2009
    Posts:
    5,667
    This looks like a fantastic chance for Unity! It will be interesting to see which path they are going to take.
     
  26. Phorden

    Phorden

    Joined:
    Aug 1, 2013
    Posts:
    6
    I agree with most things you said, which saddens me a bit. I do not care for Microsoft as a company, but I really like some of the technologies they have developed such as Visual Studios and C#. A lot of programmers say that C# and Java are basically the same language, which to an extent I can agree, but where I vary from this statement is that I believe they are very similar, but C# does most things better, and has a lot of nice language features that Java does not support. The world programs in Java, but I wish it were C# just because it is a nicer language to work with. Just my two cents.
     
  27. jmatthews

    jmatthews

    Joined:
    Jul 27, 2011
    Posts:
    199
    guys Mono is the VM. From the beginning the Mono team implemented their own VM and Compiler based off the spec.

    If you have access to the presentation(I'm not sure if it's on the web yet). They show Miguel building an App in Mono using the new integrated compiler. So now they have access to the latest and greatest compiler. That means more insight and accuracy of their VM versus the Microsoft VM. But what Unity is paying for is Mono, essentially the VM. For this circumstance to be useful to Unity they would have to decide to build their own VM that competes with Mono.

    You have to cross your fingers that Unity and Microsofts relationship is stout enough that MS will lean on Xamarin to share the wealth with Unity.

    tldr: Mono is going to get better and be more stable and consistent with native Microsoft implementations. Xamarin has a better product that Unity has been unable or unwilling to license.
     
  28. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    Yeah, this will help some problems in Unity, since they could rip out the crappy Xamarin compiler and replace it with the better Microsoft compiler, and it will fix some problems like the extra allocations from things like foreach and Linq. However, it won't fix the main problems, such as the fact that we're stuck with a decade-old failed beta version of Mono's garbage collector, which is the only reason we care about allocations in the first place.
     
  29. Woodlauncher

    Woodlauncher

    Joined:
    Nov 23, 2012
    Posts:
    173
    Most people here seems to think they open sourced the VM. They did not.

    No one reads more than the headline.
     
  30. cynic

    cynic

    Joined:
    May 21, 2013
    Posts:
    142
    Exactly this is the problem, well perhaps apart from being stuck with old libraries and language features, which makes using third party libs somehow more difficult.

    People are often totally freaking out because of allocations, whereas allocations per se are not really that bad at all. Sure, there's overhead in object creation and at some point it is always wise to reuse and pool, that's just good design. But there is absolutely no point in going bonkers being afraid of a few occasional allocations here and there. And that's the classic problem of GCs. Once they kick in and start scanning your stack up and down everything else comes to a halt. This is the problem in itself, not those few allocations, this behaviour is very different from calling malloc() and free(). Naturally we're suffering even more with such ancient GC technology, but the "caring" about allocations will never really go away in a managed environment.
     
  31. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    Yeah, with a decent GC you can mostly ignore it, or at least ignore it much more than Unity programmers do. A generational GC, which it was MS has always had and which Mono has had since right after they sold the crappy one to Unity, will scan recently created objects more often, and older ones much less often. So all the little allocations in Update loops will be found and GC'd quickly, and the GC will be much faster than it is currently because it only has to scan a small list of objects instead of the entire memory every time like Unity's does now.
     
  32. techmage

    techmage

    Joined:
    Oct 31, 2009
    Posts:
    2,133
    You know this is all true.

    It actually makes me feel like if I really want to get serious about programming I should make an effort to get out of C# as a main focus.
     
  33. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    Actually I have to completely disagree with thxfoo. I've worked at several big tech corporations in my country, and my country is the United States, and many of them used Windows servers. Windows servers currently make up 33% of the market, which is hardly "irrelevant". And .NET is not just for servers; it's used for desktop and mobile as well, and Windows is not going anywhere in the desktop market. Also, I have a hard time taking business advice from anyone who refers to them as "M$".
     
    Last edited: Apr 4, 2014
  34. cynic

    cynic

    Joined:
    May 21, 2013
    Posts:
    142
    Mh, yea. But what kind of applications did those Windows boxes run? That's what his point was all about and I tend to agree.
     
  35. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    At Microsoft itself, all of Azure, Xbox Live, Office 365, pretty much everything at MS. Some of the most heavily used servers in the world.
    Ebay is all Windows servers on the backend, and they get a whole lot of traffic as well.
     
  36. jmatthews

    jmatthews

    Joined:
    Jul 27, 2011
    Posts:
    199
    I almost commented on this as well, but I was 50/50 it was just troll bait.
     
  37. Jarhead

    Jarhead

    Joined:
    Jul 4, 2009
    Posts:
    38
    Just so we are all clear...what is being open sourced is the Roslyn compiler NOT the entire .NET framework. This is very different from Mono, which is an open source framework. So I'm not sure how this changes much for Unity...
     
  38. makeshiftwings

    makeshiftwings

    Joined:
    May 28, 2011
    Posts:
    3,350
    Like I mentioned earlier, Unity uses the Mono compiler as well, which is very unoptimized especially when it comes to garbage creation, so making the switch would definitely help a bit. Currently you can get around it by compiling everything in Visual Studio and only using DLL's in Unity so that you mostly avoid its compiler, but that is a pain.
     
  39. Smooth-P

    Smooth-P

    Joined:
    Sep 15, 2012
    Posts:
    214
    Scala says "Hi!".

    But, yeah, the language features of non-ancient versions of C# / .Net kick the crap out of Java (note: I know Java 8 improves things, but I have been out of Java-land for a while and don't know by how much). Non-reified generics were a huge mistake, despite the fact that they make things easier for the "hey let's just write 10 billion squared tests instead of having a proper type system and letting the compiler do all that work and more" dynamic crowd. The CLR also supports custom value types, which are obviously huge for Unity, but probably only really matter to people doing extreme things like realtime work on runtimes with horrendously bad GCs.
     
    Last edited: Apr 5, 2014
  40. ArmsFrost

    ArmsFrost

    Joined:
    Jul 26, 2012
    Posts:
    35

    woah woah woah...

    I feel you blemished your otherwise fine post with a bit too much vitriol...

    Ok fundamentally I agree that Java sands on its own where as C# is propped up by MS (M$ really! isn't that a bit past its sell by date by now), I was taught Java at University, I program in Java and I like Java as a language and the eco-system is much better, most tools (logging, ORMs) are developed for java first then get ported to C#

    We use Java as nearly all our servers are Linux, But we also use C# a lot and actually we have a number of websites, APIs and compute services running in mono on linux. (C# MVC3) Apache or Nginx work surprisingly well.

    Do a UK Job search on any major job site (e.g. monster.co.uk), one for Java and one for C# the numbers are normally about even (in London) or stacked towards C# in the south west, while both attract similar salaries

    So while I don't necessarily disagree with the thrust of your point, I think you went too far in downplaying C#'s relevance and market penetration to go unchallenged.
     
  41. im

    im

    Joined:
    Jan 17, 2013
    Posts:
    1,408
    Microsoft opened sourced the c# source code to their apis long ago

    so i guess this now adds the c/c++ part and the compilers / jit / ect.

    that's a great thing honestly...

    hopefully Microsoft will buy Xararim and it will work out for the best for Unity

    hey perhaps Microsoft will buy Unity

    since XNA is dead Unity would be great replacement...
     
  42. Mr.T

    Mr.T

    Joined:
    Jan 1, 2011
    Posts:
    546
    While I do not share the Microsoft loathing, that bit of history about the LSE was interesting(My first time reading about it). I like C#, but that was comical.

    Always fun to watch big serious corporations bumbling like 2 year olds. Doesn't happen often, but its funny when it does

    Thanks for that
     
  43. cynic

    cynic

    Joined:
    May 21, 2013
    Posts:
    142
    Oh Lord, please, no!
     
  44. HavocX

    HavocX

    Joined:
    Jan 5, 2014
    Posts:
    40
    Situation is about the same in Sweden. Java is probably number one, but C# is not far behind.
     
  45. minionnz

    minionnz

    Joined:
    Jan 29, 2013
    Posts:
    391
    Yes I do, and I work for a well known large international company and I completely disagree. The decision to use C#/.NET was a business decision, not based on what employees already knew (you hire people with skills to suit the project, not the other way around).

    I'm not saying that C# is better/more popular than Java, but the idea that C# is for niche/hobby projects is just plain wrong. I've seen more .NET based enterprise applications than Java in my career, and have worked with a company that was converting from Java to C# - does that mean that Java is obsolete? Not at all - I wouldn't make such statements based on my obviously biased experience
     
  46. Cogent

    Cogent

    Joined:
    May 14, 2013
    Posts:
    356
    Agreed! Not Microsoft!

    Please nooooo....
     
  47. tatoforever

    tatoforever

    Joined:
    Apr 16, 2009
    Posts:
    4,364
    When I was learning Ada at school my professor told me that Java was the future but I went the C++/.net route and I don't regret it one single bit. :rolleyes:
     
  48. Dantus

    Dantus

    Joined:
    Oct 21, 2009
    Posts:
    5,667
    That includes a few minor matters such as the garbage collector...
     
  49. thxfoo

    thxfoo

    Joined:
    Apr 4, 2014
    Posts:
    515
    I did not want to make you sad. .NET will stay many years because many small business apps use it. But you should not be a one trick pony, the more stuff you know the more future prove your skills are. And with each language picking up a new one gets even easier.

    I talk about big core business apps (10M dollar or more). You know that MS pays for some of the biggest MS server deployments? E.g. all parked domains at godaddy are MS (so those where the server has 0 work to do, not the real ones).

    Protected from overload by a linux cloud service.

    I talk about big core business apps (10M dollar or more). You know what those companies do the ads are for?

    You do your own developments in C#. So you develop your core business app in-house? Not bad, because many companies buy their core business apps and just develop small stuff around it.

    -------------------------------

    I did not want to offend anyone.

    I talk about big core business apps (10M dollar or more). I meant .NET is a niche in that world. For other stuff the technology is less important, more the price and availability of work force.

    With stuff that just has to run always and with huge loads, MS seems the wrong tool for me (and the large companies I have seen). See London Stock Exchange, where MS wanted to prove that MS servers are good for high availability high throughput stuff (the f#cking CEO got fired, that just tells everything). And they used insane amounts of standby servers in case something fails, but still failed.

    Of course this has also to do with the people that implemented it. I'm rather sure there would be people on this planet that could even create a stock exchange with .NET, but those people are smart, they use the best tool for the job, and for such jobs it is not MS servers.

    -------------------------------

    It's easy, you have to use the best tool for each job. That means you should know multiple tools and multiple frameworks.

    My company is no java fan shop. We do .NET, java, python, perl, C/C++ or program hardware, we just do everything. If you have a quality work force, you can throw any technology at them. But the .NET projects are very small compared to the big stuff that is done for big companies or government.

    You could choose .NET if you have to interact with many MS servers and technologies. But at big companies and government you have literally hundreds of different systems from different decades. From mainframes to unix to linux to whatever in cobol and even more exotic stuff. In such heterogenous environments I would choose Java over .NET anyday, because the huge OSS ecosystem around it means I can just get the job done much quicker, because implementations of many exotic protocols are just available at zero cost. (And because MS likes to change all standards just a little so that it does not work out of the box with other implementations.)
     
    Last edited: Apr 5, 2014
  50. thxfoo

    thxfoo

    Joined:
    Apr 4, 2014
    Posts:
    515
    Active Sites by Netcraft Survey http://news.netcraft.com/archives/2014/04/02/april-2014-web-server-survey.html
    Apache 52.44%
    nginx 14.22%
    Microsoft 11.08%

    And as said, some of the biggest deployments that make that nice number for MS have a very good deal with MS (free licenses, free developers, free support and money).

    Note: Netcraft are very good friends of MS, they include the parked domains in their normal ranking (you can park 1M domains on one server and they count as 1M MS servers). If they would rank by IP instead of domain the picture would be different. Only 6% of MS server sites are counted as active by Netcraft.
     
    Last edited: Apr 5, 2014
Thread Status:
Not open for further replies.