SDCast #64: Игорь Демьянов и Евгений Гусев, фронтенд менеджер и фронтенд тимлид из компании Wrike

Рад представить вам 64-й выпуск SDCast’а! У меня в гостях Игорь Демьянов и Евгений Гусев, фронтенд менеджер и фронтенд тимлид из компании Wrike. Wrike активно используют у себя язык Dart, об этом и пойдет речь в этом выпуске.

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

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

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

  • Разработчиков
  • Процессов сборки
  • Процессов тестирования
  • Процессов выкладки релизов
  • Взаимодействия с другими компонентами системы

Обсудили мы и экосистему вокруг Dart: различные инструменты, линтеры, сборщики, пакетные менеджеры, интеграции с IDE и всё прочее.

Один из интересных вопросов — это сообщество вокруг языка и вообще наличие программистов на Dart. Ребята рассказали про свой опыт общения с разработчиками языка из Google, рассказали про обсуждение новых фич языка, конференции и другую социальную активность. В компании очень большой штат программистов, в том числе и на Dart. Так что было интересно обсудить как Wrike находит новых программистов на Dart.

Ссылки на ресурсы по темам выпуска:

Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon а так же ретвитом, постом и просто рассказом друзьям!

Скачать (mp3, 75 MB) Скачать (ogg, 55 MB)
  • g.orlov

    Спасибо за подкаст!
    Было интересно слушать, так как ранее я сам занимался фронтендом и пришел к такому же мнению, как и ведущие. Видимо, у них, как и у меня сказывается бекенд прошлое.
    А мнение простое: на средней и большой кодовой базе писать на JS ужасно и только статическая типизация может спасти. И да, JS – ассемблер для веба.

  • Dmitry

    Огромное спасибо за выпуск!
    Спасибо гостям, что развиваете правильные технологии!
    Очень здорово, что есть серьезные проекты на Dart.
    Любое движение по облогораживанию фронтенд каши это благое дело.
    Я прям, очень ратую за строгую типизацию и ОПП. И против функциональной дичи.
    3 года назад я выбрал TS, хотя как язык Dart понравился больше.
    Гости, конечно, набрасывают огненно! Сильную сторону технологии озвучивают без искажения, а слабую замимимикивают: “такой уютный чатик, там я и Джон из гугла” :)
    Почему Hello World на TS занимает 200кб, вообще, паранормальная история :)
    Насчет поиска инженеров на работу могу посоветовать поискать среди ActionScript девелоперов. Они уже давным давно писали толстые клиенты для вэба на строго типизированном языке.
    Правда в AS типы указываются справа, как в TS :)

  • bashor

    Спасибо всем за подкаст!

    Я хотел бы немного поправить вас:

    Kotlin/JS не использует компилятор dart2js внутри.

    В действительности же, используется очень маленький кусочек самого первого компилятора dart2js, который был написан на Java и не имеет никакого отношения к текущему компилятору dart2js, который написан на Dart.
    Конкретно используется JS AST, который, на самом деле, был взят из GWT. (Теперь можно говорить/троллить, что на самом деле под капотом Kotlin/JS старый добрый GWT :))
    JS AST это очень маленький кусок компилятора, и этот AST претерпел большие изменения с тех пор как был скопирован.

  • У защитника Дарта какая-то травма оставленная TypeScript’ом: хочется сравнивать дарт с более успешным TS и говорить как в дарте все лучше, а TS это как JS :)