The ultimate goal of any discipline is to understand and classify the objects it is studying. When studying geometric objects, an initial classification is obtained by introducing discrete invariants: numerical ones such as dimension, degree, and genus, and other more complicated ones such as the fundamental group, homology, cohomology, and higher homotopy groups. After we run out of discrete invariants, the remaining classes form continuous families (or at least we hope they do). This phase of the classification theory is called, after Riemann, moduli theory. The algebraic theory of moduli of Riemann surfaces, or algebraic curves, has witnessed decades of intensive development. Recently the moduli theory of higher dimensional algebraic varieties has started a similar journey. An interesting facet of the theory is that even if one is primarily interested only in smooth objects, it is advantageous to understand the possibly singular degenerations of these smooth objects. In this talk, I will review recent advances in the moduli theory of higher dimensional algebraic varieties and the role singularities play in our understanding of this theory.