Советы по прохождению проектов

Эта статья будет полезна при прохождении проектов

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

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

Технические детали подготовки описаны в статье «Подготовка к проектам». Обязательно её прочитайте, особенно если вы используете ОС Windows.

Решение не должно быть идеальным

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

Отсюда два вывода:

  • С одной стороны, прилагайте максимум усилий, чтобы написать хороший код. Стремитесь к тому, чтобы не пришлось исправлять ошибки при проверке.
  • С другой стороны, пишите код так, как можете. Для начала попробуйте написать решение «в лоб» — выберите наиболее простой и понятный вам способ реализации.

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

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

Но проект не так сложен, как может показаться на первый взгляд. Он создан таким образом, что при равномерном распределении усилий — лучше «каждый день понемногу», чем «всё за один раз», — вы успешно дойдёте до самого конца.

Поэтому не паникуйте, задавайте вопросы и двигайтесь вперёд!

Кому задавать вопросы

В зависимости от формата обучения, вопрос можно задать:

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

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

Работа с наставником

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

О списывании

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

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

Списывающий добровольно лишает себя всех этих возможностей.

👆 На этом пока всё