Source: https://www.nagc.org/sites/default/files/standards/Intro 2019 Programming Standards.pdf