Истории Raph Koster, одного из создателей Ultima Online, всегда смешные и интересные. Вот, например, про абстракции.
В Ultima Online игрок по сути был контейнером. Его нельзя было открыть, но он хранил все надетые вещи и рюкзак, который в свою очередь был контейнером, который можно было открыть.
Контейнер этот по сути был картой, то есть туда можно было положить любую вещь по любым координатам.
Потом они добавили ездовых лошадей. Когда игрок садился на лошадь, то лошадь клали в контейнер внутри игрока и надевали игроку штаны, которые выглядели как лошадь (кто сказал “вагон-шапка”?).
И когда это сделали, то забыли отключить лошади лошадиные привычки. Поэтому лошадь внутри игрока начинала слоняться туда-сюда, съедать всё, что можно съесть в рюкзаке и убегать за пределы координат контейнера, что в свою очередь приводило к крэшам сервера.