The problem isn't the programmers, it's the specs. Most specs are terribly written, and are hundreds or thousands of pages longer than they need to be.
Go read the latest USB Power Delivery spec. Or the BLE spec. Or the HEVC/H.265 spec. You will very quickly want to claw your eyes out.