Improving Pedagogy of Computer Programming Through Orthogonal Skill Isolation | Synapse