Writing software applications will inevitably bring developers to the point where they will have to implement something that already exists. Reinventing the wheel is generally a bad idea unless we have some extremely specific and strict requirements that no library in the world satisfies, or if there is good reason not to include a specific dependency in our project.
People write libraries to deal with all kinds of problems in software. In a community such as the open source community, libraries are shared and everyone can use or contribute to them. This brings a lot of benefits, and the main benefit is that code becomes more mature, better tested, and more reliable. However, sometimes this also makes things harder—many ...