プログラミング
バグだらけのプログラムは使いものにならないため、デバッグは重要である。C言語やアセンブリ言語などは、慣れたプログラマであっても、バッファオーバーランや不正なポインタやメモリの初期化忘れ/解放忘れといったバグを作りこみやすい。バッファオーバーランは隣接するメモリ領域を破壊し、全く関係ない箇所でプログラムに異常が発生する原因となる。このため、C言語やC++でのプログラミング向けに Valgrind、Purify、BoundsChecker といったメモリデバッガが開発されてきた。
Java、C#、PHP、Python といった言語にはそのような問題がほとんどないが、性能は低い。ただし、データベースアクセスやファイル入出力が性能を決定付けるような分野では、これらの言語の性能でも何ら問題ない。また、最近ではこれらの言語の処理系でも性能が向上してきている。
情報処理技術者試験 - 経済産業省所管の独立行政法人である情報処理推進機構(IPA)が実施する国家資格。 基本情報技術者試験 - 例年、午後科目で擬似言語を用いたアルゴリズムに関する問題が必須解答問題として出題される他、選択必須問題としてC言語、Java、Python、アセンブラ言語、表計算ソフトのいずれかの言語に関する問題が出題される。現在は表計算ソフトが選択可能になったため必ずしもプログラミング言語の習得は必要ではなくなったものの、こちらはマクロ定義の内容も出題されており、やはりアルゴリズムの知識や論理的思考力が要求される。 応用情報技術者試験 - 午後科目で自由選択制の問題としてプログラミングに関する内容が出題される(2014年春期までは選択必須問題であり、プログラミングまたは経営戦略のどちらかを必ず選択する必要があった)。前身のソフトウェア開発技術者試験では必須問題だった。 プロダクションエンジニア試験 - 午後試験では複雑なアルゴリズムを主に多岐にわたるのシステム設計技法が多数出題されていた。