H
H
hbrmdc2015-08-19 09:12:21
Python
hbrmdc, 2015-08-19 09:12:21

Why are not all servers written in Node js?

There is NodeJS.
But if it exists, everything is possible on it, and in addition it thinks faster than Java, then why are there other server side solutions in the world of web development?
Traditions, habits and the need to support existing projects do not count. I'm wondering why new projects are not always written in Node js?

Answer the question

In order to leave comments, you need to log in

8 answer(s)
T
Timur Shemsedinov, 2015-08-19
@hbrmdc

1. Because it is not suitable for all tasks What can be written in Node.js?
2. Because JavaScript is not for everyone, people are so attached to the syntax

D
Dmitry Entelis, 2015-08-19
@DmitriyEntelis

1. Node.js has no fundamental qualitative advantages over other languages, as well as disadvantages. Just yet another language with its own idiosyncrasies. Accordingly, if in the question we replace node.js with php/ruby/python, etc., nothing will change.
The question is essentially abstract "why didn't everyone switch to the language %%%%%"
2. Answer to the abstract question:
a) Because there is a huge amount of legacy code that needs to be supported. The work on maintaining and developing the existing code is an order of magnitude more than writing a new one from scratch
b) Because the developers have their own stack of favorite technologies, which the majority are not ready to change without obvious economic reasons
c) Because smart technical managers choose a project's technology stack based on the developers at hand and the ease of finding and replacing them.
hbrmdc

NodeJS has unique and very powerful advantages that no other language has. For example, the fact that this is JS, and, therefore, there is no need to learn extra languages ​​- you can write the entire webapp in js.
Personal preference based on habits is an irrelevant argument in this matter.

1) There are differences, yes. Just not the ones you are talking about. The fact that it is "JS" does not affect anything at all.
JS is well known by front-end developers - and who will let the front-end developer into the internal architecture? There, a completely different approach is needed, different skills, a different understanding of how it all works. It is impossible to simply transfer a person from the front to the back.
In fact, the main differences are different:
Permanently living process, actual single-threading. Depending on the task, this can be both a plus and a minus. Conditionally for some kind of socket server - a plus (we actively use it on live projects). For middleware - I would think. For a loaded service with calculations - definitely not.
2) Personal preferences based on habits is the main argument.
I'm good at php, I'm good at node, I'm good at a dozen more buzzwords.
I need a new team for a new project.
I open hh and what I see: node.js 279 summaries of which half are frontend.
PHP - 9613 summary. Even if 90% of PHP developers on hh - freaks whose code should not be allowed a cannon shot - will still be 3 times more than there is node.js.
Actually, this choice is over.
In less popular languages, they write in the following cases:
a) it is a small service with implicit prospects that can be rewritten in a week
; b) it is a project "for the soul" of the developer.
It turns out a vicious circle in fact.
The manager looks at the resume, there is no resume on node.js =>
The manager will not start a project on node.js =>
There will be no vacancy on node.js =>
A developer analyzing vacancies will not see vacancies on node.js =>
The developer will learn something else =>
The manager looks at resumes, there are no resumes on node.js ...
Only very large players with market-shaping capabilities (for example, Apple and Swift) can turn the tide , and even then not with a 100% guarantee (samsung&c and Tizen)

A
Alexander Wolf, 2015-08-19
@mannaro

There is an assembler.
But if it exists, everything is possible on it, and in addition it thinks faster than the same C ++, then why are there other solutions in the world of software development?
Traditions, habits and the need to support existing projects do not count. I wonder why new projects are not always written in assembler?

U
un1t, 2015-08-19
@un1t

The language is "an amateur", to say the least, the platform is crude, there are few libraries, there are no full-fledged frameworks, the performance is low. Writing asynchronous noodles in js is a dubious pleasure, there are no special tools that support asynchrony in the language. The only advantage of the node is that it is good to collect statics on it - all sorts of grants, galps, but this is more for layout designers than for developers. On the contrary, I don’t understand the motivation of people who write web projects on the node. The node is suitable only for writing intermediate links between the backend and the frontend, which does not really give anything and does not have complex logic, but only makes a few requests to the backend and issues them to the front. And even then I would prefer another solution.

T
thingInSelf, 2017-09-04
@thingInSelf

Node.js creator : "For servers, I can't imagine a language other than Go"

N
nagibator8000, 2015-08-19
@nagibator8000

node.js is like PHP, only for servers, also one architecture for everything.

M
mafusailmagoga, 2017-10-02
@mafusailmagoga

There is NodeJS.

All your reasoning can be repeated with respect to a couple of dozen more technologies.
And why not them, why should the Node be the only tool?
Because YOU PERSONALLY like it?
So PERSONALLY FOR YOU, it may well be the ONLY tool - it ONLY depends on YOU.

R
rutaka nashimo, 2015-08-19
@rutaka_n

IMHO wherever nodejs is good, erlang will do even better and has a richer background.
for everything else there is golang, ruby, php, python, java etc

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question