This involves learning how to spot and fix errors in programs, and how to test and verify the correctness of the software.