The FHS is a Linux standard (which not all distributions follow, and which is hopelessly outdated in the GUI area at least). It is mostly codification of existing practice, as standards are prone to be. As such, you will find that other Unixy systems (BSD, Mac OS, the propietary Unices, Minix 3, ...) use similar conventions. The
/usr/local hierarchy is very old, initially it used to hold locally developed software, then with propietary Unix it became customary to install non-vendor software there (including stuff downloaded from Usenet) to keep it apart, not interferring with system updates. The GNU project popularized this use, and codified it in its installation scripts as a default (GNU was the source for decent tools for Unix up to the '90ies; particularly irritating were typically braidead vendor compilers and develoment tools in general, bad/outdated versions of vi, and a dumb shell. Jokingly it was said that the first thing to do with a new e.g. Sun was
GNU > /usr/local.).
These kids today don't know the luxury of up to date, working
tools they have at their fingertips, running on personal machines
that would have been supercomputers in our day. For free.