Библиотека фронтендера | Frontend, JS, JavaScript, React.js, Angular.js, Vue.js
21.7K subscribers
2.85K photos
198 videos
45 files
5.15K links
Все самое полезное для фронтенда в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/77178ed4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5b6884689c2151c820bb4
Download Telegram
📊 А правда, что математика в Data Science не нужна?

Нет. Без неё вы не пройдёте собес и не поймёте, почему модель ведёт себя странно. Линал, матан и вероятности — это база, без которой работа в ML превращается в угадайку.

🔥 Эту базу можно собрать за 2 месяца на экспресс-курсе «Математика для Data Science».

👩‍🏫 Кто ведёт курс:

Мария Тихонова
PhD, руководитель исследовательского направления в SberAI, доцент ВШЭ.

→ Диана Миронидис
Преподаватель ВШЭ, автор научпоп-материалов по математике для блога МТС.

→ Ксения Кондаурова
Преподаватель преподаватель T-Банка, автор курсов ЦУ и Edutoria.

→ Маргарита Бурова
Академический руководитель программ по аналитике и ML, Wildberries & Russ.

🎁 Что сейчас доступно:

→ бесплатный тест, чтобы узнать свой уровень математики;
→ скидка 40% до 30 ноября;
→ если оплатить до конца ноября, курс «Базовая математика» в подарок.

👉 Пишите менеджеру, если хотите попасть в поток
🥰3
💡 Собеседования всё чаще затрагивают тему оформления истории коммитов

От того, как вы пишете сообщения в Git, зависит работа CI, ревью и прозрачность релизов.

➡️ В карточках короткий разбор семантических коммитов:

— зачем коммитам задают строгую структуру;

— какой формат используют современные команды;

— примеры, которые показывают уровень разработчика.

🐸 Библиотека фронтендера

#career_merge #middle #senior
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🥰2
git_cheat_sheet.pdf
993.6 KB
⭐️ Шпаргалка по основным командам Git

Содержание:

— Настройка и базовый workflow
— Ветки, stashing, tagging
— Отмена изменений
— Git Flow и продвинутые команды

🐸 Библиотека фронтендера

#readme #git
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👏2
🔥 Next.js 16: Server Components вместо useEffect

Проблема (1 картинка):

'use client' + useEffect + fetch — данные загружаются на клиенте. Медленно, нужны loading states вручную, нет кэша.

Решение (2 картинка):

Server Components — просто async/await в компоненте. Данные на сервере, кэширование через next: { revalidate }.

Что это даёт:

🟢 Быстрее — данные приходят с HTML
🟢 Меньше JS — 0 байт на клиенте для фетчинга
🟢 Умный кэш — revalidate: 60 = обновление раз в минуту
🟢 Проще код — никаких useState/useEffect

Бонус-паттерны:

Параллельный фетчинг:


const [posts, users] = await Promise.all([
fetch('/api/posts'),
fetch('/api/users')
])


Server Actions:


export async function createPost(data) {
'use server'
await db.posts.create(data)
revalidatePath('/posts') // Инвалидация кэша
}


Streaming:


<Suspense fallback={<Skeleton />}>
<Posts />
</Suspense>


⚠️ Fetch больше не кэшируется по умолчанию. Явно указывайте next: { revalidate } или cache: 'force-cache'.

🐸 Библиотека фронтендера

#hotfix #react
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰7🔥4🥱32
💡 Как работает CSS Anchor Positioning

Забудьте про Popper.js — браузер теперь умеет привязывать элементы сам. Тултипы, дропдауны, попаверы без единой строки JavaScript.

➡️ В карточках:

— как anchor() вычисляет координаты относительно якоря
— механизм автоматического fallback при overflow
— почему это в 10× быстрее JS-библиотек
— живые примеры с кодом

🔗 Альтернатива для остальных браузеров

🔹 Курс «Алгоритмы и структуры данных»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека фронтендера

#under_hood
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥63👍2🥰1
🤔 Нужен ли CSS псевдо-класс, которого не существует

У нас есть :open для элементов вроде <details> в открытом состоянии. Логично, что должен быть и :closed для закрытого, правда?
Но вот незадача: можно же просто написать :not(:open). Зачем плодить сущности?

С другой стороны — что проще прочитать: :closed или :not(:open)? Думаете в отрицаниях — это нормально?
CSS Working Group три года спорила об этом вопросе, и финал вас удивит.

😮 Спойлер: консенсус развалился, и :closed отправили в небытие... пока что.

История о том, как простое решение может стать философской дилеммой. Читайте, если хотите узнать, почему иногда меньше — это действительно больше 🔜

🔗 Ссылка на статью

🐸 Библиотека фронтендера

#read_watch
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2🥰2
Media is too big
VIEW IN TELEGRAM
🔆 Pikaday: date picker'ы не нужны

Крутой гайд о том, что JavaScript календари обычно избыточны.

Лучшие альтернативы:

ℹ️ Нативный <input type="date"> — браузер всё сделает сам

ℹ️ Раздельные поля (день/месяц/год) — удобнее для памятных дат

ℹ️ Select'ы — для ограниченного набора вариантов

ℹ️ Masked input (DD/MM/YYYY) — быстрее, чем календарь

Сложные UI = больше ошибок и брошенных форм. Простота побеждает.

🔗 Ссылка

🔹 Курс «Алгоритмы и структуры данных»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib

🐸 Библиотека фронтендера

#readme #js
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5😁1
👻 Мемоизация в React

Мемоизация полезна только тогда, когда реально уменьшает количество рендеров. На практике же её часто применяют «по привычке», усложняя код и не решая проблему.

➡️ В серии карточек разбираем главное:

— когда useMemo и useCallback действительно нужны
— почему мемоизация «везде подряд» даёт обратный эффект
— как увидеть лишние рендеры и измерить их в DevTools
— как профилировать приложение, чтобы оптимизировать по фактам

📎 Дополнительно рекомендуем посмотреть:

Доклад Марка Эриксона «React Rendering Behavior» — чётко объясняет, почему компоненты рендерятся и как реально оптимизировать без лишних мемоизаций.

🐸 Библиотека фронтендера

#blueprint
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5🥰2👍1