Coding
248 subscribers
5.87K photos
1.47K videos
34 files
5.92K links
Статьи и ссылки с разных ресурсов, для начинающих программистов.
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
💾 Motion Blurred Number – счетчик цены с заданными точками на "круглых" числах. Ползунок можно перетаскивать, а можно и кликать на любую точку шкалы.

Сайтодел | #сниппет #css
🤖 Любопытный проект Career-Ops, который автоматизирует поиск работы практически от начала до конца.

Умеет:
Сам мониторит десятки сайтов с вакансиями и ищет подходящие предложения.
Адаптирует резюме под конкретную вакансию.
Помогает заполнять анкеты и сопутствующие документы.
Готовит к собеседованиям и интервью.
Поддерживает десятки площадок для поиска работы и позволяет добавлять новые.

По сути, это AI-ассистент для поиска работы, который берёт на себя большую часть рутинных действий и помогает не тратить часы на однотипные отклики.

💼 Особенно актуально для тех, кто находится в активном поиске или хочет увеличить количество качественных откликов без лишней рутины.

👍 Сохраняем

#soft #github
Как убрать лишние классы для пустых блоков?

Часто в компонентах есть контейнеры для описания, ошибки, подсказки или дополнительного контента.

Если данных нет — элемент остаётся пустым, но продолжает занимать место.

Обычно это решают через JS или условный рендеринг.
.error {
display: none;
}

А потом отдельно добавляют класс при появлении контента.

Но CSS умеет определять пустые элементы самостоятельно.
.error:empty {
display: none;
}

Теперь блок автоматически скрывается, если внутри ничего нет.

Можно делать и обратную логику.
.card:not(:empty) {
padding: 16px;
}

Отступы появятся только тогда, когда внутри действительно есть контент.

Особенно удобно для:
error,
hint,
description,
badge

Где содержимое может появляться динамически.

🔥 :empty позволяет убрать лишние классы и часть условной логики прямо средствами CSS.

📣 Code Ready | #совет
This media is not supported in your browser
VIEW IN TELEGRAM
💾 3D Cards – карточки в стиле журнала National Geographic. При наведении курсора карточка поворачивается в сторону от пользователя.

Сайтодел | #сниппет #css
This media is not supported in your browser
VIEW IN TELEGRAM
💾 Wooden Toggles – реалистичные объемные переключатели, стилизованные под дерево. При нажатии цвет переключается плавно.

Сайтодел | #сниппет #css
📰 RSS Daily Digest — 24 июня

───

🤖 AI / Local LLMs
Qwen-AgentWorld-35B-A3B — 3B-active MoE, тренирован для симуляции MCP, terminal, SWE, Android, web и OS environments
Chinese supercomputer — впервые с 2017 года стал самым быстрым в мире, обойдя США
MiniMax2.7 @47tg 1200pp — новая модель на 47 токенов
Krea 2 — вышел на Hugging Face
Best Local Agents — Jun 2026 — обзор лучших локальных агентов

📰 Tech / Business
Superhuman acquires GPTZero — AI detection startup
Menlo Ventures raises $3B fund — после ставки на Anthropic
Meta debuts new cheaper smart glasses
Anthropic's Claude Tag — учится на Slack-сообщениях компании
Flipkart expands quick-commerce — Walmart-backed в Индии

🐍 Python
Python 3.15.0 beta 3 — вышел
Python 3.14.6 and 3.13.14 — доступны
Mitigated API authentication bypass — исправлено для python.org
Python Bytes #485 — "Creating memories"

🌐 WebDev
Scroll-Driven Animations — новая фича CSS
Using Scroll-Driven Animations for Opposing Scroll Directions

───

60 items scanned, last 24h
RSS дайджест опубликован в канал @myselfcoding — 60 материалов за последние 24ч, основные темы: AI (Qwen-AgentWorld, китайские GPU, MiniMax), Python (3.15 beta 3, 3.14.6), Tech (Superhuman/GPTZero, Meta smart glasses).
🖥 Ice Cream Landing Page – дизайн лендинга для магазина мороженого. Здесь использованы сочные, "ягодные" оттенки красного и фиолетового.

Сайтодел | #макет #figma
📂 Напоминалка для работы с JavaScript DOM!

Например, querySelector() помогает быстро находить элементы на странице, addEventListener() обрабатывать события пользователя, а createElement() динамически создавать новый контент.

На картинке — основные DOM-методы и свойства: поиск элементов, работа с содержимым, атрибутами, классами, событиями и управление структурой документа.

Сохрани, чтобы не потерять!

📣 Code Ready | #ресурс
AI-инструменты можно любить и ненавидеть, но работать без них в IT уже практически невозможно 🤩

Коллеги из AvitoTech 11 июля зовут в их офис на Лесной на AI Hardcore Day. Приглашают тех, кто каждый день сталкивается с AI в работе и даже пишет своих AI-агентов. Обещают доклады и нетворкинг-сессию на террасе после — и всё это без записи.

💫 Среди тем:
— Spec-Driven Development: теория, инструменты, практика.
— Разработка и тестирование MCP для внутренних агентных систем аналитики.
— Выпрямляем руки агентов: как сделать MCP удобными и действительно полезными.
— Атаки на GenAI-агентов: OWASP на практике.

Регистрация тут!
Разбираемся зачем нужен event.currentTarget!

При работе с событиями многие используют event.target и не задумываются, что это не всегда тот элемент, на который был повешен обработчик.

Например:

Сохранить

Повесим обработчик на кнопку:
button.addEventListener('click', (event) => {
console.log(event.target);
});

Если кликнуть по тексту внутри span, то в консоль попадёт именно span, а не button.

Потому что event.target всегда указывает на элемент, который стал источником события.

Теперь выведем имя тега:
button.addEventListener('click', (event) => {
console.log(event.target.tagName);
});

Клик по кнопке даст такой результат: BUTTON. А клик по тексту внутри span даст: SPAN.

Из-за этого иногда появляются неожиданные баги:
button.addEventListener('click', (event) => {
event.target.disabled = true;
});

Если событие пришло от вложенного элемента, код будет работать не с кнопкой, а с этим элементом. В результате можно случайно изменить не тот элемент или получить неожиданный результат.

В таких ситуациях обычно нужен event.currentTarget:
button.addEventListener('click', (event) => {
console.log(event.currentTarget);
});

currentTarget всегда содержит элемент, на котором сейчас выполняется обработчик.

То есть:
button.addEventListener('click', (event) => {
console.log(event.target);
console.log(event.currentTarget);
});

При клике по span первым будет исходный элемент события:
event.target — span

А вторым — элемент, на котором выполняется обработчик:
event.currentTarget — button

Особенно хорошо разница видна при делегировании событий:
list.addEventListener('click', (event) => {
console.log(event.target);
console.log(event.currentTarget);
});

Здесь currentTarget всегда будет ссылаться на list, независимо от того, по какому дочернему элементу кликнули.

Ещё один момент: currentTarget существует только во время обработки события.
const saved = event.currentTarget;

После завершения обработки значение event.currentTarget становится null. Поэтому если ссылка нужна позже — её стоит сохранить заранее.

🔥 Простое правило: target отвечает на вопрос «какой элемент стал источником события», а currentTarget — «на каком элементе сейчас выполняется обработчик». Понимание этой разницы помогает избежать множества мелких ошибок при работе с DOM-событиями.

📣 Code Ready | #практика
🖥 Parallax Effect – дизайн для слайдера. Здесь представлены приглушенные оттенки, зернистый фон и мягкие градиенты. Контраст создан за счет крупных заголовков и небольших кусков текста.

Сайтодел | #макет #figma
🐙 Brainwave – репозиторий проекта по созданию сайта. Здесь есть сниппеты кода, ссылка на видеоурок и описание фич готового продукта.

Сайтодел | #репозиторий #github
😎 Айтишникам на заметку. «Работа на заводе оказалась полезнее для психики, чем офис»

По данным СМИ, всё больше молодых специалистов выбирают промышленность из-за более понятного ритма работы.

🖱 Чёткий график без бесконечных переработок.
🖱 Не нужно постоянно быть онлайн и отвечать в рабочих чатах.
🖱 Обязательные перерывы и понятный режим дня.
🖱 Прозрачное распределение обязанностей, которое помогает снизить уровень стресса.

На фоне постоянных дедлайнов, созвонов и уведомлений такая работа для многих становится настоящим островком стабильности.

☕️ Делаем выводы. С добрым утром!
📰 <b>RSS Дайджест</b> · 25 июня

<b>AI / LLMs</b>
• Anthropic обвиняет Alibaba в незаконном копировании технологий ИИ
• Gemma 4-26B/31B с MTP: 35-53% прирост скорости
• Gefen — замена AdamW с 8x экономией памяти при обучении
• SDXL локально в браузере через WebGPU
• Unlimited-OCR: 3.3B модель для парсинга документов (ModelScope)

<b>Python</b>
• Django 6.1 beta 1 — что нового
• PEP 832: зачем нужен виртуальный окружения discovery

<b>Java / Spring</b>
• Agent Skills в Spring AI
• Dynamic Authorization Scopes в Spring Authorization Server

<b>Новости</b>
• Европа отказывается от чип-войны США
• AI-компании: инженеры оказались самыми устойчивыми к автоматизации
• Сайт-стыдоба для компаний без passkeys
• Cerebras: акции упали после earnings

<a href="https://www.reddit.com/r/LocalLLaMA/">LocalLLaMA</a> · <a href="https://techcrunch.com/">TechCrunch</a> · <a href="https://planetpython.org/">Planet Python</a> · <a href="https://www.baeldung.com/">Baeldung</a>
Готово! Дайджест опубликован в канал @myselfcoding. 24 материала за последние 24ч, включая ключевые AI-новости (Anthropic vs Alibaba, Gemma 4 с MTP, Gefen optimizer), Python (Django 6.1 beta) и Java/Spring.
💀 Финансовый Skynet, но пока на GitHub

AI-Trader — open-source платформа для трейдинга, где торговые идеи, сигналы и стратегии создают AI-агенты.

Проект позволяет подключать разных агентов, публиковать торговые сигналы, обсуждать стратегии, копировать сделки топовых участников и синхронизировать их с брокерами.

Внутри:
➡️ интеграция AI-агентов;
➡️ торговые сигналы и стратегии;
➡️ copy trading в один клик;
➡️ поддержка разных рынков: акции, крипта, форекс, опционы и фьючерсы;
➡️ paper trading на $100K для тестов без риска;
➡️ открытый исходный код.

📈 По сути, это попытка собрать торговую платформу нового типа — не только для людей, но и для ИИ-агентов, которые могут обмениваться идеями, спорить, публиковать сигналы и участвовать в торговой экосистеме.

♎️ GitHub/Инструкция

⚠️ Только для образовательных целей. Авторы софта не несут никакой ответственности за ваши действия.

#python #soft #github
This media is not supported in your browser
VIEW IN TELEGRAM
💅 Frontend Stuff — коллекция полезных ресурсов для frontend-разработчиков!

На сайте собрана большая база материалов для JavaScript-разработчиков: статьи, библиотеки, фреймворки, инструменты, полезные сервисы и обучающие ресурсы. От базовых инструментов до React, Vue, Node.js и др. Отличный ресурс для веб-разработчиков, которые хотят ускорить работу или найти новые инструменты.

📌 Оставляю ссылочку: frontend-stuff.com

📣 Code Ready | #сайт
This media is not supported in your browser
VIEW IN TELEGRAM
ЕГЭ сдали. Куда дальше?🤔

Сейчас самый нервный момент — результаты скоро будут на руках, а решить, куда подавать документы — сложно.

Университет Иннополис приглашает абитуриентов на передовые программы бакалавриата:

— Математические основы искусственного интеллекта
— Инженерия данных
— Робототехника
— Инженерия информационных систем
— Анализ данных и искусственный интеллект

Уже во время учебы студенты проходят стажировки и строят карьеру в ведущих ИТ‑компаниях. А помогают им в этом преподаватели мирового уровня.

👀Спойлер: 100% выпускников находят работу, а средняя зарплата сразу после вуза — 250 000 рублей.

И главное, что волнует каждого абитуриента после ЕГЭ — цена.

Участвуйте в грантовом конкурсе и учитесь бесплатно с повышенной стипендией. Также доступны бюджетные и платные места.

📍Иннополис — уникальное пространство для жизни и работы ИТ-специалистов. Современные аудитории, лаборатории, тех.центры и инфраструктура.

🔖ОСТАВИТЬ ЗАЯВКУ НА ГРАНТ
🚫 Кажется, за рубежом узнали, что кроме MAX в России есть и другие мессенджеры

Сегодня из App Store пропали:

Одноклассники;
Основная соцсеть VK;
VK Видео;
VK Музыка;
VK Знакомства;
VK Мессенджер;
Почта Mail;
Дзен;
Юла;
Маруся;
SkillBox.

На фоне новостей о VK Песков порекомендовал россиянам перейти на Android.

🙄
🎨 Цветовая палитра макета "Sleep Time App"

HEX | RGB
#F1F56E | rgb(241,245,110)
#5BCDF3
| rgb(91,205,243)
#9993D1 | rgb(153,147,209)

⚠️ Цвет копируется одним кликом!

Сайтодел | #палитра