Дайджест новостей Hexlet: апрель 2019

Читать в полной версии →

Прежде чем отправиться отдыхать в майские праздники, узнайте, что нового в Hexlet. Вдруг вам так понравится, что вы решите все выходные изучать программирование?

Как развивается Hexlet

За последние три месяца на образовательной платформе произошло большое количество изменений. О них вы могли читать в предыдущих дайджестах — январь, февраль и март. Изменения коснулись не только сайта, но и самого процесса обучения — проектов, профессий и тарифных планов. 25 апреля CEO Hexlet Кирилл Мокевнин рассказал о нововведениях и поделился планами на будущее. Если вы ещё не видели, линк вот:

Подробнее

Технические новости

Контент:

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

Code-basics.ru

На code-basics.ru появился новый модуль курса “Racket”. Модуль посвящён изучению логики — булевой алгебре, if и cond. Прохождение курса абсолютно бесплатное.

Успехи студентов

В этом месяце проектную сессию первого уровня успешно завершили 4 группы. «Brain Games» — мини-игры в виде интерактивного консольного приложения разрабатывались студентами профессий «Фронтенд JS-программист», «Бэкенд JS-программист» и «PHP-программист». Первые шаги учебной разработки происходили под строгим взглядом ментора и значительно повысили уровень начинающих программистов. В процессе работы осваивались навыки настройки окружения Javascript и PHP, построения архитектуры приложения и публикации собственных пакетов.

Ключевые слова: clean code, node.js, npm, composer, Eslint, CodeSniffer, babel, Continuous integration

Булат Галиханов: Проект отличный, ваши поправки хоть и вызывали порой ощущение сильного стресса и хватания за голову, воспринимаются полностью оправданными, видимо без такой оборотной стороны никак не обойтись, когда берешься обучаться программированию уже будучи взрослым, не имея пластичности детского мозга, да ещё и если проект, знаменующий достижение каких-то новых высот и нового понимания, проходит в предельно сжатых рамках 1 недели. Все моё предыдущее обучение на хекслете было не только достаточно расслабленным по сравнению с этим опытом, но и в какой-то степени одномерным в том плане, что единственной планкой которой я стремился достичь было прохождение кодом тестов, все остальное меня интересовало в достаточно малой степени, если не сказать проходной. Когда же я начал проходить проект, то понял, что этих граней программирования гораздо больше, раньше, например, я вообще не задумывался о том каким должно быть взаимодействие между файлами проекта, если их сразу несколько, а не один (а это видимо постоянная ситуация в реальной работе), да ещё и если один из этих файлов выступает практически дирижером для остальных. Многие вещи, пусть даже я о них и слышал/читал ранее, кажется становятся впервые понятными, вот, например, о магических числах я читал ещё на code-basics, однако до проекта даже не задумывался что сам частенько их вставляю то тут то там. Или про принцип открытости/закрытости - пока сам не начал стремиться к его воплощению, очень смутно понимал о чем речь. И можно привести ещё не одну такую принцип/деталь, которую впервые начинаешь по-настоящему понимать только вместе с реальным опытом, полученным на проекте, даже если что-то слышал об этом ранее. Хотелось бы, конечно, чтобы получалось создавать код быстрее/надежнее, с меньшими количеством ошибок, но все-таки ощущение роста есть, писать код вроде бы более менее получается, а значит буду продолжать, надеюсь, что смогу выйти на более менее хороший уровень. Спасибо огромное.


Maxim Dragaytsev: Впечатления — это был крутой опыт, мне понравилось. Я раньше никогда не писал комплексный пакет из нескольких модулей, не работал в консоли. Когда потерял первые два дня пытаясь установить на винду убунту вообще свои шансы закончить оценивал призрачными. Мне кажется самым сложное — правильная архитектура и оптимизация. Спасибо вам за все комментарии и потраченное время. Читая комментарии к своему и другим проектам — Удивляюсь вашему терпению)

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

Ключевые слова: TDD, unit-тестирование, функциональное программирование, абстрактное синтаксическое дерево, форматы данных, полиморфизм, архитектурные принципы

Сергей Егупов: И да. Готов поддержать других отписавшихся. Проекты — очень годная штука. Когда приступал ко второму — думал, что я все завалю. Сначала кажется, что вообще нереально с моим уровнем знаний подступиться, а потом потихоньку идет дело. Правда если третий проект настолько же сложнее второго, насколько второй сложнее первого, то наверно отпуск надо. Потому что первый намного лайтовее прошел. А с этим все выходные дома просидел. И да. Про плохое именование читал, ментальное программирование смотрел несколько раз, вроде понятно, но сам делаю не так, пока носом не ткнут.

Евгения Зи: Спасибо за проекты! В один момент они дают надежду, что я уже способна на что-то внятное, в другой момент эту надежду отбирают, показывая, что мне еще учиться и учиться)) И, конечно, большое спасибо, Кирилл, за проверки и комментарии)

Испытания на продвинутой ступени прошли 6 групп. Для одних студентов, реализовавших lite-версию Slack и менеджер задач, проект стал дипломной работой. Для других разработка собственного RSS Reader, загрузчика или анализатора страниц — ещё один шаг на пути к полному освоению профессии.

Ключевые слова: проектирование, асинхронное программирование, DOM, Mock/Stub, работа с ошибками, http, Webpack, Heroku, Koa.js, Gulp, ORM, шаблонизация, Bootstrap, Rollbar, Ajax, деплой, Rest, React + Redux + Forms

Ilya T: Кирилл, спасибо тебе за менторинг и проект! Несмотря на меньший объем по сравнению с предыдущим проектом, из-за обилия новых инструментов поковыряться пришлось все же изрядно. Ну и надеюсь стал получше понимать автоматы и асинхронность. Так что теперь со спокойной совестью можно приступать к изучению Реакта).

Бонусы

Информация о промокодах доступна в личном кабинете студента в разделе “Бонусы”.

Кроме того, в апреле мы разыграли бесплатные билеты на ИТ-конференции Стачка и Secon. Розыгрыши прошли в наших социальных сетях ВКонтакте, Twitter, Facebook и Telegram-сообществе.

Какие конференции планируют наши информационные партнёры дальше?