Should Developers Use Third-Party Libraries?

Profile Picture of Aris Papadopoulo
Aris Papadopoulo
Android Software Engineer
Two people next to a bookshelf full of books

Every new developer learns the following core principles of software engineering early in their career:

DRY (Don’t Repeat Yourself)

This acronym encourages developers to avoid code duplication and focus on configurable and reusable components.

KISS (Keep It Simple, Stupid)

Always aim for simplicity in your design by avoiding over-engineered solutions.

YAGNI (You Ain’t Gonna Need It)

Focus on your current requirements, don’t try to predict future needs

But I’d like to focus on a fourth principle, one that pre-dates software engineering:

Don’t reinvent the wheel.

This implies that you should avoid spending time and effort solving problems that others have already solved. As a developer, the most common way of putting this principle into practice is by using third-party libraries.

Originally published on Mar 28, 2020Last updated on Aug 22, 2023

Key Takeaways

Why use 3rd party libraries?

Third-party libraries allow you to save time by solely focusing on your core business, using pre-tested code that's been tested in multiple environments already, and having a chance to work with and write modular code.

How do I choose a third-party library?

Understanding your core business and which needs the third-party libraries have to fill are key to deciding which library is right for your business. There are certain questions you should answer before choosing a third-party library like “How popular is the library?” “Will the library be used for core features?” “Is the library widely used?” and is the “library open source?"

What is a third-party library?

A third-party party library is software code written by an external company or person that provides either open-source source code or private software packages, data, content, functionality, or components to use in your projects and can be connected via an API.