DIY на заводе или как сделать измерительный комплекс для оценки износа опорных роликов Привет, Хабр! В предыдущей статье я уже описывал свой опыт реализации программного (и немного аппаратного) комплекса «Системы сбора технологических данных» в рамках промышленного предприятия. А в этой статье я хочу поделиться опытом реализации DIY-проекта для нужд завода, ...
Как я делал систему сбора данных на провинциальном заводе и что из этого вышло Привет, Хабр! Меня зовут Валерий, и я проработал инженером на заводе шесть лет. Звучит как начало занятий по групповой психотерапии для выгоревших сотрудников, но о моём выгорании и причинах этого я расскажу как-нибудь в другой раз. В данной статье хочу поделиться историей...
Формирование задач для выбора информационной системы из стратегических целей проектной организации Настоящая статья является развитием статьи “Организация процесса выбора среды общих данных для проектов объектов капитального строительства”. Ее публиковал ранее тут. В ней мы говорили о важном шаге при выборе будущей информационной системы - описании задач, для которых прио...
Анонимные мессенджеры: лучшие решения для конфиденциального общения В наше время защита приватности и данных чрезвычайно важна. Пользователи все чаще выбирают мессенджеры, которые гарантируют безопасность, включая сквозное шифрование и минимальный сбор метаданных. Каждый из них, что логично, имеет свои особенности. Так, вопросы безопасности ...
Изучаем RISC-V с платой Sipeed M1S Наконец-то появилось время и желание пощупать и опробовать в деле давно купленную отладку от Sipeed на базе RISC-V SoC BL808. Попутно я решил собрать материал по теме и поделиться с читателями своим опытом использования этого SoC в разных сценариях. Помимо обзора отладки и S...
VPN с Mobile IP на Raspberry Pi. WG туннель Для умных дядь в статье ничего интересного, это статья про обычный туннель. Оно для самых маленьких, но отчаянно нуждающихся. :)Когда я стал упорядочивать "знания" ввиде этой статейки, и понял, что в итоге получилось, то заметил, что информации по данной теме, оказывается, п...
GIMP Script-Fu Первый Дан. Шаг первый Здравствуй Читатель! Если ты хочешь научиться программировать расширения для GIMP с помощью Script-fu тебе сюда. Я планирую опубликовать серию статей по данной теме. И эта статья только первый шаг в увлекательный мир лайф-кодинга. Что это значит? Расширение GIMP Script-fu пр...
.NET Digest #4 Добро пожаловать на четвёртый выпуск нашего дайджеста, посвящённого новостям и событиям в мире .NET! В этот раз набралось множество новостей, и команда PVS-Studio рада представить вам подборку самых интересных и полезных материалов. Поехали! Читать далее
Комбинационная логика на SystemVerilog Данная статья посвящена разработке аппаратуры на SystemVerilog со стороны человека, который сам только начинает углубленно в этом разбираться. Рассчитана она на то, чтобы другим новичкам было проще сориентироваться в незнакомой среде, поэтому некоторые аспекты здесь буд...
Регулярные выражения простыми словами. Часть 1 Разработчики делятся на два типа: тех, кто уже понимает регулярные выражения и порой решает сложные задачи одной строкой, и тех, кто все еще боится и всячески их избегает. Эта статья специально для вторых, чтобы им было проще стать первыми. Она либо поможет преодолеть «реге...
Discord не работает: Как починить с помощью GoodbyeDPI 08.10.2024 начались сбои дискорд, в этой статье расскажу как обойти блокировку discordУ кого не работает Дискорд добро пожаловать в настройки обхода блокировкиhttps://github.com/ValdikSS/GoodbyeDPI/issues/692откройте russia-blacklist.txt и допишите домены Читать далее
Анализируем простейший усилитель В настоящей статье я хочу рассмотреть и проанализировать широко известную и подкупающую своей простотой минимальную схему усилителя на одном биполярном транзисторе: Прекрасно осознавая, что в Интернете на данную тему имеется огромное количество статей, тем не менее рискну н...
Чистый код: Начало По дате публикации, данная статья является завершением, а на самом деле предисловием к циклу статей написанных по теме чистого кода. В статьях отразил свой взгляд на создание гибкого и читаемого программного кода, где акцент сделан на примерах.Текущая же статья посвящена общ...
Mattermost + Jitsi + k8s В данной статье будет показан процесс установки и настройки Mattermost (team-edition) и Jitsi (с авторизацией по JWT токену) в Kubernetes кластер. Читать далее
История моего увлечения астрономией Листая страницы Хабра, я периодически натыкаюсь на статьи по теме астрономии. Никогда не думал, что эта тема будет на Хабре так популярна и широко распространена. Любители астрономии и астрономических наблюдений – самый малочисленный круг людей из всех, с которыми я когда-ли...
Оптимистические и пессимистические блокировки на примере Hibernate (JPA) Привет, Хабр! Давно хотел стать частью «деврел» сообщества: писать статьи, участвовать автором в митапах и т. д. Но никак не мог найти тему для рассказа. Недавно решил изучить тему «оптимистическая» и «пессимистическая» блокировки, но на&nb...
Технологии слежения: простой гайд для настройки системы мониторинга вашего бизнеса Я покажу, как сервис, который изначально создавался для мониторинга серверов, можно использовать для бизнесовых кейсов. Речь пойдет про Grafana.Grafana — это интерфейс для анализа данных в различном виде. Причем источником данных может быть что угодно: база данных, excel.Дав...
Что не так с iOS или как приручить BrowserStack Всем привет и добро пожаловать в мой хабр про интересные задачи и их решения в моей ежедневной работе. Уверен, что каждый QA (и не только) сможет найти здесь что-то интересное и полезное. Начнем! Пару недель назад я взял задачу по написанию и настройке автотестов видеоплеера...
Подсчет уникальных значений поля в ClickHouse Привет, Хабр! Существуют разные задачи в IT, многие решаются алгоритмически или условно за счет архитектурных решений. Среди всего многообразия задач также интересны задачи, решаемые с применением статистических методов.Одной из таких задач является приближенный расчет коли...
Zynq 7000. HDMI для платы Zynq Mini для baremetal Я давно носил идею проверки HDMI на платах Zynq, и вот наконец-то дошли руки до этого интересного топика. В этой статье я покажу, что вывод изображения через HDMI достаточно прост, но ограничусь только рассмотрением вывода изображения из baremetal-приложений, а вопросы про L...
Резервное копирование системы виртуализации Basis.DynamiX с помощью RuBackup Привет всем, кто заботится о данных и не собирается их терять. Сегодня мы рассмотрим тему бэкапа виртуальных машин (ВМ) на платформе виртуализации Basis.DynamiX (далее — DynamiX). Для этого будем использовать систему резервного копирования (СРК) RuBackup.В ста...
Как грузить данные во ViewModel? Привет, Хабр! Эта статья будет полезна для мобильных разработчиков, потому что в ней обсуждаются различные подходы к первоначальной загрузке данных во вьюмодели (Jetpack ViewModel) при ее использовании в проектах на Jetpack Compose (либо Compose Multiplatform). Тема эта наст...
Биометрия и видеонаблюдение Всем привет! В этой статье на стыке ИБ и юриспруденции мы разберем правовые основы видеонаблюдения. Как организовать его в компании в соответствии с законом, какими статьями и нормами оно регулируется, как собирать биометрию и при каких условиях в дело вступает Единая Биомет...
Опыт быстрого старта MIS в банке Привет! Я – Мария, руководитель производственного центра в компании “ПрограмБанк”. Наше направление – внедрение типовых и заказных решений по сбору данных и расчету финансовой, управленческой, регуляторной отчетности.Продолжаю серию статей с примерами использования no-code и...
Настройка no-code приложения ALM (Управление активами и пассивами) Привет! На связи опять команда “БизнесАнализ” от ПрограмБанка и я, Мария, её руководитель.Продолжаю цикл статей с примерами использования self-service инструментов хранилища “БизнесАнализ”.В этой статье показываю пример самостоятельной настройки аналитиком бизнес-приложения ...
Как создать простую операционную систему с нуля Многие разработчики хоть раз задумывались о том, чтобы создать свою собственную операционную систему (ОС). Это может показаться сложной задачей, но, если разбить процесс на этапы, создание минимальной ОС становится более реалистичным. В этой статье мы рассмотрим основные шаг...
Базы данных: общие понятия. SA для самых маленьких Добро пожаловать в блок статей для начинающих системных/бизнес аналитиков. Здесь мы готовимся к получению заветного оффера вместе Пожалуй, начнем с самого базового и примитивного - определения.База данных (БД) - это набор данных, хранящихся в структурированном виде.Вторым к...
ИИ-система по извлечению информации со сканов счетов: от разметки до реализации Для автоматизации бизнес-процессов часто требуется обработка бумажных документов со сложной структурой — например, счетов, накладных и так далее. Частый сценарий: есть почтовый ящик, на который поступают сканы оплаченных счетов. Этот почтовый ящик разбирается, и информация о...
Использование ChatGPT для автоматизации генерации кода в JS-проекте В своих предыдущих статьях о разработке телеграм-ботов я делился опытом создания базового функционала и работы с командами через аргументы (раз, два). На этапе подготовки третьей статьи передо мной встал вопрос генерации однотипного кода для новых команд, что превратилось в ...
Оконные функции простым языком — Фреймы Привет всем!Это вторая часть к продолжению статьи "Оконные функции простым языком с примерами". Рекомендую ознакомиться сначала с ней, а потом вернуться к прочтению данной статьи, чтобы полностью понимать синтаксис и применение оконных функций. В этой статье будет разобрано ...
Валидация модели данных в ASP.NET Core 8.0 на основе HTMX Валидация данных на стороне сервера с HTMX 2.0. Разбираемся с валидацией модели данных на основе платформы ASP.NET Core.В статье мы освоим базовую реализацию валидации данных на стороне сервера. На стороне сервера мы используем самый простой способ коммуникации - HTTP.Знаком...
Создаем свою ORM на python — гайд ORM, или объектно-реляционное отображение — это программная технология, которая позволяет взаимодействовать с базами данных с использованием объектно-ориентированной парадигмы. Вместо того чтобы писать SQL-запросы напрямую для работы с данными в базе данных, можно использова...
Next.js v15 — Работа над Ошибками Привет! Это ставшая уже регулярной рубрика о релизах next.js (читайте релизы по v11, v12, v13, v14). Каждый релиз - набор нового, интересного и спорного. Новая версия не станет исключением. Но всё же новая версия интересна не столько новым функционалом, сколько изменением пр...
Введение в ПЛИС: Содержание курса Цикл статей посвящен изучению базовых принципов работы с ПЛИС. Данная статья включает в себя оглавление с ссылками на последующие публикации и введение курса. Последующие статьи будут раскрывать отдельные темы курса, возможно, также появятся вспомогательные статьи по разбору...
Операционная система реального времени Xenomai 4 В данной статье подробно рассмотрим, как собрать ядро, поддерживающее EVL core, и библиотеку, реализующую пользовательский API для этого ядра. А также разберем некоторые аспекты реализации драйвера устройства и приложения под Xenomai 4.Xenomai — Фреймворк для разра...
Пишем свой Http Kafka Sink Connector В данной статье приведу реализацию своего kafka http sink connector. Он не претендует на универсальность, но возможно поможет разобраться как разработать свой connector. Читать далее
Цифровая настройка хода в часах на STM32 простым языком В этой статье будет формула для расчёта значений регистров подстройки скорости хода часов в STM32 (функция RTC smooth calibration) на основе величины отклонения времени за сутки. Информации по этой теме много, но именно для компенсации нужного количества секунд в день я не н...
Проверка содержимого PDF-файлов средствами Python и pdfminer. Часть 2 В предыдущей части статьи мы рассмотрели общие подходы к тестированию PDF и познакомились с тем, как библиотеки pdfminer и PDFQuery помогают нам получать детальную информацию об объектах. Достаточно ли нам этой информации? Далеко не всегда. В этой статье мы расскажем о решен...
Работа с календарями в BI — с DAX и без него Привет, Хабр! При работе с Business Intelligence и дашбордами практически в любой предметной области встречаются даты и календари, поэтому от выбора представления дат и их составных частей (день, месяц, квартал, полугодие, год и т.д.), ключей дат и таблицы с датами зависит п...
Путешествие в мир эмуляторов микропроцессоров Всем привет!Не так давно на Хабре появился занятный пост о разработке процессора, и я понял, что созрел для своей первой статьи как раз в этом направлении.Тема разработки эмуляторов олдскульных микропроцессоров типа того же Intel 8080 не нова. Если вы уже разбираетесь в вопр...
Что творится на Российском рынке художественной литературы Привет Хабравчане!В прошлой статье я писал про наше приложение “ЧтоПочитать?” — рекомендательную систему для поиска интересных книг. В начале статьи я говорил, что ощущаю кризис на рынке художественной литературы. Но существует ли этот кризис на самом деле? Параллельно с раз...
Как написать свой небольшой парсер на Python? Всем привет. Я думаю, что некоторые задавались вопросом о том, как написать свой небольшой парсер на Python. В данной статье я хочу рассмотреть достаточно простой случай - это парсинг данных уже с готового датасета stackexchange.com. В дальнейшем уже можно будет работать с ...
Синергия ручных проверок и автоматизации: как мы улучшили тестирование и ускорили запуск продуктов При работе над проектом задавались ли вы хоть раз вопросами: как быть уверенным в качестве покрытия тестами продукта? Как максимально эффективно организовать свою работу и обработку задач? Как подружить ручные проверки и автоматизацию? Если ответ — да, то привет и добро пожа...
Муравьиный алгоритм. Решение задачи коммивояжера В данной статье я бы хотел объяснить работу алгоритма муравьиного алгоритма и решить с его помощью задачу коммивояжера. Решение задачи сводиться к выходу из какой-либо вершины графа, прохождению по всем вершинам по одному разу самым коротким путем и возврату к начальной точк...
Аппаратное кодирование HEVC в FFmpeg — как быстро вникнуть и начать уже сейчас? В прошлой статье, посвящённой изучению кодирования на HEVC в FFmpeg, мы разобрали большинство функций работы с видео и научились эффективно сжимать видео или ускорять процесс кодирования для различных задач, преимущественно в программном кодировании. На этот раз моё внимани...
Уведомление в telegram при блокировке пользователя AD или локального пользователя Данная статья описывает как реализовать уведомление в телеграм при блокировке пользователя Windows. Я постараюсь полностью описать процесс реализации уведомления о блокировке, уточнения и поправки категорически приветствуются. Читать далее
Решение по автоматизированной проверке движений документа в Vanessa Automation В этой статье хочу поделиться своим решением по проверке движений документов. Думаю, что не нужно подробно описывать зачем они нужны. Если уж заинтересуетесь, то можно найти много подробной информации в интернете. Поэтому совсем немного, напомню, что движения - это определен...
Разработка цифровой аппаратуры нетрадиционным методом: CGA видеоадаптер на SpinalHDL В предыдущей статье (ч.1, ч.2) я рассказывал как построить свою полностью открытую вычислительную систему на опенсорсных решениях — некую синтезируемую систему-на-кристалле, которая будет адаптирована под ваши задачи, в которой всё до последнего триггера находится под вашим...
Разбираемся с сетевым программированием на Rust Язык программирования Rust стал достаточно популярен благодаря своей надежности, безопасности и производительности. В рамках данной статьи мы не будем подробно обсуждать преимущества данного языка, так как на эту тему уже написано много статей. Вместо этого мы рассмотрим раз...
Разработка служб для Windows на C++ В данной статье описан пошаговый процесс разработки служб для операционной системы Windows с использованием языка программирования C++.В статье будет представлена теоретическая база по работе служб в Windows, рассмотрено их общее устройство и будет реализовано приложение, с ...
Любопытное продолжение задачи об электричках. Так может LLM ее решить или нет? Автор статьи "ChatGPT и Gemini не могут справиться даже с простой математической задачкой на логику" дал простую задачу о встречных поездах ChatGPT 4-o и Gemini, которые ее провалили. Мне нравятся такие простые, наглядные и эффектные тесты, поднимающие серьезные проблемы с с...
Как подружить Gorm и PostGIS, решение промышленного уровня GORM Фантастическая ORM для Golang.PostGIS расширяет возможности реляционной базы данных PostgreSQL , добавляя поддержку хранения, индексирования и запросов геопространственных данных.В этой статье поделимся своим опытом интеграции GORM и PostGIS, сложностями при п...
От коммивояжера до эмпатичного ИИ: как менялась работа с обратной связью Теоретически в нашей вселенной можно найти компанию, которую не интересовало бы мнение ее клиентов. Сделать это будет крайне сложно, тут придется постараться. И, конечно, такая компания вызовет недоумение: как она до сих пор умудряется существовать?!Сбор и анализ обратной св...
Apache Spark: настройка и отладка Большинство современных приложений содержат в себе набор настроек по умолчанию, позволяющий обеспечить достаточно эффективную работу разворачиваемого приложения что называется «из коробки». Есть конечно критики данного подхода, но в целом он позволяе...
Тварь ли я дрожащая или право имею. Берем чужие сайты под свой контроль. Часть 2 — Пользовательские скрипты в Chrome Сегодня продолжаем тему написания расширения для Chrome, позволяющего внедрять свой код на чужие сайты, тем самым меняя или дополняя их функционал и внешний вид по своему желанию. Для чего это нужно и чем может быть полезно, рассмотрено в предыдущей части. Также в предыдущей...
Алгоритм Прима В данной статье я бы хотел объяснить работу алгоритма Прима. Алгоритм используется для нахождения минимального остовного дерева. Сам алгоритм очень прост, в статье хотел бы поделиться своей реализации на языке Go. Читать далее
Межсетевые экраны в 2024 году Статья посвящена межсетевым экранам (МЭ) в 2024 году, их функционалу, архитектуре, и ключевым параметрам. Автор рассматривает функциональные возможности присущие межсетевым экранам на момент 2024 года без привязки к конкретным производителям. В статье рассмотрена архитектура...
Что делать, если WAF не умеет работать с JSON: готовое решение Сегодня расскажем вам о нестандартном подходе к защите веб-приложений с помощью PTAF PRO. Мы с коллегами столкнулись с интересной задачей: как защитить уязвимое приложение от вредоносных JSON-запросов, если WAF официально не поддерживает их обработку в пользовательских прави...
Реализация поддержки кириллицы в терминале для МК AVR В одной из прошлых статей я писал про разработку, точнее, про расширение терминального интерфейса микроконтроллера AVR, добавив функционал обработки управляющих символов и последовательностей для поддержки истории и редактирования команд. В данной статье я решил написать про...
CI/CD Kubernetes платформа Gitorion. Реплицируемый NAS для Highly Available кластера Kubernetes Привет всем! В предыдущей статье в рамках построения Highly Available варианта CI/CD Kubernetes платформы Gitorion мы рассмотрели реализацию Highly Available плоскости управления Kubernetes, разнесенную в два дата центра и способную пережить падение любого из них. Инстансы G...
Настройка Anycast-адреса в рамках бюджетного тестового стенда В рамках IPv4 и IPv6 есть понятие Anycast-адресов. Если упрощать, то это IP-адреса выглядящие как обычные «серые» или «белые» адреса, но которые одновременно могут работать как на одном сервере, так и на множестве. Есть мнение, что это сложно настраивается, требует много доп...
Измеритель толщины филамента В данной статье представлен обзор двух вариантов датчиков для измерения толщины нити, проволоки, линии. Такие датчики можно применять для измерения толщины филамента, интенсивности спектральных линий, числа капель, штрих-меток и др.  ...
Настройка CI/CD для AWS Lambda с CodePipeline и SAM CLI Приветствую! Сегодня я расскажу вам как настроить CI/CD для AWS Lambda с использованием AWS CodePipeline и AWS SAM CLI. Если вы хотите автоматизировать процесс деплоя серверлесс-приложений и избавиться от рутины, то эта статья для вас. Читать далее
Как написать D-Bus сервис, работающий на системной шине, на Rust Привет, Хабр! На связи Федотов Максим, ведущий разработчик в "Открытой Мобильной Платформе". В этой статье я хочу поделится нашим опытом создания D-Bus-сервиса на Rust, который работает на системной шине.Если Вы только недавно начали изучать темы ОС GNU/Linux, Rust и D-Bus, ...
Понимание прогноза глюкозы в AndroidAPS часть 2 Попробуем развить мысль на счет прогноза глюкозы в AndroidAPS. Ранее в статье я описывал какие прогнозы существуют и в общих чертах описал как принимаются решения. Сейчас уточним и улучшим понимание прогноза глюкозы. Ведь финально нас интересует не прогноз сам по себе, а ск...
Kaggle для футболистов: Классификация событий на футбольном поле Всем привет! В конце 2022 года закончилось соревнование DFL - Bundesliga Data Shootout. Так как мне интересен футбол и в целом спортивная аналитика, то я решил поучаствовать в этом соревновании. Целью данной статьи является описание моего подхода, и я уверен, что многие мето...
Профессиональное выгорание из-за потери смысла своей деятельности Каждый, кто сталкивался с выгоранием, наверняка заблаговременно чувствовал что "что-то идёт не так". Выгорание - это срабатывание естественных защитных механизмов, активный протест нашей психики, проявляющийся на всех уровнях - от ментального до физического. Меня зовут ...
Матстат в одной схеме Данная статья посвящена описанию базы математической статистики.Описывается суть матстатистики от постановки задачи до рассмотрения инструментов её решения. Читать далее
Кот не птица, на жёрдочке не усидит При написании этой статьи сперва мне хотелось описать какие нибудь параллели с ИТ, а потом с умным видом сделать вывод, но потом я решил, что фотографий котиков в статье будет вполне достаточно. Ну а для тех, кому статью читать не хочется, а фотографии кошачьих не интересуют...
RxJS Interop в Angular 18: основные изменения и преимущества ✏️
Про auto.offset.reset в Spring Kafka Так исторически сложилось, что Apache Kafka использует для своих сообщений смещения (или же offset). В зависимости от нужд для настроек консьюмера можно выставить в параметр auto.offset.reset три значения: earliest, latest, none. По умолчанию, если данный параметр не задан, ...
[Перевод] Базовые действия по реагированию на инциденты кибербезопасности в Linux Данная публикация - перевод статьи - Linux Incident Response от Jeenali Kothari. Статья о том, какие действия может выполнить сотрудник кибербезопасности при подозрении на компрометации системы на базе Linux. Читать далее
PostgreSQL – особенности работы с памятью для 1С-систем. Часть 1 Этой статьей мы начинаем цикл, посвященный различным настройкам по оперативной памяти в PostgreSQL. Тема непростая, даже сложная. Понятной информации по ней крайне мало (по состоянию на октябрь 2024). Поэтому будем разбираться, шаг за шагом, вдумчиво и, как принято у нас в б...
[Перевод] Архитектура и реализация виртуальной машины CPython Для любого языка программирования, компилируемого в байт-код, самой интересной частью его реализации является виртуальная машина, где и происходит выполнение этого байт-кода. Поскольку это ключевой элемент работы языка, его реализация должна быть высокопроизводительной. Даже...
Корутины: stackful vs stackless В этой статье я хочу объяснить разницу между stackless и stackful корутинами: чем они отличаются, какие у них плюсы и минусы, а также в общих чертах рассказать, как в некоторых языках программирования реализована многопоточность.Я стараюсь писать статьи п...
Простая настройка CI/CD для Фронтенда и Бэкенда в Github без сторонних инструментов бесплатно в 2024 году Всем привет! Недавно решил попробовать, что из себя представляет Flutter Web, подумал, может попробовать сделать бота для Telegram, и заодно настроить простейший CI/CD для отдельного фронтенд- и бэкенд-проектов. Однако в интернете я не нашёл простой и исчерпывающей инструкци...
Как заставить LLM работать на вас – разбираемся на примере задачи сопоставления товаров на маркетплейсе Привет, Хабр! На связи команда продуктового матчинга ecom.tech. В этой статье мы расскажем, как используем LLM для задачи сопоставления товаров на маркетплейсе. Как перевести задачу с продуктового языка на язык промптов. Что делать, если ни одна LLM не обучается на нужн...
Моделируем работу ПЛИС красиво Настройка визуального представления сигналов при моделировании в среде ModelSim (часть 1)Добрый день читателям Хабра! Меня зовут Алексей, я занимаюсь работой с ПЛИС (FPGA) уже более 15 лет. Хабр читаю давно, но статьи здесь никогда не писал. В общем решил попробовать. Не зн...
Как мы попробовали Apache Iceberg в связке со Spark и что из этого вышло Тема преимуществ открытых табличных форматов при работе с озерами данных всё чаще поднимается в среде дата-инженеров. Предполагается, что их использование способно устранить недостатки популярного Apache Hive. Но так ли это на практике?Меня зовут Иван Биленко, я инженер данн...
Настройка хранения электронных писем в Carbonio Одним из самых простых и эффективных способов оптимизировать размер почтовых ящиков на сервере является настройка времени хранения писем. Автоматическое удаление писем по истечении настроенного срока их хранения позволяет пользователям не превышать выделенную им квоту без до...
RedOS & MAAS (костыль нам и строить, и жить помогает) Привет, Хабр! Меня зовут Алексей Зернов. В этой статье я расскажу об автоматизации развертывания отечественной операционной системы РедОС. На решение было потрачено огромное количество сил и времени, поэтому я буду рад, если этот материал с описанием процесса сэкономит кому-...
[Перевод] От RPA к ИИ-агентам: новая эра автоматизации бизнес-процессов Привет, на связи Шерпа Роботикс. Сегодня мы перевели для вас статью, тема которой напрямую касается нашей деятельности, как вендора платформ для умной роботизации бизнес-процессов. В этой статье вы узнаете о процессе эволюции роботизации, а также рекомендации, в каких случая...
Ядерные погремушки в каждой избушке. Технологии атомной индустирии в автоматизации бытового теплоснабжения Привет всем маленьким любителям больших технических систем! В данной статье расскажем, как технологии создания систем управления ядерным реактором могут применяться в быту. Рассмотрим пример практического применения модельно-ориентированного подхода и структурного моделирова...
[Перевод] Отправка метрик Pi-Hole в Graylog с помощью Zabbix В начале 2021 года я написал статью, посвященную сбору детальных метрик Pi-Hole с помощью telegraf и influxdb с последующим отображением на дашбордах Grafana. Прошло несколько лет и я перешел на Graylog (для логирования) и Zabbix (для контроля за ошибками и производительност...
Реляционная алгебра для DAX: ALL в итераторе SUMX для SUMMARIZECOLUMNS Привет, Хабр! Язык запросов DAX популярен и эффективен для построения дашбордов в Business Intelligence, и за счет свой функциональной природы DAX в чем-то ближе к реляционной алгебре, по сравнению с SQL. Особенности DAX удобно рассмотреть на основе примеров DAX-запросов, пе...
Outcome-driven innovation (ODI) — фреймворк для стратегии, основанный на CX Фреймворки встречаются нам часто, например, их достаточно много в программировании (Swift UI, если мы говорим про IOS-разработку), в маркетинге (SWOT-анализ), в продакт-менеджменте (RICE для приоритезации). Любой фреймворк, который мы применяем в той или иной деятельности, д...
Как понять продукт и зачем это нужно разработчику Если вы не понимаете бизнес своей компании, вы не сможете полностью реализовать свои технические навыки. Крутой технарь на позиции СТО, который знает нюансы TOGAF и отличия Raft от Paxos — это хорошо, но мало. Вы должны принимать решения не только исходя из технических детал...
Keycloak. Мапинг учеток через mTLS c двойной проверкой в kubernetes Продолжаем с делиться экспертизой отдела Security services infrastructure (департамент Security Services компании «Лаборатории Касперского»). В данном посте мы разберем, как легко настроить mTLS, обращаясь к ресурсам в k8s через ingress-контроллер, и подсоединить это все к k...
Битрикс. Оптимизация сервиса, который помогает устранять опасности Представьте: горячий металл, мощные машины, сотни работников — наше производство постоянно подвержено различным рискам. И как мы превратили эти вызовы в возможности? Этот рассказ будет о том, как мы воплотили в жизнь инновационную для компании систему сбора заявок об опаснос...
Температура успеха: как X5 Tech измеряет эффективность развития IT-продуктов Привет, Хабр! На связи команда ad-hoc аналитики X5 Tech. Если вы работаете в IT, то знаете как непросто оценивать результативность развития IT-продуктов и команд. А теперь представьте, что таких продуктов у вас десятки, и решения по ним нужно принимать оперативно, ведь речь ...
Создаём свой реестр данных на основе ФГИС «Аршин». Часть 1 — добавляем данные в PostgreSQL и сокращаем размер БД Всем привет, этот практический цикл статей рассчитан на начинающих. Я решил поделиться своим опытом создания реестра данных на основе государственного. В этой статье займемся загрузкой и обработкой данных о результатах поверки средств измерений. Читать далее
Автоматизировать аналитику, визуализировать данные и не только — примеры российских BI-решений Большинство российских BI-решений к 2024 году уже достигли необходимого уровня развития, чтобы заменить зарубежные продукты. Но требования клиентов к BI-системам сильно отличаются. Кому-то необходимы простые и понятные дашборды, другим — возможность настройки по специфически...
Как сделать простые метрики для оценки полосы пропускания сети? Если вам важна высокая стабильность и скорость сети на ваших серверах, тогда вам надо отвественнее подойти к выбору провайдера. В данной статье я показываю, как добавить метрики и дешборды в Grafana для оценки скорости сети с помощью speedtest-exporter. Читать далее
[Перевод] Строим ETL-конвейер для машинного обучения с помощью Kafka, Clickhouse и Go В этой статье я поделюсь с вами своим опытом использования Golang, Kafka и Clickhouse на примере простого ETL-конвейера для параллельной передачи JSON-данных в базу данных с последующим прогнозированием температуры на основе машинного обучения. Читать далее
[Перевод] Использование Rust в серверах, написанных на других языках, для повышения производительности В этой статье мы рассмотрим несколько стратегий по постепенному добавлению Rust в сервер, написанный на другом языке, например JavaScript, Python, Java, Go, PHP, Ruby и т. д. Один из возможных кейсов для подобного добавления — вы ...
Кластеры и мир: хроника высокодоступного Pub/Sub в Redis В статье рассматриваются основные принципы и особенности использования Redis в режиме Pub/Sub для масштабируемых и высоконагруженных приложений. Описаны два подхода к обеспечению высокой доступности — Redis Sentinel и Redis Cluster, их преимущества, ограничения и примеры нас...
Собираем сетевое хранилище (NAS) XPenology Привет! С вами снова Александр, DevOps из Банки.ру. Прошлая статья «Домашний сервер на базе Proxmox» вызвала интерес сообщества и бурное обсуждение в комментариях. Сегодня продолжу тему и расскажу о сборке NAS (Network Attached Storage) своими руками из доступного сейча...
Владельцы iPhone по-прежнему смотрят свысока на пользователей Android, согласно новому исследованию All About Cookies Компания All About Cookies опубликовала результаты исследования на тему того, как использование iOS и Android влияет на отношения между людьми. Около 22% пользователей iPhone признаются, что свысока относятся к тем, кто отправляет текстовые сообщения не через ...
Как мы укротили 156 ETL-процессов в Airflow за один день: метод, который изменил работу DevOps Всё началось с того, что однажды мы решили развернуть Airflow для управления нашими ETL-процессами. И не просто развернули, а сделали это в K8s. Но зачем это понадобилось?Наша задача была довольно проста: взять данные из одной системы и переложить их в другую. Главным хранил...
Интеграция Unity кода в React Native. Часть 2 Всем привет! На связи снова команда dev.family. Мы продолжаем разбирать тему интеграции Unity-проекта в приложение, написанное на React Native.В предыдущей серии…Мы начали с того, что поместили игру на Unity в наше приложение. Как это было, можно почитать в предыдущей статье...
Решение СЛАУ с симметричной разреженной матрицей В этой статье мы будем рассматривать решения СЛАУ вида Ax = b, где A - симметричная разреженная матрица. Такие матрицы появляются, например, при решении задач методом наименьших квадратов. Для симметричных СЛАУ разработаны специальные методы, такие, как метод Холецкого и LDL...
Не удержался-2 – цепная реакция. Ответ ответа на статью про «где лучше платят» На самом деле я никогда не жил и даже не посещал Германию, но сам больше 2 лет назад покинул РФ и переехал в страну Канада. Думаю, Вы согласитесь, что Канада и Германия куда ближе к друг другу по «духу», чем любая из них к России. Написать ответ на&n...
Сплит-клавиатура Sofle v2 с точки зрения менеджера по продажам Всем привет! Меня зовут Алексей, я работаю менеджером оптовых продаж в самом простом «опенспейс» офисе. Совсем недавно я стал обладателем сплит-клавиатуры Sofle v2 и расскажу о своём опыте знакомства с данным девайсом, его покупке, сборке и настройке, впечатлениям от использ...
Учимся (не) проходить финалы на стажировку в Яндекс Об этом не пишут в рекламных постах. Здесь не будет призыва идти на стажировку и восторженных отзывов, только бесконечные отказы и поиски решений данной проблемы. Я покажу путь от "достаточно спорный" до "достаточно хороший" кандидат, который уже 8 месяцев сидит на финалах. ...
Node.js-бот для Телеграм: CRUD-L через аргументы команд Я продолжаю описывать собственное погружение в мир телеграм-ботов, начатое в предыдущей публикации. Тогда я создал простого бота на Node.js с тремя стандартными командами (/start, /help, /settings) с использованием библиотеки grammY, который мог работать в режимах long polli...
Ddos-атака c Kali Linux — простейший пример В данной статье я поделюсь опытом ddos атаки уязвимой машины metasploitable.Как ее устанавливать в виртуалбокс и настраивать я писал в этой статье:https://habr.com/ru/articles/850188/Еще раз напоминаю правовую информацию:Данная статья создана исключительно в ознакомительных/...
Матрицы Паули. Финал Матрицы Паули. Финал. Это последняя статья на эту тему. Все предыдущие с таким заголовком были тренировочными перед этой, с разным результатом, разумеется. И мне и вам, тема как бы интересна, но прямо скажем - не будем на этом зацикливаться. Спойлеры, что вас ждет в финале:В...
[Перевод] CISQ. Исследование анализа качества ПО 2020 — часть 1 Консорциум по качеству информации и программного обеспечения (CISQ) запустил опрос «Состояние отрасли» - первое комплексное исследование анализа качества программного обеспечения. В этой статье перевод части результатов опроса - раздела "Инженерия". Во второй части будет пер...
Слово пацана (менеджерам и исполнителям посвящается) Самое важное, что характеризует любого менеджера – это то, как он выдерживает собственные обещания. Не то, как он их дает, а то, как выдерживает.В зависимости от психологических особенностей и опыта работы, менеджеры бывают разных типов, прямо как на картинке. Причем менедже...
Топ 10 трюков для оптимизации SQL. Часть 1 В этой серии статей мы рассмотрим 10 трюков для оптимизации ваших SQL-запросов. Большинство трюков из этой статьи многие уже знают, но я всё равно решил о них упомянуть ) Читать далее
Koin: как сделать свой DI за 10 минут Привет, меня зовут Иван Курак, я Android-разработчик приложения Ozon Job. В этой статье мы реализуем свой механизм, на котором построен Koin. Тем самым мы пройдём путь, который проходили его авторы при решении проблемы построения собственного DI.Эта статья будет полезна тем,...
Оптимизация Arenadata DB: как избежать критических ошибок и повысить производительность кластера Привет, Хабр! Меня зовут Дмитрий Капралов, я работаю в команде консалтинга компании Arenadata. Одной из наших задач является проведение аудита кластеров СУБД Arenadata DB (ADB). Проектирование физической модели данных и настройка квотирования ресурсов кластера пров...
ETL-проект для начинающих Data Engineers: От почтового сервера до Greenplum Привет, Хабр! Меня зовут Дмитрий, я инженер данных, и это моя первая статья. В ней я хочу поделиться своим пет-проектом, который посвящен созданию ETL-процесса — важного элемента в работе любого Data Engineer. Мой проект направлен на извлечение данных из электронной почты и ...
Рекомендатель кино или как написать за выходные свое DIY-решение для поиска новых фильмов Вечер. Пересматриваю «Пятницу 13». Не люблю пересматривать фильмы, даже хорошие. Но выбрать интересное кино из потока новинок сложно. Поэтому мне захотелось написать свой рекомендатор кино. Этим и займусь в выходные. В статье покажу, что получилось написать за 2 дня. Пи...
[Перевод] Теория игр как способ управления ИИ Привет, на связи Елена Кузнецова, специалист по автоматизации Шерпа Роботикс. Сегодня я перевела для вас статью, посвященную риску появлению предвзятости в предложениях искусственного интеллекта. Это серьезная проблема, ведь чему мы обучим ИИ, то и получим в его ответах. В п...
Как войти в айти, если на дворе 1991 год Я написал ряд статей по истории техники, с которой сталкивался. Раз, Два, Три, Четыре. Но эти статьи были посвящены технике. А как было с наймом на работу? Итак, на дворе 1991 год. Вы не знаете, кто вы - джуниор, миддл и сеньер, потому что никто не знает этих слов. Вы не пой...
Simple Rails. Часть 1 — начало: свой веб сервер Всем привет, думаю, читатель, нажавший на данный заголовок, уже догадывается, о чем примерно пойдет речь. Данная статья рассчитана на тех, у кого уже есть какое-либо понимания языков программирования (лучше если именно Ruby), а также хотя бы общие сведения о HTML, работе ОС ...
Заметки по ROS: Простое введение в launch файлы PlanHow it worksUses casesProblems w launch files 5.Examples of existing launch filesPractical example (optional)Это вторая из серии статей о робототехнической платформе ROS. Первая статья здесь. В этой статье я расскажу о launch файлах http://wiki.ros.org/roslaunchСтандарт...
Нейронная сеть учится понимать сигналы светофора Сегодня нейронные сети всё чаще используются для решения различных задач – от распознавания лиц до управления беспилотными автомобилями. Однако для тех, кто только начинает знакомиться с этой технологией, может показаться, что процесс обучения нейросети — это что-то сложное ...
[Перевод] Туториал по Spring Data Envers для начинающих Команда Spring АйО перевела статью, которая отлично подойдёт тем, кто ещё не знаком со Spring Data Envers. В статье на простых примерах объясняется, как отслеживать изменения данных в приложении, используя этот инструмент. Читать далее
Уровни изоляции транзакций в PostgreSQL, MySQL, MSQL, Oracle с примерами на Go В данной статье обсудим проблемы, возникающие при конкурентной работе с данными, а также инструменты для их решения – атомарные инструкции, явные и неявные блокировки и уровни изолированности транзакций, реализованные в OLTP СУБД PostgreSQL, MySQL, SQL Server, Oracle с...
Востребованность и полезность 3D для управления строительными проектами через СОД «Трехмерное моделирование» (3D), уже много лет используется при реализации строительных проектов. 3D технологии позволяют создавать точные и детальные модели зданий и сооружений, что помогает улучшить качество проектирования и минимизировать ошибки в строительных проектах. «...
Опыт внедрения практик AppSec/DevSecOps Процессы разработки должны быть построены так, чтобы гарантировать предсказуемый уровень безопасности продукта на выходе. Именно с такой идеей мы приступали к модернизации наших внутренних процессов в «ЛАНИТ ― Би Пи Эм».Мы провели исследование мировых практик обеспечения без...
Как фрагментация индексов в SQL Server «подкладывает свинью» производительности, и что с этим делать Привет, Хабр и его читатели! Меня зовут Дарья Четыркина, я программист SQL в IT-компании «Автомакон». Предлагаю обсудить проблему, которая может «съедать» производительность вашего SQL Server — фрагментация индексов, в конце статьи будут решения этой ситуации. Если вам ...
Управление цепочкой вызовов асинхронных функций Во фронтенде часто приходится вызывать асинхронные функции одну за другой, а потом отменять всю цепочку. У каждого опытного разработчика есть свои методы. В этой статье я хочу поделиться своим опытом: как прервать выполнение цепочки вызовов изнутри и снаружи, как обрабатыват...
Разведка по Telegram ботам Приветствуем дорогих читателей! Продолжая рубрику статей ШХ, в этой статье мы решили более подробно сфокусироваться на ботах в Telegram, т.к они во множестве случаев бывают ни чуть не хуже и эффективней распространённых инструментов в OSINT. Рассмотренные в этой статье б...
Использование библиотеки ActiveSession Сама по себе эта статья не является самостоятельным произведением. По факту она служит дополнением к основной, обзорной, статье по новой библиотеке ActiveSession. Эта библиотека предназначена для использования в веб-приложениях, серверная часть которых написана на ASP.NET C...
От проваленного пилота до идеальной системы — как мы научились работать с LLM проектами LLM — одно из самых сложных и интересных направлений в Data Light. В статье расскажу о своем опыте управления LLM-проектами: как провела с командой первый провальный пилот, какие инсайты по процессам из него извлекла, и как их после применила на успешных проектах. Поговорим ...
Футбольные алгоритмы глобальной оптимизации (часть 2) В предыдущей статье я рассказывал о некоторых метаэвристических алгоритмах, инспирированных динамикой футбола и стратегическими элементами футбольного матча. В этой мы продолжим знакомство с семейством таких алгоритмов.Алгоритм футбольной оптимизации (Football Optimization A...
Адские условия: Самый суровый краш-тест технологии распознавания паспорта Как вы знаете, в ситуациях, когда необходимо быстро и безопасно обработать данные паспорта и любых других документов, технологии распознавания Smart Engines творят настоящие чудеса. Качеству и надежности нашей технологии доверяют лидеры цифровой трансформации: госведомства, ...
Ускорение работы тeстов методом правильной настройки Testcontainers В современных разработках ускорение тестирования является критически важной задачей, особенно в условиях интенсивной работы с CI/CD. В этой статье мы рассмотрим, как оптимизировать процесс тестирования с использованием Testcontainers и Spring, чтобы минимизировать время иниц...
Количественные исследования: погрешность выборки и сколько ответов нужно собрать Количественные опросы нужны, чтобы принимать обоснованные решения, будь то запуск нового продукта или оценка удовлетворённости клиентов. Они позволяют измерить мнение большой или малой аудитории, но важно понимать, сколько людей нужно опросить, чтобы результаты были точными ...
Кто твоя целевая аудитория? Подробный алгоритм работы с ЦА для маркетолога Это статья про работу с целевой аудиторией для маркетологов. Полезна для решения узких профессиональных вопросов. Будет глубокое погружение, поэтому много текста, примеров и иллюстраций. Но при этом, всё простым языком без мудрёных терминов, чтобы информация л...
Расширения VSCode для комфортной работы с проектами Для работы с проектами существует куча редакторов кода и IDE (VSCode, NeoVim, SublimeText, WebStorm и т.д.). В данный момент наиболее популярны VSCode и Webstorm и у каждого есть свои плюсы и минусы. Webstorm является примером прекрасного IDE от компании JetBrains, где многи...
Чего хотят айтишники? В нашем недавнем зарплатном опросе мы спросили айтишников, что бы они изменили на своём рабочем месте. Из 1500 человек ответ дали около 400. В этой статье мы расскажем о том, что, по мнению самих специалистов, могло бы сделать работу комфортнее и продуктивнее. Читать далее
Безопасность цепочек поставок ПО. Построение процессов с помощью OSS Привет, Хабр! Рассказываем об одном из вариантов применения Open Source инструментов Software Supply Chain Security. Коллеги по цеху попросили выложить небольшой его обзор сюда:) Эта статья является краткой текстовой версией моего доклада с конференции PHD2. Если тема вас за...
Почему не стоит использовать C в C++ Друзья! В данной статье мы бы хотели порассуждать на тему использования инструментария языка C в C++, и как это может повлиять на исходную программу.Ссылки на полезные ресурсы вы сможете увидеть в конце статьи, и обязательно делитесь своим мнением в комментариях, нам будет о...
Что под капотом миграции писем с Exchange Server на Яндекс Почту Привет, Хабр! Я продолжаю цикл статей, посвященный разным аспектам администрирования Организаций Яндекс 360 для бизнеса. В этот раз я отойду от принципа «туториал» и расскажу о том, как появился новый функционал миграции из Exchange Server без сбора паролей и как этот принци...
Тернистый путь к единому хранилищу метрик Метрики — один из трёх базовых типов телеметрии и основа мониторинга любого приложения. Но что, если необходимо собирать их в рамках крупной и высоконагруженной экосистемы? Как собрать метрики с десятков тысяч хостов разных ЦОДов и сотен типов приложений? И как упростить инж...
Параллелизм и феномен ван дер Поля Зачем нужны потоки, если есть параллелизм ВКПа? Поговорим об этом подробнее. По существу мы тем самым продолжим тему статьи[1], рассмотрев только более сложный пример, чем простые и абстрактные счетчики. Рассмотрим по ходу сначала пример, а уж потом и его реализацию на поток...
[Перевод] Знакомство с Litex на Tang Nano 9K Автору всегда нравилась идея Litex, фреймворка для простой сборки SoC на FPGA, но постоянно не хватало времени, чтобы попробовать. Пришло время изменить это и задокументировать процесс! Мы будем использовать плату FPGA Sipeed Tang Nano 9K, которая является относительно недор...
Разработчики dzen.ru, что с вами не так? Приветствую, Хабравчане!Статья о сайте дзен, точнее об отсутсвии простого и известного фунционала на нём, который есть почти на каждом форуме. В статье много боли и вопросов, почему так могло произойти. Подключайтесь, будем выяснять вместе. Читать далее
Почтовая система VK WorkSpace в собственном дата-центре: архитектура, миграция с Exchange, внедрение и эксплуатация Развертывание корпоративной почты — задача «со звездочкой» для любого ИТ-специалиста. Надо гарантировать, что решение выдержит нагрузки, позволит подключить нужное количество пользователей, «не ляжет» в самый ответственный момент, не потеряет данные и позволит переехать с др...
«Ну и чё это вы тут продаёте мне?» Правила подготовки основного продукта для маркетолога или почему они не покупают? Ты маркетолог или специалист смежной профессии. Это статья про тип продукта «Core offer» или по-русски «основной продукт». Статья сугубо профессиональная, она подробная и с примерами, но написана простым языком.Цель — дать понимание, как нужно готов...
[Перевод] Дизайн и реализация виртуальной машины CPython Наиболее интересной частью каждого языка, компилируемого в байт-код является виртуальная машина (также известная как интерпретатор байт-кода), в которой происходит исполнение байт-кода. Поскольку это наиболее важная часть реализации языка, она должна быть...
Pygame для начинающих программистов.Статья вторая. События В первой статье мы определились с каркасом программы, разобрали ее структуру и разложили по блокам. В этой статье для нас будет интересен главный игровой цикл. Разделим его на три условных раздела: Читать далее
Angular Signals Implementation Сигнал — это значение, которое является «реактивным», то есть может уведомлять заинтересованных потребителей, когда оно изменяется. Существует множество различных реализаций этой концепции. В данной статье мы рассмотрим имплементацию команды Angular, углубимся в код и попроб...
Обзор на российскую СХД от YADRO: какова TATLIN.FLEX.PRO в деле Компания, которая часть инфраструктуры размещает у нас в облаке, попросила подобрать решение on-premise для размещения объектов критической информационной инфраструктуры. Инженеры mClouds собрали технические требования, нашли подходящее решение в реестре Минпромторга и согла...
Не играй в догонялки со Spring — Explyt Spring plugin для IDEA Community ВведениеВсем привет. После моей предыдущей статьи о Maven плагине, где я предложил новый подход к реализации и создал свою версию для IDEA (вместо того чтобы писать свой мини-мавен, я делегировал всю основную работу ему посредством Maven плагина), меня пригласили работать на...
Деловые игры рыцарей круглого стола Как мы здесь оказалисьВ прошлой статье была затронута тема такого формата взаимодействия для задач, как деловые игры. На самом деле, и у нас, как у компании, и у некоторых наших сотрудников есть своя история и свой опыт в участии и проведении таких игр как для заказчиков, та...
Монитор для чувствительных глаз — алгоритм подбора и один параметр, о котором Вы уже скорее всего забыли Подбор монитора для чувствительных глаз? Лично мне это знакомо в бОльшей степени, чем хотелось бы. Придумал - или скорее формализовал - алгоритм решения этой проблемы, по нему же быстро нашёл идеальный для своих глаз сетап, прошедшие полгода без нареканий. И сам алгоритм и х...
PostgreSQL 'VALUES -> ANY' transformation: должна ли СУБД делать работу за пользователя? Недавно, на хабре вышла статья про один нюанс в оптимизаторе PostgreSQL [1]. Будучи предельно технической и скучной по-определению, она триггернула интересную дискуссию в комментах и дала мне, как разработчику систем баз данных, возможность взглянуть на систему с точки зрени...
Разработка бота для Telegram на платформе .NET ВведениеTelegram — один из самых популярных мессенджеров в мире, предлагающий такие функции, как групповые чаты, каналы, голосовые и видеозвонки, а также возможность создания ботов. В данной статье мы не будем ставить цель показать, как создать с нуля приложение a-la "Hello,...
А так ли важно планирование поставок в ритейле? Зачастую среди топ-менджмента или миддл-менджмента в ритейле бытует мнение, что система управления запасами — это задача вторичной важности. Есть более приоритетные задачи такие как обеспечение работы склада или процесс управления ценами. Либо же существует представление, чт...
Настройка Carbonio Proxy Carbonio Proxy - один из ключевых узлов инфраструктуры Carbonio, который выполняет роль обратного прокси. Он не только обеспечивает единую точку входа для пользователей на почтовый сервер, но также эффективно скрывает от посторонних топологию других узлов Carbonio и выполняе...
Пишем простую нейронку для адаптивного управления JVM: обучение и применение многослойной нейронной сети на Java Данная статья является описанием моего эксперимента передать управление ресурсами JVM нейронной сети, которая будет предсказывать необходимость управления ресурсами на основе текущих данных, таких как загрузка CPU и память. Читать далее
SQLAlchemy 2.0 + Python Generic, или как создать универсальный репозиторий для работы с БД Доброго времени суток, товарищи, эта статья, так скажем, продолжение предыдущей статьи об SQLAlchemy 2.0 для новичков, в этой статье мы узнаем что такое Python Generic и как его можно использовать в наших целях при взаимодействии с БД. Читать далее
Опыт разработки приложений java и оформления кода В этой статье мы обсудим вопросы, с которыми столкнулись разработчики из компании «Наука» при создании Java-приложений и оформлении кода. Эти трудности, «выстраданные» через годы опыта, стали результатом многолетней работы над программным обеспечением для крупных предприяти...
Ливанский куш, взлом банка с последствиями Эта статья про физическое проникновение в один из банков Ливана. Легальный проект, с неожиданной концовкой, который выполнял один из самых известных специалистов по физическому тестированию на проникновение Jason E. Street! Вся история — это набор фактов, смешанный с его лич...
Как и зачем использовать Template Method в C# Template Method (он же «Шаблонный метод») — это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.Клас...
Инструкция по автоматическому подбору настроек для goodbyeDPI Примерно с сентября программа goodbyeDPI перестала нормально работать — люди занялись ручным «перебором цифр» в cmd-файлах, а новая версия программы вскоре снова перестала работать. Решение придумали энтузиасты — они создали незамысловатый автоматический подбор около 323 пар...
И снова о dbt… Привет, сообщество. Меня зовут Илья, я старший разработчик в БФТ-Холдинге. В этой статье хочу поделиться опытом использования dbt (data build tool) в рамках проекта «Консолидации и нормализации данных» для процессов трансформации данных и создания витрин. Читать далее
Статья для Хабра может стоить 60 000 рублей, а сайт на Тильде до 1,5 млн: за что берут такие деньжища? Разбираемся в ценообразовании на услуги диджитал и контент-агентств.Мы запускаем серию исследовательских статей по теме ценообразования на товары и услуги в разных сферах бизнеса. В этой статье разберем ценообразование на две услуги — сайт на Тильде и статья для публикации н...
Компьютерное зрение на C++: пишем приложение для поиска объектов под Android Привет, Хабр! Меня зовут Кирилл Колодяжный, я пишу код на С++ для систем хранения данных в YADRO. Помимо основной работы, интересуюсь машинным обучением и его возможностями, в том числе на «плюсах». Недавно мне стало интересно разобраться, как развернуть модель компьютерного...
[Перевод] Геймдизайн и мотивация: как создать захватывающий игровой опыт Как хорошо известно любому геймдизайнеру, самой большой загадкой в наших проектах всегда будут оставаться сами игроки. Разброс и разнообразие данных, в таких аспектах, как происхождение, потребности, желания, навыки, мотивы, способности и сила воли, всегда будут приводить к ...
Прошивка и настройка Zyxel ES-2108 и ES-2108G коммутаторов с привязкой к RADIUS NPS В данной статье я опишу реализацию доменной авторизации на коммутаторах Zyxel ES2108 с разграничением прав для техника (чтение) и (чтение+запись) для системного администратора. Этим мы решаем задачу по смене пароля каждые 90 дней, согласно моей групповой политике в домене....
Асинхронный SQLAlchemy 2: улучшение кода, методы обновления и удаления данных Третья статья цикла по асинхронному SQLAlchemy 2 посвящена оптимизации кода, обновлению и удалению данных. Рассмотрены улучшения базового класса, подходы к обновлению записей и методы удаления, с акцентом на повышение производительности. Нажмите «Читать», чтобы ознакомиться ...
Создание простой CRM на Next.js и Prisma для B2B Мой опыт работы в продажах в различных компаниях многому меня научил. Одним из ключевых инструментов, без которого невозможен эффективный процесс продаж, является CRM-система. Для руководителей и менеджеров по продажам она должна решать множество задач и отвечать на целый ря...
Что делать, если критичный для вашего проекта человек не отвечает? (практические советы Руководителю проектов) Бывает такое, что на вашем проекте есть эксперт, от которого вам надо получить ОК на документацию, или чтобы он сделал важную работу, которая находится на критическом пути проекта. И, внезапно, этот эксперт делать вашу свою работу и давать вам ОК вообще не торопится. Что с н...
Гибкая фильтрация EFCore с помощью Expression Фильтрация данных в EntityFramework — это довольно простая задача, которую можно легко решить с помощью метода Where() в LINQ. Однако если поля для фильтрации как и значения приходят к нам динамически, и тем более если фильтровать приходится по вычисляемым в рантайме зна...
Импортозамещение Data Quality стека в нефтегазохимии: опыт СИБУРа В СИБУРе много данных, которые текут в режиме реального времени с многочисленных датчиков на разных производствах, эти данные нужно собирать, хранить, обрабатывать и анализировать, чтобы компания могла принимать правильные бизнес-решения. И от качества инфраструктуры для раб...
Деревья выражений на практике: динамическая фильтрация в C# с использованием Asp.NET Core В нашем предыдущем уроке мы обсудили ключевые моменты деревьев выражений, их примеры использования и ограничения. Любая тема без практического примера, особенно если она связана с программированием, не имеет большого смысла. В этой статье мы рассмотрим вторую часть деревьев ...
Авто-трекинг производительности Room Database Room (абстракция над SQLite) — одна из основных технологий, используемая почти во всех Android-приложениях для кэширования данных, оффлайновости, как cross-process хранилище данных и тому подобное.При этом скорость работы приложения обычно напрямую зависит от скорости рабо...
Все о перемещаемых профилях и перенаправлении папок простыми словами Давно хотел написать про перемещаемые профили, но не было времени. Много в Интернете читал разные отзывы, мнения, комментарии и т. д. Зачастую пишут люди, которые не полностью разобрались в данном вопросе или у них не бы...
Немного про Тайм-менеджмент или «спасите от насилия попу Василия» Как только вы становитесь Руководителем проектов, да и не только проектов – вообще любым руководителем - список ваших дел начинает расти. Вам больше не ставят задачи в любимой джире по одной, где оценил - сделал. Не. Задачи начинают лететь в вольном формате и неограниченном ...
Поиск «токсичных» SQL-запросов Мы, студенты из МИФИ, Даниил и Александр, пришли на стажировку в Сбербанк в департамент SberData, который занимается развитием внутренней корпоративной аналитической платформы (КАП).Это современная платформа с удобными инструментами созданная для&nbs...
[Перевод] Разбор регулярного выражения, проверяющего простоту чисел Как-то я исследовал способы наиболее эффективного определения простоты числа и наткнулся на показанный выше код.Он меня заинтриговал. Хоть это, возможно, и не самый эффективный способ, но определённо один из наименее очевидных, поэтому мне стало любопытно. Каким образом соот...
Особенности хранения проектной информации в среде общих данных строительного проекта Сегодня поговорим про базовую функцию любой информационной системы - хранение информации. Для проектов строительства своя специфика начинается уже на данном этапе рассмотрения ИС.В других областях цифровизация документооборота была произведена достаточно давно. Хороший приме...
70% безработных в мире к 2030 году. Что дальше? Поможет ли базовый доход?: апокалипсис на салфетке От оптимизма оптимистов о том, что нем не страшен ИИ серый волк. Мол, были уже все эти технологии, все боялись, но в итоге всё было хорошо — люди находили работу. У меня прям случился приступ, я не выдержал и психанул. Посчитал на салфетке, а что там по цифрам на...
Как мы развивали «Автосборку»: Опыт оптимизации высоконагруженных систем Привет! Меня зовут Иннокентий Корнилов, я ведущий инженер-разработчик в Bercut, где работаю с 2013 года.Развиваю и поддерживаю систему «Автосборка», которая берет начало в 2007 году. Это система управления конфигурациями, автоматизирующая процессы сборки, версионирования и в...
DevOps в России: взгляд студента 4-го курса Всем привет! В этой статье я хочу рассказать вам о направлении DevOps в текущих реалиях России, в первую очередь, как я это вижу для себя с позиции начинающего специалиста. Эта тема для меня особенно близка — я изучаю её в рамках своего диплома и также вливаюсь сам в эту сфе...
Правда и мифы о чёрных дырах. Горизонт событий и сингулярность. Основы холонавтики Чёрная дыра… Ничто так не притягивает и не будоражит воображение, пока не погрузишься в глубины теоретической физики и не поймешь, что в реальности всё довольно скучно и прозаично. Знаю, тема буквально затёрта… до дыр, да и хайп вокруг неё поутих с тех пор, как появились пер...
[Перевод] Анализ задачи с собеседования в Google: конь и телефонные кнопки Для начала я должен заявить: хотя собеседование кандидатов — это одна из моих профессиональных обязанностей, в этой статье представлены лишь личные наблюдения, истории и мнения. Они ни в коем случае не являются официальными заявлениями Google, Alphabet или любых других лиц ...
TS3 Manager: что происходит, когда додумываешь документацию Мы потратили определенное время на поиски проблем, из-за которых TS3 Manager не работал как нужно (от невозможности залогиниться до проблем с отображением серверов), поэтому решили облегчить жизнь тем, кто пойдет по нашем пути и написали данную статью. Читать далее
Ретрошортсы: вспоминаем бумажный журнал с дисплеем и Linux на борту Приветствую! В сегодняшнем материале мы опробуем с вами новый формат статей, а именно — «ретрошортсы». В этой рубрике будем вкратце вспоминать крутые гиковские штуки прошлых лет, и конкретно сегодня — тот самый журнал Vogue от декабря 2010 года с внешним дисплейчиком, на к...
Опыт команды t2: как мы начали переход на российские ноутбуки и какими результатами готовы поделиться уже сейчас Привет, Хабр! Меня зовут Никита, я – инженер технической поддержки. С 2022 года большая часть российских компаний переходит на отечественное оборудование. Это непростой, но интересный процесс, в самом эпицентре которого оказались мы с командой. В этой статье я расскажу о сво...
Как зажечь на конфе, даже если ты не зажигательный Однажды наступает такой момент, когда твой руководитель подходит к тебе во время обеда, кладёт руку на плечо и, глядя добрыми глазами, говорит: «Сынок, ты уже совсем большой, поэтому можешь поехать на крупную конфу — рассказать там про наш продукт и какая мы классная компани...
Взлом паролей методом брутфорса, уязвимой машины в Kali GNU/Linux с hydra, medusa, ncrack — просто Всех приветствую читатели Хабра!Сегодня я поведую о том как установить, настроить, и эксплуатировать уязвимости заранее уязвимой машины Metasploitable2-Linux. В данной статье я скорее даже поделюсь своим опытом взлома уязвимого хоста в виртуальной машине.Но для начали правов...
Как Generative AI может помочь в подготовке к собеседованию для ИТ специалистов В последнее время я достаточно большое количество времени стал уделять генеративному искусственному интеллекту и возможностям его применения в различных аспектах обучения.В целом на тему ИИ можно много холеварить, но в этой статье я хотел бы поделиться с вами моим новым прое...
Дизайн аналитических инструментов для управления СИМ в мегаполисе: вызовы и решения В этой статье мы рассмотрим основные трудности, с которыми сталкиваются операторы транспортных систем при мониторинге средств индивидуальной мобильности (СИМ) в условиях мегаполиса, и раскроем роль UX/UI‑дизайна в решении этих задач. Опишу подходы к&...
[Перевод] Крадем учетные данные Windows В этой статье мы разберем различные сценарии получения паролей в системе Windows.MetasploitMetasploit поставляется со встроенным модулем, который помогает нам провести атаку на получение учетных данных пользователя в открытом виде. Поскольку это модуль после эксплуатации, ег...
LLM для HR-Tech: как мы делали ИИ-ассистента для автоматизации форматирования резюме ВведениеПривет, Habr! Меня зовут Александр Сулейкин, к.т.н., архитектор Big Data решений и генеральный директор ИТ-компании ”ДЮК Технологии”. Совместно с нашим экспертом по генеративному ИИ Романом Бабенко подготовили статью на базе реального кейса внедрения ИИ-помощника для...
Фитнес-данные не пропадут зря: ChatGPT на страже твоего здоровья Я активно пользуюсь умными браслетами и весами, и однажды задумался: а что если обработать накопленные данные через ChatGPT для анализа здоровья? Оказалось, что это довольно просто, и с этим справится практически любой.Всё, что нужно — это данные из Google Fit и доступ к Cha...
ИИ в Крипто-Торговле: Возможен ли Успех? (Часть 1) В данной статье я постараюсь описать долгий и усердный путь от разработки алгоритмов бота до создания моделей искусственного интеллекта для автоматизированной крипто-торговли на бирже ByBit. Статья будет разделена на несколько частей, так как мне удалось создать три успешные...
Навыки IT Архитектора Но если речь зайдёт о soft skills — тут, как правило, ответы будут более размытыми и будут выглядеть как коммуникабельность, грамотная речь, умение находить общий язык и так далее.В качестве руководителя подразделения мне приходилось подавать заявки на подбор персо...
Хабр Эксперты — обращаться за консультацией стало проще и понятнее Мы на Хабр Карьере помогаем IT-специалистам зарабатывать больше, а компаниям — быть в курсе трендов на рынке найма. В начале прошлого года мы запустили сервис Хабр Эксперты, который дает опытным IT-специалистам, дизайнерам, маркетологам, эйчарам и другим возможность про...
To bind or not to bind: как мы управляем identity корпоративных «Маков» Привет! Меня зовут Павел, и я руководитель офисной IT‑инфраструктуры в Яндексе. Не один год своей работы в той или иной степени я посвятил «Макам» и другим Apple‑устройствам. А в компании их сейчас уже больше 20 тысяч, и управлять таким пар...
Немного про UEFI и GRUB В данной статье пойдёт речь об особенностях UEFI на примере переноса Debian Stretch с MBR на UEFI. Опишу так же разницу между MBR и UEFI, так как я её воспринимаю.Кроме общей части, ключевая часть статьи про формирование GRUB EFI файла grubx64.efi во время grub-install и про...
REST vs gRPC. Межсервисная интеграция для начинающих Привет! Меня зовут Максим Соколов, я — аналитик в команде “Управление доступностью товаров и категорий”. В нашей команде была выделена отдельная подгруппа, которая создавалась специально под новый продукт-фичу для селлеров. Сразу стало понятно, что для реализации нового функ...
Какие бывают Руководители проектов в разных компаниях Куда можно пойти поработать, если вы – Руководитель проектов? Есть много сладких названий: Яндекс, Тинькоф, Сбер, Авито, ВК. Есть еще Газ-Нефть-Полиметал-Тех-сырье компании, есть просто ИТ подразделения не ИТ компаний типа Магнита или Технониколь. Есть еще системные интеграт...
Синхронизация учетных записей 1С при помощи OpenIDM В данной статье мы настроим синхронизацию учетных записей 1С и OpenIDM. Рассмотрим случай, когда учетные записи создаются и меняются на стороне OpenIDM, скажем службой HR. Изменения учетных записей из OpenIDM будут синхроризироваться с 1С. В качестве первичного источника дан...
Мой опыт использования Plumber: UI-инструмент для тестирования Kafka Привет, Хабр! Меня зовут Марина, я QA-инженер в Купере. Как специалисту по тестированию, мне часто приходится сталкиваться с задачами, связанными с тестированием микросервисов, использующих асинхронное общение через Apache Kafka. Уверена, многие QA-инженеры, да и разработчик...
Технология NTB: опыт применения и ее виртуализация QEMU В статье мы расскажем о системах хранения данных (СХД), в частности о применении технологии NTB поверх шины PCIe. Наша команда столкнулась с задачей виртуализации технологии NTB в QEMU, решение которой было сведено к созданию частичной виртуализации IDT 89HPES24NT6AG2 ...
Почему оценить стоимость датасета не так просто, как кажется на первый взгляд Представьте, что вы получили заказ на разметку датасета из 1,000 изображений. Вы берете 20 картинок из сета, проводите тесты и получаете примерную стоимость 1 изображения. В итоге вы оцениваете проект, основываясь на количестве изображений, и устанавливаете цену за каждое. О...
BI для оценки полезности BI: огранка логов в АЛРОСА В наше время цифровизация процессов и событий вокруг нас имеет всё большую и большую востребованность. По этой причине важно понимать не только плановые и фактические показатели, но также и динамику их изменений. В этой статье я расскажу, как мы реализовали систему мониторин...
ConcurrentBag в C# Привет, Хабр!В многопоточном программирование постоянно нужно решать задачи, связанные с доступом к данным из нескольких потоков одновременно. И тут очень кстати ConcurrentBag — коллекция, которая была добавлена в .NET Framework 4.0 специально для таких случаев. Она подходит...
MTA-STS на вашем почтовом сервере В данной статье мы рассмотрим настройку почтового сервера в части, касающейся политики SMTP MTA Strict Transport Security (MTA-STS). MTA-STS — стандарт, который был разработан для обеспечения использования TLS для подключений между почтовыми серверами. Крупные провайдеры поч...
Продуктовая матрица. Что это такое? Как её сделать? Подробное руководство для маркетолога Это статья про работу с продуктовой матрицей для маркетологов. Статья специализированная и подробная с примерами и иллюстрациями. Я постарался написать понятным языком, надеюсь, получилось.Понадобится достаточно много времени, чтобы вникнуть, поэтому...
[Перевод] Книга: «Git: контроль версий. 3-е изд.» Привет, Хаброжители! Рекомендуем ознакомиться с книгой «Git: контроль версий. 3-е издание»! С «Git: контроль версий» вы освоите философию и фундаментальные принципы работы Git, а также получите продвинутые навыки по отслеживанию содержимого, совместной работе и управлению...
Архитектура обучения будущего? Или краткий обзор Total Learning Architecture (TLA) Статья является некоторым продолжением моих статей по теме стандартов в области обучения персонала.Начнем с картинки на сайте группы ADL. И действительно, спецификация SCORM 2004v3 уже не поддерживается и значительная (если не все) доля отечественных компаний, использующих L...
От контекста до юрисдикции: 7 ключевых параметров при выборе LLM для вашего проекта Год назад казалось, что достаточно просто выбрать GPT-4 — и все проблемы с ИИ решены. Сегодня же рынок языковых моделей напоминает зоопарк, где каждый день появляются новые экзотические виды. Claude, Gemini, Mistral, Qwen — и это только верхушка айсберга. Как в этом безумном...
kjs-box: добавляем ленивые модули, ресурсы с типизацией и модели представления в React-проекты на Kotlin Года три назад я захотел сделать для себя небольшой сайт. Лезть в TypeScript или тем более в JavaScript, когда любишь Kotlin, желания не было, равно как и не хотелось создавать какие-то типовые функции с нуля. По этим причинам выбор пал на React в сочетании с Kotlin Wrappers...
WorkStarter: утилита для автоматизации запуска программ при старте Windows Привет, Хабр!
Установка Checkpoint SNX VPN client Чего не хватает на просторах Хабра, так это кратки инструкций по решению часто возникающих проблем. Внесу свой вклад в трактование длинных, запутанных и неактуальных инструкций на официальных сайтах и сайтах комьюнити. В статье описывается решение проблемы, с которой сталкив...
Стили, темы и адаптивная верстка в React Native Из этой статьи вы узнаете, как эффективно организовать очень важную часть разработки на React Native - работу со стилями и ресурсами для создания адаптивных и доступных интерфейсов под три платформы: iOS, Android и Web. Также в целом обсудим особенности верстки и проблемы пр...
Надо ли Руководителю проектов быть аналитиком? ...и должен ли РП уметь писать ТЗ?Этому холивару, по-моему, ровно столько же лет, сколько лет проектному управлению в IT.Границы управления проектами просты: инициация - планирование – исполнение – завершение. Это знает даже джун. Сделай устав, план, делай статусы каждую нед...
Анализ вакансий ИТ в Москве: системное администрирование, 2024г Прошел еще один год и снова появилась необходимость актуализировать и проанализировать данные по предложениям работы в сфере системного администрирования для дальнейшего планирования заработных плат специалистам уже на 2025 год.В этот раз мы дополнительно сравним результаты ...
Начинаем в багбаунти: доступно об уязвимостях типа Broken Access Control Привет, меня зовут Александр (aka bytehope). Прежде чем прийти к багхантингу, я пять лет занимался коммерческой разработкой. Однако меня всегда больше интересовал поиск уязвимостей, поэтому сейчас свое свободное время я провожу на площадках багбаунти.Эту статью я решил посвя...
Транзакции в Spring: сила управления данными Привет, Хабр! Сегодня разберемся с транзакциями в Spring так, чтобы всё стало ясно и понятно: зачем они нужны, как работают и как их настроить так, чтобы данные были под контролем. Начнем с самого начала. Транзакция — это единица работы, которая должна быть выполнена полно...
Заметка про пользовательские соглашения в Web-играх Некоторое время назад у меня была дискуссия на тему необходимости оповещать пользователей о сборе пользовательских данных в Web-играх.Многие крупные проекты в Google Play при первом запуске требуют прочитать и принять пользовательские соглашения: обычно это Privacy Policy и ...
Управление ядрами ЦПУ при обработке сетевого трафика Привет, Хабр! Не так давно столкнулся с задачей разработки альтернативного решения для ограничения сетевого трафика. Такая задача возникла в рамках разработки системы лицензирования для продукта класса NGFW (Next Generation Firewall). Используя такую систему ограничений можн...
Возможности функции scatterplot() библиотеки seaborn Функция scatterplot() из библиотеки seaborn предназначена для построения диаграммы рассеяния, позволяя визуализировать взаимосвязь между двумя числовыми переменными. Она предоставляет множество параметров для настройки внешнего вида точек, цветовых оттенков и размеров, что д...
Мои безумные часы: или как создать точку фокуса в рабочем интерьере Привет, Хабр! В этой статье я хочу поделиться своим давним проектом, который до сих пор не утратил актуальности. Я расскажу об его реализации в далеком 2017 году, обновлю прошивку устройства в соответствии с моими современными стандартами умных устройств и покажу реализацию ...
Интеграция SwiftUI и Realm в React Native на новой архитектуре В данной статье мы разберём процесс создания React Native приложения для iOS с использованием SwiftUI и Realm на основе новой архитектуры. Особое внимание уделим основным шагам интеграции Turbo Modules и Fabric, а также тому, как эти инструменты повышают производительность и...
[Перевод] Автономный картографический сервер с питанием от USB Представьте себе: вы только что добрались до начала тропы, за многие километры от цивилизации, а приложение с картами на вашем смартфоне решило, что самое время уйти в оффлайн-режим. Статус приложения? Отключено. Обновления? Забудьте об этом. Память? Заполнена. Добро пожалов...
Выбираем BI платформу для начинающего специалиста Привет! Я работаю аналитиком данных в IT компании и только начинаю писать статьи на habr. Как и все когда-то я только начинала входить в IT и не понимала, что мне необходимо знать. Эта статья поможет тем кто находится в поисках подходящей BI платформы для изучения. Читать да...
[Перевод] Как я оптимизировал свой конвейер CI/CD до выполнения за 60 секунд Как и многие, я храню свой код на GitHub. Пару лет назад я сделал простой пайплайн для сборки, анализа и тестирования моих веб‑приложений и сервисов. Он выполнял свою задачу, и так как это был мой первый опыт по настройке пайплайна CI/CD на ...
Представляем 3D-сканер Shining 3D FreeScan UE Pro2 Читайте в этой статье про один из новейших 3D-сканеров для промышленности — Shining 3D FreeScan UE Pro2, который может работать в режиме фотограмметрии и предоставляет пользователю возможность наиболее точного и быстрого сканирования, ускоренного до двух раз, по сравнению с ...
Практики SRE: стандартизация логов Меня зовут Дима Синявский, я SRE-инженер в Ви.Tech — это IT-дочка ВсеИнструменты.ру. Наш сайт создает более 100 тысяч заказов каждый день. У нас много сервисов и много разработчиков, которые пишут много логов. Пишут их с целью разобраться в ситуации при сбое. В них нужно уме...
Как запрашивать и принимать обратную связь от клиентов с помощью SMS API Сегодня мы опишем создание простого сервиса для отправки SMS с вопросами через веб-интерфейс своим клиентам и просмотра всех полученных ответов. На базе этого решения можно построить систему автоматической обработки обратной связи, поэтому вашему маркетологу должно это понра...
Смартфоны Apple iPhone 16 Pro и iPhone 16 Pro Max: чем новые модели лучше предыдущего поколения Если вкратце подвести итоги нашего знакомства с новым поколением iPhone линейки Pro, то никакой революции (снова) не произошло, но по ряду параметров ситуация стала немного лучше, чем в прошлом году. Камеры стали еще совершеннее и получили выделенную кнопку для съемки и наст...
DLP от базовых настроек до продвинутой аналитики Привет, я Артемий, архитектор систем информационной безопасности группы компаний «Гарда». В этой статье будем искать ответы на следующие вопросы: · что такое DLP и как работает DLP-система;· что делать с...
Создание баз данных за выходные В этой статье я расскажу вам, как использовать DataFusion для создания собственного опыта разработки баз данных. Базы данных являются одними из самых сложных частей программного обеспечения, задуманных с момента появления вычислительной эры более полувека назад. [1] Почти к...
Как в eXpress достигали мгновенного рендера отправки сообщения: оптимизация локальной базы данных Откройте eXpress, и отправьте в чат простое "Привет". Обратите внимание на то, сколько времени прошло между тем, как вы нажали на кнопку "отправить", и тем, как сообщение появилось в чате. Для человеческого глаза отображение отправленного сообщения в чате происходит мгновенн...
Игра в Жизнь Вы наверняка хоть раз слышали утверждение: “Мир великолепен” или “Вселенная идеальна”. Я не только согласен с этим. Я это знаю.Все дело в точке восприятия Мира. Есть две основные:1. Жизнь это БОРЬБА2. Жизнь это ИГРАОт этого и зависит каким будет являться Твой Мир.Вы наверное...
Проектирование эффективной системы кэширования Кэширование ― одна из важнейших практик в проектировании современных высоконагруженных ИТ-систем. Статья позволит почерпнуть практический опыт проектирования механизма кэширования и будет интересна системным аналитикам, проектировщикам систем и архитекторам высоконагруженных...
Microsoft подтвердила проблемы со старыми видеокартами NVIDIA в Windows 11 Build 27723 (Canary) Команда Windows Insider подтвердила, что в сборке Windows 11 Build 27723 для канала Canary на устройствах со старыми видеокартами NVIDIA, такими как GTX 970 и Quadro K620, могут возникать различные проблемы, включая появление чёрного экрана, зависание системы и отображение ...
Асинхронный SQLAlchemy 2: пошаговый гайд по управлению сессиями, добавлению и извлечению данных с Pydantic Продолжаем цикл статей по асинхронной SQLAlchemy в стиле ORM!Если вы ещё не успели ознакомиться с первой частью, настоятельно рекомендую сделать это, так как сегодняшний материал будет опираться на уже освоенные знания.Что нас ждёт сегодня?- Сессии и фабрики сессий: Узнаем, ...
Как я написал бота для саммари telegram каналов Всем привет!Меня зовут Азрет, я - CTO в AAA (читается как "трипл-эй"). Мы разрабатываем LLM приложения для бизнеса. Решаем разнообразные задачи - оптимизация внутренних процессов за счет ИИ, маркетинговые исследования и запуск новых продуктов. Но запрос на бота, про которог...
Kafka Streams ч3: Stateless processing В предыдущих статьях [ноль, один] мы рассмотрели основные концепции Kafka Streams и сравнили их со стандартными подходами обработки потоковых данных. В этой части мы сосредоточимся на stateless processing (обработке без сохранения состояния) и поймем как применять различные ...
Путь разметки данных для NER: от Open Source до Prodigy Распознавание именованных сущностей (Named Entity Recognition, NER) — это одна из самых востребованных задач в обработке естественного языка (NLP). Чтобы создать качественную модель для NER, требуется тщательно размеченная обучающая выборка, а процесс её создания может занят...
Готовим Gitea со вкусом werf CI/CD и Dex-авторизации в кластере Deckhouse Kubernetes Platform. Часть 1 Клиенты «Фланта» иногда ищут альтернативу GitLab или GitHub с удобным CI/CD и on-premise-размещением. Один из возможных вариантов — Open Source-решение Gitea. В сравнении с GitLab сервис Gitea прост и потребляет в два раза меньше ресурсов. При этом его функциональности ...
Как обойти подводные камни FineBI для грамотной визуализации данных Всем привет, меня зовут Алиса Ручкина и я разработала больше 50 дашбордов в FineBI. Я все еще верю в функциональность и минимализм графиков для бизнес-пользователей, несмотря на то, что яркие и нагроможденные визуализации вызывают больше эмоций. О том, как применять теорию п...
Дюжина ошибок мессенджера Telegram Все мы знаем, что такое Telegram. Наверняка и вы, читатель, им пользуетесь. Как и в любом другом проекте, в коде Telegram тоже есть баги, и, если вы программист, эта статья специально для вас! Мы проверили исходный код мессенджера и готовы поделиться с вами интересными наход...
Data Science и машинное обучение: примеры использования в реальных проектах Искусственный интеллект (AI) и машинное обучение (ML) уже давно вышли за рамки экспериментальных разработок и стали частью реальных проектов в бизнесе и промышленности. Их применение открывает новые горизонты для анализа данных, автоматизации задач и повышения эффективности ...
Как оплатить VK Музыку через МТС на iPhone Яндекс Музыку жалуют далеко не все владельцы смартфонов Apple. Кто-то ищет способы оплачивать зарубежный аккаунт Spotify и наслаждается зарубежными новинками в одном из самых популярных стриминговых сервисов, другие выбирают Apple Music и ценят ее за глубокую интеграцию в о...
Всем про LLM. Как рассказать про трансформеры одинаково хорошо и индустриалам, и исследователям Привет, Хабр. Меня зовут Вика, я работаю в AIRI, преподаю в Школе Анализа Данных и Сколтехе и вместе со своими коллегами занимаюсь обработкой естественного языка, изображений и видео, а также иными задачами, где могли бы пригодиться трансформерные модели....
iPhone и другую продукцию Apple предложили сделать дороже и менее конкурентными в РФ, обложив дополнительными сборами В России предложили обложить iPhone и другую продукцию Apple дополнительными сборами. Соответствующие поправки к законопроекту планируется рассмотреть в Госдуме в следующем месяце, о чем пишет «Парламентская газета». Документ разрабатывается как ответ на нед...
Встроенные механизмы безопасности фреймворков Python Проводя аудиты процессов разработки ПО, мы часто слышим, что функционал реализован во фреймворке, и это может вызывать вопросы со стороны безопасников. Python, будучи одним из популярных языков программирования, предлагает множество фреймворков, каждый из которых долже...
Как правильно разговаривать с вашим руководителем? (памятка Руководителю проектов Под начало недели небольшая база по общению с руководителем. В целом, может касаться и заказчика, и спонсоров вашего проекта: то есть всех людей, от которых вам нужна помощь или решение проблем вашего проекта.Когда у вас проблемы на проекте, вам хочется прийти к руководителю...
Зачем эффективной команде проекта нужен Устав? Статья пригодится начинающим менеджерам проектов, особенно тем, у кого есть свобода от мёртвых процессов и экстремальные условия выживания стартапа. К пониманию того, что правила взаимодействия внутри команды должны быть проявлены, приходишь обычно, пройдя через межличностны...
Как мы работаем с качеством данных в Электронной коммерции Привет! Меня зовут Саша Нефедова, и я работаю ведущим аналитиком по качеству данных в «Магните». Я больше года отвечала за направление Электронной коммерции, и в этой статье расскажу, как устроены наши процессы и какой результат дает командная работа на поприще управления да...
Очередная реализация fluid sim методом Эйлера, но в блокноте WL. Адвекция. Часть 2 В этой статье мы продолжим исследовать простой метод для симуляции двумерных несжимаемых жидкостей для визуальных эффектов. Эта работа основана на статье Джоса Стама «Stable Fluids» (SIGGRAPH 1999), а также на туториале Карла Симса.Часть 1. Дивергенция и игры с сеткойЧасть 2...
Как с помощью Angular доработать CRM-систему: наш опыт с BPMSoft Всем привет.Меня зовут Илья Чубко, я являюсь техническим архитектором в направлении, которое занимается внедрением CRM-системы от вендора «БПМСофт». Этот вендор – разработчик собственной low-code платформы BPMSoft для автоматизации и управления бизнес-процессами ...
Зачем нам Node.js или Angular на бэкенде Всем привет! Меня зовут Александр, я разрабатываю low-code платформу Eftech.Factory в компании Effective Technologies. В этой статье я хочу поделиться тем, как и почему в стеке нашего продукта появился Node.js. Рассмотрим одно из основных преимуществ Node.js (внезапно это Ja...
Учимся делать игры без pygame: Создание графического интерфейса на Python Привет, Хабр! Сегодня мы научимся делать графический интерфейс на python, используя Tkinter. Эта статья очень короткая, так как мы только начинаем.Tkinter — это стандартная библиотека для создания графических интерфейсов в Python. Она предоставляет простой и удобный способ с...
Как растут data science-инженеры и что советуют синьоры, чтобы развиваться быстрее Привет, на связи Светлана Морозова и Сергей Кляхандлер из команды data science Авито. Рассказываем, как у нас устроен рост сотрудников, поговорим и о особенностях этого процесса в big tech-компаниях в целом и в Авито в частности. Статья будет интересна всем, кто хочет развив...
Как я боролся с выгоранием в ИТ: лайфхаки и личный опыт Из каждого утюга мы слышим «войди в ИТ за 6 месяцев», «стань аналитиком», «работай удаленно на берегу океана». Существует стереотип, что сфера информационных технологий ― это гигантские зарплаты и комфортные условия, а остальные профессии воспринимаются как тяжелый, неблагод...
Как гибридный формат работы и дефицит кадров изменили офисные пространства: заметки маркетолога Я пишу тексты для ИТ-компаний, и по роду деятельности мне постоянно приходится разбираться в новых отраслях и цифровых решениях. Провожу интервью с отраслевыми экспертами, погружаюсь в проблемы и тренды. В результате я передаю материалы заказчику и приступаю к новым задачам....
Избавляемся от Android в api-модулях Небольшой туториал на тему «Как уменьшить количество Android-модулей в проекте при помощи оберток над Android-классами»На решение, которое будет описано ниже, меня натолкнула статья Оптимизация Gradle: избавляемся от Android-модулей. В ней приведен синтетический бенчмарк, из...
Паттерны проектирования Go. Fan-in Доброго времени суток! Наблюдая за тем, как разработчик пишет код, можно подумать, что он пребывает в состоянии глубокой безмятежности - работа непыльная, тяжести поднимать не нужно. Тем не менее, этот труд кажется простым только с виду. На самом деле очень легко сделать что...
Null-безопасность в Java: когда нули тоже имеют значение В компании “Свой Банк” мы активно развиваем лучшие практики и стандарты в Backend-разработке. Но, прежде чем выработать хотя бы одну практику, необходимо изучить материалы, разобраться в теме и выработать подходящий вариант. Поэтому в данной статье затронем основные понятия ...
Бутстрап в PySpark Всем привет! Меня зовут Илья Черников, я аналитик больших данных в X5 Tech, сейчас занимаюсь аналитикой и оценкой активностей CVM маркетинга экспресс-доставки “Пятёрочки”.В статье я расскажу о том, как мы решали вопрос автоматизации оценки эффективности большого количества м...
Как нарисовать завод на мнемосхеме Для фронта MES у нас на заводе используются мнемосхемы производственных цехов. Мы очень любим их проектировать.Допустим, надо отследить позиционирование ковша. Оператор может посмотреть детали, кликнув на нужный ковш, чтобы сразу увидеть его начальное, конечное и текущее пол...
Работа Мечты для Руководителя проектов Пришло время для самого важного вопроса, встающего перед каждым Руководителем проектов, решающим сменить работу: «Куда мне лучше пойти работать?».Выбор большой: продукт или ИТ услуги? ИТ услуги в роли Заказчика внутри большой компании или в интеграторе/консультанте в роли Ис...
[Перевод] 8 инструментов для разработчиков, которые стоит попробовать Эта статья расскажет о восьми инструментах, которые помогут разработчикам упростить рабочий процесс и повысить продуктивность. Вы найдете решения для создания пользовательских компонентов, упрощения работы с кодом, разработки интерфейсов и документации. Читать далее
Не Flipper Zero единым: хакерский мультитул из старого смартфона Говорят, что лень — двигатель прогресса. Как по мне, лучше работает конкуренция. Возможность свободного выбора устройств, приложений и информации сейчас — движущая сила, которая мотивирует разработчиков создавать и совершенствовать свои продукты. Сегодня хочу обсудить, какая...
Настройка BurpSuite professional на Ubuntu 24 На данном практическом занятии мы рассмотрим процесс установки и начальной настройки BurpSuite Professional на Ubuntu 24 (22).BurpSuite — это мощный и широко используемый инструмент для тестирования безопасности веб-приложений, который помогает специалистам по безопасности ...
Конфигурация закупок в SAP ERP Внедрение корпоративных информационных систем позволяет автоматизировать большинство административно-хозяйственных операций предприятия. Класс системы, например, ERP, ERP2 или MRP, специфицирует бизнес-процессы, подлежащие автоматизации. Имплементация ERP-систем затрагивает ...
Разбор ERC-6900: Модульные абстрактные аккаунты и плагины После появления абстрактных аккаунтов в Ethereum (ERC-4337) было разработано большое количество различных реализаций таких аккаунтов. Все они абсолютно несовместимы между собой, а еще это громоздкие монолиты, которые часто включают в себя кучу логики, даже той, которая польз...
Расшифровка черного ящика, или технический аудит базы данных перед сменой ERP-системы при полном отсутствии документации Реальный кейс анализа и технического описания базы данных клиента для осуществления корректной миграции на отечественное ERP-решение. Важным аспектом проекта было сохранение работоспособности всех систем, зависящих от исходной ERP-системы. В статье — опыт аудита OLAP-системы...
Транзакционный анализ поведения на примере ветки комментариев под статьей на Хабре Интро. Читая Хабр, наткнулся на статью, оставил коммент и словил небольшое изумление от реакции на него. Пока писал опровержение, залез в дебри психологии и получилось слишком много для просто комментария, решил попробовать намослать статью, встречайте.Данная статья является...
Вход в заднюю дверь или пентест сетевых принтеров и МФУ В данной статье мы с вами затронем анализ сетевых принтеров/МФУ в компании. Каждый из Вас наверное замечал, что данные устройства стоят почти в каждом кабинете и этаже (последнее более опасно, так как доступ к данным устройствам может получить любой человек: сотрудник компан...
[Перевод] Автоматическая система Netflix для восстановления заданий после сбоев, основанная на машинном обучении Это — первый материал из серии статей, посвящённой использованию анализа данных и машинного обучения (Machine Learning, ML) в Netflix. Мы применяем то, о чём собираемся рассказать, совершенствуя автоматизацию оперативной деятельности. Делается это ради по...
Bukva: алфавит русского жестового языка Всем привет!Недавно мы анонсировали словарь русского жестового языка (РЖЯ), а в этой статье поговорим про задачу распознавания алфавита РЖЯ, именуемого также дактильным алфавитом или дактилем. Предлагаем ознакомиться с нашей работой, в которой мы представим новый датасет Buk...
Гайд по реализации паттерна Composite в Kotlin с sealed-классами и корутинами Привет, Хабр! Сегодня рассмотрим, как реализовать паттерн Composite в Kotlin с помощью sealed-классов и корутин. Если у вас есть сложная система с кучей объектов — простых и составных — и вы хотите управлять ими, не теряя асинхронности, то этот гайд для вас. Читать далее
[Перевод] Не пытайтесь динамически загружать код в ваше Flutter-приложение Привет, Хабр! Меня зовут Станислав Чернышев, я автор книги «Основы Dart», телеграм-канала MADTeacher и доцент кафедры прикладной информатики в Санкт-Петербургском государственном университете аэрокосмического приборостроения. Исследуя тему плагинной архитекту...
Как разметить данные для классификации изображений: руководство с примерами Представьте, что вам нужно научить машину "видеть" и понимать мир вокруг. Нет, не просто распознавать лица или выделять дороги на фотографиях – а по-настоящему разбираться, что изображено на любом снимке, будь то лес, чашка кофе или картина. Классификация изображений – это к...
BI для оценки полезности BI: огранка логов в АЛРОСА Наверняка, вы тоже задавались вопросом: «Обязательно ли сапожник должен быть без сапог?». В нашей команде КХД и BI мы решили, что это не то, что не обязательно, но и вообще – неправильно. В этой статье я расскажу, как мы реализовали систему мониторинга востребованности дашбо...
КЕЙС: Как мы бесплатно получили ссылки от Google и Oracle и заодно увеличили трафик на 38% Что, если я скажу вам, что есть стратегия по автоматизации SEO продвижения, которая позволяет создавать сотни тысяч качественных страниц с минимальными затратами?Добро пожаловать в программное SEO.Из этого примера вы узнаете, как наша команда помогла клиенту увеличить органи...
CI/CD Kubernetes платформа Gitorion. Highly Available исполнение Привет, всем! В данной статье мы расскажем о Highly Available исполнении CI/CD платформы Gitorion. В данном случае платформа размещается в двух дата центрах. При отказе любого из дата центров команда разработчиков может продолжить непрерывную интеграцию и доставку в выживше...
Поступление в ШАД: как затащить математику Всем привет!Продолжаем говорить о поступлении в Школу анализа данных Яндекса, а именно про подготовку по математике. Обсудим с чего начать, что входит в программу экзамена и какие бесплатные ресурсы помогут выстроить эффективную подготовку (в статье около 50 ссылок на книги/...
TOGAF 10 и архитектура предприятия Идея создать модель идеальной архитектуры предприятия существует уже довольно давно. Есть различные методологии, стандарты, шаблоны, описывающие разные варианты создания архитектуры. Платформа TOGAF (The Open Group Architecture Framework) является широко распространенным реш...
Nau Engine: взгляд под капот. Ядро движка Nau Engine — 3D-движок для создания игр и приложений, который находится в активной фазе разработки с начала 2023 года. Одна из целей его создания — дать возможность любому разработчику реализовать проекты своей мечты, поэтому Nau Engine является Open Source-решением и будет ...
Как поднять инфраструктуру для запуска автотестов Android в облаках Привет! Меня зовут Денис Веренцов, я Android-инженер из команды Emcee, это технопродукт Авито. В статье я расскажу, как можно развернуть облачную инфраструктуру для запуска нативных автотестов Android-приложений на основе разработанного нами решения.Статья будет полезна тем,...
Погружение в недра Apache Lucene: архитектура индекса, выполнение поиска и репликация данных Это перевод моей статьи в моем блоге про архитектуру Apache Lucene, про одну из самых известных библиотек реализации поискового индекса. Elasticsearch и Solr, широко известные реализации масштабируемых решений для поиска, они используют эту библиотеку под капотом. Я работаю ...
Huawei выпустит HarmonyOS Next уже 22 октября Операционная система HarmonyOS Next от компании Huawei разрабатывался на протяжении несколько лет, и теперь, к счастью, данный проект получил официальную дату коммерческого запуска — 22 октября текущего года. Что, собственно, совпадает с предполагаемой датой выхода серии сма...
Как мощная DDoS-атака не стала для нас форс-мажором. Ну почти Привет, Хабр. 19 июня мы в Т1 Облако отражали первую массированную DDoS-атаку одновременно на множество IP-адресов, зарегистрированных на нас. Ботнет атаковал наш транспортный, сетевой и прикладной уровень. На пике мы зафиксировали более 50 Гбит/с. входящего трафика. Длилось...
Экономика и Монетизация игр: Краткое руководство Здравствуйте, дорогие читатели!Меня зовут Алексей Карпенко. Проработав в разработке игр больше 5 лет, разрабатывая экономику и баланс для проектов, принесших более 150M$+ выручки, я решил подытожить все свои знания в экономике, балансировке и монетизации игр в одну работу, и...
«ИИ можно использовать для помощи в кризисных ситуациях, например, при буллинге или потере работы» Как в таком чувствительном и социальном направлении, как ментальное здоровье, применять большие данные и искусственный интеллект? И может ли ИИ стать психологом? Эти весьма любопытные темы подняли в свежем выпуске подкаста Data Therapy от X5 Tech, гостем которого с...
Процессор AMD Ryzen 5 8500G для платформы AM5: APU с неоднородными ядрами Zen 4 и Zen 4c для самых экономных Ryzen 5 8500G — это один из самых недорогих процессоров компании AMD, он сочетает приемлемую мощность процессорных ядер и неплохое встроенное графическое ядро. Хотя в современные игры получится играть лишь при низких настройках в Full HD, в целом этот APU интересен не только...
Автомашинист. Запускаем блок коммутации и сопряжения Приветствую всех! Я уже не раз рассказывал о таком девайсе как система автоведения поездов. И вот пришло время самой, на мой взгляд, интересной части — того, как же обеспечивается связь процессорного блока с другими системами поезда. Ведь интересно не просто увидеть что-то н...
[Перевод] Настройка ПИД-регулятора для беспилотных автомобилей Автор : Джереми Чжанhttps://medium.com/@madhusudhan.d/tuning-pid-controller-for-self-driving-cars-3813f7f18eb0Настройка ПИД-регулятора для беспилотных автомобилейЭтот проект иллюстрирует концепцию ПИД-регулятора, применяемого в беспилотных автомобилях в рамках программы Udac...
Как разметить 3D кубойды на 2D изображениях в CVAT? Методы геоинформационных систем в разметке данных Команда Data Light регулярно встречается с нестандартными задачами, и в прошлом году мы начали работать над одной из них: наш проект неожиданно перерос из привычной разметки LiDAR облаков (изображений со специальных сканеров) в написание скриптов и созданию нестандартных реш...
Код, который работает: Unit и интеграционное тестирование для повышения надежности ПО Всем привет, меня зовут Андрей Федотов, я бэкенд-разработчик в компании «Цифровая Индустриальная Платформа».Как сказал Кент Бек: «Многие силы мешают нам получить чистый код, а иногда не удается даже получить код, который просто работает». В данной статье я расскажу историю н...
SOLID на котиках Каждый программист хоть раз слышал о принципах SOLID. На собеседованиях и экзаменах в вузах многие из нас пытались вспомнить, о чем же был тот самый принцип Лисков. Однако вряд ли цель преподавателей и интервьюеров — заставить нас заучивать строчки из учебников. SOLID дейс...
Как настроить ежедневную сводку о работе Яндекс.Директа в Телеграм? Эта статья для маркетологов и владельцев бизнеса, которые хотят оперативно получать данные о результатах своих рекламных кампаний без необходимости заходить в рекламные кабинеты. Разберем, как автоматизировать сбор статистики и отправлять ежедневные отчеты в Telegram с помощ...
Transact SQL для анализа данных Язык Transact SQL является процедурным расширением языка SQL и используется в СУБД Microsoft SQL Server. В этой статье мы рассмотрим использование некоторых элементов T-SQL для анализа данных. Сначала мы рассмотрим оконные функции, а затем поговорим о методах сводки (pivotin...
Метрики и зачем они нам Сейчас метриками никого не удивишь. Метрики повсюду, в логах приложений, в управлении проектами, в управлении продуктами, в управлении людьми, в управлении чем угодно. Можно сказать, что мы даже понимаем зачем они нужны. Но к сожалению, не все и не всегда.В статье я попытаюс...
Контур + GFS = Kanso. История развития файловой системы Привет! Я Антон, работаю в команде базовой инфраструктуры Контура и занимаюсь развитием распределенной системы хранения данных Kanso. Это наш форк GFS (Google File System). Мы развиваем Kanso уже более 15 лет, в статье я расскажу про это подробнее. Читать далее
Кейс по локализации IT: как мы не уложились в сроки, но клиент остался доволен Всем привет. В предыдущей статье я обещал рассказать об одном из проектов по локализации, который должен был завершиться 12 сентября. Сразу отмечу, в сроки мы не уложились. Подробно расскажу почему. Для тех, кто не знаком с моим предыдущим постом, представлюсь: меня зов...
«Ты во всем виноват» или про ответственность Руководителя проектов (Практические советы РП) Для начинающих Руководителей проектов часто становится новостью, что у них не только новая звонкая должность (руководитель!), зарплата и премия, но и неприятная обязанность отвечать вообще за все неприятности на вверенном проекте. Эта статья – очередная из цикла статей о том...
Эволюция Assert'a на примере тестирования вездехода из Звездных Войн Привет, Хабр! Меня зовут Михаил Палыга, я инженер в Блоке обеспечения и контроля качества выпуска изменений ПО в РСХБ‑Интех. На проекте для проверки данных мы пользуемся библиотекой AssertJ — Java библиотекой с открытым исходным кодом, испо...
Как мы перешли от аутсорса и создали свою эффективную команду DevOps Меня зовут Кирилл Шагин, я руковожу командами SRE, DevOps и DBA в компании Ви.Tech — это дочка ВИ.ру. В наших IT-решениях мы используем современный стек, у нас 4 кластера K8S и более миллиона пайплайнов в месяц.В этой статье делюсь опытом, как мы построили свою эффективную к...
Thread execution hijacking. Исполнение шелл-кода в удаленном процессе В статье разберем технику T1055.003Подменим контекст потока удаленного процесса и рассмотрим способ доставки шелл-кода в процесс с помощью удаленного маппинга.В ОС Windows существует возможность получения контекста потока и последующего управления значениями регистров. Это д...
Data Fusion Contest 2024, разбор и итоги соревнования Привет, Хабр! В этом году мы совместно с ВТБ организовали соревнование Data Fusion Contest. Хотим вспомнить, как оно проходило, и подробно рассказать о лучших решениях участников конкурса.Как и в прошлом году, участников ждали две задачи: одна в...
Создание собственной системы F&R в «Магните»: функциональный дизайн Одна из крупнейших розничных сетей России, «Магнит», разрабатывает современную систему прогнозирования и пополнения товаров (F&R). Цель проекта – создание и внедрение нового решения, которое закроет все потребности ритейлера на ближайшие 10–15 лет. Для решения амбициозны...
Протоколы внутренней маршрутизации Материал продолжает серию статей, посвящённую семинарам внутреннего обучения, которые проводятся в IT-компании NAUKA. Надеемся, что сведения, представленные в ней, будут полезными для школьников старших классов, студентов младших курсов ВУЗов, сотрудников IT-компаний, не свя...
[Перевод] Атаки на понижение версии SMTP и MTA-STS Когда был создан SMTP, он работал, передавая данный в открытом виде, поскольку тогда мы ещё не разработали решение для безопасной передачи данных, то, что мы называем сейчас «безопасность транспортного уровня» (transport layer security, TLS). Когда TLS наконец-то был готов, ...
Как открыть порт в Linux При работе с сетью в Linux может потребоваться открыть или наоборот закрыть сетевой порт. Контроль за портами осуществляется с целью обеспечения безопасности — чем меньше открытых портов присутствует в системе, тем меньше векторов атаки доступно. Также при закрытом порте ата...
Этюд: использование метода покоординатного спуска для оптимизации параметров СУБД Или путевые заметки по ходу решения задачи разработки методики подбора комбинации значений конфигурационных параметров СУБД для оптимизации производительности СУБД .В качестве начального примера, для отработки методики, выбраны настройки для процессов контрольной точки(check...
Автоматизация тестирования с использованием SoapUI — Практическое руководство Привет! Меня зовут Александр Крылов, я разработчик Siebel CRM в Московском кредитном банке. После разработки очередной задачи, которая полностью основана на интеграциях, перед нами встал вопрос о функциональном тестировании, перед передачей на полноценное тестирование. ...
Карты на стол: зачем нам понадобился собственный картографический сервис Привет, Хабр! На связи Настя Швецова, руководитель проектов управления исследований и разработки «МосТрансПроекта». Недавно мы создали свой собственный картографический сервис. Вы спросите – зачем, есть же готовые решения? Да, но для наших нужд они не подходят по ряду причин...
Ответ на статью о «Наиболее быстром интерпретаторе» Недавно была опубликована статья под заголовком "Глобально оптимальный, восьмой и наиболее быстрый вид интерпретаторов байткода". Несколько тезисов из статьи вызвали у меня сомнения в их справедливости. Об этом я попробовал написать ряд комментариев тире вопросов к указанной...
[Перевод] Разница между очисткой, сбросом и восстановлением моков В данной статье мы подробно рассмотрим различия между операциями очистки (clearing), сброса (resetting) и восстановления (restoring) моков в процессе тестирования программного обеспечения. Вы узнаете, когда и в каких ситуациях применяется каждая из этих стратегий, а также ка...
Стабилизируем положение потенциометра, считанное с АЦП Считать показания потенциометра для удобного аналогового управления системой, что может быть проще? Сеть завалена примерами работы с АЦП. Считали значение, вот мы и знаем положение… Но не всё так просто – эти значения всё время будут разными. Близкими, но разными. То есть, п...
Linux On A Stick Данная статья родилась в результате объединения идей из лабораторной работы в рамках подготовки для сдачи экзамена CCNA компании Cisco, и курса "Сетевые протоколы в Linux", который прочитал Георгий Владимирович Курячий весной 2024 года на кафедре Автоматизации Систем Вы...
Honor Magic 7 Pro с вырезом, похожи на Dynamic Island в iPhone, показали вживую ещё до анонса Живые фотографии смартфона Honor Magic 7 Pro опубликовал информатор Digital Chat Station на своей страничке в китайской социальной сети Weibo. Изображения подтверждают установку тройку камеру, включая перископический телеобъектив, и дисплей с овальным вырезом (как Dynam...
Увеличение лидирующих нулей в симметричной разреженной матрице В предыдущей статье было показано, что при решении СЛАУ с симметричной разреженной матрицей наличие лидирующих нулей приводит к уменьшению количества вычислений. В этой статье будет представлен алгоритм, предназначенный для увеличения количества лидирующих нулей данной матри...
Увеличиваем размер выборки и прокрашиваем серые метрики: неочевидная ошибка при проведении А/B — тестов Иногда мы настолько бываем увлечены способами увеличения мощности тестов, снижения дисперсии, уменьшения длительности теста, что забываем смотреть на данные при использовании стандартного критерия Стьюдента. В этой статье я постараюсь простым языком рассказать о последствиях...
Размер имеет значение: как исторические данные помогают на этапе дизайна A/B-теста Метод CUPED уже давно завоевал популярность в анализе A/B-тестов, предоставляя возможность выявлять эффекты меньших размеров. В этой статье мы подробно рассмотрим применение данного подхода на этапе дизайна эксперимента. Мы исследуем, как можно сократить размеры выборок, не ...
Монолитный бэкенд на Java и Vue-фронтенд: практические решения для эффективной разработки опенсорса В одной из прошлых статей мы рассказывали о нашем первом опенсорсе — Smartup Time Tracker. Система нужна для компаний, которые хотят вести учет рабочего времени и организовать почасовую оплату. В этой статье дадим обзор ее технического решения.Ознакомиться с Time Tracker мож...
Как упорядочить данные в базе сайта, у которого пять личных кабинетов Привет, Хабр! Меня зовут Миша Шлыков, я менеджер проектов в диджитал-продакшене Далее . Уже два года мы вместе с «Национальными приоритетами» развиваем сайт наука.рф. За это время 30 миллионов человек поучаствовали в проектах Десятилетия науки, а делают его простые люди со в...
Геймеру на заметку: 5 интересных игровых клавиатур Привет, Хабр! На связи Даша Волкова из МТС Диджитал. Чем удобнее клавиатура, тем комфортнее геймеру. Сегодня поговорим о клавиатурах — конечно же, игровых. Для статьи выбрала пять разных моделей, которые мне понравились. Если у вас есть свои любимчики, рассказывайте о них в ...
Устранение противоречий авторитаризма в управлении. На примере процесса «Управление проблемами» В данной статье я использую слово авторитаризм, как явление, при котором управление в первую очередь опирается на личный опыт, знания и умения руководителя, при этом обратная связь от подчинённых имеет вторичный характер. Природа авторитаризма занимательна и требует отде...
Во имя богов Рандома. Настраиваем вероятность исходов в играх Непредсказуемость всегда вызывает у людей интерес и является популярным инструментом в руках разработчиков игр: процедурная генерация, лутбоксы, шансы крита и ещё множество параметров, на которые игрок может лишь молиться, чтобы они ему благоволили. Однако иногда подобные ме...
Асинхронный SQLAlchemy 2: простой пошаговый гайд по настройке, моделям, связям и миграциям с использованием Alembic Наконец-то пришло время взяться за то, что я давно планировал — подробный гайд по асинхронной версии SQLAlchemy 2.0 в стиле ORM. В этой серии статей я подробно расскажу обо всех аспектах: от создания моделей и установления связей между ними до миграций с Alembic и взаимодейс...
Как собрать клон Yamaha DX7 за 10$ В этом статье я расскажу как и из каких компонентов можно самостоятельно изготовить клон знаменитого синтезатора Yamaha DX7.Статья рассчитана в основном на новичков и энтузиастов ретро музыкальных инструментов. Чуда не ждите :)Около 10 лет назад в моей коллекции был этот син...
«ИИ-тестировщик»: от идеи к реализации Привет, Хабр! На связи Денис Киров, руководитель отдела тестирования компании «ДОМ.РФ Технологии». В этой статье я расскажу, как проходило внедрение ИИ в процессы тестирования в нашей команде.Искусственный интеллект в том или ином виде внедряется во все процессы: от бытовых ...
Быстрый старт в QA Fullstack: чем вооружиться будущему стажеру в Альфа-Банке Я очень хотела попасть в тестирование не питая иллюзий, что это «легкий вход в IT» — он давно перестал быть таковым! Сейчас я работаю QA Fullstack в клиентском пути «Платежи и Переводы» Альфа-Банка уже 1,5 года. Мечта сбылась, а помогли мне самообучение и курсы от Альфа-Банк...
Логирование FreeRTOS через Virtual Com Port Отладка встраиваемых систем с микроконтроллерами часто затруднена из-за невозможности отслеживания процессов в первые секунды после запуска прошивки. Библиотека логирования для STM32 и FreeRTOS решает эту проблему, позволяя получать детальные журналы событий с самого старта ...
Разработка гибкой платформы для кредитования: от крупных банков к массовому рынку Мы работали над платформой для кредитования, которая прошла путь от решения для крупных банков до системы для массового рынка. С ее помощью финансовые организации быстро выдавали кредиты, адаптируя процессы под свои нужды. В этой статье мы расскажем о развитии системы: как г...
Искусство аугментации: как улучшить модели компьютерного зрения без сбора новых данных Представьте, что вы разрабатываете модель компьютерного зрения для распознавания кошек на фотографиях. Чем больше разных фото кошек вы покажете модели, тем лучше она будет справляться с задачей. Но что делать, если у вас не хватает фотографий? Вы же не пойдете делать 10000 ф...
Машинное обучение и криптография: знакомимся с CipherGAN Машинное обучение в большей или меньшей степени сейчас используется в различных отраслях. Не стало исключением и направление криптографического анализа. В этой статье мы рассмотрим генеративно‑состязательную сеть CipherGAN, используемую для опре...
[Перевод] Пример использования Spring Data и Redis для временного хранения персональных данных Некоторые компании, работающие с персональными данными пользователей, сталкиваются с невозможностью хранить их в течение долгого периода времени из-за правовых ограничений. Такое часто можно встретить в финтехах. Позволяется сохранить данные на очень короткое время, которые ...
Честно и по делу: смотрим на F+ R570E с российской системой на борту Друзья! Несмотря на то, что статья может показаться на певый взгляд рекламной, это не так. Я давно слежу за Linux на мобильных системах и в частности, за Sailfish-подобными ОС. Недавно я самолично написал в компанию F+ и попросил какой-нибудь смартфон на Авроре для статьи и,...
[Перевод] Создание незаметного вредоносного ПО для Windows ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Использование этих инструментов и методов против хостов, для которых у вас нет явного разрешения на тестирование, является незаконным. Вы несете ответственность за любые последствия, к которым может привести использование этих инструментов и методов...
Улучшаем безопасность ваших CI/CD через Shared Docker executor и OPA-плагин Привет, Хабр! На связи команда безопасности Платформы в лице её тимлида Букина Владимира. Основная задача нашей команды — защита CI/CD и, в частности, GitLab с K8s. Дальше я расскажу вам о том, как мы внедряли, поддерживаем и улучшаем наш плагин авторизации для Docker socket...
[Перевод] Рендеринг текста без текстур Иногда все, что требуется — быстро вывести какой‑то текст в Renderpass. Традиционно отрисовка текста требует отрендерить все возможные символы шрифта в атлас, затем привязать полученный атлас как текстуру и затем отрендерить каждый глиф, рисуя т...
Кейс оптимизации запросов для Greenplum Всем привет! Меня зовут Андрей, я работаю дата аналитиком в Data Team продукта Dialog.X5/Insights в X5 Tech. Мы предоставляем аналитику по продажам и покупательскому поведению на данных X5 Group. Для обработки больших объёмов данных в продукте используется СУБД (...
Postgres, как настроить запросы между разными БД Всем привет. На днях пришлось вспомнить магию Postgres, задача была решена, по результатам написал инструкцию в корпоративную базу знаний, что бы в следующий раз не тратить время на "воспоминания". Решил поделиться.Ниже речь будет идти о чтении данных одной БД из другой БД. ...
[Перевод] Как снизить расходы на мониторинг: более разумный подход к данным Мониторинг может стать дорогостоящим из-за огромных объемов данных, которые необходимо обрабатывать. В этой статье вы узнаете о лучших способах хранения и обработки метрик мониторинга для снижения расходов и о том, как VictoriaMetrics может в этом помочь. Читать далее
[Перевод] GEOINT Challenge: геолокация уличного искусства в Доминике В сентябре UnShelledSec в X опубликовал интересный пост, целью которого было найти точное местоположение исходя лишь из одной картинки, задача не из простых, но Ron Kaminsky справился и более того, показал алгоритм действий по решению. — В этой статье вы поймёте ход его...
[Перевод] Неочевидные для начинающих тонкости Postgres Добрую часть десятилетия я профессионально занимаюсь веб-приложениями, и за этот срок научилась пользоваться множеством разных систем и инструментов. В процессе этого обучения я обнаружила, что самой полезной обычно оказывается официальная документация. За исключением… Po...
Инфраструктура для Data-Engineer BI-tools BI (Business Intelligence) – это инструмент или несколько инструментов, которые помогают собрать данные в нужный вид и посмотреть на бизнес со стороны данных.Чаще всего BI-инструментами пользуются аналитики. Они строят дашборды (витрины), выполняют Ad hoc задачи и в целом пр...
Глубокая оптимизация сверточных нейронных сетей: Анализ методов улучшения модели на примере CIFAR-10 Сверточные нейронные сети (CNN) стали основой для обработки изображений и компьютерного зрения. Однако их обучение требует тщательной настройки архитектуры и гиперпараметров, что может быть сложной задачей, особенно при работе с большими наборами данных. В этой статье мы под...
От API до CI/CD: Базовые термины в IT, которые желательно знать новичку Это серия из трёх постов предназначена для новичков, которые уже находятся в процессе перехода в IT или только планируют сменить нишу. Здесь будут собраны базовые термины из IT-индустрии, которые стоит знать начинающим Проджект и Продакт Менеджерам, Продукт-Овнерам, а также ...
Написание ETL пайплайна при помощи airflow, rabbitmq и postgres В данной статье мы рассмотрим взаимодействие apache airflow, rabbitMQ и postgreSQL. Научимся правильно устанавливать соединения между ними и напишем базовый ETL. Читать далее
Лоттократия лучше демократии! Статья о криптографических выборах Тайное голосование с применением однотипных бюллетеней впервые появилось в Австралии в 1856 году. Насколько хорошо эта система была спроектирована? Если бы вы замыслили в наши дни создать систему выборов, защищённую от мошенничества и фальсификаций, получилось бы у вас то же...
Data catalog: от истории до сравнения решений Прийти и по запросу быстро найти нужные данные — идеальный сценарий. Но он практически невозможен при условии использования множества баз данных и хранилищ. В реальных условиях без «надстройки» над всеми БД и «единой точки входа» команды вынуждены тратить время на исследован...
Red Magic 10 Pro+ побил рекорд в AnTuTu Серия смартфонов Red Magic 10 выйдет в свет 13 ноября, если верить данным из социальных сетей, и представит несколько новых смартфонов с упором на производительность, которые будут идеальным решением для геймеров, желающих получить наивысшую частоту кадров в видеоиграх. А са...
Китайские учёные задействовали Raspberry Pi для повышения безопасности туннельных конструкций Китайские учёные разработали систему обнаружения пустот в облицовке железнодорожных туннелей, используя популярный мини-компьютер Raspberry Pi. Эта новая технология, описанная в статье журнала Buildings, может значительно повысить безопасность и надёжность туннельных ко...
Что крупные компании хотят от вендорского ПО Эта статья может быть полезна ИТ-компаниям, которые планируют выводить свои продукты на рынок крупных организаций и госкомпаний России.Я около 20 лет работаю в сфере создания и внедрения тиражируемых программных продуктов для крупного бизнеса: от СУБД до платформ управ...
Что ищет он в краю далёком? Как найти смысл жизни с PostgreSQL Эта статья родилась из пары лекций, которые я прочитал студентам в рамках курса, посвященного вопросам машинного обучения. Почему именно PostgreSQL? Почему векторы? За последние два года тема языковых моделей стала невероятно популярной, и вместе с этим появилось множество и...
Узнаем, что делал пользователь через дамп реестра При расследовании компьютерных инцидентов одним из важнейших действий является сбор улик. Так нам очень важно иметь дамп оперативной памяти, потому что из него можно получить информацию о том, какие процессы были запущены в системе, и, например, можно выделить и сделать дамп...
Путешествие внутрь YADRO. Часть 1: распаковка и тест-драйв TATLIN.FLEX.ONE Хабр, привет! На связи Алексей Зотов из К2Тех. Не так давно в нашу лабораторию приехало оборудование от российского вендора YADRO: TATLIN.FLEX.ONE и TATLIN.BACKUP. Наша команда протестировала это железо, и теперь я хочу поделиться с вами полученными результатами и впечатлени...
От Gantt до WBS: Ключевые термины в Проджект-Менеджменте Это серия из трёх постов предназначена для новичков, которые уже находятся в процессе перехода в IT или только планируют сменить нишу. Здесь будут собраны базовые термины из IT-индустрии, которые стоит знать начинающим Проджект и Продакт Менеджерам, Продукт-Овнерам, а также ...
[Перевод] Риски перехода на 64-битный time_t Один из разделов статьи Overview of cross-architecture portability problems я посвятил проблемам, возникающим из-за использования 32-битного типа time_t. Это архитектурное решение, до сих пор влияющее на использующие glibc системы с Gentoo, приведут к тому, что у 3...
Опыт реализации нейросетевого модуля российской DCAP-системы Привет, меня зовут Михаил, я старший специалист по машинному обучению в компании Makves (входит в группу компаний «Гарда»). Я предпочитаю называть себя deep learning engineer, так как большую часть моего рабочего времени занимает обучение и вывод в прод именно нейросетевых м...
CryptoHack. Решение Modular Binomials Приветствую, Хабр! В этой статье я попытался подробно разобрать задачу Modular Binomials с сервиса CryptoHack с выводом решения в общем виде и вычислением конкретного результата скриптом на Python. Читать далее
Как сократить время при повторных проверках проектной документации, используя среду общих данных и инструмент сравнения В современном мире проектирования и строительства повторная проверка проектной документации — неотъемлемая часть этих процессов. Для оптимизации и увеличения точности проводимых проверок существует ряд инновационных инструментов и технологий. В данной статье рассмотрим...
Инспектор транзакций: управление конфликтами в СУБД В этой статье представлена авторская концепция "Инспектор транзакций", направленная на оптимизацию работы с транзакциями в системах управления базами данных (СУБД). Мы предлагаем использовать инвертированный индекс для выявления конфликтующих транзакций. Перед выполнением но...
Цифровые двойники и современная архитектура обучения Данная статья является обобщением ранее разбираемых мной тем по современным образовательным технологиям, применительно к реальной задаче обучения специалистов в области бурения (персонала буровых установок разведочного и эксплуатационного бурения), а также специалистов в обл...
Сделано на Wiren Board: умный медиакиоск для остановок Современное городское пространство уже невозможно представить без медиакиосков. Они показывают ближайшее время прибытия транспорта, помогают туристам ориентироваться, выводят на монитор местные новости и информацию о предстоящих мероприятиях.В Калининграде российский произво...
OpenShift и Kubernetes: сравнительный обзор, основные различия OpenShift и Kubernetes (K8s) выбирают чаще всего для оркестровки контейнеров. Эти инструменты сложно сравнивать напрямую, поскольку Kubernetes — открытое решение (open source), а OpenShift — продукт (дистрибутив) на основе Kubernetes. В этой ста...
Оптимизация динамического SQL в SQL Server: ключ к высокой производительности Привет, Хабр и его читатели! Меня зовут Дарья Четыркина, я программист SQL в IT-компании «Автомакон». Если вы работаете с базами данных в Microsoft SQL Server и хотите, чтобы ваши запросы выполнялись быстро и без перебоев, эта статья для вас. Мы разберем динамический SQ...
[Перевод] Как Vercel микрофронтенды внедрила Узнайте, как Vercel сократил время сборки и повысил скорость разработки, сохранив при этом удобство работы с микрофронтендами.Основной веб-сайт Vercel, некогда являвшийся единым крупным сайтом Next.js приложение, обслуживающее как посетителей нашего веб-сайта, так и панель у...
[Перевод] Обработка зомби-процессов в PostgreSQL: что делать? Процесс-зомби (zombie process) — дочерний процесс в Unix-системе, завершивший своё выполнение, но ещё присутствующий в списке процессов операционной системы, чтобы дать родительскому процессу считать код завершения. Обычно, когда процесс завершает выполнение и работу, операц...
Еще один язык разметки для аналитиков Всем привет! Меня зовут Артем, я аналитик, занимаюсь автоматизацией бизнес процессов и учета, преимущественно в крупных производственных холдингах.В этой статье я буду рассуждать о графических артефактах в технической документации. О том, какие существуют визуальные языки, о...
Что не так со статьей про ИИ-юристов от Романа Янковского? В недавней статье Роман Янковский высказал интересные мысли о влиянии ИИ на юриспруденцию. Статья Романа под названием «Что не так с ИИ-юристами» имела как сторонников, так и несогласных.Я решил написать ответ на статью, где постараюсь развить некоторые из поднятых Романом в...
Топ-5 ботов с нейросетями для генерации изображений — те самые, что спасли наш бизнес и принесли 15 млн ₽ Недавно я рассказывала, как мне удалось обогнать инфляцию и заработать 15 млн ₽ для работодателя, который впоследствии стал моим партнером по бизнесу. И всё это благодаря нейросетям для генерации изображений и креативности сам себя не похвалишь, никто не похвалит. ...
Простая защита скрипта на Python Стек: Python 3.11.7, ntplib, subprocess, getpass для времени, системы, пароля, PyArmor 8+ для обфускации.Сценарий: Разработано приложение, которое дает преимущество перед конкурентами, или ваш код содержит конфиденциальные данные. Приложение предстоит установить не...
Парсинг котировок ценных бумаг в Microsoft Excel и Google Таблицы с любого сайта Хотя возможность автоматического получения котировок в «Эксель» или «Гугл Таблицы» упрощает ведение портфелей, существует несколько технических препятствий, с которыми можно столкнуться при парсинге или скрапинге (в общем виде это автоматический сбор данных из интернета, в т...
Как я с LSB баловался В свете того, что тема маркировки генераций ИИ все набирает обороты, я вспомнил про такую штуку, как стеганография. Опыта с ней я не имел, только краем уха слышал на парах, когда еще был студентом, что это способ положить в фото, аудио или видео какую то информацию.Немного п...
Любят — не любят: что мы сделали хорошо и плохо в первом опросе удовлетворенности клиентов Привет! Меня зовут Саша Старикова, я младший исследователь пользовательского опыта в Selectel. Мой отдел собирает обратную связь от клиентов и доносит ее в виде идей и выводов до заинтересованных команд. Мы работаем как лаборатория внутри компании: коллеги из смежных подр...
DPC (Device Policy Controller): админим блокировку экрана в Android Если вы занимаетесь защитой от несанкционированного доступа к устройству, то наверняка ваш самый первый и самый простой шаг — это защита разблокировки экрана. Графический пароль, цифровой PIN-код, доступ по биометрии (например, скан отпечатка пальцев, распознавание лица) и т...
Изменения и как их преподнести команде Приветствую вас, дорогие читатели. Тружусь в IT сфере с 2016 года. Так вышло, что свое ремесло я нашел не сразу и пробовал себя в программировании, аналитике и теперь занимаю должность руководителя проекта. Простыми словами управляю командой в Ростелеком Информационные техно...
[Перевод] Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта Разработка, развёртывание и поддержка моделей машинного обучения в продакшене может быть сложной и трудоёмкой задачей. Здесь на помощь приходит Machine Learning Operations (MLOps) — набор практик, который автоматизирует управление ML-процессами и упрощает развёртывание модел...
Зачем нужен сброс настроек сети на смартфоне? При подключении к мобильным данным, Wi-Fi-сетям и Bluetooth-устройствам на телефоне создаются определенные настройки, куда входят как данные для входа, так и другие параметры, отвечающие за конфигурацию сетей и соединение. Сброс настроек сети представляет собой процесс, во в...
Работа в командной строкой ОС Astra Linux Командная строка является неотъемлемой частью любого дистрибутива Linux. Какие бы оконные оболочки мы не устанавливали, администраторы все-равно большинство задач будут решать через командную строку. Поэтому важно уметь пользоваться этим инструментом.Данная статья предназнач...
MoexBuilder: как я создаю библиотеку на Python. Часть 3 Привет, Хабр! Продолжаю рассказывать, как я создаю библиотеку на Python. В этой статье я расскажу о том, как мне удалось структурировать проект, как был реализован функционал получения динамики по инструменту за указанный период - dynamics(), а также о том, как была добавлен...
Тыкай и кидай голосовухи: как ускорить сбор данных для мультимодальности Привет! Мы собираем много разных данных и часто перед заказчиком стоит большая описательная задача в области задач компьютерного зрения: детально и максимально подробно описывать всё, что присутствует на изображении или видео.В деталях описывать картинку с помощью текста — т...
Какие умные часы купить вместо Apple Watch для использования с iPhone Первые Apple Watch были представлены еще осенью 2014 года, а в продажу поступили весной 2015. Однако с тех пор у них остались несколько нерешенных проблем. В частности, вы не можете использовать их со смартфонами других производителей, время работы так и оставляет желать лу...
Умное хранение или как мы снизили рост БД Oracle в полтора раза Сегодня предлагаем обсудить сжатие данных в Oracle. Ситуация: один наш крупный клиент в сфере телекома стремится нарастить абонентскую базу, поощряет потребление услуг и рост трафика. Это позволяет развиваться компании в целом и каждой её системе в отдельности, включая...
Линейный и бинарный поиск в Clojure Привет, Хабр! Cегодня я расскажу вам о том, как реализуются линейный и бинарный поиски в Clojure. Clojure одновременно прост и сложен. В нём есть идеи функциональности, а также чистые данные, которые могут работать как часы, если к ним применить правильные алгоритмы. В этой ...
Почему я снова вернулся к использованию GetContact на Android. Спойлер: не чтобы пробивать чужие номера В последние месяцы количество спам-звонков на мой телефон достигло просто невероятных масштабов. Каждый день я стабильно получал по от 3-5 до 7-10 звонков от разного рода мошенников. На большинство я просто не отвечал, но, если все-таки отвечал, мгновенно понимал, что меня ...
HAOS наводит порядок Что, если уже давно можно по технологии ИзГиП из спичек и желудей собрать свою, более подходящую систему для управления своими цифровыми активами? И пусть она будет управлять всеми вашими цифровыми активами, от управления чайником до скачивания новых серий "Любовь, смерть, р...
Всё делается из нефти и газа. Или нет? Регулярно встречаю такое мнение, что, дескать, вся промышленная продукция в мире делается из нефти и газа, безальтернативно. Вплоть до того, что без газа и удобрения не сделать, и даже сталь не выплавить. Особенно любят на это давить в политических спорах. Меня категорически...
Работа hr-специалиста в Битрикс24 Всем привет! Мы перевели работу hr-менеджеров в Битрикс24. Расскажем как выглядит воронка и какие есть преимущества.В первую очередь пишем данную статью для тех, кто в компании уже использует Битрикс24, так как для них данное внедрение может оказаться вообще бесплатным. Но к...
Всё о цифровых методах восстановлении аудио у себя дома. От ручных методов до ИИ Цифровая реставрация аудио Этот процесс может быть как нетривиальным, так и крайне сложным. Но за последний десяток лет цифровые методы значительно шагнули вперёд, заменив кропотливую работу с узкопрофильными алгоритмами на нажатие двух кнопок для получения желаемого резуль...
Поднимаем одно-нодовый kubernetes-кластер на RedOS Нынешний век — век импортозамещения. Многие компании сейчас сталкиваются с возникшей необходимостью переходить на отечественное ПО. Приходится осваивать вновь появившиеся нюансы, связанные с новым программным обеспечением. В данной статье мы в п...
Тексты для IT может писать только айтишник! Нет. Рассказываем, как делаем IT-контент для beeline cloud и не сходим с ума Есть мнение, что делать контент для IT должны и могут только айтишники. Типа если не сечешь в теме, то написать или отредактировать материал не получится. На деле всё не совсем так. Конечно, лучше всего темой владеет тот, кто ручками каждый день в ней ковыряется. Но вам шаше...
Causal Inference: прозрение и практика. Лекция 1. Основные понятия Causal Inference В нашем веке центральное место в анализе и использовании данных занимает Data Science. Однако часто данное понятие сводят к одним лишь алгоритмам машинного обучения или даже искусственному интеллекту, преуменьшая другие важные аспекты этой области зн...
[Перевод] Поддержка RestClient для OAuth2 в Spring Security 6.4 Команда Spring АйО перевела статью, в которой Steve Reisenberg рассказал о множестве полезных улучшений для работы с OAuth2 в Security 6.4. Прочитав статью вы узнаете, как отправлять запросы к защищенным ресурсам без дополнительных зависимостей, а также переопределять п...
Удалённый доступ к графике в Linux: от X11 до Docker с GPU Привет Хабр! С вами снова ServerFlow, и сегодня мы хотим поговорить об удалённом доступе к графическим приложениям на Linux-серверах. Тема эта стала особенно актуальной в последнее время – всё больше задач требует работы с GPU на удалённых машинах. Будь то рендеринг в Blende...
Создаем свою библиотеку на C++ с тестированием, CMake и блекджеком: часть 2 В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в нескольких своих пр...
ИИ сделал «до жути» простым сбор данных с простой записи экрана Исследователь ИИ Саймон Уиллисон недавно продемонстрировал мощь «видеоскрейпинга» — метода, который использует большие языковые модели (LLM) для извлечения структурированных данных из экранных записей, пишут СМИ.
Образование в ИБ. Ожидание vs Реальность ВведениеИнформационная безопасность является одной из ключевых областей в современном мире, где каждый день появляются новые угрозы и вызовы. Студенты, обучающиеся в вузах, получают ценные знания и навыки в области информационной безопасности, однако часто остаются неподгото...
Образование в ИБ. Ожидание vs Реальность ВведениеИнформационная безопасность является одной из ключевых областей в современном мире, где каждый день появляются новые угрозы и вызовы. Студенты, обучающиеся в вузах, получают ценные знания и навыки в области информационной безопасности, однако часто остаются неподгото...
Проверка готовности приложения к работе в реальном ненадежном мире. Часть 1 Опытом делится Виталий Лихачёв, SRE в booking.com и спикер курса Слёрма «Golang-разработчик». Он рассказывает, о чём стоит подумать перед выкаткой сервиса в жестокий прод, где он может не справиться с нагрузкой или деградировать из-за резких всплесков при наплыве пользовател...
Это моё дело! Как улучшить рабочие процессы и помочь бизнесу расти Вместе с мобильным оператором T2 собрали статьи с простыми советами, которые могут быть полезны и начинающим, и бывалым предпринимателям.
OSINT: Разведка в ЕВРОПЕ В статье на сегодня пойдёт разговор про OSINT на территории Европы.Тема обширная, европа разношерстная, стран много, людей много, менталитет местами разный.Перед прочтением этой статьи скажу, что это только начало и даже не верхушка айсберга, а его самая верхняя точка....
Скрипты VS Коробка. Как эффективно маскировать данные В России о маскировании данных почти ничего не знают даже ИТ-руководители. Именно поэтому мы решили познакомить начинающих специалистов с методами обезличивания информации в базах данных (БД), а тем, кто уже знаком с технологией, предоставить продвинутые и удобные подходы к ...
От A/B до OKR: Ключевые термины в Продакт-Менеджменте Это серия из трёх постов предназначена для новичков, которые уже находятся в процессе перехода в IT или только планируют сменить нишу. Здесь будут собраны базовые термины из IT-индустрии, которые стоит знать начинающим Проджект и Продакт Менеджерам, Продукт-Овнерам, а также ...
Настройка VLESS-прокси: практическое руководство по развертыванию В эпоху растущих ограничений и рисков информационной безопасности, создание собственного прокси-сервера становится актуальным решением для многих IT-специалистов. Данное руководство поможет развернуть сервер с использованием протокола VLESS. Читать далее
[Перевод] Планируем потоки как Томас Джефферсон Эта статья посвящена тому, как распределять задачи между конвейерами очередей, чтобы минимизировать общее время обработки, а также неожиданной связи между этим методом планирования и методом Томаса Джефферсона. Читать далее
Построим GPT: с нуля и шаг за шагом В этой статье я построил GPT архитектуру на данных из произведений Шекспира и получил достаточно впечатляющие результаты. Читать далее
Электроактивные и электроадгезионные приводы роботов Картинка — YouTube-каналы Steve Collins, Vito Cacucciolo, Hizook, IAD ZHdK, Grabit Inc Многие, кто интересуется робототехникой, могут рассказать об интересных приводах, используемых в робототехнических устройствах: кто-то вспомнит виброприводы шагоходов, а кто-то даже у...
Оптимизация хранимых процедур на PostgreSQL, мигрированных с MsSQL. Подходы к реализации, личный опыт Привет всем!Я — Ипатов Александр, backend-разработчик в ГК Юзтех. Сегодня хочу поделиться своим опытом в интересном проекте, связанном с миграцией БД MsSQL на PostgreSQL в разрезе оптимизации хранимых процедур и функций (далее — хранимых процедур, так как процесс оптимизации...
Записки начинающего тестировщика: как адаптироваться в мире IT после смены профессии Меня зовут Ирина, и я специалист по качеству в продуктовой команде iSpring. Шесть лет назад я ушла в декретный отпуск с должности экономиста банка. Год назад прошла все этапы найма и онбординга и стала тестировщиком. Вот только оказалось, что попасть на работу – это даже не ...
Мощь CSS-масок Декабрь 2023 года стал значимой датой в истории развития CSS-свойства mask: все современные браузеры в своих последних версиях обеспечили его полную поддержку, теперь без использования своих вендорных префиксов. А это означает, что данное свойство прочно и надолго вошло...
Обзор Predator XB323QUM3bmiiphx: игровой монитор «все в одном» Тайваньский бренд Acer обновил свою популярную линейку игровых мониторов Predator, добавив в нее три актуальных модели нового сезона. Две из них получили уже ставшую стандартной диагональ экрана 27 дюймов, но разное разрешение и частоту обновления. Однако более интересна тре...
Технология проектирования хранилищ данных Data Vault 2.0 Data Vault 2.0 остаётся одним из самых популярных методов моделирования данных. Его выбирают за гибкость, масштабируемость и устойчивость к изменениям. Этот разработанный Дэном Линстедом подход помогает организациям быстро адаптироваться к новым бизнес-требованиям, легко инт...
Пишем примитивное управление громкостью PC по локалке на NodeJS Привет, Хабр. Большая часть поста описывает запуск сишного (или плюсового, как вам больше захочется) кода на NodeJS простым способом, так как самые очевидные не всегда подходят по причинам, также описанным. Заранее извиняюсь, если данный материал кому-то покажется банальным,...
Мультимодальные приложения на Llama 3.2 и Llama Stack Недавний релиз Llama 3.2 с мультимодальными версиями 11B и 90B открывает возможности для создания AI приложений, анализирующих визуальный ввод.Мультимодальные модели были и раньше, но это первая официальная версия Llama с такими функциями. Модель может быть использована для ...
Монитор ECOVINKA SV7 идеально подойдет для компьютеров Apple. Он стоит всего 8 тысяч и выдает классную картинку erid: 2SDnjefHmSj Даже если вы выберете Макбук с самым большим экраном 16 дюймов, для комфортной работы этого все равно многим будет мало. В данной ситуации идеальным выбором является покупка iMac 24, однако выбрать версию с процессорами Pro или Max вы не сможете. Да и про ...
Как хранить данные без облачных сервисов: преимущества сетевых хранилищ QNAP для дома и бизнеса Современные технологии и развитие цифровых сервисов делают нас всё более зависимыми от сохранности данных, их безопасности, а главное - доступности. Поэтому даже домашние пользователи, не говоря уже о корпоративных, регулярно сталкиваются с необходимостью организовать систем...
Автоматизация и оптимизация сигнальных процессов сервис-провайдера с помощью API шлюза В этой статье я делюсь гибким архитектурным подходом к автоматизации сетей уровня сервис-провайдера и своим личным опытом отладки сигнального обмена. Статья рассчитана не на новичков, а скорее тех, кто знаком с основными архитектурами и технологиями, используемыми в сетях ур...
История Bluetooth: От концепции до глобального стандарта Трудно представить современный мир без беспроводных технологий. Управлять музыкой на смартфоне, отправлять файлы на принтер или синхронизировать данные с фитнес-трекером — всё это стало возможным благодаря Bluetooth, который незаметно вошёл в повседневную жизнь.Но как появил...
Чайник Teqqo Aquastar Diamond: стильный и элегантный прибор для простого кипячения воды Электрический чайник Teqqo Aquastar Diamond — простой и функциональный прибор, удобный в управлении и справляющийся со своей основной задачей: кипятить воду. Несомненным плюсом данного прибора является элегантный и стильный дизайн, а еще все полагающиеся виды защиты. К минус...
Система типов и настройки Написать заметку меня побудила статья Как устроена система типов typescript и собственный опыт.Я обратил внимание, что не всегда понимал семантику "extends" в разных контекстах и влияние настроек языка.В результате, то что меня смущало, оказалось рабочим поведением языка, но...
Трактовка понятий «технологии информационного моделирования» (ТИМ) и «среда общих данных» (СОД) Статья для тех, кто любит поговорить про значения слов в определениях и посмеяться. Предлагаю разобрать понятия Технологии информационного моделирования, информационная модель, среда общих данных и их взаимосвязь. В статье есть нудный анализ существующих определений в различ...
Как сделать ИИ (нейро) продажника/консультанта в чате на сайте с обучением на информации по компании. [ИИ для бизнеса] В этой статье расскажу, как пошагово можно запустить своего ИИ консультанта на сайте для консультирования клиента или сбора новых заявок без навыков программирования.Задавайте вопросы про создание этого ИИ ( на самом деле GPT) бота или опишите идею любого другого, чтобы я ра...
Реализация режимов шифрования на языке RUST После долгого перерыва мы возвращаемся в мир криптографических алгоритмов. В этот раз мы рассмотрим некоторые широко известные режимы шифрования блочных шифров, таких как ECB, CBC, CFB, OFB, CTR и подготовим небольшую архитектурную задумку, о которой я расскажу под катом.Есл...
3D-model (векторизация) Векторизация — это процесс преобразования растрового изображения (состоящего из пикселей) в векторное изображение, которое описывается математическими формулами. Векторные изображения имеют несколько преимуществ, таких как возможность масштабирования без потери качества и ме...
Моделирование креплений для различных электронных модулей Всем привет!Данная статья ориентирована больше на новичков, однако идея может пригодиться и тем, кто уже хорошо владеет моделированием.В одном из моих проектов возникла необходимость установить множество электронных модулей. Проблема заключалась в том, что на большинстве пла...
Разметка изображений: самый полный гайд Представьте себе, что от точности разметки изображений зависит успех вашего проекта: будь то способность нейросети распознавать сложные объекты или автоматизация рутинных задач. Но в чем ее специфика, какие виды разметки изображений существуют и какой тип аннотации лучше под...
Работа с дисками в РЕД ОС В последние годы российские дистрибутивы Линукс уверенно набирают популярность. Одним из наиболее распространенных дистрибутивов является РЕД ОС. Это разработка компании «РЕД СОФТ» которая с 2014 года занимается разработкой данной ОС. В основу этого дистрибутива была положен...
Рейтинг инструментов BPMN Не так давно проводила на работе практический интенсив по нотации BPMN, и сегодня хочу поделиться своим личным рейтингом инструментов, которые я использую для создания бизнес-процессов в этой нотации.В этом рейтинге мы рассмотрим 5 самых популярных инструментов, сравнив их п...
Инженерный трек: как вырасти из senior’а в staff-инженера Привет! Меня зовут Дима Салахутдинов, я principal-инженер в Купере и автор tg-канала «Стафф-инженер». В перой части статьи я уже рассказывал, какими задачами занимаются стаффы и какие компетенции для этого нужны. Сегодня хочу поговорить о том, как развиваться синьору, чтобы ...
Эксперимент: даём ChatGPT полный доступ к компьютеру Это статья написана от души и для души. Она не является: инструкцией, примером для подражания, призывом к действию или чем-то подобным.Я абсолютный новичок в программировании, поэтому могу ошибаться в некоторых (или даже во многих) вещах. Я бы, наверное, даже не писал эту ст...
Как искать работу в Linkedin? 7 способов Большая статья про то, как эффективно искать работу в LinkedIn и использовать данную площадку на максимум. Далеко не все вспоминают про LinkedIn когда начинают искать работу в IT, ведь площадка давно заблокирована в РФ и многие думаю, что там можно найти работу только загран...
Apple выпустила iOS 18.2 beta 2 для разработчиков. Что нового и как обновить Айфон раньше всех Apple продолжает потихоньку готовить релиз iOS 18.2. Теперь сборки выходят не каждую неделю, так как торопиться некуда — релиз запланирован на конец декабря. А потому все нововведения можно протестировать как следует, чтобы избежать ошибок. Именно такой подход мы уже ...
Изменение модели данных CoreData для iOs приложения с iCloud синхронизацией Казалось бы простая задача добавления атрибута(ов) в модель данных CoreData может обернуться проблемами если в приложении используется синхронизация между устройствами через iCloud. В этом случае необходимо провести так называемую lightweight миграцию прежней базы данных в б...
[Перевод] Датчик линейного положения, работающий по принципу электронного штангенциркуля Вы когда-нибудь мечтали о 500-герцовой системе датчиков линейного положения? Тогда вам повезло — для этого достаточно печатной платы, простого микроконтроллера и немного математики! См. также полный исходный код и журнал моих исследований по этому проекту. Читать дальше &r...
Qualcomm представила новую линейку процессоров Snapdragon Elite для автомобильной промышленности Qualcomm представила новую линейку процессоров Snapdragon Elite, которая будет использоваться в автомобильной промышленности. Snapdragon Digital Chassis уже используется в автомобилях, но теперь Qualcomm представляет свои новейшие чипы Snapdragon Ride Elite и Snapdragon...
Обзор готовых решений для построения портала IDP и когда они не подходят: анализ на примере кейса компании Evrone Построение IDP — один из наиболее эффективных методов оптимизации работы команд разработки. Но внедрению внутренних платформ и получению профита от них обычно предшествует немало барьеров: необходимость инвестиций, выделение ресурса специалистов вдолгую, потребность в соотве...
ИПР — то, чем вы сможете похвастаться на собеседовании или в баре Мы на Хабр Карьере помогаем IT-специалистам зарабатывать больше, а компаниям — быть в курсе трендов на рынке найма. Не так давно мы стали внедрять ИПР-ы в Хабре и это оказалось непросто. Нам стало любопытно: каким специалистам они подходят, как влияют на мотивацию, повы...
Искусственный интеллект в тестировании ПО: обзор инструментов Привет, Хабр! Меня зовут Николай Дымников, я работаю старшим тестировщиком. До текущей позиции я около двух лет работал в ИТ-сопровождении и не понаслышке знаком с проблемами некачественного тестирования программного обеспечения (ПО). Поэтому при переходе в тестировщики я ср...
Что нового в Strapi 5. Спойлер: стало лучше Всем привет! Меня зовут Александр, я фронтенд-разработчик в KTS.Не так давно я уже рассказывал про Strapi – одно из ведущих опенсорсных headless CMS-решений, которое на протяжении долгого времени пользуется большой популярностью у разработчиков. Чуть больше месяца назад разр...
Compound V3: Обзор кредитного протокола Привет, Хабр! Я уже рассказывал про Compound v2 в предыдущей статье, там мы описывали основы протокола. В этой статье сравним вторую и третью версию, а еще детальнее разберем архитектуру и смарт-контракты. Читать далее
История Data Literacy в России Привет Хабр! Это продолжение истории о развитии "Культуры работы с данными". Первая статья была о том, как данный термин вообще появился в России. Итак, у нас есть план продаж идея, как сделать использование аналитики в компании массовым, тем самым увеличив охват и глубину и...
Появилось приложение Spilk — анализирует, любит ли вас партнёр Несколько лет назад Вера стала замечать, что её парень охладел к ней: стал меньше писать и интересоваться жизнью девушки. Вместо разговоров Вера решила написать Telegram клиент, который бы на основе сбора данных наглядно продемонстрировал динамику их общения. Задумка не уд...
Введение в методологию Agile и ее влияние на тестирование Всем привет! Я Алена, QA Lead :) Сегодня я хочу обсудить важную тему, которая касается всех нас в сфере разработки ПО — методология Agile и ее влияние на тестирование. Внедрение Agile произвело революцию в процессе разработки, и тестирование не осталось в стороне. В этой ст...
Front-end глазами back-end разработчика Всем привет! После учебы попал на ферросплавный завод в 2005 году, сначала "киповцем" в цех КИПиА, а позже меня перевели в службу АСУТП. Там относительная свобода в сравнении с цехом АСУП, потому что у них там были разные корпоративные стандарты безопасности, Active Director...
Google Pixel 9a получит более простую камеру Если верить информации западных инсайдеров, компания Google выпустит Pixel 9a уже в марте следующего года, и недавно появились интересные утечки рендеров грядущего доступного смартфона, которые подчеркнули отсутствие фирменного островка для системы камер. Дело в том, что Pix...
Как стать автором: очень не страшная история Вдохновлено написанием статьи, после прочтения условия проведения "Челлендж от Хабра" для авторов и общения в ТГ группе этого челленджа.Что является главным страхом зарегистрированного пользователя Хабра к написанию своей возможно первой статьи? А давайте так: Что может дать...
Разбираемся с мандатным управлением доступом в Астра Линукс Мандатная модель управления доступом не получила столь широкого распространения в пользовательских операционных системах из‑за своей сложности, а также из‑за того, что в ней нет большой необходимости при решении задач, не связанных с в...
Компьютерное зрение на С++: подключаем ML-библиотеки и обрабатываем результаты поиска объектов Привет, Хабр! Меня зовут Кирилл Колодяжный, я разрабатываю системы хранения данных в YADRO и изучаю нестандартные подходы к машинному обучению: создаю ML-проекты на С++. Это вторая часть цикла о разработке приложения для обнаружения предметов на С++. В прошлом материале...
Куда утекает производительность? Ищем ответ в логах Greenplum Привет, Хабр!Greenplum — это база данных, созданная специально для больших данных и аналитики. Ее основное преимущество — это архитектура массово параллельной обработки, сокращенно – MPP, которая позволяет масштабироваться до огромных объемов данных, не теряя производительно...
Старое, доброе, немного ламповое ИК управление Давно вынашивал в планах написать статью на тему ИК управления. После прочтения https://habr.com/ru/companies/flipperdevices/articles/566148/ собрал необходимый материал. В этой статье я задавал вопросы разработчикам Flipper об используемых ими методах копирования и воспроиз...
Настройка SSO Авторизации Для BookStack Одним из наиболее удачных сервисов (среди мне известных ) для хранения внутренней документации является BookStack. По тому как его развернуть и выполнить Базовую настройку можно прочитать на ОФ сайте, там прекрасная документация. Но вот вопрос настройки авторизации SSO испо...
Курс Roblox в 8–9 лет и старше: моделирование и программирование Roblox и Roblox Studio – примечательная связка: благодаря данным средам и инструментам, доступным в них, даже младшие школьники могут научиться создавать первые простые игры и модели, а также писать код на языке Lua. Можно начать на курсах или отдать предпочтение бесплатным ...
Как я учил войс чат дискорда работать через прокси с помощью перехвата системных вызовов и DLL Hijacking Я, как и многие, пользуюсь дискордом и китайскими прокси клиентами, но, к сожалению, голосовой чат дискорда не поддерживает работу через прокси. Из-за этого постоянно приходится включать режим TUN/VPN, который заворачивает в туннель много лишнего.Можно ли с этим что-то сдела...
Как прошить oculus quest 2 в 2024 году без vpn и без лишних заморочек? Итак, где-то в середине июля я стал счастливым владельцем quest 2. Я выбрал его, потому что несмотря на санкции этот шлем был лучшем по соотношению цена/качество. Но вот проблема: обновить шлем до последней версии официальным способом было невозможно. Прочитав статей 20 на э...
Прогнозирование продаж с использованием библиотеки Prophet, часть 1 Прогнозирование можно считать одной из основных задач аналитика. Прогноз продаж, оттока, выручки, затрат – всех основных KPI развития бизнеса – может потребоваться где и когда угодно, начиная от небольших ad hoc кейсов до масштабных задач вроде процесса бюджетирования на пре...
Как мы плавно подготовились к переходу с Oracle на PostgreSQL и не потеряли в эффективности Привет, Хабр! Меня зовут Михаил Герасимов. Это продолжение статьи «Как в РСХБ разработали средство генерации SQL-запроса для упрощения задач по тестированию», где описывались принципы работы QueryBuilder. В условиях растущего тренда на импортозамещение в ИТ-компаниях, п...
Тестирование redux store Бывает ситуация, когда нам необходимо протестировать middleware, либо асинхронное событие, которые возникает в хранилище redux.Цель этой статьи в том, чтобы показать как тестировать action в redux store.Есть готовое решение, redux-mock-store, но оно не позволяет оперировать ...
[Перевод] Экспорт данных из базы данных в Excel на C#: 5 проверенных методов Экспорт данных из базы данных в Excel - важнейшая задача для многих организаций, позволяющая пользователям легко анализировать, визуализировать и обмениваться информацией. Этот процесс обеспечивает беспрепятственный перенос данных, сохраняя целостность и структуру исходного ...
Как выигрывать Kaggle соревнования: LLM-анализ выигрышных решений Примерно год назад энтузиаст с Kaggle по имени Дарек Клечек провел интересный эксперимент: он собрал все доступные описания (writeups) побеждавших на Kaggle за последние годы решений, пропустил их через LLM и свел по ним общую статистику о том, какие механики и алгоритмы ока...
Топ-6 самых полезных нововведений, которые появились в Android 15 Не так давно Google выпустила Android 15. Большого ажиотажа обновление не вызвало, поэтому большинство скорее всего даже не сможет назвать точную дату его выхода. Ну, оно и понятно. Несмотря на то что новые версии операционной системы выходят только раз в год, поисковый гиг...
Азотный лазер большой мощности: так ли он прост? Несколько лет назад я отвлекся на другие проекты, которые не связаны с основным моим увлечением — старыми газовыми лазерами. Я бы и дальше откладывал возвращение к ним, если бы не предложение, от которого грех было отказываться — выполнить ремонт азотного лазера ЛГИ505. В ...
Как создать дашборд в Superset: гайд для новичков и полезные лайфхаки Superset не самый новый bi-инструмент, но его популярность продолжает расти. На мой взгляд, он достаточно прост в освоении, но все же требует некоторых усилий и времени, чтобы разобраться куда тыкать, чтобы загрузить данные и нарисовать красивый отчет. Лично я за свою карьер...
Как создать дашборд в Superset: гайд для новичков и полезные лайфхаки Superset не самый новый bi-инструмент, но его популярность продолжает расти. На мой взгляд, он достаточно прост в освоении, но все же требует некоторых усилий и времени, чтобы разобраться куда тыкать, чтобы загрузить данные и нарисовать красивый отчет. Лично я за свою карьер...
Способы интеграции 1С и корпоративного хранилища данных Привет, Хабр! На связи Александр Чебанов, product owner Modus. Процесс передачи информации из 1С в корпоративное хранилище данных для интеграторов часто оборачивается головной болью. В целом, информационные системы 1С легко взаимодействуют друг с другом за счет платформенных...
Обновляем цены на товары в магазине Озон из Гугл Таблицы по API В этой статье мы покажем вам новую Гугл Таблицу для обновления цен на товары в магазине Озон, в которую мы не только загружаем список товаров как в предыдущей статье, но еще загружаем их цены, а также имеем возможность эти цены отредактировать и отправить изме...
С чего начинать на новом месте (памятка для Руководителя проектов) Каждый РП рано или поздно меняет работу. Вы уходите со старого места, где вы уже хорошо ориентируетесь, и приходите в неизвестность:- неизвестный проект с неизвестными рисками;- непонятный руководитель (при первом знакомстве он душка, но какой будет в реале?);- непонятные ко...
Вся правда о переходе с монолита на микросервисы, когда у тебя сеть из десятков тысяч магазинов: опыт Х5 Tech Привет, Хабр! Меня зовут Алексей Топчий, я уже более 20 лет работаю в IT. Прошёл все уровни: бэкенд, фронтенд, фулстек со множеством языков и технологий. В СберТехе занимался Единой фронтальной системой, в Яндексе участвовал в стартапе, связанном с FMCG. Сейчас занимаюсь сер...
Сравнение реализаций гео-решений в СУБД Привет, Хабр! Сегодня быстро разберём, как разные СУБД справляются с геоданными. Вопрос простой: если нужно работать с координатами, полигонами, считать расстояния — какая база справится лучше? В сравнение пойдут PostgreSQL (с его крутым PostGIS), MySQL, Oracle, SQL Server и...
[Перевод] KAN: Kolmogorov–Arnold Networks Предлагаю вашему вниманию полный перевод статьи об алгоритме нейронной сети на основе теоремы Колмогорова Арнольда, опубликованной исследователями из Massachusetts Institute of Technology, California Institute of Technology, Northeastern University и The NSF I...
Собеседование — битва к которой нужно подговиться Ты ищешь первую работу или решил сменить работу? Поздравляю! Впереди тебя ждет карусель интересных приключений: от собеседований и до ожидания обратной связи. Я провел немало собеседований, и у многих кандидатов есть одна общая ошибка — отсутствие подготовки. Они идут напрол...
Сено, чанки, два промпта: кто такой MarkUp-инженер и как его обучать В работе над смарт-системой на базе AI нам понадобились специалисты по разметке данных — MarkUp-инженеры. Рынок труда быстро трансформируется, и новые позиции не всегда можно закрыть готовыми специалистами, поэтому мы сосредоточились на формировании навыков внутри команды. М...
Уменьшать срок или платёж, что выгоднее: наглядное сравнение способов досрочного погашения кредита Большинство из нас так или иначе сталкивается с кредитами, а потом и с досрочными платежами по ним. Эта статья в блоге ЛАНИТ на Хабре посвящена подробному сравнению двух способов внесения частичных досрочных платежей по кредиту: с  уменьшением срока и с уменьшением ...
Как обновить зависимости, чтобы не было больно Всем привет! Я Родин Максим, старший разработчик ГК Юзтех. С ростом количества прожитых лет проекты могут обрасти зоопарком разнообразных зависимостей. Все они со временем нуждаются в обновлении по разным причинам — плановый апгрейд зависимостей, переход на другую платф...
Как подружить микросервисы и Kafka С увеличением вычислительных мощностей и пропускной способности каналов связи увеличились также и объемы обрабатываемых данных, а также требования к скорости обработки. Сейчас все больше систем требуют, чтобы работа с данными велась в режиме реальног...
[Перевод] Давайте использовать OpenTelemetry со Spring Команда Spring АйО перевела статью, раскрывающую преимущества использования OpenTelemetry для мониторинга и трассировки Spring Boot приложений.В статье показано, как интеграция с OpenTelemetry с использованием OTLP и других компонентов позволяет легко встроить стандартизиров...
Pygame для начинающих программистов. Статья первая В современном мире программирования язык Python занимает особое место благодаря своей простоте, читаемости и мощным возможностям. Он стал одним из самых популярных языков среди начинающих разработчиков и профессионалов. Но как же привлечь внимание к этому языку и сделать про...
Миграция данных из Zimbra при помощи Carbonio Backup Главная функция Carbonio Backup - резервирование данных почтовых ящиков пользователей Carbonio. Созданная при его помощи резервная копия может использоваться для восстановления данных не только на исходном, но и новом сервере, обеспечивая возможность восстановления системы д...
Где PostgreSQL выигрывает у Oracle DB Если вы стоите перед выбором между PostgreSQL и Oracle DB, то эта статья для вас. Разберем где PostgreSQL побеждает Oracle. Будет код и примеры — всё, что нужно для практического сравнения. P.S: эта статья не про то, какой PSQL хороший в отличии от Oracle, а про то, в чем P...
Библиотека CUtils Друзья! В данной статье мы бы хотели рассказать про кроссплатформенную коллекцию утилитных C++ компонентов CUtils.CUtils — это довольно полезный инструмент при разработке кроссплатформенного программного обеспечения на языке программирования C++. Читать далее
Ошибка сериализации в Redux: как организовать хранение файлов в React-приложении Мы пишем онлайн-компилятор для отладки ИИ-сервисов. И статья — это скорее приглашение к обсуждению. Хочу поделиться практическим подходом, который показался простым и удобным в этом проекте. Ваши комментарии и критика будут очень полезны. Читать далее
Суперсингулярные изогении в криптографии В своей профессиональной деятельности как DevOps-инженер я часто сталкиваюсь с необходимостью обеспечивать безопасность и устойчивость инфраструктуры в условиях быстро развивающихся технологий. Одним из ключевых аспектов, на которые я обращаю внимание, особенно в свете появл...
[Перевод] Preview сложных элементов в Compose Поскольку все больше разработчиков Android переходят на Jetpack Compose из-за его декларативного подхода к пользовательскому интерфейсу, ему необходимо быстро просматривать сложные макеты. Однако не так-то просто отображать изображения с URL-адреса в Preview Jetpack Compose,...
Рациональность вложений в автоматизацию процессов. Разбираем на примере столовой и ещё двух историй крупных компаний Итак, у вас есть благая цель: вы хотите построить на производстве столовую, чтобы сотрудники могли пообедать на работе и не ездили в ближайшую пиццерию. Так вы сократите время простоя, а ещё никто не будет греть рыбу в общей микроволновке. Это хорошо. Правда, пока вы делаете...
Работа с CoordinatorLayout: шапочный разбор Приветствую тебя, уважаемый читатель! Меня зовут Пятаков Никита, я Android-инженер в команде MT&S Авито. Здесь я делюсь опытом реализации двух версий шапки на главном экране приложения Avito. Эта статья будет особенно полезна разработчикам, которые хотят познакомиться с ...
ИИ и сумерки всеобуча Учить всегда сложно. Учить массово и хорошо — это уже из области фантастики. Но что если на помощь придет искусственный интеллект? В этой статье я расскажу, как ИИ может помочь педагогам не сойти с ума, сохранить нервы и даже превратить учебный процесс в что-то похожее на уд...
SDR радиоприёмник в FPGA плате Марсоход3GW2 (Gowin) Когда-то давно, аж 2013-й год, на Хабре была статья "Простой SDR приёмник на ПЛИС" автора @iliasam. Я попытаюсь повторить этот проект на другой элементной базе: FPGA плата Марсоход3GW2, микросхема Gowin GW1NR-LV9QN88PC6/I5. Законы Цифровой Обработки Сигналов кажется остаются...
Не усложняй: простые фреймворки, чтобы быстрее принимать решения и приоритизировать задачи Существует много фреймворков, призванных упросить жизнь и рабочую рутину, однако большинство из них становятся очередной головоломкой и никак не помогают быстрее принимать решения. В этой статье я собрала самые простые и легкие способы, которые действительно помогают быстро ...
[Перевод] Последовательное A/B-тестирование в Netflix. Часть 1: непрерывные потоки данных Привет, Хабр! Из этой статьи вы узнаете про применение последовательного A/B‑тестирования в Netflix. Читать далее
Загрузка и обработка видеофайлов посредством Minio, REST и FFmpeg Всем привет! Меня зовут Павлов Денис, я .NET backend разработчик в компании DD Planet. В статье расскажу о реализации загрузки и обработки видеофайлов с использованием Minio в качестве хранилища и FFmpeg для обработки видео. Читать далее
Как работать с Amazon SP-API: инструкция для начинающих Этот текст я написал для людей, которые как и я, ещё 3 месяца назад про Python только слышали. Для тех, кто неплохо знает английский, но иногда хочет простого русского «ща сделаем». Для тех, кто решил написать свой первый запрос для AP...
Плюсы и минусы различных DWH как источников данных для BI Привет, Хабр! На связи Александр Чебанов, product owner Modus. Корпоративное хранилище данных долгое время является наиболее популярным источником данных для бизнес-аналитики, и вряд ли в ближайшее время картина радикально изменится. Но наряду с ним выступают и гибридны...
Новый чудовищный процессор Apple выйдет в следующем году. M4 Ultra станет основой для обновлённых Mac Pro и Mac Studio На сегодняшний день у Apple в линейке уже есть SoC M4, а самой мощной в ряде задач остаётся M2 Ultra, то есть решение из позапрошлого поколения. Как сообщается, M4 Ultra всё же в работе. создано DALL-E Apple пропустила M3 Ultra, но M4 Ultra появится и станет осно...
Шины данных для очень больших инсталляций, или Почему большим компаниям сложно с опенсорсом Как технический менеджер в Яндексе я отвечаю за эксплуатацию больших кластеров, через которые мы передаём данные, — для этого мы используем YDB Topics, собственный аналог Apache Kafka, о котором я уже рассказывал. Но если посмотреть не ...
Мальчики, которые чинят компьютеры: что на самом деле делают инженеры сопровождения Инженеры сопровождения — это специалисты, которые следят за стабильной работой IT-систем. Но часто их путают с техподдержкой, системными администраторами, DevOps-специалистами, а иногда и с тестировщиками. Тема кажется очевидной, но зачем тогда писать статью? В професси...
Основные типы технологий 3D-печати Добро пожаловать в мир 3D-печати! Если вы новичок в этой области, то вас ждёт увлекательное и полезное путешествие. Одна из основных проблем, с которой сталкиваются новички, — это разнообразие технологий 3D-печати. Многие думают, что 3D-печать — это просто создание объектов ...
Инженер внедрения в IT: куда и как развиваться Всем привет! Меня зовут Егор Сизов, и это моя вторая статья здесь. Я руковожу группой инженеров внедрения в ГК «Цифра». В первой статье я написал о специфике роли инженера внедрения в IT и необходимых ему компетенциях, теперь хочу рассказать в каких направлениях такой специа...
Создание Telegram Web App с FastAPI: Генерация, сканирование QR-кодов камерой устройства и деплой за 5 минут Привет, друзья! Ваш теплый отклик на мою прошлую статью о разработке Telegram-ботов с использованием технологии MiniApp вдохновил меня на создание нового проекта.Сегодня вы узнаете, как создать Telegram Web App с помощью FastAPI и Aiogram 3, который сканирует и генерирует QR...
Карьерный рост из senior: кто такой staff-инженер? Привет! Меня зовут Дима Салахутдинов, я principal-инженер в Купере и автор tg-канала «Стафф-инженер». У нас в компании это один из грейдов технической ветки развития инженеров, которую мы обобщенно именуем «Staff-инженер».Цель статьи — сформировать у senior-разработчика обще...
Графы, растры и море: как школьники создают будущее геоаналитики Привет, Хабр! Меня зовут Алексей Пустынников, я руководитель команды геоаналитики в банке ВТБ. Сегодня я хочу рассказать вам об интересном проекте, в котором участники конкурса «Большие Вызовы» решали сложные задачи в сфере геоаналитики и машинного обучения.Представьте: лето...