Is there any surprise here? Anecdotally Node seems fast for interpreters, but of course a compiled systems language like Rust blows it away. That’s a known trade off you make when picking a technology like Node; there are plenty of other reasons to use it.
ExpressJS vs. Actix-Web: performance and running cost comparison
21–30 of 58 posts
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#22Is there any surprise here? Anecdotally Node seems fast for interpreters, but of course a compiled systems language like Rust blows it away. That’s a known trade off you make when picking a technology like Node; there are plenty of other reasons to use it.
I can only think of ecosystem size and language familiarity. Authors addressed development speed and found that Rust's static typing and compiler checks reduced development time vs JS. What other reasons did you have in mind?
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#23I understand that using Actix really highlights the speed advantage of Rust... but I think it's irresponsible to encourage rewrites in Rust using a framework that's dead because the developer decided to quit instead of fix security issues[0]. The last thing we need is a bunch of new Rust devs rewriting their perfectly fine Node code using an insecure framework. Rust is really fast, especially compared to Node. This i…
Express.js active development seems to stop. The last commit on v5 branch was from October 2018. We are still waiting for http2 (2 years) or better support for promises (3 years). https://github.com/expressjs/express/tree/5.0 https://github.com/expressjs/express/pull/4196 https://github.com/expressjs/express/issues/2761 If someone is doing a new project in node I would recommend: https://github.com/fastify/fastify ht…
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#24Earlier quoted context omitted.
I can only think of ecosystem size and language familiarity. Authors addressed development speed and found that Rust's static typing and compiler checks reduced development time vs JS. What other reasons did you have in mind?
A common language across front and backend systems is a huge benefit. I find it extremely productive to have a backend in Typescript on NodeJS, and a frontend in ReactJS, talking over a GraphQL layer where I'm autogenerating Typescript types from the GraphQL typedefs. Means I can share many libraries and tooling across the front and back ends, but most importantly it means devs feel much more comfortable digging into…
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#25Can someone ELI5 the node code sample? > full = full == "true"; Umm.. Why? > if (!!limit Not not limit? Is this due to some corner case conversion for JS to make 100% sure this gets into a boolean..? I'm sure both samples have its reasoning, I'm just not aware. Any help please?
That's basically a way to convert a stringified bool to a bool. Not the way I'd do it, and "assignee_name, summary, limit" are all declared as reassignable just to be able to reassign "full".
> if (!!limit
That's pretty common in js, not usually in if statements, but in other cases. No idea why that was done that way.
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#26I understand that using Actix really highlights the speed advantage of Rust... but I think it's irresponsible to encourage rewrites in Rust using a framework that's dead because the developer decided to quit instead of fix security issues[0]. The last thing we need is a bunch of new Rust devs rewriting their perfectly fine Node code using an insecure framework. Rust is really fast, especially compared to Node. This i…
Express.js active development seems to stop. The last commit on v5 branch was from October 2018. We are still waiting for http2 (2 years) or better support for promises (3 years). https://github.com/expressjs/express/tree/5.0 https://github.com/expressjs/express/pull/4196 https://github.com/expressjs/express/issues/2761 If someone is doing a new project in node I would recommend: https://github.com/fastify/fastify ht…
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#27Earlier quoted context omitted.
A common language across front and backend systems is a huge benefit. I find it extremely productive to have a backend in Typescript on NodeJS, and a frontend in ReactJS, talking over a GraphQL layer where I'm autogenerating Typescript types from the GraphQL typedefs. Means I can share many libraries and tooling across the front and back ends, but most importantly it means devs feel much more comfortable digging into…
How you generate the types from graphql. I noticed most of the generators create types with all optional keys. Do basically you need to check all the time...
type Foo { bar: String }
bar would be optional in the Typescript type because it's specified as optional in the GraphQL type. You would need to do the following to make it required:
type Foo { bar: String! }
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#28I understand that using Actix really highlights the speed advantage of Rust... but I think it's irresponsible to encourage rewrites in Rust using a framework that's dead because the developer decided to quit instead of fix security issues[0]. The last thing we need is a bunch of new Rust devs rewriting their perfectly fine Node code using an insecure framework. Rust is really fast, especially compared to Node. This i…
Express.js active development seems to stop. The last commit on v5 branch was from October 2018. We are still waiting for http2 (2 years) or better support for promises (3 years). https://github.com/expressjs/express/tree/5.0 https://github.com/expressjs/express/pull/4196 https://github.com/expressjs/express/issues/2761 If someone is doing a new project in node I would recommend: https://github.com/fastify/fastify ht…
Re: ExpressJS vs. Actix-Web: performance and running cost comparison
#29Can someone ELI5 the node code sample? > full = full == "true"; Umm.. Why? > if (!!limit Not not limit? Is this due to some corner case conversion for JS to make 100% sure this gets into a boolean..? I'm sure both samples have its reasoning, I'm just not aware. Any help please?