Как я React’у учился
В минувшие выходные в Минске проходил React воркшоп преподавателя из Харькова, владельца собственной компании и IT академии Ильи Климова.

Я шел туда за знаниями и за возможностью получить хоть и не большой, но интересный опыт в разработке приложений на ReactJS. Отмечу, что реального продакшен опыта у меня нету, а всяческие пэт-проекты — это же не в счет, правда? =)
Так вот, я решил подготовится к воркшопу основательно, благо девочки из IТ Events Minsk сделали все как надо: тут тебе и ивент в facebook и видео-подкаст от самого Ильи. Я даже умудрился купить книгу React.js Essentials от Артемия Федосеева — хорошая книга, но об этом в следующий раз.
И вот настал этот день — люди подтягивались в холл гостиницы Виктория-Олимп, делали кофе, подключали свои гаджеты к местной wifi сети и занимали места в зале. После небольшой задержки Илья начал воркшоп.

Все шло замечательно: было много информации по архитектуре React приложений, много отсылок в сторону других небезызвестных фреймворков и даже затронули построение приложений на базе Flux и Redux. После теории началась практика, я надеялся, что мы разомнем пальцы на создании реактовских компонентов, но нет, мы начали сразу с Redux приложения, хоть это и показалось мне немного странным, ведь в зале всего пару ребят подняли руки после вопроса — “Кто пишет продакшен приложения на React?”, и я обрадовавшись, что не один такой, открыл ноут и приготовился писать Redux приложение.
Темп написания кода был высоким, то там, то тут слышалось кряхтение и после, как мне показалось, 10 минут, некоторые участники начали закрывать свои ноуты и просто смотреть на экран, где Илья с бешеной скоростью и знанием дела набирал код в разных файлах. Я, как и мои соседи пытался справится с кодом, который почему-то не работал. Из зала слышались просьбы переключится на предыдущий файл, потому как кто-то не успел до-набрать код или просто свериться с оригиналом, потому приложение не работало. В итоге это было простое приложение, первая часть которого итерировала счетчик на странице, а вторая ходила на сервер за данными и выводила список, сохраняя это все в Redux store.
В конце этой сессии голос из зала попросил залить рабочий код на github, чтобы его можно было забрать и посмотреть, что же все-таки не работало. Прошу заметить, что у меня почти все работало, но это, наверное, благодаря моему соседу, который очень быстро печатал и успевал переписать все с экрана телевизора. После этого все разошлись на обед, а я отъехал по делам.
Ах да, забыл сказать, что воркшоп проходил в малом зале гостинцы и в принципе гигантского телека вполне хватило на такое помещение, но до того, как Илья дошел до презентации он, наверное, по своей преподавательской привычке рисовал все маркерами на бумаге и я, сидя в 4 ряду вроде видел все =), но не знаю, как это смотрелось на последних рядах.
Приехав после обеда, я успел на начало второй секции, но меня ожидал сюрприз — секция началась с роутинга в изоморфном приложении. Я уже было испугался, что ездил так долго, что пропустил какой-то блок второй секции, но мои соседи подтвердили, что я ничего пропустил и это и было началом второго блока.

Во втором блоке мы переделывали, а точнее дописывали свои модули в уже существующий тестовый проект под названием react-redux-universal-hot-example. Меня это немного запутало, потому как слишком много ненужной логики и файлов и, видимо, я был не один такой. Окончание сессии закончилось тщетными попытками запустить приложение.
Заключительная сессия теории была очень даже кстати, на ней Илья рассказал где лучше применять React, React c дополнениями, типа Redux’a и другие фреймворки, а также делился жизненным опытом, который иногда дороже золота.
И в заключении хотелось бы сказать, что мастер-класс получился хороший, но мне кажется немного не угадали с уровнем присутствующих и я бы организовал более четкую структуру самого воркшопа.
За сим откланиваюсь и до новых встречъ!