Вы находитесь на старой версии проекта. Новая версия доступна по ссылке

Проект Игры разума

Уровень: 1

Профессия Фронтенд-программист

Погрузитесь в непростую экосистему JavaScript, научитесь настраивать рабочее окружение. Подружитесь с линтером (анализатором качества кода) и менеджером зависимостей npm. Поймёте, чем git отличается от GitHub, поработаете с внешними репозиториями. Получите опыт построения архитектуры полноценного приложения и написания чистого кода.

8
шагов
2-4
недели

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

Профессия Фронтенд-программист

Цель

Первый проект нацелен на знакомство с экосистемой JavaScript. Она достаточно сложна по сравнению с языками вроде PHP, Ruby или Python. Количество понятий, инструментов и их связок настолько большое, что даже у опытных разработчиков иногда голова идет кругом. Чтобы стартануть по всем канонам даже простейший проект придется как следует повозиться. Вот неполный перечень ключевых компонентов любого современного js-приложения:

  • Пакетный менеджер (npm, yarn). Управляет зависимостями, выполняет хуки и описывает проект.
  • Babel (Транспайлер). Позволяет использовать новые фичи, даже если они не поддерживаются средой исполнения.
  • Eslint - линтер. Проверяет корректность кода на соответствие стандартам кодирования.

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

Описание

В рамках проекта необходимо реализовать набор мини-игр, запускаемых из консоли. Будем называть их "Игры разума".

Пример игры:

$ brain-progression

Welcome to the Brain Game!
What number is missing in this progression?

May I have your name? Roman
Hello, Roman!

Question: 14 .. 18 20 22 24 26 28
Your answer: 16
Correct!
Question: 5 6 7 8 9 .. 11 12
Your answer: 10
Correct!
Question: 12 15 18 21 .. 27 30 33
Your answer: 24
Correct!
Congratulations, Roman!

О плане «Премиум»

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

Преимущества «Премиума»:

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

Проект Игры разума

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

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

Впечатления

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

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

Также хотел поблагодарить моего наставника Сергея Карпука за поддержку и отличную обратную связь!

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

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

В завершение благодарю моего наставника Станислава Дзисяка за поддержку, а также за подробные и доходчивые пояснения!

Впечатления от реализации проекта самые положительные. Однозначно он стоит потраченного времени и сил. Работая над проектом, получил бесценный опыт грамотной настройки окружения и архитектуры приложения. Как оказалось это отнюдь не простая задача, не зря половина шагов в проекте посвящены именно данной теме. Пришлось 100500 раз возвращаться к курсу «JS: Настройка окружения»» и курсу из СИКП «JS: Программирование, управляемое данными». Также плюсом является полученный опыт по настройке окружения, которые не освещены в курсах. Реализация игр особых трудностей не доставила, головной болью оказалось грамотное построение кода и правильное наименование функций и переменных.

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

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

Пост о впечатлениях.

Первый проект стоит много больше уделенного ему времени. На первых порах кажется, будто ты выпадаешь из уютной среды курса, где каждое задание было приправлено всеми возможными подсказками. Возникало ощущение, что внезапно в курсе что-то изменили, а проект еще не успели, и потому недостаточно вводных для оптимального решения. Вероятно, отчасти так и было, но это можно списать на "реальные" сложности рабочего проекта, где постоянно приходится изучать доп. литературу. В начале обучения каждый смотрит на предстоящие проекты, и brain-games кажется довольно простым относительно всей практики, пройденной до него. Отведенный месяц на проект кажется излишним. И только вступив в него, приходит понимание чего стоит удобство прохождения той самой практики.

Сергей Карпук, благодарю за уделенное время, за сверхподробные замечания и за то, что не вываливаете их все "скопом", дав возможность поработать над каждым изъяном некоторое время.

Вопросы и ответы

Какое расписание у проекта?

У проекта нет расписания и вы можете заниматься в удобное для вас время. Доступ к проекту будет пока действует ваша премиум подписка.

Как оплачивается проект?

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

Зачем нужны проекты?

Проект помогает реализовать на практике то, что вы узнали на курсах. Важный момент: написанный вами код навсегда остается в вашем репозитории на GitHub. Фактически это ваша первая работа в портфолио.

Что делает наставник в проектах?

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

У меня есть другой вопрос

Пишите нам на support@hexlet.io, вам ответит живой человек из команды Хекслета. Или нажмите на иконку со знаком вопроса в правом нижнем углу экрана. Там есть ответы и на другие вопросы и удобная форма для отправки сообщения нам.

Проект Игры разума

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

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