
The dying platform: .Net - caitriona
http://roundcrisis.com/2013/05/15/the-dying-platform-net/
======
MichaelAza
.NET, like practically all tolls by Microsoft, is good for one thing - Large
scale enterprise development for Windows. It plays well with Office, Access,
Sharepoint, Active Directory, IIS etc. and it's the best around at what it's
doing. You can also do webdev or solve highly concurrent problems with .NET
and it's great at that as well (I'm very fond of the Nancy framework and C#'s
async/await are a godsend) but it's not inherently better at these than any
other language. So no, .NET isn't dying nor do I feel it has lost momentum.
It's not really doing anything crazy or new (ahem go ahem) but it's still as
good as ever in what it was meant to do - general purpose programming language
for Windows.

~~~
mhd
Don't forget the desktop sector, which isn't entirely dead yet. Pretty much
everything is better than MFC, and with Delphi going nowhere (for obvious
reasons), a lot of people writing relatively small custom software apps
transitioned to .NET, either with C# or VB. Don't think that will change that
much with WinRT. (JavaScript seems mostly an angle to get some web developers
to do small Metro apps)

~~~
mamp
I think MS have lost a lot of support on the desktop after deprecating Windows
Forms (which is all a lot of enterprise apps need), followed by
WPF/Silverlight's poor penetration leaving no hardware accelerated graphics
for non-WPF (bit blitting excluded), and then the confusing messages around
WinRT which at one point looked like they were deprecating WPF as well.

While the front end flashy stuff isn't there compared in .net compared to the
better Javascript libraries (I love d3!) MS have really progressed the non-
sexy .net improvements e.g. C# evolution, F#, WebAPI.

------
DanielBMarkham
Microsoft has too many developers and not enough innovation. They encourage a
design attitude that everything has to operate like the flight deck of a 747.
Their culture has been incestuous so long that any change is terribly
unlikely.

There are some really, really sharp guys at Microsoft. Not only does the
community deserve better products from such a great company, the developers in
many cases have an very unpleasant work experience.

Google is not too far behind. I think they're pushing a lot of the things they
are simply to keep momentum building. In another 20 years, unless they start
building time machines, it'll catch up to them, too.

Apple is a strange case. They passed the "I wouldn't work for them for a
million bucks" point many years ago, but they're just better at slapping a
better marketing image on it than the rest of them.

Having said all of that, I like .NET, and I think combining it with Mono makes
probably the most full-featured free platform for development anywhere in the
world. The effective targeting of the business market by .NET may be waning,
but the platform is nowhere near dying off.

~~~
martijn_himself
>They encourage a design attitude that everything has to operate like the
flight deck of a 747

I agree. If you have ever done any development using SharePoint or Dynamics
CRM API's and SDK's you will know how much of an overengineered mess these
applications are. The unnecessary complexity of these applications does
however create demand for thousands of developers to untangle the mess.

~~~
DanielBMarkham
I feel very sorry for my friends who are actively writing projects in the
latest .NET Whiz-Bangedness.

They're all so optimistic, with regurgitated Microsoft marketing-speak about
how this bell or whistle is going to magically solve this or that problem, and
how easy everything is to do now. They've been eagerly awaiting a new customer
to try this stuff out on.

Then, sometimes just within days, I start hearing the pain. It's always the
same -- the damned development ecosystem is a freaking nightmare and some
little gotcha somewhere is killing hours (or days) of time.

I used to teach .NET. Everything is awesome as long as you go down 7 or 8 pre-
defined paths. But nothing ever works like that in the real world. There's
nothing like watching a new developer drag a control onto a form, take a look
a the properties page with it's 40-thousand item madness, and be utterly and
completely at sea. Lost. Bewildered and rendered ineffectual. Their stuff is
full of experiences like that.

~~~
martijn_himself
Absolutely spot on, and I have exactly the same experience.

What completely baffled me when I did quite a bit of SharePoint development of
late is, that you are essentially doing web application development, except
_everything you know_ about web development is somehow not valid anymore
because it has been buried under layers and layers of abstraction.

So you have to go on at least one SharePoint development course, to re-learn
web development as you know it.

~~~
DanielBMarkham
Several years back I had a friend with a small business who wanted to do some
SharePoint stuff, so I picked up 3 or 4 books on it and read them all.

Oh. My. God. That tool will solve world hunger, land a fighter on a carrier
deck at night in a storm, and compute the answer to life, the universe, and
everything. It does frickin' _everything_.

So it also does nothing. You end up having to digest a huge learning curve,
creating all these specialty libraries to handle workflows, understanding that
you need a view for this, a link for that. It's like having to learn Klingon
just to get a cup of water.

Whenever I hear SharePoint any more, I just smile. It's a great tool, and it
can do an incredible ton of stuff. I just know the pain that's involved with
it, and unless I have no choice I want no part in it -- except for maybe using
it as a document repository, and even then Dropbox does all I want with zero
learning curve.

Microsoft is constantly distracting me with the coolness of their tools
instead of enabling me to quickly solve somebody else's problem. The developer
has become the market for them -- and that's really bad for both developers
and end users.

~~~
martijn_himself
Thank you very much, those comments made my day :). I very much share the
sentiment. I am developing in SharePoint and I am sometimes impressed at what
it can do; however lately I have been thinking of jumping ship and start
developing small business applications (in Golang) that solve user problems
quickly and iteratively.

------
rubinelli
Java isn't looking too good, either, at least in the desktop. You know your
platform has jumped the shark when it comes bundled with a toolbar.

The question is, where to next? I've been watching Go for a while, but it
looks like a tool from Googlers, for Googlers. Pulling all my dependencies
from HEAD? No, thank you. Ironically, Javascript looks very promising right
now, compared with the alternatives.

~~~
cypher543
I find it strange that people are hung up on this remote dependency "issue."
It's a convenience for small projects and quick samples. There is absolutely
nothing stopping you from checking out a Go package locally and importing it
just like any other dependency in any other language.

~~~
exch
I'd have to agree here. There is no difference between Go's way of managing
external dependencies, compared to any other language/platform where you use
external packages. Whether they are manually downloaded and built, or pulled
from some kind of source-control repo. The `go get ...` approach is just a
convenience tool you can use /IF/ you want to.

I get the impression that much of the complaints stem from not really
understanding what is actually happening. It's a shame really. People taking a
first look at Go, and running into these kind of rants will get an entirely
incorrect impression of the Go tool chain.

~~~
sanderjd
The real shame is that so many people are willing to outsource their opinion-
building to random ranters on random message boards.

~~~
FatGuyInACoat
Which is pretty much why people think .Net is dying in the first place.

------
MatthewPhillips
.NET has a long life ahead of itself in the enterprise, where companies on
"the Microsoft stack" typically won't even use 3rd party libraries where there
is a Microsoft sanctioned alternative. Until Microsoft comes out with a
replacement for things like Windows services and web application development,
.NET will be around.

I don't see there being an alternative even on the horizon. Presumably they
could create a Node.js type of platform backed by Chakra but there aren't any
signs that they are even working on such a thing.

(Also, throwing out .NET would mean throwing out F# which gives them a lot of
cred in certain circles).

~~~
eduardordm
Keep in mind that .NET is relatively new to the enterprise and lots of those
companies didn't even get out of cobol yet.

Opinion:

Timing is a important factor here. My bet is those enterprise companies
skipped the .NET/JavaEE era and will jump right into what is coming next.

I know a couple of banks that are heavy Adabas/Natural users for decades. When
.NET/JavaEE boomed they opted to just wait. Now, no single framework can
really solve most of your problems. In fact, the problems are so heterogeneous
that using frameworks at all is becoming completely irrelevant.

That said, .NET, JavaEE, Rails, Django, they are all dead to a certain point.
What we will see is the rise of the non-frameworks. People will start doing
their own stuff on Go (or anything else) and maybe will start open sourcing
parts of it. You will have a lot of mini libraries that you will put together
to fit your needs.

~~~
MatthewPhillips
I disagree, many if not most cities in the East coast have been dominated by
.NET since at least .NET 2.0. There are cities where it is hard to find a
programming job in anything else. And the holdouts are mostly old Windows-
centric tools like Delphi and VB6.

I also disagree with your outlook for the future. Enterprise loves frameworks
only slightly less than they love expensive proprietary software packages
where support is built-in. I'd love to see non-Microsoft tech like Go move
into the enterprise in a serious way but I don't see it happening. For most of
these companies their developers have no experience in anything but the
Microsoft stack and a good portion of them either can't or won't learn
something else. So you're immediately talking about losing a large chunk of
your staff. And good luck finding Go developers.

I can't see Microsoft abandoning this segment so it doesn't make sense to even
talk about alternatives.

------
maresca
I've been programming .NET since 1.1 and love the platform. It just works.
But, I pick my technologies carefully. I called silverlight not working out.
I've been staying away from WCF/WPF. No one writes in the news when something
goes right, only wrong. This article is more rabble rousing than anything. You
can focus on the things that are going wrong. If you are putting out new
technologies, some are going to fail. That's the nature of the game.

~~~
chiph
I agree - Silverlight was obviously a tactical response to the threat of
Flash. When Flash went into (steep) decline, there was no reason to keep
Silverlight around. Both of us called this one correctly.

WCF, on the other hand, is doing really well and is a decent approach to a
framework around enterprise communications. But I admit that more often than
not, I'm hand-coding my proxies to avoid code-bloat from generated DTOs (I'd
rather use a reference to a shared DLL so the compiler alerts me to breaking
changes)

~~~
maresca
There's something about WCF that rubs me the wrong way. I like coding Web
Services. WCF just feels like bloat on top of web services. And traditional
web services can be used cross-platform. I'm not sure WCF can. Maybe I'm just
sticking with not fixing something that's not broken.

~~~
ChrisPebble
I think the sweet spot for WCF (for us at least) is for our internal APIs. The
ability to easily expose the same service over a binary TCP stream or over
HTTP makes a fantastic tool when you're trying to get a lot of different
systems to talk to each other.

For external or HTTP-only APIs I completely agree that it's often overkill.
Frameworks like servicestack are much easier to work with in those cases.

------
ohwp
According to a lot of job sites .NET isn't dying at all...

Maybe the author has the feeling it is dying because other platforms are in
the news more often?

~~~
neogodless
Yeah - I can tell you as a C# developer, I get contacted on Linked in several
times a week. I'm not looking at all. And if they look at my history, they can
see I've been at my current job just 6 weeks. That doesn't slow them down.

As mentioned above, enterprise solutions are huge. There's a lot of money
there, and they rely on Microsoft solutions. Sharepoint 2010 has hooks into
Dynamics CRM (accounting and CRM), data workflow and reporting (SSIS/SSRS),
etc. I've only seen glimpses of 2013, and I think it'll be slow to catch on
(as is typical in the corporate cycle) but it will likely be huge in the
future.

------
monstrado
A few weeks back I spent a weekend playing around with .NET and Visual Studio,
I was very surprised by how pleasant the language (C#) and the IDE was to use.
Also, I went into it with virtually no C# experience (only Java), and I pretty
much picked it up immediately, I'm sure there are many differences but I was
able to figure out the syntax immediately.

I found the IDE really nice, and the debugging tools really powerful...Also
desktop app creation felt super easy. I probably won't use C# for prime time
since I develop almost exclusively for Linux, but it's always nice to peek
over the fence :)

~~~
sergiotapia
The dev tools for the .NET ecosystem are bar none. It's one of the only things
I miss about working with C# when I switched over to Ruby. That and Linq. :P

Give me a visual debugger over some terminal crap any day.

In this regard RubyMine is a very good solution to debugging Rails
applications and Ruby code.

~~~
new299
It's kind of been that way since VisualStudio 6 I think, the MS debugger in
VS6 was quite neat. The visual debugging tools were always pretty good.

Hmm, this has got me wondering if there's anything like this available for
vim, this looks like it might be neat:

<http://vim.sourceforge.net/scripts/script.php?script_id=663>

But no C/C++ support. Could be useful for Ruby though.

------
cl8ton
From what perspective are you coming from that you think .NET is dying
(student, education, corporate, open source)?

MS has never been a technology leader as they tend to let others make the
early mistakes then charge in, ask Netware, OS2/IBM, Sony, Netscape.

Early bird gets the worm but the second mouse gets the cheese!

~~~
potatolicious
All of the above?

A little background: some of my earliest bits of programming were on VB5, then
VB6, and then .NET 1.0 when that first showed up. I spent most of my early
years on MS platforms, and for the most part I liked them.

I picked up a Surface RT to hack on last year, after a long absence from .NET.
The state of .NET shocked me.

For one thing, the subset of .NET that's available on WinRT vs. "real" Win8
vs. WinPhone is really poorly defined. The documentation is incredibly
fragmented, and it was _very_ frustrating the even some relatively basic
utility classes weren't available on some platforms. It was a struggle trying
to cobble even a basic WinRT app together because of how much trial and error
there is ("does this class exist? oh shit, no, okay... what's the equivalent
class that's named slightly differently in a slightly different namespace...")

There's also a tremendous lack of open source. I develop iOS apps for a living
nowadays, and open source is a huge part of that community. .NET has a _huge_
lack of it - everything substantial is proprietary and commercial. Where I can
Google for a bit and slap together some libs in an hour on iOS, on .NET it's
downloading the trial libs of some commercial libraries, trying them out,
adding the totals, and realizing that the same feature set will cost you $10K
a year for these licenses. The alternative on Android/iOS is _free_.

A more general complaint is MS's schizophrenic support of .NET. When .NET 1.0
first came about it was touted as Microsoft's long-term direction. _This_ was
the new platform, and we can count on it being supported as a first-class
citizen on all MS platforms for a long-long time. That didn't pan out exactly.
Microsoft has a _really_ bad habit of making 90-degree turns every so often
that destroys any developer trust. You can't rely on anything on a MS platform
because in 3 month's time they could pull the rug out from under you with
little to no warning.

~~~
cl8ton
Some of the things MS pulled the plug on needed it. I can’t vouch for WinRT
development but the .NET 4.5 is rock solid and predictable for WinPhone &
Win7/8 from my desk. Have you used NuGet yet with over 1100 packages?

Microsoft is a public company that makes software and sells it for a profit,
what is wrong with this business model?

All the free open source software you use to make a product, do you then give
your product away?

~~~
potatolicious
> _"Some of the things MS pulled the plug on needed it."_

Sure, the complaint isn't about pulling the plug on things in general, but
rather how fragmented and difficult the documentation has become.

If class Foo has been deprecated in favor of class Bar in a different
namespace, say so on Foo's page. If class Foo is a basic utility class, it
would _greatly_ help if the documentation could point to Bar, if Bar was the
supported equivalent in WinRT.

Things like that. Considering how sparse the community support can be (I find
.NET discussion on StackOverflow to be substantially less voluminous than,
say, iOS/Cocoa dev), the reliance on first-party docs is not really optional.

> _"Have you used NuGet yet with over 1100 packages?"_

Yes.

> _"Microsoft is a public company that makes software and sells it for a
> profit, what is wrong with this business model?"_

You seem to be under the impression I'm railing against Microsoft. I honestly
couldn't care less about Microsoft's business model. I'm strictly speaking
from the perspective of an app developer - a demographic Microsoft seems to be
keen to court. My experiences so far seems to indicate 3 choices:

\- Develop on Android/iOS, gain access to enormous volume of free (as in beer)
libraries that will speed my work along and make my life easier.

\- Develop on WinRT (and WinPhone? my exposure on that side is limited) and
home-brew a _lot_ of core utility functionality because it doesn't exist in
free (as in beer) form.

\- Develop on WinRT and pay astronomical licensing costs for core utility
functionality, which is an easier pill to swallow if the profitability of the
Windows Store is more reliable.

This isn't a philosophical argument about profiting off of code, about the
freedom of knowledge, or anything like that. This is a plainly pragmatic
argument about developing for Microsoft's latest-and-greatest platform, and
how there are very large consequences that make their platform _much_ less
attractive to developers as a consequence of both their business model as well
as their approach to support and documentation.

~~~
cl8ton
I agree with you on the lack of iOS & Android support in .NET so far (i'm
using Xamarin to bridge this now).

But I am personally confident MS will attack this market with full steam and
deliver native tools to their developers sooner rather than later.

------
gregd
One of the things that I've often thought MS could do to attract more
developers to this platform, is to release the brilliant piece of software
that is Visual Studio, for FREE. Not just the "Express" edition...the full
blown "Ultimate" edition.

They should also buy Red Gate and Jet Brains and bake their products into VS
and SSMS themselves, while happily releasing updates and enhancements for
FREE.

Bah...what do I know?

~~~
patrickaljord
The problem is Microsoft is into the business of selling software licenses to
make their billions. They don't have a billion dollar hardware business like
Apple or a billion dollar ad business like Google that allows them to license
their software for free/cheap. So if MS start licensing their software for
free, they would stop making money (they do have the xbox and a few services
but they're not enoough).

~~~
virmundi
I think the middle ground would be to give away Professional. This would cost
them 1.5k or so in license, but would get a lot of people in the door. The
fact that I can't easily unit test in an integrated way with Express makes me
not use .NET even though C#/F# are better languages than Java.

------
saosebastiao
> Inherent hatred for Microsoft and anything it does, even if it is good. I
> think is pretty sad since I see this attitude from people that should be
> objective from a technical standpoint, licensing can’t always be an issue.

Actually, yes it can. I think Microsoft (especially Microsoft Research) is
amazing and have been one of the most innovative companies of the last 30
years. But I'm not gonna pay them for the right to use a language. I'm also
not going to lock myself into a system which requires me to pay them for other
things as well (Windows Server, SQLServer, etc). I know there is Mono, but it
is not the same. Its a shame, cause F# is one of the coolest languages out
there right now.

~~~
npsimons
Seconded. You know what? Licensing wasn't a technical issue, until companies
like Microsoft made it one. It's kind of hard to guarantee five nines when the
EULA says they can shut you down at any time to make sure you are in
compliance. Copyleft and GPL wouldn't even need to exist except for assholes
who want to control what others do.

------
gbog
> "Inherent hatred for Microsoft and anything it does, even if it is good. I
> think is pretty sad since I see this attitude from people that should be
> objective from a technical standpoint"

I have the inverse feeling: recently, just because at MS some people got a
catch on a new fashionistas UI, and gave it a sexy name (flat UI), I have read
a lot of praise for this company, as if it was something someone could wish
that their tablet or mobile OS would get back on the front of the scene.

This just shows how shallow are the memories of us, developpers. So let's
restate it vigorously:

MicroSoft is deservedly hated for extremely grave sins against the industry
commited not so long ago.

They regularly force OS upgrades nobody wants even when the failure is patent,
and their software is so unmanageable that most PC users have become like
beaten dogs begging for the minimal working setup, admiring those who know how
to ctrl-tab to another window, fearful of any changes in their software
installation, inculated from viruses by rootkits that even more harmful than
what they are supposed to protect you against, and the only action they dare
take beside reading email is to reboot, and take a coffee break.

They, MicroSoft, also imposed a central crappy software (IE 6) on their
monopolistic OS, and used this position to try to smother the big waves we are
all surfing on: the Internet itself. They purposedly tried to strangulate the
distributed network, because it was not going to bow and contribute to the
church tax.

No, Internet's fate was not granted, it could have become a TV-like network of
a few content providers like AOL feeding users through the nose. Actually, it
is still under attack, also from other threats, many of them having grown on
its roots.

MicroSoft is a mammoth, she will endure a very long death, but let's have the
minimal pity, and let's not make this agony longer by unduly praising their
latest relative PR success.

End of the rant.

~~~
yuhong
Note that IE6 was not crappy when released. It was it's stagnation that made
it became crappy over time.

------
zwieback
.Net is one of our workhorses in desktop app development. Maybe it's not the
latest trend but there are still a lot of utility apps written in .Net. If
your corporate PCs run Windows, as almost all still are, then .Net is your
most convenient choice.

~~~
chris_wot
Not if you factor in Windows and SQL Server licensing costs. Most people are
using ASP.NET (one of the many incarnations, at least).

.NET on individual workstations is... irrelevant. Largely.

~~~
zwieback
Not sure what you mean. Ignoring the server side for a moment, are people not
using .Net or do you just not like it? And once you've paid for Visual Studio,
what other costs are there, assuming your workstation already runs Windows?

~~~
chris_wot
You present a false dichotomy. I neither said that people aren't using .NET or
that I dislike it. I'm saying that having .NET installed on the desktop
doesn't sell copies of their latest operating system, and for most corporates
they are deploying web apps via ASP.NET.

I see no reason why I should be ignoring the server marketplace, because IMHO
frankly that's where the corporate dollar is.

~~~
zwieback
Got it, thanks for clarifying. My original point was just that .Net isn't
dying as the article said. It may not be making a lot more dollars for MS,
though, agree with that.

------
moskie
Perhaps I'm thinking too narrowly, but I don't see how these points apply to
ASP.Net (whether it's MVC or web forms). I've always thought of ASP.Net as the
most successful section of the .net framework, with native application
capabilities running a good amount behind.

And all the technologies/hardware he mentions here are agnostic to the
web/network portion of a system.

------
forgotAgain
I would agree with the headline but I find the reasons given to be off target.

The web frameworks have become too complex and bloated. Every major release of
Visual Studio seems to bring another layer or way of doing things as well as
denser configuration files. A decade or so into it there is just too much
there there.

I've used Mono but I'm starting to get concerned that Xamarin is concentrating
more and more on mobile tools and less and less on the base .Net libraries. As
an example I would point to version 3 still being in beta and the
documentation on mono-project falling behind.

------
electrichead
I wouldn't say it is dying, but I would agree that there are many better
alternatives out there for any type of project you would be considering. I
think the old allure was that you could be virtually sure that there would be
a pool of talented developers to draw upon, but now there are talented
developers on many different platforms that offer efficiencies by working well
modularly: there is no need for a single behemoth like .net

------
tcbawo
I am disappointed in the near-abandonment of IronPython and IronRuby.

~~~
chris_wot
But hey, you can use a tablet now that Microsoft's management have switched
focus... to a market they have not much share in, almost no mindshare, little
developer incentive to work on, that only contributes to a fraction of their
revenue and with tools and an operating system that shoe-horns the much larger
workstation market into a tablet interface that is neither intuitive or
pleasant to work with.

Hats off to Microsoft, clearly someone in management knows more than their own
marketplace. Sometimes to be a market leader you must ignore the needs and
wants of the market, after all leaders need to make the market go where you
want it, right?

------
Irishsteve
I guess all that MS software such as office and sharepoint which many a
business has deeply integrated into their day to day life, and also extended
by using .Net to automate or improve it for their particular needs will be
really disappointed that .Net is dying.

I'd imagine they will have a clean and easy migration planned in the next 3
years.

------
skriticos2
Enterprise standardized on Java and won't change anytime soon (i.e. in the
next century or so). Seriously, COBOL is still well and alive at many places.
Consumer market is on Objective-C (iOS) or Java (Android). Games are written
(mostly) in C++ (and this will stay this way to enable cross-console
portability). OSS uses any number of languages that have an openly developed
compiler (c, c++, python, ruby, JS, go, you name it), but most certainly not
.net. So, who is left? There are isolated silos here and there, but it's
really a niche language and there are no use cases that will change this.

------
yatendra
.Net is not just for desktop, mobile/tablet and xbox. In these areas it
definitely has lost some momentum but ASP.Net and Xamarin (not from MS but
still .Net) seem to be doing good.

------
alexsilver
Personally I couldn't be more in love with MSFT tools (granted they're
expensive and I'm using whatever free version they give us). I've worked with
Java way back but can't help switching back (WPF, Silverlight for a short
while, MVC). When people ask me why on Earth I prefer this, I always give them
the same explanation: "MSFT development products for a straight-up developer
are what Apple products to an average consumer. Things integrate together
instantly and just... work!"

------
metaxy2
Some good arguments, but isn't .NET still the best platform for making truly
native looking Windows desktop apps with a simple, high level language? Qt and
wxWidgets are decent, but it's a lot trickier to get a native look and feel
with those. There's a reason so many apps maintain separate versions for
Windows and Mac rather than try to get by with a cross platform GUI toolkit.

------
untog
The most interesting web-based future of .NET is out of Microsoft's control.
Xamarin allow you to make iPhone and Android apps in C#, Nancy.FX is the
simple web framework MS never made, Moq allows you to greatly improve TDD...

I'm still glad I know C#, but I haven't had a use for .NET in a long time, and
have little reason to. Desktop apps are something else entirely, of course.

------
melc
At the server side it simply gives no choice but proprietary and unreliable ms
systems and a weak app/web server (iis). The desktop client side is only good
for ms clients. For the devices realm there is nothing to talk about really
and regarding windows phone it's a bit early. I've worked with .net in the
past but now i usually avoid it as much as i can.

~~~
sergiotapia
"Weak" Hah! I'd like to see some references to that claim.

Oh wait, here it is: [1] - melc's ass.

============

IIS has given me a TON of performance right out of the box with a fantastic
GUI editor for settings. StackOverflow a website with MILLIONS of monthly hits
runs fine with IIS.

~~~
melc
Even though i don't like your attitude i will try to give a little info that
may assist other people. The reference i have is a couple of enterprise level
projects (information systems for the public sector) built with c#, iis6 for
the server side parts, sql server 2005 and win2003 R2 servers. Also sharepoint
which was quickly replaced due to slowness and high resource consumption.

\- Win2003 servers had a limit on the amount of RAM so that was a bit of a
problem along with the sluggish performance compared to linux based servers
that we are used to work on. Did we have a choice to switch operating system?
hm.. not really

\- sql server was pretty good it did much better than i expected and i really
enjoyed all the functionality out of the box, but that was until we reached
more than 10 millions of records in some tables, then it was no more fun but
that could obviously happen with any database. Did we have a choice to switch
database? hm.. not really

\- iis6 whether you like it or not you have no other choice. Having a
background with jee application servers of different vendors where i could
configure and customize them in any level, switch them with other vendor
solutions and do plenty of architectural tricks.... i did find iis situation a
bit weak

\- programming with c# was great, but if we needed any good libraries/APIs did
not exist or we had to pay, not many choices here either and as with all other
parts targeted only to ms platforms

Stackoverflow is really great, and i was sure that in the past i had stumbled
upon a post about stackoverlfow architecture i.e.
[http://highscalability.com/blog/2009/8/5/stack-overflow-
arch...](http://highscalability.com/blog/2009/8/5/stack-overflow-
architecture.html) to be honest i was a bit suprised that they were using ms
technologies. To me the bottom line is that for large scale projects based on
ms technologies you will eventually need to invest money and time to
proprietary solutions without many architectural choices, at least not as many
as other platforms provide. Of course that is certainly not a problem if one
works only on ms platforms.

------
ramayac
Ok... let's believe for a moment that .NET is dying, so what platform you
think it's ready to take it's place?

------
cygwin98
I always wonder if it's a better strategy for Microsoft to introduce the
Windows AppStore in Windows 7 first and grow the eco-system there, just like
what Apple did MacAppStore to Lion, heck, even 10.6.6 (Snow Leopard) has
access to it.

Oh, well, perhaps the higher-ups in MSFT need to have a clue first.

~~~
yuhong
Unfortunately, they decided to tie it to Metro, which would be too much to
backport to Win7.

------
dia80
I'm apt to agree. I have used .net before in a large desktop app and it was
brilliant but I'm sure I will never use it again - deskwhat?

Only thing I can think of that might save the day is if MS properly open
sourced it. Chances of that have to be pretty much identically zero though.

~~~
peterevans
They'd need more than to open source it, I think. For .NET to make it, they
would need some kind of killer app -- something that makes people use .NET
despite whatever natural inclinations they may have. I don't see that
happening.

I mean, ten years ago, did you think lots of people would be coding in
Objective C? It's funny how things change.

~~~
archon
> For .NET to make it, they would need some kind of killer app -- something
> that makes people use .NET despite whatever natural inclinations they may
> have. I don't see that happening.

By "people" do you mean developers or end users? Because if you mean end
users, every end user of Windows uses some program that's built in .Net every
day. End users don't care, as long as it works.

If you mean developers, developers go where the people are, for better or
worse. There are a lot of people using i-devices, so Objective C lives and
will continue to live. There are a lot of people and companies using Windows
machines, so .Net lives and will continue to live.

------
hatu
It better not, C# with .NET is I think one of the best programming languages
out there.

------
samfisher83
C# is a great language. It takes things from java and improves simple things
like passing by reference, setter, getters etc. It has great features like
linq and it had things like generics before java. VS is by far the best IDE. I
feel it is much faster than eclipse. Other than the not being free part it is
my favorite language to program since I started out with c++.

