Reverse engineering: is it art?

W e offer an elective class in reverse engineering of binary software. In the spring of 2010 the class was approved as a regular offering and this past spring the course was taught for the third consecutive time. We discuss the course format and evolution with respect to student background, class performance, and learning abilities. Empirical observations suggest that teaching reverse engineering is like teaching art– students either get it or they don't. We discuss several challenges and offer potential solutions in imparting the technically advanced skill (or maybe art) of binary reverse engineering to seniors in the computing field.