Социальные сети Рунета
Четверг, 16 мая 2024

OrangePi 5 с Proxmox 8 В прошлой статье я описал начальную настройку загрузчика для OrangePI 5b (для OrangePI 5 тоже сработает), а так же настройку и запуск Proxmox 7 до состояния "оно запустилось". Виртуалки там я не пробовал и оказалось, что они и не работают без дополнительных телодвижений. В э...

Linux From Scratch на Zynq UltraScale+ MPSoC В данной статье я постараюсь описать процесс создания кастомного образа Linux на Zynq UltraScale+ MPSoCс. Каждый необходимый компонент будет собран отдельно с использованием соответствующих утилит. Статья разбита на разделы, которые шаг за шагом знакомят вас с процессом сбор...

Как мы в 4 раза ускорили мобильную версию ВКонтакте Для пользователей важно, чтобы сайт загружался быстро, — мало кто готов тратить время на ожидание. А ещё загрузка страниц влияет на оптимизацию в поисковых системах: чем быстрее открывается сайт, тем выше вероятность, что его найдёт целевая аудитория. Меня зовут Тарас И...

Разработка Tizen-приложения для Samsung Smart Signage Platform(SSSP): гайд для js-разработчиков В этой статье я хочу рассказать о своем увлекательном путешествии в мир ОС Tizen. В ней я постараюсь подробно описать не только основные шаги по установке Tizen Studio и созданию проекта, но и поделюсь с вами ценными практическими советами по разработке приложений, освещая к...

Настройка алертингов из Opensearch в Telegram В «Магните» только по 1С-системам суточный объем логов переваливает за 100 Гб. Их нужно обрабатывать, использовать, выделять ценные данные. Конечно, мы пользуемся Discover и различными дашбордами и визуализациями. Но иногда необходима оперативность. Тогда пригождается систем...

Эволюция BP-сервиса компании Магнит Как на сервисе весом в 10 ТБайт ежедневно обрабатывать 1 Тбайт пользовательских данных и спать спокойно.В статье описана эволюция системы управления процессами в компании «Магнит». Некоторые детали были упрощены для лаконичности и последовательности повествования, некоторые ...

Необходимые свойства качественных рекомендаций в e-commerce Компания Retail Rocket более 10-ти лет занимается системами рекомендаций в сфере электронной коммерции. Всё это время мы сталкиваемся с неочевидными свойствами алгоритмов рекомендаций, без которых системы не будут решать свои задачи. Мы выделили и описали в статье такие свой...

Необходимые свойства качественных рекомендаций в e-commerce Компания Retail Rocket более 10-ти лет занимается системами рекомендаций в сфере электронной коммерции. Всё это время мы сталкиваемся с неочевидными свойствами алгоритмов рекомендаций, без которых системы не будут решать свои задачи. Мы выделили и описали в статье такие свой...

Гайд по релокации в Великобританию и получению ВНЖ в 2023 по Innovator Founder Visa В этой статье я постараюсь максимально подробно описать, как выглядит процесс получения инноватор визы и ВНЖ Великобритании, поделиться реальными кейсами, затыками и рисками. Статья будет полезна для стартапов, предпринимателей и других специалистов, рассматри...

Настройка C++ проекта c OpenMP. Обертывание С++ для Python с помощью pybind11 и CMake В статье описан практический пример настройки проекта на языке C++ с использованием, в качестве примера, библиотеки для многопоточных вычислений OpenMP , а также дальнейшее обёртывание для использования в проектах написанных на Python при помощи библиотеки Pybind11. В качест...

9 сервисов для доставки товаров в Россию в 2023 году. Разбираю риски Сейчас сервисов, которые привозят товары в Россию – как грибов после дождя. Среди них много мошенников. Я сам дважды натыкался.За полтора года я поработал с 12 мейлфорвардерами – сервисами по доставке товаров из стран Европы, США, Турции и ОАЭ. Более менее приличные описал н...

Бьемся с индексацией парных неравенств в планах PostgreSQL Я уже не раз писал, что условия с несколькими неравенствами (<, <=, >=, >) обычно плохо подходят для индексирования "классическим" btree, вызывают "тормоза", и необходимо придумывать различные нетривиальные подходы в PostgreSQL, чтобы добиться хорошей производите...

Точечный обход блокировок по доменам на роутере с OpenWrt Статья о том, как настроить точечный обход блокировок по нужным доменам на роутере с OpenWrt. На мой взгляд, это самый удобный способ, который можно реализовать сейчас.Я предоставляю уже готовый конфиг с самыми востребованными доменами, который можно дополнять.Настроить роут...

Гайд по релокации в Испанию и получению ВНЖ в 2023 по стартап-визе В этой статье я постараюсь максимально подробно описать, как выглядит процесс получения стартап визы и ВНЖ Испании в 2023 году, поделиться реальными кейсами, затыками и рисками. Статья будет полезна для фаундеров и сотрудников стартапов, предпринимателей и других специалист...

Трансляция видео через P2P сеть Создавая сервис видеотрансляций, рано или поздно, при увеличении числа потребителей контента, возникает вопрос о масштабировании и доставке. Вы столкнетесь с проблемой не только вычислительных мощностей, но и пропускной способности вашей сети.Я, как разработчик сервиса вебин...

Основные настройки для управления ресурсами в PostgreSQL: настройка памяти, CPU и I/O Привет, Хабр!При работе с PostgreSQL (да и в целом с любой БД) важно правильно настраивать и управлять ресурсами, такими как память, процессорное время и дисковые операции, и так далее для обеспечения лучшей производительности и стабильности работы БД. В этой статье мы как р...

Обучение с подкреплением. Q-обучение. Понятное объяснение В данной статье я подробно опишу один из методов обучения с подкреплением - обучение на основе функции полезности (Q-обучение или Q-learning). Читать далее

Интеграция Яндекс Почты со шлюзом входящей почты Хабр, привет! Этой статьёй я продолжаю цикл, посвящённый разным аспектам администрирования Организаций Яндекс 360 для бизнеса. Она будет интересна администраторам почтовой инфраструктуры, которые настраивают миграцию или сосуществование текущей почтовой инфраструктуры с...

Спринт с багами, или как (не) создать себе проблем В этой статье постараюсь описать своё видение планирования спринта с учетом тестирования спринтовых задач и исправления багов по итогам тестирования. Внезапно для меня тема вызвала дискуссию на проекте, в разработке которого я участвую. Читать далее

Подписываем образы контейнеров с помощью cosign, garantir и skopeo Открытые контейнерные платформы, такие как OpenShift, стали неотъемлемой частью современной разработки и управления приложениями. Они обеспечивают удобство и надежность развертывания приложений в контейнерах, обеспечивая изоляцию, масштабируемость и управление ресурсами. Одн...

Backup. Файловое резервное копирование бюджетного VPS Предыстория. В своё время, когда мне надо было найти решение этого вопроса на Хабре, казалось, что все статьи состоят из установки и настройки Veeam Backup, Proxmox Backup и прочих коммерческих решений для блочных устройств. У меня запросы поскромнее. SLA и 3-2-1 не требуютс...

Внутренний Я(ндекс) В этой статье я хочу описать (часть) моего опыта взаимодействия со структурой, именуемой в дальнейшем "яндекс", с точки зрения работника. Опишу собеседования и этап "входа".Да, уже были статьи про собеседование и даже в эту же структуру, некоторые из них я видел, но не во вс...

Симуляция высокоскоростных приёмопередатчиков с динамической реконфигурацией для ПЛИС Intel серии IV. Практика В прошлой статье мы описали и подготовили всё, что необходимо для сборки TestBench. В этой статье мы переходим от теории к практике. Читать далее

Настройка Wi-Fi «из коробки» Поводом написания статьи были частые вопросы новичков в чате Zyxel: "Как настроить Wi-Fi с нуля на новом автономном оборудовании Zyxel, состоящего из межсетевого экрана Zyxel ATP или USG Flex со встроенным Wi-Fi контроллером и точек доступа?Мануала и примеров в данный момент...

Security Week 2414: последствия взлома xz-utils История со взломом набора утилит xz-utils, несомненно, войдет в категорию легендарных событий в сфере информационной безопасности. Эта тщательно спланированная атака на цепочку поставок была в шаге от полного успеха. Могла быть реализована ситуация, когда десятки и сотни тыс...

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

Тюнинг Wireshark Анализатор пакетов Wireshark является мощным инструментом как для сбора, так и для анализа трафика. Ранее мы уже рассматривали использование Wireshark для работы с пакетами DNS. В этой статье мы рассмотрим различные приемы гибкой настройки данного инструмента для того, чтобы...

Бесшовный апгрейд ПО для системы хранения данных: как организовать и улучшить Любое программное обеспечение необходимо обновлять — ПО для систем хранения данных (СХД) не исключение. Логика апгрейда в СХД не тривиальна. В системе есть несколько контроллеров хранения, обновлять которые нужно последовательно, учитывая все возможные риски — потерю отказоу...

Как использовать ресурсы Kubernetes по максимуму для работы с Go-приложениями Привет! Меня зовут Антон Жуков, я руковожу группой разработки в Сбермаркете. В профессии я уже более 12 лет, с Golang работаю с 2016 года, а с Kubernetes — с 2018 года. В этой статье расскажу об основах Kubernetes, возможных проблемах и решениях, а также о том, как грам...

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

Как удалить страницу из выдачи Яндекса и Google Какие способы удаления страниц из поиска предлагают поисковые системы и как это сделать правильно.

Азы поисковой оптимизации для веб-разработчика: прокачиваем SEO с помощью кода и здравого смысла Привет, Хабр! Поисковая оптимизация обычно ассоциируется только с производством контента, а роль веб-разработчиков в ней часто недооценивают. Мы с этим не согласны. В этой статье обсудим технические детали верстки оптимизированных под поисковые движки веб-страниц, а для за...

«Отучаем» WinFXNet от жадности (часть 1) ПредысторияВ сфере АСУ ТП инженерам по работе приходится не только писать ПО, но и использовать готовое ПО от производителей оборудования. В связи с санкциями, многие поставщики покинули РФ, а оборудование и ПО необходимо продолжать эксплуатировать дальше.В данной статье буд...

Global Talent visa для IT-ника. Путь с нуля Недавно я завершил свой длинный путь и получил Global Talent visa в Великобританию. О первых выводах я поделился в канале, а сейчас хотелось бы разложить все по полочками и подготовить гайд, который поможет практически любому стать обладателем этой визы.В этой статье я поста...

[Перевод] Как мониторить Jenkins с помощью Prometheus, Node exporter и Grafana Перевели туториал, о том как установить и настроить связку Prometheus, Node Exporter и Grafana для Jenkins. Статья будет полезна тем, кто учится выставить системы мониторинга с помощью этих инструментов. Читать далее

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

Как настроить работу на Канбан-досках с нуля за 15 минут? Руководство для начинающих На канбан-досках могут быть различные виды задач, в зависимости от конкретного проекта, типа бизнеса или потребностей команды. В этой статье разберём основы ведения учета задач на Канбан-доске, необходимые колонки, виды и типы задач, в том числе Epic, userstory, task. Чита...

Путешествие в глубины сети с Shodan – поисковой системой, открывающей двери в неизведанное ВведениеКак говорится, добрый день! Сегодня я хотел бы поведать вам небольшую тайну. Мало кто знает, но неправильная настройка устройств тоже является уязвимостью и зачастую большинство атака производятся именно за счёт этого. Так как в данной статье мы будем рассматривать п...

Автоматическое обновление зависимостей в GitLab-проектах с помощью Renovate Автоматическое обновление зависимостей становится все более важным аспектом в процессах непрерывной интеграции и непрерывной доставки (CI/CD) в сфере разработки программного обеспечения. В статье описана настройка автоматического обновления зависимостей в GitLab-проектах с п...

SQL HowTo: один индекс на два диапазона В прошлой статье я показал, как условие с парой однотипных неравенств, плохо поддающееся индексации с помощью btree, можно переделать на эффективно gist-индексируемое в PostgreSQL условие относительно диапазонных типов, а наш сервис анализа планов запросов explain.tensor.ru ...

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

Необходимая защита и вооружение для БТР: история с 1936 по 1960 год. Часть 1 Статья рассматривает историческое развитие боевых транспортёров, начиная с их появления в 1936 году и до 1960 года. В статье подробно описывается эволюция защитных систем и вооружения на популярных моделях БТР.

Cotea: программный контроль исполнения Ansible Привет! Я Давид Бадалян, работаю в Исследовательском центре доверенного искуственного интеллекта ИСП РАН. В статье я хочу поговорить об Ansible – одной из самых популярных систем по автоматизации развёртывания. Стоит запустить Ansible программно, и он становится черным ...

PostgreSQL. Устройство карты свободного пространства СУБД PostgreSQL способна бысто работать с огромными массивами данных благодаря множеству различных механизмов, таких как карта свободного пространства, позволяющая за короткий промежуток времени найти страницу из основного слоя с необходимым свободным пространством для встав...

Мониторинг сервисов Carbonio Корректная работа каждого из узлов Carbonio - залог корректной работы всего почтового сервера. Для того, чтобы обеспечить максимально быстрое реагирование на сбои и заблаговременно выявлять предпосылки к их возникновению, необходимо ведение постоянного мониторинга состояния ...

Brother DCP-T426W, время нестандартных решений, идей и опыта Написать эту заметку подтолкнула недавняя статья "Купил я для MAC на m2 цветное МФУ Brother DCP-T426W с бесконечными чернилами СНПЧ. И встрял. Нету к нему драйвера" и комментарии к ней. Я опишу как бы я действовал, купив данный принтер и не найдя необходимых драйверов на сай...

Расчет количества газа необходимого для выполнения транзакции в Ethereum Привет, Хабр! Продолжаю серию статей о газе в Ethereum. ​​В этой статье подробно разберем составляющие параметра gasUsed , без которого невозможно подсчитать стоимость транзакции. Будем разбирать формулы из "желтой бумаги" и копаться в коде клиента "Geth". Это даст основу дл...

OpenVMS: операционная система для атомных станций. Redis Мы продолжаем погружение в основы операционной системы OpenVMS. В прошлых статьях мы установили её в качестве виртуальной машины, настроили сеть и активировали лицензии. Бонусом поставили туда SSH и даже организовали Web-интерфейс для удобного управления. Теперь пришла пора ...

Подбираем параметры сессии в Apache Spark, чтобы не стоять в очереди Бывало у вас так, что некоторые аналитики запрашивают побольше вычислительных ядер и оперативной памяти для своих Jupyter-ноутбуков, а у вас в это время ничего не работает? У меня бывало, ведь недостаточно уметь разрабатывать код на Spark — еще нужно уметь его настраива...

Small talk для большого успеха: общение с рекрутером, коллегами и новыми знакомыми Ребята, привет! Это Лена, методист курсов английского языка в Практикуме, преподаватель и англоговорящий интервьюер в международных IT-компаниях. Мы с вами уже знакомы по статье о собеседовании на английском для разработчиков.Я хочу более подробно раскрыть пункт о софтскилах...

В Облаке Mail.ru теперь можно загружать и читать электронные книги В Облаке Mail.ru появилась новая функция — возможность загрузки и чтения электронных книг в формате epub, она доступна как в приложении, так и в веб-версии Облака. Сервис позволяет загружать и просматривать различные текстовые документы, а также переходить к нужно...

Декодируем protobuf загружая чанки loadable-components в NodeJS У меня возникла задача спарсить данные с веб-сайта aboutyou.de. Я провел быстрый анализ страниц и обнаружил, что сайт не имеет серьезной защиты и вся необходимая информация доступна в HTML. На первый взгляд всё казалось окей. Но это, между прочим, не окей. Читать далее

Обзор библиотеки bleve в Golang Bleve предоставляет индексации любых структур данных Go, он поддерживает различные типы полей: текст, числа, даты и логические значения, а также разнообразие запросов: от простых терминов до фраз и сложных булевых запросов.В этой статье рассмотрим основной функционал этой би...

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

CV Tools — система зрения для конечных пользователей Задача создания классификатора изображений на основе пользовательского набора данных является частой задачей для AI программиста, однако автоматический инструмент, решающий задачу без участия программиста мне на глаза не попадался. CV tools — с...

Русский LLM-помощник (saiga) с кэшем, используя RAG (Retrieval-Augmented Generation) Используя технику Retrieval-Augmented Generation ("Поисковая расширенная генерация"), мы настроим русскоязычного бота, который будет отвечать на вопросы потенциальных работников для выдуманного свечного завода в городе Градск. Читать далее

Призвание быть наставником Привет, Хабр! Меня зовут Данила Гриднев. Я занимаю должность Software Engineering Manager, курирую бэкенд‑разработку различных проектов, созданных на базе блокчейн‑платформы компании Web3 Tech. Помимо этого, я уже не первый год занимаюсь онбоардингом и менторством ...

[recovery mode] Spring MVC REST API: автономная конфигурация при написании модульных тестов Создание и настройка необходимых компонентов без дублирования кодаОтправка HTTP-запросов в тестируемую систему без дублирования кода Настройка Spring MVC Test framework, при написании модульных тестов для Spring MVC REST API с помощью JUnit 5. Читать далее

PostgreSQL и временные таблицы Мы много лет уже используем в качестве основной базы данных PostgreSQL. За это время он зарекомендовал себя быстрой и надежной СУБД. Однако, есть в PostgreSQL одна проблема, с которой приходится сталкиваться достаточно часто. К сожалению, реализация логики временных таблиц в...

Микросотовые IP-DECT-системы Yealink: сбор требований и проведение радиопланирования Вторая статья посвящена особенностям работы с микросотовой системой Yealink на этапе ее внедрения.Внедрение — важнейший этап построения стабильно работающей высоконагруженной микросотовой DECT-системы. В этой статье рассмотрим следующие вопросы:• что такое радиопланиров...

Scram для создания аппаратуры. Проект по созданию системы тестирования ADAS или краткая история 8 месяцев нашей жизни Добрый день, уважаемые коллеги и друзья! Уже больше года я работаю в Армении в компании, которая занимается созданием под ключ сложных, комплексных систем. Взяли меня на роль руководителя проектов, чем собственно я и занимаюсь последние 5 с лишним лет. В данной статье я хоте...

Как построить систему найма, когда ее у вас нет и еще и удешевить Видели ли вы глаза HRD, когда ему говорят, что надо вырасти в два раза за полгода? В компании 200 разработчиков, а через полгода должно быть 400. А Артур Дементьев видел.Артур — не HR. Он не будет говорить про корпоративный дух, как правильно писать вакансии и дели...

Бэкап, бэкап и еще раз бэкап Речь сегодня пойдет об отказоустойчивости и даже о катастрофоустойчивости.Почему вроде бы правильно настроенное архивирование базы данных не всегда помогает спасти систему в случае инцидентов? Этим вопросом я, наверное, многих даже задел за живое. Одних тем, что сама постано...

Потерянный контакт с агрессией, гештальт и IT-шники Меня зовут Антон. Я гештальт-терапевт и руководитель отдела тестирования. В основе моей терапевтической практики лежит работа с IT-специалистами. В данной статье я постараюсь ёмко описать свой опыт работы с клиентами, которые потеряли контакт со своими активными, агрессивным...

Библиотека libopencm3: Быстрый старт (Часть 3). Работа с USART, прерываниями, I2C и таймерами Часть 1. Настройка окружения для работы с libopencm3Часть 2. Работа с GPIO, SPI, отладка проекта при помощи GDBЧасть 3. Работа с USART, прерываниями, I2C и таймерамиДанная статья является заключительной в цикле, посвященном быстрому старту разработки под STM32 при помощи lib...

Правильные, но (не)простые бэкапы. Как настроить резервное копирование в Kubernetes? Разработчикам и системным администраторам важно обеспечивать надежность и доступность данных в приложениях Kubernetes. Несмотря на высокую степень автоматизации и управления контейнерами, всегда остаются риски сбоев или человеческих ошибок — поэтому необходимо заранее задум...

DVC — прекрасный инструмент для DataScience Привет Хабр, меня зовут Дмитрий Несмеянов, я являюсь руководителем направления разработки ML-инфраструктуры "ЛОКО-банка". Сегодня я хочу рассказать про DVC: инструмент, который многие, незаслуженно, обходят стороной. Была хорошая статья от Райффайзен Банк, в этой статье я по...

Деревья ltree в PostgreSQL – простым языком Привет, Habr! Меня зовут Оля Плюта, я продуктовый аналитик маркетплейса Uzum Market. В этой статье я расскажу об иерархических деревьях ltree в PostgreSQL. Статья вводная, поэтому я постаралась сделать её максимально понятной и наглядной. Читать далее

Градиентный бустинг. Реализация с нуля на Python и разбор особенностей его модификаций (XGBoost, CatBoost, LightGBM) На сегодняшний день градиентный бустинг (gradient boosting machine) является одним из основных production-решений при работе с табличными, неоднородными данными, поскольку обладает высокой производительностью и точностью, а если быть точнее, то его модификации, речь о которы...

Как начать работать с IPv6 там, где его нет (часть 1) Появлением на свет этот материал обязан переводу статьи IPv6 — это катастрофа (но поправимая) (автор Mathew Duggan) и является её логическим продолжением. Если вы живёте в небольшом городе, которого в том числе нет в этом списке, и ваш провайдер в него не входит, то велика...

Ключевые слова: что это и как использовать в SEO Продвижение сайта в поиске строится на правильно подобранных ключевых словах — с их помощью пользователи находят нужный контент и определяют, насколько страница соответствует их целям. Рассказываем, что такое ключевые слова, какие они бывают и чем отличаются от поисковых...

[Перевод] Руководство по кэшированию в Django В этой статье поговорим о том, что такое кэширование и о его преимуществах, как настроить кэширование в Django, какие бэкенд-системы поддерживают Django, а также о лучших практиках кэширования. Материал будет полезен в первую очередь начинающим веб-разработчикам. Читать дале...

Российские сайты начали удалять статьи о VPN Газета «Коммерсант» заметила, что некоторые российские сайты начали досрочно удалять статьи о VPN в преддверии запрета на их «популяризацию». В заметке «Рунет самоочищается к весне» они сообщили, что форум 4PDA и корпоративное медиа Skillfactory, полностью удалили информацию...

Уравнение с тремя неизвестными: как отлавливать баги в системах хранения данных Привет! Меня зовут Никита Гуцалов, я инженер в компании YADRO и занимаюсь разработкой ПО для системы хранения данных TATLIN.UNIFIED. Вообще с системами хранения данных (СХД) я работаю уже много лет и люблю эту тему, поскольку она постоянно бросает новые вызовы, заставляя реш...

Как составить robots.txt самостоятельно Как правильно составить robots.txt и зачем он нужен, как закрыть индексацию через robots.txt и бесплатно проверить robots.txt с помощью онлайн-инструментов.

В Google Search Console произошел скачок ошибок Индексация страниц не пострадала.

10 забавных сервисов в области ИИ Привет, Хабр! Генерирую я значит через сервис ИИ новые эмодзи и думаю, а почему бы не написать прямо сейчас статью про это и поделиться с Вами 10 сервисами, которые мне показались забавными. Кого-то из Вас они могут натолкнуть на ещё более интересные идеи или мысли. Меня зов...

Создание сервиса авторизации через систему ЕСИА Всем привет. Меня зовут Динис, я старший разработчик в БФТ-Холдинге. В данной статье приведен план по созданию сервиса авторизации через систему ЕСИА. Тема будет интересна тем, кто внедряет такой сервис для своего приложения. В статье я собрал ключевые выдержки из документац...

Пишем gRPC сервис на Go — сервис авторизации В этой статье мы научимся писать полноценный gRPC сервис на Go на примере сервера авторизации с полноценной архитектурой, готовой к продакшену. Мы напишем как серверную часть, так и клиентскую. В качестве клиента мы возьмём мой сервис — URL Shortener, о котором у меня также...

Боремся с блокировками с помощью Trojan TCP на слабых устройствах c OpenWRT В данной статье рассмотрим как:Настроить обход блокировок с помощью Trojan TCP, tun2socks и bird2 (BGP) на устройствах с 8 Мб ПЗУ и 64 ОЗУ (8/64);Настроить существующее подключение к OpenVPN серверу, которое могло или может перестать работать, через Trojan TCP туннель&n...

Свой ChatGPT бот в Telegram в 2023 Я решил сделать свою интеграцию ChatGPT в Telegram, чтобы лучше понять, как работает ChatGPT API, какие настройки мне доступны и пользоваться ботом без всяких ограничений, а также иметь свободный доступ к модели GPT-4.Мне не хотелось для этого проекта держать отдельный серве...

Разрабатываем дизайн-концепцию IT-системы: этапы аналитики и дизайна Привет, Хабр! Меня зовут Юлия, я старший аналитик-проектировщик компании SimbirSoft. Работаю в сфере IT более 10 лет, в моем портфолио создание более 20 IT-систем для различных проектов: флагмана металлургии, медицинского проекта (6 стран присутствия), автомобилестроительной...

[Перевод] Автоматизация тестирования с Cucumber, Selenium и Java В этой статье я постараюсь познакомить вас с технологиями для создания чистых, устойчивых к изменениям и простых для понимания автоматизированных тестов. Надеюсь, вы узнаете что-что новое об автоматизации или хотя бы познакомитесь с моим подходом. Статья будет полезна в перв...

Обзор популярных файловых систем в системах виртуализации. Часть 2: BTRFS В прошлом материале мы рассказали о типах файловых систем и подробно остановились на системе ZFS. В второй части подробно разберем BTRFS — файловую систему для Unix-подобных ОС. Читать далее

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

Опыт использования бизнес-процессов Битрикс в рамках крупного корпоративного портала Наша команда специализируется на разработке и развитии функционала корпоративного портала группы компаний НЛМК.На практике мы сталкиваемся с самыми разными задачами: от вывода ленты новостей компании и простейших форм обратной связи до функционала оценки качества работы сотр...

Диаграммы Ганта онлайн, читалка для книг на английском, красивые данные для отчетов – эти и другие российские стартапы 10 новых российских проектов для управления проектами, финучета в бизнесе, 3D презентаций товаров и услуг, геоаналитки, ускорения индексации сайтов и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервис...

Вопросы и ответы для собеседования на позицию frontend-разработчик. Часть 2 Всем привет! В этой статье (части) рассмотрим вопросы, связанные с великим и могучим TypeScript'ом, которые задают на собеседованиях. Если вы не читали прошлую статью, где описаны вопросы по JS, вот ссылочка. Пожалуйста, не заучивайте вопросы, это вредно для вашего здоровья!...

ООП в Mathematica В комментариях к мой статье пользователь @Refridgeratorв ответ на мой вопрос написал, что в Wolfram Language (WL) не хватает следующего: "ООП, перегрузки операторов, строгой типизации, событийно-ориентированного программирования, дата-ориентированного программирования, парал...

Запуск Линукс на TV-боксе на чипе RK3528 Мне удалось запустить Armbian сборку Ubuntu на TV-боксе с новым чипсетом RK3528. Используя конфиги для Hinlink H28K, первого поддерживаемого в Armbian устройства на этом чипе.Это продолжение статьи, где я описал несколько способов достать Device Tree файлы из Андроид установ...

Веселые уроки WinCC OA. Настройка сервера протокола МЭК 60870-5-104 Говоря сухим языком, МЭК 60870-5-104 – протокол телемеханики, предназначенный для передачи сигналов в систему верхнего уровня, регламентирующий использование сетевого доступа по протоколу TCP/IP. Чаще всего применяется в энергетике для информационного обмена между энергосист...

Restic: эффективное резервное копирование из Stdin Про restic я уже рассказывал в статье Бэкап-хранилище для тысяч виртуальных машин свободными инструментами, с тех пор он остаётся моим любимым инструментом для бэкапа.Сегодня я опишу вам готовый рецепт того как настроить эффективное бэкапирование чего угодно прямо из stdin, ...

Дизайн-система Gravity UI: как легко построить свой интерфейс Всем привет, я Алексей Сизиков, руководитель отдела User Experience в Yandex Cloud. В этой статье я хочу поделиться новостью: мы выпустили нашу дизайн-систему и библиотеку компонентов Gravity UI в опенсорс. Под катом — рассказ, зачем мы сделали Gravity UI, как его ...

Команда нагрузочного тестирования? Дайте две! Почему иногда подрядчик бонусом к внутренней команде — это хорошая идея Привет! Меня зовут Юля Шамина, я руководитель IT-проектов в СберМаркете. Хочу поделиться нестандартным по всем меркам кейсом, как мы подготовили наши сервисы к высоким предновогодним нагрузкам за 3 месяца благодаря челленджу внутренней команды нагрузочного тестирования. ...

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

Актуальные методы проверки работоспособности больших и высоконагруженных сетей. Протоколы мониторинга Привет, Хабр!В данной статье мы рассмотрим актуальные методы проверки работоспособности сетевого оборудования. Конкретно в этой статье мы поговорим про протоколы мониторинга. Статья является переваренным опытом компании Netopia, которая занимается разработкой программного о...

Xiaomi Redmi Note 13 и Redmi Note 13 Pro: универсальные телефоны на все случаи жизни. На что они способны? Недавно представленные компанией Xiaomi телефоны Redmi Note 13 и Redmi Note 13 Pro поступили в продажу в России. Оба устройства внешне похожи, и если сравнивать их в чёрном цвете, порой сложно определить, какая именно модель у вас в руках. Но это первое впечатление. На самом...

Вступил в силу запрет на статьи о Tor и VPN С сегодняшнего дня, 1 марта, Роскомнадзор может вносить в реестр запрещённых ресурсов страницы с информацией ‎о способах, методах обеспечения доступа к ресурсам и (или) информационно-телекоммуникационным сетям, доступ к которым ограничен на территории РФ — проще говоря, бани...

О разжиревшей ИС «Управления проектами» или как мы боролись с ограничениями SharePoint в legacy проекте В этой статье мы опишем наш опыт работы с очень большой системой управления проектами, реализованной на SP, с какими ограничениями мы столкнулись и как добились похудения данной ИС. Читать далее

Зачем банкам менять интерфейсы, и как это сделать, если вы тоже хотите Если поставить цифровые продукты в один ряд с объектами промышленного дизайна, первые отличаются большей пластичностью и стремлением к изменениям из-за более короткого дизайн-цикла.Финтех давно перестал быть чем-то исключительным, став доступнее для широкой аудитории. Управ...

I2P + OpenFire Собственный мессенджер в скрытой сетиПоднимаем XMPP сервер в I2P. Статью также можно использовать как общее руководство по настройке и других сервисов в скрытой сети, а как именно, читайте далее... Читать далее

[recovery mode] Сканируем сеть. Собираем информацию об организациях Снова рад приветствовать всех подписчиков и читателей! Сегодня хочу представить вашему вниманию несколько инструментов OSINT подходящих для сканирования сети и сбора информации об организациях. В этой статье подробно разберём установку, настройку и использование каждого инст...

AITU Military CTF 2024:Digital Fortress: Как мы инфраструктуру для полигона поднимали. Часть 2 Перед прочтением данной статьи настоятельно рекомендую ознакомиться с 1 частьюВведениеДанная статья является продолжением статьи про поднятие киберполигона AITU Military CTF, в этой части мы рассмотрим глобальные изменения касающиеся инфраструктуры, такие как настройка сети ...

Красавица и HTML Injection. Почему HTMLi не только про дефейс Привет, Хабр. Сегодня мы посмотрим на достаточно тривиальную тему с совсем нетривиальной стороны. Пожалуй, для каждого вебера HTML-инъекции являются темой, которой зачастую уделяют не очень много внимания. Взять даже собеседования: когда в последний раз вас спрашивали не об ...

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

Создание системы управления электродвигателями в наноспутнике Введение:Целью работы является создание системы управления электродвигателями в наноспутнике. Установка положения спутника в пространстве осуществляется с помощью электродвигателей, снабженных маховиками. В докладе рассмотрен один из возможных алгоритмов управления электродв...

Расчет количества газа необходимого для выполнения транзакции в Ethereum. Часть 2 — storage Привет всем! В прошлой статье мы с вами изучили общую механику расчета газа при выполнении транзакций. В этой статье мы сфокусируемся на самых "дорогих" операциях работы с хранилищем смарт-контракта (storage), а также пройдемся по истории EIPs, связанных с расчетом газа в Et...

Техники обучения, которые вошли в мою рутину Я являюсь Vue-фронтенд разработчиком. И как и любому программисту, мне приходится учить большие объемы материала с целью повышения квалификации или прохождения интервью. Здесь я опишу способы, которые я использую для упорядочивания и запоминания материала. Я не буду подробно...

Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии В этой статье показано, как приготовить систему «холодных» конфигов для большого Android-приложения, построенного на многомодульной архитектуре. Под «холодными» конфигами здесь подразумеваются настройки приложения, которые нужно делать локально на девайсе без необходимости з...

Как обычному фронтендеру стать по-настоящему классным фронтендером Меня зовут Илья, я фронтенд-разработчик в Авито, и я долго искал эффективный способ развития своих скиллов. Под катом я подробно описал весь свой путь и рассказал, получилось у меня это или нет. Интересно будет всем: и тем, кто только ищет свой путь, и тем, кто уже всё знает...

Устанавливаем и настраиваем Marzban Marzban — это инструмент управления прокси-серверами, который предоставляет простой и удобный пользовательский интерфейс для управления сотнями учетных записей прокси на базе Xray-core и созданный с использованием Python и ReactJS. В данной статье рассмотрим устан...

Как установить «МойОфис Частное Облако 2» в связке с «МойОфис Почта 2» Продукты Microsoft Exchange Server и SharePoint Server широко используются во многих средних и крупных организациях в России. Замена этой связки часто требует от компаний складывания лицензионно-технологического "пазла" из нескольких решений от разных производителей. При это...

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

[Перевод] Как в 180,000 раз ускорить анализ данных с помощью Rust В этой статье я опишу одно из последних своих дерзновений в сфере оптимизации производительности с помощью Rust. Надеюсь, что в ней вы откроете для себя какие-то новые приёмы для написания быстрого кода на Rust. Читать дальше →

Git: Очередной лист Вопросов и Ответов В статье я постарался затронуть базовые темы в виде вопрос/ ответ на горячо любимые темы на собеседованиях и не только. Читать далее

Миграция с Webpack и react-scripts на Vite: Путь к Быстрому и Легковесному React Я работаю фронтенд-разработчицей в IT-компании, и многие из моих проектов на протяжении долгого времени собирались с использованием Webpack. Настройка Webpack иногда бывала сложной, но в целом он справлялся с задачей сборки проектов. Однако в последнее время мои коллеги нача...

Мой 2-х месячный опыт настройки Selenoid под Android за 10 минут Если вы читаете эту статью, то наверняка слышали о Selenoid. Это мощное решение написанное на Go от компании aerokube для управления Docker-контейнерами, в которых «завёрнуты» все необходимые программы и драйверы для тестирования в браузерах или на Android-эмуляторах.Как утв...

Дашборд управления бизнесом (P&L) в Metabase за 5 дней Один из важнейших инструментов в моей работе — дашборд с данными о прибылях и убытках компании P&L (он же БДР, он же отчет о финансовых результатах). Он помогает контролировать рентабельность бизнеса, эффективность отделов компании, прогнозировать прибыль и строить гипот...

Windows 7 Federated Search Windows Vista включала в себе улучшенный поиск, который позволял пользователям искать локальные файлы, письма и другие необходимые вещи. С выходом Windows Search 4.0, эффективность поиска возрасла, предоставляя дополнительные поисковые настройки. В Windows 7 помоимо локал...

Первичная настройка IP-телефонов Yealink В статье мы обсудим процесс базовой настройки IP-телефона Yealink: настройку учетной записи, справочников, программных клавиш, функций вызова и персонализации. Информация, обсуждаемая в статье, рассчитана, прежде всего, на специалистов, которые впервые сталкиваются с н...

Как быстро интегрировать Систему быстрых платежей (СБП) в приложение на Flutter Всем привет! Меня зовут Мурат Насиров, я Flutter-разработчик в Friflex. Мы разрабатываем мобильные приложения и специализируемся на решениях для ритейла. На одном из наших проектов мне пришлось столкнуться с внедрением кнопки оплаты через Систему Быстрых Платежей (СБП). В эт...

Google случайно слила в Сеть переписки пользователей с собственным аналогом ChatGPT Компания Google активно работает над блокировкой индексации разговоров пользователей со своим новым генеративным ИИ-ассистентом Bard на своей же поисковой платформе.

Какую базу данных выбрать для Home Assistant На случай, если ещё не встречались с HA (Home Assistant) - это opensource веб сервис для умного дома, доступный как на облаке, так и в виде self hosted, который позволяет подключить к себе кучу всяких устройств и настроить для них любые желаемые автоматизации. Например, откр...

Airflow в Kubernetes. Часть 2 Приветствую!В прошлой части мы развернули основные сервисы Airflow в k8s. В этот раз разберемся, как можно синхронизировать код DAD'ов с удаленным репозиторием, поймем, как перманентно сохранять логи, а также настроим HTTPS-соединение для UI! Читать далее

Как быстро и безболезненно выбрать лучшую из десяти выборок Всем привет! Меня зовут Мария Ходякова, я продуктовый аналитик Тинькофф Страхования. В этой статье мы поговорим о множественном тестировании. Хорошо известен такой подход, как А/В-тестирование, когда в тесте участвуют две выборки. Но иногда нужно сравнить больше двух выборок...

Торговый бот на Python с нуля (с использованием Binance API), часть 2 Продолжение первой части статьи о создании торгового бота на python с нуля с использованием Binance API!В данной статье мы напишем полностью рабочую реальную стратегию с использованием биржевых данных. Я расскажу что такое линии Боллинджера, а также о других популярных страт...

Опросы с использованием метода Дельфи Метод Дельфи, представляет собой уникальный подход к систематическому и структурированному сбору мнений экспертов для прогнозирования или решения сложных проблем. Цель статьи — не только описать метод Дельфи, его основные этапы и применение, но и показать, как его преимущест...

Как настроить голосовой помощник на телевизоре Главная «фишка» любого умного телевизора – голосовой помощник. Важно лишь правильно его настроить, и в сегодняшней статье мы расскажем, как это сделать.

Sliver C2: Подробный туториал Данная статья содержит подробный разбор нашумевшего в 2023 году инструмента Sliver, который набирает популярность среди хакеров. Подробнее об этом описано в новостях xaker.ru. Приятного прочтения! Читать далее

Как мы упростили работу с данными с помощью пайплайна: пошаговый план Привет, меня зовут Руслан Шкарин. Я Senior Software Engineer и это моя первая статья в DIY-медиа вАЙТИ от beeline cloud. Расскажу, как занимался построением пайплайна для сбора и анализа логов системы в реальном времени для сервиса, который обходил сотни ...

Как выпустить ML-сервис в прод малыми силами: кейс работы в облаке Создание ML-модели — сложный и ресурсоёмкий во всех смыслах процесс. Но часто выкатка сервиса на основе модели в прод оказывается ещё сложнее: требует подготовки платформы, выделения ресурсов, настройки программных интерфейсов для передачи данных из модели конечному пользо...

Объединяем два крупнейших Ecom на разных стеках в одну общую CRM Привет! Меня зовут Данила Соловьёв, я руковожу направлением PHP — самым крупным подразделением в отделе разработки AGIMA. Поделюсь историей о том, как мы встроили новую CRM-систему в два абсолютно незнакомых нам IT-ландшафта и тем самым спасли сейлзов двух крупных интернет-м...

[Перевод] Учимся использовать модуль Ansible Shell для выполнения удалённых команд Мы перевели статью, где подробно рассматривается использование модуля Ansible Shell и различные способы выполнения удалённых команд на узлах в рамках работы по автоматизации. В статье рассматриваются различные опции и модули для выполнения удалённых команд, а также их различ...

Работа с UI-автотестами под Android: от запрета мерджа к особенностям запуска UI-автотесты под Android — отличный инструмент, который позволяет кратно сократить время на проверку разрабатываемых фич и свести к минимуму участие в ручном регрессионном тестировании инженеров по обеспечению качества. Но работать с UI-тестами надо правильно — иначе все мож...

Давайте поговорим о Kubernetes Всем привет! Меня зовут Андрей, я DevOps инженер.Когда я начинал изучать Kubernetes (K8s), я перечитал много статей, и, что в статьях, что в документации, информация была сильно разрознена, обрывочна. Сложно было скомпоновать информацию в единое целое. На тот момент, мне бы ...

Автоматизируем сборку и деплой приложения в GitLab CI/CD: подробное руководство с примерами При разработке приложений рано или поздно наступает момент, когда заниматься развёртыванием вручную становится затратно и неудобно. Как следствие на помощь приходит автоматизация этого процесса с помощью специально настроенных пайплайнов непрерывной интеграции и непрерывной ...

Опыт автоматизации управления FPGA-стендами для распределенной команды: отказ от готового решения и работа над ошибками В software-разработке с автоматизацией обычно все неплохо: более-менее понятно, как настроить CI и автоматизировать отдельные этапы CI-конвейера. Есть множество готовых решений и практик. Но, когда речь заходит об автоматизации тестирования на «железе», появляется множество ...

[Перевод] std fs в Rust медленнее, чем Python? Нет, это аппаратный баг В этой статье я поделюсь с вами долгой историей, которая начинается с op.read() opendal, а заканчивается неожиданным поворотом. Это путешествие оказалось для меня достаточно поучительным, надеюсь, и для вас оно будет таким же. Я постараюсь максимально точно воссоздать с...

Как сверстать письмо, чтобы оно дошло до получателя таким, как задумано В статье расскажу и покажу, как сверстать письмо, чтобы оно наверняка правильно отображалось во всех почтовых клиентах — особенно в Outlook, который до сих пор возглавляет подборки по популярности в РФ. Читать далее

Какие альтернативы есть у Hyperloop One? Разбираемся В предыдущей статье мы подробно рассказали про историю проекта Hyperloop One, приказавшего долго жить. Но он был не единственным подобным начинанием. Возможно, мы все-таки получим работающий гиперлуп уже в этом десятилетии.  Читать далее

Волшебная таблетка, или Централизованная настройка параметров безопасности ОС Astra Linux с помощью ALD Pro Привет, Хабр! Я инженер в «Группе Астра» из команды ALD Pro. В статье расскажу, как мы создали расширенные групповые политики и инструмент для их применения на базе существующего механизма групповых политик ALD Pro. Благодаря этому получилось упростить настройку конечны...

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

Как собрать свой собственный x86 Wi-Fi роутер Как и обещал в прошлой статье расскажу, как собрал и настроил свой собственный x86 Wi-Fi роутер с OpenWrt. Читать далее

Microsoft заблокирует часть настроек Edge, если Windows неактивирована Microsoft планирует ограничить доступ к настройкам браузера Edge для пользователей неактивированных копий Windows. Компания тестирует это изменение в актуальных сборках Microsoft Edge на канале Canary. Если Windows неактивирована, то в разделе «Параметры» на всех страницах ...

Beego в Golang для начинающих Привет, Хабр!Beego – это фреймворк для разработки веб-приложений на языке Go, ориентированный на быстрое развертывание и простоту использования. В его основе лежит идея создания полнофункциональных приложений с минимум усилиям на настройку и кодирование. Это достигается за с...

Паттерн Aggregate Outside Руслан Гнатовский aka @Number55 в свой статье Когда ни туда, ни сюда, или в поисках оптимальной границы Domain слоя описал известную проблему протекания бизнес-логики из агрегата, в случае если эта логика зависит от данных которые находятся вне агрегата, и предложил нескольк...

Кратко о Patterns & Practices: SharePoint Guidance Интро В данной статье я хочу произвести обзор руководства под названием “SharePoint Guidance” от подразделения Microsoft patterns & practices. Данное руководство предназначено разработчикам/архитекторам SharePoint, в нём описаны основные принципы построения систем на д...

Настройка CI/CD для Gitlab-репозитория: схемы и гайд по шагам Рассказываем, как работать с CI/CD, о шагах при настройке сервера и о полезных командах, которые помогут в работе. Привет! Меня зовут Николай, я Backend-разработчик в РЕЛЭКС.В статье ты найдешь полезный теоретический материал, сравнение инструментов CI/CD и подробный гайд п...

Что такое архив в Ватсапе и как им правильно пользоваться Хоть популярность Телеграма и растет с каждым годом, но количество переписок в Ватсапе нисколько не уменьшается. Именно поэтому необходимо поддерживать в приложении порядок. Кто-то для этого просто удаляет ненужные чаты и диалоги. Но с таким подходом можно легко потерять ва...

T-test. Зависимость от независимости Привет, Хабр! В статье подробно рассмотрим область применения самого базового статистического критерия Стьюдента. Посмотрим, как он ведёт себя, когда мы не хотим отдавать качество подбора наших групп на волю случая. Читать далее

Google официально завершил переход на mobile-first индексацию Google официально завершил переход на mobile-first индексацию. «Спасибо владельцам сайтов, SEO-специалистам, веб-разработчикам, дизайнерам и всем, кто работает над веб-сайтами, за то, что помогли сделать мобильную сеть успешной!» - говорится в блоге Google Search Central. С ...

Почему инфраструктура big tech обычно состоит из самописных решений Привет! Предлагаю поговорить о том, почему крупные IT‑компании так любят создавать в своей инфраструктуре собственные решения. Казалось бы, напрашивается ответ: NIH‑синдром и ничего более. Но такой ответ вряд ли может считаться сколько-нибудь полным,...

Язык Crystal и математика Если вам вдруг захотелось посчитать собственные значения матрицы, решить задачу линейного программирования или оптимизировать нелинейную функцию, то вы может взять питон со SciPy, можете взять R или Matlab\Octave, для любителей экзотики есть Julia, а те кому важен каждый тик...

Ansible + Grafana Loki: Настраиваем отправку уведомлении в чат после логина на сервер по SSH Не задумывались ли вы когда-нибудь над тем, чтобы знать о каждом входе на ваши сервера? Меня охватила такая же паранойя: а вдруг, когда я сплю, на мой сервер заходит домовой и творит там ужасы? Хотя логин на наши сервера и запрещен по паролю, а SSH-ключи есть только у меня, ...

@Scheduled + @Async (в Spring Boot) Недавно отвечал на вопрос почему аннотации @Scheduled и @Async иногда используют вместе, данный вопрос попался человеку на собеседовании.Многие начинающие разработчики на java не до конца понимают в каких потоках происходит выполнение программы в таком случае.В данном матери...

Сплит клавиатура Lily58 — впечатления На Хабре уже были статьи про эту клавиатуру, но у авторов уже были собранные клавиатуры. Оказалось, сборка - это очень увлекательное занятие, которое обязательно хочется повторить в будущем. Далее опишу свои впечатления о процессе и самой клавиатуре. Читать далее

Тест-дизайн на практике: комбинируем разные техники тестирования, на примере проверки систем оплаты Привет, Хабр! Меня зовут Сергей, я тестировщик в “Петрович-Тех”. В этой статье хочу поговорить о комбинировании различных техник тестирования и поделиться опытом тест-дизайна для проверки системы оплаты.На всем своем профессиональном пути тестировщика я так или иначе всегда ...

Тестируем приложение как сын маминой подруги или взгляд на Trace Based Testing Привет! Меня зовут Сергей, я бэкенд разработчик команды SEO в Банки.ру.В этой статье хочу описать свое знакомство с техникой Trace Based Testing (TBT): • расскажу о концепциях, которые чаще всего используются сейчас в тестировании• кратко опишу, что такое distributed ...

Безопасный интернет через Termit: 11 шагов для развертывания СТД Привет, Хабр! Сегодня мы подробнее поговорим про Termit 2.1 —  систему терминального доступа. Она предназначена для организации удаленного доступа конечных пользователей к приложениям, опубликованным на терминальных серверах. В этой статье я расскажу о том, как мы делал...

Первый релиз года в альтернативном браузере Vivaldi: полная синхронизация истории и не только Команда набирающего популярность браузера Vivaldi объявила о выпуске крупного обновления, которое в основном затрагивает систему синхронизации данных между устройствами.  Как отмечают разработчики, Vivaldi Sync теперь синхронизирует полную историю просмотров (в за...

Windows 11 скоро может получить отдельную страницу продвинутых настроек системы Сделать это планируется через приложение Dev Home. Его уже могли заметить у себя некоторые пользователи Windows 11 после установки очередных обновлений во вторник. Читать полную статью

Первый учебник не о том, ЧТО нужно знать QA (про это сказано достаточно), а КАК правильно учиться и быстрее найти работу Гуд ньюз эвриван! У нас с друзьями есть традиция — каждый год мы пишем хотя бы один большой IT-учебник. В 2023 году мы выпустили бесплатный 100-Year QA-Textbook - интерактивный учебник по тестированию на английском и русском языках. 700+ страниц (без учета картинок!), 4...

Что такое синхронизированные векторные измерения и как их моделировать Привет, Хабр! Представим, что перед нами такой сложный объект для управления, как электроэнергетическая система России. Чтобы рассматривать ее в виде единого целого, нужны высокоточные измерения из различных точек энергосистемы, зачастую географически удаленных друг от друга...

Квест по синхронизации аналитического и оперативного хранилищ в реальном времени без потерь на сотнях терабайт данных Я работаю в компании STM Labs, где мы строим большие высоконагруженные системы класса Big Data. Эта статья написана по мотивам моего выступления на конференции Saint Highload 2023. Хочу рассказать вам увлекательную историю про то, как мы искали лучшее решение по синхронизаци...

Оценка тестового покрытия интеграционных тестов с помощью JaCoCo. Инструкция к применению Всем привет! Меня зовут Александр и в hh.ru я занимаюсь решением инфраструктурных (и не только) задач, касающихся автотестирования. В статье я опишу один из подобных кейсов. Читать далее

Как установить MikroTik CHR в облаке? Шпаргалка MikroTik Cloud Hosted Router (CHR) — удобное решение для создания виртуальных маршрутизаторов в облаке. С помощью него можно эффективно управлять сетевым трафиком, регулировать безопасность и оптимизировать работу в облачной среде. Меня зовут Кирилл, в этой статье я подроб...

Как правильно описывать и декомпозировать задачи в таск-трекере. Рекомендации и примеры В чем же особенность декомпозиции рабочих задач? Наша статья даст понимание, зачем нужна декомпозиция и как описывать задачи, а также поможет вам улучшить ваши процессы. Читать далее

Инсталляция и первичная настройка Sangfor Cloud Platform. Часть 1 В предыдущих статьях мы обсудили Sangfor HCl (Hyper Converged Infrastructure). Рассмотрели установку решения и нюансы типа подключения СХД и настройки aSAN. Сегодня мы расскажем об облачном портале SCP (Sangfor Cloud Platform) — решении для управления ресурсами на базе ...

Личный прокси для чайников: универсальный обход цензуры с помощью VPS, 3X-UI, Reality/CDN и Warp На фоне прошлогоднего обострения цензуры в РФ, статьи автора MiraclePTR стали глотком свободы для многих русскоязычных айтишников. Я же хочу приоткрыть дверь к свободной информации чуть шире и пригласить "не-технарей" («чайников»), желающих подн...

OpenAI может создать свою поисковую систему и потеснить Google В рамках платной подписки на ChatGPT ожидается появление поисковой системы

[Перевод] Аутентификация по протоколу SAML с помощью OpenAM на примере Yandex Cloud В данной статье описывается, как настроить вход по технологии единого входа (SSO) по протоколу SAML в Yandex Cloud через Access Management платформу с открытым исходным кодом OpenAM. Читать далее

Работа с A/B-тестами в крупной соцсети: подробно об A/B платформе Одноклассников ОК — социальная сеть, которой ежемесячно пользуется более 36,5 млн уникальных пользователей из России. Наш продукт имеет сложную архитектуру, включает десятки сервисов и инструментов, которые мы постоянно совершенствуем и добавляем новые. Чтобы в процессе выкатки обновлений ...

Google добавляет в Pixel Launcher возможность менять поисковую систему по умолчанию Изменение поисковой системы на телефонах Google Pixel влечёт за собой изменение значка в строке поиска.

Автопровижининг телефонов Yealink. Часть 3 Мы продолжаем публикацию цикла статей, посвященных автопровижинингу IP-телефонов Yealink. Первая часть цикла была посвящена обзору функции автопровижининга, во второй части рассмотрен принципы работы с конфигурационными файлами. Завершающая статья цикла посвящена практическо...

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

Структура драйвера Linux для одноплатного компьютера Здраствуйте меня зовут Дмитрий. Недавно я написал статью как собрать прошивку для одноплатного компьютера Orange PI i96 с нуля. Если вы не читали то очень советую. И там я упоминал что для того чтобы собрать прошивку на новом ядре Linux, мне пришлось переписать драйверы с уч...

Настройка протокола mKCP в панелях 3X-UI и X-UI Сегодня мы поговорим о настройке подключения к прокси-серверу по протоколу mKCP в известных web-панелях X-UI и 3X-UI. Про mKCP, как и про многие другие актуальные на сегодняшний день прокси- и VPN-протоколы я недавно рассказывал в статье "Надежный обход блокировок в 2024: пр...

Микросети: настройка коммутации Привет, читатель! У меня в квартире есть множество вещей, которым требуется постоянный доступ к локальной сети и интернету. Планируя ремонт, я учел подключение приставок, телевизоров и ПК по кабелю для стабильности. Однако такой вариант ограничивается возможностями маршрут...

Почему FilamentPHP — это хорошее решение для создания CMS Привет, Хабр! Меня зовут Егор Черненок, я работаю PHP-разработчиком в AGIMA. В этой статье расскажу вам о FilamentPHP. В документации говорится, что это набор красивых Fullstack-компонентов для Laravel. От себя добавлю, что он отлично подходит для построения CMS. А теперь по...

ИИ в 3D: Где мы сейчас и какое будущее нас ждёт? (Часть 3) Мир, в котором мы с вами живём и который непосредственно ощущаем, является объёмным: расположение любой точки в нём можно описать тремя координатами, и этот факт элементарно зашит в нашу природу. Чем больше “понимания” система искусственного интеллекта будет иметь относитель...

Яндекс рассказал о новых настройках в поисковом автотаргетинге Это настройки в динамических объявлениях, обновление расширенного превью и статистики

Это самый простой способ передать файл с Андроида на Андроид. С компьютером тоже работает Пару лет назад мы уже рассказывали о разных способах передачи файлов с телефона на телефон, предлагая в качестве средств отправки специальные приложения, облачные сервисы и даже Bluetooth. Но тогда несправедливо был обделен вниманием, пожалуй, самый удобный и быстрый вариан...

Как мы созвонились компанией в 10 тысяч человек В Тензоре около 7 тысяч сотрудников и более 100 филиалов по всей стране - такой компании категорически необходима видеокоммуникация. Существует 2 соизмеримых по издержкам решения: использовать существующий продукт или реализовать свой.В этой статье я, разработчик отдела веби...

Расширяем тестовый фреймворк с помощью Pytest-плагинов. Часть 1: теория Всем привет! Меня зовут Александр Волков, я занимаюсь интеграционным и компонентным тестированием в YADRO. В числе продуктов компании есть системы хранения данных и, говоря о тестировании, я буду иметь в виду в первую очередь работу с СХД. Однако описанные подходы пригодятся...

Гайд по авторизации в Micronaut Всем привет! В предыдущей статье я описал процесс аутентификации в Micronaut. Но аутентификация без авторизации мертва! Ну или крайне мало применима. Поэтому предлагаю заглянуть под кат и оценить различные механизмы авторизации в данном фреймворке, а заодно узнать, как это ...

WebRTC. Как установить p2p соединение между браузерами WebRTC позволяет браузерам обмениваться информацией напрямую без сервера. Можно передавать видео, звук и данные. Установить WebRTC соединение можно разными способами. В статье описано как WebRTC соединение устанавливается между пользователями редактора схем dgrm.net. Читать ...

Symfony под капотом: Symfony Messenger и механизм повторной обработки сообщений при ошибках Привет! Меня зовут Ваня, последние несколько лет я занимаюсь backend-разработкой в Сравни. Моя команда разрабатывает интеграции с сервисами наших партнёров, код пишем на PHP и Symfony Framework.При работе с интеграциями мы часто имеем дело со сбоями в сторонних сервисах, и н...

XeLaTeX для оформления текстов: Текст, рисунки, таблицы, автоматизация В статье рассмотрим пример того как в XeLaTeX можно настроить форматирование отдельных элементов текста, автоматически создавать таблицы, рисунки. В первую очередь будет интересна тем кто собирается оформлять ВКР (выпускная квалификационная работа) бакалавра или магистра, пи...

Яндекс запустил Нейро. Рассказываем, как он работает Сегодня мы запустили новый сервис Нейро — новый способ поиска ответов на вопросы. Пользователь может задать Нейро любой вопрос, а тот сам подберёт подходящие материалы в Поиске, проанализирует их и соберёт найденную информацию в одном ответе, подкрепив его ссылками на источн...

[Перевод] Сравнение MicroK8s c Managed Kubernetes Clusters, K3s и Minikube Microk8s - это легкий, простой в установке дистрибутив Kubernetes, обеспечивающий полнофункциональный кластер на одной виртуальной машине. В последние годы он завоевал популярность благодаря своей простоте и удобству использования, особенно в ср...

[Перевод] Bash Auto Completion в Linux Пользователи взаимодействуют с Linux при помощи многочисленных команд, вводимых в командной строке. Учитывая разнообразие этих команд и их параметров, не так просто запомнить все наизусть.Однако в Linux предусмотрена удобная функция автодополнения для Bash. Этот инструмент, ...

Антимонопольное дело Google завершено: поисковому гиганту грозят санкции Исторический антимонопольный процесс по делу Google завершен, и судье Амиту Мехте предстоит решить судьбу доминирования компании в поисковой выдаче. Основные аргументы сводились к тому, является ли доминирование Google в области поиска и поисковой рекламы следствием антиконк...

«16+» или делаем шаблон страницы в XWiki на примере спецификации API Пусть вас не смущает надпись: «16+» в заголовке. В статье не будет ни слова о безудержном кутеже с куртизанками за игрой в блэк-джек.Просто я решил очередной статьей отпраздновать выпуск в свет 16-й версии XWiki – «open-source аналога Confluence» (по мнению её разработч...

Ручная пила для PHP-монолита Привет! Это третья и заключительная часть истории поиска надёжного способа работы с транзакциями в распределённых системах. В первой части мы поставили задачу, определили критерии оценки и набросали варианты. Во второй части я подробно разобрал решение на Temporal. В этой с...

Как мы управляем инфраструктурой на более 1000 серверов при помощи Ansible Привет, Хабр! Мы системные инженеры X5 Tech — Алексей Кузнецов и Борис Мурашин. У нас за плечами больше 15 лет опыта, в том числе поддержка сервисов Rapida, CyberPlat, TeleTrade, сопровождение стека BigData и внедрение кластеров Hadoop. В этой статье мы расскажем, как выбира...

Поддержка диалекта YDB в инструменте миграции Liquibase В этой статье мы подробно рассмотрим процесс интеграции одного из наиболее известных и широко используемых в мире Java инструментов для управления миграциями - Liquibase - с YDB. Читать далее

Своё кастомное межсервисное взаимодействие с блекджеком и gRPC Привет, Хабр! Меня зовут Ильяс. Мы с командой делаем собственный Service Mesh в Ozon Tech, и в этой статье я расскажу, как можно за вечер реализовать свое супер кастомное межсервисное взаимодействие. К концу статьи мы с вами напишем современные алгоритмы балансировки, настро...

Microsoft Edge Canary получил обновлённый инструмент «Снимок экрана» с ИИ и OCR В актуальных сборках Microsoft Edge для канала Canary значительно обновился инструмент для быстрого и удобного создания скриншотов. Отныне эта функция позволяет делать скриншоты всего экрана, поддерживает искусственный интеллект, оптическое распознавание символов (OCR) и по...

Обзор языка Erlang и его синтаксиса Привет, Хабр! История Erlang 80-х годах прошлого века в стенах шведской компании Ericsson. Он был разработан первоначально для нужд телекоммуникаций, Erlang задумывался как инструмент для создания распределенных, отказоустойчивых систем с возможностью быстрого обновления код...

Еще один год из жизни ReactOS Здравствуйте, дорогие друзья!Вот и заканчивается 2023 год. В этой статье я хочу продолжить начатую в 2021 году традицию вспоминания наиболее важных событий из жизни ReactOS за год. То что статьи не появляются на Хабре, не значит что система мертва. Медленно, но верно, в Reac...

[Перевод] Непрерывность функционирования систем жизнедеятельности: Совокупность циклов обратной связи Наблюдая за программными системами и процессами жизнедеятельности с точки зрения непрерывности функционирования систем, я намерен углубить свое понимание жизни как системы в этой статье.В первой половине исследования я расскажу вам о том, как разработчики программного обеспе...

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости. Наши усилия направлены на то, чтобы в реальном времени следить за тем, как быстро работают наши сервисы и платформа. Благодаря инстру...

Путь из бизнес-аналитика в программного роботизатора Привет, Хабр! Меня зовут Леонид Бычков, я руководитель продукта ROBIN CLOUD в команде ROBIN, входящей в SL Soft. Это моя первая статья здесь, и для знакомства расскажу, как пришёл к тому, чем сейчас занимаюсь, — опишу своего рода путь в ИТ без программирования. Уверен, что N...

Автосборка Fsbl, U-Boot, linux kernel и установка debian для amd64 для Zynq Ultrascale zcu106 В данной статье описывается способ создания минималистичного образа sd карты c debian amd64 на примере отладочной платы с zynq ultrascale zcu106. Данный способ можно использовать для создания загрузочных образов других устройств с соответствующими изменениями. Битстрим, ядро...

Phoenix: разбираемся со сбоями ML системы прямо в вашем ноутбуке Нам до сих пор не до конца понятны некоторые возможности больших языковых моделей. Приложения с большими языковыми моделями должны быть оснащены необходимыми инструментами и оставлять данные о событиях, произошедших в процессе работы. Более того, когда данные собраны, их нео...

Аутентификация go с использованием токенов PASETO В этой статье мы напишем небольшой сервис аутентификации на go с использованием токенов PASETO. Этот токен можно использовать вместо JWT для процесса аутентификации. Если хотите узнать о PASETO подробнее, то можете почитать статьи на Хабре или гитхабе. Читать далее

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

97 откликов, 2 тестовых, 3 технических собеседования — и оффер в IT-компанию у меня в кармане Привет, я Настя — младший разработчик в «Метре квадратном». Это статья о том, как я пришла в разработку практически с нуля в 2023 году. Знаю, на «Хабре» таких уже много, но когда-то подобная статья помогла мне начать свой путь, и я решила, что этот текст тоже может быть поле...

Новая жизнь старого GPS-приёмника В этой статье я расскажу о том, как я использовал старый GPS-приемник в качестве приёмника для захвата "сырых" данных GPS. Также я постараюсь рассказать о базовых принципах приема и декодирования данных GPS. Читать далее

Даешь магнетрон: микроволновка для советского общепита В предыдущей статье мы подробно рассказали об истории изобретения микроволновки американским инженером Перси Спенсером. Не менее увлекательны были разработки советских ученых.  Читать далее

Слышал звон, знаю где он: делаем объёмный звук в наушниках на Windows В этой статье мы настроим объёмный звук в наушниках в любых приложениях через создание виртуальной звуковой карты или добавление фильтра к уже имеющейся. Так же есть вариант для стереоколонок.Используется бесплатное ПО VoiceMeeter и HeSuVi. Читать далее

Через «Яндекс Маркет» теперь можно быстрее найти товары с выгодными ценами Команда «Яндекс Маркета» сообщила о запуске нового полезного сервиса в маркетплейсе, который позволит покупателям быстрее и проще находить выгодные предложения. Как сообщила пресс-служба, перед сезоном ноябрьских распродаж сервис добавил в приложение фильтр ...

Greplin: персональный поиск по всем социальным сервисам Из инкубатора Y Combinator вышел ещё один интересный стартап: персональная поисковая система Greplin. Идея состоит в том, чтобы проиндексировать всю персональную информацию, которую вы оставляете в социальных сервисах: Facebook, Twitter, Dropbox, Evernote, LinkedIn, Gmail, G...

Это база: нюансы работы с Redis. Часть 2, репликация Всем привет, на связи Пётр, инженер компании Nixys. В прошлой статье мы разобрали основные концепции Redis. Теперь рассмотрим базовую репликацию Redis и настроим эту БД на высокий уровень отказоустойчивости. Читать далее

Настройка функциональности сервис деска в ZenTao Приветствую всех, кому интересна тема перехода с Jira на альтернативные решения. Совсем недавно мы, GlowByte Soft, рассказывали о том, какие бизнес-процессы компании могут автоматизировать на базе ITSM-платформы ZenTao. По откликам мы поняли, что нужно подробнее останов...

Создание и тестирование gRPC сервиса (Spring Boot приложение) Привет, Хабр! Сегодня я поделюсь опытом работы с gRPC и расскажу, как создать и протестировать gRPC-сервис в приложении на Spring Boot. Основная проблема — это отсутствие структурированной информации по корректному тестированию gRPC сервиса. Эта статья будет полезна для тех,...

Умный дом на openHAB+MQTT+Arduino. Часть 2: Датчики, релюшки Продолжаем разговор за бюджетный умный дом, в этой статье мы соберем простой модуль на Arduino Nano. Предыдущая статья, посвященная настройке кластера openHAB, находится тут. Читать далее

[Перевод] Возможно, загадочный манускрипт Войнича посвящён вопросам секса и зачатия Манускрипт Войнича давно озадачивает и завораживает историков и обычных людей. Этот позднесредневековый документ покрыт иллюстрациями звёзд и планет, растений, зодиакальных символов, обнажённых женщин, голубых и зелёных жидкостей. Но сам текст — предположительно, работа пяти...

Django, PostgreSQL, Gunicorn/uWSGI, Nginx Подробное описание шагов при деплое web-проекта на Django с PostgreSQL, Nginx, Gunicorn. Задачи статьи - агрегировать информацию из мануалов по деплою, избавить читателя от повторений ошибок и описать теоретически, для чего делаются те или иные шаги, чтобы избежать бездумног...

Apache NiFi как доступный ETL инструмент: кейс применения + тестовый стенд Docker В статье расскажу о практических аспектах использования Apache NiFi, опишу преимущества и проблемы, с которыми я столкнулся.Для наглядности собрал "песочницу" в контейнере Docker, в которой представлены упрощенные примеры пайплайнов, аналогичные тем, которые были использован...

[Перевод] Миф: наличие тестировщиков в Agile-команде необязательно В этой статье я постараюсь развеять один из самых распространенных мифов о разработке по Agile: «Необязательно иметь в команде тестировщиков. Разработчики могут тестировать сами». Я думаю, такой подход возможен в некоторых «особых» сценариях, но в любом случае это было бы не...

Инструкция по переезду и миграции данных с Google Firebase на Self-hosted Supabase Всем доброго дня! Комментарии к моей предыдущей статье о том, как я развиваю свой pet-проект, а также различные законы, подразумевающие локализацию персональных данных на серверах, размещенных на территории РФ (в частности Федеральный закон от 21.07.2014 № 242-ФЗ «О внесении...

Изменить цвета и кнопки сервиса — и не сломать дизайн-систему Меня зовут Алексей Афонин, я старший дизайнер продукта в Yandex Cloud. В прошлом году нам понадобилось полностью изменить внешний вид нашего сервиса для бизнес‑аналитики DataLens перед его выходом в опенсорс. Разработчики и дизайнеры интерфейсов часто ста...

Почему переезд на новое ПО — такая боль для сотрудников. С чем смириться и что можно улучшить Эта статья для тех, кто хоть раз организовывал переезд на новое ПО на работе. И не важно, что это было — Notion в стартапе, Jira для разработки или пачка отдельных SaaS-систем.В процессе жизни и роста любой компании приходится перетасовывать, объединять, менять системы, на к...

Шардирование: с нуля до Яндекс Диска Меня зовут Андрей Колнооченко. Я отвечаю за ядро файловой системы Яндекс Диска. Когда мы запускали сервис, то сразу ориентировались на рост и приняли решение шардировать базу метаданных о файлах. Но за 11 лет Яндекс Диск настолько вырос, что нам пришлось трижды менять подход...

MaaS, или мониторинг как сервис Привет, Хабр! Меня зовут Валентин Лебедев, я отвечаю за мониторинг в Газпромбанке. Мой опыт в области построения систем мониторинга — более двенадцати лет, из которых последние шесть — строил мониторинг для крупного и сверхкрупного бизнеса. Статья будет полезна специали...

Устройство памяти процессов в ОС Linux. Сбор дампов при помощи гипервизора Иногда для анализа ВПО или, например, для отладки какого-либо процесса может потребоваться дамп памяти процесса. Но как его собрать без отладчика? Постараемся ответить на этот вопрос в этой статье.Задачи:- Обозначить цель сбора дампа процесса.- Описать структуру памяти проце...

Сайты Рунета начали удалять информацию о VPN перед 1 марта С 1 марта 2024 года в Российской Федерации начинает действовать запрет на популяризацию VPN-сервисов и распространение информации о способах обхода блокировок. Это нововведение предусматривает штрафы до 4 миллионов рублей за наличие запрещенных материалов и возможность ...

Observability. Часть 1, про логи "Пираты журнального моря"Автор — Игорь Овсянников, декабрь 2023 г. DevOps инженер в GFN.AM, преподаватель курса DevOps в OTUS.Каждый раз, решая инцидент или аварию в инфраструктуре, я задумывался: а можно ли было это предусмотреть? Можно ли было быстрее узнать о проблеме, са...

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

Как правильно передавать секреты запускаемым программам? Эта статья о том, как правильно передавать секреты запускаемым программам.Бывает встречаются Unix-системы, на которых некоторые администраторы передают процессам пароли в открытом виде, совершенно не заботясь о том, что их видят все пользователи данной системы. Если вы смог...

Android в Европе получит экраны выбора поисковой системы и браузера Европейский союз заставляет Google позволять выбирать браузеры и поисковую систему на Android

Дерево отрезков Всем привет. В этой статье я расскажу про дерево отрезков. Очень мощной структуры данных, которая позволяет делать много разных операций над массивом чисел. Я постараюсь по полочкам разложить эту тему и объяснить возможности дерева отрезков. Также я разберу несколько нетриви...

[Перевод] Grafana Beyla: автоинструментарий eBPF с открытым исходным кодом для наблюдения за приложением Часто для правильной интеграции инструментов мониторинга в приложение приходится добавлять агент мониторинга Observability в развертывание или пакет. А в таких языках, как Go, нужно вручную добавлять точки трассировки. В любом случае после добавления инструментов придётся вы...

Как управлять распределённой системой, не привлекая внимания санитаров Привет! Меня зовут Александр Попов, я tech lead команды маркетплейса 05.ru. Сейчас мы занимаемся бэком маркетплейса и некоторыми другими сервисами на рынке Дагестана. При разработке серверной части маркетплейса мы сразу решили строить её в распределённой архитектуре. Эт...

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

[Перевод] Как «убедить» Apple, что ваш iPhone — европейский Энтузиаст смог сделать свой iPhone европейским. Для этого ему пришлось отключить сервисы определения местоположения, вставить итальянскую SIM‑карту, настроить Wi‑Fi роутер pfSense с указанием страны регистрации (Италии) и отправиться в подвал, где связь не&nbs...

Обзор отечественных компьютерных модулей формата SMARC В статье кратко описан стандарт встраиваемых компьютерных модулей SMARC. Приведен краткий обзор отечественных производителей и модулей выполненных в данном стандартен. Компьютерные модули, называемые также компьютерами на модуле (Computer-on-Module) или системами на модуле (...

Фен и нижний подогрев. Снятие/установка BGA без реболлинга Приветствую, Хабр! В статье хочу показать процесс снятия чипов в BGA корпусе и установки на новую плату не перекатывая шарики. Опишу некоторые нюансы, которые позволяют осуществлять данную операцию более или менее безболезненно. Читать далее

Настраиваем CI/CD с GitHub Actions и werf: инструкция для новичков В этой статье мы рассмотрим, как настроить пайплайн CI/CD в GitHub: подготовим репозиторий, зальём туда приложение, создадим файлы конфигурации GitHub Actions, в которых опишем, как собирать наше приложение и деплоить его в кластер Kubernetes, развёрнутый под управлением Dec...

Поисковая система Brave начала подбирать ответы для пользователей на основании ИИ Разработчики поисковой системы Brave и одноимённого браузера — продуктов, ориентированных на конфиденциальность, — анонсировали большое обновление механизма ответов своего поисковика на запросы пользователей.

Logstash, Manticore, Nginx и Symfony: сбор, агрегация и быстрый поиск логов Мысль о централизованном мониторинге логов хранилась в моей голове много лет, но реализовать ее я смог только совсем недавно. Рассказываю о настройке и подводных камнях связки Logstash + Manticore + Nginx + Symfony. Читать далее

Установка и настройка Odoo 16 и Pycharm на Ubuntu 22.04 Пошаговая инструкция по конфигурации и настройке среды разработки ERP Odoo 16 и Pycharm на Ubuntu 22.04 Читать далее

От Kubernetes в мечтах к Kubernetes в проде. Часть 4. Хранилище секретов ― HCP Vault В серии статей по теме DevOps мы вместе с Lead DevOps инженером департамента информационных систем ИТМО Михаилом Рыбкиным рассказываем о проверенных инструментах выстраивания инфраструктуры, которыми с недавнего времени пользуемся сами. В предыдущих статьях мы уже рассмотрел...

Обновление кешей сервисов в реальном времени с помощью YDB CDC на примере Yandex Monitoring Меня зовут Егор Литвиненко. Я старший разработчик Yandex Observability Platform. Летом 2023 года я рассказывал на Saint Highload в Санкт-Петербурге про наш путь внедрения YDB CDC для обновления данных в сервисах, чтобы решить проблему инвалидации кэшей.В этой статье будет вс...

Arc Search — браузер для iPhone с ИИ, который создает сайты по вашим запросам и блокирует всю рекламу Для iPhone выпущено огромное количество разных браузеров. Однако у них у всех есть кое-что общее — движок WebKit. В настоящее время без него попасть в магазин приложений Apple просто невозможно. Поэтому можно сказать, что все браузеры в App Store являются копией Сафар...

МТС договорился с Telegram: рекламу в мессенджере настроят по номеру телефона Российский оператор МТС объявил о новой возможности фирменного рекламного вервиса. В МТС Ads открыта возможность запускать рекламу в Telegram Ads на внешних данных — с настройкой по номерам телефонов российских операторов. Рекламу можно настроить в интерфейсе сер...

Инструкция по настройке RAG-системы для тех поддержки клиентов Retrieval Augmented generation - генерация ответа с использованием результатов поиска. RAG-архитектура - это подход к созданию приложений, в которых большая языковая модель без дополнительного обучения отвечает на вопросы с использованием информации из внутренней базы знаний...

Как настроить GitHub Actions и не заплакать: пошаговая инструкция Как настроить GitHub Actions и не заплакать: пошаговая инструкцияПривет всем! Меня зовут Виталий, я фронтендер в Mish. Решил недавно освоить полноценный автоматический деплой проекта, чтобы все работало само. Расскажу и вам, что из этого получилось.В статье буду разговариват...

Как эффективно самостоятельно изучать английский язык Читатели Хабра, категорически вас приветствую! В этой статье я хочу поделиться с вами моделью эффективного изучения английского языка, которую я постарался сформировать исходя из своего n-летнего опыта его изучения.Расскажу вам насколько это актуально, с чего начать, какие р...

[Перевод] Поисковый движок в 80 строках Python В сентябре я устроился на должность поискового дата-саентиста и с тех пор часть моих обязанностей заключается в работе с Solr — опенсорсным поисковым движком на основе Lucene. Я знал основы работы поискового движка, но мне хотелось понять его ещё лучше. Поэтому я закатал рук...

InfiniBand в Windows — это просто К написанию этой небольшой инструкции меня привела статья на Хабре - Быстрая сеть в домашней лаборатории или как я связался с InfiniBand . Я был очень заинтригован данным вопросом, но каково было моё удивление, когда я не мог найти почти никакой информации по InfiniBand на W...

Многоуровневая группировка в SQL: Grouping sets Описан основной принцип работы конструкции Grouping sets в SQL на примере. Статья будет полезна для тех, кто хочет быстро разобраться с основными принципами группировки с использованием Grouping sets. Читать далее

[Перевод] Как я сделал переполнение кучи в curl В связи с выпуском curl 8.4.0 мы публикуем рекомендации по безопасности и все подробности о CVE-2023-38545. Эта проблема является самой серьезной проблемой безопасности, обнаруженной в curl за долгое время. Для неё установили ВЫСОКИЙ приоритет.Хотя рекомендации содержат все ...

Знакомимся с Access Logs и фильтрами в Envoy и Istio service mesh Не у всех есть необходимость в тонкой настройке access logging в Envoy, но если она всё-таки возникает, то могут понадобиться примеры, которых почему-то не очень много в документации. Поэтому мы сделали перевод статьи, где вы можете познакомиться с Envoy, узнать, как включит...

Зыбучие пески или установка песочницы CAPE Привет, Хабр, на связи лаборатория кибербезопасности AP Security. В данной статье предлагаем разобрать процесс установки и первоначальной настройки такой песочницы, как CAPE. Читать далее

PIC32MZ и Быстрое Преобразование Фурье PIC32MZ и Быстрое Преобразование ФурьеМикроконтроллер от компании Microchip далеко не новый. Но пока нам дружественный Китай увы и ах, и такого (415 MIPS на частоте 252 MHz ядра) предложить не может. Ведущие производители микроконтроллеров в Китае - Artery, Nation Semiconduc...

Еще раз про асинхронную машину состояний и где именно там аллокации Несмотря на то, что про async/await уже было сказано много слов и записано множество докладов, тем не менее, в своей практике преподавания и наставничества, я часто сталкиваюсь с недопониманием устройства async/await даже у разработчиков уровня Middle+. В данной статье мы п...

Еще раз про асинхронную машину состояний и где именно там аллокации Несмотря на то, что про async/await уже было сказано много слов и записано множество докладов, тем не менее, в своей практике преподавания и наставничества, я часто сталкиваюсь с недопониманием устройства async/await даже у разработчиков уровня Middle+. В данной статье мы п...

Как мы (не) вкатились в геймдев. Часть 2 Привет, Хабр! Эта статья продолжает рассказ о разработке нашей игры, начатой в рамках моего дипломного проекта. В этот раз — про страницы главного меню, иконки интеракции и логотипы. Читать далее

Подключение устройств из Sprut.hub в Wirenboard Доброго времени. К написанию данной статьи подтолкнула ситуация, что вроде элементарная задача получить данные с установленного модуля Sprut.hub в родительский WirenBoard, вызвала определенные сложности. Поиском находится разрозненная информация. В чатах вопрос всплывал не е...

Как сделать Kubernetes еще круче: секреты безупречной работы Отказоустойчивость информационных систем необходима для обеспечения непрерывности работы системы и минимизации возможности потери данных в случае сбоев или отказов в работе оборудования. Это особенно важно для критических для бизнеса систем. Мы начали использовать геора...

Как работает поисковая система Google: саммари по утекшим документам В сети впервые появилась внутренняя информация сотрудников поисковой системы.

ChatGPT превратится в поисковую систему уже в ближайшую неделю По слухам, уже 9 мая состоится запуск новой поисковой системы, работающей на основе ChatGPT, которая станет конкурентом Google Search.

Удобные формы для Vue 3 Vue + Form. А можно немного попроще...Краткий путь по созданию библиотеки для работы с полями и формами . В статье описан краткий путь от v-modal к чему-то более умному и самостоятельному. Я также поделился своими наработками, чтобы вы могли использовать их у себя в проекте....

Climate Survey — оценка психологического климата Понимание психологического климата в коллективе позволяет руководству и HR-специалистам не только выявить скрытые проблемы и конфликты, но и оценить уровень удовлетворенности работой, мотивацию и вовлеченность каждого сотрудника. Это, в свою очередь, дает возможность своевре...

Лучшие практики для надёжной работы с RabbitMQ Привет, Хабр! Я Женя, архитектор интеграционной платформы в Точке, отвечаю за асинхронный обмен сообщениями между внутренними сервисами, за ESB и за брокеры сообщений.В этой статье я постарался кратко и последовательно изложить основные моменты, о которых полезно помнить при...

Инклюзивность и цифровая доступность в дизайне: почему это важно для всех Всем привет! Меня зовут Юля Алёхина, я дизайнер в AGIMA. В этой статье поговорим об инклюзивном дизайне, о том, почему он касается не только людей с инвалидностью и как правильно аргументировать важность доступности в общении с заказчиком. Еще расскажу, как наш дизайн-отдел ...

[Перевод] Разбираем самый маленький PNG в мире Самый миниатюрный PNG в мире весит 67 байт и представляет собой один чёрный пиксель. Выше вы видите его в 200-кратном увеличении. Красота, не так ли? Состоит этот файл из четырёх частей: Сигнатура PNG, одинаковая во всех файлах этого формата: 8 байт. Метаданные изображе...

MDM и CDP: различия систем. Как сделать выбор Любой компании, которая стремится сохранить конкурентоспособность на рынке, необходимо создание «золотой записи» (профиля) клиента во внутренних базах. Для этого многие используют системы управления мастер-данными (MDM, master data management), но сталкиваются с рядом пробле...

Как уменьшить размер бандла раз и навсегда: приемы, метрики, мониторинг Существует довольно много статей на тему оптимизации размера бандла, но большинство из них говорят об узких деталях или подходах к уменьшению размера бандла. Либо наоборот — совсем широко, с общими советами.В этой статье я постараюсь рассказать как комплексно подойти к оптим...

Анализ зависимостей бинарных файлов на основе ML. Заключительная часть В прошлой статье мы разобрали идею нашего компонентного анализатора и поделились результатами некоторых экспериментов, проведенных в лабораторных условиях. Результаты, полученные на маленькой части датасета в размере 3000 библиотек, вышли довольно оптимистичными. В этой стат...

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

Путь развития (Roadmap) Frontend разработчика В этой статье вы узнаете про то как я вижу современную и актуальную карту развития frontend разработчика, я расскажу про основные технологии которые необходимы для старта, и как сделать свои первые шаги в frontend разработке. Читать далее

Сервисное мышление. Как распознать/вырастить/не потерять хорошего специалиста технической поддержки В предыдущей статье я рассказывал о том, как построить сервис и не наделать ошибок. Тема, конечно, объемная и многогранная. И много вопросов получил о том, что же такое сервисное мышление. Я думаю, «сервисность» в той или иной степени есть в каждом из нас. И если удается ее ...

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

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

Кроличья нора автоматизации бизнес-процессов В мире современных технологий бизнес неизбежно сталкивается с необходимостью изменения, развития и оптимизации своих процессов. В этой статье в блоге ЛАНИТ мы погрузимся в мир автоматизации бизнес-процессов и рассмотрим, зачем она нужна, какие преимущества она приносит, каки...

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

ИИ-чатботы взломали с помощью ASCII-картинок Исследователи из Вашингтона и Чикаго представили ArtPrompt — новую технику, позволяющую обходить меры безопасности в популярных больших языковых моделях (LLM), таких как GPT-3.5, GPT-4 и других. Метод, подробно описанный в научной статье «ArtPrompt: ASCII Art-based Jailbreak...

Архитектурные нюансы OpenStack. Базы данных как сервис, реализация Trove Привет, Хабр. Это вторая статья в цикле, в котором мы рассматриваем архитектуру основных сервисов OpenStack. Первая, в которой я рассказывал о Nova и общих паттернах построения платформы, находится здесь. Сегодня погрузимся в детали реализации сервиса DBaaS, который в платфо...

Создаем VR офис с Termidesk и Oculus В поисках лучшей конфигурации для работы я решил попробовать VR Oculus Quest 3. Статья будет построена вокруг моего опыта по настройке VR среды для работы. Я расскажу вам о мониторах с изменяемой диагональю, боли в глазах и контроле обстановки вокруг. Читать далее

Разработчики ChatGPT готовят поисковую систему Если верить информации достаточно известного информационного издания Bloomberg, компания OpenAI, разработчик самого популярного в мире чат-бота ChatGPT, планирует в ближайшем будущем официально представить собственный поисковой сервис, который будет напрямую конкурировать с ...

YouTube Music научился автоматически скачивать подкасты После объявления о предстоящем закрытии Google Podcasts в сервисе YouTube Music появилась функция автоматической загрузки подкастов. Пользователи могут активировать эту функцию, зайдя на страницу подкаста, нажав на значок шестеренки настроек и выбрав «Сохранить в библиотеке»...

DevOps as a Service. Часть 4. Решаем проблемы развития сотрудников подразделения и управления инициативами Всем доброе утро! С Вами Крылов Александр, и мы продолжаем серию статей про DevOps as a Service, и как с помощью данного подхода возможно решить ряд распространённых проблем. В прошлых статьях мы описали сам подход, показали пути решения различных проблем. Со статьями можно ...

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

Польза создания однородных задач для параллельного вычисления Как правильно использовать возможности параллельного программирования?Зачем программистам математика и зачем знать алгоритмы?На примере небольшой задачи мы вместе ответим на эти вопросы. А так же хочу наглядно продемонстрировать преимущества создания однородных задач.Весь к...

Товары-аналоги и с чем их едят или Свежий подход к формированию групп товаров для управления ассортиментом Ozon fresh Мы команда data science Ozon fresh. В этой статье мы расскажем об одной из наших задач - алгоритм, который помогает управлять нашим огромным ассортиментом.Ozon fresh — это сервис быстрой доставки продуктов, бакалеи, бытовой техники, электроники и других товаров. В нашем ассо...

Настраиваем логирование с помощью Loki и Grafana При построении микросервисной архитектуры часто возникает потребность анализировать логи из нескольких источников (баз, сервисов и т. д.). В этой статье я бы хотел поделиться решением к которому в итоге пришел. Читать далее

Parameter-Efficient Fine-Tuning (PEFT): методы LoRA, Prefix tuning, Prompt tuning и Adapters На сегодняшний день созданы разные большие языковые модели (LLM), которые показывают превосходные результаты, но для раскрытия их полного потенциала необходимо дообучение для точного решения конкретных задач. Традиционный метод файнтюнинга, при котором настраиваются все пара...

Дообучение saiga2_7b_lora Дообучение 7-миллиардной модели Saiga2 под свои задачи, используя сгенерированный датасет с помощью GPT. В данной статье есть все необходимые ссылки и код для предобработки и запуска обучения модели, а также квантования модели. Читать далее

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

Как правильно файн-тюнить ChatGPT? ппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппп...

[Перевод] Частичная агрегация В нескольких предыдущих статьях обсуждалось, как в SQL Server реализована агрегация, были рассмотрены операторы агрегирования потока и хеш-агрегат. Я также использовал хеш-агрегат в качестве примера в статье Введение в распараллеливание исполнения за...

«Белое золото»: патентная история первых литиевых аккумуляторов В предыдущем материале мы подробно рассказали об открытии лития и начале его промышленного производства. Новейшая же история лития начинается с патента Майкла Стэнли Уиттингема из Exxon Research & Engineering Co. «Перезаряжаемый электрохимический элемент c катодом и...

Что быстрее: Animated + useNativeDriver или Reanimated? Привет! Меня зовут Денис, я мобильный разработчик в СберМаркете. Пишу на React Native и люблю анимации, ведь они дают жизнь нашим проектам :)В этой статье попробуем разобраться, что же все таки работает быстрее: React-Native-Reanimated или Animated + useNativeDriver: true.Бу...

Как один российский банк пытался запустить бренд-медиа об ИИ. Нечеловеческая комедия в 3 частях Привет, я журналист и редактор с 16-летним опытом работы в крупных российских СМИ, в основном, в сфере ИТ и экономики/бизнеса, в т.ч. банковского ИТ. В моём активе из профильных изданий опыт работы в CNews, РБК, «Секрете фирмы», «Ведомостях», а также запуск бренд-медиа (бизн...

Взлом YouTube для быстрого скачивания видео Мы неоднократно рассказывали о специальном софте, который позволяет скачивать видео с YouTube. Это в первую очередь youtube-dl (yt-dl) и его клоны, такие как yt-dlp и yt-dlc. С ними воюют могучие копирасты, пытаются удалить их из поисковой выдачи, с хостингов, с Github и так...

Как приручить нейросеть Привет, Хабр!В последнее время проблема утечки информации все чаще освещается в медиа. Хватает новостей о том, что утекали даже ключи и пользовательские данные. Да чего только не было! Неудивительно, что многие компании, особенно с развитием и активным использованием ИИ-техн...

[Перевод] Популярные конфигурационные опции для работы с git Привет! Я всегда мечтала, чтобы в инструментах для работы с командной строкой заранее сообщалось, насколько популярны те или иные конфигурационные опции, предусмотренные в них, например:o    «В принципе, никто этим не пользуется»o    «Этой опцие...

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

Самые лёгкие ноутбуки для работы и не только: что предлагает рынок Каждый год выпускается несколько десятков новых и/или усовершенствованных моделей ноутбуков. Для того чтобы упростить задачу выбора хорошей модели для себя, мы сделали подборку девайсов. Это уже вторая часть, продолжение статьи о мощных и компактных ноутбуках 2023 года. Мы п...

«Яндекс» объявляет финансовые результаты за 1 квартал 2024 года МКПАО «Яндекс», частная и независимая IT-компания, которая развивает крупнейшую российскую поисковую систему и создаёт сервисы и технологии мирового уровня для пользователей и для бизнеса, объявляет неаудированные финансовые результаты за первый квартал 2024 года.

Установка и настройка tor в Linux Mint Предположим, что вы захотели получить информацию с сайта расположенного на домене onion. В общем-то, ничего особенного в этом нет. Даже, в какой-то мере проще, чем в клирнете. Все потому, что здесь используется очень мало скриптов. А следовательно, к особым ухищрениям для па...

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

CD-диск на шейдерах и NameDrop в iOS 17 Шейдеры отлично подходят для симуляции материалов. В обычных интерфейсах мы управляем только цветом, но эффект размытия в iOS — пример материала, который совершил революцию в мобильных интерфейсах.Описать метериал через шейдер сложно, а создать динамичный эффект — ещё сложне...

Аналитика в игре на Godot: подключаем MyTracker Привет! Я Артем Ковардин, руководитель команды Push Service в RuStore. В этой статье я расскажу про подключение MyTracker в мобильную игру на Godot. Godot — замечательный движок для игр, но под него очень мало готовых плагинов. Особенно, плагинов для российских сервисов...

Как вообще этот ваш CI CD настроить Привет, Хабр! Хочется рассказать о нашем опыте внедрения CI/CD в компанию. О том, как в целом работать с ним и как это работает у нас.Статья нацелена на новичков конкретно в этой сфере и хотят чуть детальнее стандартной документации настроить деплой, может внедрить у себя, ч...

Отчёт о работе информационной службы Хабра за 2023 год Добрый вечер, Хабр! Вот и подходит к концу 2023 год. За последние 12 месяцев в мире случилось большое количество технических инфоповодов и IT-событий, обновлений ПО, появление новых технологий, произошло развитие электроники и полноценный приход ИИ-сервисов в нашу жизнь, вкл...

Как настроить библиотеку SFML C++ в Visual Studio 2022 статическая компоновка В этой статье рассказывается, как настроить ваши проекты SFML С++ со статической компоновкой используя интегрированную среду разработки программного обеспечения Visual Studio.Установка SFML библиотекиЗагрузите библиотеку SFML c официального сайта. Выбираем самую последнюю ве...

Шпаргалки для сервера CS:GO Приветствую читателей данной статьи. Сразу хочу отметить, что статья не несет никакой профессиональной информации, но нацелена на аудиторию, которая имеет представление о том, что такое терминал и хостинг, и с чем это едят. Автор лишь делится своим опытом и оставляет это зде...

Почему ваши витамины и лекарства не работают на 100%? Машинное обучение нашло ответ В период пандемии ковида и недавней эпидемии гриппа многие из нас прибегали к употреблению большого количества витаминов и микроэлементов, для поддержание иммунитета. Выбор БАДов в аптеках по всей стране весьма широкий и привлекательный, однако совместное их применение очень...

Собирать данные VS интерпретировать их: типичные ошибки в e-commerce аналитике Каждый день мы собираем больше 200 ГБ данных о клиентах Lamoda, которые листают сайт и делают заказы. Но красивые цифры про наше хранилище — это одно, а правильные выводы из данных — совсем другое.Меня зовут Александр Айваз, я руковожу командой Data & Analytics в Lamoda ...

Скрытые возможности экрана первоначальной настройки Windows 11 (OOBE) Энтузиаст под ником Enderman в своём профиле X (бывший Twitter)* рассказал о нескольких сочетаниях клавиш, которые можно использовать на экране первоначальной настройки Windows 11 (OOBE, Out-of-Box-Experience). Одна из комбинаций открывает «Диагностику Autopilot», а вторая ...

Как внедрить гайд по стилю кода в проект Всем привет! Меня зовут Соня Гусева, я фронтенд-разработчик в Яндекс Практикуме (или фронтенд-капибара). Вместе с командой мы развиваем платформу practicum.yandex.ru. Например, сделали поиск по пройденным материалам — тот самый, где «найдётся всё». И тёмную тему — для комфор...

Использование Symfony / PHP (II) Привет! Я, Андрей, Symfony разработчик - мы делаем сайты. Каждый день мы тратим много ресурсов на администрирование и базовые настройки проектов. В этой статье я продолжаю делиться опытом, как можно адаптировать фреймворк Symfony под свои нужды. Сегодня я расскажу как мы раб...

Как мы Kafka с NestJS microservices подружить пытались Привет, меня зовут Валентин, я NodeJS-разработчик в Сравни. Моя команда делает Profile Service — внутренний продукт, который отвечает за быстрое получение и запись личных данных пользователей для экосистемы Сравни. Мы взаимодействуем с 20+ продуктовыми командами, которые даю...

[Перевод] Микросервисы победили. Или не совсем «Мы хотим сделать систему по учету персонала. Только у наших архитекторов есть требование, что все у нас должно быть на микросервисах». Это, пожалуй, самый бесячий заход, который нам приходится слышать, как разработчику Jmix – платформы быстрой разработки корпоративных веб-п...

Перенести проверенную схему бэкапа больших данных из S3 в Yandex Cloud: опыт Битрикс24 Меня зовут Александр, я руковожу направлением больших данных в Битрикс24. Клиенты нашего сервиса хранят миллиарды файлов: от документов до фотографий, — а моя команда предоставляет возможность строить бизнес-аналитику на основе этого множества данных. И нам важно позаботитьс...

Как мы выстроили систему визуализации ошибок с помощью Grafana и снизили время на их отработку с 2 часов до 15 секунд Я работаю в DataNewton сервисе для скрининга контрагентов. Данные, которые мы предоставляем, берутся из 43-х официальных источников. Чаще всего это базы данных государственных сервисов. И тут есть проблема: такие сервисы любят менять формат массивов, в которых они отдаю...

Сетевой мультитул для ИТ и ИБ специалистов: zero-skill создание Telegram чат-бота с помощью ChatGPT Привет, Хабр! Меня зовут Руслан, я – инженер по сетевой и информационной безопасности в компании-интеграторе STEP LOGIC. Решаю различные задачи, связанные с настройкой и поддержкой сетевого оборудования в компьютерных сетях, работаю над проектами, требующими планировани...

[recovery mode] Развертывание программного комплекса на Asp.net на российских ОС В России все больше пользователей и организаций используют российские Linux системы. Но при подготовке пакетов для комплексных решений на этих системах могут возникнуть сложности, связанные с несовместимостью ПО, необходимостью настройки пакетов и т.д. В этой статье рассмотр...

Договорённость с Google помешала Apple создать собственную поисковую систему В рамках антимонопольного судебного процесса в отношении поискового бизнеса Google, одним из ключевых свидетелей стал исполнительный директор Apple Эдди Кью.

Microsoft выпустила Windows 11 Build 22621.2500 для инсайдеров в Release Preview Channel Компания Microsoft выпустила Windows 11 Build 22621.2500 (KB5031455) для инсайдеров Windows в Release Preview Channel в Windows 11 версии 22H2. Это обновление включает следующие функции и улучшения: • Новое! Это обновление влияет на блеск основных моментов поиска в окне поис...

Самое важное про Android-разработку с developer keynote конференции Google I/O 2024 Всем привет! Меня зовут Мялкин Максим, я лид мобильной команды в KTS. Сейчас проходит Google IO 2024, и мы с ребятами в команде решили выпустить обзор треков, которые нам показались интересными. Мы сконцентрируемся на Android-направлении. На основном keynote все внимание бы...

Качественные рекомендации в e-commerce — компоненты основных алгоритмов В первой статье цикла мы рассказали про свойства алгоритмов качественных рекомендаций, которые необходимы для практического использования алгоритма. Во второй статье мы рассмотрели компоненты алгоритма «Сопутствующие товары». Но система рекомендаций для интернет-магазина сос...

Эксперт объяснил работу ПО BlackCat, которое «положило» здравоохранение США В недавней статье на Хабре представили подробный анализ нового инструментария и методов, используемых вымогателями BlackCat. Автор (@DeathDay) подробно описывает эволюцию вредоносной программы, используемой хакерами, подчеркивая ее многофункциональность и быстрое развитие.

Telegram-бот как системный администратор сервера При запуске сервера часто необходимо предоставить доступ к части функционала другим пользователям, при этом сами пользователи могут не иметь достаточных компетенций для полноценного использования софта и/или мы хотим ограничить доступный набор команд.Одним из вариантов решен...

Быстрое пополнение словарного запаса при изучении иностранного языка методом «Ознакомление-забывание-вспоминание» Привет, Хабр!В этой статье мы описываем полную методику быстрого пополнения словарного запаса при чтении неадаптированной литературы на иностранном языке. Статья будет интересна тем, кто владеет иностранным языком на уровне B2-С1 и столкнулся с необходимостью увеличить слова...

ESLint | Shareable config настройка и что это такое? Приветствую! В ходе своей профессиональной деятельности, каждый фронтенд-разработчик сталкивается с неотъемлемой частью разработки - инструментом ESLint.Сегодня мы поговорим, о настройке shareable config. Мы рассмотрим, как это может помочь продуктовым командам или фрилансер...

Хотите присоединить Windows к домену ALD Pro (FreeIPA)? Спросите меня как Конечная цель проектов импортозамещения в ИТ — полный отказ от операционной системы Windows. Но, как говорится, гладко было на бумаге, да забыли про овраги. Может так оказаться, что быстро заменить какие-то клиентские корпоративные приложения, написанные под эту операционну...

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

Как мы определили веса алгоритмов ранжирования крупнейших маркетплейсов на открытых данных Привет, Хабр! Меня зовут Владислав Абрамов, я аналитик в команде разработки компании Easy Commerce. Перед нами стояла задача создать алгоритм, который определяет влияние характеристик карточки товара на поисковую позицию в крупнейших российских маркетплейсах. Большинство из ...

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

Блокчейн для чайников: создаем свой первый распределенный реестр Привет, Хабр! На связи Николай, главный редактор Web3 Tech. Как можно предположить по должности, опыта в разработке я почти не имею. Год назад закончил мини-курс по Python, сделал об этом пост и с тех пор код не писал. Но недавно набрался смелости, заручился посильной поддер...

База: айсберг A/B-тестов Если вы по кусочкам и фрагментарно изучаете разные аспекты и тонкости A/B-тестирования, но большое множество концепций и идей не ложатся в единую систему, то это статья для вас. Предлагаю разобрать структуру A/B-тестов сверху вниз. Пройдем по основным этапам от наблюдаемой р...

Что делать, если не получается войти в Apple ID на Айфоне Apple ID — основополагающий механизм работы вашего iPhone. Если выйти из него, то смартфон продолжит работать, но сервисы Apple вроде FaceTime, iMessage, iCloud и других работать не будут, из-за чего устройство потеряет львиную долю своей функциональности. Более того,...

Transition Animation: настраиваем анимацию переходов во Flutter Привет! Меня зовут Айдар Мавлетбаев, я Flutter-разработчик в AGIMA. Современное приложение почти невозможно представить без анимации. И один из ее типов — Transition Animation, или анимация переходов. Ее используют, чтобы переход с одной страницы на другую был плавным и крас...

Как провести unit-тестирование Flink-операторов: TestHarness Привет всем, на связи снова Александр Бобряков, техлид в команде МТС Аналитики. Продолжаем цикл статей про фреймворк Apache Flink.Напомню, в предыдущих частях я рассказывал про построение пайплайна Kafka-to-Kafka с промежуточным разделением потока и дедупликацией событий. Та...

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

Apple потеряет 20 миллиардов долларов от сделки с Google Недавно из судебного разбирательства стало известно, что компания Apple получает от компании Google 20 миллиардов долларов в год в рамках их партнёрского соглашения о поисковой системе. По умолчанию на всех устройствах Apple в браузере Safari установлена поисковая система Go...

Установка OC Linux на плату Kintex 7 (KC705) от Xilinx с софт-процессором MicroBlaze часть 1 Данная серия статей является туториалом по установке линукса на плату KC705 с софт-процессорным ядром Микроблэйз. В первой части я описываю процесс создания схемы платформы, на которую мы поставим систему, с описанием некоторых нюансов. Во второй части я опишу процесс сборки...

5 стадий принятия необходимости изучения «плана запроса» или почему может долго выполняться запрос Всем привет! Меня зовут Виктор, я работаю в Компании БФТ-Холдинг руководителем группы разработки. В этой статье разберем подходы и рекомендации по выявлению и устранению проблем с производительностью в системе базы данных Greenplum. Материал будет особенно полезен начинающим...

Ограничение скорости скачивания в режиме разработчика — что это и зачем нужно? В расширенном режиме для разработчиков можно детально настроить скорость скачивания на смартфоне. Расскажем, зачем это нужно и как установить ограничение скорости на телефоне. Что такое «Ограничение скорости скачивания» в режиме разработчика? В настройках смартфона можно выс...

Как мы делали маркетплейс металлопроката и почему отказались от готового решения, часть 1 Представьте себе, что арматуру для строительства дома можно заказать так же просто, как и чайник домой. Идея для наших быстрых времён просто отличная! Да, такой формат продукции не доставить в пункт выдачи около дома, но ведь есть варианты. Например, в малых объёмах металл у...

OpenAI замахнулась на конкуренцию с Google. Компания работает над собственной поисковой системы Компания OpenAI хочет попробовать свои силы в новой сфере и потягаться с самой Google. Как сообщается, OpenAI уже работает над собственной поисковой системой.  создано DALL-E Частично, возможно, поисковик OpenAI будет опираться на Microsoft Bing, что неудивительно...

Внедрение практик и принципов DAMA-DMBOK2 как предпосылки к использованию ИИ в бизнес-процессах организаций 28 сентября компания РСХБ‑Интех провела RSHB Data Integration Meetup — митап для специалистов по работе с данными, в рамках которого выступил Антон Агеев, корпоративный архитектор и техлид команды Подписки в проекте «Свой бизнес» РСХБ‑Интех. В своем докла...

Радикальная защита селфхостинга. Уровень: хардвар и хардкор Сейчас у многих есть свой личный сервер. Насколько вы задумывались о безопасности? Настроили вход по ssh-ключам, firewall и на этом всё? Давайте поговорим про РЕАЛЬНУЮ безопасность.Эта статья о том, как запариться, распилить свой ноутбук болгаркой, вставить туда микроконтрол...

Применение стационарных умных приёмников звука в составе сетецентрической системы Фомичев В.А., полковник запаса, Крюков В.А., гражданское лицо.Данная статья является продолжением статьи «Устройство умного приёмника звука в составе сетецентрической системы установления координат источника звука » Читать далее

Алгоритм MiniMax. Использование минимакса в Unity на примере игры Поймай Овечку Минимакс - популярный алгоритм для принятия решений в играх с нулевой суммой (один выиграл - другой проиграл). Казалось бы, раз он так популярен, то всё что можно было про него сказать уже сказано? Не совсем. Информация сильно раздроблена, иногда ошибочна, а найти какие-либо...

[Перевод] Настройка производительности диска и памяти в Linux В отличие от таких операционных систем как HPUX (dbc_min_pct, dbc_max_pct) или AIX (minperm%, maxperm%), в Linux нет возможности настраивать размер кэша страниц, читаемых с диска (страничный кэш, page cache). Под страничный кэш Linux использует всю доступную память. Размер с...

Защита JPG-файлов от копирования с помощью Exif и IPTC-тегов Всем привет! На связи Павел Стариков Fullstack-разработчик digital-агентства. Представьте, вы потратили целый день на создание хороших фотографий для статьи на сайте. Выставили свет, поставили «на уши» множество людей, долго работали в «фотошопе». Фотографии получились отлич...

Интеграция Keycloak в приложение Spring Boot 3 с использованием протокола OAuth2.0 В современном мире веб-разработки обеспечение безопасности пользовательских идентификаторов и управление доступом к ресурсам становятся все более важными задачами. Один из мощных инструментов, предоставляющих полноценное решение для этих задач, это Keycloak, современная сист...

[Перевод] Где джуну оттачивать навыки программирования: 6 бесплатных ресурсов Научиться писать код — непростая задача для начинающего программиста, но решаемая, если найти подходящие инструменты. В этой статье собрали полезные ссылки и рекомендации, которые помогут научиться программированию быстрее и без затрат. Читать далее

Keycloak. Standalone-HA в k8s и закрытие админки на ingress-e с переводом на localhost Привет, Хаброжители! Продолжаем делиться с вами экспертизой отдела Security services infrastructure (департамент Security Services компании «Лаборатории Касперского»). Предыдущую статью нашей команды вы можете прочесть вот здесь: Keycloak. Админский фактор и запрет аутентиф...

[Перевод] Как я ускорил QEMU в 10 раз с помощью небольшого фокуса NixOS широко использует виртуальные машины на базе QEMU для запуска своего набора тестов. Чтобы не генерировать образ диска для каждого теста, тестовый драйвер обычно загружается с помощью ресурса Plan 9 File Protocol (9p) (сервер, реализованный QEMU) для Nix Store, который ...

[Перевод] 2. Nix в пилюлях: Установка в вашей системе Вторая статья из цикла Nix в пилюлях. Устанавливаем Nix в нашу систему, разбираемся и профилями и поколениями, и выясняем, что в Nix есть база данных. Читать далее

Оптимизируем шрифты и ускоряем сайт на 5-12% Описываем способы максимально ускорить загрузку шрифтов на сайте.Развенчиваем мифы и разбираем ошибки. В статье вас ждут полезные онлайн сервисы для ускорения работы. Читать далее

Как провести фаззинг REST API с помощью RESTler. Часть 2 Всем привет! На связи Владимир Исабеков, руководитель группы статического тестирования безопасности приложений в Swordfish Security. В предыдущей статье мы рассказывали о Stateful REST API-фаззинге с применением инструмента RESTler. Сегодня мы поговорим о продвинутых возможн...

Как быстро получать данные из ОС Аврора через интерфейс D-Bus во Flutter-приложении Привет, Хабр! Меня зовут Юрий Петров, я автор ютуб‑канала «Мобильный разработчик» и Flutter Tech Lead в компании Friflex. Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. В этой статье я расскажу, как с помощью ин...

Как мы внедряли Sentry. Часть 1 — установка и настройка Привет! Я Виталий, DevOps в LEADS.SU, в этой статье хочу рассказать как мы внедряли Sentry self-hosted и приводили к продакшен состоянию, которое должно отвечать требованиям высокодоступности - нельзя терять события ошибок. При этом не хотелось заморачиваться с кластеризацие...

Почему стоит разместить CRM-систему на вашем личном сервере? К использованию CRM-систем многие бизнесмены приходят постепенно, совершая путь от простой таблички «в экселе» до покупки или облачной аренды ПО. Но остается вопрос: что лучше? Поставить CRM офлайн на машинах организации, заплатить за SaaS-решение и не мучаться с настройками...

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

Webpack vs esbuild — уже можно использовать в production? Периодически я пробую разные инструменты, и если они стабильно покрывают все необходимые сценарии - включаю в свою экосистему для коммерческих проектов. С третьего подхода за последние 3 года esbuild, наконец, приблизился по функционалу к Webpack. В статье привожу проблемы, ...

Как проверить локаторы с помощью Playwright В этой статье мы поговорим о том, что можно проверить у локатора (элемента) и какие вообще есть возможности проверок. Более того, в этой статье я описал упражнения, которые вы можете выполнить и отработать в качестве практики. Обычно мои статьи были холиварными, а не техниче...

Векторные СУБД и другие инструменты для разработки ML-моделей На фоне развития генеративных и больших языковых моделей набирают обороты векторные базы данных. В прошлый раз в блоге beeline cloud мы обсудили, насколько этот тренд устойчив, а также предложили несколько книг для желающих погрузиться в тему. Сегодня же мы собрали компак...

Простой пример ИИ для управления роботом. TensorFlow + Node Js Немного слов обо мне: мое хобби это робототехника. На данный момент экспериментирую с шагающим роботом на базе SunFounder PiCrawler. Последнее время тема искусственного интеллекта (ИИ) приобретает все большую популярность. Причиной этому служит в том числе совершенствование ...

«Тинькофф» запустил платформу для автоматической оплаты услуг ЖКХ Банк «Тинькофф» запустил платформу для оплаты всех видов жилищно-коммунальных услуг (ЖКУ). Она позволяет полностью автоматизировать начисление и оплату счетов за коммунальные услуги, и пользователю не придётся вспоминать об этом каждый месяц: сервис сам подг...

I2C датчик INA219 + Python + Repka Pi: измеряем ток, напряжение и мощность во встраиваемых системах управления Когда вы создаете проект промышленной установки, робота, дистанционно управляемой модели ровера или аналогичный проект с микрокомпьютером, встает задача контроля состояния систем электропитания. Вам нужно проверять напряжение на аккумуляторах, потребляемый ток и мощность....

Правила работы с задачами, до которых не доходят руки Я размышлял о недавнем разговоре с руководителем одной из моих команд о важности поддерживать наши бэклоги в чистоте. Мы обсудили как поступать с задачами, которые постоянно откладываются.Я записал свои мысли и делюсь ими с вами. Это довольно распространенная проблема. Задач...

[Перевод] Мой первый прототип поискового движка Я реализовал первый прототип собственного механизма поиска, который сокращённо назвал PSE (Personal Search Engine). Создал я его с помощью трёх скриптов Bash, возложив всю основную работу на sqlite3, wget и PageFind. Браузер Firefox вместе с Newsboat сохраняют полезную инф...

Затачиваем Astesrisk для работы с BLF Cisco BLF (Busy Lamp Field) — в общем, это набор индикаторов на IP телефоне, которые показывают статус линии: свободно или занято. В этой статье мы научим Asterisk правильно работать с телефонами Cisco для отображения BLF статусов. Читать дальше →

Mobile Web, навигация и при чем тут Nginx Привет, Habr! Я frontend-разработчик в Альфа-Банк. В статье я хотел бы поделиться опытом внедрения мобильной версии web приложения «Альфа-Бизнес» в нашу архитектуру. А точнее — как без массовых доработок 100 фронтовых сервисов мы заставили работать mobile web версию с новой ...

Анализ зависимостей бинарных файлов на основе ML Всем привет!

Отладка в SQL Developer Привет! Меня зовут Алексей Маряхин, я разработчик на Oracle. В этой статье продолжим знакомиться с темой отладки PL/SQL-кода.  В предыдущей статье мы изучили возможности отладки в PL/SQL Developer. В этой предлагаю рассмотреть ещё один инструмент — SQL Developer (версия...

Тестируем отечественную систему виртуализации: zVirt Привет, Хабр!В первой статье цикла, посвященного тестированию отечественных систем виртуализации, я предложил читателям проголосовать за наиболее интересные для них решения. В топ систем попали: Программный комплекс «Звезда», zVirt, VMmanager 6, РЕД Виртуализация, ПК СВ «Бре...

Как мы переводим наш мониторинг в наблюдаемость Привет всем! Полное содержание первого сезона можно прочитать тут и тут, а краткое содержание такое:  - Компания приняла решение улучшить работу клиентских сервисов и одним из рычагов для этого стал мониторинг - Мониторинг был разным (Patrol, Zabbix. NetCool), про Elast...

Как усилить безопасность Linux Debian с ispmanager для сайта на Wordpress Это первая статья из цикла, в котором расскажем о практических способах обеспечить безопасность сервера. В качестве примера — операционная система Linux Debian с панелью управления ispmanager 6 и сайт на Wordpress.В этой статье опишу:▪️ Безопасность в процессе установки Debi...

Цикл статей о Greenplum. Часть 1. GP под капотом Всем привет!Как вы знаете, многие поставщики ПО ушли с российского рынка ввиду введённых санкций и многие компании столкнулись с необходимость заняться импортозамещением в кратчайшие сроки. Не стал исключением и наш заказчик. Целевой системой, на которое было принято решение...

Доступная система видеонаблюдения с охраной на дачу за 60 минут Речь пойдет о сборке, настройке и запуске охранной системы с датчиками, камерой, хранением видеозаписей на удаленном домашнем NAS, встроенным UPS, web-интерфейсом и оповещением через Telegram.Чтобы быть предельно кратким, оформил статью в стилистике hackster.io. Информация р...

Проектирование БД рекомендательной системы по подходу DB-first В данной статье мы рассмотрим проектирование системы по подходу DB-first и то, какие проблемы он помогает не просто решить, а устранить как явление. Читать далее

Google разрешила использовать в мобильном Chrome сторонние менеджеры паролей Компания Google запускает новую функцию в мобильном браузере Chrome для Android. Как обнаружили энтузиасты, в стабильной сборке браузера появилась возможность сторонние менеджеры паролей и сервисы автозаполнения.  Функция пока скрыта от большинства пользователей, ...

Читаем нажатия ИК-пульта под Linux На Али можно найти пульт, приёмник которого будет притворяться устройством ввода. Но я опишу способ приёма нажатий с разных пультов, и действия можно настроить на своё усмотрение.Нажатия будем принимать с помощью YS-IRTM, это дешевая плата с ИК-приёмником и передатчиком, исп...

Телефон заблокировался и требует пароль — какой пароль нужен? После перезагрузки или сбоев смартфон может попросить пароль, без которого не разблокируется. Что делать и какой пароль нужен? Чаще всего смартфон можно разблокировать одним из удобных для владельца способов. Но если телефон перезагрузился или на нем произошел сбой, он може...

Как устроена наша PIM-система, и почему мы не используем ни реакт, ни микросервисы Пара слов обо мне. У меня никогда не было серьезного плана делать свой продукт, открывать под это дело компанию, погружаться в custdev и вот это вот всё. Днем я работал в сеньёр девелопером, по вечерам - делал pet-проекты типа онлайн версии настольной игры или онлайн-редакто...

Нельзя писать безопасный код на C++ без санитайзеров С++ видится мне огромным франкенштейном: очень уж много разнообразных способов описать свои намерения. В добавок к этому язык пропагандирует политику zero-cost abstractions, из которой следует (помимо прочего), что программист в ответе за все св...

Don't Repeat Yourself: Как правильно использовать принцип DRY в разработке ПО Принцип “Не повторяйся” (Don't Repeat Yourself, или DRY), то есть избегай дублирования кода, часто относят к обязательным практикам в программировании. Однако в реальности часто можно увидеть, как в общем коде оказываются концептуально разные блоки, которые похожи только по ...

Облачная трансформация ИТ инфраструктуры современной компании. Практический опыт Х5 Group Привет, меня зовут Максим Осорин, я руковожу Х5 Облаком в Х5 Group. Хочу рассказать про то, как мы трансформируем ИТ инфраструктуру крупнейшего в стране продуктового ритейлера. Зачем это нужно, как мы это делаем, с какими сложностями сталкиваемся и как их преодолеваем.Данная...

Книга «Blazor в действии» в правильном переводе команды DotNetRu Совместно с издательством ДМК Пресс мы, сообщество DotNetRu, рады сообщить об окончании работы над переводом новой книги «Blazor в действии» Криса Сэйнти.Получив первоначальный перевод от издателя, мы в сообществе постарались откорректировать текст и перевод так, чтобы перев...

Xpath — залог стабильных UI-автотестов на Web и Mobile Web Локатор — обязательный элемент любого автотеста, который позволяет системе находить правильный путь к тестируемому компоненту интерфейса. От точности локатора и корректности его оформления зависит не только, смогут ли разобраться с локатором тестировщики и другие коллеги, но...

Замена Miro, первый российский конструктор прототипов сайтов, сервис быстрых ответов в Telegram и другие стартапы 9 участников первого набора Product Radar. Битва за «Продукт недели» в самом разгаре! Product Radar — российская площадка для продвижения технологических продуктов, аналог Product Hunt. Читать далее

TMS на замену TestRail: писали для себя, а выложили в open source В прошлом году TestRail прекратил предоставлять и продлевать лицензии компаниям из России, поэтому мы в YADRO решили разработать собственную тест-менеджмент систему TestY. Опирались на опыт работы с другими сервисами, чтобы добавить тот функционал, которого не хватало нашим ...

Храним файлы Strapi в облаке Selectel Привет, я некоторое время работаю над своим пет проектом, где в основном занимаюсь фронтом, а для данных использую headless CMS под названием strapi.io. В какой-то момент у меня появилась потребность вынести медиа хранилище из локальной папки в облако. А так-как основно...

PIP — Загрузка пакетов python для офлайн установки Разговор в этой статье пойдет о том, как достать пакеты Python для оффлайн установки на разных платформах и разных версиях Python. Возможно я плохо искал, но на просторах интернета я не смог найти достаточное количество статей на русском языке, которые бы подробно объясняли ...

Настройка протокола OSPF на оборудовании Cisco и HUAWEI В прошлой статье мы рассмотрели основные моменты настройки сетевого оборудования HUAWEI и остановились на статической маршрутизации. В сегодняшнем топике речь пойдёт о динамической маршрутизации по протоколу OSPF совместно с маршрутизаторами Cisco. Добро пожаловать под кат. ...

Как удобно читать новости с любимых сайтов на iPhone. Работает даже с AppleInsider.ru Многие из нас читают новости на разных ресурсах. Кто-то делает это через социальные сети или Телеграм, а кто-то просто переходит на специализированные сайты и получает всю информацию оттуда. Вот только не всегда это удобно, и приходится выискивать свежие статьи в потоке рек...

Qucs-S: руководство по видам моделирования, часть 1 Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. О данной программе рассказывают мои предыдущие статьи. Для работы Qucs-S...

Запуск сервиса I'm Sync Мы наконец рады сообщить о том, что регистрация на сервисе I'm Sync теперь доступна для всех желающих. Чтобы воспользоваться инструментами публикации, необходимо зарегистрировать ваш сайт на нашем сервисе. С помощью компонентов публикации вы сможете добавлять на ваш сайт...

«С двух ног в игру»: как стример с ДЦП тащит в «танках» Редко можно найти настолько мотивирующих людей, как Василий Надеин. Он стримит на своем ютуб-канале STAN GAME уже не первый год и отличается от других блогеров не только неиссякаемым позитивом, но и манерой играть — Вася делает это ногами. Герой нашей статьи родился с Д...

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

Деплоим сайт в облако за рубль в месяц Как часто бывает: делаешь pet-проект, разрабатываешь фронтенд лендинга, а потом понимаешь, что это нужно протестировать. Посмотреть, как отображается страница на разных устройствах, чтобы корректно ее адаптировать. Ведь не всегда DevTools отражают «полную картину». Может б...

[Перевод] Что нового во Flutter 3.16, ч.1 Hola, Amigos! На связи Саша Чаплыгин, Flutter-dev агентства продуктовой разработки Amiga. Это статья-перевод от автора Kevin Chisholm. Оригинал статьи читайте по этой ссылке. Мы решили разбить материал на несколько частей для удобства восприятия. Читать далее

Рассчитываем оптимальный бэклог спринта с использованием методов линейного программирования Сталкивались ли вы с понятием линейного программирования? А его применением на практике? В университете мы изучаем разные разделы математики, нам рассказывают про математические модели и методы, однако вопросу их практического применения часто уделяется недостаточно внимания...

Волчистость в IT или как наставники манипулируют фактами и подменяют понятия Привет Хабр! В данной статье я планирую рассмотреть современное явление и сообщество, известное как "Волчистость в IT". Это сообщество активно развивается благодаря своим членам и наставникам. Оно также отстаивает ценности, которые являются токсичными и приводят к выгоранию....

Как выбрать сервер. Что лучше сегодня — готовая или сборная система Вы, конечно, знаете, что сервер является сердцем любого онлайн-сервиса или офисной сети. Именно серверы обеспечивают работоспособность наших любимых веб-сайтов, приложений, игр и социальных сетей, а нам позволяют открывать их 24 часа в сутки 7 дней в неделю. Эта статья — для...

Работаем с enum в kotlin/jvm правильно А вы знали, что HashMap для enum уступает по эффективности EnumMap? Или что EnumSet под капотом это обычный long? Под катом несколько рецептов удобного применения этих структур. Читать далее

Вы все еще пишете многопоточку на C++ с ошибками синхронизации? Привет, коллеги! В этой статье я покажу свой подход к написанию многопоточного кода, который помогает избежать типовых ошибок, связанных с использованием базовых примитивов синхронизации. Демонстрация идеи будет проходить на живых примерах кода на современном C++. Большинс...

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

Как настроить префикс в PortProton В программу PortProton для запуска Windows-игр под Linux добавлена возможность использовать в ОС «Альт» установленный в систему wine и wine-etersoft.Список ПО, которое можно запускать при помощи PortProton, существенно расширился.Покажем по шагам, как создавать и настраивать...

Компиляция Record для Android В Android Developers Blog выходила статья Records in Android Studio Flamingo о том как компиляторы R8/D8 преобразуют классы java.lang.Record. В ней рассказывается как добиться минификации компонентов toString() у Kotlin data-классов. Меня заинтересовала эта тема и я решил чу...

3 необычных онлайн-сервиса для заядлых картографов В наше время доминирования таких сервисов как GoogleMaps, 2ГИС, Яндекс.Карты и т.п. обычного пользователя трудно удивить онлайн-картами. Однако есть проекты, которые по-прежнему способны заинтересовать. В этой подборке я собрал наиболее интересные геоинформационные сервисы -...

Шаблонный сервис C# Всем привет, я разработчик из компании Bimeister и я хочу рассказать о шаблонном C# сервисе, который мы создали, чтобы унифицировать наши приложения и сократить время работы разработчиков над базовой настройкой приложения.Мы начинали небольшой компанией с одним основным серв...

Видео-сообщение как в Telegram. Часть третья — Контролы и раскрытое состояние Часто ли вы пользуетесь Telegram?Если да, то скорее всего вы хотя бы раз отправляли "кружочки". В этой серии статьей мы напишем небольшой проект с отображением списка видео-сообщений.Для отображения будем использовать ExoPlayer, настроим сохранение видео в кеш, а также напиш...

zVirt Hosted Engine: практика развертывания в картинках Привет, друзья! С этой статьи компания Orion soft начинает вести свой блог на Хабре. Сегодня я расскажу о том, как происходит развертывание системы виртуализации zVirt. Текст предназначен для тех, кто еще ни разу не работал с нашим гипервизором, но в тайне (или явно) мечтает...

Библиотека EremexControls.NET для Avalonia UI — Обновление март-апрель 2024 В предыдущей статье мы рассказали о нашей первой версии библиотеки UI контролов для создания мультиплатформенных приложений под Avalonia UI. С тех пор прошло достаточно времени, в течение которого мы продолжали работать над новой версией Delta Design и расширением линейки ко...

2FA для 1С по протоколу OpenID Connect на базе Keycloak Очередной пост о том, что мы делаем. В этот раз расскажу вам о том, как мы обеспечили безопасность информационных баз 1С с использованием сервиса аутентификации Keycloak через протокол OpenID Connect и настройку двухфакторной аутентификации с&nb...

Почему я почти никогда не начинаю проектирование (или дизайн) сайта с главной страницы По той же причине, по которой не начинаю писать книгу с придумывания обложки, статью с заголовка, создавать курс с введения и рассказа об авторе, рисовать портрет человека с глаз.Главная страница сайта — это вишенка на торте. Я буду точно знать, из чего она состоит и как раб...

Браузер Arc для iOS научился генерировать персональную страницу с ответами на поисковый запрос Функция работает на базе языковых моделей OpenAI.

Домашняя страница Google Диск получила изменённую поисковую панель Искать свои файлы в хранилище Google станет проще

Laravel трюки: автоматическое подключение каналов логирования Всем привет! Меня зовут Иван Шишкин и я руковожу разработкой в агентстве Intensa.В этой статье хотел бы поделиться методом автоматического подключения каналов логирования в Laravel через механизм сервис контейнеров(DI). Читать далее

Планируем переход с Civil 3D на nanoCAD GeoniCS Смена платформы проектирования не бывает простой. Сложность этого процесса зависит от огромного количества факторов: размера организации, количества подразделений и специалистов, типа проектов, уровня BIM-зрелости компании, того, насколько полно и качественно описаны бизнес-...

Танцы с парсингом, kubernetes и миграция в Yandex Cloud: как мы делали «Контрагентио» Речь пойдёт о сервисе, который изначально мы задумали как внутрикорпоративную систему проверки контрагентов, а затем разработали как коммерческий продукт. Коротко расскажем о том, что делает система, с какими проблемами столкнулись при разработке и как их решали, как запуска...

Blekko забанил 1,1 миллиона сайтов В то время как Google меняет поисковые алгоритмы, чтобы снизить вес мусорных сайтов, другие поисковики идут на более радикальные меры. Вчера система Blekko забанила сразу 1,1 млн доменов, где «слишком мало контента и слишком много рекламы». Исключение сайтов из выдачи Blek...

Гайд по микрофронтендам на single-spa, или Как уже наконец-то уйти от монолита во фронтенде Привет, Хабр! Меня зовут Данил, я Frontend-разработчик в Samokat.tech. Недавно мы с командой распилили монолит на Angular и перешли к микрофронтендам на Vue. Наш опыт я постарался упаковать в пошаговый гайд – надеюсь, этот материал поможет тем, кто только начинает свой ...

Как мы создавали дизайн-систему: опыт компании Звук Привет, Хабр! Меня зовут Мария Бажина, я Android Developer в компании Звук. Вот уже полтора года я работаю над дизайн-системой, поэтому знаю здесь каждую мелочь. И в этой статье я хочу рассказать, зачем нам нужна дизайн-система и в каком виде она существует в нашем прое...

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

Ловушки интеграционного тестирования в Spring Boot Я Александр Таношкин, ведущий инженер-программист сервиса Циан.Ипотека. В статье я поделюсь некоторыми экземплярами коллекции «ловушек» интеграционного тестирования — падений тестов, расследование которых может быть увлекательно, но крайне затратно. А также предложу практиче...

Безопасный Zookeeper: SASL with Digest-MD5 Привет! Столкнулся с тем, что быстро не нашел простой инструкции, как с использованием SSL и SASL настроить безопасный кластер из нескольких Linux узлов Zookeeper, и решил это исправить. В этой статье поговорим о том, как: - Настроить Zookeeper в кластере из трех узлов без ш...

Как пройти собеседование на позицию системного аналитика в 2024 году Привет, Хабр! Меня зовут Андрей Царев — я системный аналитик, технический интервьюер и ментор.Системный анализ — одно из популярных направлений в ИТ. Но далеко не все представляют, как правильно готовиться к интервью и проходить их. В&...

Разбираем самый маленький JPEG в мире Недавно на Хабре была опубликована статья Разбираем самый маленький PNG в мире. Интересно, а какой самый маленький файл JPEG? В ответах на StackOverflow и Reddit можно встретить размеры 107, 119, 125, 134, 141, 160 байтов. Все они представляют серый прямоугольник 1 на 1. И к...

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

Настройка Eltex SMG-3016 в роли УПАТС На волне импортозамещения и ухода заграничных вендоров из страны всё более актуальным становится железо отечественных производителей, хотя выбор пока не такой большой. В сфере VoIP многие организации, особенно госучреждения, всё чаще используют IP-АТС из линейки Eltex SMG. В...

Геймдев на Lisp. Часть 1: ECS и металингвистическая абстракция В данной серии практических руководств мы подробно рассмотрим создание несложных 2D-игр на Common Lisp. Результатом первой части станет настроенная среда разработки и простая симуляция, отображающая двумерную сцену с большим количеством физических объектов. Предполагается, ч...

Как Google, но для лиц: PimEyes заблокировала поиск детей PimEyes, поисковая система распознавания лиц, работающая по подписке, изменила политику работы сервиса, запретив поиск изображений несовершеннолетних. Платформа, располагающая базой данных, насчитывающей около трех миллиардов лиц, и ежедневно осуществляющая около 118 000 пои...

ASIC и FPGA: сорок лет эволюции Внутри каждого современного телефона несколько микросхем ASIC. Ими наполнены автомобили, стойки в центрах обработки данных, датчики «умного дома», и вообще все электронные устройства. Без чипов ASIC был бы невозможен быстрый интернет, трехмерные игры и ускорители машинного о...

Чтение на выходные: «Найти идею. Введение в ТРИЗ — теорию решения изобретательских задач» Генриха Альтшуллера Генрих Альтшуллер — изобретатель, автор теории решения изобретательских задач. «Найти идею» — это его последняя работа. В ней ТРИЗ описана наиболее полно. Книга пестрит задачами, решениями и заветными «а. с.», а за счет пояснений даже гуманитариям будет понятно, как с помощь...

Продолжаем изучать аппаратные возможности расширения Микротик RBM33G В своей предыдущей статье я рассказал о возможностях расширения «обвеса» Микротик RBM33G и некоторых особенностях этой платы, в частности интегрированном GPIO-интерфейсе. Я не остановился на достигнутом и продолжил свои опыты, чем и хочу поделиться с читателем. Модули реле ч...

Продавцы на Яндекс Маркете получили бесплатный доступ к статистике поисковых запросов покупателей Яндекс Маркет открыл продавцам бесплатный доступ к аналитическому отчёту со статистикой поисковых запросов покупателей. Он устроен как Вордстат — инструмент, показывающий статистику запросов в поиске Яндекса.  Отчёт Маркета позволя...

Модель зрелости SOAR Михаил Пименов, аналитик Security VisionВ этой статье мы попробуем взглянуть на модель зрелости компаний, внедряющих системы информационной безопасности класса IRP/SOAR. Здесь также существует масса интерпретаций и способов систематизации. Я предлагаю взглянуть на модель зре...

CSS для печати на бумаге По работе я довольно часто занимаюсь созданием генераторов печати на HTML для воссоздания и замены форм, которые компания традиционно заполняла от руки на бумаге или в Excel. Это позволяет компании переходить на новые веб-инструменты, в которых форма автоматически заполняетс...

Поисковая система Яндекса получит нейросетевое обновление в ближайшие дни В Яндексе рассказали о скором масштабном обновлении поисковой системы, в неё добавят ИИ

Как настроить тестирование с Vanessa Automation и Gitlab с нуля Боитесь, что тесты пропадут, если компьютер сломается? Хотите видеть историю изменений? Вынуждены запускать тесты в отпуске, т.к. у других членов команды нет к ним доступа? Не можете одновременно работать над написанием и прогоном? Знакомы эти проблемы, хотите избавиться от ...

Может ли ChatGPT заменить визит к врачу? Проверяем эффективность ChatGPT в определении диагноза и выборе лечения Сейчас люди многие важные проблемы решают с использованием сил искусственного интеллекта, однако вопросы здоровья всегда стоят остро и требуют большей квалификации.Возможно ли заменить визит к врачу обращением к ChatGPT? Наверняка у многих есть плачевный опыт использования G...

Тестирование сборки: Supermicro X13SAE-F Intel Core i9-14900KF 6.0 GHz В этой статье мы поделимся результатами тестирования компьютерной сборки на базе материнской платы Supermicro X13SAE-F и нового процессора Intel Core i9-14900KF с возможностью разгона до 6.0 GHz.HOSTKEY — хостинговая компания, поэтому нам важно своевременно обновлять оборудо...

Новая атака Loop DoS представляет угрозу для 300 000 систем Исследователи описали новый вектор application-layer атак, основанный на протоколе User Datagram Protocol (UDP) и получивший название Loop DoS. Такой DoS представляет угрозу для систем Broadcom, Honeywell, Microsoft и MikroTik, и может «замкнуть» сетевые сервисы в бесконечно...

[Перевод] 10 распространённых рисков проекта и шаги по их устранению Анализ рисков проекта помогает управлять проектом от начала до конца, чтобы исключить или сократить потери или неудачи в бизнесе. Причины рисков зависят от типа, сложности и продолжительности проекта. Цель анализа рисков проекта состоит в том, чтобы выявить возможные угрозы ...

Калибровка магнитометра: через вращения к компасу Многим сервисам критически важно иметь информацию о местонахождении подключенных устройств. Кикшеринг — не исключение. Нам в Whoosh нужно отслеживать каждый отдельно взятый самокат в каждый отдельно взятый момент времени. Поэтому все наши самокаты оснащены навигационным прие...

Data-рынок: как российские ЦОДы справляются с нарастающим спросом Традиционно рынок серверов, систем хранения данных и сетевого оборудования в России был представлен зарубежными компаниями — Dell, HP, Cisco и другими. В 2022-2023 гг data-центры взяли активный курс на импортозамещение при поддержке государства и отечественных поставщиков, п...

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

Препарируем Wazuh. Часть 2: Подключаем источники В первой статье мы начали рассмотрение решения с открытым кодом Wazuh. Мы развернули систему в конфигурации All In One, то есть все компоненты находятся на одном узле. В этой статье мы продолжим настройку нашего SIEM. Конечно, после установки он уже не совсем бесполезен, так...

Организуем High Availability PostgreSQL Чтобы система долго работала без сбоев и перерывов, нужно поработать над отказоустойчивостью. В статье дадим несколько способов её построить и покажем готовое решение. Читать далее

5 небольших фишек iPhone 15 Pro и iPhone 15 Pro Max, которые делают их круче других Айфонов В этом году Apple не стала себе изменять и выпустила, как и прежде, четыре новых Айфона. Два базовых — iPhone 15 и iPhone 15 Plus. И две модели с продвинутыми характеристиками и возможностями — iPhone 15 Pro и iPhone 15 Pro Max. И если об основных отличиях между...

Как я совмещаю в себе токсичного человека и приятного собеседника На переговорах с клиентами я уже автоматически использую такие формулировки, которые предполагают, что ответственность за те или иные события лежит на мне:Не говорю: «Возможно, вы меня неправильно поняли».Говорю: «Возможно, я неправильно донёс свою мысль».Не говорю: «Вы не з...

Создание плагина для Фигмы: дизайнеры захотели — разработчик подсуетился День только начинался, ничего не предвещало беды, как вдруг в чате с дизайнерами появился вопрос: «Есть ли плагин в фигме, который при наведении на страницу показывает все используемые текстовые стили?..» Гугл такой плагин не нашел, поэтому я вызвалась его написать, предвари...

28 марта 2024 г. Новое в поисковом автотаргетинге: настройки в динамических объявлениях, обновление расширенного превью и статистики 28 марта 2024 г. Новое в поисковом автотаргетинге: настройки в динамических объявлениях, обновление расширенного превью и статистики7 Голос(ов)

Хакеры начали распространять бэкдор через поддельные сайты IP-сканеры В Интернете появились сайты-подделки, имитирующие сервисы для определения всех подключённых к сети устройств — IP-сканеры. Мошенники через рекламную сеть Google Ads продвигают в поисковой системе сайты с доменными именами, которые по написанию очень похожи на легитимные.

Как завести газонокосилку после простоя: пошаговая инструкция Чтобы техника служила долго и не подвела в самый неподходящий момент, нужно правильно с ней обращаться. Это особенно касается бензинового инструмента, в том числе цепных пил, триммеров и газонокосилок. Например, перед запуском газонокосилки после зимовки необходимо ее подгот...

Многорукие бандиты в задаче ритейла В настоящее время набирают популярность модели Reinforcement Learning для решения прикладных задач бизнеса. В этой статье мы рассмотрим подмножество этих моделей, а именно многоруких бандитов (multi-armed bandits). Также мы:- обсудим, какие задачи теоретически могут быт...

Как работать с динамическими блоками в nanoCAD и переносить объекты из AutoCAD Все привыкли к тому, что первый инструмент проектировщика — это AutoCAD, который доминирует в мире черчения и проектирования с момента создания с 1980-х годов. Известность AutoCAD в сообществе САПР сравнима с известностью Photoshop в с...

Эволюция Traffic Engineering. Основы, распределённый и централизованный расчёт туннелей, магия PCE Как оптимизировать путь данных внутри чёрного ящика под названием «сеть» и гарантировать необходимый уровень сервиса пользователям своего приложения? Эта задача может волновать не только сетевых инженеров и архитекторов, но и разработчиков, и DevOps-команды. Для глубокого по...

[Перевод] Сжимаем текст в изображения PNG (Наверно, это глупая идея. Но иногда даже самые глупые идеи приводят к неожиданным результатам.)Текст шекспировской трагедии «Ромео и Джульетта» состоит примерно из 146 тысяч символов. Благодаря английскому алфавиту каждый символ можно описать одним байтом. Так что размер те...

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

5 полезных функций iOS 17, которые Apple спрятала от всех Хоть в iOS 17 и огромное количество различных проблем, но новых функций, которые сделают использование iPhone удобнее, все же больше. Правда, некоторые из них Apple так глубоко спрятала в недра системы и ни слова о них нигде не сказала, что обнаружить их можно только самост...

Перенос вашего проекта под Embox на новую плату STM32 Всем приветВ этой статье я хочу показать, насколько в Embox легко перенести существующий проект на новую платформу. За основу возьмем уже описанный ранее демонстрационный проект с ModBus и расскажем, как портировать наш проект на новую плату на примере STM32 NUCLEO-F2207ZG.В...

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

Ни пуха тебе, ни руля: зачем Москве собственные беспилотные автомобили Привет, Хабр! Это команда беспилотных технологий «МосТрансПроекта». Многие, наверное, знают, что в течение нескольких лет мы развивали проект собственного беспилотного автомобиля, в ходе которого нам пришлось решать множество порой, нетривиальных задач. Полученный нами ...

ВТБ запускает банковское приложение для ОС «Аврора» Член правления ВТБ Святослав Островский на полях финансового форума Finopolis-2023 заявил, что ВТБ первым среди российских банков разработал банковское приложение для отечественной операционной системы «Аврора». Напомним, на днях в розничную продажу поступил...

Сериализация данных в Golang с Protobuf Привет, Хабр! Protobuf, или Protocol Buffers, это бинарный формат сериализации, разработанный в Google для эффективного обмена данными между сервисами. Это как JSON, только компактнее, быстрее и типизированнее. Если JSON был вашим первым крашем в мире сериализации, то Protob...

Книга завершена [SDK & UI-библиотеки] Вычисляемые свойства. Заключение Это главы 47-48 раздела «SDK и UI-библиотеки» моей книги «API». На этом второе издание книги завершено, все шесть разделов готовы. Если эта работа была для вас полезна, пожалуйста, оцените книгу на GitHub, Amazon или GoodReads. English version on Substack.Верн...

Ещё раз об экзоконтинентах, тектонике плит и зарождении жизни Не так давно уважаемый @SLY_G опубликовал на Хабре перевод интересной статьи «Когда во Вселенной впервые появились континенты». Ссылаясь на исследования и модели Джейн Гривз из Школы физики и астрономии Кардиффского университета в Уэльсе, автор статьи (Эван Гоф) рассуждает о...

Особенности и проблемы mock-сервера Swordfish API Emulator Эта статья — продолжение истории про разработку Ansible-модулей для взаимодействий с системами хранения данных (СХД) через API, которое удовлетворяет спецификации Swordfish. Эти модули в перспективе облегчат управление парком СХД от разных производителей.Чтобы тестирова...

5 лучших команд для запуска с помощью Action Button на iPhone 15 Pro Вместе с появлением iPhone 15 Pro и iPhone 15 Pro Max ушла целая эпоха. В этих смартфонах Apple впервые отказалась от переключателя беззвучного режима и заменила его на универсальную кнопку действия. С помощью нее, как и прежде, можно включить и выключить звук на телефоне, ...

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

[Перевод] О вреде Test Driven Development Artem Zakharchenko, автор библиотеки для тестирования MSW с 15К звезд на GitHub, поделился мыслями о Test Driven Development.TDD - это неправильная практика. Она всегда была неправильной. Она неправильна по определению. Ее главная заслуга - поощрение тестирования, но на этом...

[recovery mode] О найме. Взгляд оттуда Давайте поговорим о том как нам обустроить Россию правильно нанимать людей и не задавать глупые вопросы на интервью. Читать далее

Почему существует только 5 правильных многогранников? Ответ даёт неравенство из 8-го класса Вы когда-нибудь задумывались, почему в природе встречаются кристаллы лишь пяти типов правильных многогранников? Почему не бывает, скажем, правильных семиугольных кристаллов? Ответ кроется в удивительных свойствах платоновых тел - пяти идеальных многогранников, впервые описан...

Инкубатор для умного дома Все ниже описанное является плодом воспаленного мозга программиста, отягощенного неуемным и любознательным сыном. Читать далее

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

Хроники пикирующего бота или как важно не пропускать стадию QA в проектах Эта статья должна была рассказать вам о проекте простого телеграм-бота, который заточен на одно простое действие: мониторинг доступности сайтов. Но, опубликовав MVP и представив проект на публику, мы заранее не провели полный объем необходимых тестов, в самый ответственный м...

Go (fiber) vs Rust (axum) JWT&DB На medium.com есть ряд статей со сравнением простых web-сервисов, написанных на разных языках. Одна из них Go vs Rust: Performance comparison for JWT verify and MySQL query и судя по ней, Go на 42% быстрее чем Rust. Я решил перепроверить и заодно поменять Gin на Fiber, Axis ...

Как самостоятельно издать книгу? На примере книги «Антихрупкость в IT» Прошлой осенью моя книга Антихрупкость в IT вышла в цифровой и аудио-версии, а в январе этого года книга появилась на Озоне в бумажном варианте. Я издал книгу самостоятельно при том, что в начале пути у меня не было опыта и знаний о том, как издаются книги.В этой с...

Память как у пингвина: Работа памяти в Linux Что такое память и какие они бывают в Linux? Как с ней взаимодействовать? Каковы её особенности?Что такое кластеры, откуда в ядре Linux грязные и чистые страницы - читайте в этой статье! Читать далее

Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте Привет! Я Александр Омельяненко, Flutter-разработчик в AGIMA. Недавно мне понадобилось быстро настроить CI/CD на Flutter-проекте. Те несколько руководств, что я нашел в интернете по этой теме, были либо с нерабочими примерами, либо запутанные и просто плохого качества. Но вс...

Подборка: навыки и инструменты начинающего Go-разработчика Привет! Меня зовут Александр Тетеркин, я Go-разработчик в VK. Раньше я писал на Python, потом перешел на Go — пишу на этом языке уже три года, а также являюсь наставником на курсе «Go-разработчик с нуля».Я знаю, что новички в любой сфере задаются вопросами о том, с чего нача...

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

Настройки Яндекс Станции, которые нужно изменить сразу после покупки Яндекс Станция — очень популярное устройство, установленное в сотнях тысяч домохозяйств по всей стране. Эта колонка позволяет нам управлять компонентами умного дома, слушать музыку, да и просто общаться с голосовым ассистентом. И, хотя разработчики Яндекса постарались сдела...

Как организовать спринт так, чтобы команда не выгорала Работа проджект-менеджера со стороны может показаться понятной и давно описанной в книгах. В то же время нам приходится работать не только и не столько с проектами, сколько с людьми. И вот тут возникает очень много вещей, которые зависят больше от так называемых soft-скиллов...

Ключевой навык успешной карьеры в ИТ или 8 заблуждений на проектах Привет! Если по вашим венам уже во всю течет оливье, но полноценно работать работку пока не тянет, или просто хочется легкого полезного чтива, то данная статья как раз для вас. В ней я постараюсь на реальных примерах рассказать об одном навыке, который считаю ключевым для ра...

DevOps as a Service. Часть 3. Решаем проблему дежурств и хаоса в чате с использованием RCA и единого flow Всем доброе утро! С Вами Крылов Александр, и мы продолжаем серию статей про DevOps as a Service. В прошлых статьях мы описали подход и показали пути решения проблем с контролем ресурсов команды и инфраструктуры, с ними можно ознакомиться тут и тут. Сегодня мы поговорим о пос...

Пишем файловую систему для работы с изображениями на TypeScript В этой статье мы займемся созданием файловой системы на NodeJS + TypeScript в пользовательском пространстве, которая будет управлять изображениями пользователей. Она будет преобразовывать их в различные форматы, изменяя размеры и предоставляя уникальные бинарные данные изобр...

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

Проектирование боевых систем в играх: с чего начать Большинство игровых продуктов в том или ином виде сталкиваются с боёвкой. Где-то это эпический кошмар уровня Dark Souls, где-то полуавтоматический бой между группами чибиков в мобильном батлере. В этой статье я покажу один из подходов, используемый геймдизайнерами при проект...

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

Google прекратила существование. Все сервисы компании перестанут работать Одним из самых известных, крупных и популярных брендов на общемировом уровне является Google. Это американская корпорация, создавшая одноименную поисковую систему, и такая пользуется колоссальной популярностью по всему земному шару, в том числе в России. Помимо Читать полну...

Kafka, go и параллельные очереди В этой статье я расскажу о паре способов увеличить пропускную способность системы с помощью партиций kafka и каналов go. В качестве библиотеки-клиента kafka буду использовать segmentio/kafka-go. Статья будет полезна начинающим go-разработчикам, которые уже знакомы с основным...

Построение платформенного продукта в Авито Мы в Авито разработали свою внутреннюю платформу для разработчиков. Несмотря на то, что создание платформенного продукта — довольно затратная история, в итоге мы видим сплошные плюсы. Она растит скорость и качество разработки, делает системы стабильнее, помогает инженерам со...

Как студенты участвовали в огромной IT выставке со своим стендом Всем привет, на связи Максим Рожков, frontend разработчик команды "ПИН-КОД".Наша студенческая команда смогла поучаствовать в выставке с демонстрационным вариантом нашего сервиса "Изучение русского жестового языка".В этой статье вы узнаете, как обычные студенты поучаствовали ...

Нескучная стеганография, или как мы зашифровали секретные ключи пользователей в джипегах Рассказываем, как использовать методы стеганографии и шифрования в децентрализованных сервисах на IPFS. Исключаем риски, связанные с централизованным хранением логинов и паролей. Используем метод LSB, «наименьший значащий бит». Внутри статьи — примеры кода на C# и алгоритме ...

OpenAI разрабатывает поисковую систему на базе ИИ На текущий момент можно смело заявить, что компания OpenAI делает значительные успехи в области искусственного интеллекта, и, по всей видимости, компания не собирается останавливаться на достигнутом. Сегодня достаточно известный инсайдер заявил, что компания OpenAI в настоящ...

Успешный опыт участия в Data Science хакатонах В статье я хочу поделиться успешным командным и личным опытом участия в хакатонах и ML соревнованиях. На примере 13-ти соревнований, по итогу которых мы победили или оказывались на призовых местах, я рассажу о практических советах для будущих участников. На личном опыте я уб...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)