I find myself preferring node over .NET
Am I the only one?
Frequently I start a project in C#, only to get frustrated and switch to Typescript and Node. This is an easy decision if the underlying problem I am trying to solve has an equivalent API in both .NET and NodeJS. (I am working with the bot framework as an example).
I have some very good reasons for preferring node over .NET
- I find npm far better than nuget, although neither are perfect. But npm feels more stable, and less black boxy. Sure I realize this may be level of familiarity etc. But I have been a C#/nuget monkey since pretty much C# and nuget have been around. I’ve spent enough time with both, but I seem to prefer npm’s stability over nuget (I know, npm’s stability .. laugh!)
- Node feels faster. I know with .NET core you can outstrip node’s performance. However, I feel once you start adding things to a .NET core app, it tends to get slow also. .NET core is fast because everything is opt-in, once you opt-in .. so lets say, .NET Core .. jury is still out on it. But .NET 4x is sloooooowww compared to Node.
- Node is far more mature than .NET core. This means, there is a node module for everything out there, can’t say that about .NET core .. yet!
- Typescript — I find it’s dynamic nature better than C#. C# feels monolithic, requires a build/compile, feels 10 years ago. Typescript is all the advantages of JavaScript, with none of the disadvantages of JavaScript.
- NodeJS projects are cross platform, while C# requires me to start Visual Studio proper (at least .NET 4x), and that means full blown Visual Studio on Windows — I am locking in my work to requiring a PC. NodeJS, .. means VSCode on Mac with a nice terminal.
- And yes, VSCode versus Visual Studio, man the speed and flexibility of VSCode makes me not look forward to Visual Studio.
I know, a great problem to have, when you have to pick between VSCode and VStudio, or Node vs .NET … but if I really really really really had to make this choice between a ferrari and lamborghini, a pizza or hamburger, chocolate or ice cream, … I think I prefer VSCode with NodeJS over VStudio with .NET.
What do you prefer?