Помню когда деревья были маленькими а Quake вышел только первый, будущие программеры вместо того чтобы учиться часами гоняли по сетке deathmatch в лабе. И вот однажды препод по объектно-ориентированному программированию, расстроившись отсутствием людей на своей лекции, пошел в лабораторию... И вместо "всех завалю" сообщил любителям FPS, что внутри Quake есть объектный язык Quake C и встроенный компилятор, и пообещал показать как сделать самонаводящуюся ракету, реалистичную модель огнемета и джетпак. "Играть - удел юзеров, творить - привилегия программистов!". С тех пор у мужика на лекции был аншлаг, вместо унылых интернет магазинов мы пилили коммуницирующих ботов, самонаводящиеся пушки, оптимизирующие расход патронов, модель горения стенок и прочее. Естественно, с разделением консернов, компонентизацией, автотестами и т.п. Собственно играть в игру стало не интересно... Только теперь проработав без малого 20 лет в индустрии и заколебавшись с юниорами по самое не могу, я понимаю насколько гениален был этот препод.