Ubuntu: .Net Core very cool
-
I've been running Ubuntu exclusively on my home computer for at least 6 months now. I have dual boot but I never boot into Win10 any more. During the Stay-At-Home order I've been WFH (work from home) for over 5 weeks now. I use Remmina[^] to remote into my work computers (Win10) from my Linux machine -- Remmina actually works better than mstsc (RDP). Dot Net Core Anyways, I have had .NET Core on the machine for a while and Visual Studio Code, but yesterday I started testing out functionality by writing little command-line programs. Visual Studio Code allows you to step through code (with the proper plugin). You can amazing things on Linux that is totally based upon your C# skills. Really cool! Feels Like K&R C Also, if you ever got a chance to do some old C programming and go thru the K&R C book I believe you will find this Dot Net Core programming world really cool. Yes, it's console-based and you have to learn dotnet commands for building and running but it is just so much fun and you can really learn about the OS by writing these little programs. Coverage Let me give you some examples: The Generic collections
System.Collections.Generic
are all there. You can do Linq (System.Linq
) You can do crypto and hashing (like SHA-256) usingSystem.Security.Cryptography
. You can do all the IO (files, folders, etc) stuff withSystem.IO
.System.Diagnostics
to get Process info is there. And theSystem.Environment
stuff is all there (ie How long has OS been running, what is machine name, and so much more). These are just the ones I've tried there is much more. Of course,System.Windows.Forms
does not work at this time, but think of this as K&R C and you'll be happy. I'm happy. :laugh: Linux Quite Different From Windows, But Same Under C# Think about that. The two environments (windows & linux) are quite different but all of these things work via C#. It is amazing. I'm so infatuated with this right now. Visual Studio Code and Dot Net Core are so cool. :thumbsup::thumbsup::thumbsup::thumbsup::thumbsup: EDIT - More libraries tested Just came back to say that I've now tried:System.Net
- HTTP web communication, retrieve web pages, etc works great.System.Threading
- Thread stuff works over here on Linux. Maybe we all expec -
I've been running Ubuntu exclusively on my home computer for at least 6 months now. I have dual boot but I never boot into Win10 any more. During the Stay-At-Home order I've been WFH (work from home) for over 5 weeks now. I use Remmina[^] to remote into my work computers (Win10) from my Linux machine -- Remmina actually works better than mstsc (RDP). Dot Net Core Anyways, I have had .NET Core on the machine for a while and Visual Studio Code, but yesterday I started testing out functionality by writing little command-line programs. Visual Studio Code allows you to step through code (with the proper plugin). You can amazing things on Linux that is totally based upon your C# skills. Really cool! Feels Like K&R C Also, if you ever got a chance to do some old C programming and go thru the K&R C book I believe you will find this Dot Net Core programming world really cool. Yes, it's console-based and you have to learn dotnet commands for building and running but it is just so much fun and you can really learn about the OS by writing these little programs. Coverage Let me give you some examples: The Generic collections
System.Collections.Generic
are all there. You can do Linq (System.Linq
) You can do crypto and hashing (like SHA-256) usingSystem.Security.Cryptography
. You can do all the IO (files, folders, etc) stuff withSystem.IO
.System.Diagnostics
to get Process info is there. And theSystem.Environment
stuff is all there (ie How long has OS been running, what is machine name, and so much more). These are just the ones I've tried there is much more. Of course,System.Windows.Forms
does not work at this time, but think of this as K&R C and you'll be happy. I'm happy. :laugh: Linux Quite Different From Windows, But Same Under C# Think about that. The two environments (windows & linux) are quite different but all of these things work via C#. It is amazing. I'm so infatuated with this right now. Visual Studio Code and Dot Net Core are so cool. :thumbsup::thumbsup::thumbsup::thumbsup::thumbsup: EDIT - More libraries tested Just came back to say that I've now tried:System.Net
- HTTP web communication, retrieve web pages, etc works great.System.Threading
- Thread stuff works over here on Linux. Maybe we all expecGlad to hear I'm not the only one playing with net core on Linux - I've written an ASP.NetCore api service ( in C# ) that I host as a daemon on an SBC ( FriendlyElec Nanopi M4 V2 running Armbian bionic beaver ) that queries a postgresql database and does some pretty serious number crunching and it works like a dream. I have a love affair with SBC's and with the advent of Net Core I can use them to prototype real world scenarios ( I've built my boards with terrabyte SSD M2 drives and 4GB ram ) they have a RK3399 ARM64 hexacore processor and the little beauties fly - did I mention I love net core ? Next step is to containerize this with Docker :-D Nginx is also in the mix as a reverse proxy ( all this on a SBC ) Big thanks to folks on here who helped me with the Web side of things ( you know who you are )
"We can't stop here - this is bat country" - Hunter S Thompson - RIP
-
Glad to hear I'm not the only one playing with net core on Linux - I've written an ASP.NetCore api service ( in C# ) that I host as a daemon on an SBC ( FriendlyElec Nanopi M4 V2 running Armbian bionic beaver ) that queries a postgresql database and does some pretty serious number crunching and it works like a dream. I have a love affair with SBC's and with the advent of Net Core I can use them to prototype real world scenarios ( I've built my boards with terrabyte SSD M2 drives and 4GB ram ) they have a RK3399 ARM64 hexacore processor and the little beauties fly - did I mention I love net core ? Next step is to containerize this with Docker :-D Nginx is also in the mix as a reverse proxy ( all this on a SBC ) Big thanks to folks on here who helped me with the Web side of things ( you know who you are )
"We can't stop here - this is bat country" - Hunter S Thompson - RIP
That sounds like some very cool stuff. Thanks for sharing. I'm glad I'm not the only one who is excited about dotnet core and Linux, too. :thumbsup: I need to learn a bit more about nginx and the container stuff is definitely in the future. You can save a bit of money* running a small container running linux (like I do on DigitalOcean) but you can run C#-based WebAPI or C#-based (MVC) web site or whatever that runs out of the container. Very cool stuff. *since linux hosting is always less expensive.
-
That sounds like some very cool stuff. Thanks for sharing. I'm glad I'm not the only one who is excited about dotnet core and Linux, too. :thumbsup: I need to learn a bit more about nginx and the container stuff is definitely in the future. You can save a bit of money* running a small container running linux (like I do on DigitalOcean) but you can run C#-based WebAPI or C#-based (MVC) web site or whatever that runs out of the container. Very cool stuff. *since linux hosting is always less expensive.
I've never published to a hosting site as most of my work has been backend ( we host our own site and services ) and I never got involved with the rest - I'd like to push what I've built to a public hosting company just for the hell of it - can you give me any hints as to how one goes about doing this ?
"We can't stop here - this is bat country" - Hunter S Thompson - RIP
-
I've been running Ubuntu exclusively on my home computer for at least 6 months now. I have dual boot but I never boot into Win10 any more. During the Stay-At-Home order I've been WFH (work from home) for over 5 weeks now. I use Remmina[^] to remote into my work computers (Win10) from my Linux machine -- Remmina actually works better than mstsc (RDP). Dot Net Core Anyways, I have had .NET Core on the machine for a while and Visual Studio Code, but yesterday I started testing out functionality by writing little command-line programs. Visual Studio Code allows you to step through code (with the proper plugin). You can amazing things on Linux that is totally based upon your C# skills. Really cool! Feels Like K&R C Also, if you ever got a chance to do some old C programming and go thru the K&R C book I believe you will find this Dot Net Core programming world really cool. Yes, it's console-based and you have to learn dotnet commands for building and running but it is just so much fun and you can really learn about the OS by writing these little programs. Coverage Let me give you some examples: The Generic collections
System.Collections.Generic
are all there. You can do Linq (System.Linq
) You can do crypto and hashing (like SHA-256) usingSystem.Security.Cryptography
. You can do all the IO (files, folders, etc) stuff withSystem.IO
.System.Diagnostics
to get Process info is there. And theSystem.Environment
stuff is all there (ie How long has OS been running, what is machine name, and so much more). These are just the ones I've tried there is much more. Of course,System.Windows.Forms
does not work at this time, but think of this as K&R C and you'll be happy. I'm happy. :laugh: Linux Quite Different From Windows, But Same Under C# Think about that. The two environments (windows & linux) are quite different but all of these things work via C#. It is amazing. I'm so infatuated with this right now. Visual Studio Code and Dot Net Core are so cool. :thumbsup::thumbsup::thumbsup::thumbsup::thumbsup: EDIT - More libraries tested Just came back to say that I've now tried:System.Net
- HTTP web communication, retrieve web pages, etc works great.System.Threading
- Thread stuff works over here on Linux. Maybe we all expec -
I've been running Ubuntu exclusively on my home computer for at least 6 months now. I have dual boot but I never boot into Win10 any more. During the Stay-At-Home order I've been WFH (work from home) for over 5 weeks now. I use Remmina[^] to remote into my work computers (Win10) from my Linux machine -- Remmina actually works better than mstsc (RDP). Dot Net Core Anyways, I have had .NET Core on the machine for a while and Visual Studio Code, but yesterday I started testing out functionality by writing little command-line programs. Visual Studio Code allows you to step through code (with the proper plugin). You can amazing things on Linux that is totally based upon your C# skills. Really cool! Feels Like K&R C Also, if you ever got a chance to do some old C programming and go thru the K&R C book I believe you will find this Dot Net Core programming world really cool. Yes, it's console-based and you have to learn dotnet commands for building and running but it is just so much fun and you can really learn about the OS by writing these little programs. Coverage Let me give you some examples: The Generic collections
System.Collections.Generic
are all there. You can do Linq (System.Linq
) You can do crypto and hashing (like SHA-256) usingSystem.Security.Cryptography
. You can do all the IO (files, folders, etc) stuff withSystem.IO
.System.Diagnostics
to get Process info is there. And theSystem.Environment
stuff is all there (ie How long has OS been running, what is machine name, and so much more). These are just the ones I've tried there is much more. Of course,System.Windows.Forms
does not work at this time, but think of this as K&R C and you'll be happy. I'm happy. :laugh: Linux Quite Different From Windows, But Same Under C# Think about that. The two environments (windows & linux) are quite different but all of these things work via C#. It is amazing. I'm so infatuated with this right now. Visual Studio Code and Dot Net Core are so cool. :thumbsup::thumbsup::thumbsup::thumbsup::thumbsup: EDIT - More libraries tested Just came back to say that I've now tried:System.Net
- HTTP web communication, retrieve web pages, etc works great.System.Threading
- Thread stuff works over here on Linux. Maybe we all expecI've been using Visual Studio Code and Dot Net Core (now 3.1) on a Mac for about 3 years, since my only Windows machine back then wasn't handling life well at all, and I really like the eco-system (I started off data mining files produced with ISP outage data using LINQ, Regexes etc so I could tell my ISP in no uncertain terms, there were problems) .. I use [GitHub - natemcmaster/CommandLineUtils: Command line parsing and utilities for .NET](https://github.com/natemcmaster/CommandLineUtils) for Command-Line parsing btw I've since expanded my concept of a Command-Line program with the same eco-system, but adding Dependency Injection/IoC with Microsoft.Extensions.DependencyInjection, which means logging is 'easier', and I've been going to the 'async' side where possible as well.
-
I've been using Visual Studio Code and Dot Net Core (now 3.1) on a Mac for about 3 years, since my only Windows machine back then wasn't handling life well at all, and I really like the eco-system (I started off data mining files produced with ISP outage data using LINQ, Regexes etc so I could tell my ISP in no uncertain terms, there were problems) .. I use [GitHub - natemcmaster/CommandLineUtils: Command line parsing and utilities for .NET](https://github.com/natemcmaster/CommandLineUtils) for Command-Line parsing btw I've since expanded my concept of a Command-Line program with the same eco-system, but adding Dependency Injection/IoC with Microsoft.Extensions.DependencyInjection, which means logging is 'easier', and I've been going to the 'async' side where possible as well.
-
Next, you could run web sites and console apps as services using systemd. Some of us are being paid to do that :)
-
I've never published to a hosting site as most of my work has been backend ( we host our own site and services ) and I never got involved with the rest - I'd like to push what I've built to a public hosting company just for the hell of it - can you give me any hints as to how one goes about doing this ?
"We can't stop here - this is bat country" - Hunter S Thompson - RIP
pkfox wrote:
can you give me any hints as to how one goes about doing this ?
My experience is limited, but here is what I've done. 1. get a DigitalOcean droplet -- mine is $5/month and runs Debian. The first time I set one up, it took 5 minutes. I'm not kidding. Only 5 minutes and I had never done it before. DigitalOcean is very cool. Just follow the wizard...Droplets on DigitalOcean - More than just virtual machines[^] 2. install dotnet core on your droplet. Follow microsoft's instructions: Install .NET Core runtime on Windows, Linux, and macOS - .NET Core | Microsoft Docs[^] 3. use your Visual Studio Code editor locally to create and build and test the code you want to run on the droplet. 4. move the code up to the droplet and run it. Now, there are some more advanced things you'll need to learn like exposing a ASP.NET Core MVC to the outside world (via nginx) and that will be more difficult. But if you have console based apps they will run with the first 4 steps above. Let me know your results. I'm very interested.
-
I've been running Ubuntu exclusively on my home computer for at least 6 months now. I have dual boot but I never boot into Win10 any more. During the Stay-At-Home order I've been WFH (work from home) for over 5 weeks now. I use Remmina[^] to remote into my work computers (Win10) from my Linux machine -- Remmina actually works better than mstsc (RDP). Dot Net Core Anyways, I have had .NET Core on the machine for a while and Visual Studio Code, but yesterday I started testing out functionality by writing little command-line programs. Visual Studio Code allows you to step through code (with the proper plugin). You can amazing things on Linux that is totally based upon your C# skills. Really cool! Feels Like K&R C Also, if you ever got a chance to do some old C programming and go thru the K&R C book I believe you will find this Dot Net Core programming world really cool. Yes, it's console-based and you have to learn dotnet commands for building and running but it is just so much fun and you can really learn about the OS by writing these little programs. Coverage Let me give you some examples: The Generic collections
System.Collections.Generic
are all there. You can do Linq (System.Linq
) You can do crypto and hashing (like SHA-256) usingSystem.Security.Cryptography
. You can do all the IO (files, folders, etc) stuff withSystem.IO
.System.Diagnostics
to get Process info is there. And theSystem.Environment
stuff is all there (ie How long has OS been running, what is machine name, and so much more). These are just the ones I've tried there is much more. Of course,System.Windows.Forms
does not work at this time, but think of this as K&R C and you'll be happy. I'm happy. :laugh: Linux Quite Different From Windows, But Same Under C# Think about that. The two environments (windows & linux) are quite different but all of these things work via C#. It is amazing. I'm so infatuated with this right now. Visual Studio Code and Dot Net Core are so cool. :thumbsup::thumbsup::thumbsup::thumbsup::thumbsup: EDIT - More libraries tested Just came back to say that I've now tried:System.Net
- HTTP web communication, retrieve web pages, etc works great.System.Threading
- Thread stuff works over here on Linux. Maybe we all expecraddevus wrote:
Of course,
System.Windows.Forms
does not work at this timeUntil we can run GUI apps (WPF and Winforms) in Linux, I won't consider .Net Core to be "cross-platform".
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013