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

Я заметил у себя сварливый паттерн, пока я кодирую:
У меня проблема X. Я понимаю проблему и предлагаю логику решения X. Я реализую свой код, но это неизбежно не работает.

Хорошо, круто, я мастер дзен, поскольку я начинаю исправлять, подходя как к своему мышлению, так и к проекту с разных сторон. Я трачу 5 часов, методично работая над этим кодом, и в конечном итоге ни к чему не прихожу. К этому времени я достаточно расстроен, чтобы обратиться за помощью к техническому наставнику.

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

На этой неделе я потратил много времени на размышления об этом антипаттерне. Вот уроки, которые я извлек из этого повторяющегося сценария:

  • Доверяй себе. У тебя хорошее мышление, ты знаешь больше, чем думаешь.
  • Не думайте, что алгоритм неправильный только потому, что код не запускается сразу.

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

  1. Возьмите задачу алгоритма (фаворит - HackerRank) и решите ее на бумаге.
  2. Опишите проблему с помощью крайних случаев.
  3. Псевдокодируйте алгоритм на простом старом английском языке.
  4. Напишите актуальный код. Все еще на бумаге.
  5. Проходите строку за строкой и ищите ошибок. Четко запомните проблему и убедитесь, что ваше мышление работает.
  6. Наконец, введите его в выбранный вами редактор кода как есть и отметьте все ошибки, посмотрите, есть ли / где он сломан, исправьте свои ошибки.
  7. В некоторых комментариях разложите проблему. Напишите о своем мышлении и о том, что вы думаете о коде.

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

Посмотрите несколько моих примеров, которые я добавлю в ближайшие пару недель.

Рэйчел - разработчик и дизайнер, живущая в Окленде, Калифорния. Любит тосты, скалолазание и походы с этой дамой. Свяжитесь с ней в твиттере или через ее сайт.