// Почему программист лучше шахматиста?

Однажды, сидя ночью за очередным проектом, попивая крепкий чай и слушая фоном приятную музыку. Я стал приходить к мысли, что создавая проект - я играю в шахматы сам с собой.

Что казалось может быть общего у программиста и шахматиста, подумаете вы. На самом деле очень многое их объединяет, а в некоторых моментах программирование даже лучше.

Начнем с того, что разложим на простые составляющие шахматы и программирование:

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

В шахматах главная задача обыграть соперника, а в программировании главная задача обыграть самого себя (да да, борьба идет с самим собой). Сложнее всегда играть против себя, так как все ходы известны на 100 или даже на 1000 шагов вперёд.

Однако преимущество партии в шахматы над разработкой в том, что в среднем партия длится не дольше получаса, а вот разработка продукта, пускай даже и самого простого, может занимать недели.

В отличии от шахмат, в программировании нет правил, которые могли бы в чем-то ограничивать, главный ограничитель только в голове. И поэтому перед тем как написать хотя бы строчку кода, ты в голове должен воспроизвести ее алгоритм, пройтись по нему от и до, а так же запланировать, как дальше ты будешь использовать ее в проекте.

И чем больше таких строчек, тем более сложный алгоритм прогоняется сперва в голове, а потом переносится на язык кода. И ровно, как и в шахматах мы не уследили за ходом соперника, так и в программировании мы не уследили за ходом собственных мыслей в процессе формирования алгоритма. Результатом этого становятся бесчисленные ошибки, зависания и прочие страшные слова для программиста. По сути, программист проигрывает сам себе в этой игре разума.

И именно поэтому, практически у любого программиста склад ума не хуже, чем у шахматиста. Программисты думают дальше, чем видят другие, и они очень часто бывают недопоняты, так как по привычке выдают результат своих размышлений, а не путь который они сделали, для получения этого результата. Будьте снисходительны к программистам, они просто думают иначе =)

4 комментария

А вы не вкурсе , партия в шахматы может идти годами ?

1
Ответить

В курсе, именно поэтому и написал, "что в среднем партия длится до получаса". )

Ответить