This document outlines essential skills and concepts that IT students should be taught, including source control, bug tracking, using compilers properly, automation testing, defensive programming, and soft skills like teamwork and open source contribution. It emphasizes practical skills like maintaining repeatable processes with makefiles and serious code editing tools. Students should learn core development practices like Don't Repeat Yourself (DRY) and thinking about full project and business needs rather than just individual assignments.