По случаю накопившихся вопросов (а также опыта, что гораздо важнее) по Angular 2 мы позвали в гости Алексея Охрименко (Twitter, GitHub), который давно зарекомендовал себя как специалист по различным фреймворкам и библиотекам, включая AngularJS и D3.js, а также как профессиональный спикер различных российских конференций и митапов. Также к нам снова присоединился Александр Майоров, с очередными новостями из мира TypeScript, который продолжает бурно развиваться и радовать многих разработчиков. Ну и, конечно, мы не смогли пройти мимо новости о Yarn, о котором разгорелись бурные споры.
- Леша представляется 00:01:18
- Angular 2 в продакшене
- как решили начать разработку на Angular 2? 00:03:40
- почему оставили ngModel и двусторонний датабиндинг? 00:06:24
- два подхода к созданию форм 00:08:40
- старые добрые модули 00:11:26
- версионирование и роадмап 00:14:34
- server side rendering 00:18:20
- где разработка стала удобнее для программиста? 00:21:21
- Observable 00:21:44
- формы от модели 00:22:30
- новый DI 00:23:00
- дефолтный роутер vs ui-router 00:24:10
- Alpha Release Candidate 00:26:00
- фичи роутера: авторизация, анимации, lazy loading 00:27:38
- синтаксис компонентов 00:29:47
- встроенный CSS Modules 00:31:14
- как решили переписывать проект с React на Angular 2? 00:32:44
- интеграция с TypeScript 00:36:02
- перформанс в сравнении с React 00:38:20
- рендеринг в веб воркерах и других средах без DOM 00:43:39
- Angular 2 митап 17 ноября 2016 года 00:48:58
- yarn 00:50:28
- TypeScript 2.1 RC 01:12:04
- Опыт перехода на TypeScript в AngularJS 1 приложении 01:14:20
- плавный переезд на Angular 2 01:14:48
- наконец отказались от jsdoc 01:15:57
- более сахарный синтаксис классов 01:16:50
- быстрая реакция на синтаксические ошибки и неверные вызовы 01:18:33
- super не работает по стандарту 01:20:16
- линтинг tslint не настолько хорош, как у eslint 01:21:05
- медленно устаканивается единый подход к установке тайпингов 01:22:18
- холивар по поводу уменьшения багов после перехода на TypeScript 01:23:39
- Пики
Скачать выпуск (mp3, 45 MB)
Андрей привез с React Amsterdam много интересного, Миша наконец вернулся после болезни с накопившимися новостями, а Костя традиционно рассказал о последних разрабатываемых спецификациях. Майские чуток подкосили нас всех, так что выпуск выходит с большим запозданием.
Скачать выпуск (mp3, 22 MB)
В чем разница между инструментированием кода и инструментами разработки? Какие инструменты экономят время и улучшают жизнь разработчика? Как идеи меняют ваш взгляд на проблемы и используемые в их решении инструменты? Почему идеи гораздо важнее, чем то, какие вы привыкли использовать библиотеки и фреймворки? Как написать свой собственный интсрумент и сэкономить время, а не сидеть все выходные и не добиться никакого эффекта? Ответы на все эти вопросы, а также многие другие, включая каверзные вопросы касательно текущей и будущей работы Романа Дворнова над OpenSource проектами, вы услышите в этом выпуске!
Базой для разговора стали многочисленные споры в кулуарах конференций, а также следующие выступления Ромы:
Основные тезисы и темы разговора:
- Что такое инструменты разработки и инструментирование кода? 01:26
- инструменты – это все, что позволяет эффективно достигать результата
- инструментирование – это один из подходов при создании инструментов
- IDE vs легковесные текстовые редакторы 05:00
- component-inspector 09:30
- Имплементация инструментирования 12:45
- производительность при компиляции и в рантайме
- использование плагинов к Babel
- использование WeakMap
- Линтеры 19:12
- eslint
- jscs
- CSSComb
- сложности при использовании CSSComb для линтинга
- встраивание линтеров в редактор кода
- считать ли линтерами инструменты, которые изменяют код автоматически
- линтеры для разных фреймворков
- Статический анализ кода 34:34
- области применения кроме линтинга
- статические анализ vs регулярки
- альтернатива AST – CST
- форматтеры и бьютефаеры кода
- Визуализация истории мутаций объекта и time travel 40:43
- сохранение истории мутаций, трансформировавших объект в определенное состояние
- визуализация истории мутаций
- применение визуализации для обучения программированию
- применение визуализации для объяснения работы приложения
- проблема создания подобного инструмента при работе с изменяемыми данными
- чем данный инструмент похож на time travel, популярный в сообществе ФРП
- time travel для реализации функционала undo/redo в редакторах
- time travel для отделения данных от кода и отладки разного кода с теми же данными
- доклад Никиты Прокопова “Функциональное программирование в браузере“
- remote time travel debugging для отладки ошибок в пользовательских приложениях на сохраненных данных
- Документирование кода 56:09
- Идеи и воплощение их в жизнь 1:04:09
- самое главное – это идеи и концепции, а не библиотеки и фреймворки
- адаптация идей в своем любимом фреймворке может занимать немного времени
- некоторые инструменты возможны только тогда, когда фреймворк обладает нужной степенью свободы
- проблема выбора: брать актуальные задачи по проекту или делать инструмент для решения целого класса подобных задач
- выделение времени в компании на развитие инфраструктуры инструментов
- нужны ли гениальные разработчики, чтобы интегрировать сложные инструменты в текущую кодовую базу
- Тренд интеграции IDE и среды исполнения (браузера) 1:20:35
- встраивание инструментов в Dev Tools
- браузеров много, не все используют Chrome
- на данный момент эта интеграция слабая
- за какими редакторами кода будущее
- LightTable как пример подобного тренда
Пики
- Костя 1:28:20
- popmotion – библиотека для анимаций, физики и слежением за действиями пользователя
- Миша 1:29:00
- flexboxin5 – интерактивная обучалка Flexible Box Layout
- iconic – платформа SVG-иконок с набором правил для создания свой библиотеки иконок
- Андрей 1:32:38
- Рома 1:34:00
- Ближайшее будущее CSSO после того, как Рома стал мейнтейнером
Скачать выпуск (mp3, 44 MB)
К нам в гости командой пришли ребята из Protein. Мы расспросили их о технических подробностях работы сервиса, ценовой политике и запуске.
В новостном блоке кроме прочего обсуждаем Node 4.0, стили в JS и Falcor.
Скачать выпуск (mp3, 28 MB)
Марат Дулин, автор JSCS, unit-coverage и BEViS рассказывает историю своих проектов и делится планами. Обсуждаем новые возможности DevTools и Timing API, JSON Graph и редакторы кода.
Скачать выпуск (mp3, 46 MB)