I keep seeing this come up and every time I look it up I never get a good explanation of what it is or what it means to me.
What is POSIX compliance? How does assuming my program will only be run on POSIX-compliant machines simplify things for me as a programmer? Does it even?
POSIX defines a set of C headers, System Interfaces, a Shell Command Language and Utilities, that a conforming system must implement.
As a developer, you can rely on these standard interfaces being available on every POSIX system. If your program uses the standard interfaces, it can operate on all POSIX systems.
Porting across non-standard systems is more work, as the system interfaces e.g. for multithreading or networking are different.