#61 Эволюция браузеров: от IE6 до ИИ-оболочек | Вадим Макеев
Привет, друзья. С вами подкаст Организованное программирование. Я ведущий Кирилл Мокевнин. И сегодня у меня в гостях Вадим Макеев. Я, кстати, думаю, что, Вадим, тебя, наверное, особо представлять-то, в принципе, можно было бы и не представлять, потому что, я думаю, почти все тебя знают. Но а Вадим давно в нашей, так сказать, сфере был адвокатом долго лет оперы. Для меня, кстати, наверное, там застолбилась вот эта основная твоя история. Сейчас мозили терайтером Вадим работает и MDN делает, которым пользуемся мы все, кто занимается фронтдом. Так или иначе, это основной источник информации. Ну и правильно, я себе скажу, бессменный ведущий под один из ведущих подкаста Вебстандар. Есть такое продюсер, ээ монтажёр и всё на свете, всё в одном. Да, видишь, а я ленивый, у меня есть помощник, потому что я никому не доверяю, никому не хватает сил на Да. То есть реально всё сам делаешь, да? Да. Да. С первого дня скоро 10 лет, как каждую неделю записываем, монтируем и всё такое. Прикольно. Это, кстати, знаешь, вот когда говорят, что вот человек, вот он только в одном чём-то специалист может быть. Вот я всегда не согласен с этим. Видишь, вот ты монтажем умеешь заниматься. Ещё музыкой занимашиваю. Вышивать умею, да. Серьёзно? Нет, не умею. А у меня в на работе был чувак. Да, в смысле, есть чувак, который занимается вышиванием. Молодецполнят. Да. Так что бывает по-разному. Показывать надо шапочки, которые он сделал.
Ну вот, ребята, у нас, значит, сегодняшняя наша тема подкаста - это браузеры, потому что Вадим, а, всю жизнь этим занимается. Мне кажется, наверное, ты, наверное, один из самых таких людей близких вообще в России, ну, из русскоязычных, кто про всё это очень хорошо знает. И мы сегодня хотим поговорить по-разному, на самом деле, и с внешней точки зрения, и с технической точки зрения, и с бизнесовой точки зрения. Объясню, почему. Потому что я, когда входил в IT, это было там 2007 год, это времена борьбы с Е6. Escape уже отгремел там, да, вот это вот переходы все произошли. И вот отдельная вёрстка под еше, то есть столько было много разговоров, столько было специфики и так далее. И знаешь, для меня в какой-то момент всё это просто исчезло. При том, что фронтендом я заниматься не перестал. Он он у нас везде, его становится больше. Но вот эта вот история именно прямо вёрст под какие-то браузеры, специфика, префиксы, там стандарты, то, тормоза, просто белый шум, тишина. Вообще я ничего не знаю. Подозреваю, что это никуда не делось, но только как-то трансформировалось. Давай вот с этого начнём, потому что вообще что происходит сейчас вот в этом отношении? Есть кто-то Е6 новый, кто на вершине? Мне кажется, ты уши заткнул, а а не а не шум ушёл. Скорее такая история была. То есть, э- когда когда ушёл Ие, началась другая эпоха, пришёл мощный webbit, потому что он принёс мобильные платформы, то есть появился iOS, Safari мобильный и так далее. Это стало огромным источником, а, кроссбраузерных проблем, потому что, по сути, мобильный веб изобретался с нуля и нужно было всё отладить. Вот. А потом ещё появился Chrome, и он тоже начал, э, примерно в эти годы, ну, чуть позже, а, появился Chrome, и он тоже начал, а, отъедать рынок. Очень сильно влияет на на стандарты и на их развитие. Короче, приключения никуда не делись. Просто они стали другими, как всегда. Мне кажется, веб никогда не успокоится. Ну вот это то, что это было тогда. Ну, в какой-то момент Chrome, по-моему, там чуть не 90% рынка, да, занял. Не, ну 90 было такой Е6. У хрома, по-моему, было там 60-70% рынка максимум. И, по-моему, сейчас он перестал расти впервые за последние годы. У меня такое чувство. Угу. Ну, то есть если мы как как бы верстаем при том, что я регулярно этим занимаюсь, компонентики там всякие пишу, такого, что мы такие сидим и под какой-то браузер что-то делаем, оно всё равно отсутствует. Хотите расти как разработчик не в одиночку, а вместе с сильным сообществом? А, то есть ты хочешь сказать, всё-таки Е6 есть или есть просто проблемы общие какие-то кроссбраузерные там, которые, да, кроссплатформенны, которые надо решать, но вот такого, что прямо отдельный какой-то браузер, под который надо страдать, такого больше нет. Есть Safari. Safari как браузер тут не особо ни при чём. Тут дело в том, как Apple подходит к к обновлению Safari. И, грубо говоря, одна из одна из причин, почему браузеры перестали быть головной болью вот так сильно, как во времена Е6 для фронт разработчиков, стало то, что браузеры нача стали вечно зелёными. Е, по-моему, 6 вышел в 2001 году и не а Е7 вышел типа спустя 8 лет или там сколько там, 9 лет. Ну, в общем, спустя много-много лет. То есть как бы выпустили идеальный браузер, его не нужно обновлять. Естественно, там был куча ошибок и сменилось чуть ли не целое поколение, пока пришлось вучить что-то новое, потому что я замер. А сегодня браузеры обновляются раз в 4 недели, практически все, кроме Safari. Safari раньше обновлялся раз в год, теперь обновляется, ну, 5-7восемь там раз в год релизы у них, а, но довольно часто, но это не проблема. То есть даже Safari стала достаточно зелёным браузером. Проблема в том, что, э, Safari - это системный компонент. И чтобы обновить Safari, до сих пор Apple обновляет операционную систему. То есть накаче, то есть операционная система - это значит отдельная команда, которая secкюрити патчи, обновление интерфейса, ещё что-то такое вместе с этим катит огромный релиз. И туда включается вебкитовый движок и MacOS, и iOS, и iPadOS, и Watchos, вообще всё вот это вот эпловское. А Safari на других платформах нет. Ну то есть есть вебкитовый движок на других платформах, там на на рендуксах и можно скачать желание поставить, но это другое. Так вот, а если бы как только Apple перестаёт поддерживать своё устройство какой-нибудь iPad, а, который прекрасно работает, но на него операционная система обновления уже не приходит, браузер там не обновить. Макос ещё можно обновить. Хотя Chrome недавно анонсировали, что они дропают, по-моему, 10.12, ну, в общем, какую-то версию Макаси. Они перестают там, по-моему, последний Chrome будет 139 или 138, а после этого хроматом обновляться не будут. Другие браузеры, я думаю, будут шипать обновление для старой MC. Но вот Chrм решил так. Короче, конкретно Safari. Проблема в том, что есть много старых телефонов, планшетов, а в меньшей степени это касается MacOS, потому что туда можно поставить другие браузеры. Просто застряли, потому что на них не приходится обновление операционной системы. И вот это не масштабов и Е6, но проблема. И много у нас вот в подкасте мы часто обсуждаем об этом. Люди, которые вот прямо вот практики ежедневно разрабатывают какие-то большие большие системы на много пользователей, они говорят: "Мы это не можем внедрить, потому что у нас всего ещё значимый процент пользователей, которые застряли на 15,6 Safari и вот вот подобных версиях, которые в которых очень много чего нет. И вот пока Apple не придумает, как обновлять браузер отдельно от операционной системы, это будет проблема. А Microsoft прекрасно обновляет Edge, насколько я понимаю, без обновления операционной системы. А, и вообще это довольно обычная вещь на Андроиде тоже. Например, Chrome обновляется как прямо приложение из Google Plя, а Safari всё ещё системный компонент. Я понимаю, почему это происходит на самом деле, потому что это важный системный компонент, как и Е6 был, а, как и Е был частью операционной системы, а, до последних своих дней, пока вот его его не закопали, он прямо вот, по-моему, последние версии Ие шипились уже отдельными обновлениями, а до этого он то шипился вместе там с обновлением Windows тоже и потому что он был прямо важной частью операционной системы. Там какие-то системные справки, какие-то системные компоненты рендерились на движке, да, да, я так и понял. Вот. И я понимаю, почему Apple так делает, но это очень сильно устаревший подход, и он вретит разработчикам. И из-за того, что ты можешь потестить в Safari только, если у тебя есть устройство Apple, ты не можешь адекватно виртуалку, то есть можешь поднять виртуалку, ну, есть всякие всякая возня, но это это мучительно. А а ещё в в мобильном Safari есть стили мобильного Safari немножко отличаются от от стилей десктопного Safari. Там есть нюансики. Там по-другому кнопки скругляются и по-другому дефолтный цвет кнопки синий, а не чёрный. И столько засады я вижу. Да, да, да, да, да, да. То есть я столько засады вижу на мобильном сафаре. Я такой: "О, синяя кнопка". Готов спорить прямо сейчас, что это синяя кнопка, потому что разработчик не тестировал в мобильном Safari. Но тем не менее я говорить, что Safari - это новый Ие, я отказываюсь. Угу. Просто если с точки зрения вот имиджа Е6 он был бы гораздо гораздо страшнее и больнее. Safari просто наш новый особенный браузер. Угу. Слушай, а вот резец стили помогают снять вот эти разницу хотя бы в целом? Да. Да. То есть есть всякие тамлай CSS всё ещё то есть есть как бы можно написать той же самое кнопки там color inherit и всё будет нормально. То есть есть ээ способы нормализовать всё это в браузерах, но всё равно есть нюансики. Угу. Я правильно тогда понимаю, что в целом необходимость полифилов, потому что это целая была история, полифиллы, как мы их подрубаем, какие тра-та-та, она в целом ушла, да? Ну, как в целом полифилы с точки зрения у нас есть реализация в одном браузере, если реализация в другом браузере, они отвратительно совместимы, поэтому нужно написать полифил, чтобы он там попачил что-то, как вери был, как там ещё всякие там другие полифилы. Джеквери не был напрямую полифилом, но в каком-то смысле он нормализовывал реализацию в браузерах тоже. Полифил сегодня немножко по-другому используется. Полифил используется тогда, когда, а, в Хроме вышло, в Фейфоксе вышло, а в Safari не вышло. Или или или, допустим, Firefox догоняет или бывает, что Chrome тоже догоняет. Как-то разработчикам очень хочется фичу. Они а а в браузерах нет, они используют полифилы и а полифилится, в принципе, вс весь GS, какая-то часть ЦСа, к сожалению, не весь CSS полифилиц, потому что есть фичи типа гридов, энкропозиitionнга, каскадных слоёв, которые полифилится либо очень плохо, либо вообще не полифилится. Так что вот сегодня в основном джаваскриптовые полифилы, иногда CSсные. Мне, кстати, тут недавно пришлось воспользоваться Intersection Observer. Я про него вообще в целом не знал, потому что он мне не нужен был. А тут мне нужно было, знаешь, когда в блоге у тебя есть такой приём, когда мотаешь на следующую статью, у тебя она появляется в видимой части, и, соответственно, ты переключаешь Урл, у тебя прямо реально смена статьи происходит. Да, отвратительный интерфейсный паттерн, но такое бывает, да, он нужен. И это отдельная история, почему он нужен и почему это важно. с точки зрения там поведенческих факторов и так далее, это очень важная бизнесовая часть, и можно её хорошо сделать. На самом деле есть примеры. То есть вопрос пользу себя больно, просто это так личный ремарк. Да, да, да. Но мне, как бизнесмену иногда не остаётся выбором. Понимаю, понимаю. Такие вещи надо делать, да, да. В жизнь немножко сложнее. Тут микс всегда, где-то пользователю, где-то поисковикам надо делать хорошо. Так вот, там прикол в том, что вот вот этот механизм перехода, это ещё та хрень, чтобы её реализовать. То есть есть, оказывается, вот этот апсервер, который позволяет увидеть, что там находится. Я я, конечно, это целая история, как я могу рассказывать, сколько я потратил время на этот проклятый чат GPT, чтобы он мне сгенерил эту логику, потому что сам понимаешь, ручками это надо прямо сидеть и очень сильно вот думать про это всё. Но в конечном итоге вот я просто почему про это сейчас сказал, что-то ощущение, что такая штука не полифилица. Она как будто слишком сильно завязана на поведение браузера, либо там джез какой-то суперхитрый должен быть. Да, в целом, по-моему, обсервер полифилится. Я видел полифилы на него. А вопрос в том, насколько полноценно. Вот, допустим, я упомянул тот же самый positioning, то есть такой абсолютное позиционирование на стероидах. Можно сделать абсолютное позиционирование относительно какого-то элемента и чтобы он ещё за пределы окна не вылезал. Короче, очень очень умные анкропотишенька называется. Так вот, он полифилится в принципе на чистом ЦС с кусоч с кусочками Джеса, но но не на 100%. Потому что там есть какие-то вещи, которые, ну, дико сложно написать. Ну что-то может, ну, тормозить, может быть, будет, да, потому что тебе перечитывать всё надо, да, да. То есть условно, если у тебя осталось 5% пользователей, не знаю, 2% пользователей, у которых нет анкропозиitionнга, из-за этого страдает интерфейс, шлёпнуть его можно а поверх для всех остальных браузеров, которые прекрасно уже работают нативно с скропозиition. Но если ты ошибишь этот полифилл, как когда у тебя только 5% поддерживает нативно, а ты для 95% шипи полифилл, это безумие так делать не надо, потому что будет тормозить, будет бизнесовые метрики просаживаться, перформанс в общем, грустная история. Поэтому я вот такие вот сссные или джесные полифилы сложно рекомендую только прикладывать к длинному хвосту браузеров, которые не обновляются или обновляются медленно. Ну, прикольно. То есть в целом получается, конечно, разница есть. Она проявляется на на каких-то больших объёмах, когда у тебя процент пользователей - это реально куча людей, надо об этом думать. Но как будто в целом, если ты прямо неглубоко этой темой интересуешься, нет такого этого движника вокруг этого всего добра у тебя. Действительно, я, знаешь, каждый раз смотрю, как-то так, раз у тебя всё поддерживается, думаешь: "Господи, вроде фича-то недавно появилась, да, уже во всех браузерах есть". То есть помнишь, было, когда автообновление появлялось, было страх, что это может не сработать, ну, люди будут отключать или ещё что-то. Я так понимаю, что, в общем-то, это не оправдалось и у тебя реально всё просто у всех последнее почти всегда. Ну, не считая Safari. Ну или не совсем. Я в в браузерах, э, я не говорю за все браузеры и у меня как бы нет инсайдов на самом деле, но я знаю, что очень многие браузеры, может быть, нет отдельных отделов, но точно есть люди, отдельно занимаются фичей. Как сделать так, чтобы браузер обновлялся бесшовно? Даже не бесшовно, а без ведомого пользователя практически даже. То есть то условно ты перезагрузил свой ноутбук, а у тебя свежий браузер. Как так случилось? Потому что кто-то сильно посидел и подумал над надпи Windows, MacOS, Linux и там всяких других операционных систем. Допустим, на Андроиде, на на Аэсее, там особо шаг влево, шаг вправо ничего не поделаешь. Там это всё очень системно системный механизм. А на десплатно операционных системах можно очень много всякого интересного натворить, а что позволит тебе сидеть в фоновом процессе, потихоньку скачивать обновление, ловить вообще последний момент, форсить пользователя, периодически ему так лапкой махать, говорит: "Приходи, обновить свой браузер и вот это всё. Мы твои вкладки точно не потеряем. Вот честно, вот вот крест даю. Хотя всякое бывает". Короче, это прямо отдельное искусство. Как сделать так, чтобы твой брар остался вечно зелёным? Недостаточно выпускать релизы раз в 4 недели. Кстати, Chrome в этом году, я не помню, было так в прошлом году или нет, они ушли на летние каникулы. У них был обновление всего лишь раз в 6 недель, а не раз в четыре, как обычно. У чуваков были, да, да. Наверное, решили отдохнуть немножко, но тоже, знаешь, шесть не раз не 6 недель, тоже неплохо. Да. Я, знаешь, сейчас ещё понял, пока ты говорил, что фактически эти ребята - это просто первые враги для корпоративной безопасности. Ну, то есть они делают, чтобы оно обновилось, а эти такие: "Как вас остановить?" Не, на самом деле все браузеры работают с сэнтерпрайзом. У каких-то браузеров есть прямо entтейзрешения прямо вот коробочные какие-то, у каких-то браузеров есть просто какие-то полиси и с ними можно там связаться, договориться. А, допустим, у Фейфокса неплохая доля в энтерпрайзе. Форфоксом пользуются медицинские, государственные и прочие, прочие там образовательные всякие учреждения, потому что это openсорсный браузер, потому что он открытый, бесплатный и там нет никакого там трекинга и всего остального. То есть многие доверяют именно Фефоксу вот как к такому браузеру. И можно всякие там эти обновления отключать, можно всякие там политики придумывать. То есть в браузерах по-разному это развито, но многие крупные браузеры в этом в этом участвуют именно вот в энтерпрайзной стороне дела. Ну да. То есть, если ты этого не делаешь, просто в этот рынок не попадёшь. Поэтому надо для них что Ну да. Да. То есть, коне, конечно, можно всё там руками сходить, настроить, всякие скрипты написать ээ на баше, чтобы они там по конфигам ходили, всё отрубали. Но ты замучаешься. Лучше, конечно, использовать какие-то встроенные нативные политики браузерные. О'кей. Давай немножко про бизнесовую часть поговорим. А сначала перед тем, как ещё там в какие-то кишки ходить. Вообще в целом браузеры, зачем нужны корпорации, мне кажется, как будто бы всем более-менее понятно, да, что среди это, ну, ты собираешь всё, что делает пользователь, да, и таким образом может много на что влиять. А, но, наверное, как будто не совсем очевидно, почему как зарабатывают на браузерах. Давай вот вот об этом поговорим. Ну, мне довелось поработать в двух браузерных компаниях. Э опере я был деврелом э в те времена, когда опера была ещё самостоятельным нормальным браузером. сегодня это немножко другая история. А, и вот сейчас я работаю в Мозиле, который делает Firefox. И в целом это оба эти браузера, опера тогда и мозила сегодня и в общем сквозь всю свою жизнь подпадает под э понимание скорее браузер без собственной операционной системы. То есть есть две большие группы браузеров: браузеры с операционной системой и браузеры без. Вот, э, Edge, Chrome и Safari. Это браузеры с операционной системой, которые шиптся по умолчанию. Соответственно, Safari там iOS, Macos, Edge, Windows, Chrome шипится на Андроиде. То есть я не думаю, что, наверное, есть какие-то сборки Андроида, где Chrome не установлен по умолчанию, но это скорее статистическая погрешность, чем что-либо ещё. Так вот, таким браузером строго говоря зарабатывать не нужно. Может быть, они что-то делают, они тоже там могут продавать рекламу, что-то там ещё делать, но для них это в целом часто попытка увести пользователя во внутренние сервисы компании, например. То есть, условно, ты открываешь, а тебе у тебя там и и копайлы, и Microsoft Office, и всё, что всё на свете. Ты открываешь Chrome, а там все сервисы Гугла, а, и так далее, и так далее. То есть у Safari в меньшей степени, я думаю, Safari он просто шипится по умолчанию. Там по-разному люди на это смотрят, но в целом Safari в меньшей степени продаёт какие-то внутренние сервисы компании. Apple больше занимается железом, чем чем какими-то собственными сервисами, хотя последние годы больше. Вот. А есть вторая группа браузеров, которая у которой нет такой мощной системы распространения, как как у упомянутых предыдущих. Это тот же самый Firefox. Вивальди, Опера, Брейв, Арк, это молодая поросль всех этих айных браузеров тоже, типа Duо, Perplexity браузера и всех остальных, которые пытаются вот сейчас на этой волне. А, ну мы, я думаю, мы этого обязательно коснёмся. Куда же мы без без хайпа-то в этом в этом эпизоде? Правда, эти браузеры зарабатывают плюс-минус похожим образом. Это в первую очередь, э, деньги за поиск. То есть ты устанавливаешь поиск по умолчанию какой-то в браузере, с которым ты вот пользователь скачал твой экзешник DMG или что там у него, DEP пакет, поставил браузер и браузер открылся. И там какой-то поиск по умолчанию. Он не только в адресной строке, скорее всего, а он ещё и на стартовой странице. И каждый раз, когда что ты ищешь в этом браузере, каждая поисковый запрос, э-э, естественно, маркируется тем, что он пришёл из этого браузера и браузеру капает копеечка. Это большой бизнес. И, э, в общем-то, все у всех, насколько, насколько понимаю, у всех браузеров так или иначе уж с Гуглом или с другими поисковиками заключены контракты. Это главная главная модель. Вторичная модель, которая тоже, в принципе, приносит деньги - это все всякие ссылки, которые продаются. То есть в опере этот назывался Speed Dial. А в, я помню, э в Фейфоксе вот стартовая страница, а в Вивальде и во всех остальных браузерах условно там, я не знаю, пять-шесть ссылок, которые с одной стороны пользователю полезны, у нас серьёзный разговор начался. Это в очках теперь. А глаза что-то болеть начали уже. У меня монитор долго смотреть не могу. Да, только серьё посерьёзнел. э ссылки на всякие сервисы, которые с одной стороны пользователю полезны, он скорее всего и так ими воспользуется, а с другой стороны иногда они такие рекомендательные. И опять же рефералка с этой с этих ссылок приходит приходят пользователю, там закладки по умолчанию, какие-то виджеты, погода, вот такие вот штуки, они могут тоже прошиваться через через сторонние сервисы и получать э какую-то какие-то деньги за это. То есть вот это вот основные бизнес-модели, а которые я знаю, наверняка есть какие-то более нишевые, но сейчас в голову не приходят. Я тут хотел сказать, что мне кажется, не все до конца осознают, насколько это большой бизнес и большие деньги. Можешь сказать ценник в год, сколько примерно платит допустим, в Фаефоксе поиск по умолчанию Google? Сколько Google может платить? Порядок цифр сотни миллионов долларов, э, думаю, Firefox получает. То есть это публичные цифры. Э-э, в принципе, э я сейчас как бы не уполномочен представлять мозилу здесь. Я здесь, так забежал фронтендер поговорить из Мдина, но на моей памяти там сотни миллионов долларов, э, годовой контракт, э, всё зависит от того, сколько у вас пользователей, конечно же. Да, да. Ну, просто хочется вот подсветить именно то, что это действительно большие деньги, потому что поиск даёт просмотры, просмотры дают конверсии, реклама, ну, и фактически центральная часть Гугла, ну, и любой такой компании, она получает то, что приходят рекламодатели. Просто, Более того, а мы сейчас говорим не только про браузер без своей операционной системы, мы говорим и про Safari. Google платит Safari миллиард долларов или сколько там. У меня просто поиска своего нет пока уда, да. За то, чтобы Google был поиском по умолчанию на всех операционных платфор на всех операционных системах. Не только в браузере, но и в браузере тоже. А-а, то есть это огромные деньги. А когда когда Google платит Apple, не все знают, но вот знают, что есть у Майкрософта BН, да, поиск. А, и в целом, если ты статистику не смотрел, ну, кто-то вот, кто нас слушает, может казаться, что там бинг, наверное, никто не пользуется. А, нет, у бинга довольно нехилый. Ну, не то чтобы большой, но нехилый всё равно объём рынка. Почему? Потому что он встроен в ДДЖ и, соответственно, хочешь ты не хочешь, ты там всем этим пользуешься. Поэтому Microsoft называется сила дефолтов. Я я не просто так разделил браузер на две группы, а с точки зрения бизнес-модели, потому что сила дефолтов, ну, это люди, которые не знают, что такое браузер, которые видят иконку с со знакомыми очертаниями и думают: "Я пошёл, я пошёл в интернет". Таких людей значительно больше, чем мы думаем. Это мы, такие айтишники, собрались такие браузер вот один, другой, третий, у них там движки, ещё что-то такое. Обычному пользователю просто в интернет нужно зайти. Если человек спросить, какой у него браузер, он может он, может быть, опишет вам иконку, но не факт. Не факт. Ну, кстати, есть ещё браузер, который я не упомянул со своей операционной системой - это Samsung Интернет. Это дефолтный браузер на телефонах Samsung. Они шипт свой свою версию Андроида, которая, ну, у них там какой-то скин по поверх стокового андроида есть, э, какие-то свои приложения и, в частности, дефолтный браузер Samsung интернет. Это Chromium. Аэ, но он попадает в группу вот первую браузер, в которой есть своя операционная система. Он его последнее время мало слышно, но какое-то время он был активный даже с точки зрения технологии веба. Ну, кстати, ты тогда должен упомянуть Smart TV и вот эти все телевизоры, они же тоже Smart TV, знаешь, вот есть есть есть отдельная ниша, типа, а, слушай, да что сёрстка для почты, вёрстка под ТВ, вёрстка под холодильники, вот это всё, это такое, это прямо нужно, это отдельная кунфу. Люди люди, мне кажется, уходят в Шаулинь и постигают это там. Это это это очень не похоже на вёрстку для веба обычного. Так что огромное почтение и лёгкий страх перед этими людьми. Дада. Потому что мне кажется вот именно телевизоры. А даже, кстати, интересно посмотреть, какая статистика по браузерам в телевизоре, потому что народ этим пользуется, мне кажется. У тебя же ещё и приставки есть. Ну, приставки, наверное, всё-таки Андроиды, Apple TV. Не, на всяки на всяких окулосах тоже есть браузеры. Есть на плейстйшнах тоже браузеры. Там вебкиты, хромиумы по-разному, да. Вот есть, допустим, браузер для 3D очков, называется VolvК. Он раньше был на Фаерфоксе, сейчас он на Хроме. Точнее, есть две версии, одна на Фаерфоксе, другая на Хроме. Обе поддерживаются. Вот, например, есть такой есть такой браузер вот вот специально заточенный под 3D интерфейс. Ещё один момент вспомнил. Chromebook, по-моему, это такая была попытка, да, как что у тебя только браузер фактически, а внутрь него встроено всё остальное. Ну как это попытка всё ещё всё ещё на месте. Можно зайти в любой там супермаркет электроники и хромбуки стоят. А это то есть я их разрабатываю, да, реально. Дадада. Да, да. То есть платформа жива. То есть есть разговоры о том, что возможно Chromбуки заменят Android, а когда-нибудь что-нибудь там поменяется. И мне кажется, в эту сторону всё, всё, всё, всё сползает. Но я не уверен. до конца. А так, да, была идея, что у тебя тонкий клиент Linux, поверх которого запускается Chrome, а и он является интерфейсом для всего, потому что в целом сегодня можно пользоваться, можно жить вполне себе вот таким гражданином интернета или просто, скажем так, быть чувствовать себя достаточно вольготно в IT просто пользуясь браузером в целом, так, чтобы тебе нужно было установить нативный клиент. Ну, даже офис ушёл, даже Photoshop ушёл уже уже ушёл в веб. То есть, в принципе, в вебе делать можно практически всё. То есть в этом смысле веб победил нативные платформы в том смысле, что он является таким мастхвом. Если ты можешь сделать веб, сделай веб. То есть уже даже всякие там, не знаю, тридшные редакторы профессиональные, они уже сидят в вебе. Фиг, фигма показала, что в вебе делать можно мощне мощный редактор. И вот Photoshop пришёл, всякие кады пришли. А то есть я вот недавно аэ баловался с 3D-принтером, мне нужно было что-то на на на 3D, э, сделать одну детальку. И я с удивлением обнаружил, что все эти все эти кады уже давно в браузере. Это правда. И прекрасно работают. Это как раз в тему был подкаст мой с Андреем Ситником, кстати, кто не смотрел, посмотрите. Мы там говорили по сути про offline first, потому что, а, поскольку всё в браузере, то проектировать по принципу: "Аля в ресташку сходили и у вас там крусть ожидается". Это уже неправильный подход для тяжёлых приложений больших таких, поэтому они должны работать, синхронизироваться. То есть это, конечно, принесло новые челленджи разработчикам фронтенда, которые теперь внезапно превратились, ну, в гораздо более широких специалистов в этом смысле. То есть, если ты хочешь что-то по-серьёзки делать, то ты, скорее всего, и будешь аля такой. Кстати, мне кажется, даже не все это осознают, что они сейчас стали разработчиками толстых клиентов. И очень многие практики, которые использовались там, они же забыты, да? То есть они перезобретаются заново или такие: "О, можно вот так". И какой-нибудь дельфист скажет: "Да я это 30 лет назад уже делал". Справедливости ради. Стоит сказать, что я бы хотел жить в будущем Ситника, когда всё local first, offline first и так далее, но, чёрт побери, я открываю Фигму, и она такая: "У меня нет интернета, я не могу делать ничего". А, серьёзно, я открываю там, мне кажется, какой-то базовый интерфейс тебе нарисуется, но она тут же скажет, что я я я не шмогла и и всё. У, и это постоянно, то есть, условно, ты всё можешь положить в кэш и дать интерфейс, но почему-то разработчики такие типа: "А, ну, у меня у меня всегда есть интернет". Ну, к сожалению, нет. Ну, мне кажется, это вопрос, да, когда у тебя с точки зрения бизнеса это станет выгодно и это будет выгодно позиционировать и это будет ключевым преимуществом, конечно, в это все пойдут. Тут однозначно нужно масса, чтобы изменить это сознание. Так что он, видишь, как бы перевопроходит. Будем потом говорить. Мы вот там ещё в 2025 году об этом говорили, да, лет через 10-15. Мне кажется, Андрей уже лет пять об этом говорит, так что, в принципе, можно и сказать в 2020, да, с двадцатого, да, ещё до ковида, короче, не начали об этом разговаривать, да. Смотри, я про браузер тебя что ещё хотел спросить. Вот плавно вытекающая тема из этого, да. Вот когда появился Chrome и начал занимать нишу, всем было понятно, почему он был модный, современный, классный, быстрый. Там 1.000 причин его, значит, везде начали внедрять. И понятно, на фоне трэша, который там был, ну ладно, Firefox мы считаем, но давай Е6, да, он там начал его побеждать, всё, всё было очень понятно. А вот сейчас помимо того, что есть, ладно, платформы, тоже понятно, как всё-таки идёт распределение браузеров и что может сместить лидера, потому что есть ощущение, вот у меня как у пользователя просто, скажем, я смотрю, что браузеры очень резко ринулись не в то, что давайте технические фичи поддерживать, то есть это и есть, но это типа стало неким стандартом де-факто. То есть ты как браузер обязан делать всё на максимуме. А как будто они начали всё-таки ориентироваться на людей. И на один из апдейтов хрома вот недавно, он мне там что-то: "Я вам товары, скидки готов искать". Я такой: "Не понял, это уже не экстеншн, это уже нативно всё происходит". И у меня появилось ощущение, что они начали работать на людей и пытаются таким образом переманивать. Тут двояко. С одной стороны, да, и Chrome в принципе всегда и Chrome и другие любые другие браузеры всегда пытались шипить вещи, помимо того, что у тебя вкладка адресная строка и и вперёд. Дальше дальше сам разберёшься. Это, мне кажется, всё ещё очень важная часть браузера современного, чтобы чтобы не было не было сюрпризов, не было а удивительных каких-то приключений. ты не можешь найти вкладку, ты не можешь скопировать адрес, ты не можешь, ну, то есть вот вот такие базовые вещи. Но поверх этого действительно конкуренция конкуренция усилилась, особенно из-за того, что Chrom - это open sourceный движок, и любой может сделать себе браузер на основе Хромиума. И мы видим огромное количество примеров стартапов, которые запускаются особенно последние годы. Ну и до этого этот браузеer Company со своим арком тоже, в общем-то, показал, что а можно не просто у Хрома иконку перекрасить, а и название сменить, как делали до этого многие браузеры. А то есть ты заходил и такой: "Это ж Chrome, а, ну у него просто название другое. Ладно, хорошо". Ну то есть вот Яндексбраузер начинал с того, что это был Chrome, и из него со всех сторон торчал Google. Они они даже у них даже даже надпись была Chrome во многих местах, в настройках ещё где-то такой. Это тут первая версия там Яндексбраузер много лет назад, а сейчас это уже сильно сильно другой браузер. Вот сегодняшние браузеры запускаются уже так, чтобы от хрома отличаться именно интерфейсными фичами, именно тем, что пользователю нравится и подходит. И в целом, ну, это сложный бизнес, опять же, я не бизнесмен, но вот вот то, о чём мы говорили в самом начале, когда пытались понять, как браузеры зарабатывают, ну, я же не упомянул ни одного браузера, который работает по подписке, который от пользователя получает деньги, а, а, нет, я не знаю таких браузеров, честно говоря. У, возможно, есть. Возможно, какие-то, не знаю, для каком-нибуд Darknet какие-то супербраузеры есть по подписке, но я сомневаюсь, скорее всего, нет. Просто просто бесплатный тор на основе Ферфокса работающий. В и погнали в Dark Web. Э так вот чтобы стать браузером, который а это такая курица и яйцо, чтобы начать зарабатывать много денег, тебе нужно получить много пользователей. А как получить много пользователей? А пока у тебя не закончился, пока у тебя инвестиции не закончились, непонятно, как вот преодолеть вот этот вот бугор, когда ты сможешь по-другому начать зарабатывать. И вот, может быть, эти современные браузеры с со всякими аями, которые берут подписку за то, что ты пользуешься последней моделью там чата GPT или Perplexity или кого-нибудь кем-нибудь ещё. А возможно эти браузеры, когда мы привыкнем к тому, что нам нужно платить за AI, пока он для нас AI - это ещё бесплатный. Вот, мне кажется, на следующем шаге, может быть, эту тенденцию переломить получится, но вот какие бы ты там классные фичи не внедрял, ты всё ещё стартап, ты всё ещё появился и исчез. Появился и исчез. То есть то, что Chrome внедряет новые фичи, он, наверное, пытается каким-то образом заткнуть какие-то утечки. То есть чувствуется, что в этом в этом, не знаю, в предыдущем году доля хрома растёт не так быстро, а может быть, даже перестала расти. Такие тенденции, мне кажется, тоже были. И они такие: "Ну давайте посмотрим, что есть на рынке, что там, не знаю, группировка вкладок, какие-нибудь там вкладки вертикальные, которые Chrome вроде бы собирается запустить, экспериментировать. Не знаю, Firefox там в этом году запустил вертикальные вкладки, Chrome вот тоже собирается. Группировка какие-то power user feature, которыми пользуются, не знаю, 2% пользователей, не знаю, пять от силы". Но всё-таки какие-то утечки этим самым остановить можно. И я бы не сказал, что начинается в таких случаях. Дадада. Да. И я бы не сказал, что Chrome пытается, не знаю, выиграть вот вообще пользователей всех на свете. Он скорее мене менеджет как бы свои свои текущие проблемы. Вот вот у меня такое впечатление складывается. И я я ещё хотел поговорить про про фичи браузерные, а про про всякие модерновые браузеры с с интересными интерфейсом, но но можем потом, если хочешь. Да, мы сейчас поговорим. Мы ещё про экстеншены поговорим тоже про этот бизнес. Мне интересно. Я сейчас, знаешь что, понял? Есть такое понятие, я уверен, ты его знаешь просто для всех остальных. Вот есть комтис, у тебя, грубо говоря, какая-то область, она сначала находится в режиме развития технологического, какие-то фичи счёт этого выигрывает. В какой-то момент у тебя всё везде примерно становится одинаково, и у тебя начинает играть значение только цена. Это фактически идеальной конкуренции происходит. И любая область, она так или иначе к этому приходит. То есть такси является такой областью, да, у тебя в целом как бы играет роль цена, поэтому там всегда борются за снижение издержек и всё такое. И я сейчас такой подумал, когда ты говорил, что на самом деле браузеры как будто бы близки а к этому. То есть они, конечно же, бесплатные, но у тебя, грубо говоря, такой разницы, как раньше SE, не было. Поэтому вопрос предпочтений очень личный стал. То есть он такой типа вот мне вот я просто против гугла и я поэтому пользуюсь этим, а я просто вот люблю это и и пользуюсь этим. То есть нет такого, что вот есть аутсайдер явный, да, и мы так живём. Поэтому получается, что им приходится много постоянно шипить и удовлетворять все, даже малые группы, да, чтобы хотя бы не терять долю. А так, чтобы ты сейчас пришёл на рынок и такой: "Эх, сейчас я тут всех разорву". Как будто бы эти времена просто тупо ушли. Ну я бы не сказал. Мне кажется, что мы сейчас находимся на краю, по моим ощущениям, на краю какой-то большой переменно, когда браузеры себя переизобретут. А были уже несколько примеров. Ну, то есть, грубо говоря, вот мы сейчас вспоминаем эру появления Айфона, эру вообще мобильных телефонов. И есть такое чувство, что вышел Стив Стив Джобс со скрижалями и сказал: "Вот теперь у нас есть мобильный веб". Ну нет, до Айфона был мобильный веб, было несколько попыток сделать мобильные телефоны. Та же самая Opera Mini, которая запускалась на всяких там Java телефонах и прочих. было такое до Айфона прекрасно работало. А, но кто-то, то есть это были попытки переломить плато десктопных браузеров тогда, выйти на новую на новый простор. И это был простор мобильных браузеров, мобильного интернета. Сейчас мы вышли на плато в том смысле, что в принципе, да, даже с телефонами похожая история. Сейчас положится все там флагманы, телефоны пять штук перед тобой. И они они то в этом году скруглённые, в следующем году квадратные. В этом году скруглённые, в следующем году квадратные. В этом году три камеры, в следующем году пять камер. Вот вот единственное, что единственное где инновации происходит. Всё в остальном типа кнопку слева направо передвинули. Чёрный кирпич, чёрный кирпич. Вот с браузерами похожая история. Это это всё такие, не знаю, белые кирпичи перед тобой или в каком-то в каком-то смысле. Браузерная строка вкладки. Ну, вкладка налево передвинули, группы добавили, там, не знаю, ещё что-то такое пользователю. Главное, чтобы сайты открывались. Так вот, сейчас было несколько ярких вспышек, когда, ну, самой яркой вспышкой, пожалуй, было был Арк, который сказал: "А давайте мы перепридумаем интерфейс браузера". А, но даже а у Арка не получилось. Они недавно опубликовали сравнительно блокпост, в которым сказали, что типа: "Не нет, давайте что-то что-то не получилось, давайте мы сейчас придумаем новый браузер на lлме. Вот это вот di называется, по-моему, который они новый запустили браузер с с с с режимом агента и вот это вот всё. Почему это случилось?" Ну такое небольшое отвлечение. Дальше продолжим про про перелом в браузерах. А почему у Арка не получилось? Потому что вот я яркий пример, мне кажется, в этом смысле. А я не смог перейти на ARК, хотя мне было интересно. Я не смог им пользоваться, потому что интерфейс был слишком сложный, приходилось слишком кому привыкать. И а у многих получилось, а у меня нет. И я думаю, у меня у Гика не получилось, а у обычных пользователей тем более. То есть это был слишком яркая попытка перепридумать интерфейс. Даже даже браузер Company со своим арком, а потом Dй пошли в новые направления. Вот в в браузеры агентного режима какого-то с ллэмками, где там можно просить в текстовом чате, а то иногда и голосом тебе что-нибудь интересное сделать в вебе, а не ставит ли это какие-то расширения или вообще просто переходить в нативные приложения или в другие приложения, ходить там, копипастить, экспортировать и прочее, прочее, прочее. Мне кажется, вот это вот тот самый момент, когда мы получим новые интерфейсы в браузерах, когда можно будет за счёт, возможно, медлительности больших браузеров выскочить на рынок с точки зрения интерфейса в основном. А про про медлительность, э про то, почему у вот, допустим, у Арка не получилось, я уже упомянул, слишком радикальный интерфейс для новых пользователей, для массового пользователя. И то же самое можно, допустим, положить на сч с точки зрения Хрома на это посмотреть. У Гугла есть сколько там миллиард пользователей Хрома или сколько у них там пользователей Хрома? Ну, много, сотни миллионов точно. И они каждый день открывают браузер. Если этот браузер завтра будет не похож на себя, не знаю, у него там вкладки будут сбоку, они будут закрываться, адресную строку не найти, ещё что-то такое. массе пользователей, это будет слишком большой переход, слишком большой перелом. Поэтому они не могут позволить себе развиваться так же быстро и пробовать такие же яркие идеи, как это может позволить себе маленький браузер, который ориентируется на нишевую на нишевую долю там, не знаю, дизайнеров, разработчиков, гиков в целом. Так вот, мне кажется, что как раз маленькие браузеры могут позволить себе делать интересные интерфейсы и за счёт этого попробовать откусить какую-то долю рынка. И, возможно, она будет достаточно большой, чтобы на этой основе можно будет можно было бы поддерживать бизнес так или иначе, подписочный, рекламный, поисковый, какой-нибудь ещё в этот способ получать получать деньги. Вот вот я вижу, я даже не предсказываю, я я чувствую, что подобный перелом назрел, что мы уйдём с этого плато на какой-то новый способ работы с вебом. Это всё ещё будет браузер, это всё ещё будет десктопный мобильный какой-то браузер, но сама механика, сами интерфейсы могут поменяться. То есть условно мне дико не хватает сплит, э, сплита внутри браузера, чтобы я между двумя страницами мог взаимодействовать. Арк это придумал, другие браузеры тоже, возможно, над этим работают. И я вот прямо чувствую, что такая пауфича, которая меня бы привлекла. Нужно ли это обычному пользователю? Вопрос открытый, но режим какого-нибудь браузера, который ты заходишь на YouTube, и ты не на Ютубе пытаешься натыгать, натыкать себе в поиске, который тебя, возможно, даже плохо понимает или суёт тебе какие-то ка-то какие-то какую-то рекламу или ещё что-нибудь такое, а когда ты своему агенту браузеру пишешь: "Слушай, найди мне несколько, не знаю, пять видео про игру на гитаре и чтобы там были песни из плейлиста, который вот этого плейлиста, который мне нравится, чтобы Я, не знаю, своей самые любимые песни научился играть, чтобы там были хорошие тексты, ещё что-то такое. И вот скинь мне там, когда найдёшь документ на почту, он это сделает. А какой сервис это сделает? Чтобы можно было сходить в твой, не знаю, Spotify, а забрать оттуда плейлист, прокинуть его в Google и так далее. То есть это всё можно, наверное, сделать с помощью како-то браузерного расширения, но сколько нужно будет всяких там, а, пермишенов понажимать, сколько всяких там интеграций поделать, а потом ещё у тебя никто не поймёт, что нужно делать на самом деле. Вот подобная модель, мне кажется, может привлечь широкого пользователя, когда ты у браузера просишь что-то для тебя сделать на основе нескольких сервисов, которые у тебя есть. Такое у меня, не знаю, видение прямо сейчас. Э, это не обязательно должно быть супер LLM чат и так далее. Это могут быть гораздо более простые технологии. Это это не обязательно должна быть, не знаю, какая-то жуткоумная модель, но сшивание многих контекстов вместе, которые не имеют доступа друг к другу, но на основе браузера всё-таки сводится в одно место, вот это кажется будет интересным, и это кажется, возможно, переломит это плато для всех, не только для гиков. Ну да. То есть получается сейчас MCPшки, которые везде внедряются, просто браузер сможет к ним ко всем подрубаться, плюс у него доступ к твоей истории. А, и на этом фоне ты получаешь портрет человека целиком и знаешь вообще его просто до уверен, что это будет это вот с Иишкой всё-таки такая штука произошла, что это встраивается в ядро. Даже клавиатуры, да, современные, я этого не видел, но читал, что у современные клавиатуры уже, да, с этими кнопками делаются. Так что я думаю, тут разработчики браузеров там придут правильные ребята сверху в Гугле, в Майкрософте и скажут: "Внедряйте". То есть и это точно не не нишевая тема в этом смысле. Поэтому, ну, знаешь, как сейчас вот этот тренд идёт, да, но у тебя все практически проекты, которые стартуют, они так или иначе всасываются крупняком. То есть у тебя OpenI раз какой-нибудь там режим внедрил, у тебя целая индустрия не нужна стала. Поэтому в этом плане, конечно, дикая история происходит, но за ней приятно наблюдать это время возможностей, кстати, кто не знает, но надо двигаться быстро, успеть вовремя продавать. То есть даже если вот то, что ты говоришь, взлетит, не факт, что она долго продержится, потому что все самые крутые идеи, конечно же, реализуют, и надо вовремя успеть слинять из этой истории. Ну, понятно. Но, кстати, это фактически же ты подтвердил то, что я сказал. У тебя по сути единственный шанс - это вот сильно новые истории и нишевость. Потому что опять же, чтобы пришёл кто-то большой игрок и все такие: "А мы страдали, побежали на новый браузер". Нет, потому что в целом люди довольны. То есть вот я пользуюсь Хромом, но у меня нету вообще у меня ноль идей, что мне туда нужно. То есть если ты вот меня спросишь, я не скажу, что мне что-то нужно от Хрома. Вот наоборот, я иногда даже удивляюсь. То есть ты там запускаешь сейчас de tools, консольку, у тебя херакс там спроси у Ясеня, ну чат GPT или там кто у него ДМИ не встроен, да, он тебе сейчас расшифрует всё, что тут в консоль вы вывел такой: "Матерь божья, у меня и только, я не знаю, на холодильнике ещё нет, а вот во всех остальных местах есть, и он всё тебе подскажет, расскажет". Вот. Так что в этом плане они все бегут, да? Но одновременно ты пользуешься хромом, и ты такой: "А хм, слыш", услышал новости про Google, а такой думаешь: "А что это у меня в поиске? А что у меня какой-то левый сервис, знает, что я вчера в Гугле искал? Ты чувствуешь какие-то вещи, какую-то интеграцию, ты меньше доверяешь большой компании и вот это вот это вот всё это это накапливается с годами, и ты начинаешь быть, не знаю, раздражённым. То есть, да, в этом даже не нужно быть супер ультрагиком, чтобы чтобы почувствовать, что что-то не так от от большого бизнеса, от больших компаний, потому что браузер бесплатный, но он на тебе зарабатывает деньги. И в тот момент, когда ты почувствуешь, как он на тебе зарабатывает деньги, становится некомфортно. И вот вот это многих людей гонится гонит с Google Хрома, потому что, ну, понятно, что зачем Google браузер, понятно зачем, чтобы всё про вас знать. Да, ну, кстати, это правда. Параллельно с Иишкой всегда была история про privacy, и она, конечно, на людей действует, и поэтому очень многие это делают. Ну, кстати, в этом плане можно про айфоны сказать, да? А там-то интеграция намного более сильная, потому что у тебя же вот есть поиск по айфону, а у тебя там Сирии, у тебя там история браузера, у тебя там апли, то есть у тебя такая интеграция, что мне кажется Гуглу и не снилось э уровень вот всего соединения. Я, кстати, по этой причине даже вырубаю, потому что он меня бесит тем, что он там вообще всё со всем связал и соединил, и до сих пор отношусь к этому немножко с опаской. То есть я вот, например, полностью теми возможностями, которые они больше всего рекламируют, что у вас там вообще прямо всё найдём, везде подскажем, я по сути-то и не пользуюсь особо не знаю. Меня, короче, подожди, мы сейчас мы сейчас мы сейчас видели недавно, как Microsoft ээ говорит: "Мы всё знаем про вашу операционную систему. Если вы в Windows, если вы в Эдже и ещё где-нибудь, вот как было до сих пор, а недавно они такие: "А если мы начнём скриншоты делать каждые 5 секунд на вашего экрана, то мы вообще будем всё знать. Вы открыли какой-то почтовый клиент сторонний, вы открыли какой-то левый сайт, и мы всё про вас знаем". Зачем? Конечно же, чтобы вам помогать. И в целом, да, и вот эта вот новая новая штука, которая звучала как абсолютный privacy и катастрофа, они же запустили это. И каждое приложение может сделать опт и запретить винде каждые там сколько там секунд скриншотить себя. А и уже пошли истории, что какие-то приложения по дефолту выключают это всё, чтобы там, не знаю, чёрный экран или вообще не скриншотится. И то же самое вот ты сейчас говоришь про про iOS, про сафари, про про Сирии и прочее всякое, что ты там ищешь на по Аосе, э, и она всё всё знает про тебя. Всё, не всё. Оно же знает только то, что прокинуто через саму операционную систему, то есть календари, поиски в Safari и всё остальное. Но как только делало касается твоего почтового клиента стороннего, как только делал касается чего-то ещё, а, всё, там дверь закрыта. И так вот тот самый, э, Apple Intelligence, как они забавно переименовали, AI, а именно это и принесёт. Там будет AP, встроенный клиентский, вернее, разработческий IP, которые позволит по-настоящему прокидывать информацию в операционную систему. То есть там будет AP, который позволит тебе прокинуть всю твою почту в лэмку, которая работает на твоём телефоне. Тогда она будет по-настоящему. Тогда ты сможешь у Сири попросить, а-э, извините, у кого сейчас триггернулась Сирия. Ты сможешь сейчас у Сири попросить -э найти себе найти, не знаю, письмо из прошлого лета, когда кто-то кто-то тебе цветы отправил, фотку с цветами. Угу. Ты реально сможешь сделать. А когда и если это всё зашипется. А прямо сейчас это так не работает. Это всё ещё закрытая какая-то какая-то вещь. Но, к счастью, это всё будет не скриншотиться по умолчанию, насколько я понимаю, а, а именно это будет AP, и ты сможешь, скорее всего, настраивать, что ты хочешь отдавать вот в эту глобальную лмку, которая работает на твоём устройстве. И если она правда будет работать локально на твоём устройстве, а, прямо на чипе крутиться и не отдавать данные наружу, это будет огромное преимущество, потому что Google таким похвастаться не может. Это правда, да, в этом плане они много чего могут. Я, знаешь, одну вещь хочу сказать. пойти, так сказать, против течения. И мой бизнесовый опыт, он немножко по-другому на меня влияет. Знаешь, когда люди вот про прайваси говорят, ещё что-то, у меня есть отличающееся мнение вот от того, какое типовое, скажем, в среде, допустим, разработчиков. касаемо трекинга аппликейшенов и вот то, что нами там торгуют, бесплатные товары и так далее, просто поскольку мы сами запускаем рекламу там, и для нас это очень важная часть жизни, это так просто к слову, чтобы ребята понимали, на самом деле компании, которые вот закупают рекламу в конечном итоге, да, и там выбирают, например, что показывает в такой аудитории, там похожий, тра-та-та, прикол в том, что чем больше человек парится о прайвасе и закрывает эту информацию, тем меньше поступает информации, соответственно, и у нас меньше, как у людей, которые закупают рекла рекламу, возможности таргетироваться только на тех, кому это реально нужно. Получается, а, у тебя растёт стоимость рекламы, а, значит, конечного товара. Б, а вы начинаете видеть кучу нерелевантной рекламы. Тут там просто два страха есть. Первый страх - это всякие спецслужбы, и кто-то там реально читает над вами, насмехается и с папочку готовит. Это один вид страха. А вот второй вид страха, что тебя продают данные компаниям, я считаю, что он необоснованный, потому что у тебя только так ты можешь очень значительно снижать. То есть, во-первых, ты будешь видеть только то, что тебе реально нужно. Хотя многих это пугает, но это лучше, чем видеть то, что тебе не нужно, честно говоря. А во-вторых, это действительно снижает себестоимость, потому что, ну, не себестоимость, а именно вот эту добавлю вот эту стоимость расходов на рекламу и на всё остальное. Просто ремарка. Это это немножко звучит как: "Мы тебя побьём, но не больно. Ты не переживай. Мы будем мы будем бить мы будем бить сквозь подушку, чтобы следов не осталось". Вот так это звучит немножко. Ну, знаешь, как я делаю на практике? На практике я делаю. То есть вот когда меня апликейшены, вот я ставлю аппликухи на телефоне, спрашиваю: "Трекать или не трекать, я всегда нажимаю трекать, потому что я прекрасно понимаю, для чего они это используют. Я знаю, что, ну, как бы вношу вклад в то, чтобы стоимость рекламы была ниже и я мог покупать товары дешевле. Ну, ты техноптимист. Ну, потому что я сам это делаю. Я это примерно то же самое, как я создаю контент. И, например, я всегда плачу за контент, потому что я знаю, что такое создавать контент. Ты знаешь, да, те люди, которые этого не делают, у них может быть другое отношение. Это всегда вопрос вот твоей профессиональной области, которая тебе помогает, ну, как-то по-другому относиться к какой-то теле. Большинство людей, знаешь, почему переживают по этому поводу? Потому что у них очень часто нет выбора. То есть ты такой нажимаешь ask do notack и складывается впечатление, что это единственный способ, который тебя трекают. Нет, есть огромное количество способов, как тебя ещё трекают, не спрашивает твоего мнения. Если ты хочешь остаться абсолютно анонимным в интернете, у тебя нет этой возможности. Вернее, ну как у тебя есть эта возможность, но тебе нужно столько столько через столько обрущей в огне прыгнуть, а что обычный человек этим заниматься не будет. А поэто поэтому браузеры, которые называют себя приватными браузерами, операционные системы, которые говорят, что у нас супер приватно всё, пользуются популярностью даже у обычных людей, потому что они чувствуют, что у них нет выбора, и это станет, то есть приватность стала фичей браузера. Приватность - это прямо конкурентное преимущество. И многие браузеры прямо говорят: "Приходите к нам, мы приватные". Представляешь? Это стало, это стало вот вот частью рынка. Интересно. Не просто сишкой очень важное такое преимущество, которое даётся. Хотя, кстати, опять же, не все же понимают, что когда они заходят в инкогнито, куки-то у тебя сохраняются, потому что а как ты залогинишься? То есть у тебя как бы есть микс, потому что если обеспечивать полную приватность, то люди пользоваться интернетом не смогут. Поэтому у тебя к, ну не то, что к сожалению, короче, очень часто всё это фейк. Или у людей ск, знаешь, это как кнопка лифта. Есть такой прикол про то, что вот кнопка лифта, которая закрывает двери, она сделана только для того, чтобы люди чувствовали себя спокойно, ничего она не делает. Вот очень многие вещи, они примерно так устроены, да, поэтому я не парюсь, кстати. А всё равно хорошая тема. Я знаешь что понял? Вот прямо отдельный подкаст такой с техническими деталями реально стоит про эту тему сделать, потому что она интересная. А как вообще за нами следят фингерпринты там всякие и так далее? Да, да. Нет, есть есть прямо люди, которые над на над э над этим каждый день работают на над тем, чтобы а найти новые поверхности для фингрпринтинга, потому что браузеры каждый каждый день с каждым релизом уменьшают эту вот поверхность какой-то, не знаю, что троллят какие-нибудь счётчики, которые слишком точные, а пытаются какие-то фичи ограничивать. Что там, что там было? По-моему, в последнем релизе Хрома, мы вот недавно обсуждали в подкасте, Chrome перестанет отдавать список всех языков, которые поддерживают операционную систему в твоём браузере. То есть раньше отдавался весь список языков предпочитаемых, а теперь будет отдаваться только первое в этом списке и количество и чуть-чуть сократится количество уникальных маркеров, которые твой браузер отдаёт. Понятно. И вот с каждым релизом всё меньше и меньше. Интересно, девки пляшут, да? Самое, знаешь, что самое главное вот во всей этой истории? Понятно, что у них классные пиарщики и вообще богатые компании, которые могут себе позволить. Они же все всё это выдают, как будто они там беспокоятся о людях. В реальности все беспокоятся только о том, чтобы у них всё это оставалось, только они имели к этому доступ и только они тебе продавали. Поэтому я опять же отношусь к этому так м не я не верю в их как это правильно называется альтруизм. Да, это вот слово правильно, да. Ну просто бывает, что чужой альтруизм, даже если он не альтруизм, а это их, скажем так, чужие бизнес-интересы иногда работают тебе тебе во благо. Дада. Да. А надо нужно просто найти эту компанию, чьи бизнес-интересы не сильно тебе мешают. Вот. Вот так, да. Хорошо, давай дальше к браузерам. А расскажи, пожалуйста, про вот экстеншены, потому что в двух словах, понятно, что мы так или иначе всеми пользуемся, но до конца всё равно непонятно, а насколько реально это огромный бизнес, потому что там целый магазин, есть люди, которые вообще специализируются на этом. Я даже не удивлюсь, если есть, знаешь, такие индиразработчики, которые там сидят, помалкивают и просто зарабатывают на этом бабке, а мы такие все: "А стартапы там, что бы поделать и так далее". Или всё не так? Расскажи, что, ну, скажем так, есть белый и чёрный рынок расширений. Белый рынок расширений - это, скорее всего, расширения, которые какие какие-то всякие ВПНы, ээ всякие переводчики и прочие прочие вещи, которые индиразработчики делают просто потому, что могут или каким-то образом э продают там, не знаю, рекламу или какие-то данные продают. Ну, в общем, это вот такая вот инди индиистория. Есть, э, в том же самом, там, не знаю, в белых вот этих расширениях, а, есть группа расширений, которые, ну, тебе удобно и нужно сделать, чтобы чтобы твои обычные бизнесы работали. То есть, не знаю, а подстановка про паролей, типа, пасворды, пасы играли, да, да, вот подобные вещи. Они это просто такой расширение компаньон к твоему сервису. С помощью этого расширения в браузере он будет работать лучше. Ну вот ещё одна группа блокеры есть закрыватели всяких куки папапов, рекламы, вырезатели и прочее, прочее, прочее. А есть отдельная группа, которые с первой вот эта вот тёмная группа, которая с вот этой с этой белой довольно-таки вот так вот перемешана. Они друг в друга втекают. Это группа расширений, которая прикидывается чем-то полезным, а на самом деле творит творит жуткие вещи на фоне. То есть какой-нибудь было хорошее расширение, которое, не знаю, оно позволяет тебе файлы с Ютуба скачивать. Не знаю, ты его 5 лет пользовался, а на шестой год разработчику пришло в почту письмо: "Куплю за много денег". Это всё то же самое расширение. Просто у него маленькая строчка на сайте поменялась в каталоге расширения Хрома, а или там Фефокса или там адонов каких-нибудь ещё. Мы теперь э другой разработчик у этого расширения. И в следующем релизе этого расширения, не знаю, реклама показывается или какой-нибудь трекер подключается и твои данные сливаются и так далее, и так далее. То есть есть прямо целые бизнесы, я я конкретно не буду называть сейчас, а есть есть на памяти, которые могут сказать тебе аналитику сайтов конкурентов. Знаешь, такие вот компании, которые дают тебе подобные сервисы. И эти бизнесы, откуда эти данные берут? У них нет своих браузеров. У них нет ничего, но они эти данные могут покупать. У кого они эти данные могут покупать? Они могут их покупать у расширений браузерных, которые нет нет, да, какую-нибудь аналитику туда подсунут. И пользователь подключил своё расширение. Это это пользователя, оно всегда включено в фоне. И пользователь ходит по сайтам, и вся информация о нём собирается, и потом продаётся эта информация куда-то куда-то нарушит. Короче, э, я не знаю, вот если бы в 2025 году, мне кажется, кто-то, если бы расширений до сих пор не существовало и кто-то решил бы придумать в двадцать пятом году, они бы не запустились. Это слишком большая приватная дыра. И более того, расширение в браузере Safari появились довольно поздно. А более того, не с первой попытки и та реализация расширений в сафари, которая сейчас есть, это что-то очень, это какая-то странная смесь. Они сначала запустили, у них была своя система расширений, потом они её выкинули, по-моему, такая была история. Потом они сделали систему расширений, которая работает на основе нативных приложений. То есть нужно было написать нативное приложение и там прямо нативный код, чтобы там расширение работало. Потом они сейчас они сделали, по-моему, модель гибридную. Ты пишешь нативное приложение, которое ставится из Appстора, но внутри которого работают webbas расширение, как и в Хроме, как и в Фафоксе. То есть сейчас у всех браузеров это это отдельная тема, можем поговорить, а AP апи для расширения примерно одинаковый. Чуть-чуть отличаются нюансы, какие-то фичи есть, каких-то фич нет, но там манифест, реализация, вся всё такое достаточно близко. Вопрос там распространения и всего остального. У Safari каталог расширений очень маленький, и туда сложнее попасть, чем в любые другие каталоги. А у Хрома, Фейфокса, там, у других браузеров, они используют, не знаю, там браузеры на основе фаефокса, есть такие альтернативные, а используют расширение этот Mozilla Adons. Э все остальные браузеры на основе Хромиума используют каталог каталог расширениях хрома. Вот так выглядит этот рынок. И я не могу сказать, что у меня есть какие-то огромные деньги. Но деньги там, деньги там есть. И это, в отличие от всего остального браузерного рынка, это самая такая сомнительная и самая такая дырявая история, на мой взгляд, потому что это постоянная игра в кошке-мышки. Каталоге расширений - это сложная задача. Там нужно постоянно тебе трекать, чтобы скрипты, которые запускаются в браузере пользователя, не делали какой-нибудь абсолютной ерунды, не сливали данные пользователя, не майнили на фоне что-то, не пытались что-нибудь взломать, браузер и всё остальное. То есть это прямо вот я не знаю, почему расширение всё всё ещё существует, несмотря на их вот эту вот дырявость. каким-то образом, видимо, браузерам удаётся сохранить их живыми. Знаешь, есть такая правда о жизни. Несмотря на то, что пользователи вот постоянно заявляют: "Нам нужно безопасность и всё такое". Знаешь, как часто бывает? Вот люди часто же говорят вещи, которые они не очень понимают последствия. Вот если сделать так по-настоящему. Это, например, в экономике очень часто бывает, там типа сделайте вот так. Они не понимают, к чему это приведёт. что очень многие, например, запреты, которые бы, например, многие люди хотели вести, они, вообще-то сделают так, что у вас товары там в разы станут дороже, например, да? А многие считают это как данность. Вот здесь я тебе объясню, ну не то, что объясню, скорее м это не стопроцентная вещь, но я уверен, что это одно из важных показателей. То есть да, люди про это говорят, все дела, но если ты, например, уберёшь возможность подключить тот же One Password или Граморли или что-то в этом духе, но человек просто пойдёт в другой браузер. Ну то есть для него это важнее, чем всё остальное вместе взятое. То есть там, конечно, и более того, он доверяет этой компании, и из-за того, что там какие-то гомадрилы есть в других расширениях, он страдать не хочет. Поэтому, конечно, не никогда в этой системе не будет, ну, такого типа отсечки, вот это плохие, это хорошие. У тебя всегда будет граница, которая плавает, и где-то больше, где-то меньше. Поэтому у тебя тоже возьми Асторы. Чем это сильно отличается? То же самое. Там у тебя в Андроиде всякой дич больше, в Эпле меньше, но, соответственно, и время, сколько они тратят на рукопашку, чтобы всё это проверить, оно тоже разное. Поэтому где-то это дороже, вот Apple недавно запустила свой менеджер паролей для MacOS и для iOS э в последних релизах операционных систем. И они зашипили своё расширение для файрфоксов наш в каталог Mazilla Adons который в Фейфоксе позволяет пользоваться расширениями нативными MacOS. Я я долго смотрел на это вот расширение в нашем каталоге и такой думаю, это точно они. Ну потому что как-то неожиданно просто неожиданно просто был такой да нет, ну похоже по Apple Ink и всё дела. Вот это вот всё всё выглядело очень по-настоящему. Потом выяснилось, что да, они потом об этом написали. Да, это первично. Кстати, я тебе сразу скажу, вот я перейду, например, я пользуюсь пасвордом очень много лет, но, естественно, если у меня нативная штука, потому что у меня апловская экосистема, я перейду. Но мне просто банально фич не хватает пока. То есть у них там Да, я я тоже я тоже посмотрел, там очень тесно. Да. Вот они сейчас там документики, что-нибудь ещё там кое-какие вещи добавят, и я прямо с удовольствием рвану. Мне просто банально пришлось, грубо говоря, там дочку учить, жену жене ставить. А нафига, если можно просто нативные инструменты использовать? Когда уровень технический поменьше, то, конечно, нативные инструменты в этом плане лучше. Ну, в общем, экстеншены, да, интересно. Там, понятно, что есть деф-тулзы, но это просто типа мастх, он вообще не имеет никакого отношения как бы к бизнесу. В этом смысле просто у тебя там редакс ставишь, пожалуйста, вот тебе реакт эта штука. При этом, знаешь, что интересно всё-таки насколько действительно существует расширения, которые вот не сопровождение какому-то основному бизнесу, как ты правильно сказал. Это вот если ты банк, у тебя должно быть приложение обязательно, да, если у тебя какая-то приблуда, приложение, а вот прямо полностью самостоятельные решения, которые вот в виде экстеншенов. и ты можешь что-то там полезное, классное, интересное сделать или всё-таки этот рынок ну такие вещи, как правило, будут делать отдельным сайтом, которому будет экстеншн, который соединяет. Ну, я думаю, самая большая часть этого рынка расширения, опять же, я здесь не эксперт, поэтому если сейчас меня слушает какой-нибудь эксперт по расширениям, который всю жизнь этим занимался, он, скорее всего, покатывается со смеху, но я попытаюсь. А мне кажется, самое большое из из таких независимых направлений - это ВПНЫны иблокеры. То есть там не нужно иметь продукт, чтобы иметь расширение. Расширение само по себе решает. Ну, то есть для ВПНА в меньшей степени, для блокера чаще всего вот прямо это может быть продукт. Но чаще у них, скорее всего, есть приложение для нативных платформ, потому что, чтобы, не знаю, там этот блокер просунуть на на iOS, например, нужно прямо вот нативное приложение, которое в этом просунет через операционную систему. Есть такие нюансы. А прямо вот, ээ, чтобы вот расширение существовало как бизнес, я даже таких кейсов не знаю. Это всегда что-то есть дополнительное рядом. Вот ближе всего к этому ВПН иблокеру. Да, естьблокер - это нормальный бизнес. Причём причём, что зарабатывают там как раз над тем, чтобы в йтлисты попасть. То есть, знаешь, это забавный парадокс. Чем круче расширение, тем больше там допустимо трекинга, на котором они, собственно, зарабатывают. То есть логично же, да, что у тебя получается более популярное расширение позволяет большему количеству трекеров работать, потому что ему платят больше денег.
Это очень смешно. Дада. Да, это интересный бизнес, который в целом всё ещё ориентирован на пользователей, всё ещё людям приносит пользу, но там есть нюансики. Да, я представляю, какой внутри идёт борьба. То есть это вот как раз то самое. С одной стороны, запретить ты его не можешь, потому что люди взвоют, а с другой стороны, он очень сильно мешает бизнесу браузеров тех же самых, потому что они интегрируются. И я подозреваю, там подковёрная борьба из серии. Там звонят: "Джон, дела, надо что-то сделать, давайте договоримся". Да, да, я представляю, сколько там такого происходит. Слушай, я ещё вспомнил ещё одну группу расширений, а которые сильно ограничены, по-моему, только Хромом и Хромим браузерами. По-моему, даже не факт, что это работает во всех ромивых браузерах. Это лаунчеры. А это как, не знаю, на Андроиде можно себе поставить другой лаунчер, и у тебя будет не андроидовские вот это вот иконки, поиск и всё остальное, а прямо отдельное большое приложение, которое запускается в фул скрине и заменяет себе интерфейс Андроида, как будто. Так вот, в Хроме до сих пор эта фича, по-моему, есть, когда ты можешь вместо стартовой страницы запустить э приложение и есть отдельный рынок расширений, ну, рыночек, я бы сказал, которые являются лончерами. Они вот крупные всякие там сервисы типа рейндропа и всяких таких вот подобных коллекций, ссылок и всякого такого, они запускают вот именно лончеры, которые заменяют стартовую страницу. То есть у тебя открывается не хромовский поиск, открывается не about blank пустая страница, а вот именно этот launчеer, который захватывает. А я я не помню, что в других браузерах была подобная подобная схема, потому что ну она как бы слишком мощная. Этот лаунчер должен может может может тебе прикинуться другим сайтом практически. То есть Урал, конечно, он не подменит, но это очень это очень много. Угу. Да, браузеры, конечно, с точки зрения, я думаю, технической вообще, то есть операционку заменили всё за собой и самые сложные, наверное, продукты вообще в мире стали, да, если так полу. Так, я про расширение ещё хочу могу тебе рассказать ещё одну историю. Я был, э-э, недавно, ладно, несколько месяцев назад в берлинском офисе Мазила. И там был съезд, э, на котором мне удалось побывать, немножко поговорить даже с точки зрения Мдина про документацию, а поговорить с представителями разных браузеров, которые собрались, чтобы Chrome, Safari, Firefox, ещё какие-то другие были, по-моему. А удалось поговорить о том, чтобы стандартизировать, наконец-то расширение. Дело в том, что расширения сейчас все у них нет спецификации, как HTML, CSS и JavaScript в в начале девяностых. Это типа один браузер запустил, другой подсмотрел, третий скопировал, четвёртый интерпретировал. И всё это кое-как кое-как работает. Разработчики сидят и пилят ветки, чтобы писать расширение, потому что и ну прям прямо есть целые маленькие вот эти фреймворки, сборщики. Ты пишешь одну версию расширения, а оно потом собирает для разных браузеров пакеты, а и IP несовместимые. Это нужно постоянно иметь в виду. Так вот, браузер сейчас работает над тем, чтобы запустить спеку. То есть уже собралась рабочая группа или комьюнити группа по расширениям. Там есть представители всех браузеров. И они договорятся о том, чтобы в IP браузеров было, допустим, не Chrome namespace Chrome. Тае, как в Хроме сейчас, а чтобы там было, не знаю, namespace браузер точка, что-то там. И у всех браузеров, наконец-то появится общий IP, общая спека, общая документация. Мы на МД, конечно же, будем документировать это это всё, потому что это часть веба будет. Вот это вот это огромная новость в мире расширений, которое происходит уже прямо сейчас. То есть разработчики смогут в одном месте прочитать, как сделать, как сделать расширение для всех браузеров. Это поразительно. Ну, здесь, конечно, конечно, будут всякие нюансы документации на сайтах компаний и браузеров более такая более всякие нюансы. Ну, как сделать базовое расширение, которое работает везде, аа для этого будет спека. Вот это прям большая-большая, самая большая новость в мире в мире расширений. У меня, кстати, опыт написания расширений есть. Много лет назад я его писал. Сейчас, кстати, его до сих пор поддерживаю. Это расширение для нашего проекта Кот Battle, когда у тебя там соревнуются игроки и просто, знаешь, какая была проблема? Тебе нужно игры видеть, что кто-то зашёл и сейчас играет, потому что на сайт всё время ходить люди уходят. И расширением показывает, что, например, открытая игра, можно присоединиться. И с одной стороны писать было несложно, а с другой стороны я столкнулся с тем, что тестировать неудобно, его надо ставить. То есть у тебя нет такого авторелоуда, который ты быстро, легко посмотришь. У тебя тесты написать в целом нормально нельзя. То есть мне тогда, конечно, показалось, что всё это на таком уровне, как очень колхозном. Что-то сделал, как-то там посмотрел, может быть, с тех пор что-то немножко поменялось, но что-то мне не подсказывает, что там не сильно изменилось. Это просто нам с тобой ещё раз подсказывает размеры рынка расширений. Если бы рынок был на порядок больше, ирело бы появился, и дефтулы, и спеки бы раньше появились, и всё, и всёвсвсё на свете. Это всё ещё не такая большая, не такая важная часть браузера, несмотря на то, что нам, пауюзерам, кажется, что типа, ну это ж это ж самое важное. Нет, ребята, это это это на сдачу этими расширением занимаются. Но всё-таки бизнес есть, там есть пользователи и есть много всяких задач, для которого, которые ширение решают. Вот те самые пароли, блокировщики, ВПНы и всякое такое работает вполне себе неплохо. Ребят, напишите в комментариях, какими экстеншнами вы пользуетесь. Просто интересно, а, посмотреть, послушать, что у вас есть. Давай сейчас с тобой тоже быстренько эту сделаем это упражнение. Я тебе скажу, что у меня, а ты скажешь, что у тебя. У меня есть какой-то У меня есть какой-тоблокер One Password. У меня есть, э, куча в jonформате Rй defлзы для реакта, инерции, редакции. Это самый большой, наверное, набор. У меня есть несколько дляшки обязательно, которые анализирую страничку и, э, штуки, связанные с Ютубом. Например, когда ты на YouTube заходишь, у меня там специальная приблуда прямо сразу на страничке Ютуба показывает а скорость набора, популярность, engagement trade, короче, куча показателей, которые мне нужны для анализа, когда я смотрю конкурентов или на свои собственные ролики, чтобы понять, что происходит. Кстати, очень классная штука, очень рекомендую. Видик называется. Кто не видел, прям прямо шикардос, если вам реально над этим заниматься. И суммарно это, ну, где-то 12 расширений. Слушай, у тебя сильно больше, чем у меня. А у меня One Password. У меня есть отдельное расширение, которое называется Firefox Multi Containers. Это можно кликнуть по по вкладке и открыть её в другом профиле. То есть у тебя, не знаю, может быть вкладка рабочая, домашняя, прямо на уровне, не на уровне всего окна. FFOX сейчас профили появились, а, а именно на уровне отдельной вкладки может быть абсолютно изолированное окружение со своими куками, историей, ну, вернее, не историями, куками, всякими всякими там сессиями и прочим, прочим, прочим. И прямо вот есть отдельный цвет у этой вкладки. Ну я как пользователь хрома, знаешь, это как Android пользователи смеются над айосниками, я смеюсь над Фаерфоксом. Прости меня, потому что у нас это всегда было, и я к этому это этому это этому расширению много лет тоже, так что это это не новость. А ну у меня стоит Ublock Origin. Это мой ADблокер. Кстати, он недавно появился на iOS тоже. Рекомендую. Это, по-моему, достаточно инди, достаточно адекватный блокер, который мне больше всех остальных нравится. Вот у меня стоит, у меня стоит def tool, называется IBM equal accessibility Checker. В общем, ребята, которые занимаются доступностью в IBM, они запустили такое расширение. Если открыть дефтулы, это они есть и для Хрома, и для Фафокса, и для для Safari может быть даже есть. А если открыть дефтулы, там появится отдельная вкладка, где можно потестить доступность вашего сайта. А есть у меня ещё концематик расширение. Это там логотип Евросоюза и замочек. Угадай, для чего оно? Для того, чтобы все эти GDPR попапы, прокуки закрывать, э, отказываться автоматически. У них есть там они работают на том же самом принципе, что ижденое расширение. Там есть листы с инструкциями, как эти попэпы закрывать. И он эти листы регулярно обновляются. И ты заходишь на сайт и успеваешь иногда заметить, как попап про куку, он такой только открылся и тут же закрылся. Ты думаешь: "Молодец, хорошая расширение". Слушай, ты мне сейчас прямо заставил этот задуматься. Я посмотрю обязательно, потому что это Да, да. Причём причём этим расширением занимается какой-то университет. То есть это прямо не неко не коммерческая штука. Просто люди собрались и поисследовали современный интернет и на основе этого написали это расширение. В общем, консентоматик в три слова. Цы спасают от бюрократии этой больной. Да. А, кстати, я ж я ж я ж всем рассказываю эту историю и тебе расскажу. Ну-ка. Вы думаете, когда вы заходите на сайт и видите попап на 20 на на 20-30 пунктов э прокуки? Это Евросоюз от вас требует это? Нет. Ну да. Евросоюз Евросоюз от вас требует, чтобы э как от бизнеса, чтобы вы не следили за вашим пользователем. Поэтому, если у вас ничего нет на сайте или какие-то базовые куки, вы можете просто сказать: "Ну, у меня базовые куки". А если вы продаёте информацию куче куче рекламных сервисов и просто показываете рекламу и так далее, и так далее, тогда вам нужно показывать эти попэпы. То есть вы как сайт, проект принимаете решение, попатет поп или нет. Евросоюз не виноват. Просто некоторые такие: "Эти эти бюрократы заставили меня показывать попап с куками". Это твой выбор. Это твой выбор. Ну есть правила, которые, знаешь, как это запрет курить и у тебя на каждой пачке это висит и всем в какой-то момент пофиг становится. Тем более, кстати, в России тоже есть на эту тему правила. То есть мы, например, к Евросоюзу в этом плане с точки зрения сайта не имеем отношения, но мы обязаны ставить, потому что это тоже внутренние правила. Ну и вообще в этом плане, конечно, страны соревнуются друг с другом, кто эх позабористей придумает. И самое главное, это паровоз, он только в одну сторону двигается. То есть чем дальше, тем дебильней. Вот. То не знаю, произойдёт. А я в целом не против, честно говоря. Я я как человек, который рекламным бизнесом не занимается, мне как-то мне от этого чуть проще жить в интернете, когда я понимаю, что мой заход на сайт, про него не узнают 100 млн рекламных партнёров. Есть мы сейчас с тобой пойдём дальше про браузеры. Есть одна вещь, которую я расскажу. Она, несмотря на то, что не имеет прямого отношения к браузерам и вообще интернету, но она просто очень показательная с точки зрения того, как вот это всё работает. то, что мы говорили с тобой по поводу а рекламы, ализа и всего остального в том плане, что бизнес всегда найдёт способы, потому что там просто есть, короче, может быть, неприятная правда жизни, что если бы бизнес не нашёл способы, а он бы просто умер. То есть огромное количество бизнесов бы просто умерло, и экономика стран очень сильно бы надорвалась очень многих. Поэтому всё-таки оно должно работать так или иначе. И слава богу, способы находятся хотя бы частично. Так вот, про Америку, значит, история. Ты знаешь, что в Штатах у тебя очень много писем настоящих физических, и это прямо спам. То есть ты если, например, кредит берёшь, у тебя там рейтинг изменился, ещё что-нибудь там ипотеку, у тебя тут же То есть, если ты неделю, например, ящик свой не выгребал, у тебя, скорее всего, там места физически не будет, чтобы туда письмо залезть, засунуть, потому что у тебя вот просто вот без остановки. У меня жена каждое утро там с ребёнком погуляла, приходит домой, я из дома работаю, и она мне на стол тут пачку спама кладёт. Они ещё так его, знаешь, так его упаковывают, что там срочно там похожие на какие-то официальные штуки письма, то есть тебя разводят просто на раз-два. Если опыта нет, ты поведёшься на всё это. Вот так вот. Я к чему это, значит, как они всё это узнают? Откуда? Например, банально есть такой прикол, а что ты переезжаешь в другое место просто вот ты просто переехал, казалось бы, никто про тебя не знает. Ты знаешь, что у тебя на третий день начинает валиться тот же самый спам. Есть один блогер, очень известный, американский. Я не помню его имя, он про карты обычно снимает, про границы. Очень крутой дядька, прямо нравится мне его слушать. И вот он один раз делал большое исследование на эту тему. Он много таких вот, знаешь, такой журналистский ресч, ээ, который резонирует потом в Штатах сделал. И он как раз рассказал про это, как это работает. Ты не поверишь, это просто жесть. Работает следующим образом. Существует такая организация, Почта Америки. Ты знаешь, это огромная, очень крутая организация, которая работает довольно эффективно. При этом она, как государственная организация, не имеет права продавать вот всё, о чём мы говорим. Она ей нельзя продавать данные третьим лицам, но есть нюанс, который ей позволяет это делать. Он работает следующим образом. Когда ты в Штатах переезжаешь с одного адреса на другой, ты обязан, у тебя нет выбора, потому что у тебя вся официальная документация, она через почту идёт. Ты обязан сообщить этой почте о том, что у тебя происходит смена адреса. То есть у тебя есть буквально 10 дней, иначе ты попадаешь там на штраф и ещё что-то. Ну, в Германи в Германии похожая история. Ты меня ты должен, переехав поменять регистрацию. Но это не регистрация, это реально прямо на сайте просто в почте вбил новый адрес. То есть это как бы это не связано вот с какими-то официальными такими бумажками. То есть как-то вот просто на сайте и всё. Это касается именно почты, чтобы ты понимал. То есть нигде больше, только в почте. Так вот, оказывается, он там раскопал у них в пунктах, они не имеют права продавать. Но когда ты меняешь адрес, это юридически другое другое действие. Это называется оповещение об изменении адреса. И в этот момент, когда ты меняешь адрес, они вот там есть большие как бы корпорации, такие банки, которые занимаются сбором этих данных, и они им, ну, продают и отсылают информацию о том, что у тебя поменялся адрес. И это как бы лазейка в этом законе, потому что это, а, обновление информации, а не продажа новой. И оно подаётся юридически другим языком. И, конечно, когда это видео вышло, там просто там люди, а, и ты ничего с этим сделать не можешь. Вот так вот это устроено. Лазеечки везде есть, да. То есть, блин, как вообще, да, американская корпорация, которая является этим, ну, государственным учреждением, торгует твоими данными. Так что там тоже есть заинтересованные лица, поэтому оно, видишь, так или иначе существует и всё это происходит. Ладно, поехали дальше. Значит, мы с тобой в целом вокруг да около поговорили. Давай поговорим прямо про конкретные фичи. То есть вот сейчас в браузере релизится, да? Я честно тебе скажу, я даже внимание обращать перестал. Он мне периодически там рестартани, я такой: "Ну, хрен с тобой, рестарт". Что конкретно они делают? А, и из девелоперской части, и с недевелоперской части браузеры. Вот мы, кстати, с тобой говорили про Я издалека издалека начну. Мы с тобой говорили про браузерную совместимость, что сейчас не так не так плохо, как времена, во времена 6 и всё такое. Это потому, что браузеры сейчас собираются раз в год и договариваются, какие фичи они будут внедрять внедрять. То есть, понятное дело, что они занимаются какими-то своими вещами, которые им важны и нужны. Я имею в виду разработческие фичи. Фичи вот веб-платформы, с помощью которых разработчиком можно делать новые классные сайты, а, и старые тоже поддерживать. А так вот браузеры раз в год собираются и делают такой проект под названием Interop, совместимость, и все вместе и и какие-то фичи добавляют вот в этот проект Interроп и весь год работают, а в конце года меряются, кто кто больше фич внедрил, у кого как самые лучшие тесты по этим по внедрению этих фич. То есть прямо сейчас браузеры, это по этому проекту уже года четыре, может быть 5 лет, браузеры каждый год пытаются сделать так, чтобы они оставались совместимыми. Так вот, какие фичи туда попадают? Те фичи, которые, э, они слышат от разработчиков, что им это нужно, важно. А, повторюсь, в браузер на фоне продолжают работать над тем, что нужно, важно им самим, но они очень много слушают разработчиков, что им нужно. А где они слушают разработчиков? Всякие опросы. Сейчас вот в вебе довольно много довольно много опросов. И STК Overflow делает, и там и DEF2 делает, и кто там только не делает, и Gitlab, и и все на свете. Но самые большие опрос именно в мире фронтэнда - это state of. И есть State of JS, есть State of HTML, есть State of CSS, а есть State of DE. Был, по-моему, State of AI. Запустился он или нет, я не помню, по-моему, был. В общем, группа людей не коммерческая, но с поддержкой разных разных крупных компаний. Аэ, потому что этим крупным компаниям интересно, что разработчикам на самом деле нужно. А занимаются опросами. Вот многие вещи из этих опросов приходят. Разработчики говорят: "Вот, ну, ну чудовищно неудобно работать, не знаю, с с webbrtc или очень неудобно работать с с навигацией браузер и вот вот такую вот фичу зашибьте, пожалуйста". А вот вот оттуда всё это берётся. А что браузеры шипт? Ну вот то, что разработчикам нужно в основном, а плюс вещи, которые нужны самим браузерам. То есть, допустим, мм, есть такое, когда компания достаточно большая, например, вот мы мы смотрим на Google, а там есть настолько отдельные друг от друга проекты, что они воспринимают себя как, не знаю, клиент и заказчик практически. И в Chrome могут прийти заказчики из Google Meта и сказать: "Ребята, вот мы хотим, чтобы у вас можно было из потока видео получать какие-то данные, чтобы мы могли потом, например, камеру переключить или пошарить два десктопа одновременно или чтобы можно было заблюрить задник, и для этого нужно какой-то там другой кодек или как-нибудь более более высокий битрейд, ещё что-то такое". И Chrome такой: "Ага, о'кей, давайте мы внедрим вот это в ве-платформу". Или для Google Maps нужны какие-то фичива, чтобы в на канвасе, например, поддерживалось более широкий цветовой диапазон, чтобы другие там цвето цвета поддерживались тоже. Chrome берёт и внедряет поддержку, не знаю, цветов на Canvas, потому что это нужно Google MS Maps или ещё кому-то. Или в Chrome приходит, не знаю, Photoshop и говорит: "Мы хотим, чтобы был доступ к файловой системе, чтобы ты мог свой PDF-файл просто нажать сохранить". И он у тебя открылась папка папочка, не знаю, на десктопе и ты мог прямо туда сохранить файл. А когда ты что-то поредактировал в своём файле, ты нажимаешь сохранить, и он дописался в этот файл. То есть прямо доступ к файловой системе ограниченный, не не совсем такой, как то есть МРФ не сделать вот это всё, но тем не менее. Поэтому вот есть э крупные проекты, есть разработчики и все их внимательно слушают, ну либо внимательно слушают разработчиков, либо проекты сами приходят, а и хотят чего-то, чтобы можно было веб продвинуть дальше. Вот файловая система, навигация. Вот у нас здесь давнешняя история про то, что мы начали писать сингleпейджи. А сингл пейджи у нас это когда мы не переходим прямо на другой адрес, а когда мы остаёмся на одном и том же адресе, а а просто jсончики гоняем с данными и перерисовываем интерфейс. Так вот там а чтобы у нас на самом деле адрес менялся в адресной строке и можно было ссылку дать. Там есть такая история, как history, вот этот push history i, который позволяет тебе этот адрес переписывать, хотя страница не меняется. И это всегда работало достаточно криво. То есть ты, у тебя в браузере ничего не происходит, а когда у тебя какой-то стейт поменялся, ты переписал адрес. Переписал адрес, переписал адрес. То есть браузер в этом вообще никак не участвует. Для браузера просто загрузилась одна страница, он сидит, ждёт тебя, ничего не делай. Появился классный history navigation API несколько лет назад уже. По-моему, даже в Safari, в Хроме давно уже внедрили. В Фейфокесе, по-моему, работают. А вот в в Safari недавно в Найле он появился, ну, вернее, в Safari уже превью. И эту, по-моему, может быть, даже осенью выйдет, я не знаю, будет будет, может быть, в следующем году. Так вот, это такой AP, который работает с друго с другого конца. Мы, наконец-то, сингleпейджа можем сделать сможем сделать вот эту вот навигацию по-человечески. как это работает, этот этот navigation IP, ты внедряешься в процесс навигации браузера. То есть, грубо говоря, если у тебя здесь страница А и страница Б, и на странице А есть ссылка на страницу B, ты нажал на ссылку А и перешёл на страницу B, у тебя просто мультий приложение или просто сайт с двух страниц. Когда ты делаешь single page, у тебя страница B просто не существует, и ты имитируешь её появление где-то там, а потом переписываешь адрес на на страницу B. Так вот, это AP работает по-другому. У тебя есть одна страница, есть другая страница, и это есть натуральная ссылка на страницу B. И ты можешь в момент э навигации, в момент клика на эту страницу, браузер говорит: "У меня начинается навигация". Разработчик такой: "Стой, никакой навигации. вместо навигации я запрошу jonчик и перерисую интерфейс. То есть ты вклиниваешься в браузерную навигацию страницы, браузер сам меняет адрес, браузер всё это поддерживает, не нужно все эти то есть ты, естественно, имеешь свои там виртуальные роуты и вот это вот всё синглпейджевая машинерия у тебя по-прежнему работает, но тебе не нужно браузеру нашлёпывать новый адрес, он всё это прекрасно делает сам. А ты просто превент дефолтишь какое-то браузерное поведение, а ссылки сохраняются. И если у вас, не знаю, что-то не JavaScript не сработал или просто загрузилась другая страница, у вас по-прежнему набор статических страниц, которые прекрасно работают, но вы их можете улучшить с помощью этого IP, который который работает поверху. Вот, например, очень очень очень яркий пример, а опять же не суперсвежий, но он потихонечку идёт к тому, чтобы стать кроссбраузероным. И это улучшение поверх э существующего работы браузеров. Ну и плюс, не знаю, вот недавно в Хроме выкатили фичу, в ЦС появились функции, а можно написать прямо функцию, прокинуть в неё параметры и оттуда что-то вернётся. А в предыдущих релизах хрома появились ифы в ЦС, то есть можно написать if что-то, тогда что-то другое. То есть это не становится языком программирования, это всё ещё декларативный язык, но писать более сложную, интересную логоку становится гораздо проще. А или вот буквально на днях появилась новость, что браузер фича контейнеer queries, такие выражения от контейнера, а она стала суперкроosбраузерной. Мы можем отдельно про бей поговорить, если ты не слышал про него. Это тоже очень важно важная важная веха в современном современном фронтде. Так вот, эта фича с нами уже во всех браузерах 30 месяцев, 2 с по года. Это это очень много. И, соответственно, у него поменялся статус. Это теперь green baseline широко доступный этой фичи. Ну и мы такие: "О, слушайте, она уж давно, можно с ними пользоваться". Это прямо уникальная вещь, когда ты можешь менять свой CSS не от ширины окна, а от ширины твоего элемента. То есть у меня эта штучка в колонку попала или в шапку попала. Она может вести себя по-разному, не от ширины всего окна браузера, а от того места, куда она попала, потому что она знает собственные размеры, и можно там всякими единицами, измерениями, всякими медиавыражениями, а это контейнер, а или CQ, а единицами измерения новыми перестраивать интерфейсы. То есть много чего хорошего появляется. И вот вот здесь чувства плато нет никакого, в отличие от браузеров. Вот если смотреть внутрь, всегда чего-то не хватает, всегда хочется что-то новое, потому что иногда казалось, что а браузеры просто тащат и в JavaScript, и в CSS, и в интерфейсе всё, что появляется на платформе, всё, что появляется на других платформах, все паттерны из других языков программирования, чего вот не хватало, или какие-то новые изобретения. А сейчас иногда думаешь: "Ну просто соседние отрасли тоже развиваются, и веб сам по себе внутри в себя варится, новое что-то придумывает". В общем, новые задачи у разработчиков постоянно появляются и новые задачи у проектов постоянно появляются. Так что что-то постоянно тащим. А про бейзлайн, кстати, ты слышал? Бейзлайн ты имеешь вот в том контексте, который ты сейчас имел в виду? Дада. С точки зрения совместимости, правда? С точки зрения здравой логики, наверное, я понимаю это. Ну да. Да, вот просто есть есть такое понятие baseline, чисто чисто вот слово в английском языке, базовый уровень а поддержки. Но на самом деле два с лишним, может уже 3 года назад запустился проект, э его сделали всякие там комьюнити-группы, плюс при участии МДНА, при участии Гугла. То есть это не кгловый проект, если что, они просто, ну, они спонсируют, они этим много занимаются, но это такой openсоourсный открытый классный проект. браузеры такие решили, что а каназа и браузер копат деты, которые тоже мозилова поддерживают данных о том, работает какая-то фичбра браузер или не работает, этого не это недостаточно. Разработчикам нужна немножко другая история. Во-первых, для того, чтобы понимать, насколько фича браузере поддерживается, а во-вторых, чтобы напоминать разработчикам, что фича с нами уже давно. Это такой новостной повод, что ли. И вот сейчас у всех фич в браузере, то есть ты, допустим, зайдёшь на MDN и напишешь, не знаю, там, не знаю, Border Radius или Grid или или Flexbox, у тебя там появится плашечка, она будет синего цвета, если она поддерживается во всех браузерах недавно или вот, ну, вот, в общем, поддерживается во всех браузерах, она будет зелёная, если она поддерживается во всех браузерах уже 2 с2 года. И это такой датчик, который помогает разработчикам сегодня вспоминать и тестировать свою совместимость на основе этого. Это это говорит про все фивые платформы. То есть есть такой есть такой проект на Гитubбе, называется Web Features. А и там задокументированы всевсе все все фичевые платформы на 100%. И на дано краткое описание, браузерная поддержка и так далее, и так далее. Очень много всяких данных на эту тему. прямо вот года полтора-два работали над над этим каталогом фич, по-моему, в этом году зафинали. Да, да, да. И вот это прямо очень большая большая новая идея. Если вы как фронт-разработчик не в курсе бейзлайна, я очень всем рекомендую внедрить это в ваши пайплайны, внедрить в ваш процесс разработки, чтобы вы опирались на него с точки зрения того, какие вы браузеры поддерживаете. Многие из вас могли слышать про браузерлиist. Вот Baseline - это такая альтернатива. Аэ, как понять, какой браузер ты поддерживаешь и как понять, какая фича в каких браузерах давно поддерживается или недавно. В общем, браузеры, аэ, немножко делая шаг назад из вот таких мелких деталей, э, вот то, что мы в самом начале обсуждали, браузеры сегодня очень много и плотно работают друг с другом. И и вот это очень сильно отличает от тех времён, когда у нас ещё когда у нас ещё спина не болела. Ты имеешь, что раньше просто вот это были комитеты, стандарты, где спецификация разрабатывали. То есть сейчас получается Да. Да. То есть сейчас это типа все вместе, а не Дада. Да. Всё комитеты, стандарта по-прежнему остаются, но браузеры непосредственно синхронизируются друг с другом очень много и очень плотно по тому, как они что внедряют, как они что тестируют. Есть отдельная большая тема - это веб-платформ-тесты, которые в которые браузеры обязаны по их внутренним документам сначала заводить тесты, а потом писать фичу на на этом основе. То есть прямо смотришь на сегодняшнюю платформу, думаешь, как какие какие чудеса. Ну вот только вот с точки зрения вечно-зелёных браузеров и приватности, наверное, есть какие-то вопросы. А в целом в целом платформа себя чувствует очень очень неплохо по сравнению с даже пятью-7мью годами назад. А префиксы актуальны ещё или нет? Получается, не не не префикс уже не актуаль. А сегодня браузеры тестируют фичи в Nightly браузерах. То есть есть Firefox Nightly, есть Safire Technology Preview, есть Chrome Canery. Три основных движка, которые сейчас вот живы. А есть ещё есть ещё новые движки, которые пишутся. Если интересно, можем поговорить про браузеры, которые пока не являются пользовательскими продуктами, но это типа прямо новые движки, которые пишутся. Не думаю, что это сделает. Вот. И браузеры сейчас вполне себе вполне себе совместимы и хорошо работают вместе. Слушай, ты меня, конечно, удивил, потому что я вот с префиксами они у нас исторически было и и были, и поскольку я за этим не следил, они остались. Я сегодня после нашего разговора побегу из репозитории. Ну, то есть, скажем так, есть ээсные свойства в небольшом количестве, которые всё ещё не стандартизированы, но в целом их осталось прямо вот считанное количество. И вот пользоваться, не знаю, автопрефиксером уже особого смысла нет, что ли. Угу. А лучше пользоваться инструментами, которые эти префиксы автоматически добавляются. То есть, если у вас в исходниках есть префиксы, не, я имею в виду автопрефиксер. По Да, да, да, автопрефиксер. Я я я предлагаю вот что сделать. А не удалять пока. Отключить, а, отключить автопрефиксер, сделать сборку, включить его, сделать сборку, а потом сделать div. И есть есть не нулевая вероятность, что там будет ээ нулевая разница. А он, ну, он умный, да, он там понимает, как бы, что сейчас происходит его, если Да, да, дада, да. То есть условно если а если там очень большая разница, скорее всего, у вас не настроен браузерлист, скорее всего, у вас не настроено в какие браузеры целятся. И, может быть, вы собираетепt пятый у себя там под капотом и шипите мегабайты джавоскрипта, который никому уже не нужен. Префиксы никуда не делись с точки зрения, как сделать современные интерфейсы совместимыми с с очень старыми браузерами, если вам это нужно. Ну вот для современного для современных браузеров, если если вы целитесь в последние, не знаю, 2 с по-3 года а браузеры, которые обновляли за последние 2 с по-3 года, а у вас вам префиксы, скорее всего, уже не нужны. Понятно. Хорошая история. Кстати, вот ты сказал по поводу навигации и у меня ж прямо внутри, знаешь, такое заколотилось, потому что я про это не знал. И это очень действительно важное изменение, которое фундаментально правильное, потому что это реально кошмар, то, как сейчас сделано. И когда у тебя будет грузиться сначала страничка, а потом реакция, блин, у тебя вообще всё будет нормально, потому что у тебя можно реализовать всё по-человечески. Но это, конечно, головная боль разработчикам всех фреймворков, но счастья им удачи и радости. Всё. Слушай, а может быть, может быть, ты про втранси ещё не слышал? Про в Что? Transition трансил. Скажи, что ты имеешь ви? А это как сделать так, чтобы ты мог сделать анимацию от одного состояния в другое состояние? То есть как плавный переход с одной страницы на другую. То есть чтобы, э, не знаю, картинка расширилась и перетекла в другую картинку. Вот такие вот вещи всякие. У, ну, тут, видишь, просто дело в том, что я как раз анимациями, ну, скажем так, поскольку я своим собственными проектом занимаюсь, у нас не возникает такой проблематики, и мы не стараемся там красоту вот такого плана наводить.
их совесть это оставляю ели они там, не знаю, молку, кнопочку прыгающую делают. И, кстати, в этом плане меня всё-таки это радует, то что, грубо говоря, если ты используешь современные не просто там аля реакты, а вот, например, у нас тайн используется, да, фантастическая штука. Я знаю, что там внутри под капотом много чего интересного. И она я тоже не слышал название. Мантай - это один из самых популярных юкитов, который такой, знаешь, с него, например, переходит очень, то есть есть Шат, который очень популярный, и есть Нтай очень популярный. Он немножко сбоку, потому что, например, у него концепция другая, и он такой весь это прямо UI kit, но с концепцией, когда у тебя, грубо говоря, ну, тот же Fleкс - это целый отдельный компонент, и у тебя type saaveй полный. То есть это такой современные инструменты, которые строятся по принципам вот там, то есть ты не, например, классов у тебя просто нету физически в твоём коде. Если ты пишешь класс, ты чувствуешь, что ты что-то не то делаешь. То есть ты использушь какие-то там абстракции, пропертис. Ага, понятно, понятно. Потом на основе этого генерируется про, да, при этом у тебя там огромное количество всяких возможностей переопределять темы там. Ну, там много. Это очень классная вещь. Кто не знает, посмотрите. Я на него с Бутстрапа, чтобы ты понимал, перехожу. Я много у себя в блоге про это писал в телеге о том, почему и как, и сравнивал с другими. На него есть тенденция перехода. То есть если ты редит почитаешь, на него есть тенденци перехода. Я просто тому, что такие инструменты, они очень многие вот эти проблемы решают на своём уровне, потому что они где-то в кишках дают высокоуровневый интерфейс. Поэтому, например, у нас часто нам говорят: "Ребята, а у вас accessбиility есть?" Удивительно, у нас есть ребята, которые с плохим зрением, например, учатся программированию. И это не потому, что мы там сели и заморочились, а просто потому, что мы такие пользуемся фреймворками. Они сами очень многие такие вещи делают, а линтеры тебе подсказывают, что надо. Да. Поэтому я частично, знаешь, спокойно отношусь к изменениям, про которые ты говоришь, потому что я знаю, что, ну, если мы об этом не знаем, скорее всего, это нормально. Это либо нам не нужно, либо это внедрят где-то там в кишках, и просто оно будет автоматом работать с очередным апдейтом. Ну, все фреймворки часто внедряют. То есть это вот этот V transition, это это двухэтапный API. Его можно использовать и в сингл пейджах, то есть всей, по-моему, Astra первый внедрил в реакции, по-моему тоже поддержка появилась, а во и так далее. А есть ещё отдельный м способ, когда у тебя просто на страничке когда у тебя просто на сайте странички просто просто htmlные файлы лежат и у тебя никакого сингleл пейджа нет, ты всё равно можешь себе втрансишены применять. Просто ты декларативно описываешь, как это происходит, а что во что во что перетекает. А, и всё равно можешь этим пользоваться. То есть это это потихоньку сейчас становится тоже кроссбраузерной штукой. А раньше такое можно было сделать очень наворочи сингle пейджами, фреймворками. И то и то они плохо справлялись, потому что перфоманс прямо вылетал в трубу. А сейчас это прямо нативная бральная фича. Честно говоря, честно говоря, тратить на это время, знаешь, разработчиков, ну, такое себе. Это жиру бесится по по мне, кстати. А, ну представляешь, да, ты тратишь время на то, чтобы переходы фигарить. Ну, блин, по делаешь красивый лендинг, ээ, в стиле Apple, когда ты там залетаешь внутрь камеры Айфона и там у тебя что-то вылетает. Сделай это на своём фреймворке. Ты ты ты умрёшь, а на на это делается и на на скролдриванных анимациях это делается на ура. Да, вот я это имел в виду, что это всё сделано ради лендингов Apple. В принципе, возможно, но не только у Apple есть лендинги, не только у них. Ну, такие такие лендинги, да, это, конечно, да, смотри, у меня есть прямо история небольшая. Core vitals, очень важные показатели, да, которые должны быть у тебя у современных проектов. У меня, значит, случилась а такая штука. А, значит, внедрил я современный подход, все дела. То есть, короче, у меня всегда была история, то, что я старался использовать классический серверный рендеринг, да? А, и это даже не то, что там не спа или не спа, просто это вот классический фреймворк аля там Rils, Jango, который на сервере. Э, и постепенно мы начали переходить на другой подход, но мы начали переходить на подход, про который, возможно, ты не слышал. Это инерция JS - это когда, ну, давай так, это как next JS, у тебя серверный роутинг. Угу. Но а при этом у тебя работает именно роутинг в отличие от неджеса, у тебя бкэнд любой другой. То есть в нашем случае это Rils, например. Ага. Нontт, у тебя как будто шаблоны ты пишешь на собственте, ну или на в неважно. Смысл в том, что этот клей, он это соединяет так, как будто у тебя нет пишки, у тебя нет стоит менеджмента, у тебя просто есть классический контроллер, экшн, сгенерил вьюху и загрузил. И как это работает, да? То есть у тебя по сути как бы компонент просто шаблон заменяет. У тебя проб это вот то, что из контроллера передал, поэтому у тебя прозрачная склейка происходит, да? Но знаешь, какая проблема появилась? Он как бы при этом не странички грузит. То есть когда ты кликаешь, там не обычный Ахре, а там линк его компонент в реакции, например, используется или опять же вбью там свой, и он на самом деле хитро подгружает div, там у него свой собственный протокол. То есть получается, ты этот апи не пишешь, он само пишет и внедряет и делает все нужные замены. Знаешь, какая проблема появилась? Есть один показатель, который страдает, и я реально пока не понимаю, что с этим делать. Помнишь, там есть такой показатель, это, по-моему, называется, да? То есть когда ты делаешь какое-то действие и как быстро у тебя начинает реагировать страничка на это. Это обычно проявляется в список каких- Interaction Next Paint, да? Да. Interaction Next, да. Так вот, прикол в том, что у тебя теперь ссылка стала в этом случае. То есть ты жмёшь на ссылку, а у тебя же нету перехода классического, как бы браузере ссылка поменялась и пошла загрузка странички. У тебя что происходит? У тебя с точки зрения Core Witals выглядит так. То есть, допустим, вот этот Jсончик там с генерацией, ну, там 300-400 мскунд грузится и отображается. С точки зрения скорости загрузки странички, это вообще довольно быстро. То есть если бы ты кликами это делал, это было бы офигенно. Но поскольку с точки зрения браузера это не то браузерноя i, то есть он не понимает, что это переход по другой страничке, он же у тебя урл меняет в конце, для него это выглядит как как раз. И он такой: "У вас 300 мсекунд реагирует интерфейс на то, что он же не понимает, что там на фоне грузится что-то". 300 мскунд реагирует на изменения, и у нас этот показатель просто, ну, как бы ушёл за красную границу. И я, когда читаю, что там на Редите пишут в вышсах, никто ничего с этим сделать не может, потому что это нерешаемая проблема в рамках вот этих вот технологий. Он, ну, как бы для него это не выглядит как загрузка новой страницы, для него это взаимодействие со страничкой. И когда ты про это сказал, у меня первая мысль возникла: "Так, возможно, это решение есть". Угу. Не то, что фреймворк это оптимизирует, а то, что мы как раз перейдём на нормальный IP, где он будет знать, что это загрузка страницы, её нельзя считать. Ну, Corb Vals, если сравнить с тем, как они запускались, сколько там лет пять назад, они сильно поменялись. Они постоянно добавляют новые метрики. Некоторые метрики сансетят, то есть их уже нет некоторых метрик, они заменяют их более умными метриками, они постоянно тюнят существующие метрики, чтобы они, с одной стороны были предсказуемыми, с другой стороны адекватно работали. Но это всё равно попытка вслепую, не видя страницы, попытаться понять, насколько она быстрая. Это очень умная и очень такая тонкая настройка и очень, очень очень умные тонкие попытки это сделать, но это всё равно попытки. Поэтому всегда будут какие-то места, где такой эть чёрт не пошло. Для пользователя всё хорошо, а для машины, ну, медленно. И тут от этого никуда, к сожалению, не убежать. Провалы бывают такие. Но тут такое, э, выбирая технологию, протестирую прежде чем на неё плотно подсесть. Не, не проваливается ли она с точки зрения машины? А потому что машина, она не просто говорит тебе: "Молодец или или всё плохо". Она ещё такая тебе: "А вот тебе ещё деприоритизация в поиске бесплат". Вот. Вот поэтому, да, поэтому мы за этим следим очень сильно и много уделяем этому вниманию, потому что у тебя вот прямо напрямую Cor Vals failed, извините, ничего не получится, поэтому надо обращать на это внимание. Смотри, следующий вопрос, который хотел тебе задать, а который, наверное, для многих вообще чуть ли не основной, это, собственно, производительность, потому что на ещё более низком уровне все работают над тем, чтобы JS быстрее всё там рендерилось, воркеры, тысячи других каких-то способов. Во-первых, что происходит здесь? И второе, наверное, сразу скажу, а как будто бы мы достигли, что ли, какого-то пика. Помнишь, был момент, что типа джез ускорили там чуть ли не в разы, потом ещё ещё что-то прорыв. А как будто бы сейчас что-то происходит, но я что-то про прорывы не слышу. То есть либо я плохо слежу, либо мы где-то близко к потолку. То есть куда всё это движется и что происходит? Ну, у меня тоже нет чувства, что происходит происходят прорывы. браузеры всё ещё шипят свои, обновляют свои джавоскриптовые движки, но там начинается такое, что типа так, сейчас у нас есть кэш, и мы для этого кэша сделаем кэш, а иногда кэш будем отключать, а иногда включать. И вот это вот вот вот вот подобные вещи а развиваются, но это файнтюнинг на уровне конкретного джаваскриптового движка. JavaScript всё ещё самый, э, прожорливый часть браузера. Всё ещё можно очень сильно, ну, по крайней мере, скажем так, современная синглпейджевая архитектура позволяет с лёгкостью просто, а, не задумываясь ни секунду, выстрелить себе в ногу и, а, может быть, и в обе ноги, потому что так мы привыкли писать приложение, что мы типа всё ставим из НПА, а не задумываемся о том, насколько всё тяжёлое, насколько всё тяжёлое для пользователя, а потом уже начинаем разбираться, ой, что-то нас затор тормозил. Так, к сожалению, современный веб устроен. То есть наши сборщики нам помогают, они там пытаются трешейкать то, что тришейкается и всё остальное, но всё ещё вина лежит на нас. А с этим ничего не поделаешь. Но несмотря на то, что Jaascrip пытается ускориться, это не единственное, что можно можно сделать. Так что, ну да, я я всем ещё рекомендую: не шибьте то, что не нужно шипить, а не не полифильте то, что не нужно полифилить. настроить вашу сборку так, чтобы в вашу сборка попадало только то, что на самом деле нужно пользователям, который к вам приходят. То есть не шибьте лишнего JS-кода. Ну и не шибьте в JavaScript коде то, что там не должно находиться. Если вы внутри файла с расширениеs шипите SVG иконки, PNG иконки, шрифты и что-нибудь ещё, которое потом распаковывается и превращается в ресурс уже прямо внутришего вашего браузера. Но это это стре это стрельба по ногам, к сожалению. Как можно больше ресурсов э загружаете у браузера непосредственно. Даже если есть дже, то подгружайте из сети. Это нормально. А вы всё равно чанками грузите ваши все эти интерфейсы ваш JavaScript, точнее, когда собираете ваши интерфейс JavaScript. А всё равно позвольте браузеру всё это отдать. Вот вот самые большие выигрыши с точки зрения рендеринга. Если вы уж всё всё сделали со своим джесом, можно сделать тогда, когда вы вынете из своего дже то, что там быть не должно, и подскажете браузеру, как это всё предзру, под прендерить и так далее. То есть всякие зилоудинги, linkн real прелоуды, прямо есть отдельная большая спека, вылетела из голо как называется, но она там preload, типа можно, можно погуглить HTML preload. Да-да, да, сейчас же встроили всё это лейзинга, что только не дада. То есть можно сказать браузеру, не знаю, у вас есть галерея картинок, у вас первые три картинки, а, loading eager, то есть жадно, а все остальные картинки loading lazy, и они только тогда начнут грузиться, когда вы к ним под немножко прокрутили. Вот это вот картинка. Картинка - это не самое тяжёлое и самое плохое, что можно сделать в браузере, но тем не менее. А с точки зрения того, что можно сделать браузер, ну, просто отдайте браузеру все CS как можно раньше. Отдайте браузеру все шрифты как можно раньше, не блокируйте картинки и вот такие подобные вещи. Но вот я говорю, что занимайтесь этим только тогда, когда у вас JS готов, потому что JS просто блокирует основной поток. Э, и, э, я как пользователь вижу в современном в современном интернете всё ещё, а, вот эту вот клиентскую шаблонизацию, данные, которые не доезжают, обломки шаблонов, а, неинтерактивные сайты, он загрузился, ты под ним кликаешь, а он ещё, а, я ещё догружаю свои чанки, у меня у меня тут здесь дела. Вот это вот самое самое, пожалуй, самое большое. и то, что браузеры для этого могут сделать, но в целом они делают, вот я повторюсь, htмlные атрибуты, способы, э, прирендерить, предзагружать, а, спекулятивные пререндеринг, там вот большая большая фича была тоже, там back forward cash, браузер запилили. Это когда, условно ты форму заполняешь какую-то, понимаешь, что тебе нужно идти назад, ты нажимаешь не на кнопку назад, а прямо, ну, в браузере кнопку назад нажал, а потом ещё вперёд сходил зачем-то. Вот, чтобы браузеры не перерендерили, не перерисовывали, не перезагружали эти страницы, а брали их из кэша, есть отдельные тоже, скажем так, техники, которые позволяют современным браузером лучше вас понимать. Вот они в этом направлении тоже работают с кэшем, потому что браузер, ну зачем ему грузить то, что у него уже точно есть? Просто нужно убедиться так, чтобы вы ему не помешали понять, что это всё ещё можно взять из кэша. Иногда можно глупости наделать. Опять же, BFF кэш, э, погуглите. Много статей на эту тему выходило. Браузеры вообще пытаются в этом направлении работать с разной скоростью разные браузеры, но есть есть есть такой способ, а, оптимизировать всё это. Ну, плюс, э, как я уже в начале говорил, джаваскриптовые дышки развиваются, но в меньшей степени там уже начинается файнтюнинг, там уже начинаются всякие такие штуки. То есть, мне кажется, сегодня надо просто всем разработчикам завести культуру. перформанса уже поздновато её заводить, потому что уже всякие пенальти вам за за плохой перформанс давно уже привозит, поисковая деоптимизация, вот это всё. А, но если вы вдруг только что очнулись или недавно входите в профессию, э, убедитесь, что, а, каждая фича, который вы, э, добавляете в свой проект в каждом пулреквесте или в каждом вот в каком-нибудь сборке предрелизной, а она пробегается по лайтхаусу, пробегается по всяким там корвайтлсам и даёт вам значение, что мы впилили эту фичу и она ухудшила наш корвал значение на, не знаю, на 20%. Вы такие: "Х, она заработает нам столько денег, но мы из-за этого потеряем столько денег. А может не стоило вообще в неё внедрять? Или давайте потратим ещё месяц, чтобы оптимизировать перфоманс этой фичи". То есть условно, если у вас нет вся ICD вот этой в этом пайплайне инструментов, которые проверяют ваш перфоманс, вы летите вслепую. Так делать не стоит. Ну я бы тут добавил, что мм в правильной системе, наверное, это бы на уровне знаешь таких Kpiев внедрялось. не с точки зрения оплаты, именно с точки зрения того, типа на что мы ориентируемся. Потому что вот мы, например, со своими ребятами договорились именно об этом, что у нас будет KPI на Core Whitals, и это просто махв, который должен чекаться там с каким с какой-то периодичностью и всё. Потому что просто надеяться, что они такие: "А, ну да, мы будем смотреть". Ну такое себе. Но ты прав абсолютно. Ну или блокировать сборку типа, да, для битусишных проектов это, конечно, особенно которые там новостники, но всё, что индексируется, всё, где у тебя есть переход, это просто по-другому нельзя. Э, пару просто приколов скажу. Я, значит, для Вита как раз недавно просто этим занимался. А, и практически вот просто все плагины, существующие для оптимизации, специально пересматривал. Думаю, дай-ка посмотрю, что есть. Я нашёл, во-первых, один шикарный плагин. Сейчас, может, ты меня засмеёшь. У нас в этом плане нет выделенного фронтендера, поэтому нам нужны ленивые вещи, которые делают что-то для нас, да, мы не всё контролируем. М, значит, плагин, который во время сборки жмёт все картинки. И когда я поставил этот плагин, он он просто во время сборки может их в VP превратить и пожать. И знаешь, что он делает? Он не просто их жмёт. Он, во-первых, это делает классно, а во-вторых, он смотрит. Если он его пожал так, что он сжался, он его использует. Если он его пожал так, что он стал по размерам больше или не изменился, он берёт оригинал. Этот плагин популярный, как ни странно, и очень он развивается. И я, когда его подключил, у меня глаза на лоб полезли, потому что десятки интерфейсных картинок пожались в больше, чем в два раза. Я такой: "И что? Нифига себе". А причём именно, знаешь, ладно там какие-нибудь, ну, мелкие, да, штуки, а там очень много именно вот элементы каких-нибудь лендингов и так далее, которые вот на постоянной основе в байке существуют. И мы такие: "О, а на халяву позволило нам это сделать, чтобы мы не задумывались каждый раз о том, что мне надо до оптимальности доводить каждую картинку". А потом я нашёл плагин, но вроде он как немножко подустарел. Не знаю, почему не делают, который оптимизирует Critical Pass. Знаешь, каким образом? Он типа пытается определить. Я, кстати, не думал о том, как он это делает. Какой CSS нужен только для отрисовки первого экрана. И он пытается вот таким образом в чанках перераспределить, чтобы ты грузил только то, что там надо. Вот. Но в целом всё остальное оказалось мертво, по большому счёту перекладывается на тебя на самого. Я такой: "Ну ладно, о'кей, будем активирова". Мне кажется, что перфоманс - это не то, что достигается плагином. То есть условно плагин тебе может помочь на самые низковесящие 20% поймать. Как только тебе нужно сделать что-то чуть дальше, 30, 40-50% твоей перфоманса дальше продолжать развивать, нет, плагин тебе не поможет. Это нужно делать руками, нужно понимать, как браузеры работают. А вот с картинками, ну, я посмеялся, но по другому поводу. Не потому, что картинка - это такая простая вещь, а потому, что при каждой сборке сжимать картинки это это так строи. Продакшн сборки. Нене не не он не во время продакшн. Хорошо, хорошо. Для каждого продакшна. Ну ты же с продакшн делаешь чаще, чем раз в неделю, да? Ну не знаю, хотя бы раз в неделю. Ну это происходит на Git Hub Actions. Ты об этом не думаешь. Я просто, знаешь, к чему? К тому это время занимает. Это очень тяжёлая операция. Там внутри работает работает один и тот движок, который, господи, как он? Шарp называется, по-моему, этот движок, по-моему, используется VIPS. Может быть, может быть, может быть, там под капотом работает. А может быть и VIP, кстати, да. А так вот это всё дико медленно и условно, если ты хочешь зашипить что-то, чтобы, ну, то есть ты запустил проект и у тебя на главной странице написано какое-то не то слово, и тебе нужно через 5 минут, пока этого никто не заметил, сделать новую сборку, а ты сидишь иже 20 минут ждёт, пока у тебя картинки все обработаются. Ну, короче, так такой такой себе деплой. Ты, я думаю, знаешь в чём разница? Как ты себя воспринимаешь? У нас-то всё-таки, а когда я говорю про картинки, я говорю про примерно 20 картинок размером там до 100 кб. А ты а ты потому что, понимаешь, опять же, мы же про бизнес. У нас такие вещи не делаются в коде. Это всё у маркетологов, и они сами там грузят. И поэтому, понимаешь, наши проблемы нич по сравнению с тем, что они там творят. Потому что когда у тебя в очередной раз ты смотришь, что у тебя мегабайтную картинку загрузили, понимаешь, да? То есть у тебя есть гораздо более серьёзные проблемы, чем то, что вот мы тут пытаемся пофиксить. Не, ну я больше я больше к тому говорю, что тут две вещи. Э- сам подход кипятит воду и ээ тратит электричество. Никому это не нужно. А потому что не нужно два раза делать то, что уже сделано. И если у инструмента есть кэши, их нужно настроить. То есть на GitHub экшенах тоже есть такое понятие, как кэши, и они могут храниться между сборками. И если, условно, твои картинки уже закашировались, вернее, если твои картинки уже оптимизировались в предыдущий раз, когда в следующий раз запустится твой инструмент, он посмотрит в кэш, а хэш сумма не изменилась. Я этих даже пытаться не буду оптимизировать, я просто возьму оттуда из кэша. Вот это об этом тоже нужно помнить. Оптимизируйте все свои вот эти вот сборщики. У них кэши точно у всех есть. У кого-то лучше, у кого хуже. В данном случае я просто хотел подсветить, знаешь, наверное какую вещь? то, что без этого инструмента сама задача типа найти время на то, чтобы пойти подумать, а что там пооптимизировать - это геморрой. И он ти я, знаешь, как бы хотел, то есть зачем мне тут даже кэш? Я такой думаю: "Блин, ну мне нужна просто команда, которая локальна. Я скажу: "Ну-ка, возьми и тупо перезапиши мне эти картинки и всё". И мне даже не придётся мучиться. Я скорее вот так это хочу решить. И это фантастика. То есть это штука, которая реально помогает очень сильно вот этот вот, знаешь, испытывать тут осо, что там редактор настроен, что я картинки жму каждый день. Я такой думаю, сейчас я сяду за эту задачу, и это превратится в какой-то ад на несколько часов, которым я не хочу заниматься. И эта штука позволяет мне это решить. Ну ладно. Слушай, на самом деле есть есть есть у людей такая такая вещь, как, не знаю, прокрастинацию, ещё что-то такое, или просто вещи, от которых люди получают удовольствие. Вот моя вещь, как получать удовольствие - это от фронтенда. Это а сжать картинки так, как никто не сможет сжать картинки, потому что ях я много знаю про картинки. А следующее - это сжать СВГ картинки. Это прямо отдельный кайф, потому что я знаю, как сжимать СВГ, так как никто не зажимает, как СВГО не сожмёт. А третье - это это ещё оптимизировать шрифты, чтобы э там засапсетить лишние символы, чтобы не шипить, чтобы в нужных форматах, чтобы правильно всё было. Это прямо отдельно. То есть как бы дай мне это делать каждый день до конца моей жизни. Я даже, не знаю, денег денег не попрошу. Я буду получать удовольствие в процессе. Понял тебя? Да, кстати, про СПГ-ты сказал, тоже не могу не сказать. У меня, видишь, прямо целый блок был оптимизаций. Шрифты мы, кстати, просто тупо вырубили. А потому что больше бренд-менеджер мне не говорит, что это Да. Да, да. Вот. И есть ещё одна штука, которую я сделал. А я в какой-то момент такой, когда картинки анализировал, тоже думаю: "А какого чёрта мы вообще? У нас там, например, иконка сайта, да? это наш логотип, и она не свгэшная. И я такой: "О'кей". Нашёл картинки растовые, которые, в принципе, могли быть свгэшными. Думаю, о'кей, а опять же, я не дизайнер, мне некому сейчас это послать, я вообще не хочу этим сейчас заниматься. Я такой: "Дай-ка найду сервис". Оказывается, существуют колаline утилиты, существуют сервисы, которые растовые картинки переводят в СВГ. Я херанул, у меня там всё с десятков килобайт превратилось там в 500 байт, ну, что-то там до килобайта. Я такой: "А, а где же вы раньше были?" Слушай, я я могу из твоего лога сделать 100 байт, если если попросишь, руками. Ну это уже это уже, да, я верю, что ты тогда оптимизируешь. Но опять же низковисящие фрукты, их довольно много и автоматизации, яишной в том числе очень много, которая помогает это всё сделать. Поэтому я очень сильно порезал. Как бы мы там, если сейчас посмотреть, просто могу тебе похвалиться, мы с тамм ещё Cloudфлауру настроили, у нас загрузка htмля на наших лендингах, на хекслите 50 мскунд. Не, ну у вас потому что сидена по всему миру вот это всё. Да, не только там всякие хитрые киши, которые, оказывается, не работали, потому что были сетку. То есть, когда, короче, начали копать глубоко, выяснилось, что многоя автоматизация не работала просто потому, что у тебя БК там что-то начал отдавать, ты этого не заметил, а он считает, что если ты, например, ставишь куку, значит, нельзя кэшировать. Поэтому он включает определённые уровни кэширования, но самые жёсткие уровни не включает. И если ты не человек, который сидишь и в это копаешь непрерывно, ты можешь очень легко этот момент пропустить. Вот поэтому вот мы когда занялись, то у нас там с полторы секунды до вот 50 миллисекунд. Не, ну классное, что есть решения типа Cloud F такие коробочные, где можно включить галочку, а он он за тебя всё сделает, там cloudфрлиif ты всё правильно отдашь, да? То есть, как ни странно, оказалось, что у тебя дефолтные фреймворки часто отдают не то и не так, и они поэтому этот кэш не включат. Поэтому, ребят, будьте аккуратны, если вы этим занимаетесь. Ну, поэтому нам нам за это деньги платят, потому что нам нужно разбираться, что работает, что не работает. Да, заметь, мы при всём при этом говори, вот когда мы про всё это говорили, мы же по сути говорим про, э, то, как браузер работает с точки зрения рендерит и всё остальное, но по факту о самом Джаваскрипте как языке, что он станет гораздо быстрее и за счёт этого мы получим халявный прирост, как будто мы не поговорили. А при этом у меня было несколько подкастов, где джез мы много обсуждаем. И как раз обсуждалось, что, а, по идеерит, даже не тайпскрипт, а типы нативные, реализованные для Джеса, например, был бы следующий большой шаг для этого изменения. Я бы хотел тебе задать общий вопрос на эту тему. Очень многие люди до сих пор ждут, что вот-вот-вот JavaScript станет не единственным способом или вообще появятся другие способы и вообще мы как-то заживём по-другому. Вот в эту сторону есть движение какое-то или надо забыть и JS - это с нами навсегда? Ну, мне кажется, что JS с нами надолго и навсегда. Я бы даже сказал, навсегда. Вопрос в том, что JS будет сильно меняться. Насколько сильная, не боюсь предсказать, но я допускаю и на самом деле уже были дискуссии на эту тему про типизацию джавоскрипта, такую лайтовую, базовую, но тем не менее тем не менее предложения и идеи были. Они пока ещё даже, по-моему, прототипы никто не писал, насколько я знаю, но ээ черновички писали. То есть можно, в принципе, поискать типизацию вот в этом в репозитории и ТЦ-39. Там у них есть всякие там предложения про поузлы и прочее. Там речь про типизацию шла. Недавно был был скандал, не скандал не скандал о том, что JavaScript не хотят развивать. Не слышал про про JS Core, про JS JS JS0 вот это вот всё. А, слышал, мы обсуждали JSCore, да, и база языка, расширение за счёт каких-то типа полифилов по сути. Дадада. Да. То есть типа браузерам сложновато внедрять новые джаваскриптовые фичи, чтобы это всё было performanceс хороший и чтобы всё было адекватно и совместимо. Поэтому давайте мы просто перестанем внедрять новые JavaScript фичи. Прямо вот такие, скажем так, синтаксические сахара перестанем внедрять и будем просто для них классные полифилы писать. А а вот самые фундаментальные вещи, которые вы не не запалифилить, вот тогда мы будем развивать и JS начнёт развиваться ещё медленнее. Кажется, оно куда-то никуда-то не не пошло, потому что м реакция сообщества была такая сомнительная, но а-а я прямо сейчас вижу, что мы, скажем так, не помним предыдущих ошибок, напились тайпpeскриптом и ни о чём другом не думаем. У меня вот я я скорее я скорее из из Typeesрипt скептиков. Может быть, потому что я каждый день не пишу на ТСЕ. Я понимаю, как он работает, и щупал, пробовал, работал над проектами, которые в которых он был. И мне кажется, что у нас есть культ строгой типизации, которая потом в браузер не попадает. Этого, в принципе, нам хватает сейчас. И я понимаю, зачем это крупным бизнесом, но вот людям, которые делают что-то своё, небольшое или даже малым бизнесом, ну, тут вопрос вопрос, зачем это нужно? Это скорее каргокульт. Люди просто тащат в проект то, к чему привыкли. Ну вот у меня такое такое чувство. Поэтому вот, например, не знаю, мы мы недавно переделали фронтенд Мдина, мы мы скоро его запустим, и мы там всё-таки решили писать на Джесе, а, но с с типами стипизации в JSдоках. То есть мы у нас нормальный JavaScript, который прямо вот может интерпретироваться браузер Javaриптовым движком любым. Нам для этого не нужен Typeesриpt. Для на этого не нужно запускать какое-то особое суперокружение. У нас, понятное дело, там современный JavaScript сборка. там и прочее, прочее, прочее есть. Но я я к тому, что мы не пишем на языке, который, возможно, куда-то денется или а который развивается только одной компанией, в отличие от всего джавоскриптового языка, которые развиваются группой компаний, которые развиваются прямо сообществом, а, и представителями этого сообщества и представителями больших компаний. То есть я просто писал на Сасе, а не на ЦС. И а это была одна из самых больших моих ошибок в жизни, что ли, а сделать сделать серьёзную ставку на САС, потому что с него было тяжело слезать. Есть некоторые проекты, которые я свои старые, которые я не могу потрогать нормально и быстренько обновить, потому что они написаны на САС. То есть я всё ещё могу завести сас локально, они, конечно, заработают. Мне нужно там, конечно, даунгрейдить ноду. даунгрейн там и чтобы оно всё точно завелось, а, и может быть это всё заработает. Но, короче, это эта кодовая база протухла. И я не думаю, что это случится с тайпскриптом так же плохо, как случилось с SAS. Он всё ещё развивается, работает, но гораздо менее популярен, гораздо менее нужен. Но меня ещё никогда в жизни не подводило. Возможно, это будет именно тот случай, когда он меня подведёт. Но вот эта вот моя чуйка, что полагайтесь на то, что открыто openсорсно, не принадлежит одной компании, а с открытой лицензией развивается всем сообществом. Ставьте на это и не ставьте на узкие инструменты, которые а дают вам преимущество только здесь и сейчас, а в будущем могут принести проблемы. Возможно, я старовер, возможно, я вот так на это смотрю, но но тем не менее. Вот это вот вот это был мой кусочек скепсиса про Typeesриpt. Ээ я я думаю в в комментах порезвятся люди здорово над на над моей позицией. Она очень непопулярная, но тем не менее она моя. У меня есть ложка мёдов в в эту бочку, так сказать. Знаешь, какого плана? в Ноде новый, ну, относительно там предыдущей версии, по-моему, даже внедрили такой флаг специальный, называется strip typescriptриpt как-то как-то так. Types, как-то так он называется. Отстреливать, типа, да. Это уже уже стабильный анода стабильный, он уже отстреливает по умолчанию. Даже по умолчанию, ты не поверишь, буквально, да, вот буквально неделю назад я, а, значит, пере, ну, у нас очень много репозиториев, очень много всяких штук для обучения, которые мы используем. И вот у меня там есть одна штука на Фасти написанная, которая на тайпскриптовая, и она проходила этап какой? То есть у тебя там чер есть, но чтобы он работал, сначала надо это в джез превратить. Короче, у тебя там такая немножко сложная тема вот эта вся. И я такой думаю, и я ждал, когда эта поддержка именно в Фастифай появится, то есть там внутри него была именно ограничение, то есть вноди уже сделали внутри него ограничение. Я смотрю, что пулреквест приняли, я пошёл, всё это удалил, и оно реально работает. То есть у меня конфигурация сильно меньше. Ты как будто работаешь с тайпскриптом напрямую. Ну, ощущение же такое возникает, да? И это, конечно, фантастика. То есть я понимаю две важные вещи. Первое, а у тебя действительно ТС настолько совместим. Ну, если ты там, конечно, не юзаешь вот эти вот их хитрые фичи, но это редко кто на самом деле делает. У тебя просто удаление автоматическое типов делает из него JS. Поэтому получается, что с одной стороны эта фича ещё больше их заставляет следовать этому процессу, они ему следуют уже много лет, и для них это очень важно, чтобы у тебя был одновременно мог ты в одном проекте всё использовать. Во-вторых, они просто теперь, я уверен, разъехаться не смогут, даже если кто-то бы там захотел. Поэтому в конечном итоге всегда можно вот натравить эту фичу на любой тес проект, и он просто так всё это отрежет, и у тебя останется. Сансом так не прокатит. Они они действительно заявили про Typeesрипt с самого начала, что это над множество джавокрипта и всегда совместимо и так далее. Потом наделали какое-то количество ошибок, которые противоречили этому заявлению. А потом всё-таки вернулись к своей классической вот этой парадигме, что да, мы над множество JS и мы не мы не внедряем такие фичи, которые не совместимы с дэсом, чтобы можно было действительно отбросить типы и тут же всё быстро интерпретировать. Да, я с тобой согласен, что вот это вот то, что уже работает в дина и то, что недавно завелось в но умолчанию без флагов, э вот это отстреливание типов, оно действительно, скажем так, фиксирует этот контракт ещё более сильно. То есть уже уже там трое, четверо подписали это кровью, и поэтому уже уже и шансы у этого всего довольно высокие. Но а даже если э типизация так или иначе заедет в JS и будет работать в рантайме, это то, что Typeescriptрипt никогда вам, ну, не даст, потому что он просто язык, который работает в вашем редакторе. Да, вам удобнее будет писать. Ну, то есть условно допусти себе ситуацию, когда ты пишешь типы и у тебя всё в редакторе нормально работает. Ты шипишь этот код, и он также нормально работает в браузере. Может быть, там нет всех типов, но какие-то базовые точно проверяются. Плюс, плюс, всё хорошо. Так, а зачем мне Typpeesрипt? То есть условно, а чем меньше у тебя зависимостей, тем тебе лучше. И я считаю, что это сложная задача, которай над которой придётся долго поработать, но так или иначе она в JS заедет. Ну да. Опять же, потому что мы с этого с тобой начали, для того, чтобы делать действительно классную оптимизацию производительности джеса, там нужны типы, иначе слишком много ивристик и вот всё выезжает за счёт тюнинга и кэшей. А вот такая вот история, да. Ну в любом случае получается, что прямо сейчас никому ничего делать не надо. То есть вывод такой. То есть, если у тебя в браузере какие-то фичи появляются, но с точки зрения Джеса, ну, как пишем, так и пишем, ждём, когда какие-то изменения. Ну, это большие это большой плюс джавоскрипта, что это язык, который полифилится очень легко. Это это это прямо язык программирования. Всё, всё нормально. Это не декларативный язык, как HTML CSS, который не полифилится. Там слишком много браузерной магии происходит. Джез гораздо более прозрачный, гораздо более понятный. Если какая-то фича появилась, ну, с с девяносто девятипроцентной вероятностью, ты её можешь интерпретировать. Но в джаваскрипте есть, на самом деле, проклятие по похуже, чем чем Typeespt. Я не считаю Typeскрип Typeesрип проклятием, не подумайте. Но я имею в виду, что есть прямо проклятие у джавокрипта современного. Я не знаю, попробовать угадать. Это, наверное, только если слабая типизация. А может быть, ты прототипы что-то хочешь сказать? Нет, я про про прямо современный JS вот у тебя в редакторе кода. А я говорю про сборщики. Сборщик - это проклятие JS современного, потому что мы пишем всё ещё пишем код под сборщики. Мы не пишем JavaScript на Джаваскрипте, мы пишем JavaScript, а потом склеиваем его фантазиями под конкретный сборщик. И ты используешь другой сборщик, он работает по-другому. Ты обновляешь зависимости, у тебя всё ломается, ты пытаешься запустить этот код в браузере, он не работает, а он в нотает, а в браузере не сработает. И так далее, и так далее. То есть вот современное внедрение экмоскрипта в ноду вместо рекваеров, а-а, вместо вместо конджеса, а это хороший шаг в ту сторону. А, но всё ещё открываешь любой проект и там импорт svil.
И ты смотришь и думаешь: "Ну это же просто заклинание. JavaScript не может импортировать SVG файл". Правда? Ведь это просто инструкция для сборщика на JavaScript, на псевдоваскриптовом синтаксисе. Импортёруй мне. Это не для джаваскрипта пишешь ты на джаваскрипте. Есть импорты с осершеными, с асертами, которые позволяют тебе импортировать. А Jon уже в браузерах есть, в ноде есть, а ты можешь уже импортировать в браузере из джавокрипта а импорт csсносного файла, и он тогда тебе сделает construcctable style sheet. Но это пока всё. Возможно, ещё другие типы подъедут, которые можно будет типы типы файлов, которые можно импортировать. Может быть, даже не знаю, бинарники какие-нибудь можно будет како-нибудь какой-нибудь блок будет создавать, когда ты импортируешь. Но все вот эти вот импорты, все вот эти конструкции, типа, чтобы не писать мне точкаточка наверх, я просто напишу посевда моего файла, а сборщик как-нибудь разберётся. Но это же не путь к файлу. Это типа кто-то что-то сделает, может быть, если правильная версия сборщика из МПМА пришла. Понимаешь, мы делаем всё очень хрупко и фантазируем в процессе много. И как я говорил про про Typeesрипt в меньшей степени, потому что он всё у него правило строже, как и говорил про САС, а потому что он просто другой язык. А, а вот когда мы пишем файлы с точ с расширением TOGS, а в нём пишем э что попало на непонятном синтаксис с непонятными перспективами собраться, вот это проклятие, я считаю. Я считаю, что Legacy код от этого становится ещё более Legy. И мы, ну, просто закладываем бомбу с с отложенным действием для себя каждый раз, когда мы пишем фантазины. Поэтому, когда я какие-то проекты пишу, я стараюсь максимально, даже иногда за счёт своего неудобства, сделать нативный код, который прямо в браузере прямо сейчас заработает. Если вот прямо открыть CSS, HTML, JS. Минимум вещей, которые нафантазированы поверх с помощью сборщиков. М не всегда это получается, потому что не только я над проектами работаю, например, или есть какие-то прямо договорённости, или есть какие-то вещи, которые в платформе всё ещё не реализованы нормально. Но когда я это делаю, мне всегда немножко больно. И я всем тоже рекомендую, если у вас уж не попадается, не получается это всё решить, от этого отказаться, по крайней мере, чувствуете себя хотя бы чуть-чуть неловко от того, что вы это делаете, это вас, мне кажется, вам когда-нибудь поможет. Ну, согласись, что сейчас всё равно лучшие времена в этом смысле, потому что вид, конечно, убрал количество головной боли вот этой вот магии, конфигурации. То, что творилось раньше, это вообще Дадада. Да, он захватил. Мы недавно в подкасте обсуждали сборщики, и мой мой соведущий не мог вспомнить название вебпак. Может быть, у него было тяжёлое утро, а может быть, он последний раз слышал это название настолько давно, что он забыл. Ну, мы какое-то количество лет, несколько лет назад ещё его использовали. А я долго ждал, когда вид всё-таки станет прямо однозначным лидером по одной простой причине. Ты знаешь, сколько по пути полегло сборщиков перед тем, как появился вид и своё место под солнцем занял. А-а, поэтому в этом плане в Джейсе лучше не дёргаться. Знаешь, как это? Открывай ворота, закрывай ворота, у тебя за это время всё умрёт и появится. Так что да, с этим с этим всегда опасно. А, слушай, я вот есть ещё одна вещь, которую мы не проговорили. Мм, уже чуть-чуть за рамками, но она близка, как бы. Это веб-компоненты. Вот эта концепция, что ты можешь писать кастомные теги, она в итоге всё-таки жива или умерла и поняли, что по производительности не вытянем, потому что кажется, что логически это будущее, но есть непреодолимые технические преграды в виде непредсказуемости по производительности, да, и того, как эторисова, ну, там есть есть какое-то количество проблем. Ну, в общем, веб-компоненты - это такое такой зонтик, зонтичный бренд, в котором есть куча куча вещей. И одна из них - это кастомные элементы. То есть ты можешь писать my dash element, то есть там обязательно должен быть defис в названии, потому что в обычных html-тегах такого нет. И парсер различает. Есть одна штука. Ты можешь писать кастомные элементы и внутри прямо CSS их стилизовать. А их нужно инициализировать с помощью джаваскрипта всё ещё. Но нормально, нормально всё это прекрасно работает. Браузер. Так вот, это маленький кусочек веб-компонентов. Есть отдельная большая частькомпонентов. Это прямо AP. Это именно Shadow Dom. Это то, что это изначальная попытка сделать так, чтобы можно было инкапсулировать внутри вашего компонента а ваш JS и ваш CSS. То есть условно, чтобы вы внутри ва своего компонента написали какой-то айдишник. И он не был глобален для всей страницы, он был только локальный. Если бы написали JS, он был только локальн. у него не было бы области видимости вообще всей страницы. И не знаю, вы могли бы написать просто п параграф, и он бы застализовался только внутри вашего компонента, а не наружу. И вот эти вот, э, вещи, ну да, то есть веб-компоненты современно состоят из трёх частей: ээ кастомные элементы, э, shadow дом, ну, и импорты, джаваскриптовые импорты туда ещё прицепляют. Можно считать их тоже частью веб-компонентов. Раньше были HTML-импорты, но они никуда не взлетели. и про них про них ээ забыли. Так вот, главная проблема с веб-компонентами сегодня, наверное, даже не performanceс. Мне кажется, браузеры научились э дедупликацией заниматься и так далее. То есть условно, если ты, э, закинул 10 компонентов на свою страницу и каждый из них импортирует JS, и каждый импортирует CSS там, и каждый из них что-то какой-то счётчик крутит, браузеры достаточно умные, чтобы не импортировать 10 джесов, цссов и так далее. Они научаются понимать, что это копии и так далее. То есть понятное дело, что перформанс какой-то страдает всё равно немножко, но не по срав но, как если вы если у вас там, не знаю, какой-нибудь полноценный реакт крутится и занимается там все этими штуками. То есть веб веб-компоненты в этом смысле можно даже сказать, что более перфоманс, чем чем чем многие синглпейджевые решения сегодня. Вот главная проблема мкомпонентов сегодня - это все хотят пользоваться домом, то есть инкапсуляцией, но инкапсуляция иногда слишком жёсткая. То есть условно, а, например, бывают часто проблемы с адресацией, то есть у тебя есть веб-компонент с чекбоксом, а лейбл снаружи, но тебе этот чекбокс нужно, зна, не знаю, my checkbox. И тебе этот чекбокс или, не знаю, my input какой-нибудь, ещё что-то такое поле с счтере редактором. Тебе это поле нужно с лейблом связать, а у него там своя адресация по айдишникам, а у лейбла другая адресация по айдишникам. И ты в итоге ты забиваешь и у тебя лейбл не описывает твоё поле. И с точки зрения скринредера не понять, что в этом поле нужно написать. И ты кликаешь на этот лейбел, у тебя, не знаю, айдишник не пробрасывается. Есть спеки, есть джаваскриптовые трюки, которые позволяют прокидывать эту вот связь и каким-то образом её держать. То есть есть много разных способов, как это всё сделать. Иногда хочется э инкапсуляцию, но не такую жёсткую. Иногда хочется инкапсуляцию пожёстче, наоборот, чем есть. Вот вот такие вот такие вот проблемы есть в компонентах современных, понятно, да. Но в целом они это всё ещё лучший способ написать компонент, который сработает во всех фреймворках. То есть ты сейчас можешь написать компонент для Реакта, а ребята из View такие: "Ну вот нам либо какую-то адскую обёртку писать или или ещё что-то такое". А если ты напишешь свой веб-компонент и вот начиная с девятнадцатого реакта, он он на 100% совместим с вебкомпонентами, с предыдущих реактов есть были были проблемы с некоторыми частями с некоторыми частями лайфкла веб-компонентов, там с атрибутами, со всеми такими, а событиями, а то девятнадцатый реакт полностью совместим. То есть сейчас все современные фреймворки могут нативно совместимо работать с веб-компонентами. И ты пишешь один и тот же компонент, который работает везде одинаково. И ты сегодня написал компонент для одного проекта, завтра написал для другого, для третьего. Очень часто же внутри компаний э разные проекты написаны на разном, потому что туда пришла компания, которая, вернее, туда пришла команда, которая на лучше специализируется на одном, другом или третьем. Или бывает на одной странице у тебя, чёрт побери, Angгуляр React View. Делать так не надо, но всякий случай бывают в жизни. Микрофронтенды это называется, да? или как-то. А вот и если ты пишешь свои компоненты на веб-компонентах, используя вот эти вот лайфцийклы, это это работает в браудере нативно, и это всё работает во фреймворках нативно, и вам не нужно выбирать на чём писать. Вы можете быть максимально гибкими. Так что веб-компоненты летят, но летят медленнее и ниже, наверное, чем разработчикам хотелось бы, потому что веб-платформа - это такая вещь, которая я когда задумываюсь об этом, мне страшно становится. Вот я давай сейчас мне сейчас снова снова станет страшно вместе с тобой. Ну всё, что попадает в браузер, должно в браузере остаться навсегда. То есть то, что ты сегодня запилил какую-то фичу своего маленького фреймворка, ты в следующем мажорном релизе скажешь: "А ну нафиг, мне нравится, я всё переделаю". А в браузер так не работает. Ты запилил лопишку, и она в браузере навсегда. Вообще навсегда. Поэтому сколько раз тебе нужно подумать, а есть редкие случаи, когда браузеры выпиливают какие-то апишки, деприкетят свойства и так далее. Но они это делают настолько внимательно, если кто-то кто-то ими пользуется, браузеры такие: "Не могу, реально пользуются". А и всё. И сколько нужно провести времени, чтобы подумать над тем, как сформулировать IP, чтобы он был, а, приватный перформанс и чтобы на века? Я не представляю очень много времени. Я бы я я бы умер, если бы если бы моя задача была написать спеку, которая попадёт в браузер навсегда от страха просто. Есть, есть смелые люди. Я просто даже с точки зрения разработки представляю, что тебе там такой контекст нужно в голове держать, чтобы пару строчек кода поменять там. Как, знаешь, всегда пример приводили, это разработка софта для каких-нибудь самолётов и так далее, когда у тебя там во что это превращается. Я тогда знаешь что хотел спросить? А на практике, потому что для меня всегда веб-компонент какая-то теоретическая конструкция именно вот с точки зрения не Shadow Dom. Shadow дом-то используют, да, вот кастомных компонентов. А фактически то, что ты говоришь- это типа ребята они работают, можно юзать, все дела, но особенно разработчикам лип, наверное, я подозреваю, в первую очередь это их касается, да, это тоже хорошо. Ты хочешь сказать, что ты знаешь людей, которые прямо по по на полном серьёзе вот такие пилят и говорят: "У нас всё хорошо". Я просто я никого не знаю, да? Вот ты сейчас смотришь на одного человека, вот у нас в проекте веб-компоненты Да, да, да, да. То есть, ну мы m А для них нужно обёртки какие-то или ты прямо вот это на тип? Ну, можно по-разному писать веб-компоненты. Есть фреймворки веб-компонентные, например, вот, э, раньше он назывался Shйс, сейчас он называется, а, font font awesome иконки, а, font awesome. Так вот, они, ээ, себе купили или или или пригласили проект Shceй внутрь и на основе этого сделали библиотеку компонентов webсом. А вот они прекрасно работают. Так вот, э, можно их использовать. А мы используем le. Это такая лёгкая библиотека, которая добавляет какое-то количество синтаксического сахара и разных опишек поверх веб-компонентов, которые позволяют удобнее работать. То есть там есть, э, чуть более удобная шаблонизация, есть чуть более удобные апи поверх веб-компонентов, которые позволяют с ним чутьчу чуть лучше лучше работать. Это очень тонкая тонкая прослойка. А так веб-компоненты, в принципе, не так страшно пользоваться ими нативными, э, прямо вот ванильными веб-компонентами, на мой взгляд. Ну, если вы в них разбираетесь, но если вы привыкли, наверное, к современным саблонизаторам, ко всему остальному, я рекомендую всем, если хочется попробовать, брать именно лид. А ли хорош это то, что родилось из полимера гугловского фреймворка, когда от него ни ручек, ни ножек не осталось. Осталась только душа. полимера. Это вот вот самое базовое синтаксическое. И более того, а многие компании прямо сейчас предлагают такие вещи, которые прямо нативную бразнуюзацию строить, чтобы там и дифы были, и можно было айдишники прокидывать. В общем, много всяких классных оптимизаций, которые хочется встроить прямо в браузер. И ты смотришь на эти предложения и думаешь: "Но я же тогда просто лид выкину, ребята же обанкротятся". То есть они, конечно, деньги не зарабатывают, но они просто по померу пойдут, работу потеряют. А если вы внедрите это в браузер и это была идея за литом, а написать такой такую библиотеку, которая потом когда-нибудь не понадобится. А вот так что, да, вот мы прямо пилим на работе. Вот, допустим, у нас есть пример компонента, может быть хороший может быть хороший пример, чтобы описать, что такое веб-компонент. А на MDN в новом фронтде MDA, который мы сейчас пишем, аэ на самом деле написали, скоро зарелизим. А есть такое понятие, как dropdown. То есть это любая кнопка, которую нажимаешь, и рядом с ней показывается какой-то элемент. И мы её абстрагировали в отдельный веб-компонент. Он, по-моему, называется MDM Dropdown. Прямо вот кастомный элемент. Что что ты делаешь? Ты берёшь, пишешь mdm dropdown, открывающий тег, mdm dropdown закрывающий тег. Внутри него у тебя есть два любых элемента, и ты этим элементом задаёшь атрибут слот. Это прямо встроенный html атрибут. И ты говоришь: "Ты элемент будешь кнопкой, а ты элемент будешь выподушкой". Всё. В этот момент, когда загрузился этот веб-компонент и отрендерился, а мы просто мы ничего не рендерим. Это это компонент с нулевым рендерингом. Это компонент с с исключительно с джаваскриптовой логикой. Он просто оркестрирует у тебя на странице все события. То есть кликаешь по кнопке, дропдаун открылся. Кликаешь мимо дропдауна или по кнопке, он закрылся. То есть, по сути, у тебя такая адресация. И всё, что тебе нужно сделать - это просто импортировать твой этот дропdу на страницу, ну, в твой джаваскриптовый банл куда-нибудь и завернуть твою кнопку и вы подушку вот в этот вот элемент и прописать два атрибута слот. Всё. А есть такие, а есть у нас веб-компоненты, допустим, поиск на сайте. Это прямо вот мы пишем MDN search. MDN Search, открывающий, закрывающий тег. И там парочка атрибутов, наверное, у него стоит каких-то. М, ты на него нажимаешь и открывается поиск. Это прямо полноценный компонент с рендерингом, со всем там внутри инкапсулированный стили, это всё нормально через сборщики проходит. В общем, такое. То есть вот можно очень по-разному компоненты писать, но а главный кайф в том, что ты открываешь деф-тулы и видишь свой веб-компонент. Ты прямо видишь имя своего компонента, он прямо там. Угу. MDN Dropдаун такой. А, поэтому открываю свой редактор, я захожу в папку с надписью MDN Dropdown, открываю INDGS и понимаю, где мой код. Там нет никакого вклас ээ абракозябра. Э, и нужно ставить дефтулы, чтобы про пройтись через 800 уровней вложенности, чтобы найти свой компонент на поняти, с чем ты работаешь, правда? То есть всё нативно, классно. И ты когда в свой шаблон смотришь, ты видишь ровно то, как называется твой компонент, и ровно то, как она трендерится в браузере. Мне это дико нравится. Не знаю, почему все остальные смотрят на это со скептисом, но не все. Ну, кстати, да, ребят, кто досюда досмотрел, а, и вы большие молодцы, тоже напишите поши, напишите по этому поводу, потому что, говорю, я всегда немножко на как на дикого зверя смотрю, а тут вот, оказывается, люди в продакшене используют. И, конечно, преимущество фотошопы, Фигмы, IBM, гуглы, понятное дело, абсолютно нативно с с веб-компонентами работают Angular и многие другие фреймворки. много лет уже. Да. Да. Интересно получается. Ну, наступит ли такое время, когда у тебя просто всё будет к этому сведено и реакт этот тоже станет такой типа прослойкой над тем, чтобы просто писать компоненты? Наверное, вряд ли. Он тогда перестанет быть реактом, мне кажется, но в целом то, что он поддержал и всё больше компонентов, наверное, могут теперь будут, наверное, писаться из популярных, а, используя веб-компонент, мне кажется, вероятность этого очень высокая. Интересно, да. Вадим, тебе большое спасибо, что пришёл и бодро так высидел до конца. Не все, кстати, на это способны. Чтоже всё? Я могу ещё с тобой 2 с по часа 2 с по часа поговорили нас. Да, есть ещё темы, которые давай так договоримся с тобой не последний раз встречаться. Через полгодика соберёмся, ещё что-нибудь обсудим, потому что тем у вас много. Вон вы на вы, то есть представь, мы с тобой в один подкаст уместили то, что вы там сколько вы там лет от это веб-стандар ведёте, да, и об этом рассказываете, а мы такие в один подкаст всё упрессовали. Ну да. А, ребят, если вам понравилось, не забудьте поставить лайк, подписаться на каналы и вообще всё, что там у Вадима есть. Вадим, мы обязательно добавим, чтобы люди тоже видели. Приходите к нам, смотрите, наслаждайтесь, а, и пишите хороший фронт, как сегодня вам Вадим завещал. Всем спасибо. Пока.
