Hasty Briefsbeta

Bilingual

Let's be real about dependencies

a year ago
  • #Rust-vs-C
  • #software-development
  • #dependencies
  • The article discusses the issue of dependencies in software development, comparing Rust and C/C++ programs.
  • It highlights that while Rust programs are often criticized for having many dependencies, C/C++ programs also have numerous dependencies, but they are often hidden as system libraries.
  • The author examines several real-life C/C++ programs (RViz, VLC, lighttpd, debfoster, dash) to analyze their dependencies.
  • The article points out that using libraries in C/C++ is cumbersome, leading developers to re-implement functionality instead of relying on external libraries.
  • It concludes that modern package managers like cargo and npm shift dependency management from the system to the programmer, offering more control and reproducibility.
  • The author suggests that solutions like static linking, containerization, or vendoring dependencies are trade-offs between control and complexity.