229 private links
Most of the time when fighting the compiler it is actually exposing a design flaw. Similarly, if your code gets overly verbose or looks ugly, there’s probably a better way. Declare defeat and learn to do it the Rust way.
Baby steps: avoid to make it too hard on yourself in the beginning.
You can be sloppy in other languages, but not in Rust.
And other useful tips, among them:
Don’t Use Other People’s Crates While Learning: A poor personal version is better than a perfect external crate (at least while learning). Write some small library code yourself as an exercise (except maybe serde and anyhow).
A framework similar to Express (JS) in API design
When JS tools are written in other programming languages, it increases the barrier to contribute in these tools. The contributors need to know a second language.
A rewrite in another language is already a rewrite, which means things will be better built.
Node performance is often slow, but it works without cache... Let's try export NODE_COMPILE_CACHE=1 first.
Moreover JS is easily debuggable.
Negative experience:
- the steep learning curve for Rust
- the bevy engine gets regressions in some releases, or the API is unstable.
Option has zero cost with Some types in memory.
"Simple molecular dynamics"
On average, there are more than eight changes per hour in the source code, which has grown to over 40 million lines of code. Errors also occur: according to Kroah-Hartman, there are 13 CVE reports per week. Due to the widespread use of Linux, this number is alarming. Although errors are human, they require the source code to be checked by other developers. However, the use of Rust could reduce this workload.
Note that this tool is originally a fork of BurntSushi's xsv, but has been nearly entirely rewritten at that point, to fit SciencesPo's médialab use-cases, rooted in web data collection and analysis geared towards social sciences (you might think CSV is outdated by now, but read our love letter to the format before judging too quickly).