プログラムはコンピュータが開発されたと同時に開発されたものです。当初はコンピュータが理解できるようにマシン語と呼ばれる言語で書かれていましたが、マシン語は細かく制御できる反面、人間が読みづらい言語です。そこで高級言語として人間が読みやすく、書きやすいプログラミング言語が多数利用されています。プログラミング言語は文法、構文、変数の扱いなどそれぞれの言語で異なり、また、書き方についての自由度もかなり異なります。
システム開発ではプログラミング言語を選ぶ際にコーディングの早さ、人員確保の難しさ、保守性の高さなどを考慮して選ぶことが多いようですが、特に長期間の運用が必要な場合には保守性の高さを重視した人員確保が行なわれるようです。システム開発においてプログラマの能力はコーディングの早さも必要ですが、仕様書に則った書き方ができるかも重要となります。システムは複雑なモジュールの連結によって作られていますが、仕様書通りのプログラムになっていない場合設計者が想定してない動きが発生し、問題となります。家を建てる場合と同様に設計で考慮されていることは建つという以外にさまざまな障害を想定して作られているので作る段階での変更はご法度となります。
もちろん、仕様書内での速度向上やエラー対処の追加などは問題とされないのですが、途中参加の人員がよく行ってしまう場合が多いと言われています。システムは共同作業で作り上げるものなのでルール遵守は重要となります