Обновить

Администрирование

Сначала показывать
Порог рейтинга

Представлен локальный и бесплатный сервис BentoPDF для работы с PDF. Вся обработка происходит в браузере. Умеет объединение, разделение, поворот, удаление страниц и кроппинг, а также в нём можно быстро добавить вотермарку, сделать нумерацию страниц и поменять текст в файлах. При этом бесплатно, без лимитов и даже регистрацию не просят.

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии2

Как установить HTTP прокси с TLS на свежий сервер с Linux одной командой:

curl https://raw.githubusercontent.com/SenseUnit/easy-dp/refs/heads/master/easy-dp.sh | bash -s

Вывод будет примерно таким:

Вывод скрипта после установки
Вывод скрипта после установки

Всё, готово - можно пользоваться!

Скрипт устанавливает и настраивает dumbproxy c TLS-сертификатами от LetsEncrypt, выпущенными прямо на IP-адрес сервера, без домена.

Настройка браузеров и прочих клиентов уже обсуждалась в одной из предыдущих статей. Добавлю только, что на сегодняшний день в качестве клиента для Android я бы выбрал NekoBox.

На этом всё!

Теги:
Всего голосов 10: ↑5 и ↓5+2
Комментарии5

Обновлён проект Python Scripts, где более 60 Python-скриптов для любых задач, включая алгоритмы по парсингу, работе с видео и фото, клонированию сайтов, скачиванию с сайтов и другие популярные решения.

Ранее был представлен учебный проект «Числа Python, которые должен знать каждый программист» (Python Numbers Every Programmer Should Know). Проект также доступен на GitHub.

Теги:
Всего голосов 4: ↑1 и ↓30
Комментарии1

Представлен учебный проект «Числа Python, которые должен знать каждый программист» (Python Numbers Every Programmer Should Know). Проект также доступен на GitHub.

«Существуют цифры\числа\значения, которые должен знать каждый программист на Python. Например, насколько быстро или медленно добавляется элемент в список в Python? А как насчёт открытия файла? Это занимает меньше миллисекунды? Есть ли что‑то, что замедляет этот процесс? Если у вас есть алгоритм, чувствительный к производительности, какую структуру данных следует использовать? Сколько памяти занимает число с плавающей запятой? А как насчёт одного символа или пустой строки? Насколько быстр FastAPI по сравнению с Django? Я хотел бы уделить немного времени и записать показатели производительности, специально ориентированные на разработчиков Python», — сообщил автор проекта Майкл Кеннеди.

Теги:
Всего голосов 7: ↑7 и ↓0+7
Комментарии2

Открытый проект mail2telegram позволяет перенаправляет электронную почту сразу в Telegram. Можно настроить фильтры пересылки, выбрать группу, в которую будут падать письма и автоматом отсеивать весь спам.

Теги:
Всего голосов 3: ↑2 и ↓1+3
Комментарии0

Новогодняя аномалия в данных мониторинга.

С Новым Годом!
С Новым Годом!

Воспроизвести достаточно просто

  • Скачать и установить Dimension-UI.

  • Развернуть локально PostgreSQL.

  • Запустить в Dimension-UI мониторинг данных PostgreSQL с помощью запроса с интервалом 3 сек.

WITH params AS (
    SELECT 
        15 AS total_frames,
        20 AS canvas_height,
        3  AS frame_duration_sec
),
animation_state AS (
    SELECT 
        (CAST(EXTRACT(EPOCH FROM CURRENT_TIMESTAMP) AS INTEGER) / frame_duration_sec) % total_frames AS frame_idx
    FROM params
),
tree_definition AS (
    SELECT 
        frame_id, 
        y_pos,
        CASE
            -- ═══════════════════════════════════════
            -- ЗВЕЗДА на верхушке
            -- ═══════════════════════════════════════
            WHEN y_pos = 20 AND frame_id = 7 THEN '*'
            
            -- ═══════════════════════════════════════
            -- ВЕРХУШКА елки (острая)
            -- ═══════════════════════════════════════
            WHEN y_pos = 19 AND frame_id = 7 THEN 'G'
            
            -- ═══════════════════════════════════════
            -- ЯРУС 1 (y=16-18) — расширяется книзу
            -- ═══════════════════════════════════════
            WHEN y_pos = 18 AND frame_id BETWEEN 6 AND 8 THEN 'G'
            WHEN y_pos = 17 AND frame_id BETWEEN 5 AND 9 THEN 'G'
            WHEN y_pos = 16 AND frame_id BETWEEN 4 AND 10 THEN 'G'  -- широкий низ яруса
            
            -- Сужение перед ярусом 2
            WHEN y_pos = 15 AND frame_id BETWEEN 5 AND 9 THEN 'G'
            
            -- ═══════════════════════════════════════
            -- ЯРУС 2 (y=12-14)
            -- ═══════════════════════════════════════
            WHEN y_pos = 14 AND frame_id BETWEEN 4 AND 10 THEN 'G'
            WHEN y_pos = 13 AND frame_id BETWEEN 3 AND 11 THEN 'G'
            WHEN y_pos = 12 AND frame_id BETWEEN 2 AND 12 THEN 'G'  -- широкий низ яруса
            
            -- Сужение перед ярусом 3
            WHEN y_pos = 11 AND frame_id BETWEEN 4 AND 10 THEN 'G'
            
            -- ═══════════════════════════════════════
            -- ЯРУС 3 (y=8-10)
            -- ═══════════════════════════════════════
            WHEN y_pos = 10 AND frame_id BETWEEN 3 AND 11 THEN 'G'
            WHEN y_pos = 9  AND frame_id BETWEEN 2 AND 12 THEN 'G'
            WHEN y_pos = 8  AND frame_id BETWEEN 1 AND 13 THEN 'G'  -- широкий низ яруса
            
            -- Сужение перед ярусом 4
            WHEN y_pos = 7 AND frame_id BETWEEN 3 AND 11 THEN 'G'
            
            -- ═══════════════════════════════════════
            -- ЯРУС 4 — нижний, самый широкий (y=4-6)
            -- ═══════════════════════════════════════
            WHEN y_pos = 6 AND frame_id BETWEEN 2 AND 12 THEN 'G'
            WHEN y_pos = 5 AND frame_id BETWEEN 1 AND 13 THEN 'G'
            WHEN y_pos = 4 AND frame_id BETWEEN 0 AND 14 THEN 'G'  -- во всю ширину!
            
            -- ═══════════════════════════════════════
            -- СТВОЛ (y=1-3)
            -- ═══════════════════════════════════════
            WHEN y_pos BETWEEN 1 AND 3 AND frame_id BETWEEN 6 AND 8 THEN 'T'
            
            -- Всё остальное — фон
            ELSE 'S'
        END AS pixel_char
    FROM generate_series(0, 14) AS frame(frame_id)
    CROSS JOIN generate_series(1, 20) AS y(y_pos)
),
pixel_data AS (
    SELECT td.*
    FROM tree_definition td
    JOIN animation_state ast ON td.frame_id = ast.frame_idx
),
layers_logic AS (
    SELECT 
        y_pos,
        pixel_char,
        MAX(CASE WHEN pixel_char IN ('T', 'G', '*') THEN y_pos ELSE 0 END) OVER () as max_obj_height
    FROM pixel_data
)
SELECT 
    CURRENT_TIMESTAMP as dt,
    CASE 
        WHEN pixel_char = 'T' THEN '4_Trunk'
        WHEN pixel_char = 'G' THEN '3_Tree'
        WHEN pixel_char = '*' THEN '2_Star'
        WHEN pixel_char = 'S' THEN 
            CASE WHEN y_pos > max_obj_height 
    

p.s. Данные по запросу любезно предоставлены Claude Opus 4.5.

Теги:
Всего голосов 5: ↑3 и ↓2+3
Комментарии1

Представлен открытый проект на Python под названием Reverse API engineer. Это консольный инструмент, который фиксирует трафик браузера и автоматически генерирует готовые к работе клиенты Python API. Больше никакого ручного реверс‑инжиниринга — просто просматривайте, записывайте и получайте чистый API‑код.

«Этот инструмент выполняет код локально, используя Claude Code‑ пожалуйста, следите за выводом/ На некоторых веб‑сайтах используется расширенная система обнаружения ботов, которая может ограничивать захват или требовать ручного взаимодействия», — пояснил автор проекта.

Особенности Reverse API:

  • автоматизация браузера: создан на базе Playground с режимом скрытности для реалистичного просмотра;

  • режим автономного агента: полностью автоматизированное взаимодействие с браузером с помощью агентов искусственного интеллекта (автоматический режим с MCP, использование браузера, stagehand);

  • запись HAR: фиксирует весь сетевой трафик в архивном формате HTTP;

  • генерация на основе искусственного интеллекта: использует Claude 4.5 для анализа трафика и генерации чистого кода на Python;

  • поддержка нескольких SDK: встроенная интеграция с Claude и OpenCode SDK;

  • интерактивный интерфейс командной строки: минималистичный интерфейс терминала с переключением режимов (Shift+Tab);

  • готовность к работе: сгенерированные скрипты содержат обработку ошибок, подсказки по вводу текста и документацию;

  • история сеансов: все запуски сохраняются локально с полными журналами сообщений;

  • отслеживание затрат: подробное использование токенов и оценка затрат с поддержкой кэширования.

Теги:
Всего голосов 4: ↑3 и ↓1+4
Комментарии0

С наступающим Новым годом!

С праздником!
С праздником!

Для российского ИТ этот год снова оказался непростым. Но, пожалуй, именно такие периоды лучше всего показывают реальную зрелость рынка и команд. Мы много перестраивались, пересобирали продукты и процессы, часто принимали сложные решения на ходу и при этом не останавливались.

За это время стало заметно, как меняется сам рынок. Отечественные ИТ-решения повзрослели: появилось больше осмысленных внедрений и ответственности за результат, больше реальной инженерной и продуктовой работы. Импортозамещение окончательно перестало быть абстрактным лозунгом и превратилось в ежедневную практику. Это сложно, иногда нервно, но точно полезно для всей отрасли.

Хочу поблагодарить всех, кто в этом году не просто адаптировался, а продолжал создавать и улучшать продукты: разработчиков, инженеров, архитекторов, заказчиков и партнеров. Тех, кто спорил, искал лучшие решения, не соглашался на посредственность и держал высокую планку качества. Именно благодаря такому взаимодействию рынок не просто выстоял, а продолжает развиваться.

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

С Новым годом! Пусть он принесет больше ясности, сильных решений и поводов гордиться своей работой.

Данила Трусов, директор продукта «Инферит ИТМен»

Теги:
Всего голосов 4: ↑3 и ↓1+2
Комментарии0

Обновлены бесплатные курсы от Гарвардского университета, включая:

Теги:
Всего голосов 3: ↑2 и ↓1+1
Комментарии0

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

Теги:
Всего голосов 1: ↑1 и ↓0+2
Комментарии0

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

Теги:
Всего голосов 2: ↑1 и ↓10
Комментарии0

Готово ли ваше облако к 2026 году? Быстрый FinOps-чек-лист

Облачные расходы растут, а контроль и прозрачность часто не поспевают. Чтобы понять, насколько процессы готовы к следующему году, эксперты из Практики FinOps подготовили короткий чек-лист.

Это бесплатный инструмент в формате гугл-таблицы. Прохождение занимает 5–7 минут.

Что дает чек-лист:

  • видно, где процессы уже работают, а где есть пробелы

  • понятно, на каких этапах теряется прозрачность расходов

  • есть конкретные шаги, что имеет смысл внедрять дальше

Чек-лист можно пройти одному, например CTO или Head of Engineering, либо вместе с командой, инженером, архитектором и финансовым специалистом.

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

👉 Забрать чек-лист

Теги:
Всего голосов 5: ↑5 и ↓0+5
Комментарии0

Ближайшие события

Подборка инструкций по работе с сетью для начинающих

Привет, Хабр! В пятницу я снова с подборкой статей. На этот раз несу инструкции по работе с сетями.

Хороших выходных!

Теги:
Всего голосов 6: ↑6 и ↓0+11
Комментарии0

Habr Wrapped 2025: версия Рунити

Мы много писали, вы много читали — и вместе мы сделали этот год насыщенным. А теперь самое интересное: давайте посмотрим, каким был 2025 год для нашего блога.

📚 215 публикаций
Столько материалов мы выпустили за год. А вы их (почти все) прочитали. Спасибо за доверие!

👀 1 851 319 читателей
Почти два миллиона взглядов на наши продукты, инфраструктуру и разработки команды.

852 добавления в избранное
Тексты, которые вы сохраняли, чтобы вернуться к ним позже и перечитать внимательнее. А чаще всего вы читали про облачные сервисы, OpenStack, DevOps-практики и тестирование — тексты, основанные на нашем опыте.

И ещё один повод гордиться этим годом — спецпроекты. Их посмотрели, прокомментировали и сохранили на будущее больше 350 000 человек! Масштаб, если честно, впечатляет даже нас.

И если этот год чему-то научил нас, то вот чему: честные истории, понятные разборы и свежие идеи важны и нужны. Поэтому мы продолжим в новом году!

Спасибо, что провели с нами 2025.

Теги:
Всего голосов 3: ↑2 и ↓1+1
Комментарии0

Обновлён проект Cheat Sheets for Developers со шпаргалками для разработчиков по языкам программирования, сервисам и технологиям, включая Python, Bash, Docker, JS, Java, VS Code, Figma, Git, GitHub, Postman, C#, C++, Rust, Flutter, EJS, Fortran, Docker, K8s, Git, ReEX, ChatGPT, Firefox, Zoom, Gmail, Blender, Audacity, Photoshop.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Привет, небольшой апдейт, добавил возможность редактировать service в kui:

edit service
edit service

Творите, выдумывайте, пробуйте!)

Теги:
Рейтинг0
Комментарии0

Список сайтов для самообразования:

  • Academic Earth — огромная библиотека бесплатных курсов обо всем на свете от ведущих специалистов мира. От обучения химии и информатике до бизнеса и психологии;

  • Classcentral — самый удобный поисковик по бесплатным курсам на любую тему;

  • Edx — тут собраны обучающие курсы от самых топовых ВУЗов мира, таких как Гарвард, Стэнфорд и Массачусетский технологический институт. Разумеется, бесплатно;

  • Google Garage Courses — библиотека бесплатных курсов от Google с возможностью получить карьерный сертификат от технологического гиганта;

  • Khanacademy — лучший сайт для углубленного изучения математики и других прикладных наук;

  • Udemy — для тех, кто планирует работать в «диджитале»: отличные курсы по программированию, дизайну, веб‑разработке, графике;

  • Treehouse — мастхэв для будущих программистов. Простые и понятные курсы по Python, Data Science, React и другим темам.

Хотите выяснить, где учиться IT? В экосистеме Хабра есть маркетплейс курсов на Хабр Карьере, на котором собраны сотни онлайн‑обучений в самых разных специализациях: программировании, аналитике, дизайне, менеджменте и других. Чтобы пользователи могли проверить качество курсов, там показаны отзывы от тех, кто уже прошел обучение — изучайте и выбирайте лучшее для себя.

Теги:
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Cloud GPU: как работает и для каких задач используется

GPU в облаке — это вычислительный ресурс для задач с высокой долей параллельных операций. Такие серверы используют, когда стандартных CPU недостаточно по производительности или времени выполнения. Ниже — как устроен Cloud GPU и для каких задач его применяют на практике на примере сервиса в Рег.облаке.

Cloud GPU — это виртуальный сервер с подключенным графическим ускорителем. Он используется для:

  • обучения и использования моделей ИИ;

  • обработки изображений, видео и звука;

  • 3D-моделирования и рендеринга;

  • параллельных вычислений и аналитики.

Инфраструктура Cloud GPU построена на серверах с процессорами AMD EPYC и накопителями NVMe SSD. Используются видеокарты NVIDIA A4000 (16 ГБ), A5000 (24 ГБ) и A100 (80 ГБ). Для работы доступен готовый образ Ubuntu GPU с предустановленными библиотеками и инструментами для ML и ИИ. Управлять серверами можно через облачную платформу.

Сервис работает по модели pay-as-you-go — пользователь оплачивает только фактическое время работы GPU. Такой формат подходит для сценариев с переменной нагрузкой: обучение и дообучение моделей, периодические расчеты и inference.

За полгода эксплуатации:

  • количество пользователей Cloud GPU выросло на 189%;

  • среднее время выполнения задачи на одном сервере составило 15 часов в сутки;

  • среднее количество дней использования GPU на одного клиента выросло в два раза;

  • 48% пользователей повторно заказывают Cloud GPU для новых задач.

Cloud GPU используют в e-commerce, розничной торговле и сфере услуг для аналитики, рекомендательных систем и автоматизации процессов. Наиболее востребованной видеокартой за последние шесть месяцев стала NVIDIA A5000 (24 ГБ) — ее выбрали почти 60% пользователей как сбалансированный вариант для ML- и inference-задач.

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

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Новогодняя задача: помогите Тирексу поздравить коллег

Условие

Программист Тирекс написал праздничное веб-приложение с обратным отсчетом до Нового года и хочет поздравить им всех коллег. Приложение уже собрано: в директории web находятся готовые статические артефакты (HTML, JavaScript и изображения). У Тирекса есть TLS-сертификат и приватный ключ, и он хочет, чтобы приложение работало по HTTPS.

Задача

Нужно упаковать приложение в Docker-контейнер, чтобы его можно было легко запускать на любом сервере, и сделать доступным из интернета. Времени у Тирекса осталось совсем немного!

Создайте конфигурацию nginx, которая:

  • слушает порт 80 и выполняет 301-редирект на HTTPS (https://$host$request_uri);

  • слушает порт 443 с включенным SSL;

  • использует сертификат /etc/nginx/ssl/cert.pem и ключ /etc/nginx/ssl/key.pem;

  • отдает статические файлы из /usr/share/nginx/html по пути /.

Напишите Dockerfile, который:

  • копирует в  контейнер конфигурацию nginx и артефакты приложения

  • создает пустую директорию /etc/nginx/ssl (для монтирования сертификатов при запуске);

  • использует легкий образ (например, nginx:alpine).

При запуске контейнера должны быть опубликованы порты 80 и 443.

Бонусная задача

Добавьте docker-compose.yml файл, чтобы запускать приложение одной короткой командой из папки с сертификатами.

Предлагайте варианты решения в комментариях. А посмотреть правильный ответ можно в Академии Selectel.

Теги:
Всего голосов 5: ↑5 и ↓0+9
Комментарии2