Вот случай со слепой от рождения женщиной кроме как существованием души не объяснить. Слишком много разных свидетельств, что она есть.
Но я в общем-то не об этом. Хочу поплакаться. Изучить программирование очень сложно. Нет выбрать какой-то язык и изучить его проще простого. Но люди напридумывали столько языков программирования, что изучая конкретную тему рискуешь столкнуться с незнакомым языком. А сколько разных библиотек создано. Причем библиотек решающих одну и ту же задачу. Вот изучаю вероятностное программирование. Похоже нашел всё-таки неплохой учебник, но язык который в нем использован ужас ужасный. Я посмотрел код на нем и понял что придётся серьезно его изучать чтобы понять материал. А то что язык мне не понравился, так это никого не волнует. То что этот язык практически не используется в продакшене тоже никого не волнует. Учить язык который практически не применяется, то ещё удовольствие. Хорошо, что там использован ни какой-нибудь Forth. Вообще мертвый язык. Который стал некому не нужен с появлением мощных компьютеров. Изучать программисту приходиться нереально много материала. Особенно портят дело различные фреймворки. Их не реально много. Например веб программирование требует знания нескольких языков и фреймворков. Изучить всё это в совершенстве не представляется возможным. А если изучил, завтра в моду войдет другой фреймворк и твои знания никому не будут нужны. Нет системы в развитии программирования. Бестолковый набор часто не совместимых технологий. Когда я начинал изучать программирование верхом совершенства был PC/ХТ и достаточно было знать язык C. О фреймворках вообще разговора не было. Не ходите в программисты. Наболело.