Социальные сети Рунета
Среда, 27 ноября 2024

Уровни изоляции транзакций в PostgreSQL, MySQL, MSQL, Oracle с примерами на Go В данной статье обсудим проблемы, возникающие при конкурентной работе с данными, а также инструменты для их решения – атомарные инструкции, явные и неявные блокировки и уровни изолированности транзакций, реализованные в OLTP СУБД PostgreSQL, MySQL, SQL Server, Oracle с...

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

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

Введение в Brisa: новый подход к веб-разработке Brisa — это современный веб-фреймворк, который сочетает мощь серверного рендеринга и удобство клиентских компонентов. Он позволяет создавать быстрые, легкие и высокопроизводительные веб-приложения, минимизируя объем JavaScript, отправляемого в браузер. Поддержка веб-компонен...

Инспектор транзакций: управление конфликтами в СУБД В этой статье представлена авторская концепция "Инспектор транзакций", направленная на оптимизацию работы с транзакциями в системах управления базами данных (СУБД). Мы предлагаем использовать инвертированный индекс для выявления конфликтующих транзакций. Перед выполнением но...

[Перевод] Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта Разработка, развёртывание и поддержка моделей машинного обучения в продакшене может быть сложной и трудоёмкой задачей. Здесь на помощь приходит Machine Learning Operations (MLOps) — набор практик, который автоматизирует управление ML-процессами и упрощает развёртывание модел...

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

Профилирование: сравниваем инструменты pt-pmp и perf на реальных примерах Привет, Хабр! В предыдущей статье был разобран первичный анализ работы приложения, какие инструменты стоит использовать для сбора информации и как с этими инструментами работать. Напомню, что речь шла о двух утилитах: poor man's profile (pt‑pmp), которая ...

Полнотекстовый поиск в java приложениях с помощью Elasticsearch Рассмотрим, как использовать Elasticsearch в качестве поискового движка в приложениях на Spring Boot. Поговорим о стратегии реализации полнотекстового поиска, эффективной индексации сущностей JPA и их связей. Уделим внимание использованию аннотаций полей, настройке релевантн...

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

[Перевод] Функциональные HTTP-эндпоинты с Spring MVC/WebFlux и Kotlin Функциональные подходы к разработке в Spring становятся все более популярными благодаря своей гибкости и лаконичности. В новой статье от эксперта сообщества Spring АйО, Михаила Поливахи, рассматривается, как можно эффективно определять HTTP-эндпоинты с использованием Spring ...

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

Minecraft для детей 7–10 лет: как обучиться блочному программированию с Code Builder Блочное программирование нетрудно освоить с помощью Minecraft Education Edition и Code Builder. Давайте разбираться, что это за инструменты, как они знакомят детей с программированием еще в начальной школе и какую пользу могут принести.Чем обусловлена популярность визуально...

Когда нужен TypeScript: введение в мир надежного программирования Поговорим про введение в TypeScript и то, как с помощью него мы можем сделать наше программирование и наш код на JavaScript более надежными и прогнозируемыми. Меня зовут Александр Чернов, я фронтенд-разработчик в Альфе, веду подкаст ТИНОИД, обожаю плавание и влюблён в в...

Введение в ПЛИС: Материальное обеспечение курса В рамках подготовки курса "Введение в ПЛИС" были отобраны несколько относительно недорогих, но функционально разносторонних плат. Здесь я бы хотел рассмотреть возможности, которые они дают в плане обучения студентов. Читать далее

Моя парадигма программирования Введение сложное, длинное описание более потяное. Есть 2 популярные парадигмы программирования: функциональное и ООП. Я придумал следующее: в сущностях (можно написать "объектах" или любое другое слово, но это не прям объекты ООП, а в целом то, что мы используем при написани...

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

Кастомизация Django Admin. Часть 1: Структура шаблонов Давайте просто признаемся друг другу... Все мы иногда это делаем. Все мы иногда кастомизируем Django админку. Без четкого понимания того, как построены шаблоны и используемые классы любая попытка кастомизации превращается в пытку.Этот цикл статей - моя попытка помочь понять ...

Загрузка и обработка видеофайлов посредством Minio, REST и FFmpeg Всем привет! Меня зовут Павлов Денис, я .NET backend разработчик в компании DD Planet. В статье расскажу о реализации загрузки и обработки видеофайлов с использованием Minio в качестве хранилища и FFmpeg для обработки видео. Читать далее

Как с помощью Angular доработать CRM-систему: наш опыт с BPMSoft Всем привет.Меня зовут Илья Чубко, я являюсь техническим архитектором в направлении, которое занимается  внедрением CRM-системы от вендора «БПМСофт». Этот вендор –  разработчик собственной low-code платформы BPMSoft для автоматизации и управления бизнес-процессами ...

Работа с @SpyBean: использование в Spring Boot Всем привет!Тестирование — это тот самый этап разработки, где магия превращения кода в надёжное решение действительно происходит. Иногда мы пишем простые тесты, а иногда сталкиваемся с такими сценариями, где недостаточно проверить результат — нужно глубже разобраться, что пр...

[Перевод] Создание приложения для обратного поиска изображений с помощью Manticore Search TL;DR: Узнайте, как создать приложение для обратного поиска изображений с использованием Manticore Search. В статье рассказывается об истории технологии, её устройстве и практических подходах к системам поиска изображений.ВведениеОбратный поиск изображений изменил спосо...

100+ бесплатных уроков по программированию для детей и подростков онлайн Подготовили бесплатные уроки по программированию для детей в формате видео. Собрали 100+ роликов, которые помогут начать делать первые шаги в IT на примере работы с инструментами Скретча, Коду Гейм Лаба, Роблокса и других сред. Выбирайте интересующее и наиболее привлекательн...

Транзакции в Spring: сила управления данными Привет, Хабр! Сегодня разберемся с транзакциями в Spring так, чтобы всё стало ясно и понятно: зачем они нужны, как работают и как их настроить так, чтобы данные были под контролем. Начнем с самого начала. Транзакция — это единица работы, которая должна быть выполнена полно...

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

Генерация кода валидации из спецификации OpenAPI: как мы синхронизировали валидаторы данных между бэкендом и фронтендом Представьте ситуацию: ваша команда закончила интеграцию с API, все протестировала и подготовила релиз. А тут внезапно серверная команда меняет формат ответа. Фронтенд падает, QA злится, пользователи недовольны. Приходится вручную переписывать валидации, искать баги и терять ...

Пример создания Full Stack проекта, используя функциональное тестирование как инструмент дизайна(продолжение) Пример создания Full Stack проекта, используя функциональное тестирование как инструмент дизайна(продолжение)API часть и релиз проекта Продолжение...

Sidecar на Go: позволь другому заниматься твоими проблемами Привет, Хабр!В распределённых системах каждая служба выполняет свою задачу: одна отвечает за логи, другая за обработку запросов, третья за безопасность. Но не всегда удобно нагружать основной сервис дополнительной логикой. Именно здесь хорошо вписывается Sidecar — отдельный ...

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

Синтаксический анализатор на стеках и lambda-выражениях (Axolotl) Синтаксический анализатор на стеках и lambda-выражениях (Axolotl)В этой статье рассматривается практическая реализация синтаксического анализатора, основанного на стеке состояний и lambda-выражениях. Такой подход упрощает обработку синтаксиса, делая его гибким и легко масшта...

Кросс-платформенное тестирование мобильных приложений: особенности, инструменты и решения В современном мире мобильные приложения стали неотъемлемой частью нашей повседневной жизни. Их стабильная и правильная работа требует особого подхода к тестированию, особенно когда речь идёт о кросс‑платформенных приложениях, работающих в iOS и Android. В...

Генетический алгоритм: природа в действии для оптимизации сложных задач (c примером на java) Генетические алгоритмы (ГА) — это мощный инструмент для решения задач оптимизации, вдохновленный процессами эволюции в природе. Они применяются в таких областях, как маршрутизация, машинное обучение, финансовая аналитика, проектирование и многие другие. В этой статье я разбе...

GIMP Script-Fu Первый Дан. Шаг первый Здравствуй Читатель! Если ты хочешь научиться программировать расширения для GIMP с помощью Script-fu тебе сюда. Я планирую опубликовать серию статей по данной теме. И эта статья только первый шаг в увлекательный мир лайф-кодинга. Что это значит? Расширение GIMP Script-fu пр...

Как и зачем использовать Template Method в C# Template Method (он же «Шаблонный метод») — это паттерн проектирования, который определяет скелет алгоритма в методе, оставляя определенные шаги подклассам. Проще говоря, есть базовый алгоритм, но мы можно менять детали, переопределяя части этого алгоритма в наследниках.Клас...

GIMP Script-Fu Первый Дан. Реализация Хеш-Таблицы Библиотека функций к Script-fuЛюбой современный язык поддерживает множество структур данных, позволяющих программисту эффективно разрабатывать свои программы. В принципе для большинства задач решаемых прикладным программистом достаточно трёх основных структур: список, структ...

Авто-трекинг производительности Room Database Room (абстракция над SQLite) — одна из основных технологий, используемая почти во всех Android-приложениях для кэширования данных, оффлайновости, как cross-process хранилище данных и тому подобное.При этом скорость работы приложения обычно напрямую зависит от скорости рабо...

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

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

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

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

Работа с RISC-V контроллерами на примере GD32VF103 и CH32V303. Часть 1: введение и Hello world Начинаю выкладывать курс по изучению контроллеров RISC-V на примере GD32VF103 и чуть более мощного CH32V303. Основной упор будет скорее на теорию и технологии, чем на "быстрый старт" и "электронику для домохозяек". То есть ассемблер, регистры и самодельн...

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

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

Кратко разбираем Zerologon на практике и смотрим его артефакты Привет! В этой статье мы кратко рассмотрим уязвимость CVE-2020-1472 aka Zerologon со стороны красных и синих: на практическом примере научимся эксплуатировать уязвимость, используя разные векторы, а также отметим основные артефакты атаки. Читать далее

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

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

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

Microsoft и NASA запускают Earth Copilot - инструмент обработки геопространственных данных Microsoft и NASA представили Earth Copilot — инновационный инструмент на базе Azure OpenAI Service, который упрощает обработку и анализ огромных массивов геопространственных данных. Используя технологии искусственного интеллекта и обработки естественного языка, Earth Copilot...

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

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

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

Получение, обработка, анализ и визуализация спутниковых снимков с помощью библиотек: GDAL, numpy и matplotlib Эта статья является продолжением цикла статей посвященных развитию стартапа "Arrow". Ребята из моей команды тоже не отстают и те, кого больше интересует бизнес-сторона вопроса можете почитать "Старт проекта и гибкость как залог успеха: путь команды ARROW", а те кто больше по...

Библиотека CUtils Друзья! В данной статье мы бы хотели рассказать про кроссплатформенную коллекцию утилитных C++ компонентов CUtils.CUtils — это довольно полезный инструмент при разработке кроссплатформенного программного обеспечения на языке программирования C++. Читать далее

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

Рекурретные нейронные сети наносят ответный удар Рекуррентные нейронные сети (RNN), а также ее наследники такие, как LSTM и GRU, когда-то были основными инструментами для работы с последовательными данными. Однако в последние годы они были почти полностью вытеснены трансформерами (восхождение Attention is all you need), ко...

Понимание Common Expression Language (CEL): Полное руководство для начинающих Common Expression Language (CEL) - это специализированный язык выражений, разработанный Google для безопасного, эффективного и простого выполнения различных проверок и вычислений в приложениях. Проще говоря, CEL - это мощный инструмент для создания логических правил и услови...

Kafka Streams ч3: Stateless processing В предыдущих статьях [ноль, один] мы рассмотрели основные концепции Kafka Streams и сравнили их со стандартными подходами обработки потоковых данных. В этой части мы сосредоточимся на stateless processing (обработке без сохранения состояния) и поймем как применять различные ...

Автоматизация мониторинга с Monq: Управление сигналами и интеграция с Zabbix Сегодня я расскажу, как с помощью системы Monq и ее инструмента low-code автоматизации можно эффективно настраивать мониторинг и управление инцидентами на примере интеграции с Zabbix. Будет описание ключевых элементов, включая создание и обработку сигналов, управление состоя...

Swift TaskGroup на примерах В данной части из серии swift concurrency мы продолжим исследовать structured concurrency. В этот раз остановимся на сущности под названием TaskGroup. Узнаем как с ней работать и чем она отличается от Task и async let. На примере сравним аналогичные реали...

Настройка BurpSuite professional на Ubuntu 24 На данном практическом занятии мы рассмотрим процесс установки и начальной настройки BurpSuite Professional на Ubuntu 24 (22).BurpSuite — это мощный и широко используемый инструмент для тестирования безопасности веб-приложений, который помогает специалистам по безопасности ...

OpenShift и Kubernetes: сравнительный обзор, основные различия OpenShift и Kubernetes (K8s) выбирают чаще всего для оркестровки контейнеров. Эти инструменты сложно сравнивать напрямую, поскольку Kubernetes — открытое решение (open source), а OpenShift — продукт (дистрибутив) на основе Kubernetes. В этой ста...

Разбираемся с сетевым программированием на Rust Язык программирования Rust стал достаточно популярен благодаря своей надежности, безопасности и производительности. В рамках данной статьи мы не будем подробно обсуждать преимущества данного языка, так как на эту тему уже написано много статей. Вместо этого мы рассмотрим раз...

Введение в AI Background Remover с использованием TensorFlow.js для React-приложений Я создал "React Selfie AI Background Remover" — компонент React, который использует TensorFlow.js для удаления фона с изображений прямо в браузере.✨ Основные особенности:•

Востребованность и полезность 3D для управления строительными проектами через СОД «Трехмерное моделирование» (3D), уже много лет используется при реализации строительных проектов. 3D технологии позволяют создавать точные и детальные модели зданий и сооружений, что помогает улучшить качество проектирования и минимизировать ошибки в строительных проектах. «...

Полезные фичи С++ на примере организации пайплайна В рамках микросервисной архитектуры достаточно легко делать «реактивные» сервисы: к вам приходит событие или вызов HTTP-метода, и в ответ на это происходит какое-то действие. Однако бывают более сложные сценарии, когда надо собрать некоторое количество информации или событий...

SQL для Junior Data Engineers: примеры бизнес-задач Вход в профессию Data Engineer требует не только владения инструментами для построения данных, но и уверенного знания SQL для решения задач различной сложности. Несмотря на то, что многие SQL-запросы могут казаться «аналитическими», на практике именно Data Engineers часто от...

Настройка no-code приложения ALM (Управление активами и пассивами) Привет! На связи опять команда “БизнесАнализ” от ПрограмБанка и я, Мария, её руководитель.Продолжаю цикл статей с примерами использования self-service инструментов хранилища “БизнесАнализ”.В этой статье показываю пример самостоятельной настройки аналитиком бизнес-приложения ...

Логирование FreeRTOS через Virtual Com Port Отладка встраиваемых систем с микроконтроллерами часто затруднена из-за невозможности отслеживания процессов в первые секунды после запуска прошивки. Библиотека логирования для STM32 и FreeRTOS решает эту проблему, позволяя получать детальные журналы событий с самого старта ...

[Перевод] Асинхронный Rust в трех частях. Введение Async/await, или «асинхронный ввод‑вывод», — это относительно новая функция языка, которая позволяет программам выполнять несколько задач одновременно. Это своего рода альтернатива многопоточности, хотя программы на Rust часто используют и то и другое. Асинхронный ...

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

Пользовательские аннотации кода для PVS-Studio Как часто ваш статический анализатор не справляется с пониманием нюансов исходного кода? Наверняка это происходит чаще, чем хотелось бы. В этой статье мы расскажем о том, как мы с этим боролись, а именно о нашем новом механизме пользовательских аннотаций. Читать далее

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

Назначение языка программирования Elixir Я являюсь в России одиноким поклонником языка программирования Elixir. Почему я делаю такой пессимистичный вывод. В России язык Elixir не пользуется популярностью:·         русскоязычные сайты, посвященные Elixir, постепенно умирают и...

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

Helm CEL: Валидация Helm чартов с помощью CEL Каждый, кто работал с Helm чартами, сталкивался с необходимостью валидации values.yaml. Стандартный подход с использованием JSON Schema работает, но часто становится громоздким и ограниченным. В этой статье я хочу представить Helm CEL — плагин, который позволяет использовать...

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

Выходящая с 1889 года газета The Wall Street Journal получит ИИ-функцию Известная газета The Wall Street Journal, выходящая с 1889 года, анонсировала тестирование новой функции, использующей искусственный интеллект для создания аннотаций к статьям. В верхней части новостных материалов появится блок «Key Points» с основными те...

Путь разметки данных для NER: от Open Source до Prodigy Распознавание именованных сущностей (Named Entity Recognition, NER) — это одна из самых востребованных задач в обработке естественного языка (NLP). Чтобы создать качественную модель для NER, требуется тщательно размеченная обучающая выборка, а процесс её создания может занят...

Kodu Game Lab для детей: учимся создавать игры в 5-6 лет Даже дошкольник 5–6 лет может понять базовые принципы «взрослого» программирования на примере написания визуального кода. В этом ему поможет Коду Гейм Лаб – среда, предназначенная для разработки простых 3Д-игр. Писать программы в ней нужно с помощью готовых блоков, как в Scr...

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

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

Построй свой собственный голосовой помощник с помощью Raspberry Pi и Chat API Содержание• Введение • Построение собственного голосового помощника • Настройка Raspberry Pi • Подключение микрофона, клавиатуры и мыши • Аспекты питания • Реализация кода • Обнаружение слова активации • Распознавание речи и преобразование в текст • Использование Chat API • ...

По следам Жака Арсака — о программировании игр Старая книжечка "Программирование Игр и Головоломок" - наверное попадалась многим из нас. Изданная в 1985 в наши дни она смотрится архаично и сподвигнуть кого-то программировать приведённые в ней игры (и подобные им) - затруднительно. А жаль :)Попробуем немного освежить этот...

Управление гневом. Изучаем Angr — фреймворк символической эмуляции Для подписчиковAngr — эмулятор на стероидах. Он кросс‑платформенный и поддерживает большинство популярных архитектур: с ним на Linux можно искать уязвимости в PE32, а на Windows — ковырять прошивки роутеров. В этой статье я на примере работы в Linux покажу, как его использов...

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

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

Исследование опенсорс-инструментов в области ML/Data от ИТМО: выводы и инсайты Новые инструменты в области ML/Data меняют правила в опенсорсе ― позволяют создавать решения быстрее и дешевле и это трансформирует существующие практики. Мы в центре «Сильный ИИ в промышленности» ИТМО задались вопросом: куда мы уже пришли и как эта отрасль изменится в ближа...

Паттерны проектирования на языке Kotlin Паттерны проектирования на языке KotlinЭта статья является продолжением. Первая часть статьи здесь.Поведенческие паттерны13. Chain of Responsibility (Цепочка обязанностей)Описание: Позволяет передавать запросы последовательно по цепочке обработчиков.Когда использов...

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

[Перевод] Путь к мастерству: Как стать успешным разработчиком

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

Дизайн аналитических инструментов для управления СИМ в мегаполисе: вызовы и решения В этой статье мы рассмотрим основные трудности, с которыми сталкиваются операторы транспортных систем при мониторинге средств индивидуальной мобильности (СИМ) в условиях мегаполиса, и раскроем роль UX/UI‑дизайна в решении этих задач. Опишу подходы к&...

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

Программирование для детей 14 лет: направления, видеоуроки, книги 14 лет – возраст, в котором можно изучать программирование на примере использования текстовых языков и вспомогательных сред. Lua и Roblox, C# и Unity – примеры удачных связок. Основа в виде понимания алгоритмов и базовых принципов кодинга – плюс, но даже без этого увлеченные...

[Перевод] Туториал по Spring Data Envers для начинающих Команда Spring АйО перевела статью, которая отлично подойдёт тем, кто ещё не знаком со Spring Data Envers. В статье на простых примерах объясняется, как отслеживать изменения данных в приложении, используя этот инструмент. Читать далее

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

Как инженеру техподдержки трансформироваться в мобильного разработчика Цель статьи: Показать и продемонстрировать кейс как можно перейти в разработку из позиции инженера технической поддержки.Основные тезисы:1) Важный пункт статьи – необходимо УЖЕ быть в IT и работать в этом направлении; 2) На данный момент я работаю Application менеджером...

Разработка бота для Telegram на платформе .NET ВведениеTelegram — один из самых популярных мессенджеров в мире, предлагающий такие функции, как групповые чаты, каналы, голосовые и видеозвонки, а также возможность создания ботов. В данной статье мы не будем ставить цель показать, как создать с нуля приложение a-la "Hello,...

ИИ-система по извлечению информации со сканов счетов: от разметки до реализации Для автоматизации бизнес-процессов часто требуется обработка бумажных документов со сложной структурой — например, счетов, накладных и так далее. Частый сценарий: есть почтовый ящик, на который поступают сканы оплаченных счетов. Этот почтовый ящик разбирается, и информация о...

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

Переезд с Elasticsearch на OpenSearch: рассказываем про нюансы и архитектуру нашей системы логирования Привет, коллеги! Я Дарья Санькова, эксперт направления инфраструктурного мониторинга в Cloud.ru. Сегодня хочу поделиться нашим опытом перехода с Elasticsearch на OpenSearch для работы с логами. Расскажу, почему мы решили это сделать, какие ключевые отличия между системами мы...

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

HMAC-SHA256 и Telegram Mini App Хеш-функции это по-настоящему есть широта возможностей и в этой статье мы прикоснемся к одной из, а именно - аутентификация сообщения или, проще говоря, определение подлинности тех или иных присланных нам данных.Мы с вами начнем с теории и проникая в глубь мы закончим пример...

Реляционная алгебра для DAX: ALL в итераторе SUMX для SUMMARIZECOLUMNS Привет, Хабр! Язык запросов DAX популярен и эффективен для построения дашбордов в Business Intelligence, и за счет свой функциональной природы DAX в чем-то ближе к реляционной алгебре, по сравнению с SQL. Особенности DAX удобно рассмотреть на основе примеров DAX-запросов, пе...

Глубокая оптимизация сверточных нейронных сетей: Анализ методов улучшения модели на примере CIFAR-10 Сверточные нейронные сети (CNN) стали основой для обработки изображений и компьютерного зрения. Однако их обучение требует тщательной настройки архитектуры и гиперпараметров, что может быть сложной задачей, особенно при работе с большими наборами данных. В этой статье мы под...

rustsn — Open Source проект генерации кода и взаимодействия с уже существующем через LLM Я работал над созданием инструмента под названием rustsn, который позволяет генерировать, компилировать и тестировать код с использованием LLM (Large Language Models). Изначально идея заключалась в том, чтобы автоматизировать процесс написания небольших фрагментов кода — так...

Приватность и безопасность в интернете с Web3: что нужно знать каждому Цель статьи - привести простой и понятный пример применения Web3 на примере работы социальных сетей. Читать далее

Как построить башню в Minecraft на Python – туториал для детей Построить здание в Майнкрафте – это просто с помощью языка «Питон». Считать его сложным не стоит: с первыми шагами справится даже начинающий ребенок. А мы предлагаем бесплатный урок строительства посредством кода: он поможет нам создать полноценную башню и разместить ее в ви...

[Перевод] Создание незаметного вредоносного ПО для Windows ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Использование этих инструментов и методов против хостов, для которых у вас нет явного разрешения на тестирование, является незаконным. Вы несете ответственность за любые последствия, к которым может привести использование этих инструментов и методов...

[Перевод] 10 концепций JavaScript, которыми должен овладеть каждый разработчик Node.js Данная статья является переводомNode.js быстро стал стандартом для создания веб-приложений и системного ПО благодаря возможности использовать JavaScript на серверной стороне. Популярные фреймворки, такие как Express, и инструменты вроде Webpack способствуют его широкому расп...

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

Инфраструктура для Data-Engineer DBT dbt является мощным фреймворком, который включает в себя два популярных языка: SQL + Python.При помощи dbt можно создавать разные "слои" данных или выделить dbt только под один слой, к примеру dm.При помощи понятного и всем известного SQL интерфейса можно создавать разные мо...

Кроссплатформенные приложения на Python с Flet и FastAPI: Полное руководство по разработке Сегодня я покажу вам, что для создания полноценных кроссплатформенных приложений достаточно одного языка — Python. С помощью всего нескольких библиотек и фреймворков можно легко обойтись без JavaScript для веб-разработки, без Kotlin и Swift для мобильных приложений и даже бе...

RxJS Interop в Angular 18: основные изменения и преимущества ✏️

Разыменовываем NULL на RISC-V ядре scr1 Во время работы в ASIC дизайн центре я потратил немало времени на отладку ошибок и падений ядра, просматривая временные диаграммы на шинах AXI от процессора к памяти. Иногда оказывалось, что адрес чтения из памяти оказывался 0x00000000 - классический случай разыменования нул...

[Перевод] Как работают Kubernetes Services: управление трафиком с помощью iptables В статье на примере приложения Podinfo показывается, как Kubernetes с помощью iptables управляет трафиком, предназначенным для этого приложения. Вместе с автором вы развернёте Podinfo, включите трейсинг iptables и проанализируете его вывод. Это поможет разобраться в сетевой ...

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

Куда утекает производительность? Ищем ответ в логах Greenplum Привет, Хабр!Greenplum — это база данных, созданная специально для больших данных и аналитики. Ее основное преимущество — это архитектура массово параллельной обработки, сокращенно – MPP, которая позволяет масштабироваться до огромных объемов данных, не теряя производительно...

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

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

Outcome-driven innovation (ODI)  — фреймворк для стратегии, основанный на CX Фреймворки встречаются нам часто, например, их достаточно много в программировании (Swift UI, если мы говорим про IOS-разработку), в маркетинге (SWOT-анализ), в продакт-менеджменте (RICE для приоритезации). Любой фреймворк, который мы применяем в той или иной деятельности, д...

Обновление FaceFusion v3.0.0 — ультимативной нейросети для дипфейков Всем привет!В этой статье взглянем на FaceFusion версии 3.0.0 — мощный инструмент для замены лиц на изображениях и видео!Для использования понадобится всего лишь фотография в профиль. Также в статье расскажу, как не париться с установкой и запустить FaceFusion в один клик. Ч...

Разработка служб для Windows на C++ В данной статье описан пошаговый процесс разработки служб для операционной системы Windows с использованием языка программирования C++.В статье будет представлена теоретическая база по работе служб в Windows, рассмотрено их общее устройство и будет реализовано приложение, с ...

Кластеры и мир: хроника высокодоступного Pub/Sub в Redis В статье рассматриваются основные принципы и особенности использования Redis в режиме Pub/Sub для масштабируемых и высоконагруженных приложений. Описаны два подхода к обеспечению высокой доступности — Redis Sentinel и Redis Cluster, их преимущества, ограничения и примеры нас...

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

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

Деревья выражений на практике: динамическая фильтрация в C# с использованием Asp.NET Core В нашем предыдущем уроке мы обсудили ключевые моменты деревьев выражений, их примеры использования и ограничения. Любая тема без практического примера, особенно если она связана с программированием, не имеет большого смысла. В этой статье мы рассмотрим вторую часть деревьев ...

Введение в синтетические данные для ML: зачем они нужны? Генерация документов, лиц и даже симуляция целых атак: как далеко можно зайти в создании и использовании синтетических данных?В этой статье Артур Казукевич, Data Science Engineer в Data Light, расскажет, почему синтетика становится крупнейшей тенденцией в сфере ML, как такие...

Введение в методологию Agile и ее влияние на тестирование Всем привет! Я Алена, QA Lead :) Сегодня я хочу обсудить важную тему, которая касается всех нас в сфере разработки ПО — методология Agile и ее влияние на тестирование. Внедрение Agile произвело революцию в процессе разработки, и тестирование не осталось в стороне. В этой ст...

Spring Patterns. Часть 2. Spring + ThreadLocal. AOP. Transaction cache Всем привет. Я разрабатываю приложения с использованием Java, Spring Boot, Hibernate.  В прошлой статье я показал реализацию паттерна Spring Fluent Interface. При помощи которого можно инкапсулировать похожие действия внутри приложения в модуль, предоставлять клиентском...

Модульные CSS-архитектуры в Next.js: BEM, SMACSS, OOCSS и их применение Привет, Хабр!Сегодня пробежимся по теме, которую не назовёшь новенькой, но без неё — ни шагу в CSS-вёрстке в Next.js. Модульные CSS-архитектуры — это необходимый инструмент для тех, кто хочет создать прочную основу для масштабируемого проекта.В статье разберём, как с помощью...

Functional options in Go Варианты работы с конструкторами в Go, паттерн функциональных опций и генератор кода, который делает API предсказуемым и позволяет сосредоточиться на разработке, а не на шаблонном коде. Читать далее

Управление Данных с Elasticsearch: Обучение и Практика В эпоху больших данных эффективный поиск и анализ информации становятся критически важными для бизнеса и разработки. Elasticsearch — это мощный инструмент, который позволяет быстро и эффективно обрабатывать огромные объемы данных, предоставляя пользователям возможность наход...

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

Программирование для детей 1–4 классов: знакомство младших школьников с IT Каждый современный ребенок, обучающийся в начальной школе, неизбежно вовлекается в IT-пространство. С 7 лет он начинает использовать компьютер не только для игр, но и для учебы, при этом есть условное требование: нужно уверенно владеть рядом программ. А еще современные дети,...

[Перевод] Визуальные трансформеры (ViT) С момента своего появления в 2017 году в публикации Attention is All You Need трансформеры стали доминирующим подходом в обработке естественного языка. В 2021 году в статье An Image is Worth 16x16 Words трансформеры были успешно адаптированы для задач компьютерного зрения. С...

[Перевод] Автоматическая система Netflix для восстановления заданий после сбоев, основанная на машинном обучении Это — первый материал из серии статей, посвящённой использованию анализа данных и машинного обучения (Machine Learning, ML) в Netflix. Мы применяем то, о чём собираемся рассказать, совершенствуя автоматизацию оперативной деятельности. Делается это ради по...

Как использовать User  Story mapping при создании цифрового продукта Декомпозиция фич и их приоритезация — это обязательные этапы проектирования продукта. USM – инструмент, который нам в этом помогает. С ним получается работать над продуктом, опираясь на реальные  потребности пользователей и цели бизнеса. Как итог – строим разработку так...

Что такое Affiliate Marketing — Партнерский маркетинг Affiliate marketing, или партнерский маркетинг — это популярная модель интернет-маркетинга, которая позволяет компаниям продвигать свои товары и услуги через партнеров, выплачивая вознаграждение за привлеченных клиентов или выполненные целевые действия. Эта модель стала одно...

Книги и статьи про спецпроцессоры: от «волны Макимото» до систолических массивов и ASIP Спецпроцессоры не настолько известны, как универсальные процессоры. Действительно, куда им до популярности той же архитектуры RISC-V! Которая, впрочем, спроектирована в том числе для использования множества специализированных ускорителей. Современный универсальный процессор ...

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

Обзор k8sgpt: как искусственный интеллект помогает обучать DevOps-инженеров В статье мы расскажем, что за утилита k8sgpt, как её поставить, какие есть полезные опции и как подключить к ней AI. Также покажем, какого уровня диагностику можно провести с помощью этого инструмента и на какие ответы чат-бота можно рассчитывать. Читать далее

Рекламные платформы 2024: что выбрать — Telegram Ads, ВКонтакте, Яндекс.Директ, Авито или Одноклассники? Когда я впервые начал работать с рекламой в Telegram, многие мои коллеги и эксперты сомневались, стоит ли вообще инвестировать в эту платформу. Она казалась слишком отличной от привычных VK, Директа и даже Авито. Но опыт показал, что Telegram Ads — это не просто временный тр...

[Перевод] Почему ИИ рано поручать код-ревью Кажется, кого ни спроси — всякий сегодня мастерит инструмент для код-ревью на основе ИИ. Тем самым все обещают совершить революцию в программировании и управлении кодом. Но мы, попробовав почти все имеющиеся на рынке инструменты код-ревью и написав собственный, пришли к выво...

Валидация модели данных в ASP.NET Core 8.0 на основе HTMX Валидация данных на стороне сервера с HTMX 2.0. Разбираемся с валидацией модели данных на основе платформы ASP.NET Core.В статье мы освоим базовую реализацию валидации данных на стороне сервера. На стороне сервера мы используем самый простой способ коммуникации - HTTP.Знаком...

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

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

HamClock и Pi-Star — запускаем сервер радиолюбительского приложения на «малинке» Привет, Хабр! Это Виктор Сергеев, автор команды спецпроектов МТС Диджитал. В детстве я очень любил фантастику и обожал представлять себя в кабине космического корабля с кучей экранов, светящихся индикаторов и переключателей. Рабочее место современного радиолюбителя очень пох...

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

30 лучших игр в Roblox в 2024 году Собрали и рассмотрели 30 лучших игр в Роблоксе для детей и выделили актуальные проекты, паркуры, хорроры и другие жанры. Предлагаем ознакомиться с подборкой: почти точно удастся найти вариант для занимательного досуга на популярной онлайн-платформе.Мы используем платформу Ro...

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

Этическая идентичность программистов: как навигация в мире эко-программирования в условиях технологического прогресса В стремительно развивающейся индустрии разработки программного обеспечения появляется новое измерение идентичности: оно сосредоточено вокруг экологической ответственности и устойчивого развития. Как инициатор Eco-Programming Alliance, я обнаружил, что программисты всё чаще с...

GIMP Script-Fu Первый Дан. Погружение в программирование графики Первым делом в окне script-fu я научился определять процедуры и запускать их:(define (square x) (* x x)) (square 5) А потом понеслось .....Простые примеры работы с изображениями, слоями, выделениями в GIMP. Примеры рисования линий и окружностей. Читать далее

Элегантная реализация Long Press обработчика с помощью CSS анимации В веб-разработке часто возникает необходимость обрабатывать различные типы взаимодействий пользователя, включая короткие и длинные нажатия. В этой статье мы рассмотрим изящный способ реализации обработчиков для этих двух взаимодействий.▎Зачем нужен Long Press?Long Press — эт...

Повышение эффективности воронки продаж. Автоматизация продаж.  Контрольные точки. Часть 3 Привет, дорогой друг. Настало время поделиться информацией и про третий инструмент автоматизации. В статьях ранее я рассказывал про 2 инструмента из своего топ-3 списка:  Читать далее

CSS-анимации: 20 полезных библиотек для разработчиков Анимации в веб-дизайне давно стали стандартом. Они делают интерфейсы более живыми, помогают привлечь внимание к важным элементам и улучшают пользовательский опыт. Эти 20 библиотек помогут быстро добавить анимации в ваши проекты. 1. Animate.cssОписание: Простая в использ...

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

GIMP Script-Fu Первый Дан. Точки, Контуры, Кисти и Градиенты Создать абстракцию неких объектов на лиспе, это значит создать некий функциональный интерфейс обрабатывающий объекты данного типа. Нам необходима абстракция точки в двумерном пространстве, значит надо хранить две координаты. Для хранения двух значений в лиспе идеально подход...

Разыскивается ARM-нетбук Ben Nanonote или WM8650 Привет, Хабр! Публикую специально в чулан, дабы не задеть ничьи чувства. Для подготовки следующей статьи о моддинге и программировании для необычных девайсов (можете посмотреть примеры у меня в профиле), я ищу китайские ARM-нетбуки конца нулевых-начала десятых годов. Стоили ...

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

[Перевод] Функция property() в Python: добавляем управляемые атрибуты в классы Из этого руководства вы узнаете, как:- Создавать управляемые атрибуты или свойства в классах- Выполнять ленивую оценку атрибутов и создавать вычисляемые атрибуты- Сделать классы более «питоничными», используя свойства вместо методов геттер и сеттер- Создавать свойства только...

Интеграция SwiftUI и Realm в React Native на новой архитектуре В данной статье мы разберём процесс создания React Native приложения для iOS с использованием SwiftUI и Realm на основе новой архитектуры. Особое внимание уделим основным шагам интеграции Turbo Modules и Fabric, а также тому, как эти инструменты повышают производительность и...

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

Автоматизация тестирования с использованием SoapUI — Практическое руководство Привет! Меня зовут Александр Крылов, я разработчик Siebel CRM в Московском кредитном банке. После разработки очередной задачи, которая полностью основана на интеграциях, перед нами встал вопрос о функциональном тестировании, перед передачей на полноценное тестирование. ...

Разработка Task Manager с нуля до полнофункционального продукта Если Вы когда-нибудь задумывался о том, как создать своё собственное веб-приложение, надеюсь, эта статья окажется вам полезна.Мы пройдём весь путь — от установки необходимых инструментов и настройки окружения до разработки интерфейса и деплоя приложения на сервере. Каждый эт...

Когда проблема — не проблема. НЖЯ — инструмент Теории Ограничений Я, Александра Брызгалова — практик, консультант и сертифицированный эксперт по Теории Ограничений. Специализируюсь на том, что обучаю компании и команды принимать решения, приближающие к цели, и помогаю внедрять в управленческие практики теорию ограничений (ТОС). В этой стат...

Как заставить LLM работать на вас – разбираемся на примере задачи сопоставления товаров на маркетплейсе Привет, Хабр! На связи команда продуктового матчинга ecom.tech. В этой статье мы расскажем, как используем LLM для задачи сопоставления товаров на маркетплейсе. Как перевести задачу с продуктового языка на язык промптов. Что делать, если ни одна LLM не обучается на нужн...

Что делать, если WAF не умеет работать с JSON: готовое решение Сегодня расскажем вам о нестандартном подходе к защите веб-приложений с помощью PTAF PRO. Мы с коллегами столкнулись с интересной задачей: как защитить уязвимое приложение от вредоносных JSON-запросов, если WAF официально не поддерживает их обработку в пользовательских прави...

Оптимизация архитектуры: делим крупные классы с помощью миксинов Всем привет! Это статья для тех, кто интересуется таким фреймворком, как Flutter. А написал ее я, Николай Омётов, руководитель Flutter разработки IT-компании Mad Brains. Сегодня обсудим, как делить большой файл класса с помощью миксинов. Для начала давайте разберемся, ...

Как сократить время ответа в 2 раза, добавив одну строку кода Okko – один из крупнейших онлайн-кинотеатров в России c нагрузкой в несколько тысяч запросов в секунду, в котором персональные рекомендации занимают важное место. Для улучшения пользовательского опыта нужно не только предоставить качественные рекомендации, но и обеспечить...

Дуалистичная типовая система JavaScript VS Единая объектная система Python. Краткий обзор Сегодня поговорим о объектах, объектной архитектуре и способах взаимодействия с ними на примере языков программирования Python и JavaScript. Получилось небольшое исследование, противопоставляющее прототипирование и ООП.Давайте разбираться! Читать далее

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

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

Новый оператор безопасного присваивания в JavaScript: ?= Современная разработка на JavaScript часто сталкивается с задачами асинхронной работы и обработки ошибок. Как правило, для этих целей используются конструкции try-catch и async-await. Однако они могут утяжелять код и усложнять его восприятие. Чтобы решить эту проблему, был п...

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

[Перевод] Строим ETL-конвейер для машинного обучения с помощью Kafka, Clickhouse и Go В этой статье я поделюсь с вами своим опытом использования Golang, Kafka и Clickhouse на примере простого ETL-конвейера для параллельной передачи JSON-данных в базу данных с последующим прогнозированием температуры на основе машинного обучения. Читать далее

Feature-Sliced Design (FSD): Основы и практические примеры архитектуры Когда я только начинал свою карьеру фронтенд-разработчика, часто сталкивался с проблемами поддержки кода в проектах. Со временем я понял, что структура кода имеет решающее значение. Так я узнал о Feature-Sliced Design. Этот подход помогает разбивать проект на функциональные ...

[Перевод] Как я использую git Недавно я пытался объяснить коллеге, какие у меня критерии при формировании пул реквеста — когда стоит объединять что‑либо в один пул реквест, а когда нет. И я заметил за собой фразу «ну, кроме…» несколько раз и решил записать, как я исполь...

Всем про LLM. Как рассказать про трансформеры одинаково хорошо и индустриалам, и исследователям Привет, Хабр. Меня зовут Вика, я работаю в AIRI, преподаю в Школе Анализа Данных и Сколтехе и вместе со своими коллегами занимаюсь обработкой естественного языка, изображений и видео, а также иными задачами, где могли бы пригодиться трансформерные модели....

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

Моя подборка ChatGPT Телеграм ботов 1. Free Chats GPT BotПерейти в ботЭтот минималистичный бот предоставляет удобный доступ к ChatGPT и отличается высокой производительностью. Он был запущен недавно, поэтому предлагает большие лимиты, которые ежедневно обновляются. Простота и надежность делают его хорошим выбо...

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

Как развернуть сервис в Kubernetes: гайд для начинающих Привет, Хабр! Сегодня мы попробуем развернуть простой сервис в Kubernetes на примере KaaS в облачной платформе Рег.ру. В качестве самого сервиса будем использовать imgproxy — минималистичный сервис подготовки изображений для web с предельно простым API. Этот гайд будет ...

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

Система сборки Дистрибутив Radix cross Linux использует собственную систему сборки , которая, в свою очередь, является вполне самостоятельным продуктом.Любой разработчик может воспользоваться системой сборки, поддерживающей богатый набор инструментов, для создания собственных программ.Сист...

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

Заметки по ROS: Простое введение в launch файлы PlanHow it worksUses casesProblems w launch files 5.Examples of existing launch filesPractical example (optional)Это вторая из серии статей о робототехнической платформе ROS. Первая статья здесь. В этой статье я расскажу о launch файлах http://wiki.ros.org/roslaunchСтандарт...

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

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

[Перевод] Почему Racket? Почему Lisp? Великолепный Racket и практичный Typography стали возможны благодаря издательской системе под названием Pollen. Я создал Pollen с помощью языка программирования Racket. Racket является потомком Scheme, который, в свою очередь, является потомком Lisp Читать далее

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

[Перевод] Отправка метрик Pi-Hole в Graylog с помощью Zabbix В начале 2021 года я написал статью, посвященную сбору детальных метрик Pi-Hole с помощью telegraf и influxdb с последующим отображением на дашбордах Grafana. Прошло несколько лет и я перешел на Graylog (для логирования) и Zabbix (для контроля за ошибками и производительност...

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

Зачем нужны TMS и как мы пришли к TestRail: опыт Рунити Привет, Хабр! Меня зовут Анна Асабина, я занимаюсь тестированием бэкэнда доменного направления в Рунити. В этой статье мы затронем основные понятия Test Management System и поговорим о плюсах и минусах внедрения TMS в проект. Также решим, какие важные черты должны присутство...

Резервное копирование системы виртуализации Basis.DynamiX с помощью RuBackup Привет всем, кто заботится о данных и не собирается их терять. Сегодня мы рассмотрим тему бэкапа виртуальных машин (ВМ) на платформе виртуализации Basis.DynamiX (далее — DynamiX). Для этого будем использовать систему резервного копирования (СРК) RuBackup.В ста...

Software Architect vs Solution Architect Я расскажу вам о двух типах архитекторов: Software и Solution. Статья не про должность или функциональные обязанности, а про образ мышления. Должность и то, что написано в трудовой книжке могут быть какие угодно: системный архитектор, архитектор ПО, ведущий инженер или главн...

10 SDK, чтобы улучшить ваше мобильное приложение SDK (Software Development Kit) — комплекс инструментов для расширения функциональности мобильных приложений и доступа к новым опциям и возможностям ПО. При этом каждый SDK ограничен своим набором компонентов и закрывает определённые задачи бизнеса. В статье расскажем о базов...

Пишем свой Http Kafka Sink Connector В данной статье приведу реализацию своего kafka http sink connector. Он не претендует на универсальность, но возможно поможет разобраться как разработать свой connector. Читать далее

Почему рейтинги лгут: разбираемся, как и почему рейтинги BI не говорят всей правды Мы, Luxms, создаём передовые решения для обработки и анализа данных. В этой статье мы поговорим о том, как на основе рейтингов можно пропустить подходящий вам BI-инструмент и о том, как выбрать неподходящий.Рейтинг кажется находкой для бизнеса: посмотрел кто в топе, выбрал л...

Память R-DIMM со скоростью до 8000 МТ/с. XPG представила свою первую разогнанную память AICORE DDR5 R-DIMM Принадлежащий компании Adata бренд XPG представил свою первую разогнанную оперативную память — AICORE DDR5 R-DIMM. Она ориентирована на мощные рабочие станции.  фото: XPG Данная память поддерживает скорость до 8000 МТ/с, что в 1,6 раза больше, чем у стандарт...

Системно-функциональный подход к анализу развития материи Вселенной Исследована эволюция материи через призму базовых подходов ТРИЗ: системно-функционального и диалектического. Выявлен эволюционный принцип последовательного структурирования материи посредством уменьшения фактора случайности. Читать далее

Безопасность цепочек поставок ПО. Построение процессов с помощью OSS Привет, Хабр! Рассказываем об одном из вариантов применения Open Source инструментов Software Supply Chain Security. Коллеги по цеху попросили выложить небольшой его обзор сюда:) Эта статья является краткой текстовой версией моего доклада с конференции PHD2. Если тема вас за...

Сравним ruby, lisp и python На примере простых алгоритмов (вычисление расстояния между точками, сумма членов геометрической прогрессии, формирование массива простых чисел по алгоритму Эратосфена, числа Фибоначчи) сравниваются три языка программирования - Lisp, Python и Ruby. Сравнение проходит по следу...

Паттерн Builder в Java на котиках Привет, друзья! Сегодня рассмотрим реализацию паттерна «Строитель» в Java. Паттерн может превратить необъятный хаос параметров в аккуратную и управляемую конструкцию. И всё это на примере наших пушистых друзей — котиков. Читать далее

[Перевод] Понимание кругового DNS Для OpenFreeMap я использую серверы за Round Robin DNS. В этой статье я пытаюсь понять, как браузеры и CDN выбирают, какой из них использовать. Что такое циклический DNS?Обычно, когда вы обслуживаете веб-сайт с помощью VPS, например Digital Ocean или Hetzner, вы д...

Как настроить ежедневную сводку о работе Яндекс.Директа в Телеграм? Эта статья для маркетологов и владельцев бизнеса, которые хотят оперативно получать данные о результатах своих рекламных кампаний без необходимости заходить в рекламные кабинеты. Разберем, как автоматизировать сбор статистики и отправлять ежедневные отчеты в Telegram с помощ...

Немного про UEFI и GRUB В данной статье пойдёт речь об особенностях UEFI на примере переноса Debian Stretch с MBR на UEFI. Опишу так же разницу между MBR и UEFI, так как я её воспринимаю.Кроме общей части, ключевая часть статьи про формирование GRUB EFI файла grubx64.efi во время grub-install и про...

Буферный пул для максимальной скорости: квест по победе над Nginx! Вы когда-нибудь ловили себя на том, что пытаетесь выжать каждую миллисекунду из своего HTTP-сервера? Возможно, вы слышали, что «Nginx — король скорости», и думали: «Вызов принят!» Что ж, давайте поговорим об обработке небольшого контента (менее 100 КБ) в десять раз быстрее о...

Бутстрап в PySpark Всем привет! Меня зовут Илья Черников, я аналитик больших данных в X5 Tech, сейчас занимаюсь аналитикой и оценкой активностей CVM маркетинга экспресс-доставки “Пятёрочки”.В статье я расскажу о том, как мы решали вопрос автоматизации оценки эффективности большого количества м...

Тюним запросы в EF Core с помощью интерсепторов Entity Framework обладает достаточно богатым встроенным языком запросов, позволяющим решать широкий спектр задач. Но бывают ситуации, когда либо сгенерированные с его помощью запросы оказываются недостаточно оптимальными, либо возможности EF покрывают не весь спектр функцион...

[Перевод] Two-Tier Data Model архитектура: концепт и мысли Краткая цель статьи — сделать потоки данных проще, более тестируемыми и управляемыми с DTO и Runtime Model структурой.Эта статья — набор мыслей и экспрессии опыта моего текущего видения этой проблемы, как комбинации опыта от работы над проектами и мо...

Telegram Web App, FastAPI и вебхуки в одном приложении: Создаем Telegram-бот с веб-интерфейсом для приема заявок Сегодня мы создадим полноценное веб-приложение на FastAPI, которое будет взаимодействовать с Telegram-ботом через MiniApp и вебхуки. В основе проекта — асинхронное взаимодействие с базой данных SQLite с помощью SQLAlchemy, что позволит нам реализовать масштабируемое и эффект...

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

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

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

Создание собственной системы F&R в «Магните»: функциональный дизайн Одна из крупнейших розничных сетей России, «Магнит», разрабатывает современную систему прогнозирования и пополнения товаров (F&R). Цель проекта – создание и внедрение нового решения, которое закроет все потребности ритейлера на ближайшие 10–15 лет. Для решения амбициозны...

Увеличиваем выручку с помощью математики: как учитывать бизнес-контекст в оптимизационных задачах Привет! Я Эдуард, в ecom.tech руковожу группой прогноза спроса для Мегамаркета. В этой статье хочу рассказать, что меняется в работе с алгоритмами машинного обучения, когда начинаешь учитывать ограничения и нюансы бизнес-задачи. Расскажу на примере одного исследования – как ...

Хостинг Docker-контейнеров: обзор Российских платформ в 2024 Контейнеризация - уже сформировавшийся тренд, который занял прочное место в разработке. А Docker давно стал повседневным инструментом в работе большинства разработчиков. Технология контейнеризации позволяет добиться большей универсальности и гибкости при запуске приложений, ...

Создание кастомного Kubernetes Scheduler для StatefulSet В этой статье мы рассмотрим процесс создания кастомного scheduler'а для Kubernetes, ориентируясь на Kubernetes Scheduling Framework.Обычно для назначения подов на вычислительные узлы используется стандартный планировщик, который, проанализировав различные параметры, автомати...

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

ИИ в логистике: отслеживаем транспортные средства  на производственной территории с помощью нейросети Весной на Хабре я рассказывал о том, как для дипломного проекта создавал приложение для отслеживания объектов спортивного мероприятия. Из моего пет-проекта вырос полноценный реальный проект. Знания и навыки в области нейронных сетей, трекинговых библиотек и компьютерного зре...

Microsoft поделилась подробностями об улучшении безопасности Windows Recall Компания Microsoft опубликовала подробную статью, в которой рассказала о всех ключевых улучшениях безопасности функции Windows Recall. Изменения призваны устранить потенциальные уязвимости и обеспечить конфиденциальность пользовательских данных. Основные улучшения: Данные ...

Реализация горизонтального кеширования в PHP с Redis Cluster Привет, Хабр!Сегодня мы рассмотрим одну из задач высоконагруженных приложений — горизонтального кеширования. Когда система начинает испытывать давление под наплывом пользователей, стандартный кеш не всегда справляется. В таких ситуациях на помощь приходит Redis Cluster. Расс...

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

JSON как альтернатива CSV в Postman, или как описать тестовые данные быстрее и лучше Я старший преподаватель направления функционального тестирования в «ЛАНИТ Экспертизе». К нам в штат приходят люди из разных профессий и с разным уровнем знаний. Поэтому в компании организованы курсы обучения практикам тестирования, которые уже стали базовыми. Одной из них яв...

Middleware на уровне сетевого стэка в Go Привет, любители Go! Сегодня мы рассмотрим, как создать middleware на уровне сетевого стэка в Go. Middleware позволяет добавлять полезные функции к HTTP-запросам и ответам: логирование, аутентификация, обработка ошибок и многое другое. Читать далее

Не играй в догонялки со Spring — Explyt Spring plugin для IDEA Community ВведениеВсем привет. После моей предыдущей статьи о Maven плагине, где я предложил новый подход к реализации и создал свою версию для IDEA (вместо того чтобы писать свой мини-мавен, я делегировал всю основную работу ему посредством Maven плагина), меня пригласили работать на...

Microsoft выпустила предварительную версию AI Shell Стартовало публичное тестирование инструмента AI Shell, который призван интегрировать возможности искусственного интеллекта непосредственно в командную строку. AI Shell позволяет взаимодействовать с различными большими языковыми моделями и ИИ-агентами в разговорной манере, ...

Взлом паролей методом брутфорса, уязвимой машины в Kali GNU/Linux с hydra, medusa, ncrack — просто Всех приветствую читатели Хабра!Сегодня я поведую о том как установить, настроить, и эксплуатировать уязвимости заранее уязвимой машины Metasploitable2-Linux. В данной статье я скорее даже поделюсь своим опытом взлома уязвимого хоста в виртуальной машине.Но для начали правов...

Apple Intelligence на Андроид? Обзор ИИ, портированных на мобильные устройства с локальным запуском Мир мобильных технологий не стоит на месте, и сегодня на смартфонах можно запускать нейросети, которые совсем недавно требовали мощных компьютеров. Stable Diffusion, языковые модели, такие как *LLaMa, и другие ресурсоёмкие ИИ теперь работают прямо у вас в кармане. В этой ст...

Какие бывают нейросети и чем YandexGPT, Google Gemini, ChatGPT и GigaChat от Сбера отличаются друг от друга Нейросети — это математические модели, которые уже изменили подход к решению сложных задач во множестве областей, от обработки изображений и анализа текстов до написания кода и помощи в проведении научных исследований. Основные технологические гиганты, такие как Yandex, Open...

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

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

Принципы SOLID на примерах из жизни и разработки Задача этой статьи только одна - попробовать уложить принципы SOLID на понятных «бытовых» примерах, а уже потом посмотреть, как оно может работать на практике - в коде.Итак, SOLID - это 5 принципов, которые используются при разработке приложений. На каждый принцип по букве:1...

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

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

Восстановление данных с зашифрованного Linux тома с помощью cryptsetup В этой статье мы разберем восстановление данных с зашифрованного с помощью LUKS тома NAS.Внимание: в самом худшем случае для восстановления данных этим способом потребуется свободное место равное двум объемам зашифрованного раздела. Например, если у вас есть зашифрованный ра...

[Перевод] Python REST API: Flask, Connexion и SQLAlchemy (часть 2) Большинство современных веб-приложений работают на основе REST API - методологии, позволяющей разработчикам отделить разработку пользовательского интерфейса (FrontEnd) от разработки внутренней серверной логики (BackEnd), а пользователи получают интерфейс с динамически подгру...

Скрипка — деревянный хайтек TL;DR: Расскажу о конструкции струнных смычковых инструментов на примере скрипки. Так как тема изобилует богатейшей мифологией, я постарался использовать проверенную информацию, совпадающую в разных источниках. Наглядно покажу детали конструкции на цифровой копии скрипки, ко...

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

Что такое CPA оффер и лучшие примеры 2024 года Современный мир интернет-маркетинга предлагает множество моделей монетизации для бизнеса. Одной из самых популярных и эффективных является модель CPA (Cost Per Action), которая позволяет платить за конкретные действия, совершенные пользователями, а не за клики или показы рек...

Код из цитат Шварценеггера и песен Битлов: как мир искусства проникал в эзотерические языки программирования На Хабре выходило много статей про эзотерические языки программирования: про самые неординарные, про 5 наиболее странных, примеры кода на 39 эзотерических языках. Как раз когда я готовил этот текст, появился панорамный обзор по теме. Меня это не остановило, потому что хотело...

Опыт быстрого старта MIS в банке Привет! Я – Мария, руководитель производственного центра в компании “ПрограмБанк”. Наше направление – внедрение типовых и заказных решений по сбору данных и расчету финансовой, управленческой, регуляторной отчетности.Продолжаю серию статей с примерами использования no-code и...

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

Министерство юстиции США может потребовать разделения Google Google под угрозой: Министерство юстиции США готовит беспрецедентные меры, которые могут привести к разделению интернет-гиганта и перераспределению сил на рынке онлайн-поиска.

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

Хакеры выкрали данные из изолированных от Сети устройств Исследователи сетевой безопасности из ESET обнаружили два сложных набора инструментов для проведения без преувеличения изощрённых атак, цель которых — кража конфиденциальных данных. Но уникальность и опасность этой ситуации в том, что эти инструменты обнаружены на устройства...

[Перевод] Как мы нашли уязвимость в SQLite при помощи LLM ВведениеВ нашем предыдущем посте Project Naptime: Evaluating Offensive Security Capabilities of Large Language Models мы рассказали о фреймворке для исследований уязвимостей при помощи языковых моделей и продемонстрировали его потенциал, усовершенствовав показатели совр...

Декодирование BPSK Модуляции из Звука В этом тексте я реализовал возможность передачи бинарных данных звуком через BPSK модуляцию. Написал инструкцию как это можно делать.Вся обработка происходит в post processing режиме на PC над записанным wav файлом.Изучение ЦОС на примере работы со звуком - это доступная ка...

Кратко про Ensemble методы с примерами Сегодня мы рассмотрим Ensemble методов, которые помогают сделать модели более точными и устойчивыми к переобучению. Рассмотрим три основных подхода: Bagging, Boosting и Stacking, и посмотрим, как их реализовать на Python. Читать далее

«ИИ-тестировщик»: от идеи к реализации Привет, Хабр! На связи Денис Киров, руководитель отдела тестирования компании «ДОМ.РФ Технологии». В этой статье я расскажу, как проходило внедрение ИИ в процессы тестирования в нашей команде.Искусственный интеллект в том или ином виде внедряется во все процессы: от бытовых ...

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

Учимся делать игры без pygame: Создание графического интерфейса на Python Привет, Хабр! Сегодня мы научимся делать графический интерфейс на python, используя Tkinter. Эта статья очень короткая, так как мы только начинаем.Tkinter — это стандартная библиотека для создания графических интерфейсов в Python. Она предоставляет простой и удобный способ с...

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

«Ну и чё это вы тут продаёте мне?» Правила подготовки основного продукта для маркетолога или почему они не покупают? Ты маркетолог или специалист смежной профессии. Это статья про тип продукта «Core offer» или по-русски «основной продукт». Статья сугубо профессиональная, она  подробная и с примерами, но написана простым языком.Цель — дать понимание, как нужно готов...

Apple оштрафовали за обман со своими банковскими картами Apple Card Apple и Goldman Sachs были оштрафованы на общую сумму 89 миллионов долларов Бюро защиты прав потребителей (CFPB) США за неправильное обращение с транзакциями Apple Card и введение в заблуждение клиентов относительно беспроцентных вариантов оплат...

Функциональное тестирование Kubernetes Operators с Kubebuilder Привет, Хабр!Сегодня поговорим о том, как тестировать Kubernetes Operators с помощью одного замечательного фреймворка. Функциональное тестирование — это не просто «хорошо бы», это необходимость. А вот как сделать качественное тестирова...

DIY AR монитор в промышленности Привет, Хабр!В предыдущей своей статье я упомянул о реализации устройства, которое разрабатывалось для облегчения процесса настройки датчиков обслуживающим персоналом, а прикрепленный опрос показал, что вам интересна тема реализации данного устройства. Ну что ж, я ценю ваше ...

Ускорение LUP-разложения матрицы с помощью OpenCL Я являюсь автором проекта по математическому моделированию прикладной механики и в работе моей программы до 90% вычислительного времени уходит на решение системы линейных уравнений. Цель этой статьи сугубо практическая - найти оптимальный метод решения системы линейных уравн...

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

Keycloak. Мапинг учеток через mTLS c двойной проверкой в kubernetes Продолжаем с делиться экспертизой отдела Security services infrastructure (департамент Security Services компании «Лаборатории Касперского»). В данном посте мы разберем, как легко настроить mTLS, обращаясь к ресурсам в k8s через ingress-контроллер, и подсоединить это все к k...

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

Быстрее пули: как найти счастье с PostgreSQL В этой статье мы расскажем о том, как эффективно реализовать полнотекстовый поиск с помощью PostgreSQL. Узнайте, как улучшить скорость и точность поиска по текстовым данным, используя такие инструменты, как tsvector, tsquery и индексы GIN, и как эти возможности могут значите...

Обзор готовых решений для построения портала IDP и когда они не подходят: анализ на примере кейса компании Evrone Построение IDP — один из наиболее эффективных методов оптимизации работы команд разработки. Но внедрению внутренних платформ и получению профита от них обычно предшествует немало барьеров: необходимость инвестиций, выделение ресурса специалистов вдолгую, потребность в соотве...

[Перевод] Как AI изменит Голливуд? От трюков Тома Круза до цифровых двойников Привет, на связи Шерпа Роботикс. Сегодня мы перевели для вас статью про борьбу за рабочие места в Голливуде на фоне внедрения искусственного интеллекта в кинопроизводство. Но так ли ужасна возможность создать свой фильм с помощью AI для любого обычного человека? Без миллионо...

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

Разбор JIT-Компилятора AsmX и краткая биография его создателя На выходных я наткнулся на статью от комментатора, в которой был представлен  Обзор языка программирования AsmX. После прочтения этой статьи я решил поискать в Telegram диалоги создателя языка, к которым мы вернемся позже. Цитирую список пунктов от обзорщика Василия, с ...

Как автоматизировать мониторинг контрагентов в 1С — интеграция «Глобас.API» и «1С: Управление холдингом» Сегодня можно обезопасить себя и при этом не тратить 2-3 часа на проверку одного контрагента. Контролировать другие компании можно в базе 1С. Рассказываем об инструменте на примере интеграции для агрохолдинга. Читать далее

Инфраструктура для Data-Engineer BI-tools BI (Business Intelligence) – это инструмент или несколько инструментов, которые помогают собрать данные в нужный вид и посмотреть на бизнес со стороны данных.Чаще всего BI-инструментами пользуются аналитики. Они строят дашборды (витрины), выполняют Ad hoc задачи и в целом пр...

[Перевод] Автоматизированное тестирование API с использованием Python. Работа с JSON и JsonPath JSON — один из самых распространённых форматов данных, используемых для передачи и получения данных в современных API. Важно глубоко понять его. В этой статье я даю краткий обзор: в основном это структура данных вида key: value, содержащая примитивные типы данных, такие...

Как реализовать методы скроллов через Appium для Android-приложений Привет, меня зовут Сергей и я SDET-специалист в IT-компании SimbirSoft. В своей практике мне приходится тестировать как веб-, так и мобильные приложения на Android. Особенность тестирования мобилок в том, что шаги автотеста нужно максимально приблизить к действиям пользовате...

Техники работы с User stories. Example Mapping и Scenario Mapping Привет Хабр! Меня зовут Татьяна Ошуркова, я разработчик и аналитик. Использование пользовательских историй или user stories является распространенным подходом в работе с требованиями.В этой статье я подробно разберу две техники работы с пользовательскими историями: Example M...

Хостинг для бота: как без лишних усилий запустить Python бота в Docker-контейнере и почему это удобно Боты стали незаменимыми помощниками уже почти для любого бизнеса. Чат‑боты автоматизируют обработку запросов, улучшая пользовательский опыт и снижая нагрузку на сотрудников. Боты для Telegram‑каналов и других мессенджеров помогают распространять нужную информа...

[Перевод] Давайте использовать OpenTelemetry со Spring Команда Spring АйО перевела статью, раскрывающую преимущества использования OpenTelemetry для мониторинга и трассировки Spring Boot приложений.В статье показано, как интеграция с OpenTelemetry с использованием OTLP и других компонентов позволяет легко встроить стандартизиров...

Алгоритм Прима В данной статье я бы хотел объяснить работу алгоритма Прима. Алгоритм используется для нахождения минимального остовного дерева. Сам алгоритм очень прост, в статье хотел бы поделиться своей реализации на языке Go. Читать далее

Обучающий маркетинг сложных продуктов — как тратить на привлечение клиентов меньше в 3-5 раз. Инструкция по применению В 80% случаев к нам приходят клиенты, которые уже исчерпали ресурс сарафанного радио, попробовали вкладывать в рекламу и получили заказчиков, которые не могут сформулировать задачу и желаемый конечный результат. В результате — слитые рекламные бюджеты, неквалифицированные за...

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

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

[Перевод] Встраивание вредоносного исполняемого файла в обычный PDF или EXE ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Использование данных инструментов и методов против хостов, для которых у вас нет явного разрешения на тестирование, является незаконным. Вы несете ответственность за любые проблемы, которые могут возникнуть в результате использования этих инструмент...

Машинное обучение без кодинга для фронтенд-задач. Разбираем работу фреймворка MediaPipe Меня зовут Ярослав Французяк. Я фронтенд-разработчик в GARPIX. В этой статье расскажу о таком инструменте, как фреймворк MediaPipe от Google. На основе готовых моделей он позволяет разработчикам внедрять сложные функции компьютерного зрения и обработки мультимедиа в веб-прил...

Где PostgreSQL выигрывает у Oracle DB Если вы стоите перед выбором между PostgreSQL и Oracle DB, то эта статья для вас. Разберем где PostgreSQL побеждает Oracle. Будет код и примеры — всё, что нужно для практического сравнения. P.S: эта статья не про то, какой PSQL хороший в отличии от Oracle, а про то, в чем P...

SQLAlchemy 2.0 + Python Generic, или как создать универсальный репозиторий для работы с БД Доброго времени суток, товарищи, эта статья, так скажем, продолжение предыдущей статьи об SQLAlchemy 2.0 для новичков, в этой статье мы узнаем что такое Python Generic и как его можно использовать в наших целях при взаимодействии с БД. Читать далее

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

Веб-доступность. Бесконечная лента Про то, что такое бесконечная лента (Infinity Scroll, Feed) - есть много статей, постов, гайдов по реализации самого функционала, и, кажется, рассказывать про то, как именно ее реализовать и что это такое - не идея этой статьи. Так же, как и рассказывать о плюсах и минусах э...

Null-безопасность в Java: когда нули тоже имеют значение В компании “Свой Банк” мы активно развиваем лучшие практики и стандарты в Backend-разработке. Но, прежде чем выработать хотя бы одну практику, необходимо изучить материалы, разобраться в теме и выработать подходящий вариант. Поэтому в данной статье затронем основные понятия ...

Уведомление в telegram при блокировке пользователя AD или локального пользователя Данная статья описывает как реализовать уведомление в телеграм при блокировке пользователя Windows. Я постараюсь полностью описать процесс реализации уведомления о блокировке, уточнения и поправки категорически приветствуются. Читать далее

Как у нейросетей работает внимание? Статья про self-attention и cross-attention Удивительно, как нейросети похожи на нас. У них тоже есть внимание, и на примере коня на ракете я расскажу, как оно работает! Читать далее

5 причин начать писать статьи Добрый день! Меня зовут Анжелика, и уже 2 года я работаю в компании РСХБ-Интех на должности ведущего инженера. Сегодня хочу рассказать вам, чем может быть полезно такое занятие, как написание статей, зачем вообще тратить на это свое драгоценное время, как правильно использов...

Пробуем Flutter в Telegram Mini Apps: Насколько хорошее решение для разработки? Привет, Хабр!Меня зовут Богдан, и я Flutter-разработчик, работающий в аутсорсе. В этой статье на моем примере я расскажу о создании веб-приложения на Flutter для Telegram Mini Apps. Хотите узнать, насколько применим Flutter в вебе, как разработать и запустить свое приложение...

Создание компонента Apache Camel Приветствую, сообщество!Меня зовут Александр, я java разработчик в компании БФТ. Тружусь я на проекте СМЭВ-адаптера, где мы занимаемся транзитивной обработкой сообщений. В нашу зону ответственности входит несколько микросервисов, которые обрабат...

Prolog: три портрета через 50 лет В 2024 году языку логического программирования Prolog исполнилось пятьдесят лет! Оказывая дань уважения, мне хотелось бы в небольшом историческом очерке рассказать о научном контексте семидесятых годов прошлого века, в котором зародилась как теория логического программирован...

Ctrl+S для Kubernetes: Volume Snapshots Привет, Хабр!Сегодня поговорим о Volume Snapshots — штуке, которая позволяет создать мгновенный «снимок» данных в Kubernetes, практически как Ctrl+S, только для объёмов дисков. Volume Snapshot — это снимок данных на уровне диска, позволяющий сохранить тек...

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

cgroups и namespaces в Linux: как это работает? Привет, Хабр! Сегодня рассмотрим изоляции процессов и управления ресурсами в Linux, изучив возможности cgroups и namespaces. Разберёмся, как работают контейнеры изнутри и научимся создавать собственное изолированное окружение без Docker. Читать далее

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

Избавляемся от Android в api-модулях Небольшой туториал на тему «Как уменьшить количество Android-модулей в проекте при помощи оберток над Android-классами»На решение, которое будет описано ниже, меня натолкнула статья Оптимизация Gradle: избавляемся от Android-модулей. В ней приведен синтетический бенчмарк, из...

Что такое covariant в Dart Ключевое слово covariant было внедрено в Dart для борьбы с важной проблемой переопределения методов. В статье содержатся разбор проблемы, описание работы covariant и пример его использования для решения проблемы. Читать далее

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

Краткое пособие по переводу между системами счисления с основаниями 2, 8, 10, 16 Краткое пособие по переводу между системами счисления с основаниями 2, 8, 10, 16....В статье разобраны алгоритмы с примерами перевода чисел между NS с основаниями 2, 8, 10 и 16 Читать далее

[Перевод] Этот учёный хочет постепенно заменить ваш мозг Американское агентство, занимающееся революционными разработками в области здравоохранения, наняло учёного, предлагающего крайне радикальный план победы над смертью. Его идея? Заменить части тела. Все. Включая мозг. Ожидается, что Жан Эбер, новый сотрудник агентства перспект...

[Перевод] Под капотом GCN Здравствуйте! Сегодня мы погружаемся в тему графовых сверточных сетей (GCN) и ключевых принципов, стоящих за ними. Если вам интересно узнать больше, я настоятельно рекомендую перейти на статью на Habr, где вы найдёте подробный анализ и актуальные примеры применения GCN.Введе...

[Перевод] Как Vercel микрофронтенды внедрила Узнайте, как Vercel сократил время сборки и повысил скорость разработки, сохранив при этом удобство работы с микрофронтендами.Основной веб-сайт Vercel, некогда являвшийся единым крупным сайтом Next.js приложение, обслуживающее как посетителей нашего веб-сайта, так и панель у...

“Ну тут недельки на две”. Оцениваем задачи На примере стройки рассмотрим подходы к оценке задач. Пример фантазийный. Ни один рабочий не пострадал.  Читать далее

Как написать D-Bus сервис, работающий на системной шине, на Rust Привет, Хабр! На связи Федотов Максим, ведущий разработчик в "Открытой Мобильной Платформе". В этой статье я хочу поделится нашим опытом создания D-Bus-сервиса на Rust, который работает на системной шине.Если Вы только недавно начали изучать темы ОС GNU/Linux, Rust и D-Bus, ...

Рейтинг инструментов BPMN Не так давно проводила на работе практический интенсив по нотации BPMN, и сегодня хочу поделиться своим личным рейтингом инструментов, которые я использую для создания бизнес-процессов в этой нотации.В этом рейтинге мы рассмотрим 5 самых популярных инструментов, сравнив их п...

Как управлять процессами в инфобезе: часть 1. Используем ITIL Киберустойчивость — неотъемлемое качество бизнеса в современных реалиях. Чтобы её достичь необходимо не только внедрять современные технологии, новые продукты и решения, но и грамотно управлять внутренними и внешними процессами. В этом помогают ИТ-методологии — в частности, ...

CBLT — безопасный, быстрый и минималистичный веб-сервер на языке программирования Rust Для изучения нового языка программирования я использую следующий подход. Сначала я читаю учебник по этому языку программирования, в котором объясняются синтаксис, идиомы, философия и принципы работы языка. После этого я пишу небольшой пет-проект на этом языке программировани...

Расширения VSCode для комфортной работы с проектами Для работы с проектами существует куча редакторов кода и IDE (VSCode, NeoVim, SublimeText, WebStorm и т.д.). В данный момент наиболее популярны VSCode и Webstorm и у каждого есть свои плюсы и минусы. Webstorm является примером прекрасного IDE от компании JetBrains, где многи...

Intel Core Ultra 9 285K протестировали в играх Как оказалось, компания Intel наконец-то решила проблему с отказом и высоким энергопотреблением своих настольных процессоров 13-го и 14-го поколений, но не так, как многие ожидали. Дело в том, что новая флагманская серия процессоров Core Ultra 200S, которая выйдет 24 октября...

Балуемся кластеризацией и синхронизацией: как устроена мгновенная загрузка фото в Яндекс Диске Всем привет! Меня зовут Дима, я тимлид команды Яндекс Диска. Сегодня расскажу, как обрабатывать сотни терабайт загружаемого контента в день и быстро доставлять его в ленту со всеми фотографиями пользователя. Лента выглядит как локальная галерея на телефоне, но может содержат...

Топ-10 горячих криптокошельков для удобного и безопасного хранения криптовалют Представьте себе, что у вас есть деньги — рубли, доллары или евро. Для того чтобы безопасно хранить их и использовать в магазинах или на рынке, вам нужен обычный кошелек. Без него никак — деньги нельзя просто носить в карманах, это небезопасно и неудобно. С криптовалютой сит...

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

Архитектурные особенности on-premises продуктового решения Несмотря на активно развивающийся SaaS‑сегмент рынка и кажущееся стремление компаний использовать облачные ресурсы, отдельные направления IT‑продуктов на рынке продолжают оставаться востребованными крупным бизнесом в виде дистрибуций, разворачиваемых в со...

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

VPN с Mobile IP на Raspberry Pi. WG туннель Для умных дядь в статье ничего интересного, это статья про обычный туннель. Оно для самых маленьких, но отчаянно нуждающихся. :)Когда я стал упорядочивать "знания" ввиде этой статейки, и понял, что в итоге получилось, то заметил, что информации по данной теме, оказывается, п...

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

[Перевод] ZombAI: промпт-инъекция в Claude Computer Use Несколько дней назад Anthropic выпустила Claude Computer Use, который представляет собой модель + код, позволяющий ИИ управлять компьютером. Он делает скриншоты для принятия решений, может выполнять команды bash и так далее.Это круто, но, очевидно, несёт и массу рисков, ведь...

Rust-Bert: высокопроизводительные NLP-пайплайны на Rust Привет, Хабр!Сегодня у нас на повестке дня rust-bert — одна из самых мощных библиотек для обработки естественного языка в экосистеме Rust. Если вы уже знакомы с Hugging Face и их библиотекой Transformers на Python, то rust-bert для вас. Эта библиотека переносит state-of-the-...

По мотивам одного сбоя в БД Oracle Всем привет! Я Тимур, инженер в команде Databases Т-Банка. Занимаюсь решением проблем и настройкой производительности СУБД Oracle и PostgreSQL  Oracle — это СУБД для наших критичных  нагруженных legacy систем, системы построенные на новой архитектуре используют Pos...

[Перевод] Создание XDP eBPF программы с использованием C и Golang: пошаговое руководство В сегодняшнем мире, где всё тесно связано и ориентировано на данные, производительность сети имеет решающее значение для обеспечения эффективного взаимодействия и оптимального пользовательского опыта. XDP и eBPF — это мощные технологияи, которые помогают обрабатывать пакеты ...

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

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

Обзор библиотеки RxPY Привет, Хабр!Сегодня поговорим о хорошей библиотеке для управления потоками данных в Python – RxPY — реализации Reactive Extensions для нашего любимого языка. В версии 4.0.4 эта библиотека получила ряд улучшений, и сегодня мы разберем её основной функционал. Читать далее

Практики SRE: стандартизация логов Меня зовут Дима Синявский, я SRE-инженер в Ви.Tech — это IT-дочка ВсеИнструменты.ру. Наш сайт создает более 100 тысяч заказов каждый день. У нас много сервисов и много разработчиков, которые пишут много логов. Пишут их с целью разобраться в ситуации при сбое. В них нужно уме...

Шины данных для очень больших инсталляций, или Почему большим компаниям сложно с опенсорсом Как технический менеджер в Яндексе я отвечаю за эксплуатацию больших кластеров, через которые мы передаём данные, — для этого мы используем YDB Topics, собственный аналог Apache Kafka, о котором я уже рассказывал. Но если посмотреть не ...

Управление ядрами ЦПУ при обработке сетевого трафика Привет, Хабр! Не так давно столкнулся с задачей разработки альтернативного решения для ограничения сетевого трафика. Такая задача возникла в рамках разработки системы лицензирования для продукта класса NGFW (Next Generation Firewall). Используя такую систему ограничений можн...

Lasso, Ridge и кастомные регуляризаторы: основы Сегодня разберем тему, которая хоть и звучит скромно — Lasso, Ridge и кастомные регуляризаторы, — но на практике буквально спасает модели от переобучения. Если у вас бывало так, что модель на тренировочных данных показывает отличные результаты, а при проверке на валидации те...

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

ParallelBeautifulSoup (BF4-hack) Предлагаю протестировать скрипт написанный с помощью cloude 3.5 Sonnet с использованием специального промта. Сейчас и сам пробую, не знаю что из этого получится. Во всяком случае будет шаблон для реализации собственных идей. Scrapy конечно хорошая библиотека, но у него много...

[Перевод] Python REST API: Flask, Connexion и SQLAlchemy (часть 1) Python REST API: Flask, Connexion и SQLAlchemy (часть 1)Большинство современных веб-приложений работают на основе REST API - методологии, позволяющей разработчикам отделить разработку пользовательского интерфейса (FrontEnd) от разработки внутренней серверной логики (BackEnd)...

[Перевод] Асинхронный Rust. Часть первая: Futures В введении мы посмотрели на пример асинхронного Rust без какого‑либо объяснения, как он работает. Это дало нам несколько вопросов для размышления: Что такое асинхронные функции и возвращаемые ими «future»? Что делает join_all? Чем отличается tok...

Использование библиотеки ActiveSession Сама по себе эта статья не является самостоятельным произведением. По факту она служит дополнением к основной, обзорной, статье по новой библиотеке ActiveSession. Эта библиотека предназначена для использования в веб-приложениях, серверная часть которых написана на ASP.NET C...

[Перевод] О зацикливании рекомпозиции в Jetpack Compose Фотограф: Laura Cleffmann: https://www.pexels.com/ru-ru/photo/20001993/Jetpack Compose — это мощный инструмент, который упрощает создание UI в Android, но его освоение может быть не таким уж простым. Многие разработчики сталкиваются с неожиданными результатами и ошибками, ко...

[Перевод] Безопасный Docker в продакшене В новом переводе от команды Spring АйО вы узнаете, как минимизировать риски и обеспечить безопасность Docker-контейнеров с помощью CIS Benchmark рекомендаций и автоматизированных инструментов вроде Docker Bench for Security. Читать далее

Интеграция Unity кода в React Native Всем привет! На связи снова команда dev.family с весьма необычной темой. В этот раз поговорим об играх. А именно, как интегрировать Unity в React Native.На самом деле, это очевидно, что на React Native игру не напишешь. Оно и не надо. Движков, позволяющих разрабатывать игры ...

Борьба за таланты: как программа бенефитов укрепляет HR-бренд С каждым годом конкуренция за кадры во всем мире усиливается, и по прогнозам, эта тенденция будет только нарастать. Согласно данным Superstaff, к 2030 году глобальная нехватка талантов может достичь 85,2 млн работников, что превышает населе...

Мощь CSS-масок Декабрь 2023 года стал значимой датой в истории развития CSS-свойства mask: все современные браузеры в своих последних версиях обеспечили его полную поддержку, теперь без использования своих вендорных префиксов. А это означает, что данное свойство прочно и надолго вошло...

Очередная реализация fluid sim методом Эйлера, но в блокноте WL. Часть 1 Здесь мы рассмотрим простой метод симуляции несжимаемой жидкости в 2D для визуальных эффектов в интерактивном блокноте

SDR радиоприёмник в FPGA плате Марсоход3GW2 (Gowin) Когда-то давно, аж 2013-й год, на Хабре была статья "Простой SDR приёмник на ПЛИС" автора @iliasam. Я попытаюсь повторить этот проект на другой элементной базе: FPGA плата Марсоход3GW2, микросхема Gowin GW1NR-LV9QN88PC6/I5. Законы Цифровой Обработки Сигналов кажется остаются...

Краткий обзор библиотеки dApp Сегодня я расскажу вам о библиотеке dApp для Python — мощном инструменте для создания децентрализованных приложений на базе блокчейна. Она предлагает все необходимые функции для взаимодействия со смарт-контрактами, управления данными и обеспечения безопасности приложений. Ит...

MoexBuilder: как я создаю библиотеку на Python. Часть 1 Привет, Хабр! Это моя первая статья и в ней я хочу не только поделиться опытом, полученным в ходе реализации собственного проекта, но и услышать обратную связь\критику\предложения\замечания относительно принятых мною решений. Моя статья не предложит вам "подписаться на телег...

[Перевод] Интервью с Эдсгером В. Дейкстрой (2001), часть 2: программирование как искусство доказательств Вторая часть интервью 2001 года Ф. Франы с Э. Дейкстрой.На этот раз в основном про то, как важно сначала формализовать требования, а потом писать код. Продолжаем вспоминать историю программирования, которая помогает ответить на вопрос,...

[Перевод] Как я получил 50000 + 0 долларов за уязвимость в Zendesk Привет, меня зовут Дэниел, мне пятнадцать лет, я имею опыт программирования, в свободное время занимаюсь поиском багов. В посте я расскажу безумную историю о том, как обнаружил один баг, затронувший больше половины компаний из списка Fortune 500. Поприветствуйте Zendesk Во...

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

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

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

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

Разбор ERC-6900: Модульные абстрактные аккаунты и плагины После появления абстрактных аккаунтов в Ethereum (ERC-4337) было разработано большое количество различных реализаций таких аккаунтов. Все они абсолютно несовместимы между собой, а еще это громоздкие монолиты, которые часто включают в себя кучу логики, даже той, которая польз...

Органические полупроводники для дисплеев и не только: краткий патентный анализ У многих на слуху неорганические полупроводники: кремний, германий и прочие, о которых мы писали или упоминали во многих наших статьях на Хабре.Органические полупроводники — это вещества с большим числом углеродных связей типа C=C, образующих систему с регулярным чередование...

Почему Scheme? ВведениеЯзык Scheme (произносится "ским"), которому в следующем году исполняется 50 лет, является языком программирования, занимающим необычное место среди прочих. Это язык, который гораздо больше изучают, чем потом на нём пишут. Скорее это язык для развития ума программиста...

Что такое фотограмметрия? Зачем 3D-сканеру встроенная фотограмметрия? Разбираемся в технологии SHINING 3D Фотограмметрия – это высокотехнологичный метод сканирования объектов, который использует фотокамеры или их комбинации для точного измерения формы, размера и положения объектов в пространстве. Этот процесс позволяет создавать 3D модели объектов, используя обычные фотографии, ...

Защита сайта от накрутки ПФ: превращаем ботов в тормоза для их серверов В этой статье мы перегрузим сервер бота ресурсоемким скриптом - чтобы боту было дорого и больно заходить на сайт. Боту проще не иметь дело с таким сайтом чем покупать отдельный сервер для его поддержки.Как заставить бота не заходить на сайт, с инструкцией, кейсом и примером ...

Apple представила Final Cut Pro 11 — первую за 13 лет новую версию данного программного пакета Компания Apple выпустила новую версию своего достаточно популярного ПО впервые за 13 лет.  фото: Apple Представленный вчера программный пакет Final Cut Pro 11 интересен тем, что Final Cut Pro 10 вышел в 2011 году, то есть 13 лет назад. По какой причине Apple не об...

Кэширование с FeignClient: как ускорить микросервисы и стать героем проекта Кэширование с FeignClient: ускоряем микросервисы и радуем пользователейСтатья о том, как добавить кэширование в FeignClient с помощью Caffeine Cache и сделать микросервисы молниеносными. Простая настройка, минимум кода, максимум пользы — пошагово на примере Java и Spring Boo...

Внутренние платформы в российском DevOps: ключ к сокращению Time to Market и снижению затрат В статье мы подробно рассмотрим результаты отчёта State of DevOps 2024 про состояние инструментальных платформ в российских компаниях. Мы обсудим, как с 2020 года изменилось количество компаний, использующих платформы, и выявим тренды, связанные с ростом доли организаций, не...

ByeDPI + Redsocks на OpenWRT: дарим свободу локальной сети на дровах (на примере ASUS RT-N12 ROM/ОЗУ: 8/32 Мб) Решение проблемы зачастую упирается в использование роутеров с ограниченными ресурсами, таких как ASUS RT-N12 VP B1 с ROM/ОЗУ 8/32 Мб. В этой статье я расскажу, как настроить связку ByeDPI и Redsocks на роутере с OpenWRT, даже если ваш роутер далеко не топ по характеристика...

[sobjectizer] Что нового в SO-5.8.3 и so5extra-1.6.2? Недавно была зафиксирована версия 5.8.3 для SObjectizer и версия 1.6.2 для сопутствующего ему проекта so5extra. В данной статье попробую рассказать о том, что и зачем появилось в новых версиях.Для тех же, кто про SObjectizer слышит впервые, очень кратко: это относительно неб...

Код, который работает: Unit и интеграционное тестирование для повышения надежности ПО Всем привет, меня зовут Андрей Федотов, я бэкенд-разработчик в компании «Цифровая Индустриальная Платформа».Как сказал Кент Бек: «Многие силы мешают нам получить чистый код, а иногда не удается даже получить код, который просто работает». В данной статье я расскажу историю н...

[Перевод] Виртуальные потоки Java: разбор тестовых сценариев Виртуальные потоки вызвали большой интерес в сообществе разработчиков Java, включая такие фреймворки, как Open Liberty. Команда инженеров по производительности Liberty провела оценку, чтобы выяснить, может ли эта новая фича принести пользу пользователям или даже потенциально...

CI/CD Kubernetes платформа Gitorion. Реплицируемый NAS для Highly Available кластера Kubernetes Привет всем! В предыдущей статье в рамках построения Highly Available варианта CI/CD Kubernetes платформы Gitorion мы рассмотрели реализацию Highly Available плоскости управления Kubernetes, разнесенную в два дата центра и способную пережить падение любого из них. Инстансы G...

Кастомный электробайк DAB Motors 1α черпает вдохновение в геймерской культуре Компания DAB Motors из Байонны (Франция) выпустила лимитированную серию электрических мотоциклов 1α, дизайн которых черпает вдохновение в геймерской культуре. А именно – в полупрозрачных корпусах кастомных игровых компьютеров ручной сборки. С подсветкой, водяным охлаждением ...

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

От чего зависит комиссия Bitcoin Загруженность мемпула Bitcoin, источник Прямо сейчас мы находимся в счастливое время низких комиссий Bitcoin. Средний размер комиссии за транзакцию составляет 0,000023 BTC ($1,46), а в реальности переводить BTC можно ещё дешевле. Но так бывает не всегда, и в экстремальные...

[Перевод] Анализ CVE-2024-43044 — от чтения файлов до удаленного выполнения кода в Jenkins через агентов ВведениеJenkins — это широко используемый инструмент для автоматизации задач, таких как сборка, тестирование и развёртывание программного обеспечения. Он является важной частью процесса разработки во многих организациях. Если злоумышленник получает доступ к серверу Jenkins, ...

[Перевод] Интеграция библиотек C/C++ в .NET приложения с использованием P/Invoke В своей практике я несколько раз сталкивался с задачей интеграции и взаимодействия с низкоуровневыми языками программирования (C/C++) и низкоуровневыми API, такими как Windows API.Этот туториал упрощает мой опыт использования низкоуровневых языков и API, а также демонстрируе...

Очередная реализация fluid sim методом Эйлера, но в блокноте WL. Чернила. Часть 3 В этой статье мы применим некоторые оптимизации к коду, увеличим разрешение и перейдем в режим immediate graphics, когда рендер выполняется программой, а не API графической библиотеки.Часть 1. Игры с сеткой и дивергенциейЧасть 2. АдвекцияЧасть 3. ЧернилаТо, что вы видите на ...

Рассказываем о новом инструменте SimpleOne ESM-платформы – «Светофорные карты показателей» Рады сообщить, что мы дополнили свою ESM-платформу новым продуктовым расширением – «Светофорные карты показателей» (Traffic Light Scorecard). Этот инструмент объединяет концепции Balanced Scorecard и SLM Chart, помогая реализовать принцип Plan-Do-Check-Act на этапе контроля ...

[Перевод] Как мы написали GPU-based Gaussian Splatting вьюер в Unreal с помощью Niagara В этой статье я хочу рассказать вам о том, как мы писали с нуля полнофункциональный Gaussian Splatting вьюер для Unreal Engine 5. Читать далее

Немного о подходе Architecture Decision Records В процессе разработки проектного решения мы, как правило вносим множество изменений. Нет, конечно есть проекты, где все требования жестко «приколочены гвоздями» в ТЗ и внесение каких‑либо изменений практически невозможно. Но большинство проектов в&nb...

nanoCAD BIM ОПС: редактирование шаблонов спецификации в соответствии с ГОСТ 21.110-2013 СПДС При внедрении программного обеспечения линейки nanoCAD Инженерный BIM часто возникают вопросы, связанные с настройкой шаблонов выходной документации. Основные подходы к решению такой задачи рассмотрим сегодня на примере спецификации оборудования, изделий и материалов nanoCAD...

Гайд по реализации паттерна Composite в Kotlin с sealed-классами и корутинами Привет, Хабр! Сегодня рассмотрим, как реализовать паттерн Composite в Kotlin с помощью sealed-классов и корутин. Если у вас есть сложная система с кучей объектов — простых и составных — и вы хотите управлять ими, не теряя асинхронности, то этот гайд для вас. Читать далее

Machine Learning: Медицинский дайджест за период 07.10 — 13.10 2024 г ▶️ Модели машинного обучения и бенчмарки

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

Tracer спустя год: новые фичи и возможности инструмента для аналитики ошибок в мобильных приложениях Tracer — модульный инструмент для аналитики ошибок в мобильных приложениях от OK.Tech, который мы представили год назад. За это время в Tracer зарегистрировалось более 1400 организаций и 5000 пользователей. Сейчас решение обрабатывает более 1 млрд событий в день и обслуживае...

Tracer спустя год: новые фичи и возможности инструмента для аналитики ошибок в мобильных приложениях Tracer — модульный инструмент для аналитики ошибок в мобильных приложениях от OK.Tech, который мы представили год назад. За это время в Tracer зарегистрировалось более 1400 организаций и 5000 пользователей. Сейчас решение обрабатывает более 1 млрд событий в день и обслуживае...

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

Работа с географическими координатами с использованием пакета «Shapely» в Python на примере автотестов Здравствуй, Хабр! В этой статье я хочу рассмотреть пакет Python под названием "Shapely" и показать, как он может помочь в решении задач, как уже помог мне Читать далее

Технологические особенности создания ИТ-продуктов в рамках выполнения ИТ-проектов Анализ трудов [О’Коннэл, 2005; Черников, Дашицыренов, 2017; Марченко и др., 2020; Базарова, Рочев, 2022] позволил установить, что основными технологическими свойствами ИТ-продуктов являются инкрементность и высокая технологичность.Инкрементность ИТ-продуктов заключается в во...

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

Визуализация занятого места под Linux Наконец-то выросло поколение пользователей, которые никогда не работали с файлами и не понимают, что это. Для них чужда сама концепция, поскольку они во всех приложениях имеют дело с «документами» и не знают, что такое файловая система, жёсткие ссылки, поддиректории и др. ...

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

SysMocap — очень простой захват движений в 3D с помощью вебкамеры. Как сделать из себя втубера? Большое слово — Mocap Большинство знает о mocap (захвате движений) из киноиндустрии: чёрный костюм с множеством точек на теле. Однако технологии не стоят на месте, и уже сейчас в домашних условиях для создания развлекательного контента достаточно одной веб-камеры, чтобы пол...

Мультимодальные приложения на Llama 3.2 и Llama Stack Недавний релиз Llama 3.2 с мультимодальными версиями 11B и 90B открывает возможности для создания AI приложений, анализирующих визуальный ввод.Мультимодальные модели были и раньше, но это первая официальная версия Llama с такими функциями. Модель может быть использована для ...

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

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

[Перевод] Что нового в Spring Boot 3.4 Недавно состоялся релиз Spring Framework 6.2, вслед за ним последовал релиз Spring Boot 3.4.Команда Spring АйО подготовила перевод статьи Josh Long об основных изменениях и улучшениях, которые вошли в последний релиз. Читать далее

Как работать с Permissions для чтения и записи файлов в Android 13+ на примере React Native В МойОфис мы разрабатываем iOS- и Android-приложения цифрового рабочего пространства Squadus с помощью кроссплатформенного фреймворка React Native. В функциональность нашего приложения входит загрузка и отправка различных вложений другим пользователям.В какой-то момент мы по...

Международные стандарты безопасной разработки: ликбез DevSecOps — это не просто модное словечко, а целая философия, объединяющая разработку, безопасность и операции. Но как применить эту философию на практике? Здесь на помощь приходят международные стандарты.В этой статье мы рассмотрим пять основных международных DevSecOps-стан...

Google AI Studio представила Grounding with Google Search: «заземление» моделей Gemini с помощью поиска Google Google AI Studio и Gemini API представили новую функцию Grounding with Google Search, которая позволяет разработчикам получать более точные и актуальные ответы от моделей Gemini с помощью поисковой системы Google. Эта инновация направлена на снижение галлюцинаций в отве...

Оконные функции простым языком — Фреймы Привет всем!Это вторая часть к продолжению статьи "Оконные функции простым языком с примерами". Рекомендую ознакомиться сначала с ней, а потом вернуться к прочтению данной статьи, чтобы полностью понимать синтаксис и применение оконных функций. В этой статье будет разобрано ...

[Перевод] Реализация подобия Apple Vision Pro Не так давно я был свидетелем запуска Apple Vision Pro. Презентация оказалась очень интересной, но больше всего моё внимание зацепила одна деталь — дистанционное управление вводом с помощью пальцев. Выглядит очень интуитивно — использовать перемещение и сведение пальцев для...

В Citizen Lab нашли проблемы в протоколе MMTLS, используемом в WeChat Специалисты CitizenLab обнаружили, что китайская платформа WeChat использует кастомный протокол шифрования, который порождает проблемы с безопасностью. Протокол называется MMTLS и представляет собой модифицированную версию TLS 1.3.

Формирование задач для выбора информационной системы из стратегических целей проектной организации Настоящая статья является развитием статьи “Организация процесса выбора среды общих данных для проектов объектов капитального строительства”. Ее публиковал ранее тут. В ней мы говорили о важном шаге при выборе будущей информационной системы - описании задач, для которых прио...

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

Мой опыт использования Plumber: UI-инструмент для тестирования Kafka Привет, Хабр! Меня зовут Марина, я QA-инженер в Купере. Как специалисту по тестированию, мне часто приходится сталкиваться с задачами, связанными с тестированием микросервисов, использующих асинхронное общение через Apache Kafka. Уверена, многие QA-инженеры, да и разработчик...

Security Week 2444: браузерный zero-day на сайте криптовалютной игры На прошлой неделе в Индонезии прошла очередная конференция по кибербезопасности Security Analyst Summit, организованная «Лабораторией Касперского». Один из ключевых докладов конференции был посвящен истории обнаружения уязвимости нулевого дня в браузере Google Chrome еще в м...

Как собрать клон Yamaha DX7 за 10$ В этом статье я расскажу как и из каких компонентов можно самостоятельно изготовить клон знаменитого синтезатора Yamaha DX7.Статья рассчитана в основном на новичков и энтузиастов ретро музыкальных инструментов. Чуда не ждите :)Около 10 лет назад в моей коллекции был этот син...

Javascript для детей: ТОП-20 полезных ресурсов по программированию Освоить JavaScript – значит приблизиться к миру веб-разработки. Это перспективно: владение данным языком программирования – большой плюс, ведь с его помощью специалисты создают современные сайты, пишут расширения для браузеров и даже разрабатывают мобильные приложения. Спеши...

Как проверить свои модели ONNX на Python: кратко Привет, Хабр! В этой статье разберем, что такое ONNX, как экспортировать модели в этот универсальный формат и, что самое главное, как протестировать их с помощью Python. Читать далее

Как сделать управление персонажем в Unity – урок для детей и подростков Сегодняшний урок подойдет для ребят 10–14 лет с минимальным опытом. Благодаря пошаговой инструкции можно разобраться в управлении персонажами на простых примерах и понять, как работать с некоторыми важными инструментами среды Unity.Платформа «Юнити» предназначена для разрабо...

Двусвязный список в Python: простой инструмент для сложных задач Привет, Хабр!Эта статья написана для новичков, которые только начинают осваивать структуры данных на Python. Сегодня мы рассмотрим замечательную и очень полезную структуру — двусвязный список.Двусвязный список — это структура данных, в которой каждый элемент содержит ссылки ...

[Перевод] Пошаговое повышение производительности алгоритма Недавно мне довелось работать над новым алгоритмом приближённого поиска ближайших соседей, который называется RaBitQ. Автор этого алгоритма уже предоставил достаточно скоростную реализацию на C++. Я попытался переписать этот алгоритм на Rust (ещё один случай «а почему б...

kjs-box: добавляем ленивые модули, ресурсы с типизацией и модели представления в React-проекты на Kotlin Года три назад я захотел сделать для себя небольшой сайт. Лезть в TypeScript или тем более в JavaScript, когда любишь Kotlin, желания не было, равно как и не хотелось создавать какие-то типовые функции с нуля. По этим причинам выбор пал на React в сочетании с Kotlin Wrappers...

AMD официально подтвердила дату выхода новых процессоров Ryzen 9000 X3D — 7 ноября 2024 года Эти чипы обещают стать мощным инструментом для геймеров и энтузиастов, используя архитектуру Zen 5.

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

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

Установка и использование утилиты screen в Linux, Ubuntu Утилита Screen — это менеджер окон Linux, который позволяет переключаться между несколькими процессами в одном физическом терминале. Screen предоставляет буфер истории для прокрутки и механизм копирования и вставки текста между окнами.С помощью Screen можно создавать новые о...

Apache Flink: Unit и E2E-тестирование оператора с таймерами в Apache Flink Привет, Хабр! На связи Александр Бобряков, техлид в команде МТС Аналитики. В предыдущей части я рассказал про создание Flink-джобы Kafka-to-Kafka с оператором на основе встроенных таймеров. Такой пайплайн позволяет создавать вызов через определенное время после обработки соб...

Считаем доверительные интервалы для долей и медианы по нормальному распределению (готовимся к собесу на аналитика) Недавно на выходном оффере в Авито спрашивали задачку про нахождение доверительного интервала для медианы. Эта статья появилась в результате моего резерча по этому вопросу. В данной статье я напишу алгоритм рассчета доверительных интервалов для:— Среднего значения— Медианы (...

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

Очередная реализация fluid sim методом Эйлера, но в блокноте WL. Адвекция. Часть 2 В этой статье мы продолжим исследовать простой метод для симуляции двумерных несжимаемых жидкостей для визуальных эффектов. Эта работа основана на статье Джоса Стама «Stable Fluids» (SIGGRAPH 1999), а также на туториале Карла Симса.Часть 1. Дивергенция и игры с сеткойЧасть 2...

Что такое CPA, CPA-партнерки и CPA-маркетинг? В мире интернет-маркетинга одной из самых популярных моделей монетизации является CPA-маркетинг. CPA (Cost Per Action) — это модель оплаты, при которой рекламодатель платит за определенные действия, выполненные пользователем, а не за показы или клики. Эта модель является иде...

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

Simple Rails. Часть 1 — начало: свой веб сервер Всем привет, думаю, читатель, нажавший на данный заголовок, уже догадывается, о чем примерно пойдет речь. Данная статья рассчитана на тех, у кого уже есть какое-либо понимания языков программирования (лучше если именно Ruby), а также хотя бы общие сведения о HTML, работе ОС ...

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

Работа с CoordinatorLayout: шапочный разбор Приветствую тебя, уважаемый читатель! Меня зовут Пятаков Никита, я Android-инженер в команде MT&S Авито. Здесь я делюсь опытом реализации двух версий шапки на главном экране приложения Avito. Эта статья будет особенно полезна разработчикам, которые хотят познакомиться с ...

Модели Gemini 1.5 от Google: главное о Gemini 1.5 Pro Одной из главных моделей серии Gemini 1.5 является Gemini 1.5 Pro. Это новейшая версия больших языковых моделей (LLM) от Google, которая вызвала значительный интерес благодаря своим усовершенствованным возможностям. Она особенно эффективна при работе с задачами, требующими у...

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

Python для детей: особенности обучения, видеоуроки, книги и другие ресурсы Когда и как начинать учить детей программированию? Стоит ли вообще это делать? Если да, то какие языки подойдут? Давайте искать ответы на примере Python: рассмотрим его особенности и потенциал, определимся с оптимальным возрастом для начала, разберемся в перспективах направл...

Простой шлюз в сеть Интернет на nftables в ОС Astra Linux Special Edition Новая система фильтрации пакетов, фреймворк nftables, работает, начиная с версии Debian 10 Buster. ОС Astra Linux Special Edition (ALSE) основана на Debian и его пакетной базе, поддерживает nftables, начиная с версии 1.7.4.Дл...

[Перевод] Как снизить расходы на мониторинг: замена Prometheus на VictoriaMetrics Мониторинг может оказаться дорогим делом из-за огромных объемов данных, которые необходимо обрабатывать. В этой статье вы узнаете о лучших способах хранения и обработки метрик мониторинга для снижения расходов и о том, как VictoriaMetrics может в этом помочь.(cм. вторую стат...

Transact SQL для анализа данных Язык Transact SQL является процедурным расширением языка SQL и используется в СУБД Microsoft SQL Server. В этой статье мы рассмотрим использование некоторых элементов T-SQL для анализа данных. Сначала мы рассмотрим оконные функции, а затем поговорим о методах сводки (pivotin...

Ddos-атака c Kali Linux — простейший пример В данной статье я поделюсь опытом ddos атаки уязвимой машины metasploitable.Как ее устанавливать в виртуалбокс и настраивать я писал в этой статье:https://habr.com/ru/articles/850188/Еще раз напоминаю правовую информацию:Данная статья создана исключительно в ознакомительных/...

Операционная система реального времени Xenomai 4 В данной статье подробно рассмотрим, как собрать ядро, поддерживающее EVL core, и библиотеку, реализующую пользовательский API для этого ядра. А также разберем некоторые аспекты реализации драйвера устройства и приложения под Xenomai 4.Xenomai — Фреймворк для разра...

Мониторинг качества и готовности к релизу: наши практики и инструменты Как понять, готов ли продукт к релизу? В этой статье — проверенные инструменты и подходы для мониторинга качества в QA. Мы делимся опытом создания автоматизированных отчетов, визуализации данных в Grafana, конфигурации тестов и многого другого! Читать далее

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

Data Science и машинное обучение: примеры использования в реальных проектах Искусственный интеллект (AI) и машинное обучение (ML) уже давно вышли за рамки экспериментальных разработок и стали частью реальных проектов в бизнесе и промышленности. Их применение открывает новые горизонты для анализа данных, автоматизации задач и повышения эффективности ...

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

IaC и DevSecOps: выбираем лучшие инструменты анализа и защиты инфраструктурного кода Привет, читатели Habr! С вами Анастасия Березовская, инженер по безопасности процессов разработки приложений в Swordfish Security. Сегодня мы вновь будем говорить об особенностях  статического сканирования, но на этот раз переключим фокус с программного кода на код инфр...

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

Написание ETL пайплайна при помощи airflow, rabbitmq и postgres В данной статье мы рассмотрим взаимодействие apache airflow, rabbitMQ и postgreSQL. Научимся правильно устанавливать соединения между ними и напишем базовый ETL. Читать далее

Создаём свой реестр данных на основе ФГИС «Аршин». Часть 1 — добавляем данные в PostgreSQL и сокращаем размер БД Всем привет, этот практический цикл статей рассчитан на начинающих. Я решил поделиться своим опытом создания реестра данных на основе государственного. В этой статье займемся загрузкой и обработкой данных о результатах поверки средств измерений. Читать далее

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

Распознавание ж/д пикетных столбиков по фотографиям с беспилотника на основе PyTorch и YOLOv5 Тенденция применения беспилотных летательных аппаратов (БПЛА) продолжает развиваться и процветать. Оснащение беспилотников камерами и навигационным оборудованием геодезического класса точности позволяет получать ортофотопланы с сантиметровой точностью. Расширить возможности ...

Эксперимент: даём ChatGPT полный доступ к компьютеру Это статья написана от души и для души. Она не является: инструкцией, примером для подражания, призывом к действию или чем-то подобным.Я абсолютный новичок в программировании, поэтому могу ошибаться в некоторых (или даже во многих) вещах. Я бы, наверное, даже не писал эту ст...

Наш следующий гость на YouTube-канале в ноябре — легендарный Джон Скит Наш следующий гость на YouTube-канале в ноябре — легендарный Джон Скит, Чак Норрис в программировании. (Jon Skeet: The 'Chuck Norris' of programming - BBC News )Если среди вас есть олдскульные разработчики, то вы знаете, что до того, как ИИ стал популярным, настоящим живым ...

Ваш собственный сайт задач за 30 минут — и совсем бесплатно :) Например, Вы учитель и хотите для своего класса или школы сделать сайт, где ученики решают задачи по программированию - или, может, математике, физике.А может вы набираете стажёров в компанию - на позицию junior разработчика или тестера - или на внутренние курсы - тут не пом...

Обучение ИИ-моделей на облачных серверах: совместный проект РБК и Рег.ру Привет, Хабр! С вами Сергей Рыжков, руководитель департамента хостинга и профессиональных сервисов Рег.ру, и Александр Михеев, ML-engineer РБК. В этой статье расскажем, как мы автоматизировали процесс тегирования редакционных материалов РБК с помощью нейросети в облаке Рег.р...

9 фич будущего в IDE, благодаря которым можно будет освоить любой язык программирования без курсов за 1 день Считается, что "программирование - это сложно". Что нельзя вот просто так взять, и сходу начать работать с незнакомым языком программирования, сразу написав работающую программу, либо разобраться в уже готовой. Да, сейчас это действительно не просто, и у вас на пути будет мн...

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

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

Как создать игру Tycoon (Тайкон) в Roblox – туториал для детей Хотите создать собственный экономический симулятор в Роблоксе и написать для него код на Lua? Тогда пригодится сегодняшняя пошаговая инструкция. Предлагаем ознакомиться с ней, чтобы разобраться, как сделать игру «Тайкун» в Roblox. Урок предназначен для детей от 8-9 лет и ста...

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

[Перевод] Использование Rust в серверах, написанных на других языках, для повышения производительности В этой статье мы рассмотрим несколько стратегий по постепенному добавлению Rust в сервер, написанный на другом языке, например JavaScript, Python, Java, Go, PHP, Ruby и т. д. Один из возможных кейсов для подобного добавления — вы ...

Продуктовая матрица. Что это такое? Как её сделать? Подробное руководство для маркетолога Это статья про работу с продуктовой матрицей для маркетологов. Статья специализированная и подробная с примерами и иллюстрациями. Я постарался написать понятным языком, надеюсь, получилось.Понадобится достаточно много времени, чтобы вникнуть, поэтому...

20 ресурсов для 1С-аналитика: матчасть, инструменты и каналы с новостями Работодатели видят 1С-аналитиков по-разному: некоторые требуют навыков программирования на 1С, другие — глубоких знаний в бухгалтерском учёте и умения правильно проводить корректировку регистров.Кроме этого, профессия развивается высокими темпами. Сегодня аналитик 1С не толь...

Инфраструктура для Data-Engineer Data Lake Apache Iceberg В этой статье вы узнаете что такое Apache Iceberg, как его можно использовать и для чего он вообще нужен.В статье также рассматривается вопрос Data Lake. Читать далее

HTB Axlle. Повышаем привилегии через StandaloneRunner Для подписчиковВ этой статье я покажу, как повысить привилегии в Windows при помощи техники LOLBins, на примере программы StandaloneRunner. Но прежде мы получим сессию через фишинг с нагрузкой XLL, а затем изменим контекст безопасности через подмену файла.

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

MoexBuilder: как я создаю библиотеку на Python. Часть 3 Привет, Хабр! Продолжаю рассказывать, как я создаю библиотеку на Python. В этой статье я расскажу о том, как мне удалось структурировать проект, как был реализован функционал получения динамики по инструменту за указанный период - dynamics(), а также о том, как была добавлен...

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

Наш ответ нейлону максу *для опытных пользователей и профессионаловЦель этой статьи — рассказать об одной из важных частей технологического процесса 3D-печати методом FFF* или FDM* — просушивании филамента, а также об одном из реализованных нашими партнёрами проектов.*FFF или FDM — 3D-печать методо...

Разработка онлайн-сервиса музея ЗИЛ от идеи до реализации Привет! На связи продуктовая команда PixelPeak. В статье расскажем подробно, как собралась наша команда, почему решили сделать сервис онлайн-музея ЗИЛ, какие исследования проводили, с какими сложностями встретились и многое другое. Кейс будет полезен тем, кто хочет знать, ка...

Data-driven подход в аналитике: как использовать данные для принятия решений в FinTech Концепция data-driven представляет собой подход, в котором данные и аналитика служат основой для принятия решений на всех этапах разработки продукта. Основная идея этого подхода заключается в том, что заинтересованные лица могут анализировать данные, чтобы лучше понять, как ...

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

Разворачиваем приложение Next.js с базой данных PostgreSQL и задачей Cron на облачном сервере Ubuntu Linux Привет, друзья! Предположим, что у нас есть приложение Next.js, данные которого хранятся в Postgres, и мы хотим запустить его в продакшн, но не хотим использовать готовую инфраструктуру Vercel. Что делать? Создать собственную инфраструктуру. К счастью, сделать это не так у...

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

Как создать комнату испытаний в Minecraft на Python – туториал для детей Современные дети и подростки любят играть в Майнкрафт: они проводят часы за компьютером, исследуя виртуальную вселенную. Гейминг здесь – одна из основ формирования неподдельного интереса к программированию, поэтому предлагаем использовать это увлечение для погружения ребенка...

Расширение смысла и инструментария OSINT в США OSINT (Open Source Intelligence) — это разведка на основе открытых источников информации. В США OSINT играет важную роль в деятельности разведывательного сообщества, включая такие организации, как ЦРУ, ФБР и Агентство национальной безопасности (NSA). Основные цели OSINT:Сбор...

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

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

Карманный Ansible и защита от брутфорс-атак Настраиваем fail2ban для защиты от перебора паролей на debian серверах с помощью инструмента автоматизации Ansible. Для мобильности сервер Ansible установим на OrangePi и сделаем его спряжение с мобильным телефоном. Читать далее

OpenAI планирует к декабрю запустить модель ИИ Orion, которая в 100 раз мощнее GPT-4 Орион будет ориентирован на компании, которые тесно сотрудничают с OpenAI.

Intel и AMD настолько испугались Arm, что решили сотрудничать? Компании создали консультативную группу по экосистеме x86 Компании Intel и AMD, являющиеся основными конкурентами на рынке процессоров и частично видеокарт решили объединить усилия. Но не для создания общего продукта, хотя такое уже было, а для совместной работы над улучшением архитектуры x86.  создано DALL-E Intel и AMD...

Locust: проводим нагрузочное тестирование Автоматизация тестирования приложений является важным элементов в обеспечении процессов CI/CD. В этой статье мы поговорим о практическом использовании инструмента с открытым исходным кодом Locust для проведения нагрузочного тестирования приложений. Читать далее

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

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

Grafana Stack: закрываем все современные потребности Observability Ни одна система не может функционировать без сбоев, всегда могут возникнуть ситуации, когда в работе софта возникают проблемы. И здесь важное значение имеет observability — понятие, включающее в себя мониторинг и наблюдаемость. С помощью монитор...

Может ли C# догнать C? Современное сообщество программистов разбито на два лагеря - на тех, кто любит языки программирования с управляемой памятью, и тех кто их не любит. Два лагеря яро спорят друг с другом, ломая копья по поводу преимуществ в каком-то из аспектов программирования. Языки с неуправ...

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

HMPL — лучшая альтернатива HTMX Всем привет! В данной статье рассмотрим такой javascript модуль как HMPL и как он может заменить HTMX в проекте. Также, рассмотрим в чём их отличия, преимущества и недостатки.При дальнейшем сравнение двух модулей стоит учесть, что один является языком шаблонов, когда как дру...

[Перевод] Полнотекстовый поиск vs. Векторный поиск Полнотекстовый поиск vs. Векторный поиск: в чём разница и когда их использовать? Технологии поиска информации сильно продвинулись вперёд. Раньше был доступен только поиск по ключевым словам, но теперь, благодаря машинному обучению, появился векторный поиск, который помогает ...

[Перевод] Упрощаем CSS-анимации с помощью свойств display и размеров элемента До недавнего времени далеко не все свойства CSS можно было анимировать. Например, чтобы создать эффект плавного появления или исчезновения элемента, приходилось использовать свойство opacity, а не display, поскольку display нельзя было анимировать. А проблема в том, что визу...

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

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

Зачем нам Node.js или Angular на бэкенде Всем привет! Меня зовут Александр, я разрабатываю low-code платформу Eftech.Factory в компании Effective Technologies. В этой статье я хочу поделиться тем, как и почему в стеке нашего продукта появился Node.js. Рассмотрим одно из основных преимуществ Node.js (внезапно это Ja...

Чтение на выходные: «Спроси разработчика. Как стать лидером рынка с помощью создания собственного ПО» Джеффа Лоусона Джефф Лоусон — серийный предприниматель, программист, основатель и генеральный директор IT-компании Twilio. На примере своего опыта он рассказывает об управлении бизнес-процессами и командами разработчиков. Читать далее

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

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

Вся информация о Tensor G5 для Pixel 10: трассировка лучей, прежнее ядро Arm Cortex-X4 и другое Только в этом году Google выпустила новую линейку смартфонов — Pixel 9 — а инсайдеры и крупные издания по типу Android Authority уже знают, чего ожидать от Pixel 10. В крупной зарубежной статье расписана вся известная информация по чипсету Tensor G5. Сначала пройдёмся по яд...

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

Как создать 3D-игру в Scratch с нуля — туториал для детей В этом уроке мы научимся разрабатывать собственную 3Д-игру в Scratch — визуальной среде программирования для детей и начинающих разработчиков. Здесь создание скрипта происходит путем перетаскивания разноцветных блоков-команд. Яркая визуализация вовлекает детей в обучение и п...

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

Цифровые часы для дома на светодиодной ленте Про конструкцию больших часов на светодиодной ленте я уже писал в одной из своих прошлых статей. Эти часы, размером 320 на 100 см, адаптированы к установке на открытом воздухе на улице. Тогда же, 7 лет назад, сразу же после изготовления этих часов я приступил к реализации др...

Обходим ограничение доступа Github к базе уязвимостей Trivy. Быстрый фикс вам в помощь Совсем недавно разработчики, применяющие сканер образов Trivy, столкнулись с ошибкой TOOMANYREQUESTS. Она произошла из-за достижения максимального количества пользователей инструмента и предельной скорости по загрузкам из Container Registry (CR) ghcr.io. Меня зовут Алиса Кир...

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

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

Стив Ширли, Дама Стив Ширли: пионер программирования 16 сентября 1933 года в Германии, в еврейской семье родилась Стефани Ширли, которой предстоит стать не просто пионером в сфере информационных технологий, но и «ледоколом» для женщин-программистов. Причём для той их части, у которой были дети и которая не могла работать в офи...

Как улучшить качество WebRTC-звонков на примере сервиса VK Звонки Ало, как слышно?! Я Иван Шафран, уже 4 года работаю с WebRTC на Android. В этой статье на примере VK Звонков расскажу, что можно сделать, чтобы улучшить качество сервисов для аудио- и видеосвязи. Обсудим достоинства и недостатки WebRTC. Расскажу, как работать с аудио, видео ...

[Перевод] Экспорт данных из базы данных в Excel на C#: 5 проверенных методов Экспорт данных из базы данных в Excel - важнейшая задача для многих организаций, позволяющая пользователям легко анализировать, визуализировать и обмениваться информацией. Этот процесс обеспечивает беспрепятственный перенос данных, сохраняя целостность и структуру исходного ...

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

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

Вернер Бухгольц. Байт на Stretсh В феврале 1977 года, во втором выпуске журнала с говорящим названием «Байт» было опубликовано письмо некоего Вернера Бухгольца, который приоткрыл тайну появления этого термина. Почему? Потому что именно он стоял у его основ и вспомнил, что первое применение термина было в да...

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

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

ИИ позволит управлять VR/AR с помощью кожи Ученые из Университета Карнеги-Меллона представили новый инструмент EgoTouch, который использует искусственный интеллект (ИИ) для управления интерфейсами дополненной и виртуальной реальности с помощью касания кожи. Исследование было опубликовано в журнале...

Как сделать React Server Components в Electron с помощью Next.js и без открытых портов Статья про то как заставить работать React Server Components внутри Electron приложения с помощью Next.js при этом не запуская локальный сервер и не открывая порты. С возможностью публикации стандартными инструментами. А также исследование зачем все это надо. Читать далее

[Перевод] Перехват учетных данных SQL Server с помощью заданий агента для повышения привилегий в домене В этой статье я расскажу об объектах учетных данных SQL Server и о том, как их могут использовать злоумышленники для выполнения кода от имени учетной записи SQL Server, локального пользователя Windows или доменного пользователя. Также я объясню, как включить ведение журнала,...

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

[Перевод] Стиверу, с благодарностью от Java 20 октября после продолжительной борьбы с глиобластомой скончался первоначальный автор декомпилятора Java Fernflower Стивер.Стивер был немецким программистом русского происхождения, в основном разрабатывавшим программное обеспечение для медицинского оборудования. Д...

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