Self Assessment
Functionality: 2.5 The key generation still seems a bit quirky, and not completely stable. Testing assertions feel inadequate for deep analysis of random key generation. The encrypt/decrypt processes work when fed key & date however.
OOP: 3 The use of modules seems better than encapsulating everything inside the Enigma class, but maybe inheritance would have been wiser from an OOP perspective.
Ruby Conventions: 3 I follow Ruby convention & style like a brown belt giving 110% to go black.
TDD: 2.5 I followed TDD throughout the whole project, and made sure to test all methods, including modules.
Version Control: 2 I did not have the motivation to branch properly, and did not commit message like a champ this go around.