Live data from Hacker News

Microsoft takes .NET open source and cross-platform

news.microsoft.com

771–780 of 937 posts

Re: Microsoft takes .NET open source and cross-platform

#772
post #61

I'm a hardcore *nix guy but boy do I love me some C#. Up until now it's been the best language I have worked with but the worst platform due to it's lack of 'nice things' that we just expect from languages/ecosystems these days. Where 'nice things' is defined as being open-source, having open-source ecosystem of developer tools etc. This isn't so much the beginning (as good stuff has been happening for a couple of ye…

I actually have this conversation frequently with my developers (most of them are .NET), so I'm really happy to hear someone else say this as well. I've done about a an even split in my career with C# and Java and feel as competent as the next guy bouncing between the two languages and delivering projects for clients, but I like writing C# the most, by far. The language is more modern, things like async/await, Linq,…

THIS +1.

I feel that people need to feel and experience both side end-to-end deep in the bowel to be able to judge Java/C# because it's more than just the language; it's everything! IDE, Tools, Libraries, Environments, etc.

Re: Microsoft takes .NET open source and cross-platform

#773
post #316
post #61

I'm a hardcore *nix guy but boy do I love me some C#. Up until now it's been the best language I have worked with but the worst platform due to it's lack of 'nice things' that we just expect from languages/ecosystems these days. Where 'nice things' is defined as being open-source, having open-source ecosystem of developer tools etc. This isn't so much the beginning (as good stuff has been happening for a couple of ye…

Microsoft has been playing catch-up on developing that "nice things" like trying to build an open-source community. NuGet, open-sourcing the ASP.Net and EF stacks, etc. A long way to go, but they've recognized their big failing and are moving on it. MS makes some great technology and some terrible tech... but the problem is the terrible tech gets the same blessing as the great tech. An open-source community is the be…

The power of OSS is often overstated when it comes to writing user friendly software and the sorry state of the *nix GUIs, where setting up a multi motor setup like you do in Windows 98 is still a few years away. The reality is that best practices often conflict with the need to ship resulting is wasted time refactoring, and redesigning.

Re: Microsoft takes .NET open source and cross-platform

#774
post #667

Earlier quoted context omitted.

async/await is HUGE. It opens an almost frictionless asynchronous pathway from your code all the way down to asynchronous capabilities of the underlying platform. Which was always the problem with leveraging async/overlapped IO: It was too complex and it turned your application logic inside-out because everything had to be performed in callbacks. async/await takes that on directly: You get everything executed in call…

FYI Python has had an await equivalent for a looong time through the Twisted networking library and now asyncio. It has the same semantics, but you use the yield keyword instead of await. Also as of recently there is a standard library event loop package, and as far as I know Twisted was the defacto event loop on 2.x for most types of work.

Having used Python during my time at CERN, I would never use it for anything besides scripting tasks. Maybe when PyPy reaches feature parity with mainline Python.

Re: Microsoft takes .NET open source and cross-platform

#775
post #125

It's funny how Nadella has moved the needle more for developers in 9 months than Ballmer did in the last decade or so, and all that without running around like a madman too. Pretty good. I'll never switch back to MS for what they've done in the past but it is nice to see them try hard to become a nicer player in the software eco-system. Google and Apple need some other party to keep them sharp, it might as well be MS…

Seeing comments like this “I'll never switch back to MS for what they've done in the past” always reminds me of this post from Hanselman http://www.hanselman.com/blog/MicrosoftKilledMyPappy.aspx

From that post, interesting foreshadowing discussion on HN: https://news.ycombinator.com/item?id=7181029

Re: Microsoft takes .NET open source and cross-platform

#776
post #316

Earlier quoted context omitted.

Microsoft has been playing catch-up on developing that "nice things" like trying to build an open-source community. NuGet, open-sourcing the ASP.Net and EF stacks, etc. A long way to go, but they've recognized their big failing and are moving on it. MS makes some great technology and some terrible tech... but the problem is the terrible tech gets the same blessing as the great tech. An open-source community is the be…

While I do think this move is a valiant one, I don't believe that it will, in and of itself, build better practices and help Microsoft build better software. Open source is very hard to do right, and if you're a company that doesn't have open source in their DNA it could pose a huge challenge to building positive relationships with your developer community. If you're a big corporation like Microsoft, you have tons of…

Like Apple and Google, right?

Re: Microsoft takes .NET open source and cross-platform

#777
post #771

.NET newbie here. Could someone explain me if thanks to this it is currently possible to write GUI multiplatform apps?

I think it is possible using Mono (http://en.wikipedia.org/wiki/Mono_(software)). More details on platform specific frameworks: http://www.mono-project.com/docs/gui/gui-toolkits/

Re: Microsoft takes .NET open source and cross-platform

#778
post #61

I'm a hardcore *nix guy but boy do I love me some C#. Up until now it's been the best language I have worked with but the worst platform due to it's lack of 'nice things' that we just expect from languages/ecosystems these days. Where 'nice things' is defined as being open-source, having open-source ecosystem of developer tools etc. This isn't so much the beginning (as good stuff has been happening for a couple of ye…

I actually have this conversation frequently with my developers (most of them are .NET), so I'm really happy to hear someone else say this as well. I've done about a an even split in my career with C# and Java and feel as competent as the next guy bouncing between the two languages and delivering projects for clients, but I like writing C# the most, by far. The language is more modern, things like async/await, Linq,…

Thank you for summing it all up, so well. C# has a language has so much stuff built into itself. When we work with java we have to take help from frameworks such as Spring etc .

Re: Microsoft takes .NET open source and cross-platform

#779

Earlier quoted context omitted.

async/await is HUGE. It opens an almost frictionless asynchronous pathway from your code all the way down to asynchronous capabilities of the underlying platform. Which was always the problem with leveraging async/overlapped IO: It was too complex and it turned your application logic inside-out because everything had to be performed in callbacks. async/await takes that on directly: You get everything executed in call…

Could you please contrast async/await implementation with Future in Java? From the usability standpoint I see that they are more or less similar. However since you state that async/await exploits the asynchronous capabilities of the underlying platform I'm really curious to know how is this different from the way the way Future is implemented in a JVM.

Futures in .NET are tasks and the Fork/Join framework is TPL (Task Parallel Library).

Async/await allows developers to write code that looks sequential, but is rewritten by the compiler into a sequence of coroutines built on top of TPL, while taking care error propagation happens correctly.

Re: Microsoft takes .NET open source and cross-platform

#780
post #438

Earlier quoted context omitted.

You have inferred more about me than you are entitled, and even if you were right, your argument is still poor. Have you read the c# stdlib? It is in no way any better. Stdlibs are always more complex than the code that builds on them, and that is by design. The same code that I use for a oneliner has to be robust enough to apply to play, akka, spark, finagle, etc. That is the primary reason why StdLib documentation…

I inferred that you probably use standard library collections. Not really an insulting inference, it'd be insulting to assume you didn't. Personally, I make it a habit to always read (or try to read, in this case) standard library source code that I'm depending on to be correct.

Have you read the implementation of the python collection types (list, map, etc.)?
Post reply on HN