4 ms·
Barrier never has been lower: downloading the SDK, creating a folder, running dotnet new console, then dotnet run. Editing Program.cs then back at dotnet run. I
by tasogare 5y ago
Barrier never has been lower: downloading the SDK, creating a folder, running dotnet new console, then dotnet run. Editing Program.cs then back at dotnet run. I don't know of any language where it's as easy to get started. Also VS Code has a semi-decent support of C#.
- eska 5y agoThen you don’t know many languages.
- angio 5y agoTo be fair, on Linux, getting started with dotnet is actually easier than other languages. The packages provided by Microsoft allows to install multiple version of dotnet side by side and then you can choose which one to use project by project. This is a big improvement compared to rust or python where you have to install and learn third party tools.
- 5e92cb50239222b 5y agorustup is not a third-party tool. It allows you to install any number of Rust toolchains for any number of architectures side by side (be it stable or nightly).
- angio 5y agoThe issue with rustup is that it's not integrated in my distro package manager, unlike the dotnet packages.
- tasogare 5y agoArgument better instead of dumb personal attack. I've used/tried a bunch of languages: C, Erlang, F#, PHP, C++, Java, JavaScript, OCaml and Ruby and all had more steps to create and run an executable. Only PHP and JavaScript are simpler if and only if not using any framework.
- thomasz 5y agoPHP is way more complicated because you have to deal with apache, php.ini and what not.
- trinovantes 5y agogcc is included in most Linux distros so you don't even need to download anything Not sure how it can be any easier than gcc main.c && ./a.out
- eska 5y agoIf not knowing many programming languages is an insult to you, especially considering how many languages there are that refute your claim.. then you need to check your ego.
- jeroenhd 5y agoIt's easier to start in Python because you don't need to run dotnet new. Same with Java, you can just run java program.java and it works. I think the dotnet approach is definitely preferable for real projects, though. If you want to get a script done in Python then that's quick and easy, but if you need to manage dependencies, you run into the exact same pattern. Whether it's cargo new, python -m venv ., npm init or whatever incantation Java developers use, all these toolsets are pretty much equivalent. With IDE support (Visual Studio is great, VS Code works) the entire experience becomes much better. You can't run a quick "helloworld.cs" without creating a project, but I don't see that as a problem per se. In practice, C# isn't built for scripting so it doesn't make sense to optimise the toolchain for anything but a project approach. If you want dotnet scripts, run Powershell, that's what it's good for. The most annoying part about dotnet is the setup, specifically ensuring that telemetry is off. Microsoft insists on an opt-out, and leaves it up to you to figure out where to put the environment variable to disable their stalking. Other projects such as Flutter have the same problem.
- SideburnsOfDoom 5y ago> It's easier to start in Python because you don't need to run dotnet new. Running `dotnet new` is optional, it outputs a template "hello world" program source. It's a "yeoman" kind of tool. I can't think of any language (python or java included) that works without at least 1 line of source code present.
- DrBazza 5y agoYou can just download a JDK, and gradle, and achieve the same thing for Java or Kotlin.