Don Schenck

80 points
User profile image.
York, PA

A developer who has seen it all, Don is a Microsoft MVP and currently a Director of Developer Experience at Red Hat, with a focus on Microsoft .NET on Linux. His mission is to connect .NET developers with the Linux and open source communities. Prior to Red Hat, Don was a Developer Advocate at Rackspace where he was immersed in cloud technology. He still enjoys cooking and studying human behavior, and still hates the designated hitter rule.

Don's overarching belief is this: "A program is not a communication between a developer and a machine; it's a communication between a developer and the next developer."

Authored Content

Authored Comments

Drew -- Indeed, having MS SQL Server run on Red Hat Enterprise Linux (RHEL) is a huge plus. When you add in Linux containers and Kubernetes, it quickly becomes a .NET developer's dream: Fast, portable, containers, micro services ... all the goodies.

I have some stuff at (my URL); your ask about .NET on Linux + Windows and deploying to a Linux server is something I've been "meaning to do" for quite some time -- that is, a blog post and video.

I'll see if I can buy some time during next week's holiday break and put it together. Thanks for the 'nudge'.

Get that question a lot.

Mono is the old, community-based *successful* attempt to port .NET Framework to Linux. Xamarin was (is) based on Mono, so when Microsoft purchased Xamarin, Mono came with it.

To be frank, .NET Core is much faster, since it was a new project and developers were/are able to take what was learned from previous attempts, i.e. .NET Framework.

In short, Mono <> Core.

NOTE, HOWEVER: .NET Standard 2.0 is huge here.

.NET Standard 2.0 is NOT a framework, but a _specification_. .NET Core 2.0, .NET Framework and Mono all adhere **to some level** to .NET Standard 2.0. The APIs described in .NET Standard 2.0 will work on ALL .NET choices: Core, Framework and Mono.

In other words; If you write code to the specifications in .NET Standard 2.0, you know it will run anywhere. Pretty cool, eh?

There is a nifty tool to check your existing libraries to see where rate regarding compatibility with all of the .NET versions. It's called APIPort and can be found here:

Hope this helps.

I also *strongly* suggest checking out the URL and also

-- Don