Live data from Hacker News

Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

rust-lang.org

31–40 of 307 posts

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#31

> ““Java was excluded from consideration because of the requirement of deploying the JVM and associated libraries along with any program to their production servers. This was an amount of operational complexity and resource overhead that was as undesirable as the unsafety of C or C++.” To me this reads like someone has a chip on their shoulder to demand that Rust be viewed as generally superior instead of merely bein…

> Referring to deploying the JVM as “operational complexity” or referring to C or C++ as “unsafe” both strike me as insecure, defensive attitudes.

Calling their attitudes "insecure" sounds petty to me. The engineering rationale was laid out and makes sense, especially if you apply a little charity and read that the JVM operational complexity was undesirable TO THEM.

If your org has JVM deployments already with experience managing at scale then this argument against Java is not valid.

> If not, then you might use a different language

That's what they decided to do and then got slammed for.

> Regardless though, these feel like non-sequitur, pejorative pot shots to characterize Java, C or C++ in some type generic bad light, as if those tools are a priori conceptually bad, which is a silly point of view.

Maybe try reading their reasons again, and assume they are talking about their org, use case, and engineers and not everyone else.

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#32
post #13

For all this talk about performance, are there any benchmarks anywhere? Also, is there any blog post or anything by npm itself that this is sourced from?

It was sourced by taking to npm directly; they signed off on the final text as well.

They have spoken about this publicly before; it was in their newsletter when they first deployed it, and there’s been a couple of conference talks.

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#33

> ““Java was excluded from consideration because of the requirement of deploying the JVM and associated libraries along with any program to their production servers. This was an amount of operational complexity and resource overhead that was as undesirable as the unsafety of C or C++.” To me this reads like someone has a chip on their shoulder to demand that Rust be viewed as generally superior instead of merely bein…

[deleted]

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#34
post #5

Title could be improved, as I was wondering if the command line tool npm had itself been rewritten. It’s actually one of npm’s web services that was rewritten. FTA: “Java was excluded from consideration because of the requirement of deploying the JVM and associated libraries along with any program to their production servers. This was an amount of operational complexity and resource overhead that was as undesirable a…

To me it reads as "We didn't want to use Java".

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#35
post #5

Title could be improved, as I was wondering if the command line tool npm had itself been rewritten. It’s actually one of npm’s web services that was rewritten. FTA: “Java was excluded from consideration because of the requirement of deploying the JVM and associated libraries along with any program to their production servers. This was an amount of operational complexity and resource overhead that was as undesirable a…

Well, speaking from experience with a JBoss application layer in a recent software project I worked on: New java versions do break existing libraries or apps, and need to be tested thoroughly. When the company hasn't budgeted for that expense, it becomes difficult to update. Often an architect or software team will insist on using the Oracle JVM rather than the included openjvm. That adds extra steps to download, sto…

Not convincing enough.

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#36
post #5

Title could be improved, as I was wondering if the command line tool npm had itself been rewritten. It’s actually one of npm’s web services that was rewritten. FTA: “Java was excluded from consideration because of the requirement of deploying the JVM and associated libraries along with any program to their production servers. This was an amount of operational complexity and resource overhead that was as undesirable a…

To me it reads as "We didn't want to use Java".

Agreed.

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#37
post #13

For all this talk about performance, are there any benchmarks anywhere? Also, is there any blog post or anything by npm itself that this is sourced from?

at least a source from npm: 2017 talk by Ashley Williams, an engineer at npm, as they just started to use Rust: https://www.youtube.com/watch?v=GCsxYAxw3JQ

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#38
post #26

Who wrote this? A whistleblower? One of the Rust "community" members who helped them out?

It was authored by the Rust team in conjunction with npm, like all of our white papers.

The process roughly goes: interview the user, write the paper, have them review it and fix anything they’re not happy with.

Re: Case Study: Npm uses Rust for its CPU-bound bottlenecks [pdf]

#39

This entire article is a pretty damning report on JavaScript in general, but this sentence takes the cake (emphasis mine): > The process of deploying the new Rust service was straight-forward, and soon they were able to forget about the Rust service because it caused so few operational issues. At npm, the usual experience of deploying a JavaScript service to production was that the service would need extensive monito…

> This entire article is a pretty damning report on JavaScript in general

How so?

Post reply on HN