Ну, с Днём Науки! (в СССР он был третьим воскресеньем апреля)
Гипотеза лингвистической относительности Сепира-Уорфа однозначно верна для многих людей и в программировании: языковая структура формирует мышление человека и способ познания им реальности мира.
Всякий раз, когда я пишу какие-то заметки по императивщине или ООП (скоро в вк будет подробный разбор, какие неприятные семантические запутанности неявно вносятся в код при использовании null, и что с этим делать), курсанты нередко пытаются мне это "объяснить". Типа, я просто не понял какую-то фичу.
Да знаю я отлично, как это работает. Это просто то, на что я жалуюсь. Я говорю, что это запутанно и неинтуитивно, и подход ФП всегда лучше.
Но мне в ответ дают ещё больше объяснений, как это работает "правильно" )))
Да... Я знаю. И я говорю снова и снова, что то, как это работает в ООП, плохо и тупо. Мне уже не кажется -- я знаю точно, что люди изучают всё программирование на том языке, на котором они его изучают. Понимаете, о чём я? И в итоге они воспринимают подход этого языка как единственно возможный. Я пытаюсь пофиксить этот когнитивный баг с помощью треков по вычислительным моделям и ФП.
Потому что, когда ребята видят, что кто-то жалуется на что-то в их любимом языке программирования, на котором они реально мыслят, они чувствуют острую необходимость объяснить, как это работает, потому что они предполагают, что жалобы должны означать, что человек просто не понял, как это работает. Потому что если бы он понимал, то больше не жаловался бы на это; типа, такова суть вещей и по-другому быть не может.
Нет. Некоторые (немногие) из нас действительно могут научиться Программировать! Это значит понимать, что выбор конкретного языка под проект -- это всегда выбор из нескольких возможных вариантов, и что некоторые варианты существенно лучше, чем другие.
=
Программирование -- это мышление + синтаксис. Может быть, 90% мышления и 10% синтаксиса. Если синтаксис можно автоматизировать, то научить правильному мышлению можно только того, кто умеет думать.
Post #1175
1.36K

- ❤ 52
- 👍 26
- ❤🔥 4
- 👏 1
- 🫡 1