Удачный свич с завода в геймдев, а потом в веб: мотивирующая история и полезные советы начинающим от начавшего.
Спасибо огромное Хекслету и всей его команде за интересный проект, и полученный благодаря ему ценный опыт. Отдельная благодарность Александру за наставничество и терпение ;) Всем добра!
До проекта вообще не было понимания самых базовых вещей, необходимых для разработки. Было понимание как писать код для решения задач, но не было понимания как писать код для реальных проектов. Как там всё связано и работает.
Про npm и babel говорилось в одном из курсов, но лишь здесь я понял насколько они важны. Теперь понимаю, как должна выглядеть архитектура модуля, и как с этим модулем правильно взаимодействовать. И нельзя не сказать про именование переменных. Несколько раз на этом застревал, потому что не понимал, какое имя дать переменной. Теперь с Вашими советами думаю с этим проблем будет меньше.
И спасибо, Александр, за Ваши подсказки. Именно подсказки, а не ответы. Без них я думаю не получил бы такой опыт, который получил сейчас. И за Вашу выдержку: иногда я делал такие глупые ошибки, что до сих пор стыдно:)
Шаги проекта хорошо структурированы и описаны. Помимо описания задачи и ожидаемого результата, есть ссылки на информацию которая понадобится для выполнения задачи. Иногда дают в меру туманные подсказки.
Здорово что не разжовывают выполнение задачи в стиле stack overflow. Приходилось думать, читать статьи по ссылкам, искать дополнительный материал. Некоторые затыки удавалось решить читая обсуждения заданий менторов со студентами прошлых потоков.
Ментору можно задавать вопросы. Это удобно.
Моим ментором был Александр Овчар. Скорее всего он очень хороший, опытный программист и точно хороший наставник. Решения он комментировал развернуто, почти не давал прямых ответов, но давал ссылки на ресурсы где можно было найти нужную информацию.
На ошибки указывал так же: не в стиле "делай не вот так а так", а отправляя читать и искать. Первое время очень бесили "придирки" к коду и стилю. Ментор не принимал задание пока из решения не уберешь магические числа, семантические ошибки, пустые строки идущие подряд, протечки абстракций, неконтекстный нейминг. Казалось бы: "В чем проблема? Линтер не ругается, программа выдает нужный результат и не падает с ошибками". Ближе к концу начинаешь понимать пользу от этого. Если соблюдать эти требования, экономишь много времени при рефакторинге и поиске ошибок.
Еще не раз, в горячке надвигающегося дедлайна или под влиянием озарения, я вставлю в код магическое число или захардкожу какой-то параметр. Однако, когда мне вернут задачу с подобными замечаниями, я не буду возмущаться, а искренне поблагодарю.
Спасибо большое за проект! Это было действительно очень интересно и познавательно. Мне лично очень не хватало свободного времени для выполнения задания, так как это было 3 часа каждый день после работы. Но я справился, чему безумно рад! Это был бесценный опыт, я научился разворачивать проект с нуля, опубликовал свой первый проект в npm, разобрался как организовать структуру и архитектуру проекта, научился правильно именовать константы и переменные (казалось бы что тут сложного? Ан нет :)). Очень сильно помогло, что перед проектом прорешал много задачек из испытаний. Всем кто вступает в проект очень рекомендую. Спасибо большое наставнику за советы и терпение. Обратная связь от наставника сильно вправляет мозги и позволяет посмотреть на свой код под другим углом.
Кирилл, благодарю за проект !
Многие говорят, что самое сложное в нем - это настройка окружения. Окружение настроил за один день и погнали. А вот над реализацией всей логики пришлось поломать голову. Для меня же самое сложное было - это архитектура проекта и автоматы. В начале, я даже не увидел в проекте никаких автоматов, потому что пытался реализовать MVC, как в упражнении на курсе. А потом, словно прозрел. В любом случае - это отличный проект, который хорошо помогает закрепить курсы перед ним. Еще раз спасибо!
Как на протяжении пяти лет изучать сортировку массивов, пройти через суровое российское SEO-продвижение сайтов в 2019 году без ссылок эффективно и недорого и... И устроиться на первую работу программистом.
Для начала благодарю команду Хекслет за проделанную работу, всё достаточно на высоком уровне, молодцы. Я только на начальном этапе прохождения ваших курсов, но уже под впечатлением. На текущий момент завершил первый проект и хочу выделить работу ментора Александра Овчар. У него грамотный и взвешанный подход к своим обязанностям. Спасибо.
Огромное спазибо всей команде Хекслет, за то что вы даете такую возможность, такой доступ, к уникальному материалу, проект - это просто нечто, с обычным прохождением курсов образуются необольшие дыры в понимании, проэкт это все подтягивает, начинаешь писать понятный код, который можно читать, спасибо моему ментору Александру!
За терепение, я просто не представляю как он нас терпит, с нашими именами переменных, и структурой нашего непонятного кода, это просто уникальный опыт, мне кажется он должен быть обязательным при прохождении курсов. Вспоминаются слова Кирилла "мы любим удалять код" это вот прям инструмент! Благодаря проекту я прям чувствую как могу теперь продуктивнее обучаться! отрабатывать хорошие практики в каждом задании, а не писать что-то что проходит тесты.
Осознать, что ничего не знаешь — это только половина дела. История про то, как Хекслет помог вырасти в Middle Frontend разработчика
По горячим следам второго проекта профессии "Фронтенд JS-программист" пишу отзыв.
От второго проекта я ожидал как минимум не меньшего драйва, чем от первого и теперь могу уверенно сказать, что реальность превзошла самые смелые ожидания. Реализм начал зашкаливать с самого начала - в первом же шаге предстояла работа с незнакомой библиотекой, из скудной документации и примеров использования которой пришлось собирать информацию о её применении. Дальше стало веселее: всё то, от чего хотелось плакать в предыдущих курсах, пришлось использовать на всю катушку. Тут тебе и деструктивное присваивание, и полиморфизм, и, конечно, функциональный стиль.
При этом уровень заданий в проекте напоминает правильно составленную программу тренировок: все время приходится терпеть боль, но в итоге прогресс видим невооруженным глазом. Даже удивительно, что такой компактный по времени и объему формат затрагивает настолько широкий круг вопросов. Именно во втором проекте я понял всю прелесть разработки по принципу Test Driven Development, научился работать с документацией, осознал преимущества полиморфизма и неизменяемости. И даже прокачал умение бороться с негативными мыслями.
Это был отличный опыт, спасибо за то, что вы делаете!
Проект: Brain-Games Закончил первый ) профессии "JS: backend" буквально час назад. В общем, эмоции у меня только положительные. Опыт в программировании у меня небольшой, и в основном им я начал заниматься вплотную именно здесь, на Hexlet'е, поэтому перед началом проекта был легкий мандраж и сомнения - не рановато ли я записался на проект (прошло 2 месяца с начала занятий), но оказалось, что это все напрасно.
Проект помог разобраться в таких важных темах как настройка окружения для разработки на JS, базовые навыки написания читабельного кода, дал начальный практический опыт в умении строить архитектуру приложений.
На самом деле важно отметить, что проекты нужно проходить однозначно, на мой взгляд. Дело в том, что с их помощью открываются совсем другие стороны учебного процесса в отличии от прохождения курсов. Я проходил курсы, и мне казалось, что вроде все ясно и понятно, но когда начался проект, то тут оказалось, что все эти знания и навыки, которые получали на курсах нужно еще и уместно применять и вспомнить то, что уже забылось. Иными словами, проект заставляет вас как бы повторить пласт информации, и она уже наверняка засядет в голове надолго.
Ну, например, проходя курсы, вы явно не освоите практическую часть по настройке окружения, тут нужна только практика, практика и практика. Да можно пройти курс "Настройка окружения", но ребята, поверьте, ничто так не поднимает ваш уровень, как ситуация когда во время настройки у вас что то валится с ошибками, и вы начинаете самостоятельно копать и копать в поисках решения! Вот это прям вообще огонь. Или решая задачи к курсам, сложно набить шишки на опыте разработки связных интерфейсов между частями своего проекта, т.к. в задачах нас чаще всего просят написать одну-две функции (да, они далеко не простые, согласен) для решения какой-то конкретной задачи, но никто не задает вам написать работающий проект от начала и до конца, где все ваши структуры данных и операции над ними еще нужно грамотно согласовать, да еще и оставить возможность для масштабирования и обслуживания кода.
В общем об этом всем можно еще долго говорить, но я считаю, что проекты на Hexlet нужно проходить, они того стоят, и дадут вам возможность действительно прочувствовать процесс разработки, и понять свои возможности и те моменты, которые нужно подтянуть.
Проект: Менеджер задач Оооо, проект сдан (((: Кирилл, в первую очередь хочу выразить огромную благодарность и признательность за весь проект Хекслета как таковой, так и отдельно за твое отношение к делу! Классно осознавать, что ты в первую очередь действительно ставишь задачей научить людей, и относишься к этому со всей серьезностью, вникая в детали, индивидуально направляя подопечных.. :) по крайней мере со мной так было)) честно говоря, я думал, что пойду на второй круг по этому проекту, но пара твоих ссылок действительно помогла вникнуть в суть вещей и плюсом расширила кругозор, показала как работают по-настоящему большие фреймворки...) очень приятно, что я постоянно получал обратную связь, думаю если бы не стеснялся в самом начале задавать какие-то вопросы, то проект пошел бы быстрее.. хотя набивать шишки тоже полезно) а вообще эти 5 месяцев прохождения профессии Backend-разработчика пролетели быстро и оставили массу впечатлений, кипящих мозгов и тому подобного (:
Небольшая история самоучки. Кем работал и как совершенствовал свои знания. Чем мне помог «Хекслет», и не только он.