24 ms·
.NET 5
- MikusR 7y ago"There will be just one .NET going forward, and you will be able to use it to target Windows, Linux, macOS, iOS, Android, tvOS, watchOS and WebAssembly and more."
- oldjokes 7y agoThis is remarkable, and impossible to predict from the Microsoft of 10 or 20 years ago. Satya seems to be the rare visionary CEO of a megacorp, instead of just defaulting to a defensive and reactionary stance like most other leaders.
- acomjean 7y agoI don’t know. I think they’re still the same at the core, they just do enough to try and stay relevant. Office for Linux would be easy, but that’s not going to happen. My companies online outlook shows that MS is adding clones of all the tools (slack/trello). They’ve been successful and monitizing in this new era
- oldjokes 7y agoYeah clearly they are throwing a lot of spaghetti at things, I don't know that that's necessarily bad. At least they are trying to do so openly and in a API-centric way instead of just building the garden walls higher like every other company. I haven't used Office in years and don't know anyone who has, so I'm not sure how big of a priority it is to add platforms to a product like that.
- bunderbunder 7y ago> Office for Linux would be easy, but that’s not going to happen. I have a hard time believing it would be easy. I use both Office for Windows and Mac, and the differences are great enough that I'm guessing that there's a huge amount of divergent code in the UIs. And both would be written against GUI toolkits that are not present on Linux, so a Linux port would be yet another major effort. That said, I think that you're right that it's not going to happen. My understanding is that a major consideration for anyone looking to port a commercial desktop product to Linux is that Linux desktop users are, in the broad, very hesitant to spend $100s on a commercial product when open source alternatives exist. My guess would be that a Linux port of Office just isn't a proposition that is likely to generate positive profits.
- BuckRogers 7y agoOffice Online is the desktop Linux user's access to Office. Enough people use Macs that it makes sense to invest into the effort, else some other vendor will gobble up Office's marketshare. I use Office Online and LibreOffice all the time on Windows 10, some documents it's just better to have guaranteed formatting compatibility with the majority of documents which are put out through MS Office. I would personally just continue the same pattern if I were a desktop Linux user.
- balls187 7y agoHave you looked at Office365?
- Scuds 7y ago> Office for Linux would be easy, but that’s not going to happen. They're rewriting Office in React Native so Windows, OSX, and mobile ports will have a lot more in common. But "Desktop Linux" will always be a million support headaches for no market share; which begs the question "Dear Lord, why?"
- cm2187 7y agoAnd the only way to build market share is through cannibalization of windows licenses. Not in microsoft's interest. If you hae a proper office for windows, I bet many companies would consider seriously switching to Linux.
- scarface74 7y agoOffice has been available for Mac for well over two decades. There are so many more reasons for companies preferring Windows on the desktop than just Office.
- cm2187 7y agoI think there were so may more reasons. But what I see is all internal apps moving to be web based. 5 more years and Office is really going to be the last thing tying up corporates to Windows.
- AnIdiotOnTheNet 7y agoCall me when Linux has anything that works as well as AD.
- scarface74 7y agoYou just need a server running AD. Third party and browser SSO with AD is a solved problem.
- yellowapple 7y agoIt does; it's called AD. :) The actual problem is the lack of Group Policy support (or even a viable equivalent - preferably one that's cross-platform).
- luckydata 7y agoOffice on Linux already exist, it's called Office 365. Porting Office desktop for an operating system that's COMPLETELY IRRELEVANT for office users makes no sense.
- nicoburns 7y ago> an operating system that's COMPLETELY IRRELEVANT for office users Arguably a large part of the reason that Linux isn't used in offices is because MS Office isn't available. Of course it's in Microsoft's interest to keep it that way.
- BuckRogers 7y agoI love Linux Mint and Antergos as much as the next guy but Microsoft built an entire platform/ecosystem around tight integration between a full range of enterprise products. I can't say I blame them, decades of significant effort is required to do that and it's not easy or there would be someone else who has done it. Not only is the incentive not there as you mentioned, but it's definitely not malevolence to avoid trying to support random desktop Linux distros which will likely not cooperate with their integration efforts (and likely take joy in being able to reject or impede MS's efforts), to the degree they can with Windows 10. They have the right idea today, embrace server-side Linux with .Net Core, and soon, .Net 5. That's what Linux is primarily intended for, it's a server kernel and where the action is in regards to that ecosystem. There's a reason some of the code in X11 hasn't been touched in 20 years.
- luckydata 7y agoC'mon, that's complete bullshit. Linux is very hostile to the everyday user, you can't expect a large majority of users to have to fiddle as much as it's necessary to get a barely passable desktop experience on Linux. You buy a Windows or Mac computer and you're going in 10 minutes. There's no combination of distro or hardware where that's true for Linux.
- tracker1 7y agoI pretty much disagree here. Before she passed last year, I had my grandmother on linux for about 11 years. I had wine setup for the handful of old games (95 era) she liked, and made sure to update everything once or twice a year. Of course one time I waited too long. Archived her home dir, and installed the latest Ubuntu, restored her home dir, and she was up and running again. She didn't have to know anything about linux to use it. The same is true for a lot of people. More so in a corporate environment with dedicated staff to handle the harder problems. Hell, most people in offices could get away with a Chromebook and Office 365 today. Of course, general use laptops and proper linux support are not things that are very common. That part truly sucks. And, yeah, it's not pre-installed for the most part except for some boutique vendors and a couple Dell offerings. Aside: Have had a few looks at System 76 lately. May change out my mid-2014 rmbp next year. Unfortunately it's one of the last systems with NVidia, and the metal 2 support for the 750M doesn't work well at all. I'm also probably going to change my desktop to Linux in a few months. Hackintosh support is all but going away, and although I could change out my GTX 1080 with a next gen Navi for hackintosh, but I just don't want to support the mac platform anymore, and my 1080 has a lot of life left in it.
- sabarn01 7y agoIt only took about 5 years to get one rendering engine for both Mac and windows, but sure it would be easy.
- manigandham 7y agoThe efforts have been spent on cloud services. Office 365 online is rather good, OneDrive finally works, and other things like Teams and DevOps are being well integrated. For 95% of business users, these online editions have all the capabilities they need without the install headache and are much easier to maintain and update. Office Desktop just had a refresh too but there's basically 0% Linux business users to spend the millions in development costs for a variant.
- bunderbunder 7y agoMy guess is that it's also at least partially reflective of how .NET's status at Microsoft has changed over the past two decades. Remember 20 years ago, when .NET wasn't just a managed software development platform? It was a company-wide strategy[1] that was meant to encompass more-or-less their entire product line. The whole Microsoft future was .NET, and they were going to have a .NET edition of Windows, SQL Server, Exchange, etc. Since then, those plans have been dropped, Microsoft's (.NET-based) preferred GUI toolkits, WinForms and WPF, were replaced by one that is .NET-compatible but not .NET-native, etc. etc. .NET just isn't as central to Microsoft's identity as it was 20 years ago. Which, I'm guessing, means that the .NET team is now a lot freer to go cross-platform without inviting the wrath of the Windows team. [1]: https://en.wikipedia.org/wiki/Microsoft_.NET_strategy https://en.wikipedia.org/wiki/Microsoft_.NET_strategy
- anotherblue 7y ago> wrath of the Windows team. There is not much of Windows team to wield the wrath: https://arstechnica.com/gadgets/2018/03/windows-leader-terry-myerson-out-as-microsoft-reorganizes-windows-division/ https://arstechnica.com/gadgets/2018/03/windows-leader-terry...
- pjmlp 7y agoThey are still around. https://kennykerr.ca/2019/01/25/the-state-of-cpp-on-windows/ https://kennykerr.ca/2019/01/25/the-state-of-cpp-on-windows/ Read towards the end.
- goto11 7y agoI think the initial ".net strategy" was just a (failed) marketing exercise. It was supposedly some kind of grand vision where the .net framework were just one component and SOAP was another. They certainly did not plan to base Windows or SQL Server on the .net framework.
- BuckRogers 7y agoYou're correct. I'm certain that you're fully aware of Midori, but as you alluded to, a Microsoft Research initiative, but never was on the official roadmap. .Net itself has been a great success. I was completely sold on .Net Core and .Net 5 is exactly where they needed to take it.
- burnte 7y agoHe understand that Microsoft is a software company, and makes money selling software and software services. Steve Ballmer, for all his good attributes, was stuck seeing Microsoft as a Windows company, thinking everything had to relate back to Windows. Nadella understand that companies change or die. Ballmer just thought that meant finding new places to shove Windows.
- stefs 7y agoan ironic twist is that microsoft always made very good hardware (typing this on a natural keyboard 4000 & also the xbox controller).
- asdfman123 7y agoOlder execs probably had to be defensive and reactionary because they had to protect their main source of income, Windows. But it's clear now that 1) Windows has zero chance of taking a significant market share away from Linux in the cloud and 2) cloud technology is an important area of growth for MS. Satya probably sees that stubbornly sticking to Windows just isn't going to work anymore, so it's better to play nice with the others.
- basetop 7y agoWhat? Satya didn't invent .Net. The idea of .Net, like the JRE, was to write once and run everywhere. What's visionary about it? It's sad how so many articles and comments come off just pure PR now. Not saying your comment is, but I have to wonder how much of the "news", comments and internet content is now just PR.
- dtech 7y agoFor a very long time .Net was Windows only. That only changed after Balmer was gone and Satya came in.
- ygra 7y agoSome cross-platform considerations have been built into it from the start, though. And there has been an official open-source implementation on a non-Windows platform. Perhaps more to show that it's possible than as an actual usable artifact, but it was there.
- kevingadd 7y agoI think describing Mono as Official is a bit of a reach. AFAIK they benefited from the patent promise but that was about it until the acquisition. If you mean .NET Core as official open source, that's true, but it's a relatively recent thing.
- ygra 7y agoThere was Rotor on FreeBSD. Probably more a proof of concept, but it was there.
- tracker1 7y agoMono existed from very early on with .Net and the core was pretty compatible. I think when MS bought Xamarin, it finally got the attention it deserved, and really did go to help .Net Core take form.
- deleted 7y ago
- scarface74 7y agoNot taking anything away from Satya, but all of the big tech CEOs seem to be able to successfully pivot: - Netflix - moved from delivering discs to streaming and moved their entire infrastructure to AWS and CDNs - Amazon - went from just being a first party retailer to being a marketplace, AWS, and Alexa. - Apple - as of last quarter all five of their major verticals are large enough to be a F200 company by itself. - Facebook -- Instagram and WhatsApp were acquisitions but it didn't ruin either and they are both larger than they would have been. - Google -- well still just a one trick pony - search ads (as far as profits) no matter how many things they against a wall.
- chubot 7y agoI'm pretty skeptical of all the Microsoft praise lately, but if this is indeed true, it's a big deal. And probably a management feat somewhere (CEO or otherwise). I worked on dev tools at Google and recall many efforts over the years to try to unify the customer experience -- between internal and external tools, Go and Dart, Android and Chrome devtools, etc. Things always lurched in one direction or another, but never consistently. It was always above someone's pay grade to choose one or the other, so you ended up with both. Convincing engineers on devtools to abandon their babies is indeed hard! On the other hand, I think if you dig deep, Microsoft still has all the legacy, but they cover it up with a lot of branding. Hence the top comment in this thread about confusing branding.
- cwyers 7y agoYeah, they have managed to solve the confusion over the various flavors of .NET in the best way possible, it would seem like.
- cm2187 7y agoI don't know about that. I thought I kind of understood the mess of the .net framework until now but now I am really lost. Like asp.net core was meant to be incompatible with .net full framework because of inconsistent featureset, is that going away? For applications, .Net core binaries are different from .net full binaries, they compile to a .dll, not an executable .exe, you have to run them with a command line (and if you choose the option to create an exe it comes with lots of additional binaries that aren't required in full .net framework, plus I understand some additional problems of version compatibility with the installed .net framework). So is .net 5 going to be one or the other? Or is .net 5 just another way of saying that they are discontinuing the full .net framework and that now everything will have to be .net core? But then is a simple full .net framework 4.7.1 .exe run on .net 5?
- scarface74 7y agoLike asp.net core was meant to be incompatible with .net full framework because of inconsistent featureset, is that going away? Just to add to the confusion, you can target an ASP.Net Core Application to run using .Net Framework.
- cm2187 7y agoWell I believe you can now, but I thought I saw a recent announcement that said it wouldn't be possible with the next version. When re-reading the article, I think what they are implying is that they are ceasing support for .net full framework and just renaming .net core ".net". If it is the case it is kind of a big deal, there is ton of .net full code outthere, that no one has any appetite to convert. If it is not the case, are they going to rename .net full to something else? This article does the opposite of solving any confusion. [edit] there is a session in a couple of hours at Build, perhaps it will add clarity: https://mybuild.techcommunity.microsoft.com/sessions/77031#top-anchor https://mybuild.techcommunity.microsoft.com/sessions/77031#t...
- numlock86 7y agoWPF will still be Windows exclusive, though. Like many other things. What they really mean is BCL+Runtime+Compiler, and not .NET (read as: the whole ecosystem).
- ZanyProgrammer 7y agoWhich is too bad, because there’s still no easy, drag and drop way to create desktop apps on other platforms that just work.
- numlock86 7y agoThe drag and drop designer part of VS is not even what I think is cool about WPF. To me it's the architecture and the whole API. It's easy to make clean enterprise size applications with good separation of concerns (I've been a developer in the C#/WPF field for around 5 years). For other platforms - and Windows as well - the closest I know is Qt, including the drag and drop part btw. ;)
- pknopf 7y ago> the closest I know is Qt Which you can use .NET Core with! https://github.com/qmlnet/qmlnet https://github.com/qmlnet/qmlnet
- babypuncher 7y agoThis always surprises me whenever I look into cross-platform GUI toolkits. The closest is Qt as you mentioned. What really gets me is GTK's continued popularity on Linux when Qt is so much easier to develop with.
- numlock86 7y agoProbably a side effect from the popularity of Ubuntu which - since they dropped Unity - go still strong with GTK as they use Gnome now out of the box. And Ubuntu is like the de facto standard desktop distribution.
- 7y ago
- arendtio 7y agoIs there a tutorial somewhere out there on how I can build a minimal app that works on all those platforms? I tried about 5 searches but didn't find anything useful so far.
- maslam 7y agoPluralSight has a .NET course that covers this. Sorry I don't have the link handy it's something about Mac and Linux dev on .NET
- echopom 7y ago> how I can build a minimal app that works on all those platforms That's perfectly normal. There is no such thing as "Cross Platform .NET" The C# language and the.NET Framework does indeed run on almost all platforms, but that pretty much ends here in terms of "portability". Anything beyond that is "platform specific" For instance, building "desktop" applications is either UWP with advanced styling and reactive data binding but only for Windows or GTK# with Mono which is very limited. For Mobile either Xamarins.Forms for Android + iOS but it's very limited in terms of features, or it's Xamarin.iOS + Xamarin.Android which require platform specific code for UI / Routing and many others OS specific functions. For Web , the WASM Binary is something like 5MB+ which makes it not reasonable compared to an app written in Plain JavaScript or TypeScript. There is still a long way to go for C# to be really "cross platform"
- GordonS 7y ago> The C# language and the.NET Framework does indeed run on almost all platforms, but that pretty much ends here in terms of "portability". IMO, that's not entirely accurate, and does .NET a bit of a dis-service. .NET Framework isn't cross-platform, and doesn't pretend to be - it's Windows only. .NET Core is cross-platform, with runtimes for Windows, Linux and MacOS. Regarding Xamarin, I guess you haven't used it for a while? Until very recently, I had the same opinion, but only because it was years since I had used it - turns out it's rather good now! Where cross-platform ends is really with desktop GUIs - web apps, web APIs, console apps, backend processing services/daemons etc, all of these work very well across the supported platforms, and the only time you'll likely write platform-specific code is the rare cases when you need to pinvoke into native DLLs. Aside from the likes of Electron, I'm not sure there really is a good cross-platform solution for desktop GUIs. Microsoft would be hailed as heros if they ever crack that one :)
- merb 7y agoyou forgot java. "Java interoperability will be available on all platforms"
- whatever_dude 7y agoYeah, I'm seriously still dumbfounded by this. I mean, it's such a positive, future-aware decision, it's confounding. Impossible to say how relevant .NET it will be in, say, 4 years time, but development will certainly be much better than today when you have several disparate runtimes to target depending on the platform.
- maxxxxx 7y agoSounds good. Let’s hope they won’t change their mind until release in 11/2020.
- oblio 7y agoIt would be kind of dumb on their part. They're competing with Java, Golang, a reborn C++, Python, Swift, Rust, etc. They badly need .NET to get adoption outside of Windows, which is a stagnant platform regarding dev adoption.
- maxxxxx 7y ago“It would be kind of dumb on their part. ” Agreed. However they have a long tradition of doing the right thing and then killing it immediately with stupidness and arrogance
- oblio 7y agoThey were knocked down a peg when they completely missed mobile.
- pjmlp 7y agoThat reborn C++ is being driven partially by the Windows team, that owns C++ at Microsoft and never was big friends with the idea of managed code on Windows. As for Windows, being stagnant, unless one is living in SV, it is quite relevant for anyone doing desktop, laptop and 2-1 software.
- sergiotapia 7y agoI haven't used .NET since 2011, if you're in the same boat take a look at C# today. They're grabbing all the best features of other languages and making it their own, WHILE also allowing you to deploy static binaries to _any_ major platform. Write C# code purely in VSCode or Rider, compile to all three platforms while on a Mac, and run your code in Linux. All from supported, non-hacky features. Why use Go if you can use C#? C# is now incredibly compelling. The C# of today is not the C# of 6 years ago.
- Xixi 7y agoGoroutines and Async-Await are two very different takes on the same problem. In that regard, preferring Go over C# is an incredibly good reason to keep using it instead of switching over to C#. Choice is good, I prefer more languages than fewer.
- GordonS 7y agoI know essentially nothing about go - could you explain simply what goroutines are?
- Xixi 7y agoI'm far from being an expert at Go, but I will try: goroutines are green threads (very light threads, if you prefer). The main difference between async calls and threads is that threads remove the distinction between synchronous and asynchronous code. In C# or Python 3, each function is colored as either sync or async. You can quite easily call an async function from a sync context, but doing a blocking sync call from an async context is forbidden (although possible). In Go there is no such distinction: you just write your functions in a straightforward fashion, as if everything was synchronous, and then wrap whatever you want to run in the background in a goroutine. If you don't need the return value from that function, it is has simple as issuing: go my_func(param_a, param_b, ...) Note that goroutines are green threads, not OS threads, so you can easily spawn many tens of thousands of them without bringing your system to a halt.
- Dayshine 7y agoDoes this spell the end of .NET Standard? And does this explain why they don't seem to care about making .NET Standard versions at all logical to developers (e.g. making a major breaking change, not supporting .NET Framework, to .NET Standard in a minor version)? Edit: And before someone says ".NET Framework is choosing not to support .NET Standard, you shouldn't version based off implementations but off changes in the API": That only works if you have many implementations, .NET Standard has 3 major implementations! Losing 33% is pretty significant :)
- archey1 7y agoI think you are confusing the .NET Standard (ie. the standard to base implementations of .NET on) with .NET Framework which is going away.
- Dayshine 7y agoMy understanding is that .NET Standard was needed to provide an API for the various different implementations to support. This was normally draw in images like this: http://gigi.nullneuron.net/gigilabs/wp-content/uploads/2017/04/net-platform.png http://gigi.nullneuron.net/gigilabs/wp-content/uploads/2017/... The updated image is this: https://devblogs.microsoft.com/dotnet/wp-content/uploads/sites/10/2019/05/dotnet5_platform.png https://devblogs.microsoft.com/dotnet/wp-content/uploads/sit... Which seems to have removed the implementations (mono/.NET Framework) and implies .NET 5 will be targeted by all platforms directly? So what is .NET Standard needed for anymore, platforms now target .NET 5 versions instead of .NET Standard versions right?
- deleted 7y ago[deleted]
- alkonaut 7y agoPeople will continue to support both framework and core for decades, so library authors that want to support e.g both framework and Core will need to ship libraries targeting .Net standard just like they do today. The question is perhaps whether there will be a new Standard (5 would be a good choice of number) indicating the support needed for .Net 5. Unless there is a competing implementation perhaps there is no need
- earenndil 7y agoInteroperation with java, swift, and obj-c is interesting. I wonder if they have an actual jvm, or they're just implementing java-the-language?
- hueho 7y agoFor Java, it's probably just JNI compatibility.
- runfaster2000 7y agoLike this: https://docs.microsoft.com/en-us/xamarin/android/get-started/java-developers#interoperating-with-existing-java-code https://docs.microsoft.com/en-us/xamarin/android/get-started...
- whatever_dude 7y agoIt's just interop, so I'm assuming it means if you compile for platform X, it can target native APIs you have exposed inside that platform.
- kgwxd 7y agoWill it support Windows 9?
- bellp1234 7y agoAny word on F#? Last I checked there wasn't any REPL still and type providers weren't working.
- Dayshine 7y agoType providers have been working on .NET Core for 18 months or so...
- enricosada 7y agoThe F# repl (FSI as fsharp interactive) works in .net core 3.0 preview already, you can do `dotnet fsi` to run it Type providers works in general, but depends if the type provider library was updated to use latest type provider sdk. Also generative type provider may not works, erasing works
- phillipcarter 7y agoJust adding to Enrico's post here, Type Providers have been fully supported since .NET Core 2.1; some libraries just may not be updated yet. `dotnet fsi` is planned to be fully released later this year with the .NET Core 3.0 release.
- phillipcarter 7y agoEnrico answered to question w.r.t where F# is now, but F# is going to also be a big part of .NET 5. The only reason it's not mentioned in the post is that we haven't firmly decided on if the F# release that corresponds with .NET 5 will version in lockstep like C# is planned to do.
- pjmlp 7y agoDon't forget to remind the runtime team that AOT support should also include F#.
- avinium 7y agoFWIW I was working with F# SQLProvider recently and despite some teething issues, managed to get things working fine.
- throwaway55554 7y agoI'm curious and don't see anything. But what about things like IPC? Is WCF available yet? Is there an abstraction for namedpipes for all the platforms?
- runfaster2000 7y agoIPC is already supported. We have no plans to support WCF (as a server) on .NET Core.
- mikequinlan 7y agoWhat components of.NET Framework 4.8 will not be supported on the Windows version of.NET 5?
- zenexer 7y agoI suspect that WCF is mostly on its way out, but don’t quote me on that. There seems to have been little interest in continuing to support it.
- GordonS 7y agoI'm primarily a .NET developer - I haven't seen WCF used in a new project for maybe 10 years or so. It lost out to simpler, JSON-over-HTTP a long time ago, and good riddance!
- throwaway55554 7y agoOk, but surely that's not used for IPC.
- GordonS 7y agoNowadays many people do indeed use JSON over HTTP for IPC - it's the lifeblood of microservices. More efficient protocols are also used of course, such as Cap'n Proto, Protocol Buffers etc.
- Wow2019 7y agoThey took years to rewrite C# compiler and delivery became _slower_?
- PieUser 7y agoDamn, hard to believe 2020 is just next year!
- kdtop 7y agoFor the newbie here, can someone tell me if this is open-sourced? Many are fearful of building on a MS platform in case they change their minds in the future etc?
- zemo 7y ago> Everything you love about .NET Core will continue to exist: > Open source and community-oriented on GitHub. search "open source" on the page.
- astine 7y agoThere are some open source components here, but I don't think the .NET platform as a whole is being moved to open source. The core compiler and runtime are open, but some of the most popular libraries and frameworks are still closed, it looks like.
- testvox 7y ago> Everything you love about .NET Core will continue to exist: Open source and community-oriented on GitHub.
- deleted 7y ago[deleted]
- paavohtl 7y agoThere isn't much that hasn't been open sourced in the past few years: The runtime, standard library, C#/F#/VB compilers, ASP.NET, Entity Framework, Xamarin, PowerShell, Winforms, WPF are all open source or (in the case of WPF) being open sourced. https://github.com/dotnet/ https://github.com/dotnet/
- astine 7y agoI'm happy to be wrong.
- southerndrift 7y ago
- userSumo 7y agowhat kind of license would it have? i suppose MIT like .NET Core?
- oblio 7y agoThis is basically .NET Core + stuff, hard to believe they'll relicense it. The Windows-only add-ons might have different licenses but I think they've Open Sourced even those bits.
- runfaster2000 7y agoThe post clarifies that everything will be open source. We use a combination of MIT and Apache 2. MIT is our default license for new code.
- ameyv 7y agoLooks like MS realized they made a mess with .net core ...before thinking through how they should have done this... It was really not difficult to see ..if they wanted to make .net open source and their BA, PM and developer should have seen this coming... after MS bought Xamarin..they could have worked on mono and make things easier for everybody... Now they are abandoning again this new '.Core' bandwagon...so much money and time was spend by community on creating and building libraries product... I just convinced my PM and team, that we should consider .net core and they have agreed...we have started development of our new app.. This news will make things more complicated...Sigh Edit: Quite negative votes..No need to down vote..just explain your viewpoint with more civilized means using "reply"
- lwansbrough 7y agoThe differentiation of .NET Core allowed the team to leave legacy problems behind and focus on multi-platform first and foremost. Now that .NET Core has been established and has more or less reached parity with .NET Framework, there's little reason to continue promoting the latter, and thus the name "Core" is redundant because it is the only future for the .NET platform. I think it's safe to think of this not as abandoning .NET Core but conversely they're promoting the technology behind .NET Core as THE future. I would expect the migration from .NET Core 3.1 to .NET 5 to be quite straight forward.
- ameyv 7y agoLets see..
- paavohtl 7y agoThis announcement just means they'll call the next version of .NET Core .NET 5 and kill the original Framework for good. They are not abandoning .NET Core, just changing the branding.
- UglyToad 7y agoUnless I misunderstood the article is it not the case that this is just .NET Core 5 (we're currently on/near .NET Core 3)? This announcement sounded more like unifying the various different bits of. NET on 5 in future rather than yet another breaking change?
- stusmall 7y ago"Java interoperability will be available on all platforms." Where can I find more details on this?
- runfaster2000 7y agoThere are not really any yet. We intend to take the Java interop that Mono already supports, improve it as needed, and make it available to other scenarios beyond just Android. If there are certain things you would like to see, I'd love to know.
- maxxxxx 7y agoI would like to know more too. Not being able to call java libraries is one of the biggest problems with .NET. There are a ton of java libraries that don’t have good .NET equivalents.
- stusmall 7y agoI'll read up on how Mono handles it. I've never done too much .NET and I'm a recovering JVM dev, I was just asking out of curiosity since that is a pretty thorny feature to tackle. I can think of a number of dangers/shortcomings with any approach I can think of.
- FlorianRappl 7y agoThis line also caught my attention. Really keen on finding out more!
- qwerty456127 7y agoIf only they could just add a very easy way to invoke functions (at least those with simple interfaces, i.e. taking just simple value types as inputs and returning a simple value type) from other languages (incl. Java and Python) this would already be a huge value boost even if performance would be not perfect.
- kevingadd 7y agoWell, if you can get a C-compatible pointer to those functions you're already ready to go, and the inverse is true if those languages can consume C-compatible function pointers. So from python you could probably flex to use ctypes, and from java, JNI. Naturally this is a bit awkward but I expect the mono binding tools would help smooth it over for Java (I have no idea about Python there.)
- darkstar999 7y agoGood. It's so confusing right now.
- kgwxd 7y agoIt will still be confusing. At some point you'll need a library that doesn't support it. ".NET" promised backwards compatibility. Now, old ".NET" stuff won't work where you'd previously expect it to. Everything was quite clear when these 2 incompatible platforms had separate names. It's like merging Java and JavaScript "for clarity".
- amaranth 7y agoYou already need .NET Framework 1.1, 3.5, and 4.8 to ensure you can run anything ".NET" due to past compatibility breaks. This is just another one in the chain and why major version numbers exist. You'll be able to install all of them side-by-side just like you can now and the only issue is if you want to use dependencies that only target a different version than you're currently using.
- dragonwriter 7y ago> ".NET" promised backwards compatibility. Except for 2.x-3.x, .NET Framework didn't provide backward compatibility across major versions, so a break at the 4.x-5.0 transition would be in line with .NET Framework history even if .NET 5 was viewed as .NET Framework 5. Which seems to be why the version of what is basically .NET Core after .NET Core 3.x is .NET 5, so it fits expectations whether viewed as a .NET Core version or a .NET Framework version number. Enterprise will no doubt keep legacy .NET Framework 4.8 around for legacy apps—the same way they do Framework 1.1 and 3.5. > It's like merging Java and JavaScript "for clarity". Not really. .NET Core can be viewed as just a production-ready but not feature complete early release of the next major version of .NET Framework, which involved major reengineering, and which will be released as .NET 5 when it is feature complete.
- Yuioup 7y ago.
- oblio 7y ago.NET Core 3 will come with compatibility packs.
- scarface74 7y agoFor Windows only....
- foepys 7y ago.NET Framework is only available on Windows, so I don't get your point.
- scarface74 7y agoIt was for clarification that while .Net Core/.Net 5 are cross platform, “porting” Windows Forms doesn’t mean it will be cross platform.
- alkonaut 7y agoThe problem isn’t migrating the code, that’s actually doable. The problem is that we are maintaining actively developed apps that we want to keep on the latest and greatest runtime, expect yearly performance improvements and also have tons of third party proprietary .Net 4.x dependencies for. The people manking those (one example in my case: AutoDesk) may or may not port these libs to core/5 ever. And without them we are stuck on the old framework and now even the old C# version. It would be great to see a binary conversion/transpiler tool that converted 4.X libs to 5, checking the API compatibility and maybe even shimming some known holes.
- deleted 7y ago[deleted]
- deleted 7y ago[deleted]
- lwansbrough 7y agoThis seems like it would be a prime opportunity to introduce UWP applications to macOS and Linux. That would be a welcome alternative for developers looking to develop high quality native + cross platform applications.
- dtech 7y agoIt doesn't explicitly state in the post, but since it doesn't say otherwise I expect UWP and WPF to remain Windows only for now.
- ocdtrekkie 7y ago.NET desperately needs a first-party supported solution for cross-platform desktop apps. I was searching this news for any hint of that, and don't think we're going to see it yet. I am unsure if they would try to push UWP to those platforms, or focus more on expanding Xamarin which is already cross-platform. I know WinForms and WPF are considered far too dependent on Windows proprietary APIs to ever be officially supported elsewhere, I assume UWP is the same.
- pknopf 7y agoI would rather stand on the shoulder of giants and use Qt. You can use .NET Core with Qt/QML. https://github.com/qmlnet/qmlnet https://github.com/qmlnet/qmlnet
- ocdtrekkie 7y agoThat looks pretty cool. I've also seen Avalonia, which is a more .NET-focused approach, meant to be very similar to WPF: https://github.com/AvaloniaUI/Avalonia https://github.com/AvaloniaUI/Avalonia But the main issue for me is that Microsoft just needs to pick something, and say "this is how to write cross-platform desktop apps in .NET", and support it. I don't really care what it is, they just need to have one.
- cspierre 7y agoMy guess is we aren't so lucky just yet. UWP has so much Windows 10 device specific functionality, and I think that Xamarin.Forms already satisfies this need. Instead, what I see them doing is making it easy to share code between UWP and other platforms. There are so many competing options for code re-use, hopefully .NET 5 can consolidate things a bit without sunsetting Mono projects
- badsectoracula 7y agoSo, does this also replace/update the .NET Framework that is bundled with Windows 10, meaning that you can release a .NET EXE and ask people to use the latest version of the .NET like you can release a .JAR and you can ask people to have the latest version of Java, or you have to bundle the entire runtime (be it via a fat compiled AOT or regular bundling) with your application? I ask because one of the positive things about .NET Framework 4 is that i can create a tiny .EXE and give it away and expect that people will have the runtime to run it since it is already part of Windows.
- testvox 7y agoYou will have the option to do either. Require a runtime be provided by the system or package one together with your application.
- badsectoracula 7y agoYes but will this 'required runtime provided by the system' be part of Windows like it is with .NET Framework 4 (that is also updated automatically via Windows updates) or something that the user will have to go out of their way to install like Java? In many cases, this is the crucial difference between deciding to bundle the runtime yourself or not.
- kevingadd 7y agoWell, even at present there's no guarantee the end user has the version of .net framework and libraries you need. You might need 4.8.x stuff and they only have 4.7.x. Maybe they're on win8 and not 10, or they're behind on updates, etc. Typically the solution for this is to either sense what's installed (and use an installer) or just ship it and let the error messages help them figure out what to do.
- Dylan16807 7y agoYou can't even guarantee the user has a computer. But it's a very bad idea to throw error messages at the user mid-install, and it hurts to bundle an entire framework installer inside yours. If you can target 4.7 and know it will exist on computers with windows 10, that's much better.
- polskibus 7y agoWhat does it mean to standard ASP .Net (not core)? Will I be able to run all the enterpisey apps that use ASP MVC and WebForms on Linux in 2020? And if not on Linux, then will WebForms / old MVC work on NET 5 on Windows?
- scarface74 7y agoNo. The legacy stuff will be ported to be compatible with .Net Core but will still be Windows only.
- jsmith45 7y agoBut presumably only the Core 3.0 WCF/Winforms "most things work, but in all likelihood your million+ line of code app will have all sorts of little things that won't work". Presumably if you are using any of the following heavily in your applications, you will never be able to run on .NET 5 without major porting effort (I.E. reworking everything to avoid these): * Remoting * C++/CLI or Managed-C++ * App domains * code access security * ASP.Net Web Forms * Exposing registered COM interfaces from .NET code for access from Win32 code. * WCF Servers (Technically, nothing prevents somebody from porting this, since WCF is basically pure managed code, and its tricky Proxy related code is already ported as part of the client code. It is just that Microsoft has no plans to bother with this.) Will SQL Server upgrade its .NET support for .net 5? (Potentially breaking compatibility with certain currently supported use cases)? I'm guessing IIS Managed modules will never upgrade beyond .NET 4.X.
- wvenable 7y agoIt's not like they have to re-implement all the code for these things; the majority of this code can just be moved over as-is from .Net framework to .Net core on Windows with minimal modification. I'd be surprised if the goal isn't 100% compatibility. If Microsoft can get Linux applications to run on Windows, they can probably get .Net applications to run on .Net.
- jsmith45 7y ago
- kumarvvr 7y agoOff the topic, but I come from Python / Django / Flask. (Have experience programming desktop apps with .NET 4 and C#). I just don't get web app development with asp.net core. Is there a ground up tutorial, concept-wise, about how asp.net works?
- oaxacaoaxaca 7y agoI’ve gone straight to the official Microsoft docs multiple times to try and get the same experience as when you read the Django documentation, but it’s just not there. Django’s docs explain the what, the why, and more. The Microsoft docs just have the what. I want to love .NET Core development because I love Microsoft’s open source effort, but the support (or lack thereof) from the documentation is quite the hindrance.
- tamrix 7y agoThe docs are open source too. There's countless blogs and books. Visual Studio is a bit easier for some to get started than vscode. It's free. Maybe your struggling in other areas?
- oaxacaoaxaca 7y agoNot "struggling in other areas" but thanks. Been using VS and VSCode for a long time. Don't care that the docs are open source. My issue is that I guess I have high expectations for the official docs of a platform/framework/library/whatever. You shouldn't have to buy a book or read a random blog to find critical information on core functionality. The official docs should provide that, and Django is a great example. It includes how to do things, why things are the way they are, how to customize workflows, best practices, pitfalls, and on top of all that the source code is super easy to read and understand. The pages at docs.microsoft.com are mostly just basic walkthroughs that leave me with a lot of questions. And the .NET Core source code is not nearly as readable. It's getting better though. And I don't mean to take jabs at Microsoft because I truly do appreciate how much they've done in open source over the last few years, especially with VSCode.
- lol768 7y agoI'll be honest, as much as I love the improvements with .NET Core/.NET Standard, Microsoft's branding strategy leaves a lot to be desired. vNext has already been historically used in the context of ASP.NET to refer to ASP.NET (not to be confused with ASP.NET MVC) v6. We restarted the versioning back with ASP.NET Core, now on version 2. Entity Framework used to be a .NET framework component but is now standalone, and has a Core version? Does Blazor (or is it Razor Components now) share the .NET branding? Separate to the web stuff, we have the .NET platform - .NET framework is the non-cross platform version for which we're on version 4, but it implements .NET Standard v2 along with .NET Core, which has a Linux runtime. Mono also implements .NET Standard v2 and has a Linux runtime. I remember many years ago when we also had Microsoft .NET Passport.. which was completely unrelated to everything else that I've mentioned related to the .NET brand. And now we have .NET 5 which is neither Framework nor Core - so will ASP.NET drop this Core branding too? Is it just me, or is this all incredibly convoluted?
- phillipcarter 7y ago> And now we have .NET 5 which is neither Framework nor Core Just to note, the blog post explicitly says that .NET 5 is the next version of .NET Core. It's where .NET Core is going, and given that so much more of the .NET "picture" is being realized with it, the name is changing to be more reflective of the fact that it's not really a "core" (small) thing anymore.
- lol768 7y agoYes, indeed. But will that change also apply to the other projects that target .NET Core (now ".NET")? Will Entity Framework Core become Entity Framework and clash with the 'full-fat' Entity Framework? The blog post suggests this won't happen by referencing ASP.NET Core 3. And where does this leave the legacy .NET Framework? It reads as a sub-project of '.NET' (previously .NET Core) but it very much isn't because it provides a set of older APIs. We seemingly have two meanings for .NET now, referring to .NET Core (which I guess only applies when suffixed with v5+) and the wider array of .NET projects, whatever they are.
- 7y ago
- euroclydon 7y agoThe more they use the word "throughput" the less I understand it.
- magnat 7y agoSince planned release date is well after Windows 7 EOL date (2020-01-14), I wonder if .NET 5 will be released only for Windows 10.
- majkinetor 7y agoOh, small lies, nobody noticed... GUI is not cross-platform in .NET 5 which is not visible on the graphic.
- cspierre 7y agoNo Lies! Mono already supports cross platform winForms, and recently the ability to embed Xamarin.Forms views in both mobile and desktop.
- basetop 7y agoBut isn't winforms pretty much legacy? Microsoft has been encouraging the use of WPF.
- cspierre 7y agoLooks fine to me! https://github.com/dotnet/winforms/pulse https://github.com/dotnet/winforms/pulse I don't know much about WPF, but it seems to be in an odd place with UWP. The fact there are no plans to port WPF MacOS/Linux, combined with the increasing emphasis on cross-platform... I'm curious where it goes from here.
- majkinetor 7y agoXamarin.Forms is not Win Forms AFAIK. Legacy or not, Win forms would be better then nothing. For that to happen GDI+ need to be ported to core and for WPF to happen DirectX needs to be ported to core. Its all into UWP now. So I guess it will not happen soon. MS should reboot IMO.
- oaiey 7y agoI think there are some developers who would consider .NET 5 a huge breaking change. .NET (Framework) 4.8 looks like the predecessor but has features (rightfully) not available in .NET 5. I like the vision but hate the name. .NET Core 4.0 would have done it. When you market software engineers stick with patterns. This looks like a lot of managers have feedback to stuff they did not understand in the first place.
- cspierre 7y agoI love the name. The numerous .Net monikers are confusing. Framework, Core, Mono... each with overlapping support for various frameworks and platforms. I expect new .Net developers to be overwhelmed trying to figure out the differences, as I was. The monikers were misleading. This feels clean, looking forward to it. Does "Core" mean core functionality? Then what is ".Net Standard"? Is .Net Core cross platform or Mono? Why can't I use .Net Core library with Xamarin? Is Xamarin .Net Mono? Should I use .Net Core Winforms or .Net Mono?
- majkinetor 7y agoI have extensive XP with .NET Core 2 in production on huge services with 1M+ users - we started making some stuff before 1.0 and had it in production after having few sessions with local MS. WebAPI, APS.NET Core, Pwsh, C# 7... I dont work for MS, but that is some seriously good tech stack. Performance is amazing too. I highly recommend it. Worked in 50+ environments so far but this is top stuff. MS really nailed it this time. No, don't tell me that JAVA is comparable to C# in elegance, that linux dudes had python/ruby/perl/whatever before Powershell etc. The only problem we had so far was with the Oracle db drivers which were non existent until several months back, but that is on Oracle... which sux more and more each day - commercializing java for example will just give a boost to .NET now, a lot of it - who at Oracle made up such decision escapes me, but maybe he works for MS.
- pickle-wizard 7y agoDo you run .Net Core on Windows or Linux? I have a project in the early design phase that I was thinking of going with .Net Core on Linux. I've thought about going with Java, but with all the recent Java licensing changes don't think I want to go that route anymore.
- majkinetor 7y agoI currently run on Windows servers, some of which are Core. Tried nano but its terrible as there is no package manager and no support for msi files. If you install anything in docker it takes GB's so we used VM's for bakcend/frontend running Windows Server 2016 behind IIS/kestrel/nginx and every other supporting tech on Linux (not core). One of the reasons to use Windows was Sql Server but mostly PowerShell which we do all automation in. Backend service is used to register invoices for entire country and it has 1M+ users, we have 60-100 logins per minute and 500+ concurent actions. Backend is served by single server (!) and never gets more then 10% CPU load and 20% memory with that load. I am amazed honestly. Zero dev fucktitude (once we ditched Angular, but that is another story). Almost zero downtime (30-50s to build and deploy with db migrations). Now, we use Linux alpine docker containers, use postgre instead Sql Server and pwsh with Invoke-Build to run CI/CD stuff. Sworm for orchestrations and compose for local. Have 2 incoming country-level services this year for production. Currently on dev/stage it works really fast but load is trivial. We did a lot of performance test on Windows and achieved 1.5-2K req/s with hello world and our setup on IIS/kestrel. Did no test for linux variant so far. > I've thought about going with Java, Java compared to latest C# is like ... Clojure to VBA. No brainner really, plus Oracle (sure, there are alternatives). Also, entire Java enterprise stack is overengineered beyond repair. I need 77 classes for basic stuff. Take .NET core you wont regret it.
- bob1029 7y agoI am very pleased with the direction Microsoft has been moving the last few years. Every release of .Net has incrementally made our lives easier. We are already on top of .Net Standard/Core 2.0 and are building successfully against 3.0 prerelease targets without modification. I would anticipate the move from Core 3.0 to .NET 5.0 would be trivial for us, and as long as self-contained deployments are still around in 2020 our build & publish pipeline won't know the difference (aside from msbuild & SDK updates on Jenkins). Exciting times ahead.
- mikequinlan 7y agoI was really excited to see this; finally a consolidated .NET. Then I read this... Taken together, the .NET Core and Mono runtimes have a lot of similarities (they are both .NET runtimes after all) but also valuable unique capabilities. It makes sense to make it possible to pick the runtime experience you want. We’re in the process of making CoreCLR and Mono drop-in replacements for one another. We will make it as simple as a build switch to choose between the different runtime options.
- manigandham 7y agoMono is a large part of mobile and Unity for gaming. It's not going to disappear anytime soon and they can't go back to it being completely separate. This is the best compromise to keep the runtimes the same but share as much as possible between them.
- basetop 7y agoIs it just me, or are all critical comments being downvoted here. It seems like this thread is overrun by PR folks and microsoft employees. In the techcrunch windows terminal thread, one of the top comments starts with "I've been developing on both MacBook Pro's and Windows laptops for 15+ years now, on a daily basis, and I can confidently say that Windows laptops are superior to MacBook Pro's for development in every way.". It reads like an infomercial. What is going on? Did the "hacker" community suddenly fall in love with Microsoft? Another gem: "Satya seems to be the rare visionary CEO of a megacorp, instead of just defaulting to a defensive and reactionary stance like most other leaders."
- manigandham 7y agoHalf the comments are critical. The discussions are going fine.
- michannne 7y agoI see many for and against points towards Microsoft. I don't pay attention to Satya comments but I feel the same can be said for those as well. More importantly, why do you believe the opinion of the dev community towards Microsoft should be swayed one way or another? If they do a good job at supporting development on all platforms, and their intentions are clear and any intrusive additions can be spotted and built out effectively, why should they not be commended for it?
- bishala 7y agoI don't see that, there is a healthy balance of positive and negative comments.
- qwerty456127 7y agoStill of limited usefulness as long as WPF is not cross-platform.
- tracker1 7y agoSee https://platform.uno/ https://platform.uno/
- pjmlp 7y agoWe just started a new project on .NET Framework 4.7.x, because not everything that we care about is available on .NET Core, not even with the upcoming .NET Core v3.0. Lets see how .NET 5 will sort out the current state of affairs. In any case, it is a welcome change to sort out the mess that the whole WinRT and .NET Core 1.x have brought out.
- bob1029 7y agoI am curious what specific features you are using in .NET Framework 4.7x that are not accessible in .NET Core. We use 'legacy' APIs like System.Drawing and System.DirectoryServices from .NET Core without any issues today - https://docs.microsoft.com/en-us/dotnet/core/porting/windows-compat-pack https://docs.microsoft.com/en-us/dotnet/core/porting/windows.... Although, we exclusively target Windows platforms right now (RID == win-x64). We are considering replacing these Windows-only deps with cross-platform alternatives in the future (e.g. Novell LDAP and Mono drawing) so that we can start looking at Linux as another hosting option. I have even had reasonable success with retargeting 3rd party libraries to .NET Standard 2.0 without much coding effort. It's mostly just *.csproj XML soup management.
- pingec 7y agoFor example C++/CLI
- ToFab123 7y ago<I am curious what specific features you are using in .NET Framework 4.7x that are not accessible in .NET Core. Windows Communication Foundation (WCF)
- ToFab123 7y agoTo expand on this. As I understand Microsoft has started to create a new version of WCF for .NET core (or 5 as it is called now). I should a multi-year development project to do this, because it can no longer be "Windows" Communication Foundation since it also must work on Linux. They same goes for EWT tracing which is the logging mechanism you can use. That also has to be cross platform. So for some years to come, I (on some projects) are "stuck" with .NET 4.X until WCF and EWT has been re-architectured.
- polskibus 7y agoWill VS 2017 support NET 5 ? Will VS 2019 do it ? Or will I need to buy yet another VS upgrade to enjoy it in full ?
- dragonwriter 7y ago> Or will I need to buy yet another VS upgrade to enjoy it in full ? Don't most developers using non-Community VS get it via a Visual Studio subscription, either annual Standard (formerly, MSDN) ir monthly Cloud, both of which also include current and former Visual Studio downloads?
- svick 7y agoThere is no chance VS 2017 will support it, since it already doesn't support .Net Core 3.0.
- merb 7y agoI really love the direction. Finally a single platform AND java compat. this is so good.
- Zenst 7y agoInteresting but as there is a 3.1 LTS version due before this comes out and this 5.0 release is not LTS, with any of those features not going LTS until 6.0 in Nov 2021. So that kinda diminishes my initial excitement, much could change in a short period and we are talking over 2 years until any additional features becomes set in stone with LTS support. So for me, it's probably not looking at until 6 months before LTS release. As is the case with many others. But some good changes - a rebrand would of cut of any confusion and historical hangovers. As between now and Nov 2021, much could change.
- mehrdadn 7y agoSemi-tangent, but as someone who didn't try to follow AOT compilation but very much wants to, would anyone have tl;dr instructions using the current version of .NET on how to turn a HelloWorld.cs file into a native HelloWorld.exe? You'd think it's just calling a couple of commands on the command line, but every time I've searched for it I've come across pages and pages of documentation I had no time to look through.
- 1000010110 7y ago1. Get Visual Studio. 2. Install .NET. 3. New > Create New Project. 4. Choose Console Application (C#). 5. Rename Program to HelloWorld. 6. Go to properties and change Startup object to "ProjectName".HelloWorld. 7. Run
- mehrdadn 7y agoThat just gives me a .NET EXE, not a native EXE. Also I was looking for compilation instructions I can run myself (like csc HelloWorld.cs), not an IDE to run everything for me.
- dr_faustus 7y agoFunny how this announcement comes the same week Oracle decided to kill Java EE. MS has always been good to it's developers and broadening the .NET platform this way makes one really consider to give it another look. Oracle in the other hand basically spreads FUD about their own platform, even though they seemingly don't even care about it anymore.
- victor106 7y agoI agree. Shame on Oracle. J2EE is widely popular and continues to have a vibrant community. Oracle just doesn’t have the vision of how to encourage and mature that community and turn it into the proverbial golden goose. All they want to do is kill it to get all the eggs today. They can just copy/learn Microsoft’s strategy and come out on top.
- catchmeifyoucan 7y agoIs this pretty much like how Java is today?
- max76 7y agoJava is a programming language that can target many different run times.
- 1000010110 7y agoSorry for my ignorance but how is .NET 5 different from Standard (2.0)?
- tracker1 7y agoMy take on this, is it means that .Net Framework and Mono will cease as separate platforms... and .Net 5 will be effectively Standard 3.0 with code from Core, Mono, etc as a single, unified framework. The are deprecating all of the past in favor of .Net 5
- 1000010110 7y agoI don't think they would deprecate Framework yet. A lot of application rely on it. I think they would support it less (see OWIN implementations), but Framework still feels very active.
- crispyambulance 7y agoI'd just like to know what do they mean by ... > Java interoperability will be available on all platforms. What, is that possible now on some .NET platforms? What does it mean? That I can use java classes in my .NET application??
- reasonablemann 7y agoComing from mainly python I must say I'm extremely impressed with .net core. I think my mac days would be over if Windows had better font rendering and a usable terminal -- even ConEmu leaves a lot to be desired.
- manigandham 7y agoA new terminal is coming: https://news.ycombinator.com/item?id=19840447 https://news.ycombinator.com/item?id=19840447
- lazulicurio 7y agoI'm cautiously optimistic. > Moving to a single .NET implementation raises important questions. What will the target framework be? Will NuGet package compatibility rules be the same? [...] How does writing code for a specific architecture work? [...] We are working through these issues now and will soon be sharing design docs for you to read and give feedback on. This, however, is my biggest worry. Between runtimes, content files, analyzers, native references, asset visibility rules, etc., packaging has become kind of a mess. I'd love to see a move away from monolithic packages, but IDK if that's on the table. Fingers crossed.
- jeswin 7y agoThe most interesting piece of work happening in the .Net world is actually CoreRT (which is already beta quality), which lets you write fully native apps with access to the large .Net ecosystem. For many, it could be an alternative to Go/Rust. c# is a more capable language that Go, and easier than Rust - a particular sweet spot. Instead the announcement was primarily about unrolling the version mess created over the last few years.
- vturner 7y ago"Java interoperability will be available on all platforms" I wonder if we will see a resurrection of the long gone Scala on CLR?
- a3b2c1r46 7y agoIs it fair to say after 30 something years the basic is dead? I dont see any mention of it on any of the posts I read about .net 5
- sqldba 7y agoAs you can see from 300+ comments at the time of writing, the post is entirely unclear about what's happening seeing as everyone still argues about it. My read of it is that .NET Core becomes the new .NET, not that .NET Core has parity with the existing .NET. Specifically I can't just retarget my existing projects against .NET Core (or the new .NET) and have them just work.
- philonoist 7y agoHow does this compare to the Java ecosystem in terms of enterprise adoption?
- sjs382 7y agoI'm sure I'm not alone in thinking that the .NET ecosystem is super confusing, coming as a developer outside of that ecosystem (mostly web). I'm a JS, Python and PHP developer who sees a majority of jobs in my area as .NET centric. To this end, I'm interested in familiarizing myself with .NET [1] but I'm totally at a loss wrt/ where my entry point to the ecosystem should be. [1] Insofar as starting a new small project or re-implementing an old side project in .NET as a learning process.