Live data from Hacker News

.NET Core 3.0

devblogs.microsoft.com

71–80 of 183 posts

Re: .NET Core 3.0

#71
post #52
post #41

Earlier quoted context omitted.

Visual studio crashes and hangs on me multiple times a day. Rider is just solid.

Visual Studio does this for me a lot as well, especially when projects become larger. The number of times the typeahead caused the app to hang is too numerous to count. Part of me misses .NET, but I've been mostly working with Golang and Node lately. Visual Studio Code is pretty stellar. Maybe someday VS will catch up to VSC. :)

I also have problems with VS resource usage. It appears to depend on what file type the focussed tab has open. It's still 32-bit, which can't help.

Never had perf issues with VSC, which is surprising considering it's web tech. It's a different class of app to VS but much nicer to use, and of course it's cross platform.

Re: .NET Core 3.0

#72

Earlier quoted context omitted.

Would be really nice to see performance comparisons against a chromium equivalent for the same UX.

Memory usage difference should be something like an order of magnitude better with .NET. It's not a direct comparison, because the features aren't quite the same, but the Electron Teams app uses about 10x more memory than the relatively heavy WPF Skype for Business client that it's supposed to replace.

Skype has been replaced by an electron app https://electronjs.org/apps/skype

Re: .NET Core 3.0

#73

Now you can easily write the following state machine in C#: static State ChangeState(State current, Transition transition, bool hasKey) => (current, transition) switch { (Opened, Close) => Closed, (Closed, Open) => Opened, (Closed, Lock) when hasKey => Locked, (Locked, Unlock) when hasKey => Closed, _ => throw new InvalidOperationException($"Invalid transition") };

To be clear, this has nothing to do with .NET Core 3.0 but rather is a feature of C# 8.0, which depends on compiler support that can be targeted to any previous version of .NET Core or Framework, all the way back to Framework 2.0 (tested myself, although MS says not to target 2.0 or 3.5).

C# 8 needs .net core 3.0 for some features to work at all like default interface method implementations, and for some to work meaningfully like nullable reference types.

Re: .NET Core 3.0

#74
post #41
post #25

Earlier quoted context omitted.

VS is very good but I've been using Rider since the start of this year for most work, I found it to be a very strong competitor.

Visual studio crashes and hangs on me multiple times a day. Rider is just solid.

I try to avoid anything by Jetbrains, as the process of reporting bugs and trying to get show-stopping bugs fixed has been a nightmare with them. This was during their RC phase of Rider, where I had a number of bugs. They went ahead and shipped it to full release (where it was no longer free of charge) without fixing a single one of the bugs I reported and even followed up on. What is the point of an RC beta test if you are so behind on bug fixes that you're not even able to triage all incoming reports? Seems like it should still be called beta at that point.

To their credit, I've had great experiences with RubyMine, but that was the exception to the rule for my experiences with Jetbrains IDEs.

Edit: Before anyone else downvotes, I'll point out that I realize this is not the experience others have had, but I was not exaggerating these claims.

Re: .NET Core 3.0

#75
post #41
post #25

Earlier quoted context omitted.

VS is very good but I've been using Rider since the start of this year for most work, I found it to be a very strong competitor.

Visual studio crashes and hangs on me multiple times a day. Rider is just solid.

I haven't used VS in about 2 years now, so this experience may be too many versions out of date to be relevant anymore, but for a while I had very similar problems. And then I uninstalled ReSharper, and VS all of a sudden became very snappy.

Re: .NET Core 3.0

#76
post #23

I have been developing in .Net MVC 5 and now the last 6 months in .Net Core 2.1. Core is pretty awesome, I would say the learning curve is pretty high, but I'm very satisfied. Previously, I used Java in school. The .Net stack offers a lot of jobs in enterprise companies, if you are someone that dislikes SV mindset. Also, Visual Studio is an insane IDE. Although, I recently did have some nasty bugs but updates are com…

Re: I would say the learning curve is pretty high

If you had to rank and list the top rough spots in the transition, what would they be? Entity-Framework changes are often cited, but what else is different enough?

Re: .NET Core 3.0

#77
post #5

Earlier quoted context omitted.

I’ve thought about this but I doubt it. The big change has been the perception shift. .NET was always really solid tech. Microsoft has always had stellar developer technology. But the love affair with open source and the super villain role that Microsoft played, is what kept people away, not the tech itself. I remember wanting to give a talk about how amazing C# was to a ruby group. I never did it, but it was definit…

> But rubyists would’ve loved C#. As a Rubyist, I'll admit that C# is the least bad of the C++/Java style of static OOP languages, but it was that it was always too tied to the .NET ecosystem and heavyweight enterprise tooling more than Microsoft's “supervillian role” with regard to FOSS that made it unattractive for lots of places where I would want to use Ruby. That's improved with Core, somewhat.

I was a fulltime ruby developer before I became a full-time .NET developer (usually by accident). And things like Linq, Visual Studio, and Resharper ultimately allowed me to create code that was highly organized, while never sacrificing productivity or performance.

The thing I always hated most about the .NET ecosystem was having to run on Windows Server, so that's definitely a welcome change with .NET Core.

But C# has always been a wonderful language to work with. And you never really feel the static typing slow you down, yet get all the benefits of not having to write a bunch of useless tests that replace what a compiler should do in the first place.

(Not trying to make this a dynamic/static flame war by the way. I'm a full-time elixir developer nowadays, so I'm still in dynamic-land and enjoy it. Just not dogmatic about any of it)

Re: .NET Core 3.0

#78
I recently did a live coding tutorial on using SIMD intrinsics which is one of the big new features in .NET Core 3.0. It covers the basics of what is SIMD, what are intrinsics, and I do some live coding/benchmark examples in C# where I cover how to lay out data and use SIMD effectively:

https://www.twitch.tv/videos/482930779?t=00h09m01s

Re: .NET Core 3.0

#79

Sorry for a basic question, can this be used to make desktop apps across platforms?

Yes - while WPF and Windows Forms are still Windows-exclusive, there are several cross-platform UI libraries for .NET Core, like Eto.Forms ( https://github.com/picoe/Eto ) and Avalonia ( https://avaloniaui.net/ ). It's also possible to build an Electron wrapper around an ASP.NET Core web app: https://github.com/ElectronNET/Electron.NET

Docker is a better way to distribute apps than Electron, in my opinion. From a developer point of view you just build a regular web app, so better than Electron. From the user's point of view, Docker is better because of isolation, and because there is nothing to install. You run just one command to download and run the image. If you want the app to have its own window then use Chrome's "Create shortcut" command. This is indistinguishable from an Electron app, but better. See an app written in this fashion here: https://hub.docker.com/r/eurekasearch/eurekasearch

Re: .NET Core 3.0

#80
post #49

Earlier quoted context omitted.

It's great to see the enterprise world catching up with the tech world

I fail to see what the point of trying to use VS Code for .NET development would be. I suppose if you like tying one hand behind your back and making things more difficult for yourself for some reason. Or maybe you like cobbling together a rickety pile of plugins. If cost is a concern, there's Rider or even MonoDevelop.

I work mainly in multi-project F# solutions. VS Code Ionide plug-in seems pretty solid for single project F#, but every time I've tried to use it for multi-project I run into some sort of situation that sends me back to Visual Studio.

VS has had it's own F# problems. The latest Preview edition is pretty solid, with one annoying bug. Almost every time I open my big multi-project solution I need to rebuild to get Intellisense to eliminate the red squigglies, and then close VS and re-open. It's a known issue. Hope MS fixes it soon.

Post reply on HN