____________________Practice is when things work, but you don't know why.
Theory is when nothing works, but you know why.
Programmers combine theory and practice: Nothing works and they don't know why.