User
Отладка JavaScript в Chrome DevTools для начинающих фронтендеров

Привет, Хабр! Я – Рома, front-end разработчик в компании «АйТи-Баланс». Мне не понаслышке известно, насколько ресурсозатраным (в плане времени и сил) может быть поиск и исправление ошибок в JS. Новичкам этот процесс может показаться неподъёмным камнем, но только до знакомства с отладкой в инструментах разработчика, встроенных в браузер. О ней я и расскажу, причём затрону не console.log, а куда более эффективную альтернативу.
Стратегии деплоя: как мы пришли к использованию Argo CD

Привет, Хабр! Меня зовут Егор Салиев, я DevOps-инженер в провайдере IT-решений Hilbert Team. Сегодня хочу затронуть тему, которую недавно обсуждали на Kuber MeetUp в Selectel, и которая будет интересна инженерам, занимающимся настройкой CI/CD и деплоем. Рассмотрим, как со временем менялась практика развертывания приложений в Kubernetes. Обсудим переход от ручного процесса к автоматизации и сравним две модели деплоя: push и pull.
В результате мы дойдем до современного подхода — GitOps с Argo CD. Такой метод помогает компаниям стандартизировать процессы, уменьшить количество ошибок и сбоев, ускорить вывод продукта на рынок, а также сократить расходы на инфраструктуру.
Калькулятор? Да его напишет кто угодно

[Прим. пер.: на Хабре уже был перевод этой статьи, но незавершённый примерно на четверть.]
Неправда.
Калькулятор должен показывать результат введённого математического выражения. А это намно-о-ого сложнее, чем кажется.
В этом посте я расскажу величайшую историю о разработке приложения-калькулятора.
На изображении выше показан калькулятор из iOS.
Заметили что-нибудь?
Он посчитал неправильно.
(10100) + 1 − (10100) равно 1, а не 0.
Android считает правильно. А причина, по которой он это делает, абсолютно безумна.
Cовмещаем Haproxy, Vless, WebSocket, VPN и сайт на одном порту
Cовмещаем Vless, WebSocket, VPN и сайт на одном порту средствами Haproxy, создаем альтернативу VPN на основе WebSocket.
Ory Kratos — конструктор для сборки цифрового продукта любой сложности

Привет! Я Андрей Баронский, бэкенд-тимлид в KTS.
Одно из ключевых направлений деятельности нашей компании — это аутсорс-разработка цифровых продуктов. При создании очередной системы мы хотим уделять больше времени и сил необходимым фичам для клиентов, а не настройке рутинного взаимодействия с юзерами, и для ускорения проработки основных пользовательских сценариев мы используем технологию Ory Kratos. В статье я расскажу, почему я рекомендую обратить на нее внимание и как с ней работать.
Для тех, кто впервые сталкивается с этим названием, дам немного контекста. Ory Kratos — это система API-first Identity и User Management. Она управляет всеми аспектами работы с пользователями, включая регистрацию, вход, восстановление пароля, многофакторную аутентификацию, верификацию данных и управление профилем.
Иными словами, Ory Kratos берёт на себя рутинные технические задачи, предлагая готовое, гибкое и удобное в интеграции решение.
Я решила отдохнуть от решений и поручила управление своей жизнью искусственному интеллекту

Генеративный ИИ взял на себя управление моей жизнью.
В течение одной недели он указывал мне, что есть, что носить и чем заниматься с детьми. Он выбирал, как мне подстричься и в какой цвет покрасить мой офис. Он сообщил моему мужу, что играть в гольф можно, в любовном сообщении, которое, как он сразу понял, я не писала.
Генеративные искусственные интеллекты, способные создавать исследовательские отчёты, писать электронные письма и вести беседу как человек, основываясь на шаблонах, полученных из огромных массивов данных, широко используются в различных отраслях — от медицины до бизнес-консалтинга — в качестве инструмента экономии времени. Они появляются в популярных потребительских приложениях, включая Siri и Alexa. Я провела этот, по общему признанию, нелепый эксперимент, чтобы узнать, как распространение ИИ может отразиться на самой многочисленной рабочей силе — уставших родителях.
Один эксперт назвал этот трюк «отпуском от решений». Другой сравнил его с наймом дворецкого для ведения домашнего хозяйства. Только эти ИИ-дворецкие стоят всего 20 долларов в месяц и сообщают технологической компании обо всём, что вы им говорите.
Ваш первый A/B-тест: гайд для тех, кто ещё ничего не пробовал

Если вы слышите «AB‑тесты» и у вас в голове возникает что‑то вроде «да, я это где‑то видел, но понятия не имею, как работает», то эта статья — для вас. Я объясню, что такое AB‑тесты, зачем они нужны, какие инструменты использовать и как их настроить, чтобы результат был не просто для галочки, а действительно полезным.
От установки AWX до запуска первого плейбука — настройка централизованного управления Ansible

Количество серверов в нашей инфраструктуре уже перевалило за 800, хотя еще год назад их было около 500. Для работы с этим всем активно используются решения от Red Hat. Про FreeIPA — для организации и управления доступами для Linux-серверов — мы уже писали, сейчас же я хочу затронуть тему управления конфигурациями. Для этих целей у нас юзается Ansible, а с недавних пор к нему добавился AWX — представленное полгода назад решение для централизованного управления плейбуками, расписанием их запусков, управления инвентори, учетными данными для доступа к серверам, а также механизм callback'ов для запроса конфигураций со стороны сервера.
Из-за ряда вещей мы не сразу смогли интегрировать его для работы с нашим основным проектом War Robots, но полей для проверки AWX нашлось предостаточно. Во-первых, в компании ведутся разработки новых проектов, которым нужны dev/stage-окружения и, само собой, production-окружения в перспективе. А недавно к этому добавился еще и проект для внутренней аналитики, которому потребовался полностью новый кластер.
Итак, начнём!
Пара слов о тонких шпациях, или Почему текст может казаться вам скучным

Я главред. Читаю и редактирую много коммерческих текстов. И заметила за собой интересный паттерн восприятия. Текст, который сдают в «канцелярском» виде — Times New Roman Justified — я автоматически считаю скучным. Поймала себя на этом дважды в течение пары дней и поняла, что с этим нужно что-то делать.
Как минимум, я начала такие тексты «оживлять» (присваивать свои стили в гуглодоках) и перечитывать более внимательно. Любой текст имеет право на презумпцию нескучности)) Но пойдем издалека.
Как настроить пайплайн с разделением на стадии в GitLab CI

В GitLab CI пайплайны выполняют основную роль в автоматизации процессов CI/CD. Они позволяют разбить весь процесс сборки, тестирования и деплоя на отдельные, логически связанные задачи — или "джобы". Эти джобы структурируются в стадии, каждая из которых представляет собой определенный этап работы — например, сборка, тестирование или развертывание. Такое разделение позволяет ускорить разработку и минимизировать ошибки при доставке кода на продакшн.
В этой статье рассмотрим, как настроить пайплайн с разделением на стадии в GitLab CI.
СТРАННЫЕ Люди. Как западная цивилизация вырвалась вперед?

По нашей планете распространяется необычная и СТРАННАЯ человеческая психика - Western, Educated, Industrialized, Rich and Democratic (WEIRD) - западный, образованный, индустриальный, богатый и демократичный.
Удобный CI/CD доступен каждому

Привет, Хабр! Недавно я выступал на Moscow Python Conf, где делился нашим опытом создания и использования CI/CD пайплайнов. В данной статье я расскажу об этих пайплайнах, раскрою их особенности и покажу, как они помогают нам быстро доставлять код и поддерживать высокий показатель Time To Market. Надеюсь, что наш опыт будет полезен и вам.
Человеческим языком про метрики 3: перцентили для чайников

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

Алексей Барабанов, IT-директор «Хлебница» и спикер курса «RabbitMQ для админов и разработчиков», подготовил конспект о типовых архитектурных паттернах RabbitMQ. Из него вы узнаете, как настроить пайплайны обработки и реализовать очереди повторных попыток (в том числе, через механизм dead letter exchange).
Тестирование новых версий сервисов с помощью Canary Deployment (Kubernetes)

Развертывания Canary в Kubernetes предоставляют надежный и эффективный способ постепенного развертывания новых функций, позволяя разработчикам выявлять и решать проблемы до того, как они повлияют на всю базу пользователей.
В данной статье я рассмотрел основную проблему в выпуске новых версий приложений в production, также описал суть canary deployment и процесс развертывания с помощью Kubernetes.
Как работает аутентификация в Kubernetes: ServiceAccount и RBAC

Эта статья является кратким агрегатором сведений, характеризующих аутентификацию и авторизацию в Kubernetes и позволяет познакомиться с базовыми понятиями, такими как ServiceAccount, RBAC, Role, RoleBinding, ClusterRole и ClusterRoleBinding.
Простой и удобный шаблон для bash-скриптов выполняемых по расписанию

Хочу поделиться с сообществом простым и полезным шаблоном скрипта-обёртки на bash для запуска заданий по cron (а сейчас и systemd timers), который моя команда повсеместно использует много лет.
Сначала пара слов о том зачем это нужно, какие проблемы решает. С самого начала моей работы системным администратором linux, я обнаружил, что cron не очень удобный планировщик задач. При этом практически безальтернативный. Чем больше становился мой парк серверов и виртуальных машин, тем больше я получал абсолютно бесполезных почтовых сообщений "From: Cron Daemon". Задание завершилось с ошибкой - cron напишет об этом. Задание выполнено успешно, но напечатало что-нибудь в STDOUT/STDERR - cron всё равно напишет об этом. При этом даже нельзя отформатировать тему почтового сообщения для удобной автосортировки. Сначала были годы борьбы с использованием разных вариаций из > /dev/null
, 2> /dev/null
, > /dev/null 2>&1
, | mail -E -s '<Subject>' root@
.
Пробуем новые инструменты для сборки и автоматизации деплоя в Kubernetes
Привет! За последнее время вышло много классных инструментов автоматизации как для сборки Docker-образов так и для деплоя в Kubernetes. В связи с этим решил поиграться с гитлабом, как следует изучить его возможности и, конечно же, настроить пайплайн.
Вдохновлением для этой работы стал сайт kubernetes.io, который генерируется из исходных кодов автоматически, а на каждый присланный пул реквест робот автоматически генерирует preview-версию сайта с вашими изменениеми и предоставляет ссылку для просмотра.
Я постарался выстроить подобный процесс с нуля, но целиком построенный на Gitlab CI и свободных инструментах, которые я привык использовать для деплоя приложений в Kubernetes. Сегодня я, наконец, расскажу вам о них подробнее.
В статье будут рассмотрены такие инструменты как:
Hugo, qbec, kaniko, git-crypt и GitLab CI с созданием динамических окружений.
Введение в GitHub Actions. Делаем пайплайн для деплоя Spring Boot проекта на VPS с помощью Docker

В этой статье я расскажу как построить простой пайплайн для деплоя Spring Boot проекта на сервере используя GitHub Actions и Docker.
Information
- Rating
- Does not participate
- Registered
- Activity