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

Язык программирования R для статистической обработки данных Гибадуллина Д.А  Гибадуллина Дарья Анатольевна/ Gibadullina Daria Anatolievna- студент второго курса бакалавриат Уральского филиала Финансового университета направления бизнес-информатика Аннотация: Язык программирования R имеет широкое применение в области ст...

Общее описание и реализация Word2Vec с помощью PyTorch В данной статье даётся общее описание векторного представления вложений слов - модель word2vec. Также рассматривается пример реализации модели word2vec с использованием библиотеки PyTorch. Приведена реализация как архитектуры skip-gram так и CBOW. Читать далее

[Перевод] Обработка ошибок в web apps не должна быть такой сложной В процессе работы с Go я столкнулся с ещё одной проблемой — обработкой ошибок в хендлерах. Как можно сделать этот процесс удобным и эффективным для 150+ обработчиков? Как обеспечить консистентность и поддержку при обработке ошибок? Разумеется, мои поиски палочки-выручалочки ...

Эволюция обработки данных: от MapReduce к стриминговому движку Yandex Query Language (YQL) — универсальный декларативный язык запросов к системам хранения и обработки данных, разработанный в Яндексе. А ещё это один из самых нагруженных сервисов: YQL ежедневно обрабатывает около 800 петабайт данных и 600 000 SQL-запросов, и эти показател...

Реализация чата на Flutter при помощи вебсокетов Всем привет, на связи PurplePlane! В этой статья мы хотели бы рассмотреть реализацию простого чата на языке Dart, используя пртокол websocket.Рассмотрим пример использования вебсокета при реализации простого чата с помощью библиотеки web_socket_channel. Читать далее

Хеш-функция Стрибог. Особенности аппаратной реализации на System Verilog На просторах интернета есть несколько статей об алгоритме получения хеш-функции Стрибог (ГОСТ 34.11-2012), в том числе и на Хабре. Однако везде в качестве примера приводится реализация на языках программирования C, C#, Python и других. То есть идет последовательное выполнен...

Книга «Python для сложных задач: наука о данных. 2-е межд. изд. » Привет, Хаброжители! Python — первоклассный инструмент, и в первую очередь благодаря наличию множества библиотек для хранения, анализа и обработки данных. Отдельные части стека Python описываются во многих источниках, но только в новом издании «Python для сложных задач» вы...

На что способны виртуальные потоки Java в обработке файлов Привет, Хабр!ПредисловиеНачнем с того,что я не специалист по Java и у меня нет коммерческого опыта на этом языке. Я просто обычный кодер, который по вечерам пилит проекты на Java, а основной мой стек состоит из PHP и смеси Python + Go. В данной статье хочу с вами поделиться ...

«Трудности перевода»: как ChatGPT справился с задачей адаптации сложных текстов Привет, Хабр! Меня зовут Сергей Кулабухов, я занимаюсь внедрением ИИ в бизнес-процессы компании Fix Price. С появлением моделей обработки естественного языка (natural language processing) изменился и подход к реализации подобных задач. Теперь мы не программируем и не обучаем...

Реализация многофункционального терминального интерфейса для МК AVR В данной статье речь пойдёт о разработке многофункционального терминального интерфейса для МК (на примере МК Atmega32 и терминала HyperTerminal. Многофункциональность в моём случае будет заключаться в обработке управляющих символов и управляющих последовательностей с целью р...

Как работает дедупликация данных в потоке Kafka-to-Kafka? Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей части «Как исп...

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

Наивный байесовский классификатор. Основная идея, модификации и реализация с нуля на Python Наивный байесовский классификатор (Naive Bayes classifier) — вероятностный классификатор на основе формулы Байеса со строгим (наивным) предположением о независимости признаков между собой при заданном классе, что сильно упрощает задачу классификации из-за оценки одномерных в...

Особенности обработки native events в React.js В данной статье рассматриваются особенности, которые связаны с обработкой нативных событий (native events) в React-приложениях. Существует проблема частичной потери контекста функционального компонента при обработке нативных событий, которые навешиваются на элементы с помощь...

Потоковая обработка данных: анализ альтернативных решений Всем привет! Я Алексей Пономаревский, разработчик решений для платформ сбора и обработки больших данных.Два года назад мы в ITSumma создали решение для потоковой обработки данных с помощью Apache Spark и базы данных Greenplum — spark-greenplum-connector. Это многофункциональ...

[Перевод] Знакомьтесь с Hurl, ужасной (но милой) идеей для языка Иногда в голову приходят идеи, которые звучат ужасно, но требуют воплощения в жизнь. Несколько месяцев назад автор этой заметки, разработчик под ником ntietz*, обсуждал с другом идею языка, в котором единственным потоком команд является обработка ошибок. Эта мысль укоренилас...

[Перевод] Введение в цифровую обработку сигналов Эта статья дает общее представление о том, что такое ЦОС (цифровая обработка сигналов), как она работает и какие преимущества может предложить. Цифровая обработка сигналов включает разработку алгоритмов, которые могут быть использованы для улучшения сигнала определенным обр...

ASCII-арты на python Здравствуйте уважаемые читатели, в этой статье я расскажу Вам как делать ASCII-арты при помощи языка python, на примере моего кода. Читать далее

Введение в Apache Flink: осваиваем фреймворк на реальных примерах Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink. Эту технологию выбрали, так как она (в отличие от Apache Spark) относится к true-стримингу и позволяет ...

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

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

Укрощение примитивов синхронизации: сравниваем решения задачи с построением пула потоков на С и Go Эта статья основана на истории об одном личном челлендже. Задача звучала так: помочь с реализацией взаимодействия компонентов в программном комплексе заказчика. Иными словами, понадобилось IPC для дальнейшего развития продукта. Вызов заключался в том, что в обязательных треб...

(Еще один!) личный опыт переезда в США. Часть 1: оффер Всем привет, меня зовут Александр и я алкоголик бы хотел поделиться личным опытом получения оффера в США, подготовки к получению визы этой страны, собственно, получения визы (ох, и разные это вещи!), переезда, получения гринкарты. Может, что-то получится добавить по результа...

[Перевод] Идиоматическая обработка ошибок в Rust Вы забудете о необработанных исключениях, если научитесь обращаться с ошибками, как это принято в Rust Обработка ошибок – важнейшая часть любого языка программирования, а в Rust предлагается для этого уникальный мощный подход. Rust, в отличие от многих других языков программ...

Реализация взаимодействия с БД через Middleware в Telegram-ботах Когда я начинал писать своих первых ботов с использованием базы данных, их код был очень плохим: он расходовал лишние ресурсы, а также была плохая архитектура проекта. Поэтому я хочу поделиться с вами своими знаниями, чтобы вы не наступали на те грабли, на которые наступа...

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

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

REST API/Web сервер на PowerShell Все привет! В продолжение статьи о возможностях PowerShell, хочу поделиться несложной реализацией создания REST API и простого Web-сервера, используя только PowerShell на базе класса .NET HttpListener. Такая реализация позволяет настроить endpoint (конечные точки) для обрабо...

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

Что я понял на первой работе программистом / Мои советы Junior-разработчикам Всем привет! Меня зовут Максим. Я backend-разработчик, который не так давно устроился на свою первую работу. В этой статье хочу поделиться своими наблюдениями/советами/рекомендациями для начинающих программистов. Ведь, как известно, если опыт не превращён в текст, он даже не...

FineBI: Обработка данных для начинающих пользователей Хабр, привет!На связи команда Business Intelligence GlowByte. Да-да, те самые неугомонные, которые создали самое крупное русскоязычное сообщество FineBI, проводят обучения, собирают дайджесты и ежегодно организуют масштабные конференции. Меня зовут Александр, я руководи...

На что стоит рассчитывать на первой работе: путь стажера (data engineer) Меня зовут Виктор и на данный момент я заканчиваю стажировку и перехожу на должность младшего инженера по работе с данными в компании Sapiens solutions. В этой статье я хочу поделиться опытом и дать несколько рекомендаций людям, которые только начинают свой путь в области ра...

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

“Строка бога”/идеальный промт, часть 3, продолжение про ИИ-генераторы музыки “Человек создан для счастья, как птица для полета” В. Г. Короленко из его рассказа “Парадокс”Здравствуйте, уважаемые читатели!В этой статье я хотел бы продолжить тему появления субъязыка текстовых запросов к нейросетям, однако в этот раз речь пойдет об использовании ИИ в цел...

Возможности JS, о которых вы возможно не знали Всем привет! Меня зовут Леша, я фронтенд-разработчик. Крашу кнопочки, пишу js скрипты, веду канал в TG https://t.me/frontend_tales (подписывайтесь, стараюсь выкладывать полезный материал). В этой статье хотел бы поделиться с вами лайфхаками JavaScript, которые, возможно, пом...

Реализации Microkernel архитектуры с помощью Java OSGI Я хотел бы поделиться опытом реализации микроядерной архитектуры (microkernel) на Java с помощью OSGI (Open Service Gateway Initiative). Этот подход является промежуточным вариантом между микро-сервисной и монолитной архитектурой. С одной стороны присутствует разделение межд...

Tilda и чат-бот: пример интеграции Привет, друзья! Сегодня мы поговорим о том, как  добиться эффективной обработки заказов, оформленных на сайте стандартного интернет-магазина на Tilda. Я на примере своего проекта (интернет-магазин карликовых кроликов) расскажу, почему менеджерам неудобно работать с заяв...

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

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

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

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

Что вы знаете о символьном программировании? Кликбейтный заголовок, риторический вопрос и обещание раскрыть тайну! Не самый лучший набор, но нормального названия для статьи мне в голову не пришло. Что же здесь все таки будет? Речь пойдет о реализации символьного программирования в Wolfram Language (WL). Я не буду расск...

Простой и сложный Always On VPN от Microsoft. Опыт внедрения VPN обеспечивает доступ удаленных пользователей в корпоративную сеть. Решений много, но выбор оптимального не всегда очевиден. В данной статье хотел бы поделиться опытом внедрения и использования такого продуктового решении как Always On VPN от компании Microsoft. Подчеркну,...

Реализация многооконного приложения на Vue 3 В наше время чуть ли не каждое приложение использует браузерный клиент. Это просто в написании, это кроссплатформенно, это легко в использовании. Браузерные решения уже активно используются и в промышленной сфере: аналитиками, операторами. WEB-приложения для управления промы...

Проект Альфа-Бизнес Mobile Web (веб-приложение), или Что делать если AppStore — всё? Начиная с ведения санкций в 2022 вниманием не обошел и банковский сектор. Сказалось это и на возможности вести разработку и обновлять банковские приложения в Google Play и AppStore. Если ограничение Google Play можно обойти через множество альтернативных сторов или, на худой...

ChatGPT и отзывы на приложение: Анализ тональности для улучшения пользовательского опыта Привет, дорогие читатели Хабра!Сегодня я хочу поделиться с вами своими знаниями и опытом в области анализа данных и машинного обучения, освещая увлекательную и актуальную тему – анализ отзывов на приложения с использованием модели ChatGPT. Этот подход открывает новые горизон...

Дообучение ruGPT-3.5 13B с LoRA Добрый день, уважаемые читатели и авторы Хабра!Сегодня я рад представить вам подробное руководство по обучению модели ruGPT-3.5 13B с использованием датасетов модели Saiga-2/GigaSaiga, технологии Peft/LoRA и технологии GGML. Эта статья призвана стать полезным и практичным ре...

Передача и обработка IAsyncEnumerable в Typescript с ASP.NET Core Web Всем привет, Меня зовут Олег и я .NET разработчик в компании Bimeister. Я хотел поделиться своим интересным опытом по связи проекта на ASP.NET Core Web App с использованием IAsyncEnumerable коллекций и современного фронт-енд SPA приложения на Typescript.и Vue.js 3 версии.Все...

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

Как получить водительские права в Испании: личный опыт россиянина получения удостоверения Пишу эту статью сразу после успешной сдачи практической части экзамена. Хочу поделиться своим опытом и дать советы, как россиянам проще, быстрее и дешевле получить водительские права в Испании. Читать далее

[recovery mode] Ваша емайл-рассылка нуждается в AMP-emails прямо сейчас В данной статье я расскажу про AMP-emails из личного опыта разработки , покажу примеры какие бывают емайлы, как их можно отправлять, в каких областях емайл-маркетинга они могут использоваться. У меня более 4 лет опыта работы с AMP-emails и мне есть чем с вами поделиться Чита...

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

Где мне это пригодится в жизни или применение Nothing в Kotlin на примере В данной статье я хочу показать, почему развитая система типов в языке программирования это здорово. Я попробую провести небольшой ликбез о таких на первый взгляд сложных вещах, как sealed-иерархии, ковариантность и тип Nothing на понятном практическом примере создания своей...

Короткой строкой: почему я начал учить английский и пригодился ли язык в работе Всем привет! Меня зовут Павел, я работаю в Альфа-Банке на позиции QA Tech Lead. В этой статье хотел бы поделиться своим видением и опытом использования английского языка в повседневной и профессиональной жизни. Не сказать, чтобы мой английский был на высочайшем уровне, но дл...

«Строка бога» и «лакмусовая бумажка» для ИИ-генераторов изображений Здравствуйте, уважаемые читатели!В этой статье я хотел бы привести простой пример методологии, которую использую лично я для оценки возможностей нейросетей-художников, а также для работы с ними.Кроме того, хотелось бы ввести в обиход промт-инженеров два новых термина. Читат...

3D печать фигурок от группы 3DPUNK. Работы 2023 года Доброго времени суток товарищи комрады. Хочу поделиться опытом и результатами работы по 3д печати фигурок на заказ от группы 3DPUNK.В конце статьи выложу некоторые фотки готовых работ, если лень читать - мотайте.Предыстория. На новый 2023 год (то есть год назад) я купил себе...

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

Роман Тезиков про СV-проекты и промт-инжиниринг как базовый навык каждого человека К нам на огонек в подкаст заглянул Роман Тезиков — senior-разработчик и DL-engineer. Эксперт рассказал много интересного о своем опыте реализации ML-проектов. А «на десерт» Роман поделился тем, как он применяет промт-инжиниринг в работе и личной жизни и каких впечатляющих ре...

MERGE и её улучшение производительности с помощью work_mem С выходом PostgreSQL 15 мы застали появление долгожданной команды MERGE, которая позволяет реализовывать эффективные способы синхронизации обновлений.Суть MERGE заключается в ее универсальности: она позволяет объединить операции INSERT, UPDATE и DELETE в одном запросе, автом...

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

Стажёры рулят или Почему не надо бояться доверять молодым сотрудникам Боитесь стажёров? Не хотите тратить своё время на обучение начинающих специалистов? Задач много, а специалистов по ИБ мало?Делюсь опытом построения стажёрского конвейера на базе SOC. Может, это решит ваши проблемы.Многие российские современные IT-компании имеют стажёрские пр...

Четвёртое наблюдение о командной строке и путях в файловой системе В недавно опубликованной статье «Три наблюдения о командной строке и путях в файловой системе» были рассмотрены некоторые особенности интерпретации командной строки оболочками в операционных системах Windows и Linux. Первое наблюдение было о том, что командные оболочки SH/BA...

Покрытие архитектуры as Code тестами

REST API сервер на Bash с использованием сокетов и Apache Всем привет! Ранее рассказывал о том, как создать REST API и Web-сервер на PowerShell для Windows, а также упоминал, что подобный сервер будет работать и в системе Linux, благодаря кроссплатформенной версии PowerShell Core. Безусловно, для подобных целей лучше используются с...

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

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

[Перевод] Азы больших языковых моделей и трансформеров: декодер В этом материале мы поговорим об устройстве компонента‑декодера в системах машинного обучения, построенных по архитектуре «трансформер», уделив особое внимание отличию декодера от энкодера. Уникальной особенностью декодеров является то, что они ...

Применяем стандартные алгоритмы в C++. Семь примеров Привет, Хабр! Меня зовут Николай, я разработчик С++ в SimbirSoft. В этой статье я хочу поделиться своим опытом применения алгоритмов. Каждый из нас знает, что существуют алгоритмы стандартной библиотеки, и что они делают. Но не все и не всегда используют их. Я тоже их н...

Как мы решали задачу оптимизации доставки грузов с использованием численных методов на примере метода имитации отжига В статье хотим поделиться своим опытом реализации алгоритма решения задачи маршрутизации на основе метода имитации отжига в Norbit CDS – умной системе управления доставкой. Проанализировав материалы, можно обнаружить различные предлагаемые способы решения VRP-задач (Veh...

Простой способ обработки качественных исследований Данная статья может оказаться полезной начинающим менеджерам, аналитикам и дизайнерам. В ней рассказано о подходе, который поможет структурировать и упорядочить информацию, полученную из различных источников, таких как “one to one” встречи, глубинные интервью и другие подобн...

Полное краткое руководство по grammY — JS-библиотеке для создания Telegram-ботов Привет! Меня зовут Арсений, я сеньор фронтенд-разработчик. В этой статье хочу рассказать про основные механизмы библиотеки grammY и разобрать стартовый набор файлов бота, обработку ошибок, виды обработчиков событий, контекст обновлений, работу с разными видами клавиатур и м...

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

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

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

Обзор архитектуры Compose с использованием паттерна «координатор» В этой статье рассмотрим, пример реализации архитектуры UI-слоя на Compose, которая основывается на Uni-directional data flow и state hoisting с использованием паттерна «координатор» для навигации. Вдохновением для меня послужила эта публикация, но я решил подробнее разверну...

Apache Flink: динамическое определение выходного топика в Kafka Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей статье — «Apac...

Разработка сайта на Тильде на примере реального проекта — подход и разбор решений по UX и UI Привет! Сегодня хочу поделиться опытом разработки многостраничного сайта и на конкретном примере рассказать, как действую, чем руководствуюсь и на что обращаю внимание с самого начала. Погнали. Читать далее

LLM в разработке ПО — мнение Данная заметка написана по итогам опыта нескольких месяцев использования ChatGPT и Github Copilot в связке c Visual Studio Code для разработки ПО в достаточно крупной компании. Опыт оказался весьма интересным. Читать далее

Максимизируем продуктивность: Создание ИИ-секретаря с Whisper и ChatGPT Приветствую! Меня зовут Григорий, и я главный по спецпроектам в команде AllSee. В современном мире искусственный интеллект стал незаменимым помощником в различных сферах нашей жизни. Однако, я верю, что всегда нужно стремиться к большему, автома...

Метаболизм и долголетие. Личный опыт Этот текст - логическое продолжение описания моего инженерного подхода в вопросе долголетия. Если вы не читали предыдущую статью, то рекомендую ознакомиться. Текущая же статья потребует 10 минут вашего внимания, но может добавить 10 лет к вашей жизни (но может и не доба...

Вы кто такие, я вас не знаю, или Как мы делаем JWT-аутентификацию Привет! Меня зовут Данил, я backend-разработчик в Doubletapp. Почти во всех наших проектах есть пользователи, которые могут войти в систему. А значит, нам почти всегда нужна авторизация. Мы используем авторизацию, построенную на JSON Web Token. Она отлично сочетает в се...

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч. 2) Это вторая и заключительная часть большой статьи. Ознакомиться с первой частью можно по ссылке. Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода...

[Перевод] Краткий обзор техник векторизации в NLP Как переводчик-редактор, я интересуюсь темой NLP и автоматизации рутины бюро переводов. Изучая вопрос того, как смысл слов превращается в векторы, наткнулся на эту обзорную статью. Статья мне показалась изложенной доступно, поэтому я перевел ее для удобства других коллег. Ра...

[Перевод] Как, блуждая по Stack Overflow, можно набрести на Branch predictor В блоге beeline cloud мы делились историями и мнениями разработчиков — как программист-самоучка выучил 30 языков программирования, в каких случаях парное программирование не работает и почему некоторые проекты угасают, когда из компании уходит тимлид разработки. Сегодня...

«Разгоняем» HashSet, HashMap и циклы на примере Dart Если вы занимались профилированием своего приложения, то, глядя на CPU Flame Chart, вероятно, испытывали смесь досады и азарта, глядя на особо «жирный» метод. Досады – что ваша программа всё ещё не идеальна по скорости. Азарт – от того, что вы можете докопаться до причины пр...

realme 12 Pro — продвинутые камеры и приятная оболочка В середине марта ко мне в руки попал смартфон realme 12 Pro. Несколько недель я изучал его возможности, а сейчас готов поделиться обзором, своим опытом использования и мнением. В статье оцениваем дизайн, производительность и качество снимков на камеры смартфона. Читать далее

Основы обработки радиолокационных данных дистанционного зондирования Земли В настоящее время все более востребованными становятся данные радиолокационного наблюдения (РЛН) с космических аппаратов дистанционного зондирования Земли. Наблюдая повышенный интерес к этой предметной области с одной стороны и явный недостаток информационных материалов по ...

Как оптимизировать код на С для x86-процессоров: подсистема кэша и памяти, инструкции AVX-512 Меня зовут Андрей Бакшаев, я ведущий инженер-программист в YADRO. Моя команда занимается разработкой и оптимизацией математических библиотек под архитектуру x86. До этого я 15 лет работал в Intel. Значительная часть моих задач заключалась в том, чтобы реализовывать некоторые...

«Строка бога»/идеальный промт, часть 2, продолжение истории Здравствуйте, уважаемые читатели!В этой статье я хотел бы продолжить тему появления субъязыка текстовых запросов к нейросетям (которая может быть полезна не только для инженеров, но и всех энтузиастов, которые, как, к примеру, и я проводят значительное время за работой с ИИ-...

React Fiber & Concurrency Part 1 (2) В сети много статей и докладов, которые описывают React Fiber, но, к сожалению, они сейчас уже не актуальны. Заметив это, я решил разобраться и актуализировать информацию. Моими основными помощниками были исходники и отладчик, поэтому здесь вы увидите множество ссылок на код...

Начинаем продолжать: обработка исходников с помощью ИИ в оффлайне В этой статье я расскажу про расширение «Continue» для VSCode, помогающее обрабатывать исходные коды и просто текст любым ИИ, в том числе бесплатным и запущенным локально; а так же покажу, что умеет делать локальный вариант ИИ уже сейчас.  Читать далее

Создание и использование BOM в Gradle В каждой компании (а если она крупная, то, скорее всего, в каждом подразделении) должна быть выстроена культура использования BOM (bill of materials) для управления версиями зависимостей. В этой статье я хочу поделиться своим видением того, как это может быть организовано, а...

Без холивара «переписать все на Go»: проблема переносимости в Python и ее решение На скриптовых языках удобно разрабатывать… И на этом удобство заканчивается. Вне машины разработчика начинаются проблемы. Особенно если вы пишете какой-то прикладной тулинг — cli-утилиты, вспомогательные приложения в вашем SDK и прочее. Вы даже не можете рассчитывать на то, ...

Простейший пример kafka + golang В данной статье представлен простой способ реализации микросервисной архитектуры с использованием Kafka, Golang и Docker. Читать далее

Управление цветами в Seaborn: как эффективно визуализировать данные Привет, Хабр. В этой статье я расскажу про своё видение работы с цветом при визуализации графиков. Буду показывать все на примерах — уверен, они вам понравятся.Я покажу не только картинки было-стало, но и приведу примеры кода, а также объясню логику принятия решений: как исп...

Как и почему я писал для Флиппера на Си-с-классами Мой Флиппер дошёл до меня больше полугода назад, но что-то под него написать я собрался только сейчас. Его API рассчитаны на язык С — а у меня с ним опыта не очень много. Но проблем с тулингом не возникло — у Флиппера есть своя система сборки, которая скачала мне нужный тулч...

Hippotable — анализ данных прямо в браузере Сегодня я расскажу про hippotable — удобный инструмент для анализа данных. Мне часто нужно поковыряться в датасете среднего размера (1–100 Мб), чтобы ответить на довольно простые вопросы. Ни один из существующих инструментов (bash, google sheets, jupyter + pandas) не показал...

Распознавание и перевод жестовых языков: обзор подходов Всем привет! В статье «Slovo и русский жестовый язык» мы рассказывали, как решаем задачу распознавания изолированных жестов, в статье «Русский жестовый язык: первое место в американском бенчмарке» делились результатами решения, а в статье «GigaChat и русский жестовый язык» р...

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

Экспорт статьи из LibreOffice Writer в Habr Flavored Markdown или HTML Резюме. В статье дается ссылка на файл в формате ODT (основной формат файлов, используемый в текстовом редакторе LibreOffice Writer), содержащий макросы на «родном» для LibreOffice языке программирования макросов BASIC, которые осуществляют экспорт текста из LibreOffice Writ...

Celery: изучаем на реальных примерах ч.1 Лучший способ что-то понять - попробовать на практике, а лучшая практика - это реальные примеры. В этой статье мы узнаем шесть основных сценариев использования Celery. Разберем основные методы и аргументы, которые точно пригодятся. От асинхронной обработки задач до управлени...

Сравнение сборщиков мусора в Unity и .NET В этой статье я хотел бы рассказать о различиях между сборкой мусора в Unity (IL2CPP) и .NET. Несмотря на то что IL2CPP существует более 10 лет, я до сих пор встречаю недоумение, когда беседа заходит на тему Garbage Collector (GC) касательно Unity. Считать реализацию GC в .N...

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

Четыре года с умным домом: личный опыт и интересные сценарии Меня зовут Виктор, я backend-разработчик в финансовом маркетплейсе Банки.ру.Последние годы я интересуюсь темой умного дома. Хочу поделиться тем, с чего я начинал и к чему пришел. Эта статья будет полезна тем, кто: хочет понять как устроен self-hosted умный дом; хочет перенят...

[Перевод] Что ты делаешь для безопасности Active Directory? (часть 1) Привет! Если ты не понимаешь с чего начать защищать Active Directory я привожу краткий перевод публикации "The Complete Active Directory Security Handbook. Exploitation, Detection, and Mitigation Strategies" от Picus Security. На своем опыте могу сказать, что восстановление ...

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

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

Что можно и что нельзя делать с Async/Await Синтаксис async/await, введенный в Swift 5.5, значительно упростил асинхронное программирование, сделав его более доступным и интуитивно понятным. Однако, как и любой мощный инструмент, он может быть использован неправильно. Здесь я хочу рассмотреть пять распространенных оши...

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

Apple и тут пойдёт своим путём. Все функции искусственного интеллекта в iOS 18 будут обрабатываться непосредственно на смартфоне Похоже, подход Apple к искусственному интеллекту на смартфонах будет отличаться от такового у конкурентов. Как сообщается, вся обработка данных для работы таких функций будет происходить непосредственно на смартфоне.  создано DALL-E Согласно данным журналиста Bloo...

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

Система рендеринга для космического симулятора в Unity Несколько лет назад я работал над проектом по реализации на Unity реалистичного космического симулятора. Это достаточно нестандартное применение движка, и в ходе работы были решены разные специфические задачи, одна из которых - обеспечение корректного рендеринга объектов кос...

HappyX vs Karax: что проще? Хотите узнать, как с помощью Nim создавать клиентские веб-приложения?В этой статье я расскажу вам о веб-фреймворках в Nim и их возможностях, а также приведу примеры в сравнении друг с другом и другими фреймворками. Читать далее

Опыт использования AI для QA: тестировщикам приготовиться на выход? Всем привет, меня зовут Илья. И я использую в своей QA работе уже полгода различные инструменты ИИ. Хочу поделиться своим опытом и наблюдениями, как ИИ может повысить эффективность работы. И стоит ли бояться тестировщикам их замены железными мозгами и руками? Читать далее

Метод опорных векторов (SVM). Подходы, принцип работы и реализация с нуля на Python Метод опорных векторов (Support Vector Machine или просто SVM) — мощный и универсальный набор алгоритмов для работы с данными любой формы, применяемый не только для задач классификации и регрессии, но и также для выявления аномалий. В данной статье будут рассмотрены основные...

Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR Привет, Хабр! Меня зовут Владислав Виноградов, я инженер группы исследований и разработки ПО глубокого обучения в YADRO. Моя команда создает и оптимизирует связанное с искусственным интеллектом программное обеспечение. Сегодня я расскажу, как можно разработать тензорный комп...

Алгоритм расчёта расстояния между строками По работе стояла задача оптимизации поиска по адресам (улицы, дома и объекты). Главный критерий - нахождение адреса, если написано с ошибками или не дописан он в полной мере. Bert’ы, косинусные расстояния эмбеддингов и т.д. не подходили, так как они заточены под смысловой по...

[recovery mode] Как в Node.js контролировать потребление памяти при обработке сетевых запросов Всем привет! Я Виктор Кугай, руководитель команды разработки спецпроектов в Тинькофф. Мы создаем геймификационные проекты, основанные на данных, чтобы познакомить пользователей с экосистемой компании и повысить узнаваемость бренда.Расскажу, как с помощью Node.js Streams и ме...

Как мы реализовали аутентификацию трафика для MSA на базе монолита Привет, Хабр! Меня зовут Салахутдинов Дмитрий, я принципал инженер в СберМаркете. Занимаюсь развитием Ruby-платформы и масштабированием системы через декомпозицию монолита на сервисы.В статье хочу поделится опытом внедрения аутентификации на базе монолита. Это первая пробле...

Что делать, чтобы эксплуатация не превратилась в бесконечное тушение пожаров Меня зовут Владимир Медин, я работаю в подразделении SberWorks, которое внедряет практики DevOps и MLOps. Хочу поделиться нашим опытом повышения надёжности enterprise-систем, вводимых в эксплуатацию, особенно впервые. Для кого-то эта статья будет в большей степени спасательн...

Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты Если возникает вопрос об описании архитектуры системы, то есть несколько основных решений где и как это сделать. Среди популярных нотаций для визуализации схемы архитектуры можно выбрать C4, разработанную Саймоном Брауном.В этой статье я хочу показать пример применения нотац...

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

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

Как бороться с всадниками выгорания: личный опыт и пара советов Привет, Хабр! Меня зовут Данил Старосек, я работаю аналитиком на проекте «Единое фронтальное решение» (ЕФР) в РСХБ‑Интех. В прошлом материале я описал основные, на мой взгляд, причины появления и развития выгорания на работе. Сегодня хочу поделиться&...

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

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

OpenAI GPTs: пошаговое руководство для создания с практическими примерами, ACTIONS и внешние API Я часто использую ChatGPT в повседневных задачах. Он реально помогает в обучении, разработке и решении небольших проблем, которые легко описать. Но с другой стороны бывает сложно дать ему нужный контекст, чтобы он начал делать то, что нужно вам, а не выдавал ложь за действит...

Приглашаем на Ozon Tech Community BI Meetup Всем привет!Меня зовут Дмитрий, я руководитель группы разработки инструментов BI. Стоит ли говорить, что данные вокруг нас и, если мы не умеем с ними работать, то мы не можем функционировать как бизнес вообще? Наша команда платформы данных старается обуздать десятки пет...

Сравнительный анализ методов аппроксимации на основе SQL-запросов При работе с данными часто приходится сталкиваться с ситуацией, когда имеется некоторая функциональная зависимость yi = f(xi), которая получена в результате эксперимента или сбора статистики. То есть исходные данные представлены набором точек (x1, y1), (x2, y2) … (xn, yn), г...

Как мы решали вопрос многоязычности в боте Русский или English? Что для бота хорошо, то разработчику работа :)ВведениеВ этой статье я поделюсь своим опытом реализации многоязычности в телеграм-боте, World for Life Bot расскажу о принципах выбора языков, которыми я руководствовался, технических аспектах реализации и ...

Приручаем нейросети Давно не виделись, уважаемые! Ну что ж, рад вас видеть, сегодня будем говорить и применять новые инструменты для создания RAG, улучшим качество наших результатов относительно прошлой статьи за счет использования других моделей для embeddings. Также затронем использование тру...

RAG (Retrieval Augmented Generation) — простое и понятное объяснение Краткое и понятное описание подхода RAG (Retrieval Augmented Generation) при работе с большими языковыми моделями. Читать далее

Использование On-Logon триггеров в СУБД Postgres Pro Enterprise Триггеры On-Logon хорошо знакомы разработчикам приложений для СУБД Oracle Database.On-Logon триггер является одним из видов триггеров событий базы данных, и автоматически срабатывает при подключении пользователя к БД.В СУБД Postgres Pro Enterprise, еще в версии 14, среди про...

[Перевод] Реализация Graceful Shutdown в Go Изящное завершение работы (Graceful Shutdown) важно для любого длительного процесса, особенно для того, который обрабатывает состояние. Например, что если вы хотите завершить работу базы данных, поддерживающей ваше приложение, а процесс db не сбрасывает текущее состояние на ...

Финансовые данные: об измерении автокорреляции, тяжелых хвостах и других статистиках (Vol 1) Финансовые данные — одни из самых популярных данных для анализа сегодня. Однако применимы ли классические методы статистического анализа для работы с финансовыми данными? В данной статье мы обсудим ключевые свойства данных о доходностях финансовых активов и поговорим о подво...

Неинвазивный мониторинг ЦОД: повышаем надежность и снижаем затраты В центрах обработки данных используется оборудование от разных вендоров, с различными встроенными системами мониторинга. Когда таких систем становится много, уследить за подобным «зоопарком» непросто.Но как сделать систему мониторинга, которая будет работать в любом автозале...

Итерируемся по enum'ам в C++ В этой статье я хочу поделиться простым и очевидным трюком в C++, о котором, не смотря на его простоту и очевидность, как оказалось, не все знают.Предположим, у вас есть enum class, и вы хотите пройтись по его элементам, то есть вызвать какую-то функцию для каждого из значен...

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

Трансляция графических HANA Calculation View в SQL, или как переехать так, чтобы ничего не поменялось Повинуясь всеобщей тенденции и следуя духу времени, мы в Норникеле переводим расчёты нашего хранилища на уровень БД. Так мы ускоряем обработку данных и формирование отчётности, да и система работает стабильнее. Но пока мы оптимизируем и переносим "классический" код в базу, з...

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

Регулярные опросы сотрудников. Как и зачем проводить? Регулярные опросы сотрудников – важный инструмент для повышения уровня удовлетворенности и вовлеченности персонала. В данной статье мы рассмотрим, как и зачем проводить регулярные опросы сотрудников, а также поделимся практическими примерами вопросов и рекомендациями по испо...

Как я за месяц написал интерпретируемый язык программирования на Python Привет, Хабр! В этой статье я хотел бы поделиться опытом создания своего языка программирования.ПредысторияМне 14. Обучаясь на втором году Яндекс Лицея, нужно было написать несколько проектов. Первым из них стал проект на PyQT5. Я долго думал над идеей и вспомнил, что летом ...

Используем Gemini для просмотра лекции В феврале Google мы познакомились с Gemini 1.5 Pro с контекстным окном в 1 миллион токенов. Больший размер контекста означает, что Gemini 1.5 Pro может обрабатывать огромные объемы информации за один раз — 1 час видео, 11 часов аудио, 30 000 строк кода или более 700 000 слов...

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

[Перевод] За 25 лет я выучил 30 языков программирования. Хочу поделиться своим опытом Привет, Хабр! Перевели для вас статью программиста-самоучки, в арсенале которого — три десятка языков программирования. Надеемся, она вдохновит вас поделиться собственными историями становления в кодинге не меньше, чем нас в beeline cloud. Приятного чтения!Всё началось в дал...

Python и чистая архитектура… Всем привет! Сегодня я хочу поделиться своими опытом разработки на различных языках программирования и размышлениями касаемо проектирования серверных приложений. Речь пойдет про много обсуждаемую в последнее время чистую архитектуру в рамках языка python. Казалось бы, по зав...

Спасаем Google shared drives от санкций (дополнение спустя два года) Ровно два года назад, 16 марта 2022 года, ваш покорный слуга рассказал про нехитрые телодвижения, которые с помощью rclone позволяют сохранить локально ваши корпоративные Google shared drives (не путать с личным Google Drive).Ок, данные были сохранены и можно выдохнуть. Но ч...

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

Войти в ИТ после 45-ти: личный опыт смены профессии Привет, Хабр! Меня зовут Базянова Зиля, я работаю ведущим инженером Блока обеспечения и контроля качества выпуска изменений ПО в РСХБ-Интех. В статье хочу затронуть вопрос касательно смены профессии в возрасте 45+ и поделиться своей историей. Читать далее

[recovery mode] Тинькофф дает противоречащие ответы Роскомнадзору и ЦБ РФ в части дачи клиентом согласия на обработку его биометрии В ответ на статьи «Тинькофф-банк» собирает согласие на обработку биометрии клиентов при вводе пин-кода в новом приложении или банкомате и Сделаем для вас биометрию. Отказаться не получится хотел бы добавить интересные новости о том, как «Тинькофф» дает противоречащие ответы ...

[Перевод] Как мне удалось обнаружить уязвимость, связанную со слабыми ключами в Debian Для новичков в сфере информационных технологий может быть открытием, что в следующем месяце мы отметим 16-ю годовщину одного знаменательного события: было выявлено, что в течение 18 месяцев пакет OpenSSL в Debian вырабатывал полностью предсказуемые приватные ключи, что в то ...

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

Диплом специалиста ИБ. Часть №3 — Портативное устройство SmartPulse Привет, Хабр!Вам знакомо такое чувство, когда сидишь, пишешь дипломную работу и думаешь "А не сделать ли умный пульсометр на ESP32-C3 с интегрированными механизмами защиты, динамическим пин-кодом и управлением через BLE с помощью собственного мобильного приложения для IoT-ус...

“Ну и долго мне ещё до магазина?” Или пара слов о геоинформационном анализе с помощью Python Привет, хабр! Сегодня мы хотели бы продолжить тему обработки пространственных данных средствами Python библиотеки estaty. Мы уже рассказывали о том как можно Объединять открытые данные Open Street Map и Landsat для уточнения площадей зеленых зон вокруг объектов недвижимости....

Велосипедим связанный список на Wolfram Возможно 11 подписчиков моего блога обратили внимание на тот факт, что все мои статьи касаются языка Wolfram, а несколько последних статей вышли довольно громоздкими. Одна из последних статей была помечена Хабром как требующая в среднем 32 минуты на прочтение. Я посчитал, чт...

Как и зачем мы парсим XML Большинство разработчиков рано или поздно сталкиваются с XML. Этот язык разметки настолько глубоко вошел в нашу жизнь, что сложно представить систему, в которой не используется он сам или его подмножества. Разбор XML - достаточно типовая задача, но даже в ней можно выделить ...

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

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

Как устроен онбординг в больших компаниях: личный опыт Привет! Меня зовут Маша Сафронова, и я уже почти 3 месяца работаю младшим продуктовым дизайнером в Lamoda Tech. За последний год я успела пройти стажировку и поработать в двух других крупных IT-компаниях, а еще раньше я переучилась и пришла в дизайн из другой профессии. ...

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

Хотите похудеть – НЕ спрашивайте меня как. Часть 2: Оземпик — опыты на себе Кратко для лиги лени: Оземпик как средство для похудения работает, но ограниченно годится для ИТ, и дает осечки примерно 50 на 50 побочки.В первой части я попробовал рассмотреть хоть как-то эффективные методы, кроме «надо меньше есть». Это вторая, с личным опытом по применен...

Как мы наладили процесс разработки внутренних приложений с помощью Appsmith Привет! Меня зовут Алексей, я аналитик данных в команде BI финансового маркетплейса Банки.ру. Сегодня хочу поделиться опытом работы с Appsmith. Это low-код инструмент для автоматизации бизнес-процессов. В статье расскажу, зачем вообще нам понадобился подобный инструмент...

[Перевод] Советы разработчика с 8-летним опытом работы Привет! Меня зовут Бенуа, я работаю разработчиком программного обеспечения последние 8 лет. В своей предыдущей компании я проработал 7,5 лет, а в начале 2022 года перешел в новую.Эта статья написана в результате недавнего самоанализа о том, что мне стоило начать делать в сво...

Путь к совершенному ПО: Искусственный интеллект в автоматической формальной верификации При написании высококачественного программного обеспечения не обойтись без этапа формальной верификации. Несмотря на то, что наша жизнь уже была в некоторой степени упрощена, благодаря таким помощникам доказательства как Coq и Isabelle/HOL, обучающим модель предсказывать оди...

GitHub Copilot в JetBrains IDEs в РФ В 2022 году в публичный доступ вышел GitHub Copilot – довольно удобный современный инструмент для разработчиков. В этой короткой статье поделюсь своим опытом взаимодействия с GitHub Copilot, а главное тем, как его использовать в IDE от JetBrains. Приятного чтения! Читать дал...

О Важном в управлении проектами Всем привет! Меня зовут Андрей Софронов и я тимлид продукта “ЭДО и S2P”. Хочу поделиться с тобой своим опытом и наблюдениями о том, что важно в управлении проектами, как можно посмотреть на проект и свою деятельность в целом, что следует учесть, что помнить и о чем позаботит...

Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч.1) Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода как текста на специализированных языках описания аппаратуры (HDL); код распространяется в виде па...

Новая эра диагностики: Как с помощью ИИ можно диагностировать рак кожи на ранней стадии В последние десятилетия рак кожи считается одним из самых распространенных онкологических заболеваний во всем мире. По оценкам ВОЗ, ежегодно регистрируется около 132 000 случаев меланомы кожи, а смертность достигает 66 000 случаев.Диагностика рака кожи требует значительных у...

Продвинутое использование форм в Django (на примере Bootstrap и crispy) В этой статье поговорим о существующих подходах к рендерингу веб-форм в Django.Обсудим подходы с использованием стандартных средств Django, а также применим сторонние средства для продвинутого управления рендерингом форм на примере пакета django-crispy-forms и фронтенд библи...

Применение алгебраических типов данных для моделирования ошибок и сообщений в журнале В функциональном программировании широко используются так называемые алгебраические типы данных. Такие данные формируются из более простых типов с использованием всего двух операций — "суммы" и "произведения". Использование таких математических операций о...

WinRAR CVE-2023-38831 10 июля 2023 года при исследовании распространения троянского ПО под названием DarkMe, специалистами из Group-IB была обнаружена раннее неизвестная уязвимость в WinRAR, которая касалась обработки zip-архивов. Данная уязвимость получила идентификатор CVE-2023-38831. С помощью...

[recovery mode] Делаем JavaScript компилируемым с помощью llvm.js В данной статье мы рассмотрим мощный проект - llvm.js и расскажем, что он представляет из себя. Также мы научимся создавать компилируемый язык программирования на основе JavaScript. Хотя в этой статье мы сфокусируемся именно на JavaScript, ознакомившись с процессом, вы сможе...

CI/CD в каждый дом: сборочный цех базовых docker-образов Привет, Хабр.Последнее время DevOps и CI/CD де-факто стали повсеместным стандартом независимо от размера команды, в интернетах хватает статей, почему это важно, в чём собственно идея, полезных практик и других материалов. Я же решил подойти с несколько другой стороны и макси...

Написание open source проекта на примере рендера для ttf шрифтов. Начало В данном проекте планируется создать парсер, а затем и рендер для шрифтов с расширениями TTF, OTF, TTC, OTC.Цикл данных статей является своеобразным блогом, но не обучающим. Наоборот я прошу об обратном отклике в виде комментариев.Данный влог - это опыт создания open source ...

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

Как лучше проводить one-to-one со своими сотрудниками: 5 лайфхаков из личного опыта Если вы занимаете руководящую должность, очень важно регулярно проводить индивидуальные встречи с сотрудниками из своей команды. “Зачем, если я и так вижу их каждый день, и мы обсуждаем все, что происходит?”. Эти встречи не только помогают понимать, как чувствуют себя коллег...

CSI — индекс удовлетворённости клиентов. Где провести и как рассчитать? Эта статья предназначена для предпринимателей, маркетологов, специалистов по клиентскому опыту, которые стремятся глубже понять своих клиентов и улучшить качество своих услуг и продуктов.Что делает эту статью особенно ценной и интересной? Здесь мы представляем не только осно...

Как прокачивать насмотренность в UX для дизайнера интерфейсов (личный опыт) Хочу поделиться своим опытом и рассказать, как я прокачиваю насмотренность в ux (не ui). Надеюсь, это кому-нибудь поможет. Читать далее →

[Перевод] NumPy: оттачивайте навыки Data Science на практике В этой статье мы рассмотрим ряд различных упражнений, используя библиотеку NumPy (и сравним с тем, как мы бы реализовали их без неё). В самом конце статьи я приведу ряд упражнений.t.me/ai_machinelearning_big_data -  моем телеграм канале я публикую актуальные проекты ку...

Обзор Simulator — платформы для обучения инженеров безопасности Kubernetes с помощью CTF-сценариев Ранее мы делали обзор инструментов для оценки безопасности кластера Kubernetes. Но что, если нам нужно обучить инженеров основам безопасности Kubernetes на реальных примерах и автоматизировать этот процесс? Недавно компания ControlPlane, специализирующаяся на Cloud Native-ре...

Генерируем отчеты PDF на Android с использованием HTML и WebView в фоне Сервис, прежде всего, должен решать задачу пользователя. Часто приложения должны делать то, что, казалось бы, должно ложиться на плечи сервера и других публичных API. В рамках этой статьи хочу рассказать про наш опыт переноса функционала генерации PDF-отчетов на Android-устр...

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

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

ClickHouse как бэкенд для Prometheus Привет! Меня зовут Михаил Кажемский, я Lead DevOps в IT-интеграторе Hilbert Team. В последнее время к нам часто обращаются заказчики, которым нужна помощь с организацией хранения долгосрочных метрик в российских облаках. Так как для многих эта задача сейчас актуальная, в дан...

Мой первый опыт с VyOS. Часть 1 Привет хабр!Меня зовут Берик, я работаю системным администратором в IT холдинге SAMGAU, где отвечаю за IT инфраструктуру. Хочу написать серию статей где поделюсь своим опытом по использованию VyOS. Читать далее

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

File upload на React.js шаг за шагом В этой статье напишем компонент для загрузки файлов на сервер, который поддерживает: - Индикатор загрузки - Прерывание отправки - Drag and dropВ нашей конкретной реализации этот компонент будет оберткой и сам не будет отображать файлы, но, я надеюсь, приемы из этой статьи по...

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

Проблемы при переходе с MS SQL на PostgreSQL.Активное использование временных таблиц Сначала я думал просто перечислить наиболее распространенные проблемы, возникающие при переходе с MS SQL на PostgreSQL. Но решил, что просто перечисление будет мало информативным. Поэтому, пока ограничился наиболее частой проблемой, приводящей к деградации производительности...

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

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

О внутрикластерной маршрутизации через Istio Привет, Хабр! Я Степан, DevOps‑инженер, занимаюсь созданием CI/CD процессов с учётом проверки кода на безопасность, поддержкой и разверткой новых кластеров Kubernetes, соблюдением требований безопасности и созданием системы мониторинга и логирования — все это ...

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

KISS your website или как написать уважаемый сайт на аутсорсе, глава первая Добрый день. Меня зовут Тимофей, я фронт-тимлид в диджитал-продакшене ДАЛЕЕ. В данном цикле статей я поделюсь подходами и инструментами фронтенд-разработки на аутсорсе, которые помогут создать качественный продукт без кошмарного instant-legacy и значительно облегчат жизнь ко...

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

Алгоритм Diffie-Hellman: Пишем приватный мессенджер на Go Это продолжение прошлой статьи про данный алгоритм. Где я рассказывал про возможность общения между двумя пользователями без прямого обмена ключом шифрования. Я уже описывал идею создания прозрачного Open-Source мессенджера на основе этого алгоритма и хочу представить вам ег...

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

11lc — инновационный компилятор для нового языка программирования Данная статья посвящена находящемуся на стадии проектирования компилятору 11lc. В ней перечисляются наиболее яркие особенности этого компилятора. Отсутствие скрытой неэффективности Это свойство скорее языка программирования 11l, нежели компилятора. Однако оно настолько важн...

Обзор языка Crystal Привет, Хабр!История Crystal начинается в 2011 году, когда команда энтузистов решили создать язык, который бы исправил некоторые из тех ограничений и проблем, с которыми они сталкивались, работая с Ruby. Они мечтали о языке, который бы позволял писать код, легкий для пониман...

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

Next.js App Router. Опыт использования. Путь в будущее или поворот не туда Два года назад команда Next.js представила новый подход к роутингу, который должен был стать заменой так называемому Pages Router, вместе с тем добавив ряд принципиально нового функционала.Практически в каждом релизе я находил множество полезного и нужного как для личных про...

Reflection в iOS: как посмотреть содержимое любой сущности В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего...

Zabbix, PostgreSQL и pg_stat_statements Я хочу поделиться своим опытом использования Zabbix для анализа проблем с производительностью PostgreSQL, используя расширение pg_stat_statements. Читать далее

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

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

OpenAPI/Swagger для начинающих Эта статья в основном для аналитиков, которые впервые сталкиваются с необходимостью описания запросов в Swagger, но может быть полезна всем, кто хочет разобраться или ищет подсказку. Читать далее

Кто на новенького: как справиться со стрессом и избежать провалов при адаптации в новой компании и команде Привет, Хабр! Я Оксана Нечитайлова, руковожу отделом сервисного дизайна в YADRO. В разработке продуктов я уже более 16 лет и за свою карьеру сменила несколько компаний, сфер бизнеса и рабочих ролей. В общем, не раз «обнулялась» и проходила периоды адаптации в новой команде и...

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

Продюсеры и консьюмеры с Apache Kafka в Python Салют, Хабр!Apache Kafka - это распределенная платформа потоковой обработки, предназначенная для построения систем обработки данных. Kafka позволяет публиковать, подписываться, хранить и обрабатывать потоки данных в реальном времени. Все это дает нам очень высокую пропускную...

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

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

Хватит маппить все руками, используй Mapster Привет, Хабр! Меня зовут Георгий, я С#-разработчик в SimbirSoft. Хочу рассказать об опыте использования библиотеки Mapster: как он может упростить разработку, сэкономить силы и частично избавиться от рутины маппинга.Данная статья подойдет и тем, кто только собирается открыть...

Преодоление ожирения скальпелем: оценка наиболее эффективных бариатрических операций По последним данным Росстата, более 42% населения России имеют избыточный вес. Крайняя степень ожирения затрагивает 2,1% россиян. Ожирение занимает четвертое место среди причин смертности, так как оно является фактором риска для сердечно-сосудистых заболеваний, инсульта, диа...

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

Торговать на зарубежных брокерских счетах снова можно, но только если вы расскажете о них налоговой С марта 2023 года российское инвестиционное сообщество оказалось расколото: одни юристы настаивали на том, что сделки с бумагами на зарубежных счетах оказались под запретом, другие считали, что это не так. Новый указ от 08.11.2023 ставит в этом вопросе точку – в данной стать...

Необычный RxJS Всем привет! А вы знали, что RxJS содержит в себе более 100 операторов? Но если ваш проект использует эту библиотеку - скорее всего вы с трудом насчитаете у себя больше пары десятков. Интересная ситуация, да? Не знаю почему так получается, но сегодня я хочу поделиться реальн...

Нововведения Zig версии 0.12.0, которые стоит упомянуть По случаю выхода версии 0.12.0 языка Zig я снова решил написать статью об этом языке. И в этот раз о том, что изменилось в языке относительно версии 0.11.0. Сразу уточню, что я не буду описывать все изменения. Ссылка на примечания к выпуску под цифрой выше. Список изменений ...

Встать и Сделать. Личный опыт Hello Habr! Думаю, что будет хорошим постновогодним подарком статья на тему самодисциплины. Зуб даю за то, что если вы хоть что-то об этом читали ранее, то уж про целеполагание изрядно наслышаны. Про то, что цель должна быть чётко определена, ограничена во времени, в принцип...

[Перевод] LISP — исследование оригинального языка ИИ Откройте для себя один из первых языков программирования, который, по мнению Майка Бедфорда, не мог быть более непохожим на своих ранних собратьев.В предыдущей части нашей серии, посвященной классическим языкам программирования, мы рассмотрели ALGOL, а в этом месяце мы углуб...

Оптимизируем параметры запуска приложения Spark. Часть первая Привет! Меня зовут Андрей Чучалов, я работаю в билайне, и в этом посте я расскажу про оптимизацию параметров запуска приложений в Spark, поиск проблем и повышение производительности. Разберем запуск приложений Spark в базовой и расширенной версиях, покажу методы расчёта осно...

[Перевод] Задача двумерной упаковки интервалов Упаковка интервалов — это классическая задача SQL, которая подразумевает переупаковку групп пересекающихся интервалов в соответствующие им непрерывные интервалы. В математике интервал — это подмножество всех значений данного типа, например целых чисел, между двумя некоторым ...

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

GigaAM: класс открытых моделей для обработки звучащей речи Салют, Хабр! Ранее мы в SberDevices анонсировали предобученную на русском языке модель GigaAM (Giga Acoustic Model) и её дообученные состояния под распознавание речи (GigaAM-CTC) и определение эмоций (GigaAM-Emo). Сегодня же делимся с сообществом весами моделей и примерами и...

[Перевод] Гайд texthero pandas Я всегда нахожусь в поиске новых инструментов, которые помогут мне упростить процедуру обработки естественного языка, поэтому, когда я наткнулся на короткий видеоклип, показывающий функциональность Texthero, я знал, что должен его попробовать. Texthero разработан как обол...

Какие ML-платформы нужны бизнесу, и кто их может сделать Привет, Хабр! Меня зовут Виктор Кантор, я директор Big Data МТС. Около 14 лет я работаю с технологиями, связанными с Machine Learning, Big Data, Data Science. Но есть одна проблема, с которой я постоянно сталкиваюсь. Например, поставлена задача, которую нужно решить при помо...

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

Будильник изменений: когда приходит время личных трансформаций и как его отследить Привет, Хабр! Меня зовут Марина, и я бизнес-аналитик в Петрович-Техе. У каждого бывают моменты, когда хочется сменить все — от домашнего интерьера до карьерной стратегии. Три года назад я хотела перемен и перекрашивала дома кухню, а затем это желание меняться привело ме...

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

Разобраться раз и навсегда: Task.WhenAll или Parallel.ForEachAsync в C# Все хотят писать код, который работает быстро. Часто мы сидим, просматривая написанные алгоритмы и пытаясь понять, что можно сделать, чтобы настроить их производительность. В таком случае часто прибегают к параллельному выполнению задач. Конечно, если можно выполнять зада...

SETI@Home, или Как миллионы людей искали следы внеземного разума SETI@Home — краудсорсинг-проект для обработки данных радиотелескопов, запущенный в 1999 году, и первый масштабный проект в сфере распределенных вычислений в принципе. В этом посте мы подробней расскажем предысторию проекта, в котором на протяжении более 20 лет в разное время...

Navmesh, lightmaps и lightprobes: реализация и использование в Playcanvas В этой небольшой заметке хотелось бы поделиться результатами реализаций нескольких технологий из gamdev-а. В основном коснёмся двух тем. Первая тема - это использование navmesh-ей для нахождения путей в пространстве трёхмерной сцены. Вторая тема - это использование lightmap ...

Как конструктор диалогов прокачал Робота Макса Привет, Хабр! На связи команда контента Робота Макса, которая отвечает за структуру и логику его ответов, а также разрабатывает и выводит эти ответы в прод.У Робота Макса уникальная по объёму и потребностям аудитория. Чтобы дать всем простые и полезные ответы, необходим боль...

Можно ли использовать DMA вместо memcpy в Linux В интернете можно найти описание проблем, связанных с использованием DMA для стандартной функции копирования данных из памяти в память:Linux – DMA memcpy operation in LinuxДавайте попробуем разобраться, как можно использовать интерфейс к DMA для реализации стандартной операц...

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

[recovery mode] Решаем дифференциальные уравнения с помощью Python часть 1 Начнем пожалуй с того, что решать дифференциальные уравнения вручную может быть не совсем просто. На данном ресурсе http://mathprofi.ru/differencialnye_uravnenija_primery_reshenii.html есть шпоры как это делать вручную, там есть множество подсказок по различным разделам высш...

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

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

Обработка данных для RAG-систем Всем привет, меня зовут Андрей Шахов, я Python-разработчик и Lead Backend Developer в wpp.digital. ML-направлением, а точнее LLM в компании я начал заниматься только в конце 2023 года. Сейчас на задачи подобного рода у меня уходит примерно 40% рабочего времени.Решил начать п...

Рассчитываем рейтинг товара на основе оценок пользователей с KafkaStreams и OpenSearch Всем привет! Меня зовут Александр. Последний год тружусь фрилансером на проекте по созданию очередного маркетплейса. Мои задачи включают разработку скоринговой системы продуктов, которая бы позволяла формировать выборку товаров по популярности на основе нескольких показателе...

Личный опыт: тестовое для поиска на позицию Junior Product Manager Меня зовут Герман, я руководитель продуктового направления лояльности в компании CSI. Недавно мы решили расширить продуктовую команду и мне нужно было разработать тестовое задание для отбора подходящих кандидатов на позицию Junior Product Manager. Я делал это впервые и с нул...

Как настроить gRPC на примере микросервисов на Ruby и Go Поделимся личным опытом, как у нас получилось организовать взаимодействие микросервисов на Ruby и Go на основе gRPC. Мы расскажем:- о преимуществах gRPC;- об особенностях работы с протоколом;- о трудностях, с которыми может столкнуться начинающий разработчик. Читать далее

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

Использование опросов для измерения уровня лояльности Net Promoter Score (NPS) Net Promoter Score (NPS) играет важнейшую роль, служа барометром клиентской лояльности и удовлетворенности. NPS - это не просто метрика; это компас, который направляет компании на пути к улучшению качества обслуживания и оптимизации взаимоотношений с клиентами. По сути, NPS ...

Личный опыт заработков в интернете: рубим бабло на студентах Краткая предыстория: у меня есть сын-старшеклассник, который очень хочет зарабатывать сам. В какой-то момент оказалось, что он с друзьями всерьёз обсуждает вариант «поработать курьером в доставке», и я решил найти ему более перспективное занятие, нежели карьера пешего курьер...

Прокачиваем вёрстку ARIA атрибутами. Атрибут aria-label В прошлом месяце я рассказал, зачем нужна семантика, на примере атрибута role. Если вы не читали мою статью, пожалуйста, прочтите её перед тем, как читать эту. А сегодня я хочу рассказать про атрибут aria-label. В статье не будет заумных определений и бездумного копировани...

Реализация SHA256 и SHA512 на языке RUST Небольшая заметка студента о том, как самостоятельно реализовать алгоритмы SHA256 и SHA512 на Rust.Статья будет полезна всем, кто интересуется криптографией, хочет повысить уровень безопасности своих приложений или просто расширить свои знания в области программирования на R...

Обзор библиотеки drake в R Drake предлагает систематический подход к построению и управлению зависимостями в проектах, автоматизируя процесс обработки данных и анализа. С помощью drake можно отслеживать изменения в коде и данных, автоматически перезапуская только те части анализа, которые были изменен...

Где продать стартап? Собрал подборку площадок с небольшим описанием и мои личным мнением по каждой площадке, где можно продать свой стартап, продукт, готовый бизнес, магазин, сайт, блог. Если у вас завалялся какой-то проект можете попытаться продать его и сделать отличный кейс для своей карьеры....

«Экструдер» филамента для 3D-принтера своими Оч.Умелыми ручками Небольшая предысторияВ первой моей статье мне в панамку не напихали и вы, уважаемое сообщество, приняли её достаточно благосклонно, а значит, если хочется сделать доброе дело - никакие преграды и разрушения не остановят)))). Кроме того я получил обратную связь, в том числе ч...

SQL инъекции для продолжающих: ломаем настоящий сайт Про SQL-инъекции написано огромное количество статей. Все знаю про пресловутые ‘ OR 1 = 1 и аналогичные конструкции, но далеко не все реализовывали их на практике. В этой статье мы разберем на практике некоторые способы реализации SQL-инъекций на примере уязвимого сайта.Стат...

Это реально? Что должен уметь джуниор системный аналитик по профессиональному стандарту Минтруда России Нам оставили немало комментариев к статьям по подготовке к собеседованию системного аналитика (СА) о том, что примеры со сложными вопросами по SQL, REST и диаграммам — избыточны. И что СА не обязан знать, как написать код обработки запроса на Python, И даже СУБД — тоже не сф...

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

Rust — это не «memory safe C» TL;DR: 1) в Rust намного больше достоинств, чем просто скорость и безопасность 2) в Rust по умолчанию CDD (compiler-driven development, разработка через компилирование). Это как TDD, только CDD 3) Rust не сложный язык, особенно если не гнаться за максимальной производительно...

Как можно использовать .NET из Javascript (React) в 2023 году Статья показывает опыт использования .NET из JavaScript (React) с помощью компиляции .NET кода в WebAssembly с помощью новых возможностей .NET 7. Включает инструкцию по созданию проекта для .NET для использования из Javascript, и интеграции его в веб-приложение, написанного...

Оптимизация Скорости и Доступности с помощью Сети Доставки Контента (CDN) в Microsoft Azure Привет Хабр!В мире быстро развивающихся технологий быстродействие и доступность играют ключевую роль в обеспечении удовлетворения потребностей пользователей. В этой эпохе, где каждая миллисекунда имеет значение, использование современных инструментов для оптимизации скорости...

Python и Excel глазами НСИ Всем привет! Меня зовут Алмаз. Я специалист по НСИ (нормативно-справочной информации) в компании Bimeister. Хотел бы поделиться своим небольшим опытом автоматизации некоторых рутинных задач при работе с различными файлами и Excel- базами данных.Python.Предыстория.Сейчас дово...

Как я устроился в Амазон и перестал переживать за свой английский Готовитесь к собеседованию за рубежом и переживаете за свой английский? Хотели бы работать в международной компании, но сомневаетесь, хватит ли языка? Не уверены, поймут ли ваш акцент? Тогда эта статья может помочь.Меня зовут Андрей Столбовский, последние 5 лет я работал в Я...

Найти отличия, или внедряем Snapshot-тесты для web. Опыт Звука Всем привет! На связи Наталья Данилина и Иван Чечиков из Звука. В этой статье мы хотим поделиться опытом внедрения snapshot-тестов для web-приложения — расскажем, что это такое и для каких задач применяется.Подробности – под катом. Читать далее

Кратко про микросервисы на Scala и Erlang Привет, Хабр!Микросервисы давно являются некой "попсой" для создания гибких, масштабируемых и отказоустойчивых систем. И естественное имеет свою реализацию в функциональном программирование.В статье рассмотрим два языка программирования, которые выделяются своим функциональн...

Вся мощь паттернов в Wolfram Language Редкая птица долетит до середины Днепра, не каждый разработчик осилит все паттерны в WL. Нет ему равных языков в паттерн-матчинге. Чуден и необычен язык этот. Изобилует он точками, подчеркиваниями, да запятыми так, что в глазах рябит, да разум мутнеет. В этой статье я постар...

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

Как мы отслеживаем просадки FPS в Альфа-Мобайл? Всем привет

Чем новый Яндекс Нейро отличается от обычного поисковика Компания Яндекс мощно встретила 2024 год. Сначала она представила нейробраузер, оснастив свой фирменный браузер кучей фишек искусственного интеллекта от перевода видео до автоматического сканирования QR-кодов на картинках, а на прошлой неделе анонсировала новую Алису — голо...

Зачем и как практиковаться начинающему аналитику — Что работодатели хотят от джуниор аналитика данных?— Работодатели хотят, чтобы он был мидлом.Если ты не смеёшься над этим анекдотом, то наверняка недавно закончил (либо заканчиваешь) обучение по обретению специальности «Аналитик данных». А ещё ты пока не нашел, но уже нача...

Партнерские программы хостеров в 2024 году Привет Хабр! По законам жанра статья должна называться «Что нужно знать про партнерские программы хостеров в 2024 году», но думаю такой заголовок получился бы кликбейтным, так как всего‑всего про партнёрки я не расскажу (ну могу, не&nb...

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

Замыкания и декораторы в Python: часть 2 — декораторы Уважаемые читатели, рад вас приветствовать в новой статье. Этот материал является продолжением предыдущей публикации, посвященной замыканиям. В данной части обзора мы углубимся в тему декораторов.Эта статья написана в первую очередь для тех, кто только начинает свой путь в п...

Разработка программного средства по обработке данных фонокардиограммы Медицинские исследования играют важную роль в понимании различных заболеваний и разработке эффективных методов лечения. Одним из инструментов, используемых в кардиологии, является фонокардиограмма (ФКГ).Фонокардиограмма - это метод диагностики сердечно-сосудистой системы, ко...

Развиваем продукт «без проблем» В своей прошлой статье я рассказывал о том, как использовать метрики при разработке продуктов. Статья получилась довольно насыщенная, но теоретическая.В этой статье я хочу рассказать о том, как на практике применять эти подходы при развитии продуктов. Можно ли опираться толь...

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

Архитектурный паттерн для обработки больших данных: Kappa Привет, Хабр!Если вы уже знакомы с архитектурным паттерном Lambda, то сегодня мы поговорим о его ближайшем родственнике - Kappa. Когда речь идет о обработке больших данных, архитектурные паттерны играют самую важную роль. Ранее мы обсудили Lambda, который предлагает подход, ...

Что мы делаем, когда у нас заказывают аналитику без нормальных формулировок «Дайте нам аналитику, — просит бизнес айтишников, — правда, мы глубоко в это погружаться не хотим, чётко сформулировать требования не можем и расчётам BI не очень-то доверяем». Сюр? Сюр. Но встречается на каждом шагу. Вопрос решается с помощью Self-service, который даёт в...

Как показать номер версии на экране загру… Привет, Хабр! Меня зовут Сергей, и я 3 года работаю Android/iOS разработчиком. Написал с нуля приложение для фитнес-клубов (Google Play/App Store — если интересно, код под NDA, его не могу показать) и дорабатываю малоизвестный банк. За это время накопилось много интерес...

Что я понял, изучив 50 книг про IT? За прошедшие 3-4 года я прочитал в общей сложности более 25 000 страниц технической литературы и стал замечать, как сильно изменились подходы к выбору книг и их изучению. В этой заметке хочу поделиться наблюдениями и выводами, которые помогут читателю сэкономить время, сохра...

[Перевод] Как утереть нос NumPy с помощью двумерного БПФ Двумерное преобразование Фурье — один из важнейших алгоритмов компьютерной науки этого столетия. Он нашел широкое применение в нашей повседневной жизни — от фильтров Instagram до обработки MP3-файлов.Наиболее частой реализацией, используемой рядовым пользователем, иногда даж...

[Перевод] Как добавить Flutter в нативное приложение iOS и протестировать его на Codemagic (Часть 2) Hola, Amigos! На связи Саша Чаплыгин, Flutter dev компании заказной разработки Amiga. Нашел интересную статью на английском о том, как добавить Flutter в новый или существующий проект Native iOS. Решил поделиться с вами переводом. Это вторая часть, в которой будет идти речь ...

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

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

Пишем свой вариантный тип C++ 17 привнес в язык достаточно много нововведений, в том числе шаблон std::variant (хоть в Boost он есть уже довольно давно). Фактически, последним вышедшим и полноценно реализованным стандартом C++ на тот момент, как я начал изучать данный язык, являлся как раз C++17, поэ...

Как обновление BIOS может повысить производительность процессоров Intel Core 14 (non-K) и снизить их температуру Сегодня, когда вычислительная мощность процессоров уже не растет семимильными шагами, как раньше, все стремятся выжимать ее из своих сборок по максимуму любыми возможными способами. Особенно это касается новейших решений, от которых ждешь наивысшей скорости обработки данных ...

«Рувики» полноценно заработает 15 января. Бета-тестирование завершено Этап бета-тестирования российской онлайн-энциклопедии «Рувики» завершён, и 15 января отечественный аналог «Википедии» заработает в полноценном режиме. В бета-версии ресурс работает с 26 июня 2023 года. Финальный вариант, который будет запущен в б...

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

CAE для любопытствующих: инженерные расчеты — какие они бывают Что такое инженерные расчёты, какие они бывают и когда нужны?Инженерными расчётами сопровождается проектирование практически любого изделия или объекта: от болта до огромного боевого человекоподобного робота. Отличительная особенность именно инженерного расчёта от любого дру...

О коммерческой тайне без коммерческой тайны: как мы автоматизировали развёртку Kubernetes в изолированной среде В этой статье мы расскажем о том, как в ОТП автоматизировали развёртку Kubernetes в изолированной среде, обрабатывающей чувствительные данные. Поэтому примеров кода не будет, как и деталей нашего харденинга — это был бы очень длинный и специфичный список. Но на идейном, архи...

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

Детекция дефектов дорожного покрытия без размеченных данных: Хакатон, LiDAR, RANSAC, ICP и 44 бесcонных часов Здравствуйте, читатели Хабра! Решил активнее вкатываться в DS (хотя уже больше года в "теме" и даже нет ни одной публикации, ужас) и написать первую статью на Хабре.В данной публикации я расскажу о проекте для детекции дефектов дорожного покрытия с использованием лидара, про...

Продолжаем глубже изучать передачу данных по сетям GSM через GRPS с помощью SIM868 и Repka Pi — про AT-команды  В предыдущей статье мы рассказали, как с помощью модуля GSM/GPRS/GNSS Bluetooth HAT, созданного на базе SIM868, библиотек SIM800L, RoverConnect и Telemetry можно обмениваться данными между микрокомпьютером Repka Pi с JSON-сервисом, доступным в интернете.Мы привели исхо...

Повторяем Bad aplle на языке Python ASCII-графикой Повторяем Bad Apple в Python ASCII-графикойДоброго времени суток, уважаемые читатели хабра, в этой статье я расскажу Вам о том, как я повторил клип Bad Apple ASCII-графикой Читать далее

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

Как заменить фотостоки на нейронки в коммерческих проектах: личный опыт и промпты Зачем нужны фотостоки, если нейросети готовы производить бесконечное количество нужных вам изображений? Расскажу, как мы получили несколько несколько сотен фотореалистичных изображений людей и пакет иконок для коммерческого сайта с помощью нейронок, потратив ~50 часов дизайн...

BDUI: sapere aude или продолжай писать на коленке Backend Driven UI — относительно новая парадигма создания приложений. Она позволяет сделать продукт индивидуально полезным для каждого пользователя. На личном опыте я убедился, что это очень важно в современном процессе мобильной (и не только) разработки.В данной статье я по...

Развертываем Кибер Бэкап самостоятельно. Часть 3 В предыдущей части мы привели рекомендации по установке и использованию нашего продукта в компаниях малого и среднего бизнеса. Сегодня мы, Дмитрий Ермолаев и Алексей Федоров, затронем вопросы установки и использования Кибер Бэкапа в крупных компаниях.Примечание: если вы...

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

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

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

Async iterator timeout в Python Представим следующую задачу: у нас есть микросервисная архитектура, в которой сервисы взаимодействуют через брокер сообщений, или через gRPC. Так или иначе, оба варианта предоставляют полнодуплексный канал связи, через который один сервис может отправлять множество сообщений...

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

Рассматриваем мифический фреймворк C2 Mythic. Часть 1 Привет Хабр, на связи лаборатория кибербезопасности AP Security. В этой статье мы продолжим разбирать C2-фреймворки. На этот раз, мы будем изучать относительно новый фреймворк под названием Mythic. Приятного прочтения! Читать далее

Как использовать ChatGPT для разработки и учебы. Четыре сценария Привет, Хабр! В 2023 году искусственный интеллект (далее ИИ)  вышел на тот уровень популярности, когда о нем не говорил только ленивый. Все больше компаний активно начали обсуждать свои разработки в этой области, а такие модели как Midjourney, ChatGPT, Gemini (ex-Bard),...

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

Программа поиска эллипсов и определения их параметров МНК Привет! Я новичок на Харбре. Меня зацепила статья от 2011 года: «Детектирование эллиптических частиц на микрофотографии. Новый алгоритм поиска эллипсов на изображении». https://habr.com/ru/articles/135332/. Вот комментарий к этой статье (Mrrl 27 дек 2011 в 07:49): «А почему ...

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

Рыночные данные в кармане: как получать их быстро и просто с помощью Java/Kotlin и Spring Boot + TinkoffApi Если вы хотите написать проект, связанный с рыночными данными или торговлей на бирже, и вы знакомы с Java или Kotlin и слышали про Spring Boot, то эта статья для вас Читать далее

Аутентификация, авторизация пользователей и единый вход (SSO) с использованием Django В этой статье исследую технологию SSO. Начинаю с разбора концепций аутентификации и авторизации. Рассматриваю как они работаю в контексте Django. После прохожу путь от описания как работает SSO простыми словами, до разбора протоколов используемых в SSO.В итоге делаю реализац...

Как запустить немодерируемый юзабилити-тест? Эта статья призвана показать, как правильно организовать и провести немодерируемый юзабилити-тест, чтобы максимально повысить удобство и понятность вашего продукта для конечного пользователя. Она будет полезна UX/UI-дизайнерам, продуктовым менеджерам, маркетологам, и, коне...

SFC Vue3 Компоненты в Bitrix, с использованием Composition API, без сборщиков, без CDN и NPM пакетов В данной статье будет показана нестандартная реализация компонентов Vue + Bitrix, которую вряд ли кто то видел и использовал.Без NPM, без сборщиков и без костылей. Все "нативными" средствами Читать далее

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

DDD в golang. Превозмогая трудности В последнее время достаточно много выступлений, посвященных реализации подходов Domain Driven Design(DDD) в golang.Я не буду останавливаться на value object, они в golang хорошо реализуются с помощью type defintions. А разберу работу с изменением аггрегатов.Попытаюсь раз...

Работа с очередями в RabbitMQ на основе EAV-модели: превращаем плоское в реалистичное Мы добавили реалистичные дороги в навигатор 2ГИС. Теперь дорожное покрытие, разметка, объёмные развязки, съезды, островки безопасности и опоры на многоуровневых дорогах выглядят как в жизни. Под капотом — решение задачи по превращению «плоской» геометрии в объекты с реалисти...

NeoVim для Ruby разработчика Данная конфигурация собиралась очень долго. на данный момент работаю именно на ней. Является больше напоминанием для себя, и шпаргалкой для тех кому интересно. Это субъективная точка зрения, и ни кому ее не навязываю. Если захотите использовать, буду рад тем что помог.Резюме...

Организация корпоративной ИТ-инфраструктуры для 1С (50, 100, 200 пользователей) В данной статье мы рассмотрим пример подхода для создания инфраструктуры 1С в зависимости от количества пользователей. Читать далее

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

Эффективное использование журнала регистрации и технологического журнала 1С в решении вопросов производительности Эта статья носит своей целью продемонстрировать другой подход в анализе проблем производительности в системах 1С:Предприятие с применением журнала регистрации (ЖР) и технологического журнала (ТЖ).Напомню, что ЖР логирует действия пользователей — кто,...

Отправка и обработка HTTP запросов в PostgreSQL Эта статья о том как отправлять и обрабатывать HTTP-запросы непосредственно из/в PostgreSQL. Автор расскажет о том, что такое асинхронное уведомление в PostgreSQL, и наглядно продемонстрирует, как с его помощью можно взаимодействовать с внешними системами из самой СУБД. Чита...

Нормализация событий информационной безопасности и как ее можно выполнять с помощью языка eXtraction and Processing Всем привет! На связи Михаил Максимов, я — ведущий эксперт департамента развития технологий в R&D Positive Technologies. За плечами у меня многолетний опыт по развитию экспертизы в нашей системе MaxPatrol SIEM и процессов вокруг нее. И сегодня я хочу поговорить про один ...

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

Футбольный клуб решил искать новых игроков с помощью ИИ IBM и футбольный клуб «Севилья» представили Scout Advisor, инструмент искусственного интеллекта, призванный усовершенствовать скаутинг и подбор игроков для футбольного клуба. Построенный на платформе IBM watsonx, Scout Advisor использует обработку естественного языка и базов...

Async/await, There is no thread – легко обмануть тех, кто сам обманываться рад Когда нам показывают на некотором примере, что асинхронная операция не создает потока, нам пытаются внушить, что асинхронная операция НИКОГДА не создает потока и в принципе не может его создать, но это не правда! Простой пример с работающим кодом доказывает обратное. Давайте...

[Перевод] Построение архитектур для обработки данных в режиме реального времени при помощи Apache Kafka, Flink и Druid Командам, которые занимаются обработкой данных (поступающих пакетными партиями в рабочих потоках) сложно соответствовать современным требованиям по обработке данных в режиме реального времени. Почему? Потому что пакетный поток данных – от доставки данных до их дальнейшей о...

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

Как перевести игру 'The Lamplighters League' На данном примере предлагается разобрать перевод .wem файлов аудио одного языка (англ.) на другой язык (русский) с последующей упаковкой в .wem и использования в игре. В качестве инструментов будут использоваться python, нейросети, а также программа Wwise. Из интересного — ...

Развертывание защищенного dev кластера bitnami/kafka в k8s с помощью helm Всем привет. На этот раз хотел бы поделиться материалом, связанным непосредственно с devops работой. Недавно возникла потребность раскатить kafka кластер в kubernetes. В ходе развертывания возникло очень много сложностей, встречено множество подводных камней, и, естественно,...

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

[Перевод] 15+ Инструментов на базе искусственного интеллекта для разработчиков Перевод статьи https://www.marktechpost.com/2023/12/04/15-ai-tools-for-developers-august-2023.От переводчика: Выбор темы современных инструментов на базе ИИ оказался для меня не только хайповым, но и лично значимым. Мой интерес к этой области возник из желания совместит...

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

Как в СУБД реализовать администратора без прав доступа к данным В СУБД-строении есть не новая, но не теряющая актуальности задача. Сформулировать её можно примерно так: как убрать возможность суперпользователя взаимодействовать с данными, но оставить ему все возможности по управлению СУБД? Эта функция затребована не только большими компа...

Дубинка (гиря) подброшенная в воздух. Решение дифференциальных уравнений в MATLAB Пример решения системы дифференциальных уравнений (ДУ) в MATLAB адаптивным и не адаптивным методами. В MATLAB встроено множество численных решателей с адаптивным шагом для решения жестких, нежестких и полностью неявных систем. С помощью Symbolic Math Toolbox можно сначала вы...

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

Мой опыт в IT компании Я делюсь личным опытом, он может как вам пригодится, так быть вообще не релевантным. Многое зависит от разных факторов (компания, команда, культура, личность, финансы и т.п.).Здесь написано про шаги в моей компании без погружения в процессы и инструментов.У меня достаточно&n...

Правильный мониторинг API: метрики и лучшие практики Применение API в разработке ПО сыграло большую роль в создании современных приложений и повлияло на их общую оценку и опыт конечных пользователей. В этой статье Екатерина Саяпина, Product Owner личного кабинета платформы МТС Exolve, рассказывает про правильные подходы при от...

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

Всё что вы хотели знать про ACL в Active Directory В данной статье я постарался максимально полно и глубоко рассказать про построение и внутреннее использование ACL (Access Control List) внутри Active Directory. В этой статье нет рассказов про "null DACL" и "empty DACL" и тому подобного. Если читатель хочет изучить все более...

[recovery mode] KolibriOS: пробуем ассемблер Решил потренироваться на ассемблере под x86 и выбор мой пал на KolibryOS. Ведь как-никак это ОС была написана на ассемблере и для использования ассемблера. И я хотел именно из самой KolibriOS писать код. Но... Наверное, зря я это всё затеял.Как оказалось, примеров кода не ма...

Что такое и как работает DevOps as a Service Методология DevOps помогает решить многие проблемы на всех стадиях жизненного цикла ПО. Используя ее, компании могут уменьшить сложность своей IT-инфраструктуры, обеспечить большую безопасность и надежность программных продуктов, чем при традиционных подходах к разработке. ...

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

GET запросы на практике: правила, принципы и примеры Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.Но в большинстве из них всё ограничивается описанием URL ресурса, мотивацией использовать пагинацию, сложными словами про кэширование и SSL. Это, без...

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

Хотел устроиться Python-разработчиком, стал мидлом в QA-отделе — как я искал первую работу Привет! Меня зовут Юра, и в этой статье я хочу поделиться своим опытом поиска работы. И это вряд ли блестящая история успеха — на этом пути нашлось место и самым неожиданным факапам, и офферу от галеры, и отчаянию. Спойлер: на работу я всё-таки устроился, хоть и совсем не в ...

Уже поменяли шину? Наш опыт «переобувания» и разработки интеграционной платформы Хабр, привет! На связи Дмитрий Бадулин, я занимаюсь разработкой ПО в компании К2Тех. Корпоративная сервисная шина, или как это по-другому называется, интеграционная платформа — это отдельная боль для множества компаний. И сегодня в условиях, когда некоторые middleware-решени...

«Импульс» в профессию инженера: какие задачи решают стажеры в YADRO Получить опыт работы в сложной инженерной специальности сегодня проще, чем когда-либо. Герои этого материала — студенты и недавние выпускники технических вузов, которые прошли летнюю стажировку Импульс от YADRO в 2023 году и остались работать в компании. Ребята решают реальн...

Тестирование веб-приложений Flutter с помощью Selenium Разобраться в тонкостях тестирования пользовательского интерфейса веб-приложений Flutter может быть непростой задачей. Если вы когда-либо ломали голову, размышляя о том, как применить свой опыт работы с Selenium к интерфейсу, нарисованному с помощью Flutter, эта статья для в...

Ваша карта не будет бита: как добавить Impact Map, CJM и USM в документ и не пострадать Наверняка у многих бизнес-аналитиков есть цель использовать особые артефакты: Impact Map, CJM (Customer Journey Map), USM (User Story Map). Особые, т. к. не так часто они встречаются в бизнес-требованиях, и даже бывалый аналитик может с непривычки растеряться, если не создаё...

Энергетические МГД-установки со сверхкритическим электропроводным рабочим телом Привет Хабр!Хотелось бы поделиться с уважаемым сообществом некоторыми идеями, которые уже привели к получению патента РФ на изобретение, и позволяют создать эффективную энергоустановку без механически движущихся частей. Несколько лет назад, я увидел на YouTube видео, описы...

Программист мало пишет, но много читает Здравствуйте, меня зовут Александр, я backend-разработчик. Цель данной публикации – проанализировать затраты времени при разработке приложений. Расчеты приведены на основе web приложений на языке Python. Так же не рассматривается ситуация разработки MVP для получения различн...

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

Python + pygame — небольшие оптимизации Приветствую IT-специалистов, решивших прочитать мою статью, я - python разработчик любитель (изучающий язык уже 5 лет, но не имеющий коммерческого опыта), который решил создать игру на очень медленном языке программирования. В процессе разработки я сталкиваюсь с различными п...

История визуального редактирования: как Photoshop изменил восприятие изображений Сегодня, 19 февраля, не просто ещё один день — это день рождения Photoshop, который стал незаменимым инструментом как для решения повседневных задач редактирования фото, типа «убрать себе пару килограммов» так и для реализации сложных художественных проектов, которые иной ра...

Как разработчику использовать ChatGPT: разберемся, когда нейросеть помогает, а когда вредит Может показаться, что ChatGPT работает непредсказуемо: то уверенно пишет документацию к коду, то не может решить школьную задачу по математике. Самое опасное, что во втором случае нейросеть умеет ввести в заблуждение. Чтобы понимать, какие задачи можно доверить чат-боту Chat...

Заводим Яндекс Карты в Compose Multiplatform Привет! Это мой первый пост на Хабре, буду рад услышать профессиональное и не очень мнение по поводу этой статьи. Реализуем Яндекс Карты в KMP проекте с использованием Compose Multiplatform. Нестандартное решение с интерфейсом на Swift и передачей кода через DI. Читать далее

[Перевод] Terraform для инженерии данных Если перед нами стоит задача построить надёжную платформу для работы с данными, то для неё требуется предусмотреть множество компонентов: инструменты, логику обработки данных, методологии, архитектуру и инфраструктуру. Что касается инфраструктуры, здесь есть самые разные ва...

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

Пакет context в Go: взгляд профессионала А вы часто читаете реализацию стандартной библиотеки своего любимого языка?..Меня зовут Константин Соколов, и мы с Сергеем Мачульскисом, моим коллегой из бэкенд-разработки в Positive Technologies, хотим с вами поделиться вдохновением. Давайте вместе посмотрим на пакет contex...

Как я написал свой первый классификатор эмоций Всем привет! Немного о себе. Меня зовут Максим, я работаю специалистом по Machine Learning в компании SimbirSoft. Последние два года я углубленно изучал область машинного обучения и компьютерного зрения и сегодня с удовольствием поделюсь с вами опытом разработки личного пет-...

Страна-датацентр: корабль с 10 000 Nvidia H100 хочет стать убежищем для разработчиков ИИ. Но всё ли то, чем кажется? Весь мир говорит о стране-датацентре Del Complex. Которая будет плавать по международным водам на корабле с 10 000 GPU Nvidia. И без привязки к законам конкретного государства обеспечивать хранение и обработку глобальных данных.Новость об этом уже появилась на тысячах сайтов...

Основные функции Apache Tomcat Привет, дорогие читатели! Apache Tomcat — это открытое программное обеспечение, реализующее спецификации Java Servlet, JSP и Java WebSocket, предоставляя таким образом платформу для запуска веб-приложений, написанных на языке Java. Разработанный и поддерживаемый Apache Softw...

Краткий обзор TinyML TinyML сам по себе означает внедрение ml в маломощные микроконтроллеры и встроенные системы. Это устройствам IoT выполнять задачи обработки данных и машинного обучения непосредственно на самом устройстве, минимизируя таким образом необходимость в постоянном подключении к инт...

Создание собственного компилятора В сети не так много короткой информации по написанию компиляторов, оформленных в виде краткой статьи, поэтому я решил попробовать восполнить этот пробел.В рамках данной статьи будет написан простой компилятор на C++, транслирующий код в ассемблер для MS-DOS, а также опробова...

Отправляем и принимаем SMS с помощью SIM868 и Repka Pi В этой статье мы продолжим рассказ об использовании модуля GSM/GPRS/GNSS Bluetooth HAT, созданного на базе SIM868, для беспроводной передачи данных в виде СМС-сообщений через Российский одноплатник Repka Pi. Такой способ даже в наше время актуален, когда нужно управлять авто...

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

Основы репликации в Kafka Привет, Хабр!Репликация в Apache Kafka - это механизм, который обеспечивает доступность и надежность в обработке потоков данных. Она представляет собой процесс дублирования данных с одной части темы в другие, называемые репликами. В этой статье рассмотрим основы репликации в...

Парадоксы в данных, и почему визуализация бывает необходима В этой заметке я хочу разобрать несколько «парадоксов» в данных, о которых полезно знать как начинающему аналитику данных, так и любому человеку, кто не хочет быть введенным в заблуждение некорректными статистическими выводами.За рассматриваемыми примерами не кроется сложной...

Бизнес-аналитик — мастер переговоров или как не сойти с ума, работая с требованиями Друзья аналитики и ценители данных!Меня зовут Виктория и я считаю, что аналитика - это не просто работа, а образ жизни. 10 лет погружения в мир данных научили меня выжимать инсайты из сухих цифр и видеть скрытые закономерности.Сейчас я также руковожу отделом аналитики в IT-к...

Типичные задачи аналитика. Часть 2. А есть ли тренд? В первой части статьи на Habr мы рассмотрели классические подходы к оценке изменений метрики при условии ее стационарности. В этом контексте статистические критерии, применяемые в A/B тестировании, оказались весьма эффективными.Однако, если существует стабильный тренд, напри...

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

Особенности "Шнековой" FGF печати. Часть 1.     Здравствуйте, в связи с ажиотажем вокруг одной статьи: Сама статья про люк , стало понятно что есть необходимость публикаций про нюансы печати больших изделий с помощью шнеков.    Изложенный далее материал основан на личном опыте при освоении печати на шнеке. Было получе...

Бизнес-правила в действии: семь лет развития и усовершенствования Business Rules Engine Привет! Меня зовут Владислав Кучинский. Я начинал свой карьерный путь в IT с разработки на С++ и Java, а сейчас являюсь руководителем группы Platform Event Management в компании Bercut. Сегодня я расскажу историю создания платформы Business Rules Engine (BRE) Bercut – систем...

«Пора ли гнать на мороз Computer Vision — scientist'ов ?» (Fondation Models и вокруг) Прошлый год в Computer Vision запомнился тем, что появилось множество больших претрейненных сетей (Fondation Models). Самая известная - GPT4v (ChatGPT с обработкой изображений).В статье я попробую простым языком объяснить что это такое (для тех кто пропустил), как меняет инд...

Параллельное выполнение в R Привет, Хабр!Параллельные вычисления – подход к проектированию и выполнению программ, который позволяет ускорить обработку данных и вычисления, используя множество процессоров или ядер процессора одновременно. В ЯП R паралельное выполнение также имеет свои варианты реализаци...

Multilabel-классификация знаний школьников Привет, Хабр! Меня зовут Егор, сейчас я учусь на четвёртом курсе кафедры математических методов прогнозирования (ММП) ВМК МГУ и изучаю машинное обучение, в том числе, обработку естественных языков (Natural Language Processing). Этим летом я стажировался в Лаборатории искус...

Шаблонизируй это или Как ускорить разработку при помощи одного документа Привет! На связи лид команды аналитиков Magnus Tech Владислава Никитина.В заказной разработке каждый проект начинается со сбора бизнес-требований к будущей системе. Это важный этап, ведь именно здесь определяются контуры задач, которыми займутся разработчики. И с ним связан ...

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

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

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

Как загружать классы в Java 8 и Java 9+? Привет, Хабр! Я разработчик в Институте Системного Программирования РАН, занимаюсь разработкой статического анализатора Svace. Недавно я столкнулся с задачей самостоятельной загрузки классов в JVM, что оказалось непросто, потому что в проекте мы используем модули Java.Модули...

Илон Маск прибыл в Китай с необъявленным визитом: он будет обсуждать с чиновниками запуск FSD и передачу данных за границу Генеральный директор Tesla Илон Маск неожиданно прибыл в Китай 28 апреля, чтобы получить одобрение на использование системы полного автономного вождения Tesla (FSD) на данной рынке и, возможно, посетить Пекинский автосалон. Он встретится с высокопоставленными чиновникам...

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

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

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

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

Статический анализ структуры базы данных (часть 2) Продолжим разбор проверок структуры базы данных, на примере PostgeSQL. Данная статья будет посвящена проверкам связанным с ограниением FOREIGN KEY (FK). Часть проверок целесообразно выполнять на регулярной основе, а некоторые позволяют лучше понять структуру проекта при перв...

Здоровая конкуренция в GO. Главное не перехитрить самого себя Несколько лет назад я прочитал статью о параллелизации в GO и ничего не понял – я тогда только начинал программировать на этом языке. Но размышления автора мне очень понравились – они подкреплялись бэнчмарками, что было довольно убедительно. Автор игрался c параметром GOMAXP...

Сто паттернов для разработки корпоративных программ. Часть первая В этой статье рассмотрены все паттерны проектирования из "Банды четырёх" с примерами на языке программирования C#. Для самых терпеливых имеются дополнительные паттерны.Это первая статья из серии "Сто паттернов для разработки корпоративных программ". Следующие статьи будут по...

[Перевод] Это слишком опасно для C++ Некоторые паттерны стало возможно использовать на практике только благодаря безопасности Rust по памяти, а на C++ они слишком опасны. В статье приведён один такой пример.Работая над внутренней библиотекой, написанной на Rust, я создал тип ошибок для парсера, у которых должна...

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

Cisco TRex на практике В этой статье описывается процесс работы с программным генератором сетевого трафика TRex. Этот инструмент предназначен для генерации различных типов сетевого трафика и анализа данных в режиме реального времени. Trex поддерживает работу на уровнях MAC и IP, позволяя пользоват...

Airflow в Kubernetes. Часть 1 Приветствую!На пути инженера данных часто встречаются задачи связанные с DevOps. Одна из таких - развернуть Airflow в Kubernetes кластере. Если до этого похожего опыта работы не было, то эта задача может показаться нетривиальной. Конечно, можно выполнить несколько команд из ...

Малоизвестные библиотеки Python для анализа данных, которые сделают вашу жизнь проще Привет Хабр! В этой статье мы рассмотрим некоторые полезные библиотеки Python для задач обработки данных, с которыми, возможно, вы еще не знакомы. Хотя для задач машинного обучения на ум приходят такие библиотеки, как pandas, numpy, scikit-learn, keras, tensorflow, matplotli...

SPARK для «малышей» Примеры кода на Python для работы с Apache Spark для «самых маленьких» (и немного «картинок»).Данная статья представляет собой обзор основных функций Apache Spark и рассматривает способы их применения в реальных задачах обработки данных. Apache Spark — это мощная и гибкая си...

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

Как избавиться от нестабильных тестов Устали от нестабильных тестов?Автоматизированные тесты часто ведут себя нестабильно. Логичное решение в такой ситуации — немедленно исправить такие тесты или избавиться от них. Но что, если тестов — тысячи, инженеров, которые могут их исправить, не так много, а избавление от...

Краткий обзор токенизаторов: что это такое и зачем это надо? Представьте себе, что вы читаете книгу и хотите найти все места, где упоминается слово «кот». Не знаю, зачем вам это, но пока остановимся на том, что вы это хотите. Вот очень надо.Так как это сделать?Вы можете просто пролистать книгу и прочитать...

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

Детектирование атак на контейнеры с помощью eBPF Привет, Хабр!Меня зовут Илья Зимин, я аналитик-исследователь угроз в компании R-Vision. Сегодня в статье я расскажу о возможностях обнаружения атак на контейнеризированные приложения с помощью такого инструмента, как eBPF, на примере приемов, связанных с побегом из Docker-ко...

8 вещей, которые я усвоил за 6 лет карьеры разработчика Привет, дружище !) Сегодня хочу с тобой поделиться наиболее запоминающимися уроками, которые я успел усвоить за время моей карьеры. Важный момент, все что будет изложено ниже это мое субъективное мнение и оно может оспариваться в комментах. Читать далее

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

Как мы удвоили разрешение фотографий с помощью камеры Flutter на iOS Привет, меня зовут Сергей, и я мобильный разработчик в компании Brickit. Некоторое время назад мы наконец мигрировали приложения для iOS и Android на общий код на Flutter. Мы были в восторге от результата, но сам переход был далеко не гладким. Одной из важных частей этой ава...

Как работать со словарями данных и оптимизировать запросы в ClickHouse Приветствуем! На связи вновь Глеб Кононенко и Алексей Диков — разработчики из Лиги Цифровой Экономики. Ранее мы уже немного рассказывали про наш опыт работы с распределенными таблицами в ClickHouse в этой статье.Сегодня хотим поделиться опытом оптимизации запросов и работы с...

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

Wolfram Language JavaScript Frontend Wolfram Language JavaScript Frontend - это проект, цель которого в создании бесплатной альтернативы для Mathematica с открытым исходным кодом, но со своими особенностями и преимуществами, а если точнее то в реализации пользовательского интерфейса для ядра Wolfram Language (W...

Как начать карьеру в пентесте: опыт сотрудника Angara Security Мы продолжаем цикл материалов о старте карьеры в кибербезопасности. Этот материал подготовил сотрудник отдела анализа защищенности Angara Security, по просьбе автора, мы не будем раскрывать его имя. Если после прочтения статьи будут вопросы, welcome в комментарии или в личны...

Spring Security 6. Авторизация и аутентификация на основе Базы данных Привет. Меня зовут Кирилл, я Java-разработчик. Несмотря на то, что уже год я работаю в компании, по прежнему стараюсь находить время для собственных проектов, с помощью которых осваиваю интересующие меня технологии и подходы. Именно на таком проекте я решил разобраться, как ...

Библиотека на Go для работы с RuStore API Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С ...

Apple могут оштрафовать за сбор данных россиян Как сообщает ТАСС, компанию компанию Apple могут оштрафовать за сбор данных россиян. Мировой суд в Москве рассмотрит протокол в отношении компании Apple, которую обвиняют в нарушении российского законодательства. «В отношении Apple Inc. зарегистрирован протокол, с...

Применяем Java Sealed Classes на практике В этой статье применим Sealed Classes для улучшения читаемости кода, используя пример из реальной разработки. В статье используется Java 21 т.к. это первая LTS версия Java с релизным Pattern Matching. Также в примере используется Spring Boot, но этот подход можно использоват...

Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++ Привет, Хабр! Меня зовут Кирилл Колодяжный, я ведущий инженер-программист в YADRO. Помимо основных рабочих задач, включающих исследование проблем производительности СХД, я увлекаюсь машинным обучением. Участвовал в коммерческих проектах, связанных с техническим зрением, 3D-с...

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

Технология OCR и ее преимущества для бизнеса OCR (Optical Character Recognition) - это технология, которая позволяет компьютерам распознавать текст, написанный от руки или напечатанный на бумаге, и преобразовывать его в электронный формат. С помощью OCR возможно автоматическое сканирование и распознавание текста с доку...

Акция для стартапов от ServerClub! Уважаемые Хабражители! Из рук создателей ServerClub вышел не один стартап, поэтому нам хорошо известно, как сложен этот путь. Каждый лишний доллар для проекта на ранних стадиях может оказаться фатальным. А уж ежемесячные платежи за хостинг — главная обуза гаражных стартапов...

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

Разработка Tower Defense на Unity — часть 1 Доброго времени суток, ребята. Это моя первая статья вообще и первая в цикле статей о том, как я решил создать игру в жанре Tower Defence. Данный текст я пишу как человек неопытный и только исследующий сферу, так что он может показаться вам интересным, если вы уже давно проф...

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

Функциональный Rijndael Rijndael (авторы Vincent Rijmen, Joan Daemen) - алгоритм, признанный стандартом шифрования в 2001 году, ныне называемый AES (Advanced Encryption Standard).Материалов про AES много, и я сразу выделю отличие этой статьи от других:• приведена реализация шифра в функциональной п...

[recovery mode] Как нанять работника в ИТ, если он реально нужен в 2024 году Как нанять работника в ИТ, если он реально нужен в 2024 году.Незаменимая статья в помощь моему бывшему руководителю. Которую он не будет читать.И немного в помощь сотруднику, который сейчас решит выйти на рынок. Читать далее

Анализ текстовых данных с помощью NLTK и Python Привет, Хабр!NLTK предлагает удобные инструменты для множества задач NLP: токенизация, стемминг, лемматизация, морфологический и синтаксический анализ, а также анализ настроений. Библиотека идеально подходит как для начинающих, так и для опытных разработчиков, предоставляя и...

Нужен ли продакт в ML-команде? Мнение изнутри Пять лет назад из обычного продакт-менеджмента я перешла в команду с дата-сайентистами. И весь процесс моей работы сильно изменился. Раньше после определения потребностей пользователя я приходила к команде разработки с готовой задачей и дизайн-макетами. А после разработ...

ESA разрабатывает цифрового помощника по наблюдению Земли, основанного на глубоком обучении Спутники ежедневно производят огромное количество ценных данных, но их использование может быть сложным и не всегда приносит максимальную пользу пользователям. Поэтому Европейское Космическое Агентство (ESA) совместно с технологическими партнёрами разрабатывает приложен...

Игровая экономика Premium игр на примере PC 4х стратегии Как спроектировать экономику для вашей игры? Это вопрос, ответ на который может занять небольшой цикл лекций или статей. Принципиальная разница в подходе основана в первую очередь на модели монетизации: F2P или B2P. Второе, что определяет подход к разработке экономической си...

Что такое бизнес-требования и как с ними (не) бороться Самые первые бизнес-требования были оставлены нашими предками в виде наскальной живописи, некоторые из которых добрались и до наших дней.О том, как поменять подходы к написанию и пониманию бизнес-требований, чтобы результат от их реализации не был первобытным, расскажем в ст...

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

Road Run, или как я свою первую игру делал. Часть 1 Разработка игры это очень интересно и увлекательно, а ещё это красиво, и наличие подобного проекта украсит любое портфолио. Здесь я хочу поделиться полученным опытом в ходе решения этой задачи, какие инструменты я использовал и какие цели перед собой ставил. Читать далее

Современный С++ в разработке девайсов Привет, Хабр.Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных ...

Компьютерное зрение сквозь года Как-то я столкнулся с довольно тривиальной, но новой для себя задачей - оптического распознавания символов (OCR). Так сложилось, что готовые инструменты (типа tesseract-ocr) мне не подошли, поэтому пришлось изобретать велосипед. Но к этому процессу я решил подойти со всей от...

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

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

Создание первой игры: попытка попасть в gamedev Привет! В этой статье мы поделимся опытом создания нашей первой игры, несмотря на то, что мы не имели большого опыта в создании игр. Читать далее

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

CRC — это просто (деление столбиком) Целостность можно достичь различными способами. Например, чек-суммами. Вот как раз была такая задача - обеспечить целостность с помощью чек-сумм.На ум сразу пришел CRC. Ну тут просто - взял скопировал готовый код, бери не хочу, реализаций на разных языках куча.Но это простой...

Как применяется и для чего нужен local first подход Local first — это подход к разработке приложений, когда данные обрабатывают в первую очередь на устройствах пользователей, а не в облаке. Обсудим ключевые принципы подхода и примеры в контексте организации совместной работы. Читать далее

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

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

Проектируем микросервисы с Reactive Manifesto Работаете с распределенными системами или только пытаетесь к ним подобраться? Проектировать такие системы с нуля бывает сложно и страшно: чтобы учесть все нюансы, нужен определенный багаж знаний. На помощь приходит Reactive Manifesto — документ, который обобщил опыт цел...

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

Escrow.com уточнил статистику продаж В конце прошлого года сервис Escrow.com опубликовал краткий статистический отчёт, который дал больше вопросов, чем ответов.

Как мы оцифровали футбольные матчи с помощью CV Привет! Меня зовут Сергей Бархударьян, я директор по развитию спортивного направления в Яндекс Плюсе. Мы занимаемся съёмкой, обработкой и стримингом спортивных событий. В этом посте я расскажу о работе с технической съёмкой и анализом футбольных матчей. Под катом — о том, ка...

Закон парадокса в логике и математике В результате поиска в Интернете выяснилось, что термин «закон парадокса» в научной литературе практически не встречается. Исключением в настоящее время является статья по литературоведению, моя статья в Хабре и статья, которая в данный момент находится в стадии рецензирован...

Как автоматизировать использование дизайн токенов с помощью Stylelint и PostCSS Привет, Хабр!Меня зовут Саша и вот уже 7 лет я работаю фулстек разработчиком и пишу на C# и TypeScript/React.Сегодня я хотел бы поделиться своим небольшим успехом в автоматизации. В какой-то момент я понял, что во время код ревью я указываю разработчикам на одни и те же ошиб...

Как мы с помощью Midjourney визуализировали понятия из мира ИТ на картах «‎Имиджинариума» Всем привет! Хочу поделиться необычным кейсом из моей практики – созданием иллюстраций для игровых карточек «‎Имиджинариума» с использованием нейросети Midjourney. Наша команда визуализировала выражения и понятия из мира ИТ. Мы представили, как может выглядеть на карточках н...

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

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

Как использовать нейросеть Gemini в России без VPN и что она умеет Нейросеть Gemini от Google относительно недавно стала доступна всем желающим. Вот только из России пользоваться ей через браузер можно лишь с помощью VPN. Однако пользы от такого помощника мало. Пока включишь VPN, пока запустишь браузер, откроешь Gemini, введешь нужный запр...

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

Edge ML для людей с ограниченными возможностями С развитием технологий появились новые возможности для людей с ограниченными возможностями. Edge Machine Learning (Edge ML) представляет собой передовую технологию, которая приближает алгоритмы машинного обучения к источнику данных, что сокращает задержку и улучшает возможно...

AMD предлагает свою бесплатную технологию улучшения видео Реализация от NVIDIA носит название RTX Video Super Resolution (как её активировать?), в данный момент уже версии 1.5. Кроме того, вспоминается вариант от Opera (как его использовать?), который тоже может дать положительный результат для некоторых видео. Читать полную ст...

Топ-менеджер Samsung Патрик Хомет оправдал ИИ-обработку фотографий на Galaxy S24 Топ-менеджер Samsung Патрик Хомет в интервью Tech Radar прокомментировал использование компанией ИИ-алгоритмов при обработке мобильных фотографий. По его словам, пользователи просто неправильно воспринимают понятие реалистичности картинки, которой уже давно не существует как...

Как перестать переусложнять и начать жить Мое наблюдение состоит в том, что мы — разработчики и продукты, сильно переусложняем, осознанно или нет, но всякие «„Архитектурные комитеты“, „Планирования“, „Апрувы у 50 отделов“ и деплои в 2-часовые окна, простыни текста сопровождающие простей...

Backend Driven UI с точки зрения бэкенда: к чему готовиться, если вы решили на него перейти Многим знаком подход Backend Driven UI. С его помощью можно создавать новые страницы, запускать А/B-тесты, легко менять флоу в любое время и сразу на всех платформах. И при этом не надо долго и мучительно перевыкатывать приложение.Обычно о BDUI рассказывают мобильные разрабо...

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

Об эффективном использовании заметок на примерах из работы и личной жизни Личная жизнь – штука сложная, работа – ещё сложнее. В условиях поистине огромной кучи «контекстов» не забывать даже самые важные вещи бывает непросто, а делать то, что надо и когда надо – порой просто невозможно. Нерешаемая задача? Отнюдь. Всё уже на самом деле давно изобрет...

Интерактивный NPC на Unreal Engine Всем привет.Я хочу с вами поделиться результатами эксперимента по созданию интерактивного NPC на Unreal Engine 5.Speech recognition, Text-to-speech, LLM модели, LipSync, MetaHuman и все это без использования сторонних сервисов.Видео работы и ссылка на демо версию прилагается...

Продуктовый подход к pet-проекту или как я разработал музыкальное веб-приложение Что вам может дать продуктовый подход к pet-проекту? Если смотреть на pet-проект не как на лабораторную работу, а как на будущий продукт, начинаешь лучше понимать весь цикл разработки. При таком подходе ты сперва выступаешь в роли заказчика: определяешь, какую задачу пользов...

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

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

[Перевод] С новым годом: GPT в 500 строках на SQL В минувшем году все только и говорили об ИИ и о том, как он может всё за вас сделать.Мне нравится, когда кто-то или что-то работает за меня. Поэтому решил: попрошу-ка ChatGPT написать за меня новогодний пост:"Эй, ChatGPT. А ты можешь реализовать большую языковую модель на SQ...

Обобщенные фабрики тайпгардов в TypeScript Привет, Хабр! Меня зовут Сергей Соловьев, я разрабатываю интерфейсы международных платежей в Тинькофф Бизнесе. Уверен, многие хотят писать надежный, поддерживаемый, но при этом лаконичный код. Как найти баланс?TypeScript упрощает разработку веб-приложений ценой роста кодовой...

От перфокарт до чатботов: с чего начиналась и куда идет аналитика данных История аналитики данных полна сюрпризов — от скромного начала с перфокарт до передового «современного стека данных». Обозреватель HackerNoon решил поделиться краткой сводкой основных событий, которые привели нас к этому моменту.

Connection pool для pqxx В процессе изучения бекэнда, как нового для меня направления в программировании, я столкнулся с необходимостью оптимизации управления соединениями. Поискав в интернете существующие решения для библиотеки pqxx (C++ API для PostgreSQL), я обнаружил, что хотя они и выполняют св...

Это один из лучших подходов к изучению английского, что я видел за последние годы — коллокации Значение слова – это его использование в языкеЛюдвиг Витгенштейн (сурс) Что это вообще за магия такая? Коллокация – это просто пара или группа слов, которые часто возникают вместе. Такие комбинации звучат естественно для носителей языка, однако, тем, у кого язык не родн...

Анализ Приказа ФСТЭК России №118 «Об утверждении требований по безопасности информации к средствам контейнеризации» Рассмотрим требования к безопасности информации в средствах контейнеризации, указанные в Выписке из Приказа ФСТЭК России № 118 «Требования по безопасности информации к средствам контейнеризации», приведем разъяснения к каждому требован...

Как необычные решения приводят к критическим уязвимостям. Или история одного бага, найденного в CloudTips Привет, Хабр! В данной статье хотел бы поделиться историей, как был найден достаточно простой в исполнении баг, но приводящий к опасной уязвимости веб приложения. Данный баг был найден в сервисе CloudTips от Тинькофф и CloudPayments на BugBounty площадке app.bugbounty.bi.zon...

Как оплатить VPN криптовалютой С прошлого года пользователи VPN в России оказались перед дилеммой: западные VPN-сервисы больше не принимают российские карты, а российские VPN-сервисы бесполезны для тех, кто хочет без ограничений пользоваться запрещёнными социальными сетями или читать запрещённые сайты. Од...

Сомнительная инициатива ВК… Добрый день, вечер или что у вас там на марсе. Хотел бы обратиться к людям придумавшим новый, модный и очень интересный инструмент под кодовым названием «perfomance-review».Немного обо мне. Я сотрудник ООО «ВК». Пожалуй это всё что я могу рассказать о себе, так как эта стать...

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

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

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

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

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

[recovery mode] MindVault: маленькая революция в flash карточных приложениях Здравствуй хабр! Я всегда мечтал создать идеальное приложение для обучения и запоминания информации, пытался понять как в целом работает память, насколько хорошо она может работать, от чего и как это зависит, в этой статье мы посмотрим что на данном этапе я достиг, или быть ...

Главный принцип разработки интерфейсов Если вы достаточной древний, то на личном опыте знакомы с технологической энтропией: железо становится мощнее, но софт деградирует. Photoshop тормозит, а ТВ тупит даже при переключении каналов. Портится не только код, но и интерфейсы.С энтропией кода бороться тяжело. С интер...

Как распараллелить тесты с базой данных Представьте проект, в котором уже написано несколько сотен тестов. Каждый тест настраивает базу под себя: добавляет данные, вызывает truncate по окончанию. Хочется запускать тесты параллельно, чтобы ускориться, но если два теста запустить одновременно, они почти наверняка др...

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

5 советов для тех, кто хочет войти в IT в 2024 году Всем привет! Я Даниил Беликов, мобильный разработчик с опытом работы HR-менеджером. Я начал программировать в 2019 году, когда мне было 27 лет. У меня не было технического образования, друзей-программистов и поддержки со стороны близких. В силу обстоятельств, мне пришлось пр...

Google Play упрощает описания приложений с помощью AI Google Play запускает новую функцию, которая автоматически генерирует краткие описания приложений на основе полных описаний, введенных разработчиками. Целью этого эксперимента является улучшение пользовательского опыта и повышение конверсии загрузок.

Как мы создаём Squadus. Реализуем «прыжок к сообщению» в мобильной версии Весной этого года мы выпустили Squadus — цифровое рабочее пространство для компаний любого масштаба. Решение позволяет общаться в чатах, проводить конференции, совместно работать над документами и автоматизировать типовые действия с помощью ботов.Сегодня расскажем о том, как...

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

[Перевод] Работа со временем и датой в C# с применением библиотеки Humanizer Цель этой статьи — показать вам, как использовать Humanizer, чтобы вывести работу со временем и датой в ваших C#-проектах на новый уровень. Я расскажу о том, как преобразовать объекты DateTime и TimeSpan в удобный для восприятия человеком вид, как настраивать параметры гуман...

Tcpdump на разных уровнях Утилита Tcpdump знакома любому сетевому администратору, с ее помощью мы собираем трафик для последующего анализа. Типичная история – собираем траффик, приходящий на нужный интерфейс и затем уже анализируем его Wireshark. Подход практичный, ведь Wireshark Действительно очень ...

Еще один практический пример использования ИИ: скучные открытые публичные встречи в краткое саммари На работе последнее время участились случаи супер-пупер-важных голосовых созвонов из-за которых ну просто невозможно сосредоточиться на сложной интеллектуальной работе. Слушаешь час разговора, из которых 5 минут эффективные, а остальное – тоже важная, конечно же, модераторск...

Самый простой способ обхода блокировок доступа к сайтам любых стран Я понимаю, что пока, за использования VPN, аннонимайзеров и/или tor не применяют уголовные статьи, поэтому гораздо проще скачать какое нибудь приложение из магазина приложений и бесплатно воспользоваться им. Но где гарантия, что завтра они будут работать? Я понимаю (программ...

Оса не проскочит: разбираемся в методиках тестирования и сравнения  ̶а̶н̶т̶и̶м̶о̶с̶к̶и̶т̶н̶ы̶е̶ ̶с̶е̶т̶к̶и̶ ̶  WAF Использование WAF для защиты веб-приложений и API уже давно стало необходимостью. И дело тут не только в требованиях регуляторов (152-ФЗ и 187-ФЗ, PCI DSS), но и в здравом смысле, стоит хотя бы посмотреть на количество взломов и утечек за последнее время. На рынке WAF м...

Как мы работаем со Stateful в Kubernetes: особенности и подводные камни Всем привет! На связи Олег Сапрыкин, технический директор по инфраструктуре и тимлид DevOps-команд во «Фланте». В марте 2024 года мы с Андреем Радыгиным (ex-главный архитектор по внедрению Deckhouse) выступили на конференции DevOpsConf. Эта статья — текстовый вариант нашего ...

Гайд для системного аналитика: как управлять требованиями на разных этапах проекта. Часть 1: Инициация Жизненный цикл любого проекта включает в себя этапы инициации, планирования, исполнения, контроля и завершения. Гибкие методологии и итерационный подход используют в проектах по разработке программного обеспечения всё чаще. С ними этапы проекта повторяются несколько раз для ...

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

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

Обзор синтаксиса Tailwind CSS Салют, Хабр!Tailwind CSS – это utility-first CSS фреймворк, который отличается от традиционных CSS фреймворков вроде Bootstrap или Foundation тем, что вместо предопределенных компонентов предлагает набор utility-классов, позволяющих стилизовать элементы прямо в HTML.Utility-...

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

Линеаризация: зачем и как укрощать ratio-метрики в A/B-тестах Привет, Хабр! В прошлой статье я указал, что в A/B-тестах используются три основных типа метрик, а именно пользовательские конверсии, средние метрики пользователей и ratio-метрики. К последним обычно относят средний чек, CTR баннера, среднюю длину сессии и др. Такие ме...

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

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

Чему менеджеры по продукту могут научиться у Симпсонов Много статей написано о том как тренировать продуктовую насмотренность.Обычно они включают следующие пункты:• обучение,• расширение сети контактов для обмена опытом и идеями,• мониторинг трендов, конкурентов и пр.• практика, не только по рабочим кейсам, в идеале иметь ка...

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

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

Frontend внутри Bitrix. Использование и написание экстеншенов + SPA приложение на Vue или React В данной статье мы рассмотрим правильный подход к Frontend разработки в Bitrix. А именно разделение на расширения которые сможем подключать в любой момент времени. + напишем SPA приложение на React. Читать далее

Анемичная модель предметной области и логика в сервисах Анемичная модель предметной области (Anemic domain model) это такая модель, где сущности содержат только свойства, а бизнес-логика находится в сервисах. Ее противоположность это богатая модель предметной области (Rich domain model), где логика находится в сущностях, а cервиc...

Создание карты подключений Elasticsearch + Fluent Bit + Nginx Ingress Controller Данная статья представляет подход к решению задачи сбора и агрегации метрик от Ingress Nginx Controller для извлечения геоданных с помощью GeoIP2 и их визуализации в Elasticsearch. Читать далее

[recovery mode] Просто об архитектуре в Android В нашем скромном мире разработки Android есть общепринятый подход к проектированию приложений - Clean Architecture, который рекомендуется Google. Несмотря на множество статей, посвященных этому стандарту, вопросы и споры вокруг того, как "правильно готовить" Clean Architectu...

Играем в ReactOS Всем привет, дорогие друзья. В этой статье я хочу поделиться результатами тестов игр в ReactOS. Сразу отмечу, раз ReactOS, на данный момент стремится к совместимости с Windows Server 2003 (серверная версия Windows XP), то и игры, соответственно нужно тестировать той эпохи. Т...

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

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

ChatGPT стал умнее: представлено обновление GPT-4 Turbo OpenAI официально представила обновление GPT-4 Turbo для платных пользователей ChatGPT, которое улучшило способности чат-боты в написании, кодировании и общении. Обновление обещает более прямые и краткие ответы при использовании ChatGPT. Ранее OpenAI пообещала со времен...

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

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