Социальные сети Рунета
Пятница, 10 мая 2024

[Перевод] Абсолютный минимум об Unicode на 2023 год (всё ещё — никаких оправданий!) Двадцать лет назад Джоэл Спольски написал: «Не существует такой штуки, как «обычный текст». Если имеется строка, но неизвестно, какую кодировку символов она использует — смысла в этой строке нет. Больше нельзя спрятать голову в песок и притвориться, что «обычный» текст имеет...

[Перевод] Нельзя предполагать, что все используют UTF-8 Как вычислять кодировку при помощи статистики Люди говорят на бесчисленном количестве разных языков. Эти языки не только несовместимы между собой, но и представляют огромную трудность при транспиляции в среде исполнения. К сожалению, все попытки стандартизации провалились. ...

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

В кодировке интерфейса X.Org для Linux были обнаружены дыры, остававшиеся незаметными 35 лет Все уязвимости были закрыты, поэтому пользователей просят скачать последние обновления

[Перевод] 10 > 64: как хранить больше данных в QR-кодах Для кодирования данных в десятичном формате требуется гораздо больше символов, чем для тех же данных, но закодированных в base64 — 06513249 против YWJj. Однако это правило не работает, когда речь идёт о QR-кодах. В них гораздо лучше работает использование десятичных чисел. Н...

[Перевод] Преобразования данных с React Query По мере того, как я всё больше погружался в библиотеку и окружающее её сообщество, я заметил несколько закономерностей, о которых люди часто спрашивают. Эта статья будет посвящена довольно распространенной и важной задаче: преобразованию данных. Читать далее

NVIDIA начинает тестирование технологии Enhanced Broadcasting для потоковой передачи видео Компания совместно с Twitch и OBS в этом месяце запланировали старт бета-версии технологии потоковой передачи с несколькими кодировками с более высоким качеством, уменьшенной задержкой и поддержкой кодека AV1

Внутри микроконтроллера Рассмотрим новинку отечественных ученых - ультранизкопотребляющий 32-разрядный микроконтроллер. Отличительными особенностями этой разработки является сочетание производительности, функциональности и потребляемой мощности.Микросхема К1921ВГ015 представляет собой СБИС 32-разря...

Обзор актуальных инструментов шифрования в Android Привет, Хабр! Меня зовут Артур Илькаев, я работаю в департаменте экосистемных продуктов, мы разрабатываем VK ID SDK и все что связано с авторизацией и сессиями, в частности — мультиаккаунт.Секретные данные требуют особого внимания при хранении и передаче. Инструмен...

Декодирование файла, поиск уязвимости и взлом пароля. Решаем задачи по сетям из KnightCTF 2024 Привет, Хабр! В прошлой статье я рассказывал о турнире KnightCTF 2024, который организовала команда из Бангладеша. Но туда вошли не все задачи. Под катом расскажу еще о четырех из категории networking. Читайте далее — узнаете, как получить секретную информацию в bash-histor...

Получение мостов tor из GMail с помощью Python В предыдущей статье была рассмотрена установка и настройка tor в ОС Linux Mint 21.3, а также были рассмотрены несколько способов получения мостов obfs4 с помощью сайта и телеграмм бота. В комментариях был задан вопрос по пово...

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

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

Процессоры Intel Lunar Lake MX предложат по 8 ядер ЦП и ГП, декодирование H266 и встроенную LPDDR5X А также новый нейронный сопроцессор.

XMG1930-30HP: AV over IP для ЦОД Мы уже не раз в нашем блоге на Хабре рассказывали о технологии AV over IP, которая позволяет гонять 4K-видеопотоки не с помощью HDMI, а используя для этой цели IP-сети. Можно ошибочно думать, что это актуально лишь для каких-нибудь спортивных баров и концертных площадок. Эт...

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

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

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

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

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

[Перевод] Передавать пустые срезы между Rust и C/C++ на удивление сложно Моя основная работа связана с браузерами и криптографией, а не компиляторами. Но я нередко сталкиваюсь с ситуацией, когда мне приходится проводить больше рабочего времени за изучением семантики языков программирования, чем за фактическим их использованием. Так что эта стать...

Python, Go или… готовим сырой видеопоток с полсотни камер В проектах, связанных с машинным зрением и обучением приходится работать с сырым видеопотоком с камер. Чтобы принимать, предобрабатывать и передавать эти данные нейросетям необходим отдельный программный компонент, который мы условно называем «видеоридер». Это микросервис, к...

Проектор Wanbo Mozart 1 Pro из экосистемы Xiaomi будет иметь декодирование 4K и Android TV 11 Проектор Wanbo Mozart 1 Pro также имеет максимальную яркость 900 ANSI люмен, встроенные динамики и поддержку HDR10.

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

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

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

Прогнозирование временных рядов с помощью библиотеки Skforecast В открытом доступе существует огромное число библиотек для построения моделей машинного обучения в Python. Самые популярные — scikit-learn, XGBoost, LightGBM, Catboost, PyTorch. Каждая из них позволяет построить регрессионную модель для прогнозирования на временных рядах, ...

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

Исследование безопасности десктопных приложений на основе Electron Electron — фреймворк с открытым исходном кодом для создания кросс-платформенных десктопных приложений с помощью JavaScript, HTML и CSS. Это крутая технология, но с ней связаны многие ИБ-риски. В статье я разберу основы безопасной работы с этим фреймворком и расскажу: как а...

Выполняем сторонние программы на микроконтроллерах с Гарвардской архитектурой: как загружать программы без знания ABI? Зачастую в процессе разработки собственных устройств или моддинга уже существующих, встаёт задача выполнения стороннего кода: будь то ваши собственные программы с SD-флэшек, или программы, написанные другими пользователями с помощью SDK для вашего устройства. Тема компилят...

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

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

Не все логи одинаковы полезны: 3 истории из жизни Прочитав статью "Утечки памяти, которые не утечки", я решил поделиться своим опытом поиска проблем, связанных с нагрузкой систем под управлением Windows. 2 проблемы были связаны с возросшей нагрузкой на ЦПУ и одна проблема связанна с утечкой памяти.В своей статье я расскажу,...

[Перевод] VES — микросервис Cosmos для кодирования видео на Netflix Cosmos представляет собой новейшее поколение медиа-обработчика на Netflix, интегрирующее архитектуру на основе микросервисов, асинхронные рабочие процессы и функционал без привязки к серверам. Эта платформа нацелена на оптимизацию медиа-процессов внутри Netflix, повышая их г...

[Перевод] Охота на недостающий тип данных Направленный граф — это набор узлов, связанных стрелками (рёбрами). Как узлы, так и рёбра могут содержать данные. Вот несколько примеров: Все графы созданы с помощью graphviz (источник) В сфере разработки ПО графы используются повсеместно: Зависимости пакетов, как и импо...

Lane margining: как оценить качество PCIe-соединения без дополнительной аппаратуры При запуске новых плат и устройств с PCIe-соединениями недостаточно просто вставить карту в слот. Нужно так настроить эквалайзеры, редрайверы, пресеты и ретаймеры, чтобы на каждой полосе «поднялся линк», то есть установилось соединение. Это значит, что приемопередатчики на о...

В России разработали безопасную систему связи будущего - она защищена от помех и основана на теории хаоса Ученые Санкт-Петербургского государственного электротехнического университета ЛЭТИ разработали устойчивый к помехам прототип высокозащищенной системы связи. Об этом рассказал журналистам Вячеслав Рыбин специалист с кафедры систем автоматизированного проектирования ЛЭТИ....

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

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

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

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

Нейрочип научили читать мысли человека Ученые совершили значительный прорыв в области нейронауки, разработав метод высокоточных нейрозаписей, который значительно улучшает точность декодирования речи.

Cypress для Junior QA. Легкий способ войти в автоматизацию Сегодня мы поделимся навыком тестирования сайтов и веб-приложений с помощью Cypress. Автоматизируем поиск книг по тестированию и добавим их в избранное на сайте Литрес!Что нам необходимо для установки и запуска автотестов: 1. Браузер Chrome актуальной версии;2. Редактор кода...

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

Геометрия и навигация В этой статье будут рассмотрены некоторые проблемы и размышления, связанные с довольно интересной задачей коррекции/восстановления автомобильного трека на основе данных, полученных от MEMS датчика и навигационного приемника. Эта задача содержит много различных а...

[Перевод] Ranking Functions: ROW_NUMBER Четыре функции ранжирования: ROW_NUMBER, RANK, DENSE_RANK и NTILE появились в SQL Server 2005 и отличаются от обычных скалярных функций тем, что результат, который они выдают для строки, зависит от других строк выборки. От агрегатных функци...

Как в C# быстро извлечь подстроку Извлечение подстроки. Казалось бы, что тут может быть сложного? В любом современном языке программирования это можно сделать через функцию substring или через slicing. За время работы C# разработчиком я повидал разный код, в том числе разные способы извлечения подстроки. В э...

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

Детектируем горизонтальное перемещение с WMIExec Привет, Хабр!Ранее мы рассказывали о возможных способах выявления горизонтального перемещения (Lateral Movement) с помощью таких инструментов, как PsExec, SMBExec и AtExec. Сегодня мы продолжим "работать" с данной техникой и рассмотрим еще один инструмент - WMIExec. В статье...

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

Видеокарта Moore Threads MTT S30 имеет ускорение декодирования AV1 и поддерживает API Direct3D Карта оснащена портом HDMI 2.0 с поддержкой 4K Ultra HD до 60 Гц

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

[Перевод] Как можно потерять контроль над оболочкой Пару недель назад я разбирался с поддержкой Language Server в редакторе Zed, пытаясь заставить его, обнаруживать исполняемый файл языкового сервера gopls в $PATH. В случае его присутствия система должна использовать этот файл, а не скачивать новый. Проблема: $PATH часто д...

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

[Перевод] Люди со склонностью к микроменеджменту обычно не замечают этого за собой «Антон, есть разговор. Не знаю, как бы сказать повежливее, но завязывай, пожалуйста, с микроменеджментом, я уже на стену от этого лезу!» Это я-то?! Занимаюсь микроменеджментом??? Да я ведь просто пытаюсь помочь! Судите сами. Обычный вторник, все работают удаленно, общение ...

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

Moore Threads выпускает видеокарту начального уровня S30 с поддержкой декодирования AV1 Продажи в Китае начнутся к концу февраля.

Khronos выпусткает расширение Vulkan Video для кодирования H264/265, у NVIDIA готов бета драйвер Теперь в Vulkan 1.3.274 реализована поддержка кодирования и декодирования H264/265.

Khronos выпусткает расширение Vulkan Video для кодирования H264/265, у NVIDIA готов бета драйвер Теперь в Vulkan 1.3.274 реализована поддержка кодирования и декодирования H264/265.

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

[Перевод] Делаем двоичные файлы Rust меньше по умолчанию Вы когда-нибудь пробовали компилировать program helloworld на Rust в режиме --release? Если да, то видели, какой размер двоичного файла получается? Достаточно сказать, что он не очень маленький. Или, по крайней мере, не был таким до недавнего времени. В этом посте я расскажу...

Пользователи смартфонов Samsung Galaxy обвиняют One UI 6.0 в выжигании экранов AMOLED Компания Samsung уже активно начала распространять большое обновление фирменной оболочки One UI 6.0 для ряда своих устройств и к концу года обновиться должно более 35 моделей корейского производителя. Однако похоже, что пользователи столкнулись со странной проблемой пос...

[Перевод] 10 самых распространенных проблем при линтинге Dockerfile'ов Весной 2023 года разработчики Depot добавили в свой сервис возможность проверять Dockerfile'ы при каждой сборке.В этой статье они делятся десятью наиболее распространенными проблемами при линтинге Dockerfile'ов, разбирают каждую проблему и объясняют, почему она возникает и к...

Экономим на Kubernetes с помощью OpenCost — и другие прелести FinOps Вне зависимости от того, кто вы: небольшой стартап или развитая компания — задача управления затратами особенно важна. Модное понятие FinOps, оно же Financial Operations или Cloud Financial Operations, помогает организациям наиболее эффективно и экономически выгодно использ...

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

Драйвер Radeon Vulkan с открытым исходным кодом получил возможность кодирования H.264 и H.265 Кроме того, вскоре ожидается очередное обновление с функцией декодирования AV1

ИИ научился игнорировать шум дрона, чтобы слышать попавших в ловушку жертв В поисково-спасательных операциях после таких катастроф, как землетрясения, часто используются БПЛА. Хотя камеры помогают обнаружить жертв на открытом пространстве, они не могут обнаружить тех, кто застрял под обломками. Решить проблему можно с помощью звукового обнаружения,...

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

Как автоматизировать построение архитектурных схем в большой микросервисной системе Если у вас есть большая система, состоящая из множества микросервисов, то вы наверняка задавались вопросом: «Что сделать, чтобы архитектурная схема всей системы была всегда на 100% актуальной?». Обычно, в компаниях есть свои практики формирования архитектурных схем и ведения...

Как обнаружить хакера на этапе дампа учетных данных в Windows? Одна из самых часто используемых техник при атаках — получение учетных данных из операционной системы. В этом можно убедиться, читая аналитические отчеты различных компаний: техника T1003 OS Credential Dumping в подавляющем большинстве случаев входит в ТОП-5. После прон...

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

[Перевод] Переход с ETL на ELT ETL (Извлечение-Трансформация-Загрузка) и ELT (Извлечение-Загрузка-Трансформация) — два термина, которые часто используются в области дата-инжиниринга, особенно в контексте захвата и преобразования данных. Хотя эти термины часто используются как взаимозаменяемые, они относ...

Google представила Jpegli — новую библиотеку кодирования JPEG, которая сжимает изображения на 35% лучше Компания Google неожиданно представила улучшение для привычного многим формата JPEG — Jpegli.  Jpegli представляет собой не замену JPEG. Это новая библиотека кодирования JPEG, которая разработана так, чтобы работать быстрее, эффективнее и визуально приятнее,...

В новый год с новым ядром: что нового и интересного в Linux 6.7? Начало 2024 года приятное — вышел релиз ядра Linux 6.7. Как всегда, есть новости, изменения, кроме того, из ядра убрали устаревшие компоненты. Среди новинок можно отметить прекращение поддержки архитектуры Itanium, добавление ФС Bcachefs, а также поддержку futex в io_uring...

Android System Webview — что это за приложение и зачем оно нужно? Многие предустановленные приложения на смартфонах необходимы для корректной работы системы, однако их роль с первого взгляда не всегда понятна. Что такое программа Android System Webview и зачем она нужна на телефоне? Что такое Android System Webview в смартфоне? Android Sys...

Transient storage в EVM (EIP-1153): на грани добра и зла В одной из статей о расчете газа в Ethereum (ссылка) я рассказал об истории изменений механизмов подсчета газа для хранилища смарт-контракта (storage) — от правил, заложенных в протоколе изначально, до EIP-3529. Во всех этих изменениях прослеживается основная проблема: нерац...

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

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

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

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

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

Как решить типичные проблемы Django нестандартным подходом: Fake Injection Давайте признаем, что развитие проектов в мире Django не всегда проходит гладко. Мы часто сталкиваемся с толстыми моделями и сериалайзерами, размытой бизнес-логикой и тестированием, которое больше напоминает головную боль, чем удовольствие. Меня зовут Павел Губарев, я back...

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

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

Pandas в pandas'е: упаковываем документацию в датафрейм Документация к сложным библиотекам на питоне (напр. pandas) хранится в doc-строках и разбросана по сотням страниц сайта. В этой статье мы с помощью небольшого кода упакуем её (информацию из документации для каждого класса и метода) в... датайфрейм. Но зачем? Во-первых, это п...

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

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

Мапперы на Famicom, NES, Денди: откуда взялись и зачем нужны (часть 2/2) Продолжаем обстоятельный разговор про «мапперы» — устройства управления расширенной памятью на игровых консолях Famicom, NES и Денди. Во второй части статьи рассмотрим особенности нескольких основных видов мапперов и их влияние на содержание игр, сложности программирования,...

Погружаемся в PEB. DLL Spoofing В предыдущей статье мы в первом приближении рассмотрели PEB и разобрались, как подменить аргументы командной строки.Продолжая разбираться с PEB, рассмотрим еще один способ повлиять на исполнение программы, и попробуем подменить вызываемую из DLL функцию. Читать далее

Проблема понимания существующего кода, или Как делать иногда [не] надо Я столкнулся с тем, что я иногда не понимаю код, с которым мне приходится работать. И это сильно сказывается на моей производительности и на качестве конечного результата. Неделю назад я прочитал статью Плохо девелопмент за авторством @dalerank(Сергей Кушниренко), в которой ...

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

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

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

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

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

Используем паттерн Decorator в Bitrix Применять паттерны программирования — хорошая практика. К сожалению, на проектах CMS Bitrix редко встречаются примеры использования. В статье я покажу на примере, как можно использовать паттерн Decorator.А также рассмотрю этот паттерн в целом: его распространенные реали...

[Перевод] Как создать API в облаке менее чем в 200 строках кода Современные облачные инструменты и пакеты Python стали настолько мощными, что с их помощью можно создать (масштабируемый) облачный API менее чем в 200 строках кода. В этом посте будет рассмотрено, как при помощи lines Google Cloud, Terraform и FastAPI развернуть в облаке пол...

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

Как я рефакторила Ansible-плейбуки с помощью нейросети. Плюсы и минусы ChatGPT Работать с большими Ansible-плейбуком не всегда удобно — в нем трудно читать и переписывать код. В этой статье я поделюсь опытом — расскажу, как «распилила» плейбук на 1000 строк с помощью ChatGPT и как нейросеть справилась с этой задачей. Подробности — под катом. Читать да...

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

[Перевод] Оптимизируя неоптимизируемое: ускорение компиляции C++ В этой статье речь пойдёт о повышении скорости компиляции библиотеки {fmt} до уровня библиотеки ввода-вывода Cи stdio. Дня начала немного теории. {fmt} – это популярная открытая библиотека С++, представляющая более эффективную альтернативу С++ библиотеке iostreams и библио...

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

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

Полигон для творчества за 1500 р. Часть 2. Структура платы, 256 UARTов и расширение спектра Приветствую вас, друзья! Продолжаем знакомство с платой SX100. Рассмотрим структуру и некоторые любопытные особенности платы, узнаем, как улучшить ЭМС с помощью расширения спектра. Сделаем пару сотен UARTов и доработаем плату. Вперёд к экспериментам! Читать дальше →

Файловый ввод, сделанный по-человечески Поводом к написанию данной статьи и к разработке соответствующей мини-библиотеки ffh стало одно из практических заданий по дисциплине ‘Языки программирования’, которую я веду. В этом задании необходимо прочитать все строки из текстового файла для последующей обработки. Так ...

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

JWT-аутентификация при помощи Spring Boot 3 и Spring Security 6 Переход от базовых приложений к более сложным требует использования Spring Security для обеспечения безопасности. Новая версия, Spring Security 6, изменяет некоторые базовые реализации, а русскоязычных материалов на эту тему очень мало. В этой статье мы рассмотрим JWT-аутент...

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

Кулинарный гид по Vue.js: всё о props Привет, Хабр! В этой статье разберемся, как frontend-разработчику готовить на «кухне» props. Выбирайте подходящий уровень сложности: джуны-поварята смогут лучше разобраться в работе и применении props на фреймворке Vue.js, а еще мы затронем тему валидации. Для мидлов и более...

[Перевод] Распаковываем архив gzip вручную. Часть 2 В этой части мы, как и в первой, разархивируем файл gzip вручную, но теперь ещё и декодируем коды Хаффмана. Для начала запишем данные на диск: $ echo "hector the frantic father on an anchor or a rare fat cat sat on the ranch" > test-huff.txt $ xxd test-huff.t...

Нейросеть мне в помощь или как я сделал телеграм бота, который умеет переводить песни Однажды, когда я искал эффективное решение для преобразования речи в текст (транскрибации), чтобы применить его в своем проекте умной колонки, обнаружил интересное решение под названием Whisper от широко известной компании Open AI. К сожалению, Whisper не подошел для реализ...

Обзор на новую CSS-in-JS либу от Facebook* – StyleX Недавно компания Facebook* (aka Meta**) выпустила в опенсорс собственную CSS-in-JS библиотеку под названием StyleX. По заявлениям разработчиков, она отлично подходит для больших проектов и ключевым ее преимуществом является перфоманс.В этой статье мы рассмотрим пример исполь...

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

Как использовать html-элемент <dialog>? Привет, Хабр! Меня зовут Александр Григоренко, я фронтенд-разработчик. В основном, занимаюсь разработкой приложений на React, но также постоянно экспериментирую с различными технологиями.В своей работе я часто создаю собственные или использую уже готовые UI-компоненты. Пробл...

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

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

Как рисовать мозаики типа «эйнштейн» На немецком «эйнштейн» звучит как «один камень». Один - «ein», камень - «Stain». Всем известно, что под этой фамилией жил один замечательный человек, и звали его ... Но в статье речь не о нём. Речь о математической задаче по поиску одной плитки, такой чтобы составленная из н...

Google снова хочет переместить поисковую строку в Android к нижней части экрана. Такая функция уже доступна Похоже, компания Google снова хочет поэкспериментировать со строкой поиска в нижней части экрана на смартфонах с Android.  В последней версии ПО Google 14.48.26.29.arm64 поисковая строка находится внизу экрана. По умолчанию эта особенность отключена, но её можно а...

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

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

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

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

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

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

[Перевод] Что такое гексагональная архитектура. Разделение бизнес-логики и инфраструктуры с помощью портов и адаптеров Гексагональная архитектура — это архитектурный паттерн, представленный Алистером Кокберном и описанный у него в блоге в 2005 году. Основная идея заключается в том, чтобы структурировать приложение таким образом, чтобы это приложение можно было разрабатывать и тестировать в ...

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

И снова конденсаторы: как я ноутбук HP Spectre X360 13 ремонтировал и что из этого вышло Привет, Хабр! Как часто вы сталкивались с ситуацией, когда ваш ноутбук, который еще вчера работал, сегодня отказывается включаться, заряжаться, и вообще пациент скорее мертв, чем жив? Вероятно, частенько, и в некоторых ситуациях проблема в линиях питания. Например, не выде...

Выявление проблем в log-файлах с помощью аналитики Привет, Хабр!Log-файлы систематически записывают хронологию событий, происходящих в системе (или приложение). Это может быть что угодно: от записи о запуске программы до детальной информации об ошибках и предупреждениях. Для нас log-файлы — это не просто дневники событий, а ...

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

Кодогенерация и парсинг TypeScript с помощью typescript Одной из интересных возможностей пакета typescript является то, что он содержит API для генерации TypeScript-кода, а также парсер для работы с написанным на TypeScript кодом. Кодогенерация часто используется для автоматического создания типов для работы с http api (типизация...

Обзор Helm Dashboard — графического интерфейса для управления релизами Kubernetes Часто разработчики предпочитают использовать именно визуальные средства, чтобы более эффективно управлять релизами Kubernetes. Один из таких инструментов — Helm Dashboard. С его помощью можно самостоятельно создавать, развертывать, обновлять различные релизы Kubernetes-прило...

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

Немного об ATARI XL/XE: 6502, графика, код Статья является введением, которое знакомит с компьютерами семейства ATARI XL/XE. На примерах, на встроенном языке ATARI BASIC с щепоткой ассемблера, показаны некоторые особенности графики для этой платформы. Читатель легко сможет повторить примеры на собственном ПК использу...

Microsoft выпустила Windows 11 Build 22621.2361 Компания Microsoft выпустила Windows 11 Build 22621.2361. Это обновление, не связанное с безопасностью, включает улучшения качества. При установке этого KB: • Новое! Это обновление завершает работу по обеспечению соответствия требованиям GB18030-2022. Оно удаляет и переназна...

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

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

Как ускорить LLM-генерацию текста в 20 раз на больших наборах данных Всем привет, я Алан, разработчик-исследователь в MTS AI. В команде фундаментальных исследований мы занимаемся исследованием LLM, реализацией DPO и валидацией наших собственных языковых моделей. В рамках этих задач у нас возникла потребность в генерации большого количества да...

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

[Перевод] Angular на стероидах: наращиваем производительность при помощи WebAssembly В этом посте продемонстрировано, как с лёгкостью использовать WebAssembly внутри приложения, написанного на Angular. Иногда в приложении на Angular требуется выполнить задачу, которая в JavaScript завершается не слишком быстро. Конечно, можно переписать алгоритм на другом яз...

Кто трогал мой mac? Ловим горничную или evil maid detection Я часто нахожусь в командировках и путешествиях, внимательно отношусь к безопасности своего macbook. Недавно, вернувшись в отель, я обнаружил признаки того, что кто-то что-то делал с моим ноутбуком в мое отсутствие.В этой статье мы рассмотрим способы, позволяющие узнать о по...

[Перевод] Записываем музыку при помощи CSS Grid Слишком часто я наблюдал за тем, как импровизирующий музыкант трясущимися руками пытается увеличить pdf размером A4 на крошечном экране телефона в самом разгаре исполнения. Мы обязаны создать плавный и отзывчивый рендеринг музыки для веба! В вебе нотная запись должна быть с...

Ученые научились декодировать речь по сигналам мозга Ученые из Нью-Йоркского университета представили значительный прогресс в области декодирования речи с использованием нейронных архитектур. Их исследование, опубликованное в Nature Machine Intelligence, открывает новые перспективы для людей, потерявших способность говорить из...

Детекция объектов. YOLO. Часть 2 Кто такой YOLO?

Случайные MAC-адреса в сети Wi-Fi — что это и зачем нужно? С помощью режима для разработчиков на смартфоне можно запретить отслеживать свои действия через Wi-Fi-сеть. Расскажем, что такое случайные MAC-адреса в сети Wi-Fi, и как работает эта настройка. Что такое случайные MAC-адреса в сети Wi-Fi? Для идентификации смартфона использу...

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

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

Последнее обновление безопасности для Windows 10 может не установиться Microsoft получила сообщения о проблеме, из-за которой не удается установить обновление Windows, выпущенное 10 октября 2023 года ( KB5031356 ). Устройства могут сначала отображать прогресс, но затем не завершить установку. Согласно отчетам , одной из наиболее распространенны...

Материалы для подготовки к собеседованию на позицию Data Scientist. Часть 3: Специализированное машинное обучение Привет! Меня зовут Артем. Я работаю Data Scientist'ом в компании МегаФон (платформа для безопасной монетизации данных OneFactor). В предыдущей статье я поделился материалами для подготовки к этапу по классическому машинному обучению.В этой статье рассмотрим ма...

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

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

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

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

Range Loop в Go: подводные камни, как с ними бороться и что нас ждёт в версии 1.22 Привет, Хабр! Меня зовут Рафаэль Мустафин, я ментор на курсе «Go-разработчик» в Яндекс Практикуме. Эта статья посвящена нюансам цикла range в Go. Мы рассмотрим распространённые подводные камни, лучшие практики и интересные изменения, ожидаемые в Go 1.22. Читать далее

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

Большой гайд по энергии. Часть 1 — как получать максимум пользы из питания? Всем привет, на связи команда Skill Vortex!Читая комментарии под последней статьей, мы столкнулись с одной, крайне распространенной проблемой – низким уровнем энергии и мотивации.«Просыпаюсь уже уставшим, весь день хожу разбитым, а вечером хочется просто лечь и смотреть в по...

Информация об информации. Энтропия Шеннона, демон Максвелла и предел Ландауэра Информация – одно из самых неоднозначных и неопределённых понятий в науке и философии. Для гуманитария это любые сведения, которые можно запомнить и передать в устной или письменной форме. Для математика это абстрактная сущность, сохраняющаяся при вычислительном изоморфизме....

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

Ивент шторминг (Event Storming) при работе над игровыми проектами Ивент шторминг (Event Storming) — это отличный способ разложить продукт по полочкам, понять, как он работает (или должен работать), а также донести это до всех участников команды, чтобы картинка в разных головах была одинаковой (что сильно упростить разработку и поможет избе...

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

Когнитивные искажения у аналитика данных: найти и починить df.head() — с этого момента вы начинаете работу с данными и полагаетесь на увиденное? Я тоже. Так мы наступаем в феномен what you see is all there is («что вижу, то пою, что не вижу, не спою» — вольный перевод). У ограниченного набора данных, возможно, отсортированного, мы в...

ИБ и ИТ, давайте жить дружно. Вот как это возможно Безопасность во многих компаниях стоит особняком. Вместо того чтобы беспокоиться о качестве вашего продукта, безопасники твердят о ГОСТах и ISO, о разных сертификациях и авторизационных протоколах — вещах важных, но вне фокуса основного архитектора. При этом их деятельность ...

Другой способ понять, как работает async/await в C# Про закулисье async/await написано предостаточно. Как правило, авторы декомпилируют IL-код, смотрят на IAsyncStateMachine и объясняют, вот дескать какое преобразование случилось с нашим исходным кодом. Из бесконечно-длинной прошлогодней статьи Стивена Тауба можно узнать мель...

Последнее обновление Windows 10 оказалось проблемным. В Microsoft признали это и уже устранила ошибку Microsoft устранила проблему, из-за которой обновления безопасности Windows 10, выпущенные ранее в этом месяце, завершались с ошибкой 0x8007000d. Для систем, затронутых этой проблемой, в частности Windows 10 21H2 и Windows 10 22H2, обновление безопасности KB5031356 не у...

Типичные задачи аналитика данных. Часть 1. Упала метрика В прошлой статье мы рассматривали неочевидные проблемы АБ тестирования и как можно с ними справляться [ссылка]. Но часто бывает так, что при внедрении новой функциональности АБ тестирование провести нельзя. Например, это типично для маркетинговых кампаний нацеленных на массо...

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

Как манекены калибруют томографы Привет, Хабр! В прошлой нашей статье про томографию мы задались вопросом: "А знаете, кто получает самую большую дозу при томографии?" Конечно, ответ мы получили: медицинские тестово‑калибровочные фантомы, специальные объекты, используемые при разработке и тестировании медици...

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

Бионические предплечье и кисть: позиционирование многосуставного манипулятора наклоном головы Всем привет! В предыдущей статье Позиционирование бионического предплечья взглядом / Хабр (habr.com) мы обсуждали алгоритм для позиционирования бионического предплечья. В этот раз мы пойдем чуть дальше (на один сустав), добавив к предплечью кисть, и рассмотрим алгоритм, с по...

[Перевод] Мудреный код — пожалуй, худший выбор Когда я учился в университете, Leetcode поломал мне мозг. Я смотрел на лучшие из лучших решений, которые укладывались в одну строчку малопонятного кода, и в своем заблуждении думал: «Как же мне достигнуть такого высокого уровня?» Что тут вообще происходит? Такой подход ч...

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

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

Айфон выключается по ночам после установки iOS 17.0.3. Чем это опасно и можно ли как-то решить проблему Выход iOS 16 в прошлом году принес владельцам iPhone много разных проблем, но Apple решила их очень оперативно, и уже к концу сентября система работала как надо. Ожидалось, что полученный опыт в Купертино перенесут на iOS 17. Но, как это часто бывает, что-то пошло не так. Н...

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

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

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

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

Мониторинг на Python: как сохранить метрики в мультипроцессном режиме Привет, Хабр! Меня зовут Никита, я backend-разработчик команды клиентских сервисов. В Selectel мы строим и поддерживаем IT-инфраструктуру для компаний, которые развивают свои цифровые продукты. В нашем департаменте около 20 приложений, большая часть из которых работает на F...

Microsoft выпустила Windows 11 Build 22000.2482 Компания Microsoft выпустила Windows 11 Build 22000.2482. Это обновление, не связанное с безопасностью, включает улучшения качества. При установке этого KB: • Новое! Это обновление завершает работу по обеспечению соответствия требованиям GB18030-2022. Оно удаляет и переназна...

Методы очистки данных в Pandas Привет, Хабр!Аналитики данных часто сталкиваются с грязными данными, которые могут существенно замедлить процесс анализа. Грязны данные – это пропущенные значения, дубликаты, неконсистентные данные. Пропущенные значения заставляют нас гадать, что же было замыслено нашим колл...

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

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

Security Week 2346: Ducktail, атака на специалистов по маркетингу На прошлой неделе специалисты «Лаборатории Касперского» разбирали свежую атаку под кодовым названием Ducktail. За этой киберкриминальной кампанией предположительно стоит группировка из Вьетнама. Характерной чертой Ducktail в ее последней версии является специализация на марк...

iPhone можно использовать в роли веб-камеры с гибкой настройкой Некоторое время назад разработчики из компании Apple заявили, что в новой операционной системе для компьютеров Mac будет реализована новая функция, которая позволяет трансформировать iPhone в веб-камеру. Данная функция работает не только на ноутбуках компании, но и на дескто...

Номера телефона +7 (936) — какой оператор и кто может звонить? Какому оператору принадлежат и кто может звонить с номеров телефонов с кодом +7 (936)? Коды мобильных телефонов указывает на то, какой провайдер связи обслуживает номер и где тот может быть зарегистрирован. В статье расскажем, кто звонит с номеров +7 (936) и безопасно ли бр...

[Перевод] Создание эмулятора игр MS-DOS в Kubernetes В этой статье мы разберёмся, как можно интегрировать JavaScript-библиотеку js-dos в собственное решение Kubernetes, что позволит нам предоставлять доступ к играм MS-DOS в виде сервисов Kubernetes и запускать их в браузере. Кроме того, по ходу статьи я дам советы и рекоменд...

Анализ производительности React Native приложений: как выявить проблемы и улучшить перформанс Привет, Хабр! Меня зовут Вадим, я мобильный разработчик в СберМаркете. В этой статье расскажу, как провести профилирование (оно же измерение производительности или оценка перформанса) в react native приложениях: как выявить источник проблем и решить их. В русскоязычных источ...

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

SQL и python для анализа цен на новостройки в СПб или ценнейший навык для маркетолога в 2024 «Зачем мне SQL и python?» — задают резонный вопрос маркетологи или менеджеры по продукту, особенно в сфере недвижимости, оптовой торговли, услуг для бизнеса: «У нас нет миллионов строк данных, нет логов, мы успешно работаем с несколькими таблица...

Что такое «паралич» сети, и как его избежать? Паралич сети - это явление, когда глубокие слои не обучаются. Это происходит из-за затухания градиента при обратном распространении ошибки. Затухание градиента может возникнуть из-за большой глубины сети или больших выходных значений.Цель статьи - объяснить проблему, причины...

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

[Перевод] Насколько потолстел JavaScript к 2024 году? Я немного отстал от современных тенденций фронтенд-разработки. Помню, были статьи на тему раздутия веб-среды, в которых писали, что средний размер страницы начал достигать нескольких мегабайтов! И всё это время я жил с мыслью, что если средний размер страницы равен, скаже...

Intel показала что-то совсем новое. Процессоры Meteor Lake могут воспроизводить видео в Full HD без использования основного кластера CPU или GPU Даже в 2025 году у процессоров Intel будет лишь восемь больших ядер. Зато обновлённые Arrow Lake получат до 32 малых ядер Компания Intel продолжает подогревать интерес к своим грядущим процессорам Meteor Lake, которые выйдут в декабре. В свежем видео Intel показала, ка...

Экран на iPhone 15 Pro выгорел всего за пару недель. Опубликованы фотографии Как сообщает профильное издание iPhones.ru, экран iPhone 15 Pro выгорел всего за пару недель с момента приобретения. Наш автор купил iPhone 15 Pro всего две недели назад. Но силуэт клавиатуры уже выгорел — его видно невооружённым глазом на любом сером фоне. ...

Невероятно гибкие и переиспользуемые UI контролы для Angular В данной статья я расскажу о том как создавать гибкие UI контролы в несколько строк кода, которые легко расширяются, кастомизируются и поддерживаются! Читать далее

Идемпотентность: больше, чем кажется Друзья, всем привет! Идемпотентность в проектировании API — не просто формальность. Это свойство, часто рассматриваемое как способ получения одинакового ответа на повторяющийся запрос, на самом деле означает гораздо больше... Читать дальше →

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

Сеть как за кирпичной стеной: как защитить серверы с помощью облачного файрвола Seleсtel Статистика в сфере информационной безопасности остается неутешительной. Так, DDoS-Guard зафиксировала в России 384,8 тыс DDoS–атак — и это только в первом квартале 2023 года. А по данным «РТК-Солар», количество кибератак в этот период выросло до 290 тыс. Это в полтора раза...

Обобщённые типы. Часть 1/3. Полиморфные типы высокого рода В предыдущей статье раскрывались некоторые базовые понятия теории типов. В этот раз мы рассмотрим обобщённые типы (generics) – необходимость появления такой абстракции, ключевые особенности и различные сценарии использования в программировании. Читать первую часть

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

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

Насколько быстрым оказался новый iPad Pro? Появились результаты первых тестов Новейший планшет iPad Pro от Apple стал первым в мире устройством, оснащенным однокристальной системой Apple M4. Теперь устройство появилось в базе данных Geekbench. На соответствующей странице показано, что одноядерный результат iPad Pro M4 составляет 3767, а многоядер...

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

Материалы для подготовки к собеседованию на позицию Data Scientist. Часть 2: Классическое машинное обучение Привет! Меня зовут Артем. Я работаю Data Scientist'ом в компании МегаФон (платформа для безопасной монетизации данных OneFactor).В предыдущей статье я поделился материалами для подготовки к одному из самых волнительных (для многих) этапов - Live Coding.В этой ...

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

Самую большую проблему Samsung S23 Ultra решили в новой линейке S24 Все мы прекрасно знаем рыночную особенность флагманов Samsung быстро падать в цене – велик соблазн купить самый топово-ультровый Android-флагман 2023 года за 80 тысяч (стоимость относится к базовой модификации 8/256 ГБ). Более того, смартфон и дальше будет стабильно получа...

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

[Перевод] Керниган и Пайк были правы: делай что-то одно и делай это хорошо Роб Пайк и Брайан Керниган В октябре 1984 года два идеолога опубликовали радикальный манифест… ну, или что-то вроде того. Легенды computer science Брайан Керниган и Роб Пайк сформулировали в Program Design in the UNIX Environment паттерн архитектуры ПО, за сохранение котор...

10 ошибок при выборе VPS и советы по их избежанию Выбор VPS (Virtual Private Server) - важный шаг в управлении онлайн-ресурсами. Однако многие пользователи сталкиваются с распространенными ошибками, которые могут привести к проблемам с производительностью, безопасностью и стоимостью. В этой статье мы рассмотрим топ-10 ошибо...

Графика древности: палитры, часть 2/2 В предыдущей части цикла статей мы рассмотрели историю эволюции палитр в цветной компьютерной графике домашних компьютеров и игровых консолей, а также причины, почему они оказались именно такими и содержали те или иные цвета. Однако тема палитровой графики ещё не исчерпана....

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

PVS-Studio в 2023 За окном январь 2024 года, а это значит, пора подвести итоги за 2023 год! В этой статье мы не только рассмотрим всё новое, что появилось за 2023 год, но и освежим память по основным функциональным возможностям статического анализатора PVS-Studio. Читать дальше →

Проект «Селенит». Часть 5: Контроллер, встроенное ПО и квадратурный модулятор Аппаратура SDR (Software-defined Radio), как и следует из названия, представляет собой программно-аппаратный комплекс. В предыдущих частях цикла были рассмотрены преимущественно аппаратные решения радиотракта трансивера Selenite Lite. В большей части данной публикации будет...

Пример дивергентного мышления ИИ при использовании 1С запрос copilot Американский психолог Джой Пол Гилфорд, известный исследователь проблем интеллекта, в свое время предложил понятие дивергентного мышления. Сам Гилфорд определял его, как тип мышления идущий в различных направлениях. Ищем все возможные способы решения одной проблемы. Выходи...

Статический анализ мультиязычности Angular приложения c помощью ngx-translate-lint Не так давно мне довелось решить интересную задачу, направленную на снижение риска того, что разработчик забудет о мультиязычности приложения и это станет причиной заведения нежеланных багов в будущем. Изначально я искал решение проблемы на Хабре, но, увы, не нашел. Поэтому ...

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

Основы тестирования в Go: mock-объекты, fuzzing и property-based testing Привет, Хабр!Golang как ЯП очень хорош для разработки высокопроизводительных приложений. В любом проекте наступает момент, когда нужно проверить, насколько хорошо все работает на самом деле, это можно сделать с помощью тестирования.Тестирование в Go можно выполнять с помощью...

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

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

Делаем аналог обучающей игрушки с карточками-словами Попала ко мне в руки занятная вещица — устройство Talky от Lumicube. Это электронный блок, в который вставляют карточку и он озвучивает написанное на ней слово. Предполагается, что это «развивающая» игрушка — ребенок вставляет в него карточки и запоминает слова, как визуальн...

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

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

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

Тише едешь — дальше будешь. Гены тихоходок и ключи к звёздам В конце сентября я публиковал в этом блоге статью «Неизбежность, незаменимость и туманные перспективы пилотируемой космонавтики». Эта статья продолжала темы, также затронутые в переводе моего коллеги @SLY_G «Как учёные снижают пагубное влияние космических полётов на орг...

[Перевод] Обнаружение движущихся объектов с помощью OpenCV с использованием обнаружения контуров и вычитания фона Обнаружение движущихся объектов широко используется в самых разных приложениях, от видеонаблюдения до мониторинга дорожного движения. Это важнейшая задача в постоянно развивающейся области компьютерного зрения. Библиотека OpenCV с открытым исходным кодом, изве...

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

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

Современная безопасность контейнерных приложений Чем раньше команда задумается о проблеме безопасности, тем лучше. В этой статье обсудим, какие проблемы ИБ есть в стандартном контейнерном приложении, поговорим о безопасности использования Docker, Kubernetes и Terraform и разберём, как можно встроить проверки в стандартный ...

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

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

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

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

Security Week 2403: Bluetooth-уязвимости в Windows, Linux, Android, iOS и Mac OS На прошлой неделе исследователь Марк Ньюлин в подробностях рассказал об уязвимостях в стеке Bluetooth, которые затрагивают в той или иной степени практически все ПК, смартфоны и другие мобильные устройства. Его статья и выступление на конференции ShmooCon дополняют опубликов...

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

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

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

Где заканчивается Flutter и начинается платформа? Сердце фреймворка Flutter (который для разработчиков часто представляется только в виде набора классов на языке Dart) написано на языке С и компилируется в двоичный артефакт, известный как Flutter Engine, подключаемый к приложению и используемый из Dart-классов через механиз...

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

Симуляция миров: как работает нейросеть SORA Видеоконтент стал неотъемлемой частью нашей жизни. ТикТок, Ютуб и прочие платформы с каждым днём всё больше используются людьми как способ отвлечься от повседневности и позволяют ненадолго предаться прокрастинации. Кто бы что ни говорил, но в 2024 году человек не представляе...

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

Тайны пингвина: как работают исключения и прерывания в Linux? Привет, хабр! Моя прошлая статья о работе памяти в Linux вам понравилась. Сегодня мы разберем работу исключений и прерываний. Что это, как они работают в ОС и Linux? Давайте разберемся вместе! Читать дальше →

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

«Хватит программировать в YAML и JSON!»: неочевидные проблемы шаблонизирования Часто в IT-компаниях разработчики используют шаблонизаторы в YAML, JSON и Terraform, управляя параметрами конфигураций, ACL-списками и другими сущностями. Но у такого подхода много подводных камней: шаблоны не всегда корректно отрабатывают и превращают код в спагетти. Особе...

Практический гайд по процессам и потокам (и не только) в Python За то время что я занимаюсь менторством я заметил, что большинство вопросов новичков связаны с темами: конкурентность, параллелизм, асинхронность. Подобные вопросы часто задают на собеседованиях, в работе эти знания позволяют писать более эффективные и производительные систе...

Темпоральные типы в PostgreSQL и их использование Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня э...

Как мы разгрузили руководителей проектов и освободили время для «профильных» задач Руководители IT-проектов (РП) на рынке труда в остром дефиците: по данным hh.ru на 1 вакансию приходится 1,9 резюме. Поэтому часто в компаниях один РП ведет по 5-6 проектов. При такой загрузке успеть все и сохранить качество практически невозможно.Решить проблему с загрузкой...

Манифест Киберправды Данный текст является ответом на опубликованную накануне «Оду бесполезности споров» с целью рассказать о проекте, который намерен принципиально решить проблему анализа достоверности информации в Интернете и оценки репутации ее авторов. Я считаю, что новые никогда ранее не су...

Простой VBA скрипт для преобразования таблицы excel телефонной базы контактов в файл .vcf Недавно я пытался перекинуть свои контакты из старого Блекберри в телефон с Андроидом и меня постигла неудача - оказалось не существует инструментов для корректного преобразования одного формата в другой.Тогда я решил преобразовать мои контакты, полученные из старого телефон...

Безопасный Continuous Deployment БД по принципам DB-First В статье рассматривается Continuous Deployment для БД с бесшовными релизами за счёт обратно-совместимых обновлений и автоматизации проверок совместимости с помощью подхода DB-First. Читать далее

Книга рецептов Rust. 1/2 Hello world! Книга рецептов — это коллекция простых примеров, демонстрирующих хорошие практики решения распространенных задач программирования с помощью крейтов экосистемы Rust. Читать дальше →

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

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

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

Препарируем Wazuh. Часть 1: Базовая установка Тема SIEM решений с открытым исходным кодом постоянно проявляется на просторах сети. Одних интересуют SIEM системы как таковые, и хочется разобраться в решениях данного класса, но при этом не хочется связываться с тяжелыми и запредельно дорогими коммерческими SIEM. Другие не...

Как математика улучшает геосервисы и помогает быстрее сориентироваться Сегодня всё чаще требуется учитывать географическую привязку и выполнять поиск в локальном окружении клиента. Иными словами, регулярно возникает необходимость найти что-то (или кого-то) рядом с конкретным пользователем. «Где ближайший банкомат?», «Кто из друзей поблизости?»,...

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

Инструкция: обход геоблокировки для установки обновления «Moment 4» для Windows 11 Несколько часов назад Microsoft начала распространять обновление под кодовым названием «Moment 4» для Windows 11 версии 22H2, которое включает в себя большое количество новшеств и изменений. Об этом вы можете прочитать в нашей статье по этой ссылке. Однако вскоре выяснилось...

Дизайн уровней в DOOM 1993: игра, на которой можно учиться Doom – моя первая игра, которую довелось пройти в детстве, и каждый год хочется её пройти заново. Она внесла вклад в профессию дизайнера уровней, где мне довелось работать. В Doom до сих пор используются методы, делающие уровни качественными, интересными, многие запоминающ...

Уже даже Nvidia говорит о проблемах процессоров Intel в играх. Компания в таких случаях советует обращаться к Intel Проблема с процессорами Intel в играх стала настолько насущной, что о ней теперь заговорила даже Nvidia.  В своём свежем драйвере компания оговаривает, что в случае наличия у пользователей новейших процессоров Intel и проявления проблем в играх, стоит обратиться и...

Межпланетный зонд-ветеран NASA Voyager 1 посылает на Землю странную «тарабарщину»: на решение проблемы уйдёт немало времени Американское управление по аэронавтике и исследованию космического пространства NASA рассказало о неполадках межпланетного зонда Voyager 1 (Вояджер-1). Сейчас инженеры пытаются решить проблему, но пока зонд отправляет на Землю лишь «двоичную тарабарщину». &n...

DIY — USB Jig для восстановления окирпиченных Android девайсов Не так давно ко мне в руки попал окирпиченный Android девайс Samsung Galaxy SL. Владелец не хотел нести в СЦ, под предлогом нехватки денег в данный период. Так как тоже обладаю смартфоном на Андроиде решил попробовать сделать usb-jig. UPD. Не так давно, это году эдак в 2011,...

Смартфон для джаваскриптера-олдфага: стоит ли гику брать дешманские девайсы на KaiOS? Смотрим на Nobby 240 LTE Друзья! Много ли платформ вы знаете, где для написания пользовательских приложений используется стек… веб-технологий, причём это единственный нативный способ писать программы? Услышав о HTML5 + CSS + JS, на ум приходит разве что webOS — которая используется в современных т...

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

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

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

[Перевод] Анатомия shadcn/ui Если вы следите за новинками экосистемы JavaScript, то должны были слышать об интересной библиотеке пользовательского интерфейса (user interface, UI) под названием shadcn/ui. Вместо того, чтобы распространяться в виде пакета npm, компоненты shadcn/ui добавляются с помощью ...

Эй конвертер, не шипи! Строптивые преобразователи платы для E-Ink экранов (Ч2) Приветствую вас, друзья! Продолжаем разработку системы питания универсальной платы для E-Ink экранов. В этой части займёмся запуском и отладкой прототипа, «почувствуем вкус» ферритовых бусин, взорвём полсхемы. Поработаем с обратной связью: узнаем простой способ испытания ус...

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

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

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

«Найти и утилизировать»: как мы автоматизировали очистку ресурсов после тестирования с помощью Tempest Cleanup Всем привет! Меня зовут Валентина, я разработчик в тестировании Selectel. В своей прошлой статье я рассказала, как мы автоматизировали запуск тестов Tempest в GitLab. Статья вам понравилась, поэтому я написала продолжение. В нашей автоматизации была проблема: после тестов ...

Рисуем с нейросетями: тонкие корректировки в Midjourney и Lumenor.ai Привет, Хабр! Я – Михаил Суворов, ведущий дизайнер коммуникаций в X5 Tech. В статье я расскажу несколько рабочих способов “уговорить” нейросеть нарисовать то, что вам нужно. Я использую нейросети как генераторы изображений, в первую очередь для создания иллюстраций.Если вы д...

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

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

[Перевод] Две мощных возможности Python, упрощающие код и улучшающие его читабельность Улучшите качество кода, украсив его оператором match и срезами объектов.Python не случайно стал невероятно популярным в современной технической среде. Он, если сравнивать его с другими языками программирования, возможно, является самым удобным и доступным для новичков. И, вм...

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

Библиотека dplyr в R Библиотека dplyr в R позволяет манипулировать данными, проводить фильтрацию, выборку, сортировку, группировку данных и многое другое.В этой статье как раз и рассмотрим эту библиотеку. Читать далее

«Берегите платье снову, а персональные данные смолоду»: рассуждения и советы по цифровой гигиене Всем привет! Меня зовут Андрей, я специалист по информационной безопасности в Selectel. За время своей работы я понял, что часто люди используют правила цифровой гигиены в профессиональной деятельности, но совсем забывают про них в обычной жизни. По данным компании RTM Grou...

database/sql: плохой, хороший, злой Многие Golang-разработчики  пробовали работать с БД в Go, и у каждого — свои боли. В этой статье разберём библиотеку database/sql как безотносительно конкретной СУБД, так и применительно к YDB. Рассмотрим трудности эксплуатации при использовании драйвера database/sql на...

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

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

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

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

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

Garmin представила GPS-навигатор eTrex Solar с неограниченной автономностью Его ключевая особенность — длительное время автономной работы, которое можно многократно продлевать даже вдали от розетки с помощью встроенной солнечной панели

Garmin представила GPS-навигатор eTrex Solar с неограниченной автономностью Его ключевая особенность — длительное время автономной работы, которое можно многократно продлевать даже вдали от розетки с помощью встроенной солнечной панели

[Перевод] Не нужно блокировать кнопки Одна из наиболее распространенных проблем доступности, которую я нахожу (и исправляю) в проектах своих клиентов – это динамическое блокирование кнопок в формах после отправки последних. Сегодня я хотел бы рассказать, почему разработчики так делают, почему это не работает и ч...

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

Замена джойконам Nintendo Switch, недорого и удобно. Обзор DOBE TNS-0163 Сегодня мы рассмотрим альтернативу джойконам для Nintendo Switch, которая не только дешевле, но и улучшает эргономику этого типа контроллеров. Использоваться они могут с разными версиями, включая Lite и OLED, а также со сторонними устройствами, включая поддержку STEAM. Ком...

Почему люди боятся уколов и как избавиться от этого страха Боязнь уколов называется трипанофобией, и она очень распространена В 2012 году канадские ученые провели опрос и выяснили, что от боязни уколов страдают как дети, так и взрослые. У жителей постсоветских стран такая проблема встречается чаще, чем у граждан США. Некоторым людям...

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

Прокачиваем вёрстку ARIA-атрибутами. Атрибут role В разговорах людей, интересующихся доступностью, часто можно услышать слово «Роль». Так, что это такое? Это специальная форма представления элемента для скринридера. Устанавливается она с помощью атрибута role. Сегодня поговорим о нем. Я не буду описывать всё. Атрибут слишк...

[Перевод] Тестирование с помощью Compose В последние годы в разработке Android наметился заметный сдвиг в сторону декларативных UI-фреймворков, и последним дополнением к этой экосистеме стал Jetpack Compose. Декларативные UI-фреймворки предлагают структуры контроля, с помощью которых можно менять способ отрисовки п...

После обновления смартфоны Xiaomi, Poco и Redmi отправляются в вечную перезагрузку Пользователи смартфонов Xiaomi, Poco и Redmi, столкнулись цикличной перезагрузкой операционной системы, известной как Bootloop. Вместо нормальной загрузки ОС, устройства попадают в режим восстановления (Recovery), предназначенный для устранения проблем с системой. Попыт...

Методы балансировки в А/Б тестировании Привет, Хабр! Как часто вы думаете о балансе? Балансе вселенной, личной жизни и работы, балансе БЖУ в своем рационе или балансе в банке. Мы в команде ad-hoc X5 Tech не только думаем о балансе, но и сталкиваемся с ним в работе. Сегодня поговорим о балансировке при анализе при...

Как установить NCALayer на Linux Всем привет, меня зовут Абай. В последнее время часто замечаю, что у пользователей Linux в Казахстане постоянно проблемы с установкой NCALayer, поэтому решил написать гайд, который простым языком объяснит, как установить его через терминал... Читать далее

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

Путь от преподавателя английского к AI Product Manager Всем привет, меня зовут Оля Шерстюк, раньше я была преподавателем английского языка, но начиная с 2023 года решила поменять свою деятельность и перейти в IT, сейчас я учусь в магистратуре AI Talent Hub. Хочу поделиться с вами своей историей.В 2023 я зачеркивала дни в календа...

Частоту кадров в Counter-Strike 2 научились увеличивать всего лишь с помощью командной строки Инсайдер под псевдонимом harumi обнаружил интересную особенность в игре Counter-Strike 2.

Увеличиваем свою производительность в WebStorm / PhpStorm c помощью шаблонов В статье рассмотрим как создавать шаблоны в продуктах Jesbrains (WebStorm, PhpStorm, Intellij, PyCharm). Читать далее

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

История о том, как я решил сплотить и мотивировать команду техподдержки Cloud.ru «Быть саппорт инженером — довольно депрессивный процесс» — эту фразу я услышал на одной из конференций. Часто работа в технической поддержке ассоциируется с рутиной, однообразием и общением с гневными клиентами. Одним словом — не работа мечты для инженеров. При этом для спец...

MyBatis «на минималках» Привет, Хабр! Меня зовут Пётр Гусаров, я Java‑программист в CDEK. В этой статье расскажу про не очень распространённый фреймворк MyBatis. Почему MyBatis? Потому что мы в CDEK используем его в большинстве проектов, и в деле он весьма не...

Практика замены MS Office: 4 ситуации, когда это невозможно…но вполне получается Привет! На связи Саша Безноздрев, ведущий инженер-разработчик К2Тех. Тематика замены продуктов Microsoft для корпоративных пользователей лежит сегодня на поверхности. Действительно, как быть, если вендор планирует аннулировать все подписки и отключить все, до чего сможет дот...

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

Thermaltake SwaFan EX14 RGB PC Cooling Fan White TT Premium Edition (3-Fan Pack): набор из трех вентиляторов 140 мм с многозонной RGB-подсветкой, магнитными разъемами и дополнительными сменными реверсивными крыльчатками Вентиляторы из набора Thermaltake SwaFan EX14 RGB PC Cooling Fan White TT Premium Edition (3-Fan Pack) являются составной частью экосистемы TT RGB Plus, объединяющей продукты с адресуемой светодиодной подсветкой и ПО TT RGB Plus. Рассмотренный в статье комплект состоит из тр...

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

Это первая действительно удачная топовая SoC Exynos за многие годы? Samsung раскрыла технические подробности об Exynos 2400 Однокристальная система Exynos 2400 в тестах, которые уже успели попасть в Сеть, показывает себя очень неплохо, порой опережая даже Snapdragon 8 Gen 3. И Samsung лишь сейчас раскрыла все подробности об этой платформе.  Итак, как мы знали и ранее, Exynos 2400 выдел...

Обзор безопасных микроконтроллеров Flagchip для автомобильной электроники Чем заменить санкционные микроконтроллеры STM, Kinetis и другие, особенно для ответственных и безопасных приложений? - На наши российские, конечно, если такие найти. Но ведь есть еще и микроконтроллеры из Китая, которые благодаря дружбе наших стран можно использовать вместо ...

Дайджест научпоп-новостей за неделю, о которых мы ничего не писали • Телескопы НАСА рассмотрели рекордно далёкую чёрную дыру• Инженеры смоделировали робота по образу 450-млн летнего ископаемого• Бетельгейзе может быть результатом "тихого" слияния звёзд• Выхлоп газовых плит связали с детской астмой• Раскрыты секреты эволюции кошек Читать дал...

[Перевод] Как обхитрить мозг и заставить его полюбить сложные задачи [Дофаминовый детокс] Как часто вы ловили себя на мысли «Вот, блин, весь выходной прозалипал в бесконечных лентах, а ничего полезного так и не сделал»? Не спешите себя винить! Скорее всего, все дело в вашем мозге, который привык баловаться дофамином. Увы, с этой проблемой сталкиваются большинство...

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

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

[Перевод] Безопасность памяти меня не волнует Фото с сайта платформы CHERIoT, проекта Microsoft по решению проблем с доступом к памяти IoT-устройств на аппаратном уровне Такое заявление может показаться странным для тех, кто более десяти лет работает над обеспечением безопасности памяти на аппаратном уровне, так что я...

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

Не сканируется QR-код со смартфона — почему и что делать? Сканирование QR-кодов помогает быстро выполнять переходы на сайты и другие действия. Но почему со смартфона иногда не сканируются QR-коды и как это исправить? Необходимость отсканировать QR-код часто появляется не только в общественных заведениях, чтобы подключиться к Wi-Fi...

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

Миф о «Парке Юрского периода»: почему воскрешение динозавров остаётся недостижимой мечтой Первый «Парк Юрского периода» вышел в 1993 году. В фильме Стивена Спилберга был показан мир, в котором ученые нашли ДНК динозавров в доисторическом янтаре и клонировали их в лаборатории. В результате древние существа оказались на Земле рядом с современными животными. В ...

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

Безопасность CI/CD: обзор тoп-10 угроз по версии OWASP и рекомендации по их устранению в вашем конвейере Привет, Хабр!Меня зовут Артём Пузанков, я DevSecOps Cluster Lead (руководитель направления безопасной разработки) в МТС Digital.Экспертное сообщество OWASP представило OWASP Top 10 CI/CD Security Risks — список критических уязвимостей конвейера CI/CD. Его получили, исследова...

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

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

Метод SMART. Что это и почему про него важно знать руководителю? Привет! Меня зовут Лера, я в управлении проектами уже 7 лет. Реализовывала проекты на стыке AR/VR/ML-технологий в сервисной компании. Сейчас работаю в EdTech и параллельно занимаюсь менторством начинающих проджектов и руководителей.Прежде чем мы перейдем к основной...

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

Как рассчитать CLTV с помощью машинного обучения и как нам в этом помогает Feature Store Условия задачи: дано число клиентов банка N, число банковских продуктов М, горизонт времени прогноза Т. Нужно посчитать ( Pij ).Привет, меня зовут Игорь Дойников, в Альфе я CDS — Chief Data Scientist в Розничном Бизнесе. Моя команда строит модели машинного обучения для розни...

Графика древности: легендарный Mode 7 Технологический переход в индустрии видеоигр, случившийся в середине 1990-х годов — от пиксельной графики игр прошлых лет к полигональной графике игр чуть менее прошлых лет — произошёл не одномоментно. Ему предшествовала эпоха экспериментов, когда разработчики придумывали р...

WinAPI днем и ночью. Ищем способы обращения к нативному коду из C# Для подписчиковОдним из немногих минусов C# считается некоторая сложность при вызове методов WinAPI. Многие возможности уже перекочевали в сборки, но до сих пор приходится часто сталкиваться с задачей вызова функций Win32 напрямую. В таком случае используются PInvoke, DInvok...

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

Два секундомера на логических микросхемах Привет, Хабр! Сегодня мы рассмотрим и соберём два цифровых таймера без микроконтроллера. Это прекрасные примеры того, каким образом можно добиться желаемого результата максимально простыми средствами. Читать дальше →

Кратко про Serde в Rust Serde — это высокопроизводительная библиотека для сериализации и десериализации данных в Rust. Она поддерживает различные форматы данных, включая JSON, YAML, TOML, BSON и многие другие.В этой статье рассмотрим основы Serde в Rust. Читать далее

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

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

Использование LLM в автоматизации рутинных задач Всем привет!На связи Георгий Бредис, Deep Learning Engineer из команды Intelligent Document Processing в SberDevices. Наша команда занимается задачами автоматизации бизнес-процессов путем извлечения информации из неструктурированного контента и созданием сервисом суммаризаци...

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

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

Получаем спутниковые координаты GPS/ГЛОНАСС с помощью модуля SIM868 на Repka Pi Сегодня уже трудно найти человека, который не знает, что такое навигатор и GPS-координаты. В этой статье мы расскажем о том, как встроить функции навигатора в устройство, собранное на базе микрокомпьютера Repka Pi. Для получения координат мы будем использовать модуль GSM/GPR...

[Перевод] Новые клиентские хуки React 19 Вопреки распространенному мнению, основная команда разработчиков React занимается не только серверными компонентами React и Next.js. В следующей версии — React 19 — появятся новые клиентские хуки. Они сфокусированы на двух ключевых аспектах: выборке данных и работе с форм...

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

Можно ли взломать хакера? Распутываем кибератаки с CTF-турнира. Часть 3 Привет, Хабр! Продолжаем путешествовать по CTF-турнирам. Из последних — 0xL4ugh CTF 24 от одноименной команды из Египта. В статье расскажу, как я решил задачи из категории DFIR (Digital Forensics and Incident Response) и web. Сохраняйте в закладки: пригодится как опытным, т...

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

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

Аутентификация для WebSocket и SSE: до сих пор нет стандарта? WebSocket и SSE появились более десяти лет назад, однако до сих пор в стандартах отсутствуют рекомендации по решению задачи аутентификации для подобных соединений.В статье разберем особенности аутентификации применительно к протоколу WebSocket и технологии Server-Sent Events...

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

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

Из-за брака обогревателя на Honda HR-V 2023 разбивается заднее стекло, но Honda не объявляет отзыв Производственная проблема в некоторых автомобилях Honda HR-V может привести к самопроизвольному разрушению заднего стекла, при этом осколки попадают как в салон, так и на дорогу. На данный момент эта проблема не привела к отзыву или официальному расследованию Национальн...

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

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

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

[Перевод] Искусство создания понятных графиков Эта статья — субъективное эссе о хороших и плохих практиках в визуализации данных, в нём приведены примеры и объяснения. В папке Scripts/ на Github есть файлы .Rmd, генерирующие показанные ниже графики. Для их работы требуются R, RStudio и пакет rmarkdown. R: Скачать R R...

Стартовая динамика как у мотоцикла с литровым мотором, а расход – как у 250-кубового. Представлен Kawasaki Ninja 7 Hybrid – первый в мире гибридный мотоцикл Kawasaki представила мотоцикл Ninja 7 Hybrid, создатели называют его первым в мире двухколесным гибридом. Схема тут примерно такая же, как в автомобильных гибридах: в силовой установке главенствующая роль отводится ДВС (в данном случае его объем 451 см3), а помогает ем...

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

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 7 Хабр, я снова пришёл к вам с Ильёй с практическими советами про доступность. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья — мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке. Сегодня мы рассмотрим следующие аспекты...

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

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

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

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

А где же звук, или почему дистрибутив Ubuntu может не звучать «из коробки» Данная статья написана в помощь пользователям Ubuntu (Lu.., Xu.., Ku.. и прочих derivatives) которые столкнулись с отсутствием звука или проблемами с другим оборудованием на достаточно свежем «железе». Это статья не перевод, а попытка обобщить и показать путь. Если оборудова...

Плёночная фотография: инструкция по выживанию в условиях высоких цен Хотите детокса от «цифры»? А может, вы просто хотите попробовать что-то новое в фотографии? На помощь придёт плёночная фотография! Дорого, но интересно. Поверьте, попробовать точно стоит! В этом материале я затрону два самых распространённых формата плёнки — 35 мм и 120, со...

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

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

Система иконок на React Очень часто при разработке React-приложения нам приходится работать с большим количеством иконок в проекте. Наверное, каждый разработчик стремится максимально упростить и автоматизировать подобные рутинные задачи. Есть несколько способов работы с иконками в веб-приложениях, ...

[recovery mode] Как стать Flutter-разработчиком бесплатно? Всем привет! Я Даниил Беликов, мобильный разработчик в крупной российской компании. Мои знакомые часто интересуются, стоит ли им входить в IT и на кого учиться. Обычно я отвечаю, что если человек визуал, есть смысл попробовать Flutter. Во-первых, это востребовано. Во-вторых,...

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

[Перевод] Common Table Expressions Common Table Expressions (CTE) или обобщенное табличное выражение, впервые появилось в версии SQL Server 2005, и это простой способ разбить сложный запрос T-SQL на несколько запросов, что придаёт больше гибкости и управляемости. CTE во многом очень похожи на представлен...

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

Protestware: найти и обезвредить Protestware: найти и обезвредить Привет, Хабр! Меня зовут Владимир Исабеков, я работаю в Swordfish Security, где занимаюсь динамическим анализом приложений. Сегодня мы поговорим о таком явлении, как Protestware, когда вредоносный код встраивается в открытые программные компо...

[Перевод] О сложности и монолитах Изображение сгенерировано с помощью DALL·E. Запрос: a complex monolith in a server room, with the faces of IT consultants with suits engraved in it with twisted faces, mathematical formulations about complexity floating around, and with a mysterious malevolent godlike presen...

Книга «Как сочинить видеоигру: 201 совет от сценариста Broken Sword и Resident Evil» Привет, Хаброжители! Разработка сценария для видеоигры — увлекательное дело. Но игровым писателям приходится постоянно учиться и бросать вызов ограничениям. Это связано с тем, что игровая индустрия развивается и становится все более зрелой. Тут и стремительное совершенств...

[Перевод] Начало работы с Axum — самым популярным веб-фреймворком Rust Когда дело доходит до выбора серверного веб-фреймворка в экосистеме Rust, можно запутаться из-за большого количества вариантов. В прошлом, лидером по популярности был Rocket, но сейчас за первенство сражаются Axum и actix-web, и Axum все больше набирает обороты. В этой ста...

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

[Перевод] Достижение высокой пропускной способности без усугубления задержки Задержка и пропускная способность При обсуждении производительности часто встречаются термины «задержка» (latency) и «пропускная способность» (throughput) для описания характеристик программного компонента. Мы можем дать следующее толкование этим терминам: Задержка — это м...

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

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

Что выбрать: Npm, Yarn или Pnpm? На данный момент у нас используются три самых популярных менеджера пакетов (Npm, Yarn и Pnpm). И всё бы ничего, но разные команды начали периодически обращаться с проблемой несоответствия типов Typescript из наших транзитивных зависимостей. Выяснилось что это проблема Npm и ...

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

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

Почему Сборка с Помощью Есlipse ARM GCC Плагинов это Тупиковый Путь В программировании микроконтроллеров часто используют Eclipse с плагинами.Главным образом от незнания языков скриптов сборки (Make, Cmake, Ninjia и т п).В этом тексте я напишут почему способ сборки из Eclipse c ARM плагинами — это тупиковый путь...

Готовимся к собеседованию по Rust: 4 самых частых вопросов. Часть 1 Привет, Хабр!Rust — язык программирования с акцентом на безопасность, скорость и параллелизм. Rust решает многие проблемы, с которыми сталкиваются на других ЯП, например, управление памятью без сборщика мусора. Очевидно из-за многих преимуществ Rust выбирают все большей комп...

Разбираемся в новом роутинге в Go 1.22 В начале февраля 2024 года вышел Go 1.22. Вот, что нового и интересного принёс новый релиз: сделали более безопасное поведение переменных в циклах, добавили функции-итераторы в качестве rangefunc-эксперимента и улучшили шаблоны роутинга. В этой статье я сфокусируюсь на после...

C этой платформы Qualcomm начнёт новую эпоху Windows-ПК с Arm. Раскрыты все параметры SoC Snapdragon X Elite Наконец-то мы можем понять, какие платформы Qualcomm будут конкурировать с Apple M на рынке ПК. В Сеть попали данные с грядущей презентации, где описана SoC Snapdragon X Elite.  Судя по всему, Snapdragon X будет новой линейкой, а модель Elite займёт в ней место фл...

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

Руководство по созданию кластеров и управлению инфраструктурой с помощью Terraform Terraform — один из самых популярных инструментов для автоматизации работы с инфраструктурой. По данным исследования состояния DevOps в России 2023, его выбирают 37% специалистов. Вместе с тем многие DevOps-инженеры и системные администраторы продолжают сталкиваться с проб...

[Перевод] Функции ранжирования: RANK, DENSE_RANK, and NTILE В предыдущей статье обсуждалась функция ROW_NUMBER. Сейчас же мы рассмотрим другие функции ранжирования: RANK, DENSE_RANK и NTILE. Начнем с RANK и DENSE_RANK. Эти функции по функциональности и реализации аналогичны ROW_NUMBER. Разница в том, что ROW_NUMBER присваивает уникал...

Как прошёл Selectel Day Off 2023 В этом году компания Selectel решила продлить летние каникулы и в первое воскресенье сентября провела бесплатный IT-фестиваль с соответствующей атмосферой.В статье описывается, что было на фестивале и какие впечатления он оставил у меня и моей подруги. Я также сделал 3х-мину...

[Перевод] Обфускация сетевого трафика и автоматическая интернет-цензура Интернет‑цензоры ищут способы выявить и заблокировать доступ в интернете к информации, которую они считают нежелательной. Для этих целей они часто используют такие сетевые инструменты, как глубокая проверка пакетов (Deep packet inspection, DPI), которые п...

Как увеличить шрифт так, чтобы контейнер не поехал? Адаптация UI/UX для людей с проблемами зрения в XML и Compose Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье я продолжу рассказывать о современных подходах разработки адаптивного UI /UX для людей с ограниченными возможностями, разных национальностей и особенностями развития. В этой статьей я расскажу про разработку инт...

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

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

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

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

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

Перегрев iPhone 15 Pro связан с конструкцией системы охлаждения, а не с процессором Авторитетный инсайдер и аналитик Apple Минг-Чи Куо рассказал, что проблема перегрева iPhone 15 Pro связана с особенностями конструкции системы охлаждения устройств, а не с процессорами, как предполагалось ранее.

Динамический JIT компилятор C++ Когда-то давно я писал статью-наблюдение про использование Хабра в качестве площадки для архитектурных ревью технических решений практически любой сложности Хабр — ума палата, и продолжаю пользоваться этим способом на постоянной основе. А теперь, похоже, я нашел еще один оч...

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

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

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

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

Как мы анализируем потребление памяти нативными приложениями Технологическая платформа 1С:Предприятие – это большой программный продукт (только на С++ - более 10 миллионов строк кода, а есть ещё Java и JavaScript). Подробнее про устройство платформы можно прочитать тут.В процессе эксплуатации решений, созданных на платформе 1С:Предпри...

Приложение «Телефон» недоступно — почему и что делать? Различные сбои могут привести к тому, что приложение для звонков на смартфоне будет недоступно. Расскажем, как исправить неполадки и наладить работу приложения «Телефон». Временный сбой телефона В первую очередь потребуется исправить временные проблемы в работе смартфона. Дл...

Простой способ создания самодельных витражей с помощью ЧПУ-станка Картинка Vecstock, Freepik Сегодня поговорим о такой интересной технике оформления стёкол, как витраж, а также попробуем прикинуть, как нам создать его минимальными усилиями! Читать дальше →

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

Apple разрешила использовать эмуляторы в App Store Последнее обновление политики проверки и отправки App Store внесло поправки в раздел 4.7, позволяющие использовать некоторые приложения, которые "предлагают определенное программное обеспечение, не встроенное в двоичный файл"

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

[Перевод] Как объяснить суть Kubernetes таксисту Не так давно я побывала на конференции Kubecon 2023 в Чикаго. Готовясь к конференции, я почитала статьи в блогах, а на самой конференции посетила несколько семинаров для начинающих (в жанре «101»). Но всё равно не могла сказать, что уверенно понимаю эту технологию. Хуже вс...

Топ-10 артефактов Linux для расследования инцидентов Лада Антипова из команды киберкриминалистов Angara SOC подготовила новый материал о полезных инструментах при расследовании хакерских атак. Материал с удовольствием опубликовали коллеги из Positive Technologies на своих ресурсах, поэтому мы можем сделать его доступным и для ...

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

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

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

Безопасность DevOps. Автоматизация и новые инструменты Цикл популярности понятий из безопасности приложений, 2022 год. Из одноимённого отчёта Gartner. См. также обновление за 2023 год В процессе внедрения системы безопасности в DevOps можно использовать многие инструменты, которые уже применяются в компании. Какие-то будут пло...

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

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

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

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

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

Троттлинг в Kubernetes. Или как настроить лимиты, чтобы приложения не “тормозили” Главная рекомендация - отказаться от лимитов!А теперь подробнее.Когда у вас много пользователей используют один кластер Kubernetes, возникает вопрос - как задать квоты, чтобы и приложениям хватало ресурса, и не случилось ситуации, когда из-за одного прожорливого соседа страд...

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

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

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

CVE-2024-1709 и массовая атака на медицинские учреждения США В данной статье рассказывается о 0-day уязвимости CVE-2024-1709, позволяющей обойти аутентификацию и получить неограниченный доступ к серверам и машинам, которые управляются с помощью ПО удаленного рабочего стола ConnectWise ScreenConnect. Данное ПО повсеместно используется ...

[Перевод] Снижение потребления LoRa ноды (TPL5010/TPL5110) От переводчика. В этой статье автор исследует тему снижения тока потребления беспроводной LoRa ноды при помощи использования специализированных микросхем семейства нано-потребляющих таймеров TPL5010/TPL5110. Плюс затрагивает вопрос влияния Arduino загрузчика на время жизни...

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

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

Расшифровка BitLocker — добыча ключа из микросхемы TPM Подключение сниффера к модулю TPM по шине LPC Полнодисковое шифрование BitLocker в ОС Windows считается довольно надёжным способом сохранения данных. По умолчанию оно использует алгоритм Advanced Encryption Standard (AES) в режиме сцепления блоков (CBC) или в режиме подстр...

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

Лучшие практики RuStore: правила хорошего Code Review для Android Привет, я Михаил Емельянов, руководитель Android-направления в RuStore. Над стором трудится большая команда разработчиков, проект регулярно дорабатывается, а количество новых строк кода неизменно увеличивается. За год работы команда магазина приложений выпустила невероя...

«Одна учетная запись — десять участников»: что такое федеративный доступ и как с ним работать Привет! Я Максим Филимонов, ведущий инженер команды администрирования сервисов в Selectel. Для доступа в аккаунты с инфраструктурой, которую мы сопровождаем, приходится хранить множество паролей, контролировать их соответствие парольным политикам, проводить ротацию учетных ...

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

Zyxel XMG1930-30HP: обзор способов управления В прошлой статье мы разобрались с внешним видом, индикаторами и даже заглянули внутрь коммутатора. Теперь пришла пора его подключить и посмотреть, каким образом системные администраторы и сетевые инженеры могут управлять этим устройством и контролировать его параметры. Чита...

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

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

Как работает Kubernetes пока ты спишь Эта статья - базовое описание того, из каких компонентов состоит Kubernetes, как он работает «под капотом». Это важно так как платформа сложная и: •  понимание ее работы влияет на факторы разработки; •  становится понятно, что можно и чего нельзя; • &n...

Range Extender на NRF24L01+PA+LNA: обмен текстовыми сообщениями между устройствами там, где нет сотовой связи Картинка Pressfoto, Freepik Эта идея появилась у меня достаточно давно, и наконец-то дошли руки её частично реализовать. А именно: хотелось попробовать сделать средство общения с помощью известного радиопередатчика NRF24L01+PA+LNA. В качестве способа общения на данном этап...

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

Организация GPU-вычислений для машинного обучения в компании: проблемы и трудности По мере того как компании стремятся использовать возможности искусственного интеллекта, резко возрос спрос на специализированные вычислительные ресурсы, в частности, на графические процессоры (GPU). Графические процессоры раньше ассоциировались в основном с играми и графикой...

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

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

Эффективные бэкапы в S3 с помощью Restic: краткое пособие по настройке В 2007 многие администраторы настраивали бэкапы с помощью утилиты rsync, но для этого нужно было выделять отдельный хост для хранилища. И одной из частых проблем было резервирование этого сервера для бэкапов, которое увеличивало накладные расходы. Также хост бэкапирования р...

Представлена стильная умная колонка с искусственным интеллектом Xiaodu Tiantian Casa ARIA Представлена умная колонка Xiaodu Tiantian Casa ARIA, которая уже поступила на полки крупнейших китайских онлайновых магазинов и предлагается по цене 420 долларов. Умная колонка Xiaodu Tiantian Casa ARIA получила стильный прозрачный корпус с белой рамкой, а также 67 ис...

[Перевод] Как работает код, который спит месяц В первой части этого небольшого цикла статей мы говорили о том, что механизм устойчивого выполнения (durable execution) сохраняет состояние программы в журнале, а также о связанных с этим сложностях в случае обновлений служебного кода, ведущих к утрате журналом актуальности...

[Перевод] Тестируем PCIe в новом Raspberry Pi 5 Если вы ещё не в курсе, то недавно было объявлено о выходе Raspberry Pi 5. Я специально снял ролик, где разобрал всю аппаратную часть – что изменилось, что появилось и чего не стало. В этой статье я представлю вам спецификацию новой модели, расскажу о некоторых особенностя...

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

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

Представлен планшет с экраном на цветных электронных чернилах и стилусом Bigme B751C Mini Компания Bigme объявила о выпуске планшета с экраном на электронных чернилах B751C Mini, который предлагается по цене 280 долларов в Китае. Это 7-дюймовое устройство толщиной 7 мм поддерживает рукописный ввод, а также распознаёт голос, благодаря встроенному чат-боту Ch...

Смартфоны Xiaomi отказываются работать после обновления. Не стоит пытаться сейчас Xiaomi запускает свежие Xiaomi 14 и Watch S3 в продажу и почти одновременно с этим раздаёт пользователям обновление, которое ломает смартфоны. Радует лишь то, что в большинстве случаев проблему можно решить без визита в сервисный центр, но, увы, с потерей всех данных на ус...

Детективная игра-головоломка The Flower of Evil вышла на смартфоны The Flower of Evil выпустили 1 мая в App Store с ценником 899 рублей. В Google Play тем временем доступна ранняя версия с возможностью бесплатно поиграть, а потом купить полную версию. По геймплею игроки берут на себя роль детектива, который проникает в разные лаборатории, о...

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

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

Парк юрского периода глазами нейросети: как развернуть Diffusers для генерации изображений за 10 минут Как часто бывает: появляется немного свободного времени, хочется отдохнуть и написать картину… но его то ли недостаточно, то ли просто лень размахивать кистью. Но можно делегировать задачу нейросети — для этого необязательно использовать Midjourney или DALL-E. Один из вари...

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

Евгений DockerAuthPlugin’ович Онегин Интересное начало, не так ли? Меня зовут Роман, и я младший инженер информационной безопасности Ozon. В этой статье я расскажу о проблеме отсутствия авторизации доступа к Docker daemon / Docker Engine API / командам Docker при работе с контейнерами в экос...

Объявление и инициализация переменных в C++ Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это шестая статья из серии, список предыдущих статей приведен в конце в разделе 7. Серия ориентирована на программистов, имею...

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

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

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

Проведение фишинг-учений с использованием вредоносных ссылок и HTML-приложений. Часть 1 Многим угрозам можно противопоставить технические средства защиты информации (СЗИ): как базовые, так и системные решения. Но сколько бы ни стоило СЗИ, и сколько бы ни знал о устройстве инфраструктуры специалист, главной головной болью все равно остается человеческий фактор. ...

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

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

Qualcomm предствила Snapdragon X Plus для ноутбуков с Windows on ARM Qualcomm анонсировала десктопный процессор Snapdragon X Plus для ноутбуков под управлением Windows on ARM. Этот чип будет дешевле, чем флагманский Snapdragon X Elite, но при этом он предлагает достаточно высокую производительность в повседневных задачах, играх и при работе ...

YandexGPT API быстро и без труда с Python SDK. Делимся опытом интеграции YandexGPT API — сервис для доступа к генеративным языковым моделям, хоть и является мощным инструментом во многих задачах, однако может озадачить разработчика, решившего внедрить его в свои проекты отсутствием официального SDK, разнообразием способов...

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

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

«Драйвер недоступен» при подключении телефона к ПК — что делать? При попытке подключить смартфон к компьютеру через USB-кабель может возникать ошибка «Драйвер недоступен». Расскажем, как ее исправить и можно ли это сделать самостоятельно. Чтобы файлы на смартфоне можно было просматривать и изменять на компьютере или ноутбуке, необходимы ...

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

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

Создаем I2C Master Controller на Verilog. FSM, Clock, Output Logic, etc После длительного перерыва я продолжил разработку I2C Master Controller на Verilog. В прошлых статьях я рассмотрел основной теоретический материал, необходимый для реализации изначальной задумки. В этом материале переходим к более интересному содержанию: я последовательно ра...

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

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

Инструкция: включаем функцию дублирования вкладок в «Проводнике» Windows 11 Build 22635.3566 (Beta) В инсайдерской сборке Windows 11 под номером 22635.3566 для канала Beta пользователи PhantomOfEarth обнаружил несколько небольших улучшений, которые пока не были официально представлены и отключены по умолчанию. Скорее всего, они станут доступны инсайдерам в ближайшие недел...

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

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

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

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

[Перевод] Управляемое данными тестирование с использованием Cucumber Тестирование на основе данных позволяет сократить объем ручных действий, необходимых для проведения тестирования, а также упростить управление и сопровождение тест-кейсов. В целом использование тестирования на основе данных позволяет повысить качество программного обеспечени...

Room для Kotlin Multiplatform. Пробуем нативное решение Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. В начале мая Google нас порадовали релизами нескольких библиотек для локальных хранилищ. Наконец, в приложения Kotlin Multiplatform можно полноценно использовать Room (версия 2....

HDD, SSD или NVMe: что выбрать для виртуального сервера (тесты внутри) В сегодняшней статье разберём настройку одного из параметров конфигурации при заказе виртуального выделенного сервера. Речь пойдёт о типе накопителя, который будет использоваться для виртуалки. Попробуем вместе разобраться, чем виды накопителей отличаются друг от друга, и ...

Встроенные системы: с какими сложностями сталкиваются разработчики Проектирование встроенных систем подразумевает создание аппаратного обеспечения (печатной платы) и встроенного ПО. На каждом из этих направлений разработчики сталкиваются с неочевидными трудностями – неочевидными прежде всего для заказчиков. Здесь я хотел бы перечислить самы...

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

Android позволит общаться без слов во время телефонных разговоров При проблемах с речью на Android можно будет воспользоваться преобразованием текста в речь

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

Как мы с Кандинским дракона рисовали Очень часто для оформления документов, например, презентаций или статей на Хабре

Huawei представила FreeBuds Lipstick 2 – беспроводные наушники, замаскированные под губную помаду Китайская компания Huawei представила второе поколение своих дизайнерских наушников FreeBuds Lipstick. Первое поколение FreeBuds Lipstick (обзор) дебютировало в 2021 году, а теперь на рынок выходят FreeBuds Lipstick 2.   Хотя FreeBuds Lipstick 2 и FreeBuds Lipstic...

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

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

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

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

AMD представила процессоры для промышленного искусственного интеллекта. Это встраиваемые Ryzen Embedded 8000 Компания AMD представила линейку встраиваемых процессоров Ryzen Embedded 8000. Линейка состоит из четырёх моделей, которые технически ничем не отличаются от обычных мобильных APU Ryzen 8000, и даже названия моделей почти идентичны, нет разве что номера семейства. ...

Глубина кроличьей норы: бинарная граница и ABI C++ Вопрос ABI (Application Binary Interface), бинарной границы и бинарной совместимости в C++, раскрыт на просторах интернета не так хорошо как хотелось бы. Особенно сложно в его изучении приходится новичкам, потому что эта тема связана со множеством деталей нарочно скрытой от ...

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

Как развернуть сайт c помощью Terraform Привет, Хабр! В этой инструкции я покажу, как развернуть сайт в Kubernetes c помощью Terraform. Разберу интеграцию CRaaS с Managed Kubernetes, которая сократит ручную настройку и поможет публиковать образы контейнеров всего в несколько кликов. Дисклеймер: мы не будем c ну...

Кому и зачем нужны разработчики мобильных приложений в 1С Платформа 1C:Enterprise — самый простой способ перейти в сферу мобильной разработки. Научиться писать приложения на 1С проще, чем освоить Swift, Java или Kotlin. Обучение займёт всего пару месяцев. При этом специалист с такими знаниями всегда будет востребован на рынке благо...

Бэкапы исторических масштабов — как человечество сохраняет большие объемы данных? Корпоративные решения для синхронизации, резервного копирования и безопасного обмена файлами легко позволяют отправлять большие данные в облако. Но что, если нам необходимо собрать и сохранить грандиозный объем данных — например, записать историю человеческой цивилизации? ...

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

Оценка пространственного разрешения при помощи фантомов В прошлой нашей статье про томографию мы задались вопросом: "А знаете, кто получает самую большую дозу при томографии?" Конечно, ответ мы получили: медицинские тестово‑калибровочные фантомы, специальные объекты, моделирующие структуру органов и тканей человека и используемые...

Почему проверять результат вызова malloc c помощью assert плохая идея Указатель, который вернула функция malloc, необходимо проверить перед использованием. Неправильным решением будет использовать для этого макрос assert. В этой статье мы разберём, почему это является антипаттерном. Читать дальше →

Модульность в JavaScript: CommonJS, AMD, ES Modules Привет, Хабр!Начало истории в модульности в JavaScript положил хаос: глобальные переменные, конфликты имен и сложности с зависимостями. Со временем сообщество предложило несколько подходов для организации модулей, начиная от CommonJS, которое легло в основу Node.js, до AMD, ...

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

Timeweb Cloud CLI. Часть 1: S3 Салют! Не так давно компания Timeweb Cloud выпустила новую версию своего CLI (twc), который позволяет легко и удобно управлять всеми предоставляемыми ресурсами облачной платформы. В этой серии статей рассмотрим основные сценарии применения этого инструмента. В данном мате...

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

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

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

«В каждой игре должен быть свой CJ»: история инструментов для создания модов В прошлой статье мы рассказали, как появились первые моды, и даже проследили взаимосвязь с современными играми на примере серии ARMA и DayZ Standalone. На этот раз погрузимся в тему глубже: обсудим виды модификаций и историю инструментов, с помощью которых их можно создава...

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