Новый бандлер Turbopack в Next.js 16 ускоряет сборку в 2-5 раз! Теперь кэширование можно настроить через use cache, что делает разработку и деплой ещё быстрее.
Представлен фреймворк TDDev, использующий TDD для автоматической генерации веб-приложений
#release_digest
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥰5❤2🔥1
  В видео разбираются сложные вопросы и задачи собеседования: ООП, SOLID, алгоритмы, рефакторинг, Docker и Kubernetes.
#read_watch
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥱8🔥4❤3👏1
  🕹 npm install: хитрость фронтендера
Каждый сталкивался с дилеммой: проверять всё или просто вставить команду и надеяться, что заработает?
➕  Проверяем пакет перед установкой
➕  Копируем команду из StackOverflow и надеемся, что заработает
Голосуем реакциями:
👍 — Осторожность
❤️ — Копипаст
🐸  Библиотека фронтендера
#code_battle
Каждый сталкивался с дилеммой: проверять всё или просто вставить команду и надеяться, что заработает?
Голосуем реакциями:
👍 — Осторожность
❤️ — Копипаст
#code_battle
Please open Telegram to view this post
    VIEW IN TELEGRAM
  ❤25👍15
  Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥰6😁4❤3👍1
  Обычно мы пишем:
@media (min-width: 600px) {
.card { flex-direction: row; }
}
Но что, если карточка живёт в разных местах — и в сайдбаре, и в сетке?
Глобальный
@media ломает вёрстку.  💡 Решение —
@container  
@container (min-width: 400px) {
.card { flex-direction: row; }
}
Теперь адаптация зависит от ширины контейнера, а не всего экрана. Каждый блок подстраивается под своё окружение — без медиазапросного ада.
#readme #css
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥11❤7🥰6
  Т-Технологии зовут на Стековку
1 ноября в Екатеринбурге, Новосибирске и Нижнем Новгороде стартует квест для ИТ-специалистов — с городским интерактивом, задачами на знание кода и смекалку.
Что нужно делать?
Решать онлайн- и офлайн-задания и получать за это баллы для своего города.
Какой приз?
В городе, который наберет больше всего баллов, устроят вечеринку. А самые активные участники смогут повлиять на выбор тематики и программы.
Как участвовать?
Просто зарегистрируйтесь до 31 октября
1 ноября в Екатеринбурге, Новосибирске и Нижнем Новгороде стартует квест для ИТ-специалистов — с городским интерактивом, задачами на знание кода и смекалку.
Что нужно делать?
Решать онлайн- и офлайн-задания и получать за это баллы для своего города.
Какой приз?
В городе, который наберет больше всего баллов, устроят вечеринку. А самые активные участники смогут повлиять на выбор тематики и программы.
Как участвовать?
Просто зарегистрируйтесь до 31 октября
❤5🥰3
  📦 Почему [] == ![] возвращает true
Кажется нелогичным: пустой массив и его отрицание — но результат true. Разберём по шагам (по спецификации ECMAScript 262):
1️⃣   Оператор ![]  
- [] приводится к true, потому что любой объект в JS — truthy.
- !true даёт false.
 
Итак, ![] → false.
2️⃣   Сравнение [] == false  
- По правилам нестрогого сравнения (==), если один операнд — объект, он приводится к примитиву (ToPrimitive).
- [] → "" (пустая строка).
Теперь выражение выглядит так: "" == false.
3️⃣   Сравнение "" == false  
- false → 0, "" → 0.
- 0 == 0 → true.
✅  Итог: [] == ![] возвращает true из-за цепочки приведений типов.
🐸  Библиотека фронтендера
#career_merge
Кажется нелогичным: пустой массив и его отрицание — но результат true. Разберём по шагам (по спецификации ECMAScript 262):
- [] приводится к true, потому что любой объект в JS — truthy.
- !true даёт false.
Итак, ![] → false.
- По правилам нестрогого сравнения (==), если один операнд — объект, он приводится к примитиву (ToPrimitive).
- [] → "" (пустая строка).
Теперь выражение выглядит так: "" == false.
- false → 0, "" → 0.
- 0 == 0 → true.
#career_merge
Please open Telegram to view this post
    VIEW IN TELEGRAM
  ❤15👍3🥱3😁2
  Правильный ответ:
  Anonymous Quiz
    13%
    false true
      
    36%
    true false
      
    28%
    false false
      
    8%
    true true
      
    14%
    Посмотреть ответы
      
    🤔6😁4🔥3
  🧠 Готовишься к собесам, а ноутбук еле тянет IDE?
Самое время прокачать скиллы и апгрейднуть железо!
Proglib Academy разыгрывает MacBook Pro 14 (M3 Pro, 36 GB, 1 TB SSD) 💻
Купи любой наш курс до 15 ноября → пройди 2 недели обучения → напиши куратору #розыгрыш. Всё, ты в игре!
📚 Среди курсов:
▫️ Алгоритмы и структуры данных — топ для подготовки к собесам в Яндекс и FAANG.
▫️ Архитектуры и шаблоны проектирования — чтобы думать как senior.
▫️ Python, математика для DS, основы IT и другие направления.
👉 Принять участие
Самое время прокачать скиллы и апгрейднуть железо!
Proglib Academy разыгрывает MacBook Pro 14 (M3 Pro, 36 GB, 1 TB SSD) 💻
Купи любой наш курс до 15 ноября → пройди 2 недели обучения → напиши куратору #розыгрыш. Всё, ты в игре!
📚 Среди курсов:
▫️ Алгоритмы и структуры данных — топ для подготовки к собесам в Яндекс и FAANG.
▫️ Архитектуры и шаблоны проектирования — чтобы думать как senior.
▫️ Python, математика для DS, основы IT и другие направления.
👉 Принять участие
🥰4🥱4❤2
  Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥰8😁5👏2😢1
  Когда метод объекта передаётся как колбэк, он теряет контекст (см. фото). После клика в консоли будет undefined.
this зависит от способа вызова функции, а не от места, где она объявлена.
При передаче метода как ссылки (btn.handleClick) контекст теряется — this больше не указывает на объект.
1. Явно привязать контекст
button.addEventListener('click', btn.handleClick.bind(btn));
2. Использовать стрелочную функцию
button.addEventListener('click', () => btn.handleClick());
#hotfix #js
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥰6❤3👍3
  Иногда переменная с нужным именем вроде бы существует — но скрипт выбрасывает ReferenceError.
#under_hood #js
Please open Telegram to view this post
    VIEW IN TELEGRAM
  Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥰6
  Эксперимент разработчика, который переписал фронт для Telegram-ботов на Rust и разобрался, где язык реально выигрывает у JS.
Medium-разбор, почему XSS, CSP и supply-chain атаки всё ещё ломают SPA, и как встроить безопасность в CI/CD.
Автор показывает реальные кейсы, обходные пути и поднимает важный вопрос: имеет ли фреймворк право на полный контроль над DOM?
#read_watch #react #js #ts
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🥰5🔥1
  This media is not supported in your browser
    VIEW IN TELEGRAM
  🏓 Table tenniCSS
Мини-анимация, созданная только с помощью HTML и SCSS, без единой строки JS.
Отличный пример того, насколько мощными могут быть CSS-анимации.
 
🔗  Попробуйте запустить демо на CodePen
🐸  Библиотека фронтендера
#readme #css
Мини-анимация, созданная только с помощью HTML и SCSS, без единой строки JS.
Отличный пример того, насколько мощными могут быть CSS-анимации.
#readme #css
Please open Telegram to view this post
    VIEW IN TELEGRAM
  🔥7🥰3
  🎁 Конкурс от Proglib Academy!
Кстати, если кто-то ещё не в курсе — у нас тут раздают MacBook Pro 14.
Да-да, не шутка, настоящий, железный, с M3 Pro
Но! Чтобы успеть пройти 2 недели обучения к 15 ноября, курс нужно взять до конца октября — и сейчас на всё скидка 40%.
Чтобы поучаствовать, нужно:
1️⃣ Покупаешь любой курс до конца октября;
2️⃣ Проходишь 2 недели обучения к 15 ноября;
3️⃣ Написать куратору в чат #розыгрыш.
До 15 ноября, потом всё — поезд (и макбук) уйдёт.
👉 Участвовать в розыгрыше
Кстати, если кто-то ещё не в курсе — у нас тут раздают MacBook Pro 14.
Да-да, не шутка, настоящий, железный, с M3 Pro
Но! Чтобы успеть пройти 2 недели обучения к 15 ноября, курс нужно взять до конца октября — и сейчас на всё скидка 40%.
Чтобы поучаствовать, нужно:
1️⃣ Покупаешь любой курс до конца октября;
2️⃣ Проходишь 2 недели обучения к 15 ноября;
3️⃣ Написать куратору в чат #розыгрыш.
До 15 ноября, потом всё — поезд (и макбук) уйдёт.
👉 Участвовать в розыгрыше
🥰4