I've been a bit "removed" from .NET lately and I've been slowly forgetting about it. It's like I grieved a loss, and now I was moving on, for lack of a better analogy. I was just beginning to get used to my new environment of Node JS and PHP. And, recently, I was put on track to complete a full project using Node JS.

And then suddenly a new company reached out to me, interested in my skills, and asked for me to build a simple .NET web app to showcase my abilities.

I got started, and holy crap I forgot how nice it was to be coding in this environment. Everything I had forgotten about switched on for me, like riding a bike. I was done with the app in a matter of hours. It was probably the most productive I've been with a coding assignment in forever. I was beaming with pride at the fact that I could code so fluently despite some time away. Everything here just made sense to me.

After I submitted it to the company for review I sat back and thought, damn, do I have to go back to Node/Express JS? I barely have any experience with it 😂. The only reason I know anything is because I watched a 20 minute quick tutorial on how to build an API. That's it.

I really want my current company to give me projects that are in my preferred language and they aren't and that's killing me right now. I can learn, that's not a problem, but my effectiveness as an employee is completely shot by not allowing me to build in code that I know and understand. I was fuckin hired for my specific coding experience, why not take advantage of what I know?

I should say something to my manager but I know they will just tell me no because they want it to be built in Javascript as it's the preferred language of the Gods.

Joking aside, I don't think they will go for it because it is another language that they would have to manage and maintain if I ever leave.

Oh well 🤷

  • 8
    That's why I hate the JS everywhere concept. You can boast of Node.js performance but I'll never trade that little performance gain for an elegant code which ages well. Also Node.js apps are really a pain to maintain in the long run. There is always something broken with each new update to a npm package. And you just get tired of keeping up the pace with these updates.
    Whereas .Net, PHP and Java all have one advantage that's long project life. I'll never prefer Node.js over these three.
    Even if I have to go Node.js why not choose Golang which gives you truly a performance beast of an app.
  • 2
    Same. I joined a Python shop wanting to see what the hype is about. It only solidified my appreciation of dot net. The tooling around dot net is just so much more productive
  • 1
    I’m sorry that you have to use JS and PHP. I know that feel. I am slowly moving into golang, but I do miss C# some times.
  • 5
    @themissingbrace Any speed you get in node is not due to js, but due to most libraries are built to be very good as a web backend using often very functional and asynchronous calls (enforced by the single thread design of node)

    Those benefits can be done in an language if you know why it works and using net6 you get something vey similar that is also blazingly fast while still being c#.
  • 1
    @Voxera I find the performance argument really weird. The being bound to a single thread thing makes it the worse environment for performance.

    I do like performance being an afterthought. Just a side-effect of good design. That said I think node has no place, Deno might have a place somewhere but just trying to force JS everywhere so web developers only need to learn one language is just wrong.
  • 1
    @hjk101 I agree but when node js came out it actually was fast but I think that was mostly because many alternatives was slow, like php, vbscript and such.

    And while you could build fast code in c# it also was quite easy to do stupid things that cost performance.

    The functional approach and very clear async prevented much of that since bad design in node was SO much worse you just could not get away with it :P

    You HAD to do it right to get any performance and got a decent one once you got any :)
  • 2
    @Voxera damn I just checked and saw that it was released in 2009! Can imagine that it was way faster back than compared to a lot of popular solutions. Same as nginx was way faster than Apache because it was not worker based.

    I got exposed to it much much later. Had a manager (who could also code) push for it by doing a demo with redis. It was super fast.
    I rebuilt the thing in PHP (7 using workerman). It outperformed the node solution and when I saw some timing sensitive handling, proved that the original code was buggy... That was the end of that discussion.
  • 2
    @hjk101 and php have been getting MUCH better performance during the last 10-12 years ;)
Add Comment