Хекслет

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

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

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

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

Подробнее

  • Проекты стали бессрочными. Теперь вы сможете проходить их в любой удобный для вас момент и сами определяете темп обучения. Чтобы проекты было быстрее и комфортнее проходить, не нужно проверять каждый шаг у ментора. Все возникающие в ходе работы над проектом вопросы можно задать ментору через форму “Вопросы ментору”. Подробнее обо всех нововведениях в Help.
  • Профессия по Python стартовала. Чтобы начать прохождение, перейдите на страницу «Профессии». Сейчас студентам доступны первые уроки по основам Python и испытания «Фибоначчи», «Сумма двоичных чисел», «Физзбазз» и «Палиндром». Профессия заполняется постепенно, новые уроки и курсы будут добавляться каждый месяц.
  • Новый тариф “Премиум” появился в конце марта, и с этого момента вопрос “Что делает куратор?” вышел в топ вопросов, которые задавали нашей техподдержке. Мы постарались как можно подробнее рассказать об этом здесь.
  • Профессии «PHP-программист», «JS-backend» и «JS-frontend» активно обновляются: появляются новые уроки, старый материал актуализируется. Если вы ещё не подписаны на нашего бота в twitter, рекомендуем это сделать. Здесь оперативно появляются посты с обновлениями и ссылками.
  • Профессия «Java» нуждается в преподавателе. Если среди вас есть желающие или рекомендации, кого можно взять на эту вакансию, пишите [email protected]. Кстати, для тех, кому интересен Java, 3 мая на канале пройдёт вебинар с Вячеславом Лапиным «Взгляд Spring’а на извечный холивар “сильная против слабой типизации”». Ссылку и время трансляции разместим в отдельном посте.

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

  • Мы обновили дизайн страницы каждой профессии, например, https://ru.hexlet.io/professions/backend. Страница стала структурированной и приятной взгляду. Кроме того, напротив каждого курса появился прогресс его прохождения.

Новый дизайн прогресса курса

  • Мы реализовали бесконечный скролл и читать контент на сайте стало удобнее.
  • А ещё в блогах появились лайки. Кстати, не забудьте протестировать их на этом дайджесте и нажать кнопку с пальцем вверх в конце поста.

Контент:

А ещё наш главный разработчик Александр Вагин в прямом эфире показал, как мы делаем 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: Кирилл, спасибо тебе за менторинг и проект! Несмотря на меньший объем по сравнению с предыдущим проектом, из-за обилия новых инструментов поковыряться пришлось все же изрядно. Ну и надеюсь стал получше понимать автоматы и асинхронность. Так что теперь со спокойной совестью можно приступать к изучению Реакта).

Бонусы

  • Для тех, кто развивает собственные проекты — отличное предложение от Fornex. Это сервис, который предоставляет хостинг европейского уровня. Для студентов Hexlet — скидка 99% на первый месяц обслуживания. Бонус действует на тарифы VPN SSD Cloud 1Gb, VPN SSD Cloud 2Gb, Хостинг VH-1 и Хостинг Unlim-10.
  • Интернет могут заблокировать, а книги останутся с вами навсегда. Специально для студентов Hexlet действует скидка 10% на все книги от издательства МИФ. Многие из рекомендуемых нами книг по саморазвитию, например, «Джедайские техники», «Красота в квадрате» или «Биохакинг мозга», выпускаются там. Скидка суммируется с другими предложениями издательства.

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

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

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

  • FrontendConf — большая профессиональная конференция frontend-Разработчиков, которая пройдёт 27 и 28 мая в Сколково. Подробности и регистрация: https://frontendconf.ru/moscow-rit/2019
  • SECR — Software Engineering Conference Russia, научно-практическая конференция, на которой вы просто обязаны побывать. А ещё SECR ищут докладчиков. Заявку можно подать до 20 августа по форме на сайте: https://2019.secrus.org/lang/ru/for-speakers/proposal/. Подробнее о подаче тут: https://2019.secrus.org/lang/ru/for-speakers/call-for-speakers/.
  • IT-way — цикл мероприятий для начинающих программистов. В мае мероприятие проходит в Томске, следите за новостями здесь: http://it-way.pro/events/9
  • FPURE — конференция по функциональному программированию. Более 250 участников из разных сообществ FP: Scala, Haskell, Clojure, F # и других языков программирования. Купить билет: https://provectus-ev-org.timepad.ru/event/902050/
Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →