/bin/sh. Despite the amalgam of different versions out there, every shell found at
/bin/shmust implement at-minimum the POSIX standard. The implementation of which strictly defines the base functionality that must be present for programmers. While shell maintainers are free to add features that go above and beyond the POSIX standard, targeting the core POSIX functionality allows maintainers to present you with a common interface, portable to many similar environments.
/bin/shis often a version of the Bourne Again Shell (bash) while on FreeBSD and many versions of UNIX
/bin/shdoes not support the higher-level features of bash.
/bin/shmaximizes portability and usually is done with a specific purpose in-mind. Code that runs in a restricted environment with few dependencies, for example, can benefit from using strict POSIX
/bin/shcode in the event more capable languages such as Python or Perl may not be available.