Советы по прохождению проектов
Готовьтесь к проектам
В описании проекта есть список курсов и материалов, которые мы рекомендуем изучить перед стартом. Проекты встроены в программы обучения в Хекслете, и мы советуем проходить курсы и проекты в том порядке, в котором они стоят в учебном плане.
Технические детали подготовки описаны в статье «Подготовка к проектам». Обязательно её прочитайте, особенно если вы используете ОС Windows.
Решение не должно быть идеальным
Некоторые студенты стремятся написать с первого раза идеальный в их представлении код. На что тратят много усилий и времени: например, несколько дней бьются над одним шагом, пока не доведут его до «идеального» состояния. Как правило, сделать это не получается, и за это же время можно было пройти несколько шагов.
Отсюда два вывода:
- С одной стороны, прилагайте максимум усилий, чтобы написать хороший код. Стремитесь к тому, чтобы не пришлось исправлять ошибки при проверке.
- С другой стороны, пишите код так, как можете. Для начала попробуйте написать решение «в лоб» — выберите наиболее простой и понятный вам способ реализации.
Не молчите и не замыкайтесь
Проект, особенно для новичков, — это выход из зоны комфорта, столкновение с новым и непонятным. Некоторые студенты, столкнувшись со сложностями при решении задач, уходят в себя и погружаются в чрезмерно долгие раздумья, либо вовсе падают духом и бросают проект.
Но проект не так сложен, как может показаться на первый взгляд. Он создан таким образом, что при равномерном распределении усилий — лучше «каждый день понемногу», чем «всё за один раз», — вы успешно дойдёте до самого конца.
Поэтому не паникуйте, задавайте вопросы и двигайтесь вперёд!
Кому задавать вопросы
В зависимости от формата обучения, вопрос можно задать:
- в чате группы. Ответят одногруппники или наставник. Если вы учитесь в группе, важно задавать вопросы публично, а не в личных сообщениях — так формируется общая база знаний, которая поможет и другим студентам. Чтобы не подсказывать, не вставляйте ваш код в текст сообщения, лучше прикладывайте ссылку на Гитхаб
- персональному наставнику. На плане Премиум наставник не только ответит на вопрос письменно, но и устроит сессию лайвкодинга, чтобы решить часть задачи совместно, если будет нужно
- другим студентам в нашем сообществе или в обсуждениях на сайте. Если вы учитесь без наставника, задавайте вопросы в нашем Сообществе в Telegram. Обсуждения есть на каждом шаге проект внизу страницы, ответы на некоторые вопросы можно найти в топиках ваших предшественников
Наставники отвечают на вопросы по проектам максимум в течение суток по рабочим дням, а за сроком и качеством ответов в группах следят кураторы. В сообществе и обсуждениях отвечают другие студенты, время ответа не регламентировано. Поэтому если вы почувствовали, что вам нужна быстрая и профессиональная помощь, обратите внимание на обучение в группе или мини-группе.
Работа с наставником
- Наставник играет на вашей стороне. В его интересах, чтобы вы качественно выполнили проект
- Наставник направляет в правильную сторону, но не пишет код за вас. Не стоит ждать от него прямых подсказок или готовых инструкций
- На проекте отрабатываются ваши навыки работы в команде. При этом наставник выполняет роль стейкхолдера проекта. Ваши взгляды могут не совпадать с требованиями, которые предъявляет наставник, — и это нормально. Но при возникновении разногласий и спорных ситуаций, по которым не удаётся прийти к общему решению, последнее слово остаётся за ним
- Относитесь внимательно к фидбеку от наставника: не стоит пропускать или игнорировать его замечания
- Приоритетное значение имеет качество кода — он должен быть не только рабочим, но и чистым. Поэтому к замечаниям наставника, касающимся качества и читабельности вашего кода, начиная с именования и заканчивая количеством пробелов, следует подходить со всей серьёзностью.
О списывании
Списывание и заимствование чужого кода запрещено правилами проекта. Но это не самое главное. Когда студент списывает или каким-то иным образом пытается обхитрить систему, единственной реальной жертвой этих действий является он сам. Он обманывает только самого себя.
Смысл проекта — пройти через боль и страдания самостоятельного написания кода, получить опыт рефакторинга на основе обратной связи от наставника, решить незнакомую и непонятную задачу. Проект помогает закрепить полученные знания, а также моделирует реальный опыт работы программиста.
Списывающий добровольно лишает себя всех этих возможностей.