ar
Feedback
Записки IT специалиста

Записки IT специалиста

الذهاب إلى القناة على Telegram

IT-канал, просто о сложном https://interface31.ru Купить рекламу: https://telega.in/c/interface31

إظهار المزيد
8 833
المشتركون
لا توجد بيانات24 ساعات
+187 أيام
+6430 أيام
أرشيف المشاركات
Современные форматы изображений Многие коллеги, работая и поддерживая сайты игнорируют современные форматы изображений, а зря
+3
Современные форматы изображений Многие коллеги, работая и поддерживая сайты игнорируют современные форматы изображений, а зря. Обычно это связано с тем, что мало кто углубляется в тему, а пользователям – так тем вообще все равно, картинка и картинка. Работая над новым сайтом, мы плотно занялись этим вопросом и получили определенные практические результаты, которыми и хотим поделиться. Начнем с теории, сегодня, кроме привычных JPG и PNG мы можем выбрать более современные форматы, такие как AVIF и WebP. В чем их преимущества? Если коротко – в меньшем размере изображения при сохранении визуального качества. Это очень важный параметр для любого сайта, особенно в наше время, когда размеры и разрешения изображений существенно выросли. Сегодня мало кто захочет рассматривать картинки меньше, чем 1000 px, а еще лучше если это будет хотя бы FHD. Но это существенно увеличивает как размер картинки, так и размер страницы. Мало того, что она начинает медленно грузиться у пользователя, так еще и негативно влияет на поисковое ранжирование. При прочих равных на более высокое место в поиске будет поставлен сайт, который грузится быстрее. Поэтому современные форматы — это не прихоть, а ответ на сложившиеся вызовы и отличный способ сделать сайт быстрее и удобнее для пользователя. 🔹 WebP – формат предложен Google в 2010 году, поддерживает сжатие с потерями и без, прозрачность, анимацию. В настоящий момент поддерживается всеми актуальными браузерами, поэтому вопрос совместимости практически не стоит на повестке дня. Позволяет достичь хороших показателей сжатия по сравнению с исходными JPG / PNG, при этом достаточно производительный и не требует серьезных вычислительных ресурсов на кодирование/декодирование. 🔹 AVIF – гораздо более современный формат на основе кодека AV1, разработан в 2019 году и начал поддерживаться в браузерах примерно с 2021 года, позволяет достичь еще более высокой степени сжатия чем WebP при сохранении качества исходного изображения. Из недостатков – ограниченная поддержка только современными версиями браузеров, ресурсоемкость как при кодировании, так и при декодировании, что может создавать проблемы при просмотре страниц на старых и маломощных устройствах, не поддерживающих аппаратное декодирование. 👆 Все это хорошо, а что на практике? А практика показала следующее – WebP действительно быстрый, но степень сжатия для него не должна превышать 80%, но даже в этом случае на изображении начинают появляться артефакты. Обычно они не сильно бросаются в глаза и обнаружить их можно только сравнением с исходным изображением, но в некоторых случаях могут быть даже сильно заметны. Полностью избавиться от них можно только при степени сжатия 90-95%, что ведет к увеличению размера файла в 2-4 раза. Так, например, один и тот же файл со степенями сжатия 85-90-95% будет иметь размеры 80 КБ, 140 КБ и 250 КБ. Что уже достаточно существенно. На результаты такого сжатия можно посмотреть на первых двух изображениях, представлены файлы с 85% и 95% сжатия. AVIF конвертируется гораздо дольше, но результаты получаются гораздо более высокого качества. Так для приведенного выше изображения артефакты начали проявляться при степени сжатия 40% и то грубых огрехов изображение не содержит. А на уровне 60% выглядит практически неотличимо от оригинала. Размеры тоже радуют 17 КБ и 30 КБ. Две последние картинки, это как раз AVIF со сжатием 40% и 60%. Таким образом лидер вырисовывается явно – AVIF и его следует использовать во всех возможных случаях, даже следует WebP, приоритет которому нужно установить таким образом, чтобы он отображался только в том случае, если браузер не поддерживает AVIF. Для себя мы остановились на 60% для AVIF и 80% для WebP (учитывая, что он используется только как замещающий формат). В итоге получили такие результаты:
Общий размер исходных (.jpg/.png): 134.87 MB
WEBP: 35.65 MB Экономия: 73.57% 
AVIF: 38.29 MB Экономия: 71.61% 
С одной стороны вроде бы большой разницы нет, но при одинаковом размере мы получаем отличное качество у AVIF и незначительное ухудшение при WebP.

Финансовая грамотность — не про ограничения. Необязательно отказываться от латте. Важно понимать, что это, например, ₽5 000 в
Финансовая грамотность — не про ограничения. Необязательно отказываться от латте. Важно понимать, что это, например, ₽5 000 в месяц, и делать это осмысленно. ФинКод — канал от экспертов ВТБ Мои Инвестиции — рассказывает, как принимать осознанные финансовые решения и подбирать инструменты для грамотного управления финансами. В жизни важен баланс, а не экономический марафон. Так появляется стабильность без аскетизма. И да, кофе остаётся. Только теперь без чувства вины. Подписаться #реклама 16+ О рекламодателе

Repost from Linux Club
🐧 Быстрый совет Linux Хочешь видеть, когда именно ты запускал команды в терминале? Включи временные метки в истории bash — э
🐧 Быстрый совет Linux Хочешь видеть, когда именно ты запускал команды в терминале? Включи временные метки в истории bash — это удобно, если нужно вспомнить, над чем ты работал и когда. Просто добавь переменную окружения:

export HISTTIMEFORMAT="%F %T "
Теперь при просмотре истории ты увидишь дату и время выполнения каждой команды:

history | tail -n 5
или короче:

history 5
Формат "%F %T" показывает дату и время, но ты можешь настроить его под себя. Обрати внимание: метки применяются только к новым командам и работают только в bash. #linux 🐧 Linux Club © Реклама. Лисайчук Ф.В. ИНН 504207767290. erid: 2W5zFHhnA1v

Куда идет современный корпоративный Linux? Кто только не ругал компанию Microsoft за ее «минимальные системные требования», к
Куда идет современный корпоративный Linux? Кто только не ругал компанию Microsoft за ее «минимальные системные требования», когда при выпуске очередной системы она умышленно ограничивала ее использование определенными ограничениями, часто исключительно программными. И всегда в противовес ставился Linux, в котором полная свобода, равенство и братство. Да, так оно до определенной поры и было, но все течет, все меняется и Linux начинает копировать поведение старшего брата. Ничего удивительного и предосудительного в этом нет, поддерживать технологии, которыми, условно говоря, пользуются полтора землекопа – это распыление сил и средств, равно как поддержка устаревшего оборудования и архитектур. Нет, будут энтузиасты – флаг им в руки, но основное внимание должно быть уделено мейнстримным вещам. В этом плане показателен список изменений вышедшего пару дней назад SUSE Linux Enterprise Server 16: 🔹 Прекращена поддержка скриптов инициализации SysV. Возможно использование только unit-ов systemd. Данное нововведение можно только приветствовать. Несмотря на то, что systemd используется во всех основных дистрибутивах по умолчанию, все еще находятся службы использующие старые методы инициализации, что создает дополнительные сложности по их управлению и диагностике. 🔹 По умолчанию предложены только среды рабочего стола, использующие Wayland. X.org Server удалён из поставки. Поддержка запуска приложений на базе X11 сохранена при помощи XWayland. Здесь тоже видно стремление перестать сидеть на двух стульях, хотя у Wayland есть еще замечания, но в целом это уже достаточно зрелая среда и такой шаг добавить внимания именно к Wayland, потому как наличие альтернативы в виде X11 позволяло многим разработчикам игнорировать проблемы Wayland. 🔹 Прекращена поддержка архитектуры x86-64-v1. Работа возможна только на системах x86 с архитектурой x86_64-v2, которая поддерживается процессорами примерно с 2009 года (начиная с Intel Nehalem). Как бы ожидаемый и вполне резонный шаг, 2009 год по меркам индустрии – вообще седая древность и вряд-ли кто-то на полном серьезе будет использовать его в продакшене. 🔹 По умолчанию в ядре отключена поддержка 32-разрядных систем x86 и запуска 32-разрядных исполняемых файлов. Тоже вполне в духе времени, хотя и более радикально чем в других дистрибутивах. Нет, время от времени запуск x32 тоже требуется, но чаще всего это какая-либо отраслевая экзотика (привет ЕГАИС), а такой подход как раз может сподвигнуть разработчиков пересмотреть свое понимание прекрасного. 🔹 Вместо традиционного стека YaST для управления системой задействован пакет Cockpit. 🔹 Сетевой конфигуратор wicked заменён на NetworkManager. 🔹 В качестве пакетного фильтра вместо iptables по умолчанию задействован NFTables. 🔹 Осуществлён переход с DHCP-сервера ISC DHCP на KEA DHCP. Стандартизация и унификация, да, каких-то фишек и особенностей, делавших дистрибутив самобытным, становится меньше, но именно администратору от этого становится только лучше. Работать становится проще – есть набор общепринятых инструментов, их и учи. А не запоминай как это делается там, а как здесь… 🔹 Прекращена поставка гипервизора Xen - в качестве основного гипервизора для виртуализации задействован KVM. Аналогично и очень разумно. Доля пользователей Xen достаточно мала и использовать непопулярный продукт по умолчанию была не очень хорошая идея, точнее очень плохая. Зачем использовать и учить то, что после больше не пригодиться? И по чему трудно найти помощь и поддержку? В целом тренд понятен и ожидаем. Linux давно перестал быть маргинальной системой, дешевой альтернативой или догоняющим. Поэтому он должен быть понятным и предсказуемым, соблюдать стандарты и не допускать скатывания в зоопарк технологий, что сейчас и происходит.

🔥 БЕСПЛАТНЫЙ КУРС ПО СОЗДАНИЮ НЕЙРО-СОТРУДНИКОВ НА GPT И ДРУГИХ LLM 🔥 Ищете практический и углубленный курс, чтобы освоить
🔥 БЕСПЛАТНЫЙ КУРС ПО СОЗДАНИЮ НЕЙРО-СОТРУДНИКОВ НА GPT И ДРУГИХ LLM 🔥 Ищете практический и углубленный курс, чтобы освоить создание нейро-сотрудников? Мы создали курс из 5 объемных занятий. Это именно то, что нужно, чтобы прокачать свои навыки абсолютно бесплатно! 📌 Темы занятий: 1. Введение в мир нейро-сотрудников 2. Как работают LLM и их аналоги 3. Создание базы знаний для нейро-сотрудника (RAG) 4. Тестирование и отладка нейро-сотрудников 5. Интеграция нейро-сотрудников в Production Вот 5 тем курса - он максимально простой и доступный, общеобразовательный, без какого-либо сложного программирования 📚Прохождение этого курса, скорее всего, займет у вас от 1 до 3 часов 🤖 Присоединяйтесь к нашему бесплатному курсу и разберитесь в этой увлекательной теме с нами!

Ходи, да оглядывайся. Новые реалии А вот и свежие новости подоспели, в городе Каменск-Уральский в Свердловской области состав
Ходи, да оглядывайся. Новые реалии А вот и свежие новости подоспели, в городе Каменск-Уральский в Свердловской области составили протокол на 20-летнего молодого человека по новой статье об умышленном поиске экстремистского контента (ст. 13.53 КоАП, предусматривает штраф от 3 тыс. до 5 тыс. руб.) ✅ Источник: https://ura.news/news/1053030611 Молодой студент-медик 20 лет от роду ехал в маршрутке и залипал в телефоне. Ну и случайно наткнулся на то, что попадает под характеристику «экстремистских материалов», причем действительно экстремистских, там речь шла о действительно запрещенных организациях. Не подозревая об этом, юноша перешел по ссылке и ознакомился с содержимым страницы. Как и почему у него это получилось без VPN – вопрос отдельный, но провайдер проявил бдительность и сообщил «куда надо». В результате на парня составили протокол и отправили в суд. Но, благодаря адвокату, который сумел придать делу общественный резонанс, суд прекратил производство по делу и отправил протокол назад, так как умысла в нем не увидел. Но что-то подсказывает мне, что это совсем не конец и не всем так повезет с адвокатом. Поэтому помните и детям своим скажите – цифровая гигиена – это наша повседневность. Не уверен – не переходи, особенно если сидишь по мобильной связи или на публичной точке без КВН и прочих радостей жизни. А сегодня кроме КВН важно также обеспечить и защиту DNS, так как там вообще все открытым текстом ходит, а в случае утечки и обнаружения КВН при этом – там еще одна статья есть, гораздо более тяжелая по последствиям и само наличие КВН там будет уже доказательством умысла. В общем, дорогие друзья, ходите, да оглядывайтесь. По нашим временам привычка полезная.

Схема генератора статических сайтов на базе HUGO с автоматической сборкой и развертыванием. Начало После вчерашней публикации
Схема генератора статических сайтов на базе HUGO с автоматической сборкой и развертыванием. Начало После вчерашней публикации мы решили поделиться собственной схемой, которую используем для нового сайта и которая выполняет цели децентрализации разработки и работы с сайтом, контроля версии и автоматического развертывания. Одной из важных частей схемы является локальный контур, который позволяет выполнять как разработку, так и работу над контентом в рамках полного цикла – со сборкой локальной копии. Это позволяет проверить работу сайта без его публикации на хостинге и убедиться, что все работает как надо. В принципе вы можете поднять локальный экземпляр HUGO на своем рабочем месте, но мы не советуем этого делать, заведите для этого отдельную виртуальную машину или контейнер, хоть локально, хоть на домашнем сервере. Дело в том, что HUGO в среде Windows и HUGO в среде Linux могут работать несколько по-разному, использовать разные библиотеки, разные параметры окружения. Поэтому важно обеспечить максимальную идентичность локальной и рабочей сборочных сред. Так как мы используем GitHub Action, который создает виртуальные машины, то и для локальной среды используем виртуальную машину с Ubuntu, если же вы используете GitLab, который оперирует Docker контейнерами, то имеет смысл и локальный контур выполнить по той же технологии. Но это уже тонкости, главное – у нас есть некоторая локальная установка HUGO с которой мы будем работать. И некоторое дополнительное окружение. В частности, локальный git-репозиторий, в котором мы будем фиксировать все изменения проекта. Сразу дам простой совет: используйте основную ветку репозитория – main, только для повседневной работы с сайтом – т.е. создания контента, все остальные работы выполняйте в отдельной ветке, например – dev (от developer – разработка). Это немного усложняет работу, зато серьезно упрощает всю следующую эксплуатацию. Мы коснемся этого вопроса позже. Еще одной частью рабочего окружения станет скриптовая среда выполнения, чаще всего Python, который позволит автоматизировать ряд задач, с которыми вы непременно столкнетесь. В нашем случае это оптимизация и конвертация изображений, а также транслитерация таксономий. И если второе у нас нестандартное и вынесено в скрипты чисто по причине необходимости обеспечить совместимость в URL со старым сайтом, то про картинки разговор отдельный. По опыту работы с классическими CMS многие привыкли, что такая оптимизация и конвертация делается самим движком, при загрузке картинки и пытаются решить проблему в лоб. Можно ли такое сделать с HUGO? Можно, чего нельзя, с ним вообще многое можно, если хоть немного код писать умеете, да с нейросетями советуетесь. Но парадигма тут совсем иная. Что делает HUGO? Собирает статический сайт из файлов проекта и отдельной ценности этот сайт не имеет, в отличие от проекта. Почему? Да потому, что его всегда можно сгенерировать заново. Таким образом, если мы переложим конвертацию изображений на уровень HUGO, то он будет это делать каждый раз при сборке проекта, а процесс этот не быстрый и ресурсозатратный. Поэтому более правильно будет пройти один раз скриптом по всему набору изображений, выполнить необходимые оптимизации и конвертации и потом работать уже с подготовленными изображениями. Тем более, что под эту задачу мы можем локально выделить ресурсов столько, сколько нужно. Также важно, что скрипты эти, как неотъемлемая часть проекта тоже попадут в git, что обеспечит им версионирование и децентрализацию. Последняя достигается синхронизацией локального репозитория с GitHub, GitLab или любой иной публичной службой, не важно какой. Дополнительно это выполняет роль первого уровня резервного копирования. Потому что представить себе, что тот же GitHub неожиданно накроется со всем пользовательским добром сложно. А при выходе из строя локального контура, даже всего полностью и безвозвратно, вы всегда можете заново клонировать git-репозиторий и просто настроить локальную среду. Максимум, что вы потеряете – это не синхронизированные изменения.

Хочешь стабильную и прибыльную карьеру в IT? 1С - стандарт автоматизации для более 80% российских компаний. В Kata Academy ты
Хочешь стабильную и прибыльную карьеру в IT? 1С - стандарт автоматизации для более 80% российских компаний. В Kata Academy ты начнёшь с реальных задач: автоматизация бухгалтерии, интеграции и оптимизация бизнес-процессов. Обучение онлайн с ментором, подготовка к интервью, гарантированное трудоустройство по договору, стажировка в команде и помощь карьерного консультанта - это твои шаги к успеху. Сразу после курса ты сможешь устроиться на работу с достойной зарплатой. Оставь заявку и освой востребованную профессию! #реклама О рекламодателе

🔎 Как и при помощи чего защитить сеть Построение комплексной системы информационной безопасности позволяет организации макси
🔎 Как и при помощи чего защитить сеть Построение комплексной системы информационной безопасности позволяет организации максимально надёжно защитить данные от актуальных киберугроз. Приглашаем на вебинар от команды UserGate, на котором будут рассмотрены ключевые аспекты создания полноценной защиты корпоративной инфраструктуры и основы построения архитектуры ИБ. В прямом эфире обсудим: — Как и при помощи чего обезопасить сеть — Как защитить места работы и хранения данных — Реальные кейсы использования нашего NGFW — Основные технологии cредств защиты информации Спикер: Дмитрий Овчинников, vCISO / Архитектор по информационной безопасности.  Когда: 12 ноября, среда, 10:00 (МСК).  Увидимся в эфире! ➡️ Зарегистрироваться

Работаем над новым сайтом, переносим контент и местами не можем себя заставить не перечитать заново... Вернуться на десять с
Работаем над новым сайтом, переносим контент и местами не можем себя заставить не перечитать заново... Вернуться на десять с лишним лет назад и окунуться в те проблемы и чаяния. 🔹Направленная антенна для Wi-Fi своими руками Статья, которую специально перевел мой немецкий друг, так как он повторил эту конструкцию и получил положительный результат. И источник - не просто кто-то там, а авторитетный CHIP DE. А сейчас? А сейчас это вызывает просто улыбку, времена другие, технологии тоже...

Иван Чёрный, автор Вороньего блога опубликовал статью: 🔹 Поднимаем свой сайт на Hugo с публикацией контента через Obsidian Р
Иван Чёрный, автор Вороньего блога опубликовал статью: 🔹 Поднимаем свой сайт на Hugo с публикацией контента через Obsidian Рекомендуем всем, кто интересуется статическими генераторами сайтов. Автор хорошо и с наглядными примерами показывает что это такое и как выглядит работа с ними. А также как настроить современный сайт по принципу сайт как код. Также он предлагает достаточно оригинальный способ написания заметок через Obsidian. При этом мы не можем назвать его схему полностью оптимальной, так как сборка проекта на самом хостинге - это то, чего хотелось бы избежать, да и локальный контур сборки не помешает, чтобы можно было дорабатывать и отлаживать сайт, а также проверять верстку в спокойной обстановке. Но общие принципы изложены верно и для небольших проектов указанная схема вполне работоспособна. ✅ Данная заметка написана нами в поддержку начинающих авторов, почему это важно – можно прочитать здесь: https://t.me/interface31/3702

Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля Дизайнер карточек для маркетплейсов — востребованная и доходная проф
Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля Дизайнер карточек для маркетплейсов — востребованная и доходная профессия 💰 Научись ей бесплатно! - Бесплатный доступ - Разбор ДЗ от наставника - Мощные кейсы в портфолио Узнать больше #реклама 16+ yudaevschool24.online О рекламодателе

​​Используем команду sed для работы с текстом Утилита sed - потоковый текстовый редактор. Широко используется для работы с потоками данных в скриптах и консольных командах. Владение данной утилитой относится к основам администрирования Linux. В общем случае работа sed задается конструкцией:
команда/вхождение/замена/флаги
Например, результатом работы команды:
echo "Сегодня 1 апреля"  | sed 's/апреля/мая/'
Будет строка “Сегодня 1 мая” , в данном случае s – обозначает действие замены, далее идет вхождение и замена. Если нужно выполнить несколько действий, то разделяем их точкой с запятой и добавляем ключ -e:
 "Сегодня 1 апреля"  | sed -e 's/сегодня/Завтра/i; s/апреля/мая/'
Так как мы не уверены, как именно может быть написано слово «Сегодня», то мы добавили к первому действию флаг i, который предписывает игнорировать реестр. Пока что мы работали с потоками стандартного ввода-вывода, но также на вход можно подать файл:
 's/апреля/мая/' file.txt
Тогда будут прочитаны все строки файла и в каждой из них, при совпадении будет выполнена замена. Результат будет выведен в стандартный поток вывода, исходный файл изменен не будет. В поток вывода добавляются все строки, а не только те, которые были заменены. При необходимости можете сохранить его в отдельный файл используя перенаправление. Другой вариант – использовать флаг w с указанием файла, но в этом случае в него будут записаны только те строки, где была произведена замена:
sed 's/апреля/мая/w out.txt' file.txt
Если нам нужно редактировать непосредственно исходный файл, то следует запустить команду с ключом -i (не следует путать с командой i):
sed -i 's/апреля/мая/' file.txt
В этом случае все замены будут произведены внутри файла, в стандартный поток вывода ничего отправляться не будет. При работе с файлом можно указывать строки или диапазоны строк для замены, например только вторую строку:
sed '2s/апреля/мая/' file.txt
Или со 2 строки по 5:
sed '2,5s/апреля/мая/' file.txt
Для указания последней строки используйте символ $:
sed '5,$s/апреля/мая/' file.txt
Данная конструкция заменит вхождения с 5 строки по последнюю. Если не указано иного, то sed заменят только первое вхождение в строке, номер вхождения можно указать при помощи флага или использовать флаг глобальной замены – g, при использовании данного флага с номером будут заменены все вхождения начиная с указанного, например, с третьего:
sed 's/апреля/мая/3g' file.txt
Кроме изменения строк sed можно использовать для удаления строк из потока, для этого просто укажите их номер или диапазон номеров:
sed '2,5d' file.txt
Также можно использовать вхождения, например, удалим все строки со словом «апреля»:
sed '/апреля/ d' file.txt
Можно использовать и несколько вхождений, но будьте осторожны, sed удалит все строки между ними:
sed '/апреля/,/мая/3d' file.txt
Также sed можно использовать для добавления строк в поток, в начало или конец потока, для добавления в начало используйте:
sed 'i\Это первая строка' file.txt
В конец:
sed 'a\Это последняя строка' file.txt
Или явно укажите номер строки от начала или конца:
sed '2i\Это вторая строка' file.txt
Команда с полностью заменит содержимое указанной строки:
sed '3c\Это новое содержимое третьей строки' file.txt
Еще одна возможность sed – замена символов, но при этом область замены нельзя ограничить, будет выполнена обработка всего потока, например заменим a на b, с на d и e на f:
sed 'y/ace/bdf/' file.txt
Это не полный набор приемов и возможностей sed, Телеграм накладывает ограничения на размер заметки, но уже этого достаточно для эффективного применения утилиты и получения новых навыков работы с текстом.

18 ноября в Москве пройдёт Deckhouse User Community meetup #3. В программе три доклада, открытая дискуссия, пицца, пенное и н
18 ноября в Москве пройдёт Deckhouse User Community meetup #3. В программе три доклада, открытая дискуссия, пицца, пенное и нетворк. Спикеры «Фланта» покажут, как: — использовать Open Source-виртуализацию Deckhouse в домашних условиях; — управлять «зоопарком» K8s-операторов через Managed-Services; — оптимизировано ядро хранения данных в Deckhouse Prom++ для высокой производительности при низком потреблении памяти. Киллер-фича: весь митап будет работать зона DIY-зона с развёрнутым кластером под управлением Deckhouse Kubernetes Platform CE. Можно протестировать платформу своими руками и задать вопросы разработчикам. Регистрируйтесь, места ограничены.

Семь раз отмерь – один отрежь В продолжение поднятой в дневной заметке теме. Как бы мы, админы, не стремились к порядку, как
Семь раз отмерь – один отрежь В продолжение поднятой в дневной заметке теме. Как бы мы, админы, не стремились к порядку, как бы не унифицировали, закрывали, создавали и учили, но пользователь всегда способен выполнить такое, что хоть стой, хоть падай. Особенно это касается мест хранения данных, их можно обнаружить в служебных папках, в корзине, да и вообще в самых неожиданных местах, например, я сам видел, пользователи умудрились организовать файлопомойку в папке SYSVOL доменного контроллера. Поэтому я никогда не очищаю корзину на чужих компьютерах и вообще подхожу к сохранению данных пользователя крайне тщательно. Научила меня этому одна старая история. Дело было в далеком и светлом 2003 году, я – молодой специалист только-только устроившийся в компьютерную фирму. Система оплаты труда у нас была смешанная: оклад 4 000 рублей на руки + 50% от стоимости выполненных работ. Для понимания, 4 000 руб. в 2003 году были эквивалентны примерно сегодняшним 30 000 руб., для молодого человека в провинции без семьи, кредитов и ипотек в целом нормально, но сильно не развернешься. Поэтому интерес работать был и интерес неплохой, особенно если урвать заказы подороже. И вот я взял хороший заказ – переустановит компьютер одной женщине-бухгалтеру, как сейчас принято говорить – на аутсорсе. А была тогда еще «семерка», которая 1С:Предприятие 7.7 и хранила она свой список баз и прочие настройки в реестре. Это меня и подвело, 1С я знал тогда так себе и просто скопировал весь диск C: в папку OLD_C на диске D: прямо из-под винды и считал, что все хорошо, если что – все найдем. Но реестр, естественно, не скопировался, как и ряд других открытых файлов, но тогда я не придал этому значения. В общем я все переустановил, даже 1С и всякие программы для ПФР и прочей налоговой отчетности поставил, только вот почему-то список баз оказался пустой и где он лежит я так и не нашел. Обратился за помощью к старшим коллегам, но они только присвистнули, мол 1С, ну все пацан, ты попал… Сами базы 1С были преимущественно на диске D:, но было их там некое запредельное количество, штук, наверное, 150-200. Ну да дурной собаке 100 км не крюк, сейчас открою, посмотрю, впишу, но там почти везде оказались пароли. В общем дело ясное, что дело темное. Позвонил клиентке, повинился, она только тяжело вздохнула, мол приеду, будем разбираться. Хорошо, что женщина попалась нескандальная и мы с ней весь остаток этого дня и почти весь день следующий просидели, подключая базы, угадывая к ним пароли и правильно их называя. При этом выяснилось, что рабочих там было баз двадцать-тридцать, остальные – копии, архивы, пробные базы и т.д. и т.п., но времени это заняло преизрядно. Ну и по деньгам вышло совсем невкусно. С тех пор я всегда копирую системный диск загрузившись с внешнего носителя, а для особо важных систем, где есть специфический софт – дополнительно снимаю полный образ. Мало-ли, так хоть будет где посмотреть, как оно было настроено и почему. И этот подход спас мне в последствии множество нервных клеток, когда выяснялось, что все пошло не так и «я забыл вам сказать» или «вы что, сами не видели?». Особенно это касается всякого отраслевого софта со всякими хитрыми схемами лицензирования. Сегодня, когда доступны быстрые и емкие носители я обычно просто снимаю полный образ системного диска с конвертацией в VHDX через Disk2vhd от Sysinternals. Если есть место – дополнительно копирую клиенту, нет – храню у себя. Что важно – такой образ можно просто смонтировать как обычный диск в систему и поковыряться в нем без привлечения стороннего софта. А при необходимости можно и прямо с него загрузиться. Теперь вы всегда можете вернуться к предыдущему состоянию системы и скопировать оттуда то, что вы не скопировали, либо показать клиенту, что он не прав и то, что по его утверждению работало – не работает и работать не могло.

Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как
Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как привлечь целевую аудиторию 💰👌 Попробовать #реклама yandex.ru О рекламодателе

​​Стандартные расположения данных Иерархия файловых систем основных ОС предполагают различную структуру хранения данных и одной из частей этой структуры является пользовательская папка. В Linux и UNIX-подобных системах это /home, в Windows - C:\Users. Предполагается, что пользователь будет хранить свои данные именно там и не будет их располагать в местах откровенно нестандартных и, тем более, странных. Только вот есть интересная особенность. В Linux или той же macOS данное правило строго соблюдается, может быть потому, что сами системы не сильно располагают к разбрасыванию пользователем своих данных куда попало. Причем делают это самым простым и очевидным способом – прав на запись куда-либо за пределы домашней директории у пользователя нет. И ни у кого это не вызывает ни неприятия, ни отторжения. При этом те же самые люди в Windows как будто специально стараются нарушать соглашение о хранении данных, размещая их буквально где попало. Отчасти в этом есть вина самой системы, так как в Windows нет общей иерархии файловой системы, то люди привыкли хранить свои данные на дополнительных логических томах (D:, E: т.д.) и делать это так, как удобно им. Очень часто эта практика сохраняется и в том случае, когда логический том один. Такое чаще всего бывает на ноутбуках или моноблоках, а разбивать на разделы единственный быстрый SSD размером в 250-500 ГБ не имеет смысла. И вот вместо того, чтобы сложить все в папку пользователя и не париться то тут, то там, чаще всего в корне диска возникают различные пользовательские папки то с играми, то с документами, то с базами 1С (последние почему-то очень не любят размещать в тех же Документах, куда, кстати, сама 1С предлагает по умолчанию). Что в этом плохого, спросите вы? В ответ я расскажу вам одну поучительную историю. Третьего дня у одного моего знакомого что-то случилось с системой, то ли сделали что-то не так, то ли скачали что-то не то, но загружаться она перестала. Ноутбук хороший, брендовый, HP. После пары неудачных загрузок он предложил ему восстановить систему и запустил утилиту Recovery Manager, которая предложила ему восстановление с сохранением программ и данных. Он внимательно прочитал текст на экране, вставил внешний диск для сохранения данных и запустил процесс. Некоторое время просто наблюдал и, убедившись, что утилита реально сохраняет на внешний диск данные пошел пить чай, оставив ноутбук восстанавливаться. Через пару часов все было готово, программы на месте, документы на месте, все работает. Но если все идет хорошо – значит вы чего-то не заметили. Это чего-то заметила на следующий день его жена. Когда запустила 1С, а та ей бодро сообщила, что информационная база не обнаружена. Как вы уже догадались, лежала база не в профиле пользователя, а в C:\1CBases или чем-то подобным. Изучив то, что утилита сохранила на внешний диск, выяснилось, что туда попали папки Windows, Program Files, Program Data и т.д. для восстановления программ и полностью паки пользователей из C:\Users. Более никаких папок туда не копировалось, да и, наверное, никогда не предполагалось, потому что разработчики утилиты исходили из того, что и данные, и программы у пользователя будут в стандартных расположениях. Бекапов, как полагается, не было. Спасло то, что недавно эту базу выгружали на флешку, чтобы передать внешнему бухгалтеру. Так что отделались почти легким испугом, ну и за месяц документы заново руками вбить. А ведь все могло быть гораздо хуже. Поэтому храните данные в стандартных расположениях, ну и не забывайте про бекапы.

Как хорошо вы шарите в Docker? Вы же не из тех, кто думает, что docker ps показывает список процессов? 🤨 Давайте проверим ва
Как хорошо вы шарите в Docker? Вы же не из тех, кто думает, что docker ps показывает список процессов? 🤨 Давайте проверим ваш реальный уровень знаний Docker за 6 каверзных вопросов! Тест тут 👈 Узнайте, где вы «плаваете» и какие темы стоит освежить, чтобы работать увереннее. P.S. Если результат будет «грустный» — не страшно. Главное — не зависать в статусе exited(1) 😉

Современные тенденции в сайтостроении. Генераторы статического контента Продолжаем разговор о современных тенденциях в сайтос
Современные тенденции в сайтостроении. Генераторы статического контента Продолжаем разговор о современных тенденциях в сайтостроении, начало здесь: 🔹Классические CMS 🔹 Wiki-CMS 🔹 Flat CMS В прошлой заметке мы рассмотрели Flat CMS и отметили наметившиеся с середины 2010 годов тенденции на упрощение систем управления контентом и переход на структуру сайт как код. Апофеозом этого стало появление генераторов статических сайтов (Static Site Generators, SSG). При беглом взгляде они могут показаться откатом в прошлое, ну какие еще статические сайты в третьем десятилетии 21 века? А почему бы и нет? Если это современные статические сайты. Отвечающие всем требованиям и поддерживающие все современные веб-стандарты? Ведь задача любой системы управление контентом – это выдать пользователю готовую HTML-страницу, а как она это сделает пользователю преимущественно безразлично. Ему нужно открыть браузер и просто получить требуемую информацию. Также эпоха Веб 2.0, когда любой сайт должен был интерактивно взаимодействовать со своим посетителем плавно ушла в закат. Общение плавно переместилось в мессенджеры, а форумы остались только в узко тематическом сегменте, из всего интерактивного взаимодействия остались разве что комментарии. Да и сами сайты пересмотрели свое отношение к интерактивности. Ну какое взаимодействие пользователю может предложить информационный ресурс? Вот статья, вот комментарии, вот поиск… Больше ничего и не надо. На первый план вышли быстрые, адаптивные сайты, которые одинаково хорошо выглядят и работают как на большом мониторе, так и на экране поменьше, не говоря уже о мобильных устройствах. А поисковые системы прямо ставят ранжирование сайта в зависимость от скорости его работы. Поэтому долой все лишнее, оставляем только нужное. На самом деле современные статические сайты не являются деревянными и к полу прибитыми, весь необходимый интерактив они обеспечивают на уровне JS на стороне браузера, делая работу с ними столь же приятной и удобной. А вот владелец такого сайта получает массу преимуществ. Так как генератор выдает готовый статический сайт, то можно спокойно развязать место генерации контента и хостинг. А также в полной мере задействовать технологии CI/CD и версионирование Git. Также как и во Flat CMS весь контент хранится в Markdown, а шаблоны и конфигурационные файлы в YAML, TOML и/или JSON. Но разница заключается в том, что Flat CMS требуют наличие установленного движка и всех этих файлов на хостинге, а генераторы статических сайтов – нет. Вы можете установить генератор на домашнем ПК или сервере, выполнять всю работу по созданию и генерации контента там, а на хостинг выгружать готовый набор HTML-файлов, скриптов, стилей, картинок. Для такого сайта не требуется много ресурсов, он обладает отличной производительностью и отлично масштабируется. Ведь именно отдача статического контента – это именно то, что лучше всего умеют делать веб-сервера. А так как у нас статическое содержимое, то никто не мешает его агрессивно кешировать, а в случае роста проекта масштабировать его через CDN. При этом сам сайт максимально технологически прост и безопасен, ломать там попросту нечего, но даже если такое произошло, то никто не мешает просто потушить скомпрометированный веб-сервер (контейнер) и тут же сгенерировать новый. В тоже время вы можете, как угодно, пилить, крутить и дорабатывать сам проект. Абсолютно не задумываясь о безопасности или оптимальности доработок. Все равно сборочная среда находится в закрытом контуре и, при необходимости, нет никакой сложности обеспечить ее необходимыми ресурсами. Для поклонников DevOps технологий генераторы позволяют легко и просто реализовать систему непрерывной доставки контента. Когда разработка и предварительная сборка ведется в локальном контуре. После того, как вы проверили результат, вы отправляете его в Git-репозиторий. Полученные изменения инициируют в нем процесс чистовой сборки и доставки контента на хостинг. Кстати, именно так и будет работать наш новый сайт.

Интернет в путешествии - это всегда плюс вайб ✅ Поэтому мы сделали ehalo.io - сервис для установки eSIM в 140+ странах мира о
+4
Интернет в путешествии - это всегда плюс вайб ✅ Поэтому мы сделали ehalo.io - сервис для установки eSIM в 140+ странах мира от 190 рублей. Покупать местные сим-карты больше не надо. Возить с собой эту железную штуку, чтобы выковыривать российскую симку - тоже. ⚡ Все просто: шаг 1 - нажимаете кнопку "начать" внизу шаг 2 - выбираете нужную страну и тариф шаг 3 - оплачиваете российской картой (!) или по СБП (!!!) шаг 4 - устанавливаете eSIM за минуту шаг 5 - прилетаете в страну и сразу начинаете пользоваться всеми благами цивилизации. 🏠 Интернет как дома в любом путешествии. Начать #реклама 16+ О рекламодателе