Как стать лучшим программистом? Ну, есть убедительные научные доказательства в поддержку принципа преднамеренной практики. Осознанная практика — это метод развития навыков, впервые описанный Андерсом Эрикссоном в книге «Пик: секреты новой науки об экспертизе». Я бы также порекомендовал прочитать книгу Джеффа Колвина «Талант переоценен: что действительно отличает исполнителей мирового уровня от всех остальных».

Преднамеренная практика

Умышленную практику можно свести к следующим пунктам:

  • Таланта недостаточно, и чтобы добиться успеха в задаче, требуется много практики и повторения.
  • Преднамеренная практика — это тяжелая работа, чтобы укрепить свои навыки с помощью практики, вам нужно бросать вызов. Это означает, что повторение само по себе не развивает навык. Это также означает, что вам нужно постоянно усложнять свою практику по мере того, как вы становитесь лучше.
  • Фокусировка играет большую роль в преднамеренной практике. Это соединяется с предыдущим пунктом для требуемой задачи практики. Это также может быть связано с принципами потока, которые лучше всего описаны Михаем Чиксентмихайи в его книге «Поток: психология оптимального опыта».
  • Постановка целей становится мощным мотиватором. При достижении цели происходит выброс эндорфинов, вызывающих чувство удовлетворения. Цели также можно использовать для усложнения практики, превращая простую задачу в вызов.
  • Обратная связь важна. Обратная связь обеспечивает мотивацию, сравнивая текущую работу с предыдущей.

Приложение для программистов

Итак, как программисты могут внедрить принципы осознанной практики? Недавно мне порекомендовали сайт Hacker Rank, и я могу сказать, что он фантастический. Сайт Hacker Rank предлагает широкий спектр задач для программистов с разным уровнем навыков. Существует выбор различных тем от алгоритмов до регулярных выражений.

Так как же Hacker Rank сочетается с преднамеренной практикой? Ну, конечно, есть хороший уровень проблем, с которыми нужно работать. В каждой теме есть три разных уровня, с задачами одинаковой сложности, не имеющими ничего общего.

Дизайн сайта довольно прост, мало что может отвлечь вас от вашей задачи. Есть вариант темной темы, если вы, как и я, человек утонченный. Также довольно легко иметь проблему на одной стороне экрана, а программирование — на другой.

Есть несколько встроенных целей, над которыми нужно работать. Сертификаты по каждой теме для проверки вашего текущего уровня навыков и рекламы для потенциальных работодателей. Существуют наборы для подготовки к интервью со сроками от 1 до 12 недель, в зависимости от того, что вам наиболее удобно.

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

Критика сайта

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

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

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

Первоначально опубликовано на https://datasandbox.netlify.app 1 мая 2022 г.