~/talk

The Unbreakable Code Whose Breaking Won WWII

Talkat RubyConf 2023 · 2023-11-13..11-15· [ruby]
slides:none on file

A working Ruby emulator reconstructs Enigma with concrete classes for keyboard, lampboard, rotor and spindle and uses MiniTest-driven TDD to prove behavior. Tests run green as the code enciphers phrases, implements rotor stepping and rollover, supports configurable sets (three or four rotors), and keeps plugboard/reflector work separate. Claims include Enigma’s 17,576 rotor positions and ~150 million million million settings and the historical estimate that Bletchley’s work shortens the war by 2–4 years.

AI-written summary · about

  1. 0:00Enigma machine and Bletchley Park
  2. 2:36Enigma encryption
  3. 10:48Enigma and OOP model
  4. 11:53OOP design principles
  5. 13:20Enigma simulation with TDD
  6. 15:45Refactoring with the Single Responsibility Principle
  7. 17:51Extracting Keyboard class
  8. 20:40Lamp Board and design
  9. 21:43Testing Enigma settings
  10. 24:53Extracting Rotor class
  11. 25:56Rotor stepping for encryption
  12. 28:48Refactoring rotor advancement
  13. 31:00Introducing Spindle class
  14. 33:13Abstracting ciphering mechanism
  15. 34:42OOP principles and Enigma’s legacy
  16. 35:46Closing remarks
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.