en
Feedback
Фронтендер от бога

Фронтендер от бога

Open in Telegram

Божественные дайджесты по фронтенду и немного юмора. По всем вопросам: @godinmedia

Show more
3 504
Subscribers
No data24 hours
-87 days
-3930 days
Attracting Subscribers
June '26
June '26
+1
in 0 channels
May '26
+6
in 0 channels
Get PRO
April '26
+2
in 0 channels
Get PRO
March '26
+3
in 0 channels
Get PRO
February '26
+1
in 0 channels
Get PRO
January '26
+4
in 0 channels
Get PRO
December '25
+21
in 0 channels
Get PRO
November '25
+7
in 0 channels
Get PRO
October '250
in 0 channels
Get PRO
September '25
+2
in 0 channels
Get PRO
August '25
+3
in 0 channels
Get PRO
July '25
+2
in 0 channels
Get PRO
June '25
+2
in 0 channels
Get PRO
May '25
+7
in 0 channels
Get PRO
April '25
+6
in 0 channels
Get PRO
March '25
+192
in 0 channels
Get PRO
February '25
+190
in 0 channels
Get PRO
January '25
+36
in 0 channels
Get PRO
December '24
+101
in 0 channels
Get PRO
November '24
+593
in 0 channels
Get PRO
October '24
+610
in 0 channels
Get PRO
September '24
+475
in 0 channels
Get PRO
August '24
+589
in 0 channels
Get PRO
July '24
+642
in 0 channels
Get PRO
June '24
+55
in 0 channels
Get PRO
May '24
+16
in 0 channels
Get PRO
April '24
+14
in 0 channels
Get PRO
March '24
+30
in 0 channels
Get PRO
February '24
+78
in 1 channels
Get PRO
January '24
+43
in 0 channels
Get PRO
December '23
+39
in 0 channels
Get PRO
November '23
+9
in 0 channels
Get PRO
October '23
+17
in 0 channels
Get PRO
September '23
+73
in 0 channels
Get PRO
August '23
+164
in 0 channels
Get PRO
July '23
+487
in 0 channels
Get PRO
June '23
+412
in 0 channels
Get PRO
May '23
+12
in 0 channels
Get PRO
April '23
+7
in 0 channels
Get PRO
March '23
+5
in 0 channels
Get PRO
February '23
+12
in 0 channels
Get PRO
January '23
+15
in 0 channels
Get PRO
December '22
+82
in 0 channels
Get PRO
November '22
+10
in 0 channels
Get PRO
October '22
+8
in 0 channels
Get PRO
September '22
+10
in 0 channels
Get PRO
August '22
+13
in 0 channels
Get PRO
July '22
+111
in 0 channels
Get PRO
June '22
+13
in 0 channels
Get PRO
May '22
+106
in 0 channels
Get PRO
April '22
+127
in 0 channels
Get PRO
March '22
+9
in 0 channels
Get PRO
February '22
+10
in 0 channels
Get PRO
January '22
+15
in 0 channels
Get PRO
December '21
+72
in 0 channels
Get PRO
November '21
+347
in 0 channels
Get PRO
October '21
+836
in 0 channels
Get PRO
September '21
+350
in 0 channels
Get PRO
August '21
+83
in 0 channels
Get PRO
July '21
+140
in 0 channels
Get PRO
June '21
+339
in 0 channels
Get PRO
May '21
+1 365
in 0 channels
Get PRO
April '21
+439
in 0 channels
Get PRO
March '21
+4 710
in 0 channels
Date
Subscriber Growth
Mentions
Channels
12 June0
11 June+1
10 June0
09 June0
08 June0
07 June0
06 June0
05 June0
04 June0
03 June0
02 June0
01 June0
Channel Posts
Javascript: прощай, Date, здравствуй, Temporal #почитать Время выставляет нас всех дураками, и JavaScript в этом не исключени
Javascript: прощай, Date, здравствуй, Temporal #почитать Время выставляет нас всех дураками, и JavaScript в этом не исключение. Честно говоря, меня это особо не задевало: по большей мере меня радуют маленькие странности JavaScript. Мне нравится, когда можно увидеть обратную сторону; какой бы формальной и железобетонной ни казалась спецификация ES-262, мы всё равно замечаем (если знать, куда смотреть) в ней все хорошие и плохие решения, принятые сотнями людей, разрабатывавших язык. У JavaScript есть характер. Да, он не всегда делает всё в точности так, как можно ожидать, но на мой взгляд, JavaScript обладает настоящим очарованием, которое можно оценить, если глубоко его изучить. Впрочем, существует одна часть языка, которая мне кажется совершенно нелогичной: это конструктор Date. Читать статью

2
Функции-конструкторы и оператор new в JavaScript #почитать Покажу, как создавать множество однотипных объектов, не копируя ко
Функции-конструкторы и оператор new в JavaScript #почитать Покажу, как создавать множество однотипных объектов, не копируя код раз за разом. Мы разберемся с функциями-конструкторами и оператором new — тем самым фундаментом, на котором строятся современные классы в JavaScript. ⏱Читать статью
399
3
Полный гайд по объекту Date в JavaScript #почитать Объект Date позволяет создавать, сравнивать и форматировать дату и время.
Полный гайд по объекту Date в JavaScript #почитать Объект Date позволяет создавать, сравнивать и форматировать дату и время. Используется для отображения текущего времени, вычисления интервалов и работы с таймзонами в веб-приложениях. ⏱Читать статью
566
4
Мои любимые паттерны для full-stack и frontend-проектов #почитать Проверенные в бою паттерны для проектов на React + TypeScri
Мои любимые паттерны для full-stack и frontend-проектов #почитать Проверенные в бою паттерны для проектов на React + TypeScript: фабрики ключей запросов, server actions, права доступа через CASL и многое другое. ⏱Читать статью
502
5
Синтаксический сахар или технический деготь: классы в JavaScript #почитать Сегодня мы сделаем следующий шаг к современному Ja
Синтаксический сахар или технический деготь: классы в JavaScript #почитать Сегодня мы сделаем следующий шаг к современному JavaScript. Я покажу вам классы — более чистый и понятный способ делать ровно то же самое. Хоть классы и называют «синтаксическим сахаром», но это не отменяет популярность и удобство их использования. ⏱Читать статью
667
6
Экипировка Бонда: полезные инструменты DevTools #почитать Для любого специалиста в веб-разработке DevTools — это незаменимый
Экипировка Бонда: полезные инструменты DevTools #почитать Для любого специалиста в веб-разработке DevTools — это незаменимый инструмент диагностики. Однако его истинная мощь часто остаётся «в тени»: многие используют лишь базовый функционал, упуская из виду целый арсенал возможностей для тонкой настройки и глубокого анализа. В этой статье я хочу сосредоточиться на практических приёмах, которые ежедневно использую сам. ⏱Читать статью
708
7
Что такое null-коалесцентный оператор ?? в JavaScript #почитать Операторы ?? и ??= стали доступны в Baseline в статусе «Widel
Что такое null-коалесцентный оператор ?? в JavaScript #почитать Операторы ?? и ??= стали доступны в Baseline в статусе «Widely Available» с 16 марта 2023 года. Они упрощают работу с переменными, которые могут быть null или undefined, позволяя задавать значения по умолчанию или обновлять переменные только в этих случаях. Это делает код чище и понятнее, особенно при работе с потенциально отсутствующими данными. ⏱Читать статью
610
8
Приглашаем на Frontend Mix — бесплатный митап ЮMoney для всех, кто интересуется фронтенд-разработкой 🤩 🕓 28 мая, четверг, 1
Приглашаем на Frontend Mix — бесплатный митап ЮMoney для всех, кто интересуется фронтенд-разработкой 🤩 🕓 28 мая, четверг, 19:00 (мск) — приходите на митап в Санкт-Петербурге или подключайтесь онлайн. Спикеры из ЮMoney поделятся, как работают над задачами и улучшают процессы в команде. Вот о чём будут рассказывать: 🟣 Как спят вкладки в браузере. На живом примере разберём, как браузер усыпляет вкладки, почему из-за этого ломается real-time и какие приёмы дебага и resync помогают находить и чинить их в продакшене. 🟣 Как построить Spec-Driven платформу для генерации писем. Используя OpenAPI как единый источник правды, покажем, как описывать контракты электронных писем через спецификацию и автоматически генерировать консистентный HTML. 🟣 Подключение модуля шумоподавления в рабочее место оператора. Рассмотрим инструменты React, WebSockets, WebRTC, а также архитектуру и логику работы модуля шумоподавления. 🟣 Круглый стол — AI во фронтенде: вызовы и реальность. Обсудим влияние нейросетей на фронтенд с трёх позиций: рынка, разработки и образования. Чтобы попасть на митап, нужна регистрация. Все подробности — на сайте Frontend Mix 👈
353
9
Как мы искали безупречные данные в мире JavaScript #почитать Если вы когда-нибудь писали фронтенд на TypeScript и получали в
Как мы искали безупречные данные в мире JavaScript #почитать Если вы когда-нибудь писали фронтенд на TypeScript и получали в проде Cannot read property 'x' of undefined, — добро пожаловать в клуб! TypeScript спасает нас от сотен ошибок… но только пока код не запущен. Как только он скомпилировался, типы исчезают, и в рантайме вы снова остаетесь один на один с невалидными данными. И вот тут начинается: меняется API, формы шлют что угодно, аналитика ломает отчёты, а тесты молчат. В Островке мы попробовали библиотеку Valibot — легковесный runtime-валидатор, который умеет проверять данные на границах контекстов и при этом остаётся дружелюбным к TypeScript. ⏱Читать статью
645
10
🌐 Мы неправильно используем useEffect #посмотреть В данном ролике поговорим с вами о useEffectи посмотрим доклад, который ра
🌐 Мы неправильно используем useEffect #посмотреть В данном ролике поговорим с вами о useEffectи посмотрим доклад, который раскроет более подробно тему состояний. ⏱Смотреть на YouTube ⏱️40 минут
613
11
Cryanide как альтернативная ветвь развития web-технологий #почитать Кратко о том, почему я не использую фреймворки, зачем пиш
Cryanide как альтернативная ветвь развития web-технологий #почитать Кратко о том, почему я не использую фреймворки, зачем пишу всё с нуля и к чему это привело. Я написал полноценный SDK для web-приложений как концепт альтернативной ветви развития, если бы web-индустрия пошла по пути игровых движков. ⏱Читать статью
0
12
Хватит использовать JavaScript для решения задач CSS #почитать Недостаток знаний часто подталкивает людей к чрезмерно сложным
Хватит использовать JavaScript для решения задач CSS #почитать Недостаток знаний часто подталкивает людей к чрезмерно сложным решениям, и рано или поздно это отражается на производительности. Возьмем content-visibility: auto. Он дает тот же эффект, что и React-Window, но без единой строчки JS и без увеличения размера сборки. Аналогичная ситуация с современными единицами высоты окна (dvh, svh, lvh): наконец-то приведена в порядок "мобильная" высота, которую годами пытались компенсировать через window.innerHeight. Обе технологии в 2024 году получили более 90% поддержки современных браузеров и полностью готовы для продакшна. Однако мы по привычке продолжаем решать такие задачи с помощью JS, просто потому, что CSS незаметно ушел вперед, пока мы спорили о React Server Components. ⏱Читать статью
783
13
Всплытие переменных и функций в JavaScript #почитать В JavaScript есть уникальная особенность, переменную или функцию можно и
Всплытие переменных и функций в JavaScript #почитать В JavaScript есть уникальная особенность, переменную или функцию можно использовать по коду выше... ⏱Читать статью
711
14
Запилил кросс-фреймворк Markdown/MDX парсер, чтобы не мучаться с контентом #почитать Долго я возился с маркдауном в своих про
Запилил кросс-фреймворк Markdown/MDX парсер, чтобы не мучаться с контентом #почитать Долго я возился с маркдауном в своих проектах и, честно говоря, знатно подгорел. Первая проблема — это вечный выбор библиотеки. С одной стороны, есть «конструкторы» типа unified, remark и rehype. Штуки мощные, но настраивать весь этот AST-конвейер и систему плагинов — это какой-то оверхед и лишняя сложность, имхо. С другой стороны, есть @next/mdx, который вроде и ок, но слишком завязан на страницах и вообще не умеет работать на клиенте. Раньше я обычно выбирал что-то вроде markdown-to-jsx или react-markdown. DX у них приятнее, работают и на клиенте, и на сервере, весят мало. Но вот беда: они «из коробки» не переваривают HTML или MDX, и ты снова вязнешь в настройке плагинов. А если добавить туда i18n (типа i18next или next-intl), начинается настоящий ад. Куча if/else в коде, чтобы отрендерить нужный язык, и бандл раздувается до небес. Плюс вечные косяки с front-matter. Ну и до недавнего времени всё это было только для React. ⏱Читать статью
720
15
DOM-дерево — как не запутаться в ветвях объектной модели документа #почитать Бывало такое: смотрите вы на красивую страницу и
DOM-дерево — как не запутаться в ветвях объектной модели документа #почитать Бывало такое: смотрите вы на красивую страницу интернет-магазина, открываете консоль разработчика (ту самую, по F12 или через правый клик), а там — лес из тегов, который вообще не похож на то, что вы видите глазами? ⏱Читать статью
655
16
Интерактивный HTML с Alpine.js на простых примерах #почитать Большие фронтенд-фреймворки часто требуют сложной настройки: сбо
Интерактивный HTML с Alpine.js на простых примерах #почитать Большие фронтенд-фреймворки часто требуют сложной настройки: сборщики, роутинг, состояния, хуки, конфигурации. Но для небольших задач вроде выпадающих меню, модалок или табов этого слишком много — иногда хочется просто взять HTML и быстро добавить в него немного интерактивности. ⏱Читать статью
814
17
Замыкание в JavaScript — зачем функциям личное пространство #почитать В разработке нам постоянно нужны «умные», самостоятельн
Замыкание в JavaScript — зачем функциям личное пространство #почитать В разработке нам постоянно нужны «умные», самостоятельные функции: счетчики, которые знают свое предыдущее значение, обработчики событий с индивидуальными настройками, механизмы для защиты данных. Чтобы не городить глобальные переменные и не писать громоздкие конструкции (что почти всегда ведет к багам), мы посмотрим на еще одну фишку JS. В предыдущих статьях мы разобрали: функции, их стрелочные записи, методы объектов и даже покорили this. Теперь пора переходить к теме, которая часто пугает на собеседованиях, но на деле оказывается невероятно элегантной — замыканиям. ⏱Читать статью
0
18
Форматирование относительного времени в JavaScript #почитать API Intl.RelativeTimeFormat доступно в Baseline в статусе «Widel
Форматирование относительного времени в JavaScript #почитать API Intl.RelativeTimeFormat доступно в Baseline в статусе «Widely Available» с 16 марта 2023 года. Это мощный инструмент для отображения относительного времени в локализованном виде, например, «через минуту», «вчера» или «2 недели назад». Он автоматически адаптируется к языку и культурным особенностям региона, делая интерфейс более понятным и дружелюбным для пользователей. В этой статье мы разберём, как работает Intl.RelativeTimeFormat, и приведём несколько примеров его использования. ⏱Читать статью
0
19
Как мы рендерим видео на клиенте с помощью ffmpeg #почитать Обычно FFmpeg используют на сервере, но есть обертки и сборки для
Как мы рендерим видео на клиенте с помощью ffmpeg #почитать Обычно FFmpeg используют на сервере, но есть обертки и сборки для браузера, которые позволяют выполнять операции и на фронтенде. Сегодня речь пойдет о ffmpeg.wasm и настройке параметров для односекундной сборки видео, которое после просмотра пользователь может скачать. В статье покажем, как выглядит решение. Оно подойдет и для бэкенда, но нам пришлось обрабатывать и склеивать ролики именно на клиенте. ⏱Читать статью
0
20
Реализуем собственный Promise в JavaScript #почитать В статье реализуется собственный Promise в JavaScript. Разбираем базовую
Реализуем собственный Promise в JavaScript #почитать В статье реализуется собственный Promise в JavaScript. Разбираем базовую модель промисов, проблемы наивной реализации и то, как они решаются в спецификациях Promises/A+ и ECMAScript. Материал предназначен для разработчиков, которые используют Promise и хотят понять, как он работает внутри. ⏱Читать статью
0