How to select a programming language/ecosystem
Let's talk about why we would teach/learn something though in general:
What do we want out of a language and it's frameworks:
- simplicity, it should be simple to get started. You want to write few lines of code to get things done. Getting setup with installs and configuration should also be simple.
- big community. You don't want to pick a langage or framework that no one is using, that makes it hard to get help if you need it.
- great documentation. You will get stuck sooner or later and having great docs is important.
- a grow up story. When you pick a language or framework, it's a time investment. You are not only learning a language but you are learning the tools that go with it. For you, it should be important that you can use it for multiple areas. If you pick Iot or ML today, it should be possible to use it for say web or Cloud development tomorrow. Only you know what areas you need your chosen language/framework to support, but choose wisely.
So why .NET, isn't that closed source? So .NET core is open source, it runs on on Linux. macOS and Windows. There are great editors for all those OS's.
Isn't it hard to get started, lots of files, concepts that students will need to know? Not really, with minimal API, it has never been simpler to get started. Here's an API:
var builder = WebApplication.CreateBuilder(args);
var app = builder.Build();
app.MapGet("/", () => "Hello World!");
If you want to learn more, a 3-part learning path was just released:
Check out these LEARN modules on learning to use minimal API