Будни разработчика
Блог Lead JS-разработчика Автор: @bekharsky По рекламе: https://telepost.pro/ch/id2415 или https://t.me/it_adv Чат: https://t.me/htmlshitchat №5001017849, https://www.gosuslugi.ru/snet/679b74f8dad2d930d2eaa978
إظهار المزيد📈 نظرة تحليلية على قناة تيليجرام Будни разработчика
تُعد قناة Будни разработчика (@htmlshit) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 14 535 مشتركاً، محتلاً المرتبة 8 610 في فئة التكنولوجيات والتطبيقات والمرتبة 44 990 في منطقة روسيا.
📊 مؤشرات الجمهور والحراك
منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 14 535 مشتركاً.
بحسب آخر البيانات بتاريخ 03 سبتمبر, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -26، وفي آخر 24 ساعة بمقدار -3، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 9.56%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 5.26% من ردود الفعل نسبةً إلى إجمالي المشتركين.
- وصول المنشورات: يحصل كل منشور على متوسط 1 390 مشاهدة. وخلال اليوم الأول يجمع عادةً 765 مشاهدة.
- التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 10.
- الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل css, api, scroll, --fade, bottom.
📝 الوصف وسياسة المحتوى
يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“Блог Lead JS-разработчика
Автор: @bekharsky
По рекламе: https://telepost.pro/ch/id2415 или https://t.me/it_adv
Чат: https://t.me/htmlshitchat
№5001017849, https://www.gosuslugi.ru/snet/679b74f8dad2d930d2eaa978”
بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 04 سبتمبر, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.
[object Promise] - это не баг, а мое чувство юмора: люблю вписывать в формы значения вроде undefined, null, NaN, Invalid Date, ReferenceError, TypeError, [object Object], Cannot read properties of undefined. Смешно же.
AmethystXMR полностью рабочий: можно создать или восстановить кошелёк, отправлять и получать XMR, подключаться к своей ноде, использовать QR-коды. Можно запускать и в Tor Browser, в том числе с onion-нодами.
Еще есть поддержка multisig. В Monero он устроен довольно интересно и не совсем так как в Bitcoin. Я рассказывал об этом на MoneroKon, а по мотивам доклада вышел подробный пост со схемами:
https://coin.space/how-does-monero-xmr-multisig-work
Недавно еще разбирался с неприятным багом: платеж отображался как потерянный, хотя в итоге оказалось, что деньги никуда не пропали. Всю историю расследования и того, как удалось найти проблему, описал здесь:
https://www.reddit.com/r/MoneroMeansMoney/comments/1v5dsx2/the_story_of_a_lost_and_found_payment/
Еще с MoneroKon есть запись моего второго доклада - про Lightning Network:
https://www.youtube.com/watch?v=obFwB_KA7pk
Исходники проекта:
https://github.com/amethystxmr/amethystxmr.github.io
Если появятся какие-то вопросы по проекту, WebAssembly, Monero или докладам - спрашивайте, отвечу.-webkit-text-stroke-color
Несмотря на префикс, Firefox тоже его поддерживает (спорное решение, но уж как есть).
Вот только как всегда есть нюанс. По-умолчанию, обводка будет нарисована перед слоем с текстом. Это очевидно, если понимать разницу между штрихом (stroke) и обводкой (outline), но всё же.
Поэтому paint-order: stroke нам в помощь! Таким образом, штрих будет отрисован первым, натуральным образом превратившись в обводку (при достаточной толщине, конечно же):
-webkit-text-stroke-color: white;
-webkit-text-stroke-width: var(--stroke);
paint-order: stroke;
#css #stroke #outline• ИИ: фишки нейрогенерации, библиотеки промптов и вайб-кодинг. • Автоматизация: как внедрять нейросети в бизнес-процессы и экономить время. • IT и карьера: как развивать свои проекты, расти в грейде и выходить на топовые офферы.Подписка в один клик: 👉 https://t.me/addlist/EKLFOB3vse5lNmUy
tree.
Boron сам отличает команды от вывода: строки с $, ❯, > или ➜ делает ярче, остальное немного приглушает. Тем сейчас восемь: от VS Code Dark+ и Dracula до Tokyo Night, Nord и Catppuccin.
На выходе PNG, SVG, JPEG или WebP, плюс картинку можно сразу скопировать в clipboard.
Но самая интересная функция — всё нарисованное можно скопировать обратно как настоящий терминальный текст: plain text, ANSI escape sequences или код на chalk. То есть можно не только оформить существующий вывод, но и мышкой набросать, как должен выглядеть CLI, а потом забрать это обратно в код.
В общем, вчера вместо нейрослопа можно было просто красиво снять try в работе. Видимо, Boron попался мне примерно на сутки позже, чем нужно.
boron.sh
GitHub
#tool #terminaltest, test2, tmp, new-test, какая-нибудь папка на Desktop, ещё одна в /tmp, а через пару недель уже непонятно, где именно лежал тот эксперимент, который внезапно понадобился снова.
Для этого есть try.
Идея простая: все такие одноразовые штуки живут в одной директории, по умолчанию ~/src/tries. Когда создаёшь новую, try добавляет дату:
2026-08-07-redis-pool
Потом достаточно написать:
try redis
и получишь fuzzy search по всем своим экспериментам. Он ещё учитывает, насколько недавно ты открывал директорию, поэтому свежие штуки поднимаются выше.
Если ничего подходящего нет, из того же интерфейса можно сразу создать новую папку. То есть try одновременно заменяет мне кусок из mkdir, cd, find и попыток вспомнить, как я назвал папку три недели назад.
Ещё полезная штука:
try .
Если запустить это внутри git-репозитория, он создаст для текущего репо отдельный worktree в tries. Нормальный вариант для «хочу быстро что-то попробовать, но текущую рабочую копию трогать не хочу».
Можно и сразу клонировать чужой репозиторий туда же:
try https://github.com/foo/bar.git
А если какой-то такой эксперимент внезапно вырос во что-то настоящее, его можно перенести из tries в обычные проекты. try уберёт дату из имени, перенесёт директорию, а на старом месте оставит симлинк, чтобы старый путь не умер.
В общем, штука довольно узкая, но хорошо попадает в конкретную проблему: временный код почему-то почти никогда не оказывается временным.
Написана на Ruby, ставится через gem или Homebrew.
https://github.com/tobi/try
#experiment #toolkeyv@6.0.0. После установки пакет искал npm-токены и, если находил, публиковал заражённые версии других пакетов, к которым у владельца токена был доступ. Так заражение пошло дальше по экосистеме и затронуло, среди прочих, flat-cache, file-entry-cache и cache-manager.
Код запускался через preinstall. Пакет скачивал Bun с GitHub и выполнял обфусцированный скрипт, который собирал токены GitHub, npm, PyPI, AWS, GCP, Azure, Docker, Kubernetes, Vault и других сервисов. В GitHub Actions он ещё и пытался достать секреты из памяти runner-процесса.
Заодно менялись конфиги Claude Code и VS Code. Поэтому заражённый репозиторий мог сработать не только при npm install, но и просто при открытии проекта или запуске агента.
С keyv есть отдельный нюанс. Вредоносная версия была опубликована через официальный GitHub Actions workflow, с npm Trusted Publishing и валидной SLSA provenance.
То есть provenance не была подделана. Она честно подтверждала, что пакет собран официальным workflow из конкретного коммита. Просто сам коммит уже содержал вредоносный код, потому что аккаунт мейнтейнера был скомпрометирован.
Поэтому наличие attestation здесь ничего не гарантировало. Она подтверждает происхождение сборки, но не авторизованность изменений в репозитории.
Если одна из заражённых версий попала в CI или локальное окружение, откатить пакет недостаточно. Токены и секреты, доступные этому окружению, придётся перевыпустить.
StepSecurity
#npm #attack
@route --home {
pathname: url-pattern("/");
}
@route --article {
pathname: url-pattern("/articles/:id");
}
А потом задать отдельную анимацию для перехода с главной на статью:
@navigation (from: --home) and (to: --article) {
@view-transition {
navigation: auto;
types: slide-left;
}
}
Для перехода назад можно использовать другой тип анимации.
Кроме @route и @navigation, в черновике есть :nav-source — селектор элемента, с которого начался переход, и :link-to() — селектор ссылок, ведущих на определённый маршрут.
Самый понятный пример — список карточек. Пользователь нажимает на изображение, открывается отдельная страница, а именно эта картинка плавно превращается в большое изображение статьи. Сейчас для такого обычно нужен JavaScript, который найдёт нажатый элемент и назначит ему view-transition-name. Здесь это хотят сделать без ручной обвязки.
Роутер это, конечно, не заменяет. CSS не будет загружать страницы или управлять историей браузера. Он просто сможет выбирать стили и анимации с учётом того, между какими адресами происходит переход.
Пока это ранний Editor’s Draft, поэтому синтаксис ещё вполне может измениться. Попробовать можно в Chrome Canary с включённым Experimental Web Platform Features.
Подробный разбор — у Ван Дамма нашего Брамуса, сам черновик — на сайте CSSWG.
#route #css #view #transition