Тимур, молодец, что несешь в массы бесценный накопленный опыт работы с канвой core-команд Miro! Было очень интересно слушать. Кирилл, спасибо за гостя!
- FE guilds и шарринг знаний каждые две недели - return types linting - 20 сек для холодного старта - избегать сложных типов для слишком абстрактных функций - монолит для нескольких миллионов строк кода (у меня был шаблон в голове, что это не будет работать никогда) - neovim (конфиг??😂❤) - гениальное решение с конкурентным доступом Жаль не спросили, сколько по времени и как часто код в прод деплоится и как происходит тестирование (e2e) ❤❤❤
e2e (4к тестов) больно и в текущий момент не очень стабильно, гоняются на каждый комит в мастере. Continuous deployment по крону каждый рабочий день с 8 утра до 3 дня.
Спасибо за подкаст! Подскажите, пожалуйста, о какой опции конфигурации TypeScript вы говорили? Для контроля типов возвращаемого значения функций используется правило eslint explicit-function-return-type. Не слышал, чтобы в ТС добавляли подобное.
Я не понял а почему тут нет комов? Чуваки пишите плиз коммы, минимум на 4 слова, чтобы продвинуть видос. Надо поддерживать такой контент, хотя бы лайками и комментами
Для canvas упрощения разработки есть пару неплохих инструментов для apps где активное использование canvas. В одной из компаний при разработке визуального использования сложной системы на canvas, использовали konvajs, но с оберткой konva-react. Но в некоторых моментах для оптимизации приходится использоваться konvajs api, вместо konva-react абстракции. Еще неплох pixijs тоже можно заточить под canvas apps чтобы совсем в свои велосипеды не уходить.
Бобрый час. Вопрос не по теме, просто по мере развития диалога в голове выстраивалась конструкция. Вот сколько лет работаю, всё больше прихожу к тому, нравится мне в основном процесс создания/запуска проектов, а вот написание простого кода/вёрстки лендингов/однотипные задачки вгоняют в апатию. Вижу себя как архитектора именно внутреннего устройства проекта, но не инфраструктуры как таковой (там сильно плаваю). Так вот, собственно, вопрос: архитектор проекта - это опытный синьёр, или именно стиль мышления? Множество синьёров в моём окружении не хотят заниматься структурой, им интересно либо копаться в бизнес логике, либо решать и оптимизировать какую то задачу по типу пререндера реакт приложения, а вот создание работающего как часы оптимизированого ПРИЛОЖЕНИЯ у них решается "количеством запущенных нод на серваке и не стоит внимания". А по мне - правильно спроектированное приложение приводит к ускорению разработки и контролируемости качества... а не всем отделом одно изображение менять неделю, ибо не по феншую.
Ну во-первых, синьор - не значит хороший и опытный разработчик. Кто копается только в бизнес логике я бы определил как миддл, миддл+(имхо)Хотя по факту ты получаешь тот грейд на который тебя оценили в компании. Во-вторых, можно исполнять роль техлида, который может запустить проект: выбрать технологии под потребности, настроить его для комфортной разработки, верхнеуровнево создать структуру проекта и общую функциональность и уже дальше передавать подчиненным. В процессе разработки можно следить за развитием проекта: делать код-ревью, улучшать сборку проекта, разбивать проект на микрофронтенды, если необходимо. Хотя половина времени будет уходить на планирования и груминг. Вторая половина - кодинг, ревью, исследования, декомпозиция задач, раскидывание задач, шаринг знаний. Либо можно быть единственным синьором в команде, ответственным за проект. Там меньше менеджерских обязанностей, но кодить больше
13:46 в Unity канвас так же работает, а для постоянно изменяемых элементов вводится subCanvas - чтоб не обновлять внешний большой канвас, вероятно дешевле сделать и нельзя
Ух ты, как раз искал хорошую рисовалку в браузере с нормальной производительностью. tldraw норм, правда сразу же увидел в нем такой момент - в хроме он рисует кривые более гладко чем в сафари (такое ощущение что реализация сглаживания в хроме другая или в сафари ее нет)
Текстового редактора на канвасе нет потому что его невероятно сложно реализовать. Его реализация начинается с железа - видюхи, которая умеет рисовать примитивы и символы (ускорение). Далее операционная система - API ввода/вывода. Далее API браузера, которое реализует непосредственно текстовый редактор, с курсором, выделением, прокруткой и т.д. и т.п. В случае с канвасом надо решать все это заново причем на одном уровне на JS - начиная с отрисовки символов и навигации курсора в тексте.
Ну эта тема довольная понятна... внутри канваса высокопроизводительный движок, которому скармливают координаты и он рисует... грубо говоря очень производительный с++ код на оснвое координат (линии, прямоугольники, ИХ МАСШТАБИРВОАНИЕ, то есть изменение размеров влечет простую перерисовку)... и таких координат тысячи. Нарисуйте 1тыс стрелок, 5000 квадратов, все это покрасьте, свяжите друг с другом и измените размер на хтмл... а да, нарисуйте стрелку с одного блока на 137пкс ниже и 13 пкс левее начало с дугой на хтмл :) А хтмл компонент вставляют в месте редактирования (ОДИН!!! один дом элемент, просто видов много, но в моменте это один элемент) - просто рождают дом элемент, который прибьют после редактирования. Я могу ошибаться, так как я с фронтом знаком поверхностно, но в целом идеи скорее близки к правде, чем к неправде
все мировцы с кем приходилось общаться - нереальные чсвшники, и самое смешное изза их криво написанного сервиса. Типо посмотрите как мы преодолеваем трудности которые сами же создали. Половину проблем можно было убрать просто переписав бэк и сделать нормальное клиент серверное взаимодействие. Тем более что на бэке сервис простой как пробка, сделать mvp v2 можно было бы максимум за пару кварталов, с учетом их раздутого штата
вы скорее правы, но с одним допущением - это все можно сделать с их опытом, их экспертизой, но с нуля... су нуля, с нуля... у них нет этой привилегии, у них нет возможности сделать с нуля - есть миллионы строк кода (из названия, но стоит полагать - их реально миллионы), есть миллионы пользователей (буквально миллионы)
они уже не из России, компания выросла масштаб страны, этот масштаб повлиял на компанию ценой, когда весь мир кроме Кубы и Сев. Кореи поддержали одного человечка в его наполеоновские идеи
Ведущий, выпей... кофе! Ну что за тупняк вначале? Если канвас работает на уровне раскрашивания пикселей, ну понятно же, что реализовать в нём текстовый редактор -- это непросто! Работать с мутабельным деревом очевидно сложнее, чем с чистыми функциями.
вы как-то очень плохо к зрителю относитесь... или вы про ведущего? Но ведущий для зрителей задавал вопросы, его способности и понимание за скобками в таком случае... можете уточнить про тупняк?
Тимур, молодец, что несешь в массы бесценный накопленный опыт работы с канвой core-команд Miro! Было очень интересно слушать. Кирилл, спасибо за гостя!
Таких собеседников бы почаще
Спасибо Кириллу и Тимуру за классный выпуск)
- FE guilds и шарринг знаний каждые две недели
- return types linting
- 20 сек для холодного старта
- избегать сложных типов для слишком абстрактных функций
- монолит для нескольких миллионов строк кода (у меня был шаблон в голове, что это не будет работать никогда)
- neovim (конфиг??😂❤)
- гениальное решение с конкурентным доступом
Жаль не спросили, сколько по времени и как часто код в прод деплоится и как происходит тестирование (e2e)
❤❤❤
e2e (4к тестов) больно и в текущий момент не очень стабильно, гоняются на каждый комит в мастере. Continuous deployment по крону каждый рабочий день с 8 утра до 3 дня.
Deploy workflow занимает < минуты
Было интересно!)
Ура, Тимур
Про Miro очень интересно!
Как они через хуй клиентов кидают? Очень интересно
Хорошее видео, интересная беседа
Отдельное спасибо за тайм-коды!
Спасибо за выпуск! Интересно было бы узнать про тестирование подобного проекта
Отличный контент, спасибо!
Спасибо!!!очень интересно!!!
Спасибо за подкаст! Подскажите, пожалуйста, о какой опции конфигурации TypeScript вы говорили? Для контроля типов возвращаемого значения функций используется правило eslint explicit-function-return-type. Не слышал, чтобы в ТС добавляли подобное.
Я не понял а почему тут нет комов? Чуваки пишите плиз коммы, минимум на 4 слова, чтобы продвинуть видос. Надо поддерживать такой контент, хотя бы лайками и комментами
Оч интересно!
Для canvas упрощения разработки есть пару неплохих инструментов для apps где активное использование canvas.
В одной из компаний при разработке визуального использования сложной системы на canvas, использовали konvajs, но с оберткой konva-react.
Но в некоторых моментах для оптимизации приходится использоваться konvajs api, вместо konva-react абстракции.
Еще неплох pixijs тоже можно заточить под canvas apps чтобы совсем в свои велосипеды не уходить.
Круто, Тимка❤
Спасибо!
Интересно было, спасибо
Побольше слов в комментариях пишем, чтобы в топы попасть🎉!
Бобрый час. Вопрос не по теме, просто по мере развития диалога в голове выстраивалась конструкция. Вот сколько лет работаю, всё больше прихожу к тому, нравится мне в основном процесс создания/запуска проектов, а вот написание простого кода/вёрстки лендингов/однотипные задачки вгоняют в апатию. Вижу себя как архитектора именно внутреннего устройства проекта, но не инфраструктуры как таковой (там сильно плаваю). Так вот, собственно, вопрос: архитектор проекта - это опытный синьёр, или именно стиль мышления? Множество синьёров в моём окружении не хотят заниматься структурой, им интересно либо копаться в бизнес логике, либо решать и оптимизировать какую то задачу по типу пререндера реакт приложения, а вот создание работающего как часы оптимизированого ПРИЛОЖЕНИЯ у них решается "количеством запущенных нод на серваке и не стоит внимания". А по мне - правильно спроектированное приложение приводит к ускорению разработки и контролируемости качества... а не всем отделом одно изображение менять неделю, ибо не по феншую.
Ну во-первых, синьор - не значит хороший и опытный разработчик. Кто копается только в бизнес логике я бы определил как миддл, миддл+(имхо)Хотя по факту ты получаешь тот грейд на который тебя оценили в компании.
Во-вторых, можно исполнять роль техлида, который может запустить проект: выбрать технологии под потребности, настроить его для комфортной разработки, верхнеуровнево создать структуру проекта и общую функциональность и уже дальше передавать подчиненным. В процессе разработки можно следить за развитием проекта: делать код-ревью, улучшать сборку проекта, разбивать проект на микрофронтенды, если необходимо. Хотя половина времени будет уходить на планирования и груминг. Вторая половина - кодинг, ревью, исследования, декомпозиция задач, раскидывание задач, шаринг знаний.
Либо можно быть единственным синьором в команде, ответственным за проект. Там меньше менеджерских обязанностей, но кодить больше
Не понял название инструмента в начале видел tea draw или tell draw, хз, как правильно
tldraw
13:46 в Unity канвас так же работает, а для постоянно изменяемых элементов вводится subCanvas - чтоб не обновлять внешний большой канвас, вероятно дешевле сделать и нельзя
Ух ты, как раз искал хорошую рисовалку в браузере с нормальной производительностью. tldraw норм, правда сразу же увидел в нем такой момент - в хроме он рисует кривые более гладко чем в сафари (такое ощущение что реализация сглаживания в хроме другая или в сафари ее нет)
Miro, привет!
Теймураз топ!
Текстового редактора на канвасе нет потому что его невероятно сложно реализовать. Его реализация начинается с железа - видюхи, которая умеет рисовать примитивы и символы (ускорение). Далее операционная система - API ввода/вывода. Далее API браузера, которое реализует непосредственно текстовый редактор, с курсором, выделением, прокруткой и т.д. и т.п. В случае с канвасом надо решать все это заново причем на одном уровне на JS - начиная с отрисовки символов и навигации курсора в тексте.
Спасибо за видео!
Где то раскрыли тему почему это сделано на канвас, а не html ? Если они все равно поверх канваса накладывают html
Ну эта тема довольная понятна... внутри канваса высокопроизводительный движок, которому скармливают координаты и он рисует... грубо говоря очень производительный с++ код на оснвое координат (линии, прямоугольники, ИХ МАСШТАБИРВОАНИЕ, то есть изменение размеров влечет простую перерисовку)... и таких координат тысячи. Нарисуйте 1тыс стрелок, 5000 квадратов, все это покрасьте, свяжите друг с другом и измените размер на хтмл... а да, нарисуйте стрелку с одного блока на 137пкс ниже и 13 пкс левее начало с дугой на хтмл :) А хтмл компонент вставляют в месте редактирования (ОДИН!!! один дом элемент, просто видов много, но в моменте это один элемент) - просто рождают дом элемент, который прибьют после редактирования. Я могу ошибаться, так как я с фронтом знаком поверхностно, но в целом идеи скорее близки к правде, чем к неправде
В реакте подход пулл ту апдейт, по крайней мере начиная с 18 версии, если я ничего не путаю
Топчик, еще и на русском
так и не понял почему все через canvas изначально
Как же охуенно!
что разрабатывал Тимур? (на 5 минуте 46 секунде сказал)
Excalidraw
@@sokolawp спасибо
все мировцы с кем приходилось общаться - нереальные чсвшники, и самое смешное изза их криво написанного сервиса. Типо посмотрите как мы преодолеваем трудности которые сами же создали. Половину проблем можно было убрать просто переписав бэк и сделать нормальное клиент серверное взаимодействие. Тем более что на бэке сервис простой как пробка, сделать mvp v2 можно было бы максимум за пару кварталов, с учетом их раздутого штата
Умник, устройся туда и реализуй. Но с дивана конечно проще болтать, что все дураки.
@@ramarren14кто тебе сказал что я там не работал клоун?
Соглы, смотрю видос и понимаю, что парень особо не понимает, что они там делают и как это устроено... Очень пустой мальчишка
вы скорее правы, но с одним допущением - это все можно сделать с их опытом, их экспертизой, но с нуля... су нуля, с нуля... у них нет этой привилегии, у них нет возможности сделать с нуля - есть миллионы строк кода (из названия, но стоит полагать - их реально миллионы), есть миллионы пользователей (буквально миллионы)
а почему миро не имеет русского языка?
они уже не из России, компания выросла масштаб страны, этот масштаб повлиял на компанию ценой, когда весь мир кроме Кубы и Сев. Кореи поддержали одного человечка в его наполеоновские идеи
Кинули клиентов из РФ. Молодцы.😮
Пермские разрабы, "ушедшие" из России. Чтож, достойная замена миро уже найдена.
Пустой мальчишка, ничего особо не знает. Сидит мычит и ничего толкового
Ведущий, выпей... кофе!
Ну что за тупняк вначале? Если канвас работает на уровне раскрашивания пикселей, ну понятно же, что реализовать в нём текстовый редактор -- это непросто!
Работать с мутабельным деревом очевидно сложнее, чем с чистыми функциями.
вы как-то очень плохо к зрителю относитесь... или вы про ведущего? Но ведущий для зрителей задавал вопросы, его способности и понимание за скобками в таком случае... можете уточнить про тупняк?
Такая каша у парнишки в голове. слабый очень слабый, зато сияет как-будто доктор наук
Отличный контент, спасибо!