Great, another .NET is dying post voted up on HN. Didn't we have one of those just this morning? Meanwhile, in the real world, Microsoft posted these earnings: "Server & Tools business reported $5.04 billion of revenue, up 11% from last year" Inspite of competing products like Linux, Apache, Eclipse, Ruby, Java being given away for free, people are willing to pay for Windows Server, Visual Studio and IIS. Does anyone…
You couldn't buy the VS licenses + SQL Server + Windows Server with the money YCombinator provides you. So, yes, most microsoft products are incredibly damaging for a startup.
Where Is .Net Headed?
31–40 of 107 posts
Re: Where Is .Net Headed?
#32Re: Where Is .Net Headed?
#33It's got all the awesome features most of which are very elegantly implemented and accessible in a very streamlined fashion. Obviously if you hate C-syntax, C# isn't going to win any brownie points, but in terms of sheer power and flexibility, C# 5.0 steals the cake by a huge margin. Lambdas, parallelization, anonymous functions, interop with C functions, fast compilation, "fast" execution, awesome bytecode, and more. Constantly iterating, but not breaking with the original design goals.
It's borrowed the right features from the right languages, the right syntax from the right languages, and the right design choices from the right languages.
(Although I do dislike how the new dynamic keyword is implemented. It throws then catches too many exceptions under the hood and people really need to understand it before they use it. It was primarily designed to convert unknown/random JSON to a C# object on the fly and should not be abused. Many people coming from dynamically-typed, loosely-defined languages might think it's an easy way of adapting to the traditionally statically-typed and statically-defined C#... not so.)
(And, like it or not, it really is a cross-platform language. Mono does count and is pretty awesome. Esp. if you think about the compatibility of the language and not the framework.)
I'm still a die-hard C/C++ coder, but C# won my heart a long time ago.
Re: Where Is .Net Headed?
#34Earlier quoted context omitted.
You don't need to buy them: http://www.microsoft.com/bizspark/default.aspx Prime example: Stackoverflow/StackExchange is built on the Microsoft stack.
BizSpark has rules many startups cannot follow and is only valid for 3 years. This is the same selling scheme used by drug dealers.
Re: Where Is .Net Headed?
#35Earlier quoted context omitted.
If you think Mono is a viable alternative to the .NET platform, you don't understand why people choose .NET. Don't get me wrong, Mono is awesome. But it's not about to be adopted by Fortune 500 companies across the world.
To someone with very little understanding of these technologies, could you give a quick word on what the problem is with Mono? Are we talking about performance, completeness, support or something else?
But, above all, the biggest problem is not technical and not Mono itself: it is Xamarin. The money decisions on big companies are made by people that need to tell to non-technical bosses and shareholders why they did what they did. And it is much easier to talk to them about Microsoft than about Xamarin.
Remember the "no one ever lost their job for buying IBM"? It works for MS, now.
Re: Where Is .Net Headed?
#36I currently work at a fairly large MS client. No way we're going to abandon .Net right now or in the next few years. We're currently in the process of getting ready for a migration to Sharepoint Server 2013 which will cement the company with .Net for at least the next two to three years. We still have several sites on the old 2007 platform with no hint of moving those over any time soon. I'm wondering what you see as…
I think the future of the MVC framework is a better question. It's stuck in the middle of two worlds- huge corporate projects don't use it, and anyone that even thinks about MVC will be more likely to use something like Ruby.
Incorrect assumption (source: developer at huge corporation on huge projects)
Re: Where Is .Net Headed?
#37Earlier quoted context omitted.
I think the future of the MVC framework is a better question. It's stuck in the middle of two worlds- huge corporate projects don't use it, and anyone that even thinks about MVC will be more likely to use something like Ruby.
> huge corporate projects don't use it Incorrect assumption (source: developer at huge corporation on huge projects)
Point is, there was no huge shift to MVC after it was released. A ton of web projects are still made using WebForms and will continue to be. MVC will continue to be a minority framework.
Re: Where Is .Net Headed?
#38Regardless of where .NET is headed, C# the language (which is an entirely separate beast) has, in my humble opinion, become the most damn awesome all-around language. It's got all the awesome features most of which are very elegantly implemented and accessible in a very streamlined fashion. Obviously if you hate C-syntax, C# isn't going to win any brownie points, but in terms of sheer power and flexibility, C# 5.0 st…
C# 5.0? Take a look at this example code from the MSDN blog which is "showing off" the new features of C# 5.0. (It was formatted this way with no indentation on the blog). This example, not by coincidence, demonstrates how .NET interfaces with the web.
private async void
btnTest_Click(object sender, EventArgs e)
{
var request = WebRequest.Create(txtUrl.Text.Trim());
var content = new MemoryStream();
Task responseTask = request.GetResponseAsync();
using (var response = await responseTask)
{
using (var
responseStream = response.GetResponseStream())
{
Task copyTask = responseStream.CopyToAsync(content);
//await operator to supends the excution of the method until the task is completed. In the meantime,
the control is returned the UI thread.
await copyTask;
}
}
txtResult.Text = content.Length.ToString();
}
What does that code do? It works behind a form running on the desktop, where you press a button to do an async HTTP request and display the content length of the response.First of all, why would I want to create an application that runs on the desktop, rather than build a web application that I can show to people with a link? Especially
If I were going to do the same thing with a web application then I would probably do something like this in CoffeeScript:
$.get $('#url').val(), (res) -> $('#res').val res.length
I'm sorry, but I don't see C# as being the most damn awesome all-around language. I like CoffeeScript, or maybe even better, LiveScript (http://livescript.net). Or failing that, plain-old JavaScript.Re: Where Is .Net Headed?
#39I've been away from .Net for a while. How has it improved? How is the market for programmers in it? For freelancers?
ASP.net MVC is pretty awesome, there are some good open source projects like Nancy for more lightweight stuff, Entity Framework isn't great but it's pretty mature and fast for an ORM. Visual Studio continues to be the best IDE on the market.
Re: Where Is .Net Headed?
#40Regardless of where .NET is headed, C# the language (which is an entirely separate beast) has, in my humble opinion, become the most damn awesome all-around language. It's got all the awesome features most of which are very elegantly implemented and accessible in a very streamlined fashion. Obviously if you hate C-syntax, C# isn't going to win any brownie points, but in terms of sheer power and flexibility, C# 5.0 st…
Start with the name, ".NET". What were they referring to when they chose that name very carefully? They were referring to the web. C# 5.0? Take a look at this example code from the MSDN blog which is "showing off" the new features of C# 5.0. (It was formatted this way with no indentation on the blog). This example, not by coincidence, demonstrates how .NET interfaces with the web. private async void btnTest_Click(obj…
var HtmlLength = new WebClient().DownloadString("http://news.ycombinator.com").Length;
or if you want the length in bytes: var ByteLength = new WebClient().DownloadData("http://news.ycombinator.com").Length;
Want to do it asynchronously? var ByteLength = new WebClient().DownloadDataTaskAsync(url).Length;
That code sample you posted is to demonstrate in a rather loquacious fashion the new C# 5.0 features.As for why create a desktop application rather than a web-based app, I'm not even going to dignify that with a response. Apples and oranges.