This is a Canonical Question about when to use packaged software and when to build and install it yourself.
When should I install software from packages provided by my OS distribution, instead of building and installing it myself from source? When is it better to build from source?
You should use your distribution's packages unless you have a good reason not to. Using the distro's packages gives you important benefits:
If you need to use a newer version of some software than your distribution provides, or enable a feature that has to be compiled in, you may be able to find more up-to-date or featureful versions of the package from community repositories. Remi's repos are a well-known example, offering among other things much more up-to-date versions of PHP than those that ship with RHEL/CentOS. Using a community repository gets you many of the advantages of the OS repos, but at the risk that the author is releasing malware which you then install, with full privilege, onto your system. You will have to make the risk/reward judgement yourself, on a case-by-case basis.
If neither of those alternatives works for you, you will need to compile from source. When compiling software from source code, the recommended route is to create your own binary packages. Building your own packages allows you to:
Since that makes you the package maintainer, you will need to subscribe to the relevant security mailing lists so you won't miss any critical bugs and security updates.
If you do end up installing locally-built software without packaging it, GNU stow can help to keep it well organized and make it easier to cleanly uninstall.
I like Andrew's response.
I want to point out a specific to add on to Andrew's comment about "better integration." If you install an application from source (a dependency of a future project), and later try to install a package from a binary (e.g., a deb or rpm package), that package may not recognize that a dependency is installed. Had you installed the initial dependency application from an RPM or DEB package, the future package would know it was installed. Using the same package method (e.g., yum, pip, rpm, etc.) is a best practice. Installing from source is yet another method. So the ease Andrew is talking about is a serious consideration.
I want to add that "create your own binary packages" has a benefit of logging the installation process. Installing from source files doesn't have the benefit of logging.