MoscowJS
MoscowJS
  • Видео 176
  • Просмотров 250 142
MoscowJS 60 – Профилирование памяти и снапшоты – Владислав Молоцило
Когда течёт чайник, ситуация неприятная, но чайник можно заменить на новый. Когда течёт память в наших приложениях, этот подход уже не работает. В этот момент нам приходится оставаться один на один со снапшотами, открывать вкладку memory в девтулзах и пытаться не утонуть в куче информации. А хотелось бы просто посмотреть, на какой строчке кода происходит утечка. Расскажу о том, как не потеряться во всём этом и использовать инструменты профилирования памяти во благо и без боли.
0:00 Вступление
0:49 Начало доклада
22:25 Вопросы докладчику
moscowjs.org/events/moscowjs-60/
Все новости и анонсы MoscowJS в нашем телеграм-канале: t.me/moscowjs
Просмотров: 376

Видео

MoscowJS 60 - Фронтенд без границ - Виктор Щеглов
Просмотров 5096 месяцев назад
Расскажу как адаптировать и оптимизировать фронтенд, измерять и мониторить технические параметры. Только актуальный опыт запуска приложений в Кот-д’Ивуара и Замбии, только хардкор. 0:00 Вступление 0:23 Начало доклада 21:50 Вопросы докладчику moscowjs.org/events/moscowjs-60/ Все новости и анонсы MoscowJS в нашем телеграм-канале: t.me/moscowjs
MoscowJS 60 - От Mobile First к PWA, или почему стоит вернуться к основам веб-разработки Зар Захаров
Просмотров 4386 месяцев назад
Доклад Зара будет про то, чему научил нас полный ошибок путь от простых технологий к сложным и тяжёлым PWA, и почему пора сделать разворот на 180 градусов 0:00 Вступление 0:33 Начало доклада 22:57 Вопросы докладчику moscowjs.org/events/moscowjs-60/ Все новости и анонсы MoscowJS в нашем телеграм-канале: t.me/moscowjs
MoscowJS 60 - Базовые принципы самопомощи - Тимур Гафиулин
Просмотров 3056 месяцев назад
Базовые принципы самопомощи, или почему опытному разработчику нужно стать наставником Частая ситуация в индустрии: тебя пушили, ты пушился, бежал, рос, стремился, а потом приходишь на собес, тебя спрашивают базовые вопросы по JS, а ты не знаешь ответа. Или же приходишь к руководству и говоришь: устал быть просто разработчиком, хочу быть лидом! А тебе логично отвечают: а с чего ты решил, что у т...
MoscowJS 58 - UI-кит на веб-компонентах - Роман Троицкий
Просмотров 7569 месяцев назад
Веб-компоненты пошумели и затихли, однако спецификация развивается, а сами веб-компоненты - удобная и производительная спецификация. В докладе коротко расскажу, что сегодня умеют веб-компоненты, и как собрать универсальный UI-кит на них с помощью StencilJS. moscowjs.org/events/moscowjs-58/ Все новости и анонсы MoscowJS в нашем телеграм-канале: t.me/moscowjs
MoscowJS 58 - Темная сторона NextJS - Александр Моргунов
Просмотров 5 тыс.9 месяцев назад
Cейчас почти на каждой фронтенд конференции есть доклад про самый популярный фреймворк, за которым будущее фронтенд разработки - NextJS. Рассказывают про новые фичи: серверные компоненты, серверные экшены, частичный пререндеринг с быстрой отдачей статического ответа и стримингом динамического контента. Кажется наконец-то появилось решение во фронтенде, которым все довольны. Но так ли все хорошо...
MoscowJS 58 - Как написать свой linter - Евгений Войтенко
Просмотров 2919 месяцев назад
Узнаем для чего нужен linter. Узнаем как его писать. Создадим абстрактное правило. Напишем правило для React и Node.js. Используем chat-gpt для помощи. moscowjs.org/events/moscowjs-58/ Все новости и анонсы MoscowJS в нашем телеграм-канале: t.me/moscowjs
MoscowJS Podcast #3 - С Александром Князевым вычисляем настоящих программистов
Просмотров 3229 месяцев назад
Третий выпуск подкаста московского сообщества разработчиков MoscowJS. Да, мы снова удивлены. Ведущие: Павел Востриков и Дима Королев. К нам в гости пришел Саша Князев, с которым мы пытаемся поставить точку в вопросе, нужны ли программистам горы. Запись доклада Саши с MoscowJS 56: ruclips.net/video/SXu4b3C8wtI/видео.html Присоединяйтесь к обсуждению в нашем чате в telegram: t.me/moscowjschat Под...
MoscowJS 58 - Наши круги ада со State Managers - Анастасия Постойко
Просмотров 96910 месяцев назад
Кажется, что в современной разработке уже совсем не обойтись без сторов, но к чему может привести их повсеместное использование? Какие трудности нам создал менеджер состояний и как теперь с этим живем я покажу на примере нашего текущего проекта. moscowjs.org/events/moscowjs-58/ Все новости и анонсы MoscowJS в нашем телеграм-канале: t.me/moscowjs
MoscowJS 56 - Nextjs 13 Server Actions - Арсалан Рабданов
Просмотров 716Год назад
MoscowJS 56 - Nextjs 13 Server Actions - Арсалан Рабданов
MoscowJS 56 - Монады, или зачем программисту математика - Александр Князев
Просмотров 2,3 тыс.Год назад
MoscowJS 56 - Монады, или зачем программисту математика - Александр Князев
MoscowJS 56 - Стартап, который смог - Евгений Кучерявый
Просмотров 358Год назад
MoscowJS 56 - Стартап, который смог - Евгений Кучерявый
MoscowJS 56 - Реализация DDD в рамках NestJS - Сердар Садыков
Просмотров 2,6 тыс.Год назад
MoscowJS 56 - Реализация DDD в рамках NestJS - Сердар Садыков
MoscowJS Podcast #2 - С Еленой Жуковой пугаем фронтендеров разработкой на SmartTV
Просмотров 320Год назад
MoscowJS Podcast #2 - С Еленой Жуковой пугаем фронтендеров разработкой на SmartTV
MoscowJS Podcast #1 - С Андреем Сёминым ищем работу, которой захочется гордиться
Просмотров 5873 года назад
MoscowJS Podcast #1 - С Андреем Сёминым ищем работу, которой захочется гордиться
MoscowJS 39 - Как не тестировать React библиотеку и крепко спать Технострим - Артур Удалов
Просмотров 3313 года назад
MoscowJS 39 - Как не тестировать React библиотеку и крепко спать Технострим - Артур Удалов
MoscowJS 39 - ComponentDidMount не нужен - Тимофей Ткаченко
Просмотров 1983 года назад
MoscowJS 39 - ComponentDidMount не нужен - Тимофей Ткаченко
MoscowJS 39 - WebRTCшная тема - Дмитрий Пацура
Просмотров 2533 года назад
MoscowJS 39 - WebRTCшная тема - Дмитрий Пацура
MoscowJS 39 - Немного о workerаx - Полина Гуртовая
Просмотров 4833 года назад
MoscowJS 39 - Немного о workerаx - Полина Гуртовая
MoscowJS 39 - Погружение в SSR - Дмитрий Зачесов
Просмотров 2213 года назад
MoscowJS 39 - Погружение в SSR - Дмитрий Зачесов
MoscowJS 37 - Как, черт возьми, надо ревьювить - Иван Стрелков
Просмотров 2583 года назад
MoscowJS 37 - Как, черт возьми, надо ревьювить - Иван Стрелков
MoscowJS 37 - Цена пропущенного фрейма - Дмитрий Шуранов
Просмотров 883 года назад
MoscowJS 37 - Цена пропущенного фрейма - Дмитрий Шуранов
MoscowJS 37 - Typescript + webpack: эволюция сборки SPA - Александр Черников
Просмотров 3183 года назад
MoscowJS 37 - Typescript webpack: эволюция сборки SPA - Александр Черников
MoscowJS 37 - Интерактивные 3D карты своими руками - Александр Амосов
Просмотров 1033 года назад
MoscowJS 37 - Интерактивные 3D карты своими руками - Александр Амосов
MoscowJS 36 - PreJSS: универсальный адаптер CSS в JSS - Денис Измайлов
Просмотров 1033 года назад
MoscowJS 36 - PreJSS: универсальный адаптер CSS в JSS - Денис Измайлов
MoscowJS 36 - Бенчмарки, почему всё плохо и что делать - Михаил Бусырев
Просмотров 3413 года назад
MoscowJS 36 - Бенчмарки, почему всё плохо и что делать - Михаил Бусырев
MoscowJS 36 - Harry Potter and the unstable_renderSubtreeIntoContainer() - Иван Лягушкин
Просмотров 763 года назад
MoscowJS 36 - Harry Potter and the unstable_renderSubtreeIntoContainer() - Иван Лягушкин
MoscowJS 36 - Тестирование скриншотами: проблемы и решения - Александр Савин
Просмотров 2293 года назад
MoscowJS 36 - Тестирование скриншотами: проблемы и решения - Александр Савин
MoscowJS 35 - Redux-saga естественный код - Евгений Евсеев
Просмотров 1333 года назад
MoscowJS 35 - Redux-saga естественный код - Евгений Евсеев
MoscowJS 35 - Как подружить дизайнеров с разработчиками? - Виталий Грин
Просмотров 543 года назад
MoscowJS 35 - Как подружить дизайнеров с разработчиками? - Виталий Грин

Комментарии

  • @xanteI
    @xanteI День назад

    Он точно техлид?))0))

  • @litterjunk8632
    @litterjunk8632 2 дня назад

    миллионы програмистов используют rx и не парятся за математику одни скалисты 20 лет пристат к друг другу своими монадами

  • @shaiika
    @shaiika Месяц назад

    Чё за скуфы собрались, почему это в списке ленты рекомендаций

  • @WebkittenDEV
    @WebkittenDEV Месяц назад

    огонь! Всех с наступающим! ♥

  • @collapser_team
    @collapser_team 2 месяца назад

    Что за либа для DDD примитивов?

  • @julesbois2122
    @julesbois2122 2 месяца назад

    Источники? "The Absolute Best Intro to Monads For Software Engineers" by @StudyingWithAlex?

  • @tseryakov
    @tseryakov 3 месяца назад

    классно, емко и по делу, получил много ответов и примеров

  • @alexandrcorbin
    @alexandrcorbin 3 месяца назад

    А в чем смысл давать ссылку на слайды, в которых только мемы и реклама телеграм каналов? Может хотя бы скриншоты кода автора нужно было сделать?

  • @ruslanvanzhula6823
    @ruslanvanzhula6823 4 месяца назад

    Довольно интересно и лаконично. Много можно подчерпнуть. Побольше бы проектов с правилами и архитектурой. На практике мало кто с таким заморачивается в JS мире :(

  • @ПётрПетров-д2ч4х
    @ПётрПетров-д2ч4х 4 месяца назад

    Больше не зовите того персонажа, который был на разогреве (что-то несвязное про next блеял). Доклад ни о чем и ведущая хорошо подстебнула вопросом - первое ли это его выступление (явно не рожден для выступлений на сцене).

  • @mokevnin
    @mokevnin 4 месяца назад

    Помнится я тут в основном наблюдал)

  • @YakovL
    @YakovL 5 месяцев назад

    "расписание" рендерится как (неверные) таймкоды ;) Хорошо бы заменить на реальные таймкоды

    • @moscowjs
      @moscowjs 5 месяцев назад

      поправили )

  • @ondawave
    @ondawave 6 месяцев назад

    Стало понятно почему ВК музыка такой отстой

  • @yiohann
    @yiohann 6 месяцев назад

    Виктор - реал легенда. Работал с ним в прошлом. Надеюсь 🤞 работать и в будущем ☝️

  • @zagboris
    @zagboris 6 месяцев назад

    Крутой доклад!

  • @alexnozer
    @alexnozer 6 месяцев назад

    Уточню некоторые моменты. Polymer не обновлялся 4 года. Как уже сказали в соседнем комментарии, проект закрыт в пользу Lit, который является наследником Polymer. Про outputTargets. В начале доклада среди плюсов был отмечен агностик-подход. При этом используются outputTargets, что на выходе всё равно даст несколько компонентов под конкретные фреймворки. В этом нет большой необходимости, так как Angular и Vue из коробки работают с нативными веб-компонентами, достаточно включить флаг. Делать враппер имеет смысл только под React, так как до 19 версии он плохо работает с нативными веб-компонентами. Про атрибуты, строки и сложные данные. Это вопрос парадигмы. В React всё является JS-ом. Разметка в виде JSX тоже JS, поэтому пропсы являются свойствами объекта и принимают любой тип данных. Разметка нативных веб-компонентов -- это HTML. Атрибуты в HTML -- строки, потому что они задуманы для другого. Веб-компоненты без проблем принимают любые данные, если передавать их в JS как свойства объекта, а не атрибуты. И дело не в палках, которые вставляют спеки, а в обычной разнице между атрибутами HTML и свойствами JS/DOM. RUclips полностью работает на веб-компонентах. Это не совсем так. RUclips использует веб-компоненты для отдельных частей UI, но в целом он написан на Wiz, внутреннем гугловском фреймворке, про который недавно говорили и который сейчас мержат с Angular. Про вопросы использования веб-компонентов вместо фреймворков. Веб-компоненты -- не замена фреймворков. Это способ расширения HTML своими кастомными элементами с некоторыми плюшками. На веб-компонентах можно построить приложение в том же смысле, что и построить приложение на чистом JS, но так никто не делает. Поэтому в качестве альтернативы стоит расматривать не веб-компоненты, как таковые, а фреймворки на их основе: Lit, Symbiote, Aurelia и т.д

  • @Black1991Star
    @Black1991Star 6 месяцев назад

    Докладчик очень много треплется. Начинает с исторического доклада, но рассказывает настолько коряво, что не рекомендую. Можете смотреть с 12 минуты, ничего не потеряете. К чему в теме PWA вообще не понятно...

  • @nikitayaskevich813
    @nikitayaskevich813 6 месяцев назад

    Доклад начинается в 5:38

  • @MarselAkhmetshin
    @MarselAkhmetshin 6 месяцев назад

    Спасибо за отличный доклад!

  • @MrBinarybrain
    @MrBinarybrain 6 месяцев назад

    Виктор - легенда! Буду рад поработать вместе с ним в будущем!

  • @johngalt9494
    @johngalt9494 6 месяцев назад

    Начало - 7:30

  • @alexperemey6046
    @alexperemey6046 6 месяцев назад

    Не всем наставники нужны. Просто есть люди, которые не способны самостоятельно учиться. Они ничего не смогут понять, если им не объяснят.

  • @sunstarter5269
    @sunstarter5269 6 месяцев назад

    Начало 33:05

  • @noutsure
    @noutsure 7 месяцев назад

    qr не работает :(

  • @nicolasborn3788
    @nicolasborn3788 7 месяцев назад

    Z-банк)

  • @topsy_kreds
    @topsy_kreds 7 месяцев назад

    На последнем докладе какой-то рассинхрон звука с видео

  • @АртурЦой-ц8н
    @АртурЦой-ц8н 8 месяцев назад

    Кто только начинает знакомиться с RxJS это видео будет сложным. Лекция больше подходит для тех, кто уже разобрался углубленно и хочет просмотреть еще раз про RxJS в одном видео и разложить информацию по полочкам

  • @wardxela
    @wardxela 8 месяцев назад

    26:29 - Не совсем понял претензию про контексты: почему их нет в app router? По-моему любой стейт менеджер можно подружить с этой архитектурой. Важно только вынести компонент инициализации контекста в отдельный файл и прописать 'use client'; В дальнейшем все серверные компоненты можно передавать как children. Единственное ограничение - вы не можете пользоваться этим контекстом в серверных компонентах. Вообще серверные компоненты - это про другой подход к построению приложения. Я их воспринимаю просто как способ что-то сделать на сервере и отдать полученное на клиент без возможности изменения. Любое изменение в серверном компоненте должно подразумевать очередной запрос на сервер.

  • @wardxela
    @wardxela 8 месяцев назад

    Спасибо за выступление, интересные мысли.

  • @yohimik
    @yohimik 9 месяцев назад

    7:38 такое легко делается через кастомный сервер 12:04 аналогично, некстовые либы возвращают хендлер, который работает с дефолтными нодовскими req и res, делай с ним что хочешь, хоть на express повесь, хоть на fastify кастомный логер для логирования некстовых сообщений, правда не добавишь (глобально костылить только типа console.log = () => ... или патчить файлы) рекомендация использовать page router жесть, может классовые компоненты тогда ещё? никто не будет в будущем сильно поддерживать page router, а новые функции будут в app router, тем более когда уже столько времени потратили на него. пока оставили page, чтобы люди успели мигрировать на app

    • @endlesslysorrow
      @endlesslysorrow 8 месяцев назад

      там же написано: для SSR, app router это по дефолту RSC, это не совсем SSR

    • @yohimik
      @yohimik 8 месяцев назад

      ​@@endlesslysorrow ну если идейно устаревший ssr нужен ради того, чтобы ответы были пререндерены именно на сервере, а не для того, чтобы решать современные проблемы и совмещать разные подходы и при всем этом решать все те же проблемы, что и чистый ssr, то ок)

  • @_ivanoleksiuk
    @_ivanoleksiuk 9 месяцев назад

    27:57 а на какой архитектуре писать с нуля?

    • @typingaway
      @typingaway 8 месяцев назад

      Все зависит от задач же. Если нужно SEO (= SSR), то NextJS (можно посмотреть на альтернативы конечно, но NextJS по развитию вырывается вперед). А какую архитектуру, хороший вопрос. Я придерживаюсь мнения, если проект не критичный для бизнеса, то можно без проблем пробовать новую архитектуру на AppRouter. В ином же случае PageRouter, но писать код так, что бы в дальнейшем было просто перейти на новую архитектуру (например, разделять серверный стейт (кеши запросов), и клиентский для логики на клиенте).

  • @dimondurak
    @dimondurak 9 месяцев назад

    Polymer не обновлялся четыре года и не будет обновляться по одной простой причине - это предтеча Lit. Одна и та же команда в недрах Гугла сначала пилила Polymer, а теперь пилит Lit. Т.е. это не отдельные и независимые друг от друга библиотеки, а эволюционное развитие идеи использования веб-компонент. И это лишь один из многих моментов в докладе, когда хочется сделать фейспалм

  • @Гооол-й4ч
    @Гооол-й4ч 9 месяцев назад

    А откуда информация, что в app router`e нет возможности работать с реакт контекстом? Я вроде месяц назад на 14.1 писал и всё работало, может я что-то не так понял?

  • @romanmed9035
    @romanmed9035 9 месяцев назад

    все же непонятно их сдерживает сложность перехода на новую архитектуру, а если бы сейчас начинали, то какую использовали бы или вообще не нэкст,

    • @typingaway
      @typingaway 8 месяцев назад

      Сдерживает то, что придется все приложение переписать. У нас толстый клиент и много логики перенесено на клиент. Из-за этого активно используется редакс и для перехода на AppRouter придется почти все рефакторить, на это к сожалению ресурсов нет. Что бы использовали, ниже ответил, что все зависит от задач. Так как нам нужно SEO (SSR), то использовали NextJS, скорее всего на PageRouter-е, но писали бы код так, что бы потом было просто мигрировать на AppRouter

    • @romanmed9035
      @romanmed9035 8 месяцев назад

      @@typingaway спасибо за пояснения

  • @EvgeniyFrontendDev
    @EvgeniyFrontendDev 9 месяцев назад

    Чет я вообще не понял про куки в next rsc. Да и как-то уже не хочется использовать page router.

    • @developerdiary3136
      @developerdiary3136 9 месяцев назад

      Из-за стриминга есть проблемы с куками, ишьюсы можете найти

    • @izzei-1614
      @izzei-1614 9 месяцев назад

      Что такого в page router? Он стабилен, в нем работает вся экосистема реакта, подход к созданию приложений типичный и понятный для всех разработчиков

  • @snatvb
    @snatvb 9 месяцев назад

    16:33 статически можно собрать, получить куки и хэдеры можно, это ж базовые вещи, странно что такое просочилось в доклад

  • @vladimircreator
    @vladimircreator 9 месяцев назад

    18:10 * ещё Remix и Gatsby

  • @vladimircreator
    @vladimircreator 9 месяцев назад

    Насчёт серверных компонентов не понял претензию. Наооборот это лучше, чем тащить килобайты JavaScript и ждать пока этот JavaScript отрисует интерфейс. А так можно получить готовую HTML и вуаля.

    • @izzy7541
      @izzy7541 9 месяцев назад

      А зачем нам в таком случае некст? Берём генератор статики, получаем готовый хтмл и вуаля

    • @vladimircreator
      @vladimircreator 9 месяцев назад

      @@izzy7541 SSR

    • @Гооол-й4ч
      @Гооол-й4ч 9 месяцев назад

      @@izzy7541 , генератор статики это кто, если не секрет?

    • @endlesslysorrow
      @endlesslysorrow 8 месяцев назад

      @@izzy7541 с такими развернутыми комментариями можно предложить просто в html файлик все писать

    • @zapilniy
      @zapilniy 8 месяцев назад

      В таком случае нужна серверная инфра, которая будет заниматься генерацией хтмлок, в отличие от SPA

  • @vanzo16
    @vanzo16 10 месяцев назад

    Обожаю начало.

  • @RisDeep
    @RisDeep 10 месяцев назад

    Надеюсь за это платят. Разгребать легаси

  • @amalitsky
    @amalitsky 10 месяцев назад

    классный доклад, спасибо! меньше сторов для победы! очень круто что по Vue доклад - их очень мало многие вопросы были отвечены уже в докладе не совсем понял про сторы для форм, ну и фиг с ними - видимо специфическое решение для их продукта

  • @pashadjoystick
    @pashadjoystick 10 месяцев назад

    уровень разработчиков растёт - уже утром понимаешь что вчера вечером писал не то и так по спирали будет всегда. чем чаще проект переписывается полностью тем он ближе к идеалу - вот если оставлять часть беспорядка то из остатка опять расплодится много. я после года писанины понял как нужно было и за 2 недели написал программу в 10 раз меньше но абсолютно стабильную. тем более что реактивный js запутанный ибо его долепливали на изначально не иерархичный язык - там многое ещё не сформировалось поэтому человек пишет много того что должно быть под капотом. джанга тоже структуру имеет заблудшую так что коктейль у вас заведомо провальный

  • @johnins1646
    @johnins1646 10 месяцев назад

    Работают профессионалы!

  • @assetdev1859
    @assetdev1859 Год назад

    спасибо спикеру за пояснение

  • @rendalf256
    @rendalf256 Год назад

    начало с 4:50

  • @GGSoft2009
    @GGSoft2009 Год назад

    Спасибо!!!!

  • @user-obyuzer
    @user-obyuzer Год назад

    Спасибо за доклад, в интернете мало примеров реализации в коде. Могли бы поделиться github?

  • @Lapteuh
    @Lapteuh Год назад

    Как всё начиналось. А потом сектанство в вопросах. А такое коллегах показывать страшно.

  • @dlcbook
    @dlcbook Год назад

    Доклад хороший, даёт прописные истины, которые почему-то нужно разжёвывать многим руководителям.

  • @timmusharapov9257
    @timmusharapov9257 Год назад

    У вас ошибка в превью видео