Date.parse() и неочевидные проблемы при работе с датами!
При работе с датами в JavaScript часто используют Date.parse() или new Date(), чтобы преобразовать строковое значение в дату или получить time
При работе с датами в JavaScript часто используют Date.parse() или new Date(), чтобы преобразовать строковое значение в дату или получить time
😨 Абсолютно проклято...
Инженер оживил... мёртвого лобстера.
Клешни двигаются, на одной даже есть дисковая пила, а вдоль хвоста установлены светящиеся электронные модули и управляющая электроника.
Инженер оживил... мёртвого лобстера.
Клешни двигаются, на одной даже есть дисковая пила, а вдоль хвоста установлены светящиеся электронные модули и управляющая электроника.
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Intersection Observer — отслеживаем появление элементов в области видимости!
Эффективная альтернатива scroll-событиям. Используется для ленивой загрузки, анимаций и инфинит-скролла.
Инициализируем наблюдатель:
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('visible');
}
});
});
Подключаем наблюдение:
document.querySelectorAll('.anim').forEach((el) => {
observer.observe(el);
});
Стили для появления:
.anim { opacity: 0; transform: translateY(30px); transition: 0.4s ease; }
.visible { opacity: 1; transform: none; }
🔥 Простая и масштабируемая практика, которую используют в продакшене: YouTube, Medium, e-commerce.
📣 Code Ready | #практика
Эффективная альтернатива scroll-событиям. Используется для ленивой загрузки, анимаций и инфинит-скролла.
Инициализируем наблюдатель:
const observer = new IntersectionObserver((entries) => {
entries.forEach(entry => {
if (entry.isIntersecting) {
entry.target.classList.add('visible');
}
});
});
Подключаем наблюдение:
document.querySelectorAll('.anim').forEach((el) => {
observer.observe(el);
});
Стили для появления:
.anim { opacity: 0; transform: translateY(30px); transition: 0.4s ease; }
.visible { opacity: 1; transform: none; }
🔥 Простая и масштабируемая практика, которую используют в продакшене: YouTube, Medium, e-commerce.
📣 Code Ready | #практика
AI уже умеет писать код. Следующий шаг — поручить ему код-ревью.
Большинство разработчиков используют AI как продвинутый автокомплит. Но агенты уже умеют выполнять полноценные инженерные задачи: проверять pull request, искать баги, следить за стилем и безопасностью кода.
На бесплатном воркшопе покажут, как собрать такого агента своими руками и встроить его в GitHub.
Что будет на практике:
🔹 Настроите AI-ревьюера на Opencode и AGENTS.md;
🔹 Разберётесь, как работают MCP, Tools и Skills;
🔹 Подключите агента к репозиторию;
🔹 Протестируете его на реальном pull request;
🔹 Получите готовый workflow, который можно использовать после воркшопа.
Подойдёт разработчикам, тимлидам, DevOps, QA и всем, кто хочет внедрять AI в реальные процессы разработки, а не просто общаться с чат-ботами.
21 июля, 19:00 (МСК). Участие бесплатное.
Записаться →
#реклама
О рекламодателе
Большинство разработчиков используют AI как продвинутый автокомплит. Но агенты уже умеют выполнять полноценные инженерные задачи: проверять pull request, искать баги, следить за стилем и безопасностью кода.
На бесплатном воркшопе покажут, как собрать такого агента своими руками и встроить его в GitHub.
Что будет на практике:
🔹 Настроите AI-ревьюера на Opencode и AGENTS.md;
🔹 Разберётесь, как работают MCP, Tools и Skills;
🔹 Подключите агента к репозиторию;
🔹 Протестируете его на реальном pull request;
🔹 Получите готовый workflow, который можно использовать после воркшопа.
Подойдёт разработчикам, тимлидам, DevOps, QA и всем, кто хочет внедрять AI в реальные процессы разработки, а не просто общаться с чат-ботами.
21 июля, 19:00 (МСК). Участие бесплатное.
Записаться →
#реклама
О рекламодателе
Как создавать независимые компоненты без конфликтов CSS-переменных?
В больших проектах часто используют глобальные переменные:
:root {
--color: blue;
}
Но потом один компонент случайно меняет значение, и стили начинают влиять друг на друга.
CSS позволяет делать локальные токены прямо внутри компонента.
.card {
--color: #222;
color: var(--color);
}
Теперь переменная действует только внутри .card и его потомков.
Можно создавать полностью изолированные темы компонентов.
.dark-card {
--bg: #111;
--text: white;
}
Внутренние элементы автоматически получают эти значения:
.title {
color: var(--text);
}
Без дополнительных классов и дублирования.
Особенно удобно для:
.theme,
.component,
.widget
где каждый блок должен иметь свои настройки.
🔥 Локальные CSS custom properties позволяют строить компонентные дизайн-системы без огромного количества модификаторов и переопределений.
📣 Code Ready | #совет
В больших проектах часто используют глобальные переменные:
:root {
--color: blue;
}
Но потом один компонент случайно меняет значение, и стили начинают влиять друг на друга.
CSS позволяет делать локальные токены прямо внутри компонента.
.card {
--color: #222;
color: var(--color);
}
Теперь переменная действует только внутри .card и его потомков.
Можно создавать полностью изолированные темы компонентов.
.dark-card {
--bg: #111;
--text: white;
}
Внутренние элементы автоматически получают эти значения:
.title {
color: var(--text);
}
Без дополнительных классов и дублирования.
Особенно удобно для:
.theme,
.component,
.widget
где каждый блок должен иметь свои настройки.
🔥 Локальные CSS custom properties позволяют строить компонентные дизайн-системы без огромного количества модификаторов и переопределений.
📣 Code Ready | #совет
This media is not supported in your browser
VIEW IN TELEGRAM
📰 RSS Daily Digest — 20 июля
За последние 24ч собрал 26 материалов:
───
🤖 AI / Local LLM
• Qwen 3.8 on the way — новые модели от Alibaba Reddit
• Kimi drama — народ скупает модели на фоне политической напряжённости Reddit
• HuggingFace security incident — интересный репортаж о взломе Reddit
• When Chinese models surpass US? — дискуссия о будущем Reddit
🔧 Tech
• LoRA Speedrun — публичный лидерборд для fine-tuning техник GitHub
• Orion Browser — новый браузер от Kagi orionbrowser.com
• Claude Code now uses Bun written in Rust — любопытный технический апдейт Simon Willison
• Moonshine — стриминг игр через ESP32 GitHub
• $120k bowling system → $1600 ESP32s HN
📰 Новости
• Netflix заплатила $587M за AI-киностудию Бена Аффлека TechCrunch
• Apple судится с OpenAI — чем это грозит hardware-планам? TechCrunch
• Нолан назвал AI "троянским конём" TechCrunch
• Nonprofit Current AI — строят "World Wide Web of AI" бесплатно TechCrunch
☕ Java
• Java Weekly #655 — свежий выпуск от Baeldung
───
Planet Python не ответил (timeout)
За последние 24ч собрал 26 материалов:
───
🤖 AI / Local LLM
• Qwen 3.8 on the way — новые модели от Alibaba Reddit
• Kimi drama — народ скупает модели на фоне политической напряжённости Reddit
• HuggingFace security incident — интересный репортаж о взломе Reddit
• When Chinese models surpass US? — дискуссия о будущем Reddit
🔧 Tech
• LoRA Speedrun — публичный лидерборд для fine-tuning техник GitHub
• Orion Browser — новый браузер от Kagi orionbrowser.com
• Claude Code now uses Bun written in Rust — любопытный технический апдейт Simon Willison
• Moonshine — стриминг игр через ESP32 GitHub
• $120k bowling system → $1600 ESP32s HN
📰 Новости
• Netflix заплатила $587M за AI-киностудию Бена Аффлека TechCrunch
• Apple судится с OpenAI — чем это грозит hardware-планам? TechCrunch
• Нолан назвал AI "троянским конём" TechCrunch
• Nonprofit Current AI — строят "World Wide Web of AI" бесплатно TechCrunch
☕ Java
• Java Weekly #655 — свежий выпуск от Baeldung
───
Planet Python не ответил (timeout)
Reddit
From the LocalLLaMA community on Reddit: Prepare your (v)ram - Qwen3.8 is coming!
Explore this post and more from the LocalLLaMA community