Pair programming improves student retention, confidence, and program quality | Synapse