Шпаргалки — это небольшие словари кода, с помощью которых можно быстро проверить синтаксис или концепции кодирования. Но делают ли они вас лучшим программистом?

Если вы программист, скорее всего, вы сталкивались с так называемыми шпаргалками. Это схемы с часто используемыми командами, понятиями и синтаксисом для определенного языка. Хотя я всегда избегал их, насколько мог, теперь это первое, на что я обращаю внимание при изучении нового языка или концепции. Ниже приведен пример, показывающий шпаргалку Docker, содержащую команды интерфейса Docker CLI:

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

Ограничения шпаргалок
Причина, по которой я всегда избегал использования шпаргалок, заключается в том, что они содержат лишь ограниченный объем информации. Они неполные. Имея под рукой документацию или Google, я смогу найти официальную документацию с примерами кода, которые помогут мне лучше понять концепцию или синтаксис. Это вещи, которые шпаргалки не предоставляют.

Более того, если мне нужно использовать определенную библиотеку (скажем, pandas в Python), мне лучше использовать шпаргалку этой конкретной библиотеки, а не общую шпаргалку Python. Это означает, что я сначала должен найти его, что также требует времени. Не так много, но это все же дополнительные усилия, и я предпочитаю иметь официальную документацию.

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

В книге Мозг программиста Фелиен Херманс (Мэннинг) автор утверждает, что начинающие и продвинутые программисты по-разному читают и запоминают код. Что помогает вам запоминать код, так это активная и повторяющаяся практика понятий и синтаксиса кодирования. Плохая новость заключается в том, что без постоянной практики информация, хранящаяся в вашей долговременной памяти, заменяется другой информацией, что приводит к тому, что вы забываете то, что выучили.

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