Библиотека девопса | DevOps, SRE, Sysadmin
10.3K subscribers
1.35K photos
70 videos
4 files
2.56K links
Все самое полезное для девопсера в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/25874ec4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/6798b4e4509aba565
Download Telegram
🤖🎓 SmartClass: как научить AI проверять домашки программистов

Автоматизация рутинных задач — один из главных трендов в IT, но как насчет проверки домашек? Представьте себе систему, которая не только оценивает код студентов, но и помогает им понять свои ошибки, словно опытный наставник. Звучит как фантастика? В статье рассказывается, как проект SmartClass воплощает эту идею в реальность, используя возможности AI. Узнайте, какие технологии лежат в основе, с какими трудностями сталкиваются разработчики и как это меняет обучение программированию.

📎 Подробнее о том, как AI помогает проверять домашние задания
👩‍🚀 pISSStream: Телеметрия МКС прямо на вашем Mac

pISSStream — это приложение для macOS, которое отображает в строке меню текущий уровень заполнения бака для мочи на Международной космической станции в режиме реального времени.

🛠️ Установка и использование:
1. Скачайте последнюю версию pISSStream с GitHub-репозитория.
2. Запустите приложение; при успешном подключении к Lightstreamer и получении телеметрии МКС в строке меню отобразится иконка с процентом заполнения бака.
3. В случае потери соединения или сигнала приложение уведомит об этом, изменив иконку и показав соответствующее сообщение.
😁3👾2
Server-Sent Events: Почему эта технология недооценена

💡 Server-Sent Events (SSE) — это одна из тех технологий, которые незаслуженно остаются в тени WebSockets, хотя у нее есть свои уникальные преимущества. Статья объясняет, почему стоит обратить внимание на SSE, как они работают, и в каких случаях их использование будет особенно эффективным.

Основные преимущества SSE:
Простота: SSE использует HTTP, что упрощает настройку и интеграцию. Вам не нужно устанавливать сложные двусторонние соединения, как в случае с WebSockets.

Эффективность для односторонних данных: SSE идеально подходит для сценариев, где сервер отправляет обновления клиенту (например, уведомления, данные телеметрии или биржевые котировки).

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

Меньше накладных расходов: для большинства задач, где не требуется двусторонняя связь, SSE потребляет меньше ресурсов, чем WebSockets.

Когда использовать SSE?
Потоковые данные (например, обновления цен в реальном времени).
Уведомления от сервера (новости, изменения состояния).
Обновления пользовательских интерфейсов (доски задач, результаты опросов).

Ограничения:
SSE работает только по протоколу HTTP/HTTPS, в отличие от WebSockets, которые используют отдельный протокол.
Нет поддержки бинарных данных, только текстовые (обычно JSON).
SSE подходит только для соединений «сервер-клиент» (не поддерживает клиент-клиент).

Почему SSE недооценены?
Многие разработчики стремятся использовать современные или "хайповые" технологии, такие как WebSockets или gRPC. Однако в большинстве случаев для задач с односторонней передачей данных SSE являются более простым и легким в реализации решением.
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉2
🛠🔥 Как ускорить CI/CD пайплайн в 5 раз: опыт оптимизации

CI/CD-пайплайн — ключевая часть разработки. Его медлительность снижает продуктивность команды и замедляет релизы. В статьe автор делится опытом, как он сократил время выполнения пайплайна с 45 минут до 10.

Что сделано:
1️⃣ Разделение задач на параллельные процессы
Ранее этапы выполнялись последовательно. Теперь тесты, сборка и другие задачи запускаются параллельно, что экономит общее время.

2️⃣ Использование кэширования зависимостей
Зависимости (например, npm-модули) теперь не переустанавливаются заново для каждого запуска. Это снизило время установки на 80%.

3️⃣ Оптимизация тестирования
Тесты разделены на группы для выполнения в несколько потоков.
Реализован механизм пропуска тестов для файлов, которые не изменились.

4️⃣ Улучшение Docker-сборки
Пайплайн использует многоэтапные сборки Docker-образов. Это уменьшило их размер и время создания.

5️⃣ Переход на облачные раннеры
Использование облачных серверов позволило масштабировать ресурсы и избежать узких мест на локальных машинах.

Результаты:
Время выполнения пайплайна сократилось с 45 до 10 минут.
Тестирование ускорилось на 70%, сборка Docker-образов — на 50%.
Команда начала получать обратную связь от системы почти мгновенно, что улучшило процесс разработки.
Please open Telegram to view this post
VIEW IN TELEGRAM
4
👻 Ghostty — новый терминал для современных разработчиков и DevOps

Друзья, знакомьтесь! Ghostty — это новый эмулятор терминала, который создан для работы на macOS и Linux. Его автор — Митчелл Хашимото, известный разработчик таких инструментов, как Vagrant и Terraform.

🔥 Почему Ghostty — это must-have:
Работает быстрее, чем многие популярные терминалы. Вы точно заметите разницу!
На macOS использует родные технологии для создания гладкого и удобного интерфейса. На Linux — поддержка GTK
Ghostty разрабатывается как проект с открытым исходным кодом.

Кому будет полезен?
Разработчикам: ускоряет работу с кодом и делает терминал удобным для современных инструментов.
Админам и DevOps: высокая производительность для CI/CD, контейнеров и мониторинга.
Исследователям данных: поддержка графики помогает визуализировать данные прямо в терминале.

💻 Хотите попробовать?

#новость
Please open Telegram to view this post
VIEW IN TELEGRAM
🔴 Интеграция Playwright и GitHub Actions: Оптимизация CI/CD

Современные веб-приложения требуют высокой скорости разработки и надежного тестирования. Одной из лучших практик является использование непрерывной интеграции и доставки (CI/CD), где автоматическое тестирование играет ключевую роль. В статье автор подробно рассматривает, как связать мощь Playwright с гибкостью GitHub Actions для создания эффективного процесса CI/CD. В этой публикации я расскажу об основных идеях и их преимуществах.

▶️ Playwright: Универсальный инструмент для тестирования
Playwright, разработанный Microsoft, позволяет создавать автоматические тесты для популярных браузеров, таких как Chromium, Firefox и WebKit. Его главные преимущества:
Поддержка различных языков программирования: JavaScript, Python, Java и C#.
Кросс-браузерное тестирование.
Простая настройка и интеграция с CI/CD.

GitHub Actions: Автоматизация на каждый день
GitHub Actions позволяет автоматизировать запуск тестов, сборку и развертывание приложений. Эта платформа интегрирована прямо в GitHub и идеально подходит для разработчиков, использующих эту экосистему.

Вместе с Playwright GitHub Actions позволяет:
Настроить автоматический запуск тестов при каждом изменении в коде.
Ускорить выявление ошибок.
Упростить доставку новых функций.

👨‍💻 Как это работает?
В статье подробно описывается процесс настройки рабочего процесса. Вот пример:
1️⃣ Создайте файл .github/workflows/playwright.yml;
2️⃣ Настройте шаги для проверки кода, установки зависимостей и запуска тестов;
3️⃣ Используйте Playwright CLI для выполнения тестов в автоматическом режиме.

Пример файла:
name: CI with Playwright

on:
push:
branches:
- main
pull_request:

jobs:
tests:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '16'

- name: Install dependencies
run: npm install

- name: Run Playwright tests
run: npx playwright test
Please open Telegram to view this post
VIEW IN TELEGRAM
✉️ Давно хотели свой почтовый сервер? Вдохновляемся OpenBSD!

Мечтали о собственном почтовом сервере, но не знали, с чего начать? Статья от Николя Карпи — это отличный гид для тех, кто хочет создать простой и надежный почтовый сервер с использованием OpenBSD.

Что особенного в OpenBSD?
👍 Безопасность по умолчанию: OpenBSD — один из самых безопасных операционных систем благодаря строгим политикам и минималистичному подходу.
👍 Простота настройки: всё, что нужно для работы сервера, уже есть в базовой системе — никаких лишних пакетов.
👍 Идеально для почты: OpenBSD включает smtpd, который подходит для небольших или средних почтовых серверов.

Основные шаги
1️⃣ Настройка DNS-записей:
Создайте MX-записи для вашего домена.
Добавьте SPF, DKIM и DMARC для безопасности.
2️⃣ Установка OpenSMTPD:
Простое решение для работы с почтой.
Поддерживает шифрование и авторизацию.
3️⃣ Доставка почты:
Настройте пересылку писем на локальных или удалённых пользователей.
4️⃣Фильтрация и антиспам:
Использование spamd и других инструментов OpenBSD для блокировки спама.

Почему это стоит попробовать?
Никто больше не управляет вашей почтой, кроме вас.
Вы поймете, как работает интернет и электронная почта.
Настраивайте сервер под свои задачи.ц
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🥰2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
🤩 Resizer2: Управляй окнами на Windows как профессионал

Resizer2 — это утилита для Windows, позволяющая управлять окнами с помощью комбинации клавиши Win и мыши, подобно функционалу в KDE или i3.

Основные возможности:

Перемещение окон: удерживайте Win и левую кнопку мыши для перемещения окна; если окно полноэкранное или максимизировано, оно переместится между мониторами.
Изменение размера: удерживайте Win и правую кнопку мыши для изменения размера окна от ближайшего угла.
Прозрачность: используйте Win и прокрутку мыши для изменения прозрачности окна.
Свертывание: нажмите Win и среднюю кнопку мыши для сворачивания окна.
Максимизация/восстановление: двойной клик левой кнопкой мыши с удержанием Win для максимизации или восстановления окна.

Установка:
1️⃣Скачайте последнюю версию установщика с GitHub.
2️⃣Запустите установщик и следуйте инструкциям.

❗️Примечание: доступна портативная версия (.exe), не требующая установки, однако автозапуск настраивается только через установщик.
Please open Telegram to view this post
VIEW IN TELEGRAM
4
💻📈 Итоги года Proglib: 2024 год в цифрах и достижениях

Привет, DevOps-инженеры! Этот год вы снова доказали, что именно вы — невидимые герои, стоящие за стабильностью и масштабируемостью цифрового мира. Вместе с вами мы следили за трендами, автоматизировали процессы и исследовали новые подходы к работе.

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

Добро пожаловать в обзор года!
👍4
🎨 Какими навыками должен владеть фронтендер

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

Знания и навыки, необходимые фронтендеру:
▪️ Уметь работать с HTML и CSS
▪️ Выучить язык программирования JavaScript
▪️ Овладеть одним из фреймворков на базе этого языка (React, Angular, Vue)
▪️ Уметь работать с Git
▪️ Понимать, что такое веб-страницы, протоколы HTTP/HTTPS, браузеры, домены и хостинг
▪️ Разбираться в REST API
▪️ Работать с Figma
▪️ Иметь базовые навыки проверки своего кода

➡️ Забирайте курс Frontend со скидкой 35%, он поможет со всем этим разобраться – https://proglib.io/w/eeccf187
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉1
Google в машине времени

Как давно вы пользуетесь Google? А задумывались, каким он был в самом начале? Для тех, кто помнит, это путешествие в прошлое, а для тех, кто не застал первые дни интернета, — уникальная возможность увидеть, с чего всё начиналось. Сайт, который переносит нас в эпоху простоты и минимализма, напомнит, как выглядел старый добрый Google.

Загляните и ощутите дух зарождения интернета — независимо от того, сколько лет вы в сети!

#новость
С наступающим, девопсы! Или уже наступившим!🎆🎆

Уже придумали чем заняться в новом году? 😉
Если нет, то предлагаем вам подборку фильмов к просмотру:

🔠 Игра в имитацию (2014)
🅰️ Стив Джобс (2015)
🔠 Revolution OS (2001)
©️ Железный человек (2008)
🔠 Кто я (2014)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

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

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍1
⚙️ Подпишись на нашу еженедельную email-рассылку, чтобы быть в курсе последних открытий и тенденций в мире бэкенда.

В еженедельных письмах ты найдешь:
● Языки программирования и фреймворки для бэкенда
● Архитектура и проектирование серверных приложений
● Базы данных и управление данными
● Безопасность и защита данных
● Облачные технологии и DevOps
● API и интеграции
● Тестирование и отладка
● Инструменты и утилиты для бэкенд-разработчиков
● Лучшие практики и паттерны проектирования

👉Подписаться👈
👍1🎉1
Давайте признавайтесь в комментариях — что вам подарили? 👇
#интерактив
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Вот и новый год! 🎆 Давайте погадаем что там нас ждёт?
Делайте скриншот и присылайте в комментарии!⬇️

#интерактив
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰3👍1
💻⚙️ 3 полезные фичи PowerToys

Microsoft PowerToys — это бесплатный набор утилит для Windows, созданный для повышения продуктивности и удобства работы. Эти инструменты добавляют полезные функции, которые упрощают выполнение повседневных задач.

1️⃣ Always On Top
Закрепите важные окна, такие как терминал, мониторинг или дашборды, с помощью Always On Top. Нажмите Win + Ctrl + T, и окно останется поверх остальных. Это спасение, когда нужно держать всё под контролем во время деплоя или отладки. 🖥

2️⃣ Keyboard Manager
Создайте кастомные горячие клавиши или переназначьте неудобные комбинации для автоматизации рутинных задач. С Keyboard Manager вы можете оптимизировать работу в терминале, IDE или браузере, ускоряя взаимодействие с вашими инструментами. ⌨️

3️⃣ Shortcut Guide
Нажмите Win + Shift + / или зажмите Win (зависит от версии и конифгурации) и получите визуальную подсказку всех доступных горячих клавиш. ⚡️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Запуск Visual Studio Code в Докере: зачем и как?

Docker — это мощный инструмент для создания изолированных окружений, а запуск Visual Studio Code в контейнере может существенно улучшить ваш рабочий процесс. Давайте разберём, зачем это нужно и как настроить VS Code для работы через Docker.

Зачем запускать VS Code в Docker?
Контейнер с VS Code можно перенести на другой компьютер или сервер. Это особенно полезно, если вы работаете на разных машинах или хотите поделиться настроенным окружением с командой.

Как настроить Visual Studio Code в Docker?
Для настройки можно использовать гайд из статьи. Вот краткое руководство:

1️⃣ Создание Dockerfile
Создайте файл Dockerfile со следующим содержимым:
FROM ubuntu:latest

# Install prerequisites
RUN apt-get update && apt-get install -y \
curl \
wget \
sudo \
build-essential

# Install Code-Server (VS Code in the browser)
RUN curl -fsSL https://code-server.dev/install.sh | sh

# Expose port for Code-Server
EXPOSE 8080

# Start Code-Server on container launch
CMD ["code-server", "--bind-addr", "0.0.0.0:8080", "--auth", "none"]


2️⃣ Запуск контейнера
Запустите контейнер и откройте порт 8080 для доступа

3️⃣ Доступ к VS Code
Откройте браузер и перейдите по адресу http://localhost:8080. Здесь вы сможете работать в Visual Studio Code.

4️⃣ Сохранение данных (опционально) - чтобы изменения сохранялись, подключите локальную папку

А вы уже пробовали запускать VS Code в Docker? Делитесь своим опытом и задавайте вопросы в комментариях!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍96🔥3