Как правильно проходить проекты

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

Готовьтесь к проектам!

В описании проекта есть список курсов и материалов, которые мы рекомендуем изучить перед стартом интенсива. Вообще, проекты органично встроены в программы обучения на Хекслете. И мы советуем обучаться, двигаясь по стеку курсов и проектов, определённому в выбранной вами профессии.

Технические детали подготовки описаны в нашей вспомогательной статье Как подготовиться к проектам. Обязательно её прочитайте (особенно, если у вас операционная система Windows).

Решение не должно быть СРАЗУ идеальным

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

Отсюда двойственный вывод:

  • С одной стороны, прилагайте максимум усилий, чтобы написать хороший код (в пределах того, на что способны вы, конечно). Стремитесь к тому, чтобы у ментора не возникло к нему замечаний.
  • С другой стороны, пишите код так, как можете — не переусердствуйте! Откиньте позывы перфекционизма, не усложняйте и не ищите глубокие смыслы. Для начала попробуйте написать решение, что называется, "в лоб" — выберите наиболее простой и понятный вам способ реализации.

Не молчите и не замыкайтесь

Интенсив — это выход из зоны комфорта (особенно для новичков), столкновение с новым и непонятным. То есть стрессовая ситуация. Некоторые ученики, столкнувшись со сложностями при решении задач, "уходят в себя":

  • либо погружаются в чрезмерно долгие раздумья ("я не знаю, надо что-нибудь спасительное почитать"), пропуская проверки и/или не задавая вопросы в комьюнити
  • либо вовсе падают духом ("всё сложно, я не могу"), снижая свою активность к нулю

И здесь стоит отметить, что "у страха глаза велики". Проект не так сложен, как может показаться на первый взгляд. Точнее, он спроектирован таким образом, что при равномерном распределении усилий (лучше "каждый день понемногу", чем "всё за один раз") вы дойдёте до самого конца за отведённое время.

Поэтому не паникуйте и проявляйте активность!

Способы общения

Каждый шаг (задание) проекта размещён на отдельной странице. На странице шага вы увидите описание задания.В нижней части страницы шага располагается публичный раздел "Вопросы ментору", где участники интенсива обсуждают с ментором задание текущего шага и задают все волнующие вопросы. Обратите внимание, что вам доступны обсуждения всех других участников с прошлых сессий: пользуйтесь этой возможностью, читайте топики — здесь накоплен большой опыт решения часто возникающих проблем. И, возможно, ваш вопрос ранее уже поднимался и есть готовый ответ.

В слак-чате Хекслета есть канал #hexlet-projects. Вступите в него: здесь вы можете общаться на любые темы по проекту со своими одногруппниками, а также людьми, которые ранее уже прошли интенсив. Единственное ограничение: запрещено демонстрировать и обсуждать конкретный код.

Взаимоотношения между ментором и учеником

  • Ментор играет на вашей стороне. В его интересах, чтобы вы добросовестно и качественно выполнили проект.
  • Ментор направляет в правильную сторону, но не пишет код за вас. Не стоит ждать от него медвежьих услуг в виде прямых подсказок или готовых инструкций.
  • Обратите внимание, что на интенсиве отрабатываются ваши навыки работы в команде. При этом ментор выполняет роль стейкхолдера проекта. Ваши взгляды могут не совпадать с требованиями, которые предъявляет ментор — и это нормально. Но при возникновении таких разногласий и спорных ситуаций (по которым не удаётся прийти к общему консенсусу) последнее слово остаётся за ментором.
  • Относитесь внимательно к фидбеку от ментора: не стоит пропускать или игнорировать его замечания.
  • Приоритетное значение имеет качество кода — он должен быть не только рабочим, но и чистым. Поэтому к замечаниям ментора, касающимся качества и читабельности вашего кода (начиная от именования и заканчивая количеством пробелов), следует подходить со всей серьёзностью.

Бессмысленность читерства и списывания

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

Но это не самое главное. Надо понять, что, когда ученик списывает или каким-то иным образом пытается "обхитрить систему", то единственной реальной жертвой этих действий является он сам. Он обманывает прежде всего (и только) самого себя.

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

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

Удастся ли мне завершить проект?

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

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

Сколько часов в день / неделю выделить на проект?

Если говорить про средние цифры, то рекомендуем выделить от двух до трех часов в день на проект — этого должно быть достаточно для равномерного комфортного прохождения интенсива.

Нужна помощь? Свяжитесь с нами Свяжитесь с нами