Live data from Hacker News

Cull your dependencies

tomrenner.com

131–132 of 132 posts

Re: Cull your dependencies

#131
post #107

Earlier quoted context omitted.

> The corollary to "Minimize code ruthlessly" is "Roll your own X". Sure Heartbleed was bad, but are you going to write your own TLS library? But using "don't roll your own crypto" doesn't generalize to using every possible library to avoid writing any code. Down that path lies the madness of leftpad. Crypto and security protocol implementations are exceptionally difficult to write in a way that avoids all exploits,…

My counter-point is twofold. Everyone understand not to roll your own crypto not because developers intrinsically know crypto is hard but because of sustained marketing by cryptographers. It's an easy counter to point to when people swing too far into NIH. Following that I think a lot of people don't realize when they are in over their heads; it happens a lot in software estimation. It's easy to look at something lik…

"Don't use OpenSSL unless you absolutely have to. Preferably, disable every other feature you don't need. And keep all of your vendored dependencies up-to-date."

Re: Cull your dependencies

#132
The problem is that when you write the functionality yourself, you’re likely to be subject to the same number of, if not more, bugs per 1000 lines as mentioned in the article, especially if the project has a deadline to meet. Using unnecessarily bloated libraries might be a bad choice, but in general I think it is indeed a good practice to use libraries that are widely adopted and well rated in the community.

Also not sure if the Java world and JS world are that different to the rest, though in the community of Elixir which I work with, “bloated” libraries are practically nonexistent, which I think should be similar for most functional languages.

Post reply on HN