Как поддерживать миллионы строк на фронтенде. Опыт Miro / #5

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 พ.ย. 2024

ความคิดเห็น • 58

  • @kos_kolesnikov
    @kos_kolesnikov 3 หลายเดือนก่อน +6

    Тимур, молодец, что несешь в массы бесценный накопленный опыт работы с канвой core-команд Miro! Было очень интересно слушать. Кирилл, спасибо за гостя!

  • @vik_2743
    @vik_2743 3 หลายเดือนก่อน +6

    Таких собеседников бы почаще

  • @boldureans
    @boldureans 3 หลายเดือนก่อน +1

    Спасибо Кириллу и Тимуру за классный выпуск)

  • @alexanderafonin1688
    @alexanderafonin1688 3 หลายเดือนก่อน +6

    - FE guilds и шарринг знаний каждые две недели
    - return types linting
    - 20 сек для холодного старта
    - избегать сложных типов для слишком абстрактных функций
    - монолит для нескольких миллионов строк кода (у меня был шаблон в голове, что это не будет работать никогда)
    - neovim (конфиг??😂❤)
    - гениальное решение с конкурентным доступом
    Жаль не спросили, сколько по времени и как часто код в прод деплоится и как происходит тестирование (e2e)
    ❤❤❤

    • @e-scaton
      @e-scaton 3 หลายเดือนก่อน +1

      e2e (4к тестов) больно и в текущий момент не очень стабильно, гоняются на каждый комит в мастере. Continuous deployment по крону каждый рабочий день с 8 утра до 3 дня.

    • @e-scaton
      @e-scaton 3 หลายเดือนก่อน +1

      Deploy workflow занимает < минуты

  • @Владимир-д9и7о
    @Владимир-д9и7о 2 หลายเดือนก่อน

    Было интересно!)

  • @vladtenten
    @vladtenten 3 หลายเดือนก่อน +5

    Ура, Тимур

  • @Dimitriy93
    @Dimitriy93 3 หลายเดือนก่อน +2

    Про Miro очень интересно!

    • @yourpapa69
      @yourpapa69 3 หลายเดือนก่อน

      Как они через хуй клиентов кидают? Очень интересно

  • @andor1904
    @andor1904 3 หลายเดือนก่อน

    Хорошее видео, интересная беседа
    Отдельное спасибо за тайм-коды!

  • @АлмазИлалетдинов-м3х
    @АлмазИлалетдинов-м3х 3 หลายเดือนก่อน

    Спасибо за выпуск! Интересно было бы узнать про тестирование подобного проекта

  • @synglrty
    @synglrty 3 หลายเดือนก่อน

    Отличный контент, спасибо!

  • @НаидамуртузалиеваМуртузалиева
    @НаидамуртузалиеваМуртузалиева 3 หลายเดือนก่อน

    Спасибо!!!очень интересно!!!

  • @19n1ght
    @19n1ght 2 หลายเดือนก่อน

    Спасибо за подкаст! Подскажите, пожалуйста, о какой опции конфигурации TypeScript вы говорили? Для контроля типов возвращаемого значения функций используется правило eslint explicit-function-return-type. Не слышал, чтобы в ТС добавляли подобное.

  • @ilkin.galoev
    @ilkin.galoev 3 หลายเดือนก่อน

    Я не понял а почему тут нет комов? Чуваки пишите плиз коммы, минимум на 4 слова, чтобы продвинуть видос. Надо поддерживать такой контент, хотя бы лайками и комментами

  • @alexanderzelenkov6944
    @alexanderzelenkov6944 3 หลายเดือนก่อน

    Оч интересно!

  • @КириллКостиков-т1в
    @КириллКостиков-т1в 3 หลายเดือนก่อน

    Для canvas упрощения разработки есть пару неплохих инструментов для apps где активное использование canvas.
    В одной из компаний при разработке визуального использования сложной системы на canvas, использовали konvajs, но с оберткой konva-react.
    Но в некоторых моментах для оптимизации приходится использоваться konvajs api, вместо konva-react абстракции.
    Еще неплох pixijs тоже можно заточить под canvas apps чтобы совсем в свои велосипеды не уходить.

  • @ГулишатХазамова
    @ГулишатХазамова 3 หลายเดือนก่อน +1

    Круто, Тимка❤

  • @gleb4059
    @gleb4059 3 หลายเดือนก่อน

    Спасибо!

  • @vad1ck
    @vad1ck 3 หลายเดือนก่อน

    Интересно было, спасибо

  • @sho_nuff
    @sho_nuff 3 หลายเดือนก่อน +1

    Побольше слов в комментариях пишем, чтобы в топы попасть🎉!

  • @AlefersXaoC
    @AlefersXaoC 3 หลายเดือนก่อน

    Бобрый час. Вопрос не по теме, просто по мере развития диалога в голове выстраивалась конструкция. Вот сколько лет работаю, всё больше прихожу к тому, нравится мне в основном процесс создания/запуска проектов, а вот написание простого кода/вёрстки лендингов/однотипные задачки вгоняют в апатию. Вижу себя как архитектора именно внутреннего устройства проекта, но не инфраструктуры как таковой (там сильно плаваю). Так вот, собственно, вопрос: архитектор проекта - это опытный синьёр, или именно стиль мышления? Множество синьёров в моём окружении не хотят заниматься структурой, им интересно либо копаться в бизнес логике, либо решать и оптимизировать какую то задачу по типу пререндера реакт приложения, а вот создание работающего как часы оптимизированого ПРИЛОЖЕНИЯ у них решается "количеством запущенных нод на серваке и не стоит внимания". А по мне - правильно спроектированное приложение приводит к ускорению разработки и контролируемости качества... а не всем отделом одно изображение менять неделю, ибо не по феншую.

    • @romanwednesday4401
      @romanwednesday4401 2 หลายเดือนก่อน +1

      Ну во-первых, синьор - не значит хороший и опытный разработчик. Кто копается только в бизнес логике я бы определил как миддл, миддл+(имхо)Хотя по факту ты получаешь тот грейд на который тебя оценили в компании.
      Во-вторых, можно исполнять роль техлида, который может запустить проект: выбрать технологии под потребности, настроить его для комфортной разработки, верхнеуровнево создать структуру проекта и общую функциональность и уже дальше передавать подчиненным. В процессе разработки можно следить за развитием проекта: делать код-ревью, улучшать сборку проекта, разбивать проект на микрофронтенды, если необходимо. Хотя половина времени будет уходить на планирования и груминг. Вторая половина - кодинг, ревью, исследования, декомпозиция задач, раскидывание задач, шаринг знаний.
      Либо можно быть единственным синьором в команде, ответственным за проект. Там меньше менеджерских обязанностей, но кодить больше

  • @monoteiz
    @monoteiz 2 หลายเดือนก่อน

    Не понял название инструмента в начале видел tea draw или tell draw, хз, как правильно

    • @ShaMan-n4u
      @ShaMan-n4u หลายเดือนก่อน

      tldraw

  • @SlothHuntOnYou
    @SlothHuntOnYou 3 หลายเดือนก่อน

    13:46 в Unity канвас так же работает, а для постоянно изменяемых элементов вводится subCanvas - чтоб не обновлять внешний большой канвас, вероятно дешевле сделать и нельзя

  • @oeaoo
    @oeaoo 3 หลายเดือนก่อน

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

  • @seregamorph
    @seregamorph 3 หลายเดือนก่อน

    Miro, привет!

  • @marselakhmetshin1954
    @marselakhmetshin1954 3 หลายเดือนก่อน

    Теймураз топ!

  • @Вбелом-й3з
    @Вбелом-й3з 3 หลายเดือนก่อน

    Текстового редактора на канвасе нет потому что его невероятно сложно реализовать. Его реализация начинается с железа - видюхи, которая умеет рисовать примитивы и символы (ускорение). Далее операционная система - API ввода/вывода. Далее API браузера, которое реализует непосредственно текстовый редактор, с курсором, выделением, прокруткой и т.д. и т.п. В случае с канвасом надо решать все это заново причем на одном уровне на JS - начиная с отрисовки символов и навигации курсора в тексте.

  • @sergsergey4251
    @sergsergey4251 3 หลายเดือนก่อน +1

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

  • @ДимаДанилов-ъ4у
    @ДимаДанилов-ъ4у 3 หลายเดือนก่อน

    Где то раскрыли тему почему это сделано на канвас, а не html ? Если они все равно поверх канваса накладывают html

    • @MaksimFedorov-w1o
      @MaksimFedorov-w1o หลายเดือนก่อน

      Ну эта тема довольная понятна... внутри канваса высокопроизводительный движок, которому скармливают координаты и он рисует... грубо говоря очень производительный с++ код на оснвое координат (линии, прямоугольники, ИХ МАСШТАБИРВОАНИЕ, то есть изменение размеров влечет простую перерисовку)... и таких координат тысячи. Нарисуйте 1тыс стрелок, 5000 квадратов, все это покрасьте, свяжите друг с другом и измените размер на хтмл... а да, нарисуйте стрелку с одного блока на 137пкс ниже и 13 пкс левее начало с дугой на хтмл :) А хтмл компонент вставляют в месте редактирования (ОДИН!!! один дом элемент, просто видов много, но в моменте это один элемент) - просто рождают дом элемент, который прибьют после редактирования. Я могу ошибаться, так как я с фронтом знаком поверхностно, но в целом идеи скорее близки к правде, чем к неправде

  • @KycokFt
    @KycokFt 3 หลายเดือนก่อน

    В реакте подход пулл ту апдейт, по крайней мере начиная с 18 версии, если я ничего не путаю

  • @alexanderafonin1688
    @alexanderafonin1688 3 หลายเดือนก่อน +1

    Топчик, еще и на русском

  • @Turned2Ice
    @Turned2Ice 3 หลายเดือนก่อน

    так и не понял почему все через canvas изначально

  • @maksimmurza7796
    @maksimmurza7796 3 หลายเดือนก่อน

    Как же охуенно!

  • @ТургайАлекберли
    @ТургайАлекберли 3 หลายเดือนก่อน

    что разрабатывал Тимур? (на 5 минуте 46 секунде сказал)

  • @xzib-nt5
    @xzib-nt5 3 หลายเดือนก่อน +20

    все мировцы с кем приходилось общаться - нереальные чсвшники, и самое смешное изза их криво написанного сервиса. Типо посмотрите как мы преодолеваем трудности которые сами же создали. Половину проблем можно было убрать просто переписав бэк и сделать нормальное клиент серверное взаимодействие. Тем более что на бэке сервис простой как пробка, сделать mvp v2 можно было бы максимум за пару кварталов, с учетом их раздутого штата

    • @ramarren14
      @ramarren14 3 หลายเดือนก่อน +2

      Умник, устройся туда и реализуй. Но с дивана конечно проще болтать, что все дураки.

    • @xzib-nt5
      @xzib-nt5 3 หลายเดือนก่อน +6

      ​@@ramarren14кто тебе сказал что я там не работал клоун?

    • @chikenmacnugget
      @chikenmacnugget 3 หลายเดือนก่อน +3

      Соглы, смотрю видос и понимаю, что парень особо не понимает, что они там делают и как это устроено... Очень пустой мальчишка

    • @MaksimFedorov-w1o
      @MaksimFedorov-w1o หลายเดือนก่อน

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

  • @Сергей-ь9о5б
    @Сергей-ь9о5б 3 หลายเดือนก่อน +2

    а почему миро не имеет русского языка?

    • @MaksimFedorov-w1o
      @MaksimFedorov-w1o หลายเดือนก่อน

      они уже не из России, компания выросла масштаб страны, этот масштаб повлиял на компанию ценой, когда весь мир кроме Кубы и Сев. Кореи поддержали одного человечка в его наполеоновские идеи

  • @evgenyognev1569
    @evgenyognev1569 3 หลายเดือนก่อน +6

    Кинули клиентов из РФ. Молодцы.😮

  • @christophercave5203
    @christophercave5203 3 หลายเดือนก่อน

    Пермские разрабы, "ушедшие" из России. Чтож, достойная замена миро уже найдена.

  • @chikenmacnugget
    @chikenmacnugget 3 หลายเดือนก่อน +1

    Пустой мальчишка, ничего особо не знает. Сидит мычит и ничего толкового

  • @docal2
    @docal2 หลายเดือนก่อน

    Ведущий, выпей... кофе!
    Ну что за тупняк вначале? Если канвас работает на уровне раскрашивания пикселей, ну понятно же, что реализовать в нём текстовый редактор -- это непросто!
    Работать с мутабельным деревом очевидно сложнее, чем с чистыми функциями.

    • @MaksimFedorov-w1o
      @MaksimFedorov-w1o หลายเดือนก่อน

      вы как-то очень плохо к зрителю относитесь... или вы про ведущего? Но ведущий для зрителей задавал вопросы, его способности и понимание за скобками в таком случае... можете уточнить про тупняк?

  • @chikenmacnugget
    @chikenmacnugget 3 หลายเดือนก่อน

    Такая каша у парнишки в голове. слабый очень слабый, зато сияет как-будто доктор наук

  • @synglrty
    @synglrty 3 หลายเดือนก่อน

    Отличный контент, спасибо!