Hacker News new | past | comments | ask | show | jobs | submit login

So what do you subjectively consider when making this choice?



Some examples:

  - How much work would it take to implement and maintain this if done without a library?
  - What other libraries are available?
  - Does this library meet our needs superficially, or will it be a robust solution long-term?
  - When our requirements change slightly, or we need to add or change features, will this library still work?
  - How much code architecture needs to change to integrate this? Does it require changing other parts of the program that it seems should not be required to change for the reason we are bringing this in?
  - What impact does including this have on binary size and compile time?
  - What is the risk of security vulnerabilities?
  - Does this library have its own deep dependency tree?
  - Will this require continuous maintenance to keep it in sync with other dependencies?
  - Does this library require certain system dependencies to be installed that will make the build more fragile / less portable?
  - Will using this dependency impact performance over implementing manually? (Or over another dependency)


A good dependency solves a well defined problem with a direct API towards it, so yes, if the dependencies you talk about aren't high quality then yes, don't use those.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: