🔥

Тред (Александр Нозик)


В продолжение утреннего треда, возвращаемся к программированию. Дело в том, что у каждой программной экосистемы есть если не философия, то идеология. В большинстве случаев, это не "официальная позиция" а просто некоторая совокупность взглядов большинства членов сообщества.

С++: разработчик - бог, мы даем ему все инструменты, чтобы он мог при их помощи сотворить все, что хочет.

Python: написать программу должно быть легко. Все инструменты должны быть в шаговой доступности и максимально быстро подключаться.

Java: безопасность для больших проектов и поддержка тулинга.

Kotlin: прагматичность. Каждый инструмент должен быть востребован и желательно больше, чем один раз.

Разумеется, тут нет четких границ, бывают разные проекты и разны разработчики. Но в целом, разные экосистемы придерживаются разных систем ценностей, если угодно разной этики (см. дискуссию выше... или в твиттере это ниже).

Мне кажется, что философией программирования можно назвать изучение этих концепций, их сопоставление и выводы о том, чего тут не хватает. Разумеется речь не только о правилах экосистем, но и о так называемых best practices: изоляции кода, модуляризации и так далее.

Про Go забыл. Идеология Go - не сломай! Это во многом правильная идеология и именно поэтому язык так популярен. Но проблема в том, что неломаемость плохо сочетается с гибкостью.

Александр НозикАлександр Нозик