Алексей Соин · zencod.ru
19 subscribers
165 photos
16 videos
4 files
1K links
Статьи по разработке

- frontend
- backend
- server

zencod.ru
Download Telegram
Cворачиваемые вложенные списки без JS: современное руководство по вёрстке деревьев на HTML/CSS с хорошей семантикой и полноценной навигацией с клавиатуры → https://iamkate.com/code/tree-views/
Forwarded from ServerAdmin.ru
​​Предлагаю вам сохранить в закладки простой и удобный скрипт для Linux, который поможет быстро разобраться на сервере, кто и чем занял свободное место — topdiskconsumer. Единственный файл в репозитории, кроме README и есть этот скрипт.

Скрипт автоматически определяет mount point, с которого он запущен. Далее идёт в корень диска и вычисляет top:

▪ 20 самых больших файлов
▪ 20 самых объёмных директорий
▪ 20 самых больших файлов, старше 30-ти дней
▪ 20 самых больших удалённых файлов с незакрытыми handles (удалёнными, но реально всё ещё занимающими место, потому что дескриптор не закрыт)

При этом скрипт ничего не ставит и не использует сторонний софт. Всё реализовано через привычный функционал системы. Например, топ 20 директорий вычисляет вот такая конструкция:

# du -hcx --max-depth=6 / 2>/dev/null | sort -rh | head -n 20

Топ 20 файлов:

# find / -mount -ignore_readdir_race -type f -exec du -h "{}" + 2>&1 \
| sort -rh | head -n 20

Топ 20 старых файлов:

# find / -mount -ignore_readdir_race -type f -mtime +30 -exec du -h "{}" + 2>&1 \
| sort -rh | head -20

Для удалённых файлов длинная конструкция с использованием lsof. Не буду всю её приводить, можете сами в скрипте посмотреть функцию fnLargestUnlinked.

Размер топа задаётся переменной intNumFiles в самом начале скрипта. Можете изменить при желании на любое другое число. Оно же указывается, если запустить скрипт с ключом -l. Описание всех возможностей можно посмотреть вот так:
# ./topdiskconsumer --help
Там много всего полезного.

Скрипт очень понравился, сразу сохранил себе в коллекцию. Когда куда-то утекло место на сервере, поможет быстро оценить обстановку, не вспоминая все эти команды самостоятельно. Я их в разное время и в разных публикациях уже приводил здесь. Причём все, что используются. А тут всё в одном месте собрали.

#script #bash
Git & GitHub: In-Depth Guide.

Неплохой логнрид для ознакомления с Git и Github.

https://neuronize.dev/git-github-in-depth-guide
​​😕Полное руководство по логированию в Node.js с помощью Pino

В этой статье автор расскажет, как асинхронность асинхронный JSON-логгер позволяет быть очень быстрым, создавая минимальный оверхед в системе, и как задействовать и настроить многие функции логгера, чтобы достичь оптимальной конфигурации, а также вы узнаете как улучшит общую производительность и надёжность вашего приложения.

Читать...
Давние желания, сбывающиеся благодаря scroll-driven анимациям: стилизация sticky-элементов в состоянии прилипания, появление и скрытие тени при прокрутке, оглавление с подсветкой текущей секции. Роман Комаров экспериментирует с новой CSS-фичей → https://kizu.dev/scroll-driven-animations/
​​🤔Захват флага: Практика уязвимости веб-приложений на Node.js (часть 1)

В этой статье автор расскажет, почему некоторые разработчики обычно не обращают внимания на информацию из npm audit, и как постоянная проверка и обновление наших зависимостей помогут в создании достаточно безопасного приложения.

Читать...
Forwarded from FrontEndDev
Маленькие полезные сайты

Крис Корнер делится списком сайтов, которые могут помочь в разработке. От создания необычного фона и подбора цветовой темы до набора бейджей и анимированных переключателей для вашего приложения.

https://blog.codepen.io/2023/06/19/chris-corner-little-useful-websites/
Чтобы выделить "победителя" среди методов глубокого клонирования в JavaScript, необходимо протестировать каждый из них. Предлагаем результаты серии модульных тестов.

https://nuancesprog.ru/p/17555/

VK: https://vk.com/@nuancesprog-kakoi-metod-glubokogo-klonirovaniya-v-javascript-naibolee-ef

Дзен: https://dzen.ru/media/nuancesprog.ru/647f90496d418274f91823c6

@nuancesprog #JavaScript
Как выполняются функции в Javascript? Каков порядок их выполнения? Что такое контекст выполнения? Отвечаем на эти вопросы с иллюстрациями.

https://nuancesprog.ru/p/17792/

VK: https://vk.com/@nuancesprog-stek-vyzovov-javascript-obyasnenie-s-pomoschu-illustracii

Дзен: https://dzen.ru/media/nuancesprog.ru/649219a5f205df6eb7361080

@nuancesprog #JavaScript
Есть ли приемлемая альтернатива GIF? Сравнение современных форматов для отображения анимированых изображений в вебе → https://cloudfour.com/thinks/animated-gif-alternative
SSH с высоты птичьего полёта, или разгребаем кучи ключей

https://habr.com/ru/articles/747080/
Forwarded from Frontender's notes [ru]
​​🚀Асинхронность в JS: как выполнять долгие сетевые запросы без блокирования основного потока

В этой статье автор расскажет, как в синхронном JavaScript вынести операции за рамки единого потока, чтобы не блокировать действие кода после тяжёлых операций. 

Читать...
driver.js, библиотека для пошагового знакомства пользователей с продуктом: без зависимостей, работает с любым фреймворком, написана на TypeScript → https://driverjs.com
Forwarded from Web Stack
Создание безопасного REST API в Node.js

В этой статье автор показывает, как создать простой и безопасный REST API для управления пользователями на Node.js.

https://www.toptal.com/nodejs/secure-rest-api-in-nodejs
Linux для игр, Windows для работы. С чего начать, как установить и настроить

https://habr.com/ru/articles/751624/
Forwarded from mefody.dev
Стилизуй свой RSS

Дэрек Кэй предлагает интересное. Если у вас есть блог, или вы делаете новостной сайт, или сайт с какой-то обновляемой базой знаний, то скорее всего вы уже прикрутили RSS-ленту. Я, например, RSS пользуюсь постоянно, подписан много на кого через Feedly.

И вот пользователь переходит по прямой ссылке на RSS-ленту. Скорее всего он увидит месиво из XML-тегов и их содержимого. Казалось бы, ну и ладно, это же для автоматики страница, а не для людей.

Но у нас ведь есть древний способ стилизовать XML-документы — XSLT. В прошедшем недавно ЯЛФ CTF как раз было задание, где нужно было в XML-документе поиграться со стилями и получить нужный для ответа флаг.

Как это работает:
1. Вы заводите XML-документ с данными. RSS — это подмножество XML.
2. К нему прикрепляете XSL-стили. <?xml-stylesheet href="/rss.xsl" type="text/xsl"?>.
3. Внутри XSL описываете шаблон представления данных. По сути — HTML с дополнительными возможностями шаблонизации, среди которых циклы, фильтрация, работа с «объектами», условия и прочее.
4. Туда же добавляете обычные CSS-стили, потому что уже есть привычный HTML-шаблон с тегами и классами, если нужно.
5. Если в RSS-ленту зайдёт робот, он не будет ничего делать со стилями и просто распарсит вашу ленту, как ему надо. То есть ничего не меняется.
6. Если зайдёт по прямой ссылке реальный пользователь, он увидит красивую ленту в стиле вашего сайта. Можно, например, приделать инструкцию, как подписаться на эту ленту.

XSLT сейчас скорее мёртв, чем жив, и хорошо — с ним мороки было очень много, не самый DX-приятный способ писать сайты. Но браузеры всё ещё его поддерживают, чтобы не сломались сайты, которые писали в древности. Поэтому можно использовать эту древнюю технологию для таких вот интересных экспериментов.

https://darekkay.com/blog/rss-styling/
Forwarded from Frontender's notes [ru]
​​🗣️Создание статичного блога на Angular и Contentful

В этой статье автор продемонстрирует связку Angular и Contentful.

Читать...