Variations on a Theme: Repeated Code Is a Mistake 1 intro 2 inspire 3 MJD_q1 4 obsess 5 MJD_q2 6 mode_present 7 rule_of_thumb 8 dp_report 9 data_presenter 10 get_data_count 11 print_data_count 12 diff 13 design_interface 14 design_engine 15 side_benefit 16 synthetic_var 17 print_screen_file 18 print_screen_engine 19 wrapper_engine 20 mall_ins 21 4_cases 22 prof_eng_1 23 prof_eng_2 24 prof_subeng 25 polymorph_deferred 26 sub_to_mod 27 myfirstmod 28 directory_tools_interface 29 limitations 30 timerecorder 31 profiler 32 control_slide_order 33 cookbook 34 list_compare 35 oop_intro 36 inheritance 37 DP_inheritance 38 why_subclass 39 constructor 40 initializer 41 interface_polymorphism 42 inheritance_polymorphism 43 polymorphism_another 44 polymorphism_under_hood 45 mall_polymorphism 46 list_compare_polymorphism 47 args_for_initializers 48 conclude1 49 conclude2 50 conclude3 51 conclude4 52 end