0

C# (or similar) Pros,

It's very possible that this post gets moved elsewhere as I have not posted before. I spent 2 years learning React, Next.js, Express, JavaScript, and PostgreSQL, and I have decided to refocus my efforts on really learning programming more deeply with a switch to C#, .Net, ReactJS, and possibly Blazor WASM later.

As I have been researching this for a while to determine if I was going to go the Java 17 route or C# 10+, I decided on .Net and C# with a goal of landing this type of role in the past. I like Java, too, but I decided C# seemed cleaner (to me).

My question is related to the development environment. I developed a website with the JS technologies using an Ubuntu 20.04 VM inside VMWare WS Pro, and I am not sure I want to go this same route. I want to learn to do some of the things I did not do before like setting up separate environments for development, staging, and production for websites.

I have been trying to determine how to set up the environment for C# and .Net using my existing Windows 11 laptop. I have plenty of power, and I would ideally like to code without VMs. Also, I'd like to be able to give VS a try instead of VS Code. Please also note that I am not married to Windows and would consider Mac since it has VS for Mac now.

I looked at Docker Desktop, Windows VDA licensing, and .Net 5 / 6 running simultaneously on the laptop. Mentally, I didn't fully understand most of those configurations.

I'm hoping there is something that I am missing in a better way to set this up to code C#, ReactJS, and MongoDB so that I don't mix too much with my personal PC settings and environment.

How would a professional C# developer set up using only their Windows laptop to keep the development environment(s) separate from the personal while using the same??

I appreciate any ideas offered.

James.

2 Answers 2

1

Nice first question. As a C# developer myself i will advise you to begin using Docker for your development. And if you dont want to use VS Code you can look at Visual Studio Community Edition. This is the free to use VS if you're using it for yourself, otherwise take a look at the usage part. An begin using Git (Github/Gitlab) to store your code.

And at this time i should suggest you to start developing in .net 6 as this is the latest LTS version of .net. Visual Studio is also capable of creating Dockerfiles for you that you can use for creating containers, if you use the right project type (Web).

Sign up to request clarification or add additional context in comments.

1 Comment

Thank you for you insight. I will be looking at Docker through this week to see how I might use it implement this with my learning. I already use GitHub, but I won't to learn to become a professional developer in some of my downtime, so I'll try to use it more fully. VS Community Edition is definitely what I want to use at this stage of my learning. Thanks.
1

In my opinion, It's very common to use a virtual machine or docker to separate the development environment from the personal environment on the same PC, But if you don't want to use them, I think you can create another user to login windows as your development environment, Their development environment is not shared (of course you can set them manually). In Asp.Net Core you can also set multiple environments. Refer to document.

1 Comment

I appreciate the insight. I think I'd like to try the Docker route as it might be easier than continually creating new VMs. I like the user login idea, but I usually like to have my personal side of the computer visible. This might not be right for me, but I could be wrong. I am definitely going to refer to the document as it seems very interesting as a feature. Thanks for this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.