Выпуск №15: Про моменты безумных ночей и коммитов. В гостях Миша Давыдов.

Мы успешно пережили новогодние каникулы и принимаемся за работу! В первом выпуске 2015 года у нас в гостях Миша — фронтенд разработчик, автор LMD.js и Autopolyfiller. Говорим о работе и жизни в Берлине, переходе с Twitter Flight на React и opensource проектах Миши.

Скачать выпуск (mp3, 30 MB)
  • Dmitry Shmalko

    Может конечно и не уместно тут спрашивать такое, но я рискну) Прошу вашего совета… Куда податься и как мне быть) Последнее время очень заинтересовался JavaScript, работаю html/css верстальщиком, но доля js в проектах неимоверно мала и все так быстро развивается в этом направлении что я не понимаю на чем акцентировать свое внимание. Что сейчас наиболее актуально, на что нужно сделать упор при изучении js? Спасибо за ответ)

    • Mikhail Davydov

      Сейчас популярно все, если говорить о фреймворках. Все зависит от компании. Был очень популярен Angular, который сейчас держится, но его немного пошатнуло из-за слухов по 2,0 и React; набирает обороты React; Ember.js не сказал бы, что аутсайдер, но своя атмосфера у него эт точно и если BE написан на Rails, то у Ember очень высоки шансы стать базой для FE. Очень популярны мобильные гибридные приложения под них уже написали батарею библиотеки и еще не известно сколько готовится. Резюмируя скажу, что в начале изучать что-то конкретное не стоит потому как система еще не стабильна.

      При изучении нужно сделать упор на базу до мелочей. На нее в первую очередь обращают на собеседованиях потому, как я уже сказал выше, тулчейн обширен и 100% идеального кандидата подобрать нельзя. Знание же базы и понимание того почему пришли к той или иной технологии (нафига все это понаписали) – это наиболее важное качество для кандидата. Остальное же добивается за пару недель.

      Возьми какую-нибудь хорошую книгу, которая подробно объясняет фундаментальные особенности языка: This, прототипное наследование, скоупы, область видимости переменных… Потом добивай знания в смежных областях: Promise, Event-loop, DOM, FRP, FP, SOLID…

      Ну и порекомендую пару ссылок:
      Что почитать, чтобы повысить свой уровень JavaScript http://habrahabr.ru/post/117838/
      Видео из Яндекс ШРИ https://academy.yandex.ru/events/shri/

      • Dmitry Shmalko

        Спасибо большое за столь развернутый ответ! Буду разбираться и вдохновляться вашими подкастами))

    • Полностью присоединяюсь к ответу Мишы: да, JS сейчас стремительно развивается, куча фреймворков, как однодневок, так и долгожителей, куча инструментов. Но это все вторично. Если вы освоите основы, вам будет значительно проще и быстрее освоить любой инструмент. Так что мой общий совет — изучать базу/основы, но и держать руку на пульсе новостей и тенденций в мире веб-разработки, например, слушая наш подкаст :)))
      Хотя конечно же, есть много интересных и действительно полезных блогов, тот же 2ality.com и прочие.

  • Guest

    Я использую jscs и jshint.

  • olebedev

    Хотел сказать на счет форматтеров. Это очень нужная и удобная штука. Поначалу кажется диковато что нечто правит твой код и кажется что теряешь контроль на происходящим, но позже понимаешь насколько это здорово. Не держать в голове мельчайшие детали code style guidelines.
    Так как я предпочитаю Go на сервере, скажу что в мире Go есть утилита, поставляемая с языков, в коробке – gofmt, я сейчас без нее не представляю себе работу над проектом на Go. Авторы языка таким образом решили разом пулл проблем, связанный с code style.

    • filipovskii_off

      Да, в Go ребята правильно сделали. Автоматический форматер очень к месту, но меня даже больше радует идея продвижения единого код стайла с самого начала (с момента первого знакомства с языком).

  • imposibrus

    JSHint курильщика и JSHint здорового человека))

  • Ivan Voischev

    Миша молодец! Очень хорошие темы поднял, на которые хотелось услышать мнения разных разработчиков. Спасибо за выпуск.

  • Vladislav Sournine

    Случайно нашёл подкаст, начал слушать. Слушаю с удовольствием. Спасибо.
    Хотел спросить по ReactJS – начал применять в текущем проекте, и столкнулся с тем, что использование пропертей реально тормозит весь процесс. Построение выглядит как Master -> List -> Tour -> Event -> RT -> M -> Atom. А так же Master -> Basket – который (посредством пропертей) передаёт своё состояние до самого низа Atom. В итоге – правильно всё, но даже на тестовых нагрузках браузеры съедают по 1,5 гига памяти, 80% проца и в итоге перестают отзываться. Пришлось отказаться от пропертей, и сделать “прямой проброс”. Я один страдаю? Или что-то не понимаю? 🙂

    • filipovskii_off

      Не сталкивался. Может проблема в том, что большое количество данных через React проходит? Откуда 1,5 гига берутся? Если так, нужны ли все эти данные для построения UI?

      • Vladislav Sournine

        Уверен, что дело именно в большом количестве данных. Сейчас выламываем мозг для уменьшения потока. Но да. Взаимодействие этих двух компонент влияет на отображение. Сейчас “построили” проброс. Но это, как обычно – из-за нехватки времени. Как только появятся ресурсы – сделаем поток логичным

  • Aleksey Tabakman

    всем привет! спасибо за подкаст!
    полез смотреть про браузер в браузере, а что оказалось первоапрельская шутка)
    http://badassjs.com/post/20294238453/webkit-js-yes-it-has-finally-happened-browser