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

Тестируемая архитектура. Часть 3: граница тестирования В прошлой части мы провели анализ архитектуры, итогом которого стало внедрение дополнительного разделения на слои: Core (ядро) и Externals (источники данных). Читать далее

[Перевод] Starting Electronics: руководство по веб-серверам на Arduino. Часть 16. CSS для позиционирования От переводчика. Для тех, кто ознакомился с курсом по созданию веб-серверов на Arduino, автор делает последние штрихи и даёт последние необходимые знания по устройству веб-страниц. Материал этой статьи не относится напрямую к построению серверов, но содержит необходимую инф...

Как построить бастион-хост и превратить его в неприступную крепость Привет, меня зовут Сергей Истомин, я DevOps-инженер в KTS. Осталось ли бастион-хостам место в мире, в котором инфраструктуру можно защитить оверлейными сетями, нативными прокси и VPN? Задавшись этим вопросом, мы провели анализ материалов некоторых авторов (ссылки на мат...

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

Katello и Foreman в процессе patch management Это публикация о некоторых функциях системы Katello и Foreman, касающихся процесса Patch Management.Katello - это модульная часть системы Foreman, управляющая сторонними или локальными репозиториями pip, rpm, deb пакетов, podman, docker образов. Katello предоставляет во...

Кодирование числа в Micro QR Code версии М2 (по ГОСТ) Задание: необходимо создать кодовое слово, состоящее из 8 цифр (на примере – 01234567) на основе алгоритма, приведенного в ГОСТ Р ИСО/МЭК 18004-2015 (п. 7.4.3, пример 2). Затем создать для полученного кода Micro QR Code вер. М2. Данный режим невозможно прочитать стандартными...

Как мы тестируем серверы Привет! Меня зовут Олег Рябов, я главный эксперт Управления исследований и разработок новых решений компании «Ростелеком-ЦОД» и автор программы и методики испытаний (ПМИ) серверов. В этой статье расскажу, как мы проводим тестирование серверов и какие утилиты и методы использ...

Как защитить бизнес при внедрении LLM (часть 1) Новый мир с LLM — прекрасен! Нам, инженерам, он открывает много перспектив. А тем, кто его незаконно использует — предоставляет новые страшные инструменты. Как же защитить свой бизнес от угроз нейросетей?Меня зовут Евгений Кокуйкин и я — руководитель AI продуктов компании Ra...

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

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

Как защитить бизнес при внедрении LLM (часть 2) Новый мир с LLM — прекрасен! Нам, инженерам, он открывает много перспектив. А тем, кто его незаконно использует — предоставляет новые страшные инструменты. Как же защитить свой бизнес от угроз нейросетей?Меня зовут Евгений Кокуйкин и я — руководитель AI продуктов компании Ra...

Mockito и как им пользоваться Привет, Хабровчане! Помню, как в одном из моих первых проектов, мы столкнулись с проблемой тестирования кода, который зависел от внешних сервисов и баз данных. Это было не только трудоемко, но и занимало уйму времени. И сразу стало понятно, что без мокирования нам не обойтис...

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

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

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

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

Как мы внедряли Sentry. Часть 2 — внедрение в разработку В прошлый раз мы рассматривали внедрение Sentry со стороны эксплуатации: устанавливали на сервер self-hosted, делали его высокодоступным при помощи сети доставки td-agent, настраивали мониторинг.Теперь рассмотрим процесс внедрения Sentry со стороны команды разработки. Читать...

Чтение Micro QR Code версии М3 (алфавитно-цифровой режим) Задание: необходимо прочитать Micro QR Code версии М3, содержащий кодовое слово, состоящее из символов верхнего регистра (на примере закодированных слов – SAFEBOX, Q1W2E3R4T5Y6U и EFB QWG WIFI 7; почему выбрано именно такое количество символов будет также расшифровано) на ос...

[Перевод] Тестирование без моков: язык паттернов. Часть 2 Язык паттернов помогает избежать многих проблем: не использует широкие тесты, не использует моки, не игнорирует инфраструктуру и не требует архитектурных изменений. Он обладает мощью широких тестов, а также скоростью, надёжностью и удобством сопровождения, присущим модульным...

Автоматическая генерация CI/CD пайплайна для развёртывания инфраструктуры При нашей работе мы используем подход «Инфраструктура как код». Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры. Во всём «виноват» terragrunt: каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, ...

[Перевод] Starting Electronics: руководство по веб-серверам на Arduino. Часть 17. Завершающий урок и итоги От переводчика. Итак, дорогие друзья, нам с вами всё-таки удалось совершить маленькое чудо — перевести на русский язык и сделать доступным для широкого круга русскоговорящих любителей электроники, микроконтроллеров и IT технологий, можно сказать, культовый курс по построен...

Как начать работать с IPv6 там, где его нет (часть 2) В настоящее время основным подходом к внедрению IPv6 является dual-stack, когда устройство одновременно настроено на функционирование обоих IP-протоколов. Это и понятно, ведь основная часть интернета работает на версии IPv4. Механизм 6to4 позволяет подключить ваше устройств...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами. Часть 1 В данном цикле статей будет представлен процесс разработки и тестирования RTLмодулей на языке Verilog. В качестве примера будет рассмотрен целочисленный сумматор с AXI-Stream интерфейсами. Мы разберем некоторые приемы и паттерны, часто используемые при проектировании цифровы...

Кодирование числа в Micro QR Code версии М1 Задача: необходимо прочитать Micro QR Code версии М1, содержащее кодовое слово, состоящее из цифр (на примерах – 7, 77, 777, 7777 и максимальное кодовое расстояние – 77777) на основе алгоритма, приведенного в ГОСТ Р ИСО/МЭК 18004-2015 (п. 7.4.3, пример 2). Данный режим невоз...

Чтение Micro QR Code версии М3 (кириллица, первый тип библиотек) Задание: необходимо прочитать Micro QR Code версии М3, содержащий кодовое слово, на примере закодированных слов – АБВГДЕ, абвгде, АБВГ и абвг (почему именно такое количество символов будет расшифровано далее), на основе алгоритмов, приведенных в ГОСТ Р ИСО/МЭК 1800...

[Перевод] Hono vs. H3 vs. HatTip vs. Elysia — современные замены Express для сервера (или без сервера) H3 отмечает, что Express.js - старый и малоразвивающийся фреймворк, являющийся не оптимальным выбором для новых проектов из-за потенциальных проблем безопасности и утечек памяти, что, к слову, касается и Koa.В нашей статье мы сделаем акцент на фреймворках, поддерживающих зап...

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

[Перевод] Актуально ли сегодня ООП? Почти каждый день возникают дискуссии с критикой или восхвалением объектно-ориентированного программирования. «Java устарела!», «Java потрясающая!». В этой статье я проведу прагматичное исследование ООП на 2024 год. Термин объектно-ориентированное программирование придумал...

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

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

Ламповый дисплей для компьютера. Часть 2 – ускорение и фокусировка электронов в ЭЛТ В предыдущей части я привел обзор ряда подходов к созданию необычного дисплейного устройства. В отличие от приведенных примеров мне хотелось создать дисплей, который будет пригоден для регулярного пользования. Для этого я выбрал круглую индикаторную ЭЛТ от радиолокационной у...

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

DIY: Ваше собственное облако на базе Kubernetes (часть 1) Мы очень любим Kubernetes и мечтаем чтобы все современные технологии поскорее начали использовать его замечательные паттерны.А вы когда-нибудь задумывались о том чтобы построить своё собственное облако? Могу поспорить что да. Но можно ли это сделать используя лишь современны...

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

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

Дом, милый дом: нюансы работы с ClickHouse. Часть 1 Всем привет, меня зовут Пётр, я инженер компании Nixys. На современных проектах используется огромное разнообразие баз данных: реляционные, ключ-значение, документоориентированные. Особое место среди них занимают колоночные базы данных, ярким представителем которых является ...

Настройка iredmail на debian 10 (buster) mail server - это программа, которая передаёт сообщение от одного компьютера к другому.iredmail - это многофункциональный почтовый сервер с открытым исходным кодом, который предназначен для дистрибутивов Linux. В инструкции рассмотрим, как установить iRedMail вручн...

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

Как начать работать с IPv6 там, где его нет (часть 3) В предыдущих частях цикла статей (часть 1, часть 2) мы настроили подключение к IPv6-брокеру на VDS под управлением операционной системы CHR от Mikrotik. Подготовили туннелирование до устройств сети, которые как умеют, так и нет работать с VPN, используя PPTP, SSTP и статич...

Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.1 — как и зачем читать планы) Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих", подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре".В этой лекции мы узнаем, что такое план выполнения запроса, как и зачем его читать (и почему это совс...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами. Часть 5 Этой частью завершается серия статей, рассказывающих о разработке и тестировании сумматора с AXI-Stream интерфейсами. Мы покажем, как можно улучшить тестовое окружение за счет добавления возможности его настройки без повторной перекомпиляции исходников. Также мы модифицируем...

Книга «Путь 1С-разработки. Не спеша, эффективно и правильно» Привет, Хаброжители! Книга Никиты Зайцева aka WildHare — пример того, как можно систематизировать и упаковать в текстовый формат профессиональный опыт, накопленный за почти двадцать пять лет успешной инженерной практики. Познакомьтесь с концепцией разработки прикладного ПО...

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

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

«Ревизорро» в IT: тестируем суммаризацию текста в GigaChat и YandexGPT После появления на рынке API для беседы с ChatGPT 3.5 каждый второй заказчик решения на основе машинного обучения (ML) хочет внедрить у себя ИИ, который может красиво и содержательно общаться на русском языке.Меня зовут Екатерина, я IT-архитектор команды SimbirSoft, специали...

Тестируем китайские rack-серверы TTY В нашу лабораторию Jet RuLab на тестирование попали серверы бренда TTY, довольно успешно продающиеся на китайском внутреннем рынке, но малоизвестные в России. В этом посте рассказываем о моделях двух поколений, возникших проблемах и можно ли с этим жить.  Читать далее

[Перевод] Бэкдор в основной версии xz/liblzma, ведущий к компрометации SSH-сервера В последние недели я, работая в системах с установленным дистрибутивом Debian Sid, столкнулся с несколькими странностями, связанными с liblzma (это — часть пакета xz). При входе в систему с использованием SSH очень сильно нагружался пр...

Книга: «Рецепты Python. Коллекция лучших техник программирования» Привет, Хаброжители! В «Рецептах Python» используется простой, но эффективный метод освоения 63-х базовых навыков программирования на Python. Сначала формулируется вопрос, например «Как найти элементы в последовательности?» Затем приводится базовое решение на чистом понятн...

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

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

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

DIY: Ваше собственное облако на базе Kubernetes (часть 2) Продолжаем серию постов про то как построить своё собственное облако в экосистеме Kubernetes. В прошлой статье мы разобрали как можно подготовить базовый дистрибутив Kubernetes на базе Talos Linux и Flux CD. Теперь нам предстоит обсудить возможность запуска виртуальных машин...

[Перевод] Как Microsoft DevDiv использует TFS — часть 2 Одной из проблем, с которой Майкрософт столкнулся при работе с большими объемами данных, была такой: когда мы управляли 1200 различными тех. заданиями, все они работали на основе единого базового кода. При таких объемах невероятно трудно управлять качеством базового кода, по...

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

Автоматизация создания тестовых данных и загрузки исторических данных в SAP на основе SAP GUI Scripting Привет, Хабр! Меня зовут Василь Хамидуллин, я работаю в ЦК тестирования АСУ ФХД в компании РСХБ‑Интех. Продолжу тему использования SAP для автоматизации подготовки данных. В прошлом материале говорили про LSMW и как данный инструмент можно испол...

WhatsApp тестирует чат-бота на основе ИИ в бета-версии WhatsApp запустил тестирование чат-бота на базе ИИ в бета-версии для iOS. Чат-бот отвечает на запросы пользователей, используя голосовые сообщения и текст.

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами, часть 2 Вторая статья из цикла, посвященного проектированию с использованием стандартного интерфейса AXI-Stream, а также отладке и документации проектов. Читать далее

ООП в F# Привет, Хабр!Объектно-ориентированное программирование представляет собой подход к разработке, где основой являются объекты — экземпляры классов, объединяющие в себе и данные, и поведение. В F#, который вырос на функциональных концепциях, ООП представлен как дополнение к уже...

Держись, Маша! Ты, ведь, наша! Продолжение разбора книги «Цифровая схемотехника и архитектура компьютера» Упомянутая в заглавии книга (далее H&H) - это про железо [15]. Я - про программирование, но на базе "железной модели" конечного автомата. И там и там математическая основа одна. Все это, действительно, крутая железная концепция, помогающая поставить не только синтез цифр...

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

В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Рецепты от Капитана В публикации рассматриваются все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Как случаи, когда сервер 1С авторизирует веб и обычных клиентов 1С в active directory, так и когда сам сервер является клиентом, например при HTTP запросах выполняемых сер...

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

[Перевод] Почему я отказался от разработки игр на Rust, часть 2 Часть 1Обобщённые системы не приводят к интересному геймплеюДля предотвращения многих проблем очень часто рекомендуют повышать обобщённость при помощи систем. Якобы если использовать компоненты, разделённые на мелкие части, а также продуманные системы, то всех проблем с особ...

[Перевод] Создаем свой аналог sqlite c нуля. Часть #1 Это цикл статей где мы создаем базу данных с нуля. За образец автор взял sqlite, так как простая база данных, где вся база данных храниться в одном файле и меньше фич по сравнению с mysql.Мы ответим на эти вопросы: В каком формате данные будут сохранены(в памяти или на диске...

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

[Перевод] Вероятно, вы неправильно используете метод __init__ в Python Автор статьи обращает внимание на проблему, которая заключается в использовании метода __init__ для сложной логики создания объектов, что приводит к разрастанию и усложнению кода. Статья предлагает использовать вспомогательные методы, чтобы разделить логику создания объектов...

[Перевод] Итак, вы думаете, что знаете Git? Часть третья: реально большие репозитории Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git. Вам хочется использовать ванильный G...

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

Статический анализ структуры базы данных (часть 1) Статический анализ структуры базы данных — это процесс выявления ошибок, нерекомендуемых практик и потенциальных проблем в базе данных только на основе структуры, типов данных, свойствах объектов. Статиеский анализ структуры не задействует ни пользовательские данные, ни ста...

Расчёт вкусов пользователя для ленты рекомендаций с применением item2vec-подхода Ежемесячная аудитория ОК только в России превышает 36 млн человек. Причём это активные пользователи, которые хорошо взаимодействуют с нашим контентом: ставят Классы, комментируют, делают репосты. Залогом активного отклика во многом является формирование новостной ленты с уче...

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

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

Простыми словами про обработку текстовых запросов пользователя в Телеграмм ботах на java Тем, кто так или иначе уже сталкивался с разработкой Telegram-ботов на java, известно, что бот должен уметь отправлять запросы Telegram-серверу и получать от него обновления (updates). В настоящее время существует два способа получения обновлений:- использование LongPolling ...

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

Основные отличия PascalABC.NET PascalABC.NET имеет базовую совместимость с Turbo Pascal, что должно было позволить портировать старые программы с меньшим трудом. Однако, благодаря этому, сложилась тенденция, использовать PascalABC.NET только в стиле Turbo Pascal и игнорировать современные конструкции. Тут...

Уязвимости на GitHub: в библиотеке Ruby, которую скачали 250 000 раз, модулях для электронных замков и популярных играх В конце марта в блоге GitHub вышла статья, как защищаться от уязвимостей типа RepoJacking. В первых строчках автор советовал использовать пакетные менеджеры типа NPM и PyPI, чтобы киберугроза этого вида «не угрожала пользователю напрямую». Можно было бы вздохнуть с облегчени...

[Перевод] Меняем моки репозиториев на in-memory реализации Одним из важнейших аспектов тестирования наряду с поиском ошибок в приложении является время, необходимое для его проведения. Если тестирование приложения занимает от нескольких минут до нескольких часов, то оно не подходит для разработки с использованием быстрого цикла обра...

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

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

XRay (с VLESS/XTLS): проброс портов, реверс-прокси, и псевдо-VPN Я уже написал тут много статей на тему установки и настройки прокси-серверов XRay с недетектируемыми протоколами Shadowsocks-2022, VLESS (с XTLS), и т.п. И один из очень часто поднимаемых в комментариях вопросов звучит так: можно ли с использованием XRay как-то организовать ...

Тесты «Тринити»: совместимость со средствами доверенной загрузки Как часто процесс внедрения какого-нибудь ПАК в сервер затягивается из-за того, что «выключили — внедрили — включили — всё лежит». Причём, лежит не 5 минут, а, например, 5 дней, пока вокруг бегают инженеры, пытаясь понять, почему не заводится. Порой попытки внедрить так, что...

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

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

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

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

Объектно-ориентированный подход к написани REST-клиентов, или возможна ли жизнь без Open API Как-то в общении с моим другом-разработчиком из одной крупной софтверной компании у нас зашёл разговор о взаимодействии распределённых команд. В его компании было множество достаточно изолированных команд, каждая из которых разрабатывала свой сервис. В ответ на мой вопрос, к...

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

ГБОУ «Воробьевы горы» получил статус «Центр сертификации ЗАО «Топ Системы» Московский образовательный комплекс «Воробьевы горы» и компания «Топ Системы» расширяют сотрудничество в рамках программы «Факультет САПР».На базе Московского дворца пионеров организован «Центр сертификации ЗАО «Топ Системы». Задача Центра – осуществлять оценку уровня владен...

Тестируем российское «железо». Обзор сервера INFERIT RS208 Продолжаем распаковывать и тестировать серверы от российских вендоров. Сегодня на столе в инфраструктурной лаборатории К2Тех INFERIT RS208. Если судить по спецификациям, то это рабочая лошадка — сервер, предназначенный для классических задач вроде размещения баз данных и фай...

Руководство по развертыванию и управлению Linux-сервером без bash и sh с помощью ispmanager Запуск своего Linux-сервера многие до сих пор видят как работу для владельцев свитера, бороды и толстого тома с инструкциями по Unix/Linux и набором команд в bash/sh-консоли. Возможно вы также считаете работу с командной строкой в терминале чем-то архаичным и неудобным, и ва...

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

Обзор публикации MITRE «11 стратегий SOC-центра мирового уровня». Часть 3 Коллеги, в двух предыдущих публикациях были рассмотрены стратегии 0-3 и 4-7 документа MITRE «11 стратегий SOC-центра мирового уровня». В сегодняшней публикации завершим рассмотрение данного документа финальным набором стратегий MITRE: Стратегия №8 «Используйте инструменты ав...

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

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

[Перевод] За кулисами публикации «24 часа невидимой эпидемии» Сегодня я расскажу о том, как был подготовлен материал об одиночестве, «24 hours in an invisible epidemic», опубликованный на платформе Pudding.Всё началось с моей одержимости материалами Американского обследования использования времени (America...

Укрощаем DNS в Wireshark. Часть 2 В предыдущей статье мы начали рассматривать использование анализатора пакетов Wireshark для работы с DNS. В этой мы продолжим рассмотрение данной темы и поговорим о рекурсии DNS. Здесь принцип обмена пакетами будет немного сложнее, потому что помимо обмена DNS пакетами между...

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

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

Микросервис на Python+ FastAPI Микросервис — это подход к разбиению большого монолитного приложения на отдельные приложения, специализирующиеся на конкретной услуге/функции. Этот подход часто называют сервис-ориентированной архитектурой или SOA.В монолитной архитектуре каждая бизн...

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

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

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

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

[Перевод] Рекурсивные CTE Одним из наиболее важных применений CTE являются рекурсивные запросы, для которых CTE является фактически единственным средством реализации. Как отмечалось в предыдущей статье, в Books Online есть несколько примеров использования CTE, включая и рекурсивный CTE...

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

Алгоритмы AdaBoost (SAMME & R2). Принцип работы и реализация с нуля на Python Следующим мощным алгоритмом машинного обучения является AdaBoost (adaptive boosting), в основе которого лежит концепция бустинга, когда слабые базовые модели последовательно объединяются в одну сильную, исправляя ошибки предшественников.В AdaBoost в качестве базовой модели и...

Вы за это заплатите! Цена Чистой Архитектуры. Часть 2 В прошлой части мы немного коснулись теории и остановились на определении лишних компонентов. В этой части мы продолжим определять лишнее, коснёмся вопросов экстремальной экономии, а также закрепим всё выводами.Если не читали первую часть, настоятельно рекомендую это сделать...

Использование возможностей Angular. Часть 2 Как работают utility types, для чего они нужны и как использовать в работе. Для чего нужен infer, in, extends Читать далее

Обзор OpenYard RS1B7I. Что скрывается в 1U сервере из семейства RS101? Хабр, привет! В лабораторию Центра компетенций «ИТ-инфраструктура» КРОК поступил новый пациент — 1U сервер OpenYard RS1B7I из семейства RS101.Результаты обследования тестирования сервера ждут вас под катом! Погнали! Читать далее

В облако на работу: Все варианты авторизации ОС сервером 1С на базе РЕД ОС 8 в домене windows. Точки над Ё В одном из лучших руководств администраторов «UNIX and Linux System Administration Handbook, © 2018 Pearson Education lnc.» описывается такой метод настройки систем: «Копируй, вставляй, молись». Какой бы ни была подробной инструкция и на какой бы типовой системе она не ...

Цифровой паспорт оборудования промышленного производства Привет, привет! Представлюсь: меня зовут Тамара, и я являюсь ведущим инженером по нормативно-справочной информации в компании Bimeister.Начну с того, что это лишь малая часть той большой истории, которую я хочу вам рассказать.Будет много вопросов типа «Что это?», «Для чего н...

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

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

Пустые текстовые узлы в Internet Explorer'е Думаю, пост будет интересен начинающим изучать JavaScript и DOM. Недавно я провозился больше получаса пытаясь понять, почему приведенный ниже код возвращает «undefined» во всех браузерах кроме Internet Explorer'а. Читать дальше →

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

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

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

Вопросы по SQL, которые часто задают на собеседовании. Часть 1 SQL (Structured Query Language) – это язык программирования, используемый для управления реляционными базами данных. В этой статье я собрал вопросы по SQL, с которыми вы можете столкнуться на собеседовании. Их часто задают для проверки общих знаний и навыков. Читать далее

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

PostgreSQL 16. Организация данных. Часть 1 PostgreSQL очень популярная СУБД.Её используют во многих проектах, как новички, так и профессионалы. Однако не все понимают, как именно работает данная система и какое у неё внутренне устройство.Давайте разберемся вместе на основе книги "PostgreSQL 16 изнутри" и официальной ...

Часть 1. GPU-Based Fuzzing. Что за зверь такой? Всем привет! При изучении темы фаззинг‑тестирования всегда возникает вопрос, насколько сильно можно увеличить количество выполнений приложения в секунду. Иначе говоря — как ускорить фаззинг?В последнее время одно из популярных направлений —...

Framework для автоматизации тестирования на Java Привет, Хабр! В нашем сегодняшнем материале тестировщики Максим Жигарев и Артем Сенько из Блока ИТ‑развития инвестиционного бизнеса РСХБ‑Интех расскажут, как они автоматизировали тестирование в ИвестБлоке с использованием Java. Материал основан на&nb...

Framework для автоматизации тестирования на Java Привет, Хабр! В нашем сегодняшнем материале тестировщики Максим Жигарев и Артем Сенько из Блока ИТ‑развития инвестиционного бизнеса РСХБ‑Интех расскажут, как они автоматизировали тестирование в ИвестБлоке с использованием Java. Материал основан на&nb...

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

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

Подготовка инструментов под фаззинг UEFI на базе edk2 в Windows Так повелось в мире, что время от времени необходимо проводить исследования безопасности драйверов и прошивок. Одним из способов исследования является — фаззинг (Fuzzing). Не будем останавливаться на описание на самого процесса фаззинг...

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

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

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

Кто создает 3D модели в T-FLEX CAD в компании "Топ Системы"? Вопросы к Александру Макарову 16 ноября отмечался День проектировщика - праздник специалистов, помогающих воплотить любую идею в реальный проект. И сейчас (пусть с опозданием) мы рассказываем о таком человеке в нашей компании.Александр Макаров, 3D-проектировщик, ведущий специалист по внедрению САПР, кото...

Вредонос Migo отключает защиту на серверах Redis Исследователи обнаружили вредоноса Migo, который написан на Go и атакует серверы Redis на Linux-хостах ради добычи криптовалюты. Отмечается, что малварь отключает защитные функции Redis, чтобы ничто не препятствовало криптоджекингу.

Создаю свой дистрибутив Linux: Часть 5 Меню "Пуск" является очень важным местом в любой нормальной операционной системе, ведь там расположены установленные приложения.

Тестируем отечественную систему виртуализации: SpaceVM Привет, Хабр!Сегодня будем внезапно тестировать SpaceVM. Внимательный читатель заметит, что этой системы в списке лидеров не было. Как же она стала участником эксперимента? Причина проста — мне банально не удалось достать дистрибутив ПК «Звезда», поэтому я решил заменить ее ...

Создаю свой дистрибутив Linux: Часть 6 Сделать новый дистрибутив Linux на самом деле легко, берём что-нибудь за основу, меняем обои, устанавливаем софт и готово, однако сделать пригодный для нормального использования дистрибутив так не выйдет...

Security Week 2412: атака на ChatGPT по сторонним каналам Исследователи из Университета имени Бен-Гуриона опубликовали работу, в которой показали новый метод атаки, приводящий к частичному раскрытию обмена данными между пользователем и ИИ-чатботом. Анализ зашифрованного трафика от сервисов ChatGPT-4 и Microsoft Copilot в некоторых ...

F2 innovations (часть 1) - Обзор компании Инженеры LIDER-3D посетили производство компании F2 innovations в Перми, где ознакомились с оборудованием компании и узнали о тонкостях производства!А перед тем как мы начнем, подпишитесь на наш Telegram! Там мы каждые две недели дарим 3D принтер! Все подробности о розыгрыше...

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

[Перевод] Защищено ли ваше программное обеспечение? В нашем мире, где каждый релиз готовится в спешке, а сами релизы выходят на регулярной основе, что вы делаете, чтобы защитить своё программное обеспечение? Что вы можете сделать, какие вообще есть варианты?С точки зрения того, что именно представляет собой CI/CD: непрерывная...

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

CompletableFuture. Глубокое погружение java.util.concurrent.CompletableFuture - класс не новый. Он предстал перед нами во всём своём величии в 2014-м году вместе с выпуском Java 8. Много лет с тех пор прошло, а проще он не стал.Мы в компании называем их "фьючи". На хабре было много материала по отдельным частям и...

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

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

Работа с данными — ExtJS и Zend Framework, часть 1 В этом топике рассказываю как можно работать с компонентами javascript фреймворка ExtJS и php Zend Framework на примере редактирования некоторого контента в таблице БД. Для редактирования списка элементов контента будем использовать компонент ExtJS GridPanel, для отдельного ...

[Перевод] Исследование режима Copy-on-Write в pandas. Часть 1 Библиотека pandas 2.0 вышла в начале апреля, в ней появилось много улучшений нового режима Copy‑on‑Write (CoW, копирование при записи). Ожидается, что в pandas 3.0 режим CoW будет использоваться по умолчанию. Сейчас полный переход на к...

“Какого кабеля?” Тестируем несколько проводов для зарядки смартфона/планшета Вендоры говорят, что нужно использовать только фирменный кабель и зарядку. Так ли это? Мы провели небольшой тест, чтобы проверить, как работают разные кабели…и убедились в том, что они правы. Но правы не во всем! Под катом — результаты тестов  недорогих кабелей, которые...

[Перевод] 4. Nix в пилюлях: Основы языка Четвёртая часть из цикла статей Люка Бруно, посвящённой пакетному менеджеру и языку программирования Nix.Здесь мы знакомимся с основами языка. Читать далее

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

Разбирая бэклог. Часть 2. 11 аркадных beat 'em up'ов. 1990-1995 1. Magic Sword - Heroic Fantasy (1990)Герою необходимо последовательно преодолеть 50 этажей разной степени продолжительности, на каждом из которых нужно найти дверь. По дороге можно собирать ключи и освобождать пленников. Одновременно в рядах союзников может быть только один...

Разбираем TLS по байтам. Часть 1: кто такой этот ваш HTTPS? Подключение к сайту бывает защищённым, а бывает нет — это надо знать всем детям. Только мало детей знают, что это значит и как работает. Я, изучая веб-разработку, узнал об HTTP. Разобраться в нём несложно: в каждой статье о протоколе множество наглядных примеров запросов ...

Как на самом деле Async/Await работают в C#. Уроки по асинхронному программированию из первой половины работы Несмотря на то, что с предыдущей статьей-переводом мы выяснили что перевод уже есть на Хабре я рискну продолжить анализ этой работы.Теперь это НЕ перевод. Это моя интерпретация тех частей содержания первой половины Поста: Как на самом деле Async/Await работают в C#, которые ...

Секреты тестирования Wiren Board: test-suite и крафтовые стенды Мы продолжаем рассказывать о внутренней кухне Wiren Board. В предыдущей статье мы заставили работать китайский паяльный робот, который выполняет рутинную часть работы монтажников на нашем производстве.Все наши «железки» должны поступать клиентам в рабочем состоянии и служить...

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

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

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

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

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

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

Практическое руководство по Rust. Бонус Hello world! Представляю вашему вниманию бонусную часть практического руководства по Rust. Первая часть Вторая часть Третья часть Четвертая часть Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые ...

Управление загрузкой с помощью PostgreSQL и pg_headerkit Привет, Хабр!Supabase – это крутой open-source аналог Firebase, с его помощью можно организовать крутые штуки вроде ограничения скорости запросов.Supabase – это инструмент, который дает возможность создавать масштабируемые серверные решения, используя PostgreSQL. С его помощ...

Berliner Zeitung: Публикация разговора военных стала болезненным унижением для бундесвера Цифровая гигиена в германском командовании и правила сетевой безопасности на уровне "детских садов"

Архивная репликация в PostgreSQL: пошаговая инструкция Разбираем c  Григорием Тарасенко, инженером команды SQL на примере, как реплицировать базы без использования слотов репликации. Читать далее

Инфраструктура 1С сегодня. Как выбрать компоненты, не привлекая санитаров? При развертывании информационных систем на базе 1С до 2022 года многие компании шли проторенной дорожкой. Брали Windows Server, MS SQL, терминальный сервер Citrix/RDS. Запирали с этим всем админа на недельку, и всё готово.А теперь годами отработанные методы не работают....

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

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

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

Раскрыты проблемы большинства компаний во внедрении генеративного ИИ Гендиректор Accenture Джули Свит (Julie Sweet) откровенно рассказала о том, что большинство компаний не готовы к широкому внедрению генеративного ИИ. Несмотря на ажиотаж вокруг этой передовой технологии, многие предприятия не имеют надежной инфраструктуры данных и необходимы...

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

Обеспечение обратной совместимости gRPC API с помощью protolock в GitHub Actions В этом посте я поделюсь с вами подробной инструкцией по настройке автоматической проверки обратной совместимости gRPC API с помощью protolock в GitHub Actions. Читать далее

End-of-Life: как понять, пора ли закрывать продукт, основываясь на данных Привет! Меня зовут Ульяна Баисламова. Я старший продуктовый аналитик в команде B2b и оффлайн-опыта в СберМаркете.Закрытие продукта (End-Of-Life, EoL) — естественная часть жизненного цикла сервиса или проекта, которая не обязательно связана с его несостоятельностью. В предыду...

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

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

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

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

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

Семантический поиск и генерация текста на R. Часть 1 Для этой задачи использую LLM (Large Language Models - например, chatGPT или opensouce модели) для внутренних задач (а-ля поиск или вопрос-ответную систему по необходимым данным).Я пишу на языке R и также увлекаюсь NLP (надеюсь, я не один такой). Но есть сложности из-за того...

Специальные скидки на расходные материалы для 3D-печати от Filamentarno! Компания Filamentarno! предлагает участникам сообщества 3Dtoday 15-процентные скидки на любые фирменные филаменты для FDM/FFF 3D-принтеров.Предложение распространяется на весь ассортимент, начиная со стандартных полимеров — АБС, ПЛА и СБС и так далее — и заканчивая различным...

Тестируем СХД ExaGrid EX18: получилось ли заменить Dell DataDomain и HPE StoreOnce? Привет, Хабр! На связи Алексей Зотов из К2Тех, и у меня для вас свежий обзор на железо. Сегодня пришла очередь СХД для бэкапов от ExaGrid — это продукт с продвинутым функционалом дедупликации на хранилище и отдельной фишкой в виде удивительно большого кэша. Под катом вас жду...

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

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

[Перевод] Как получить плашку совместимости со Steam Deck, не покупая Deck Пару месяцев назад Steam выложил в Steamworks инструмент для разработчиков, позволяющий отправлять игры на сертификацию: Steam тестирует и проверяет игру, а затем решает, совместима ли она с Steam Deck. Так как я уже реализовал в своей игре поддержку геймпадов, то сразу прис...

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

[Перевод] «Человеческая» сторона ИТ. Распространённые проблемы разработки, связанные с людьми Недавно Аби Нода*, программист и генеральный директор платформы DeveloperExperience, ознакомился с исследованием The Human Side of Software Engineering Teams: An Investigation of Contemporary Challenges. В нём авторы обозначили наиболее важные «человеческие» проблемы, сопутс...

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

Как сделать NeoVim самым удобным текстовым редактором: туториал по настройке В этой статье затронем редакторы семейства Vi и разберем базовые сценарии работы с NeoVim. Начинающие специалисты смогут использовать материал в качестве туториала, а опытные разработчики, возможно, отметят для себя что-то новое.Почему именно NeoVim? Всё просто: этот те...

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

Роскосмос протестировал спутниковое оборудование «Гонец» на автомобилях ралли «Шелковый путь-2024» Компания «Спутниковая система «Гонец», входящая в состав Роскосмоса, провела успешное тестирование оборудования спутниковой системы «Гонец-Д1М» на специализированных внедорожниках, участвующих в подготовке к международному ралли-марафону &l...

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

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

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

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

[Перевод] Гексагональная архитектура со Spring Boot Гексагональная архитектура стала популярным архитектурным паттерном, помогающим отделить бизнес-логику от инфраструктуры. Такое разделение позволяет откладывать принятие решений о технологиях или легко заменять их. Кроме того, это позволяет тестировать бизнес-логику в изоляц...

Тестирование 7900 ХТХ в играх с рейтрейсингом, Часть 2 Продолжим тестировать 7900 ХТХ в играх с рейтрейсингом. В этот раз даже пришлось купить пару оффлайн активаций т.к. некоторых игр до сих пор нет в свободном доступе.

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

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

[Перевод] Итак, вы думаете, что знаете Git? Часть вторая: новое в Git Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git. Далее в нашей серии постов из трёх час...

Юнит-тесты: чек-лист методик проектирования Привет, Хабр! Меня зовут Василий Косарев, я Java‑разработчик в CDEK. Много раз мы слышали о необходимости писать модульные тесты, о том, что весь код должен быть ими покрыт. При этом мне не встречалось списка: какие именно методики лучше ис...

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

Microsoft начала тестирование ИИ-генератора в Paint Microsoft тестирует новую функцию под названием «Paint Cocreator» в Microsoft Paint для Windows 11. Этот инструмент работает на базе DALL-E от OpenAI и позволяет пользователям создавать изображения на основе предоставленных ими текстовых описаний.

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

«Сбербанк» исполнил давнюю мечту миллионов людей Финансовое учреждение «Сбербанк» является настолько известным, популярным и распространенным в России, что практически все россияне являются его клиентами. Услугами банка на постоянной основе пользуются более чем 105 млн человек, причем с каждым годом эта цифра Читать полну...

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

Пишу Minecraft сервера с нуля. Часть 1. Пинг Этот цикл статей о разработке серверного ПО совместимого с протоколом Minecraft: Java Edition.В этой части я акцентирую внимание на основных вещах: типы данных, структура пакетов и как клиент получает информацию о сервере. Читать далее

Гайд по героям в Era of Conquest: Легендарность, редкость, статы, прокачка и другое Era of Conquest это стратегия с мультиплеером, где каждое действие игрока влияет на развитие его цивилизации и его успехи в будущем. Не менее важным аспектом игры являются герои, они же полководцы. У каждого из них есть свой уровень редкости — фиолетовый или оранжевый. В ос...

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

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

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

[Перевод] Тестирование без моков: язык шаблонов. Часть 1 Автоматизированные тесты очень важны. Без них программистам приходится тратить огромное количество времени на ручную проверку и исправление кода. К сожалению, многие автотесты также тратят огромное количество времени. Простым и очевидным вариантом является создание широких т...

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

Уязвимость в ПО Openfire открывает несанкционированный доступ к скомпрометированным серверам Компания «Доктор Веб» информирует пользователей о распространении вредоносных плагинов для сервера обмена сообщениями Openfire. По всему миру на момент публикации более 3000 серверов с установленным ПО Openfire подвержены уязвимости, позволяющей хакерам получать доступ к фай...

Всё, что вы хотели знать про пирамиду тестирования, но не знали как спросить Пирамида тестирования — это модель, впервые описанная Майком Коном в книге “Succeeding with Agile: Software Development Using Scrum” в 2009 году. Майк является одним из авторов метода разработки программного обеспечения Scrum. Его пирамида состояла из нескольких уровней тест...

Ламповый дисплей для компьютера, часть 6: заключительная сборка в корпусе Вы добрались до шестой, заключительной части цикла статей о ламповом дисплее для компьютера. В этой статье я опишу, как осуществлялась окончательная сборка дисплея в корпусе и что из этого вышло. Нелишне будет привести ссылки на предыдущие статьи цикла: Часть 1 – обзор сос...

Эволюция системы разработки на SQL Мы — SQL команда Срочного рынка Московской Биржи, занимаемся разработкой и сопровождением бэкофиса торгово-клиринговой системы Spectra с момента ее возникновения. Срочный рынок Московской Биржи — это более 500 фьючерсных и 30000 опционных инструментов, несколько миллионов сд...

Вы никогда не сократите Тime Тo Мarket, если будете тестировать все фичи на одном сервере Привет, это Максим Павлов из KTS. Мы создаём IT-продукты для бизнеса.Все твердят про важность Time To Market — времени от появлении идеи фичи до её релиза для пользователей. При этом почему-то тестируют все фичи на одном сервере. В статье рассказываю, как ускорить Time To Ma...

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

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

Большой тест GPT4, GPT3.5, YandexGPT, GigaChat, Saiga в RAG-задаче. Часть 2/2 В первой части статьи я рассказывал о создании цифрового юриста, способного отвечать на вопросы на основе 200-страничного регламента. Цель — работа такого юриста в закрытом контуре организации, без использования облачных технологий.Особенностью эксперимента является в том, ч...

Выбираем лучшую видеокарту на апрель 2024 года на основе сравнения 30 ускорителей 3D-графики в 23 тестах (с и без RT/DLSS/FSR/XeSS) в 3 разрешениях В этот обзор добавлены новинки, которые появились на рынке после публикации предыдущего материала с выбором лучшей видеокарты, а также ранее вышедшие модели, которые мы впервые изучили за прошедшие 3 месяца. У Nvidia вышли модели GeForce RTX 4070 Super, GeForce RTX 4070 Ti S...

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

Делаем резервное копирование кластера ClickHouse: простая инструкция Делаем резервное копирование кластера ClickHouse: простая инструкцияМеня зовут Леонид Блынский и я администратор баз данных в Лиге Цифровой Экономики. В этой небольшой статье расскажу, как я делаю резервное копирование кластера ClickHouse размером 20 ТБ.Документация по резер...

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

Диплом специалиста ИБ. Часть №1 — Методика обеспечения безопасности устройств Интернета вещей Привет, Хабр!Так вышло, что я заканчиваю университет в феврале 2024 года (направление 10.05.01 «Компьютерная безопасность» является специалитетом, поэтому студенты выпускаются традиционно зимой после 5,5 лет обучения). Соответственно, уже в прошедшем 2023 году передо мной, к...

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

Кратко про NewSQL Привет, Хабр!

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

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

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

Материалы для подготовки к собеседованию на позицию Data Scientist. Часть 1: Live Coding В данной статье разберемся что такое live coding интервью и как к нему готовиться.Материал в первую очередь будет полезен Data Scientist'ам и ML инженерам, при этом некоторые разделы, например, Алгоритмы и структуры данных подойдут всем IT специалистам, к...

HTB Hospital. Получаем доступ к хосту через уязвимость Ghostscript Для подписчиковВ этом райтапе мы используем уязвимость внедрения команд в Ghostscript с целью фишинга. Также получим сессию в Docker чрез загрузку веб‑шелла и повысим привилегии в Docker через GameOverlay.

Продажи восстановленных смартфонов выросли в 2,5 раза В сети МегаФона и Yota по продажам бывших в употреблении и приведенных в порядок смартфонов лидируют Samsung и Apple.

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

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

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

Libre/OpenPGP vs OpenSSH/age Я использую GnuPG (реализацию OpenPGP и LibrePGP) каждый день на протяжении более чем десяти лет. У меня накопилось почти две сотни публичных ключей разных людей с которыми я общался и общаюсь по почте. Почти три сотни публичных ключей для проверки дистрибутивов операционных...

10 «золотых» советов авторам любых текстов Чем активнее мы курируем авторов, тем больше «налипает» опыта и своего, и чужого: кто-то приносит нам шедевры, кто-то — тексты, которые просто невозможно опубликовать. И вроде каждый случай особенный, но все проблемы и находки вполне себе поддаются систематизации. А значит, ...

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

Использование возможностей Angular. Часть 1 Добрый день. Меня зовут Юрик и я angular-разработчик. Остальные в комнате у психиатра: - Здравствуй Юрик, мы рады тебя видеть. Читать далее

[Перевод] Исследование режима Copy-on-Write в pandas. Часть 2 В первом материале из этой серии была объяснена работа механизма Copy‑on‑Write (CoW, копирование при записи). Там были упомянуты некоторые ситуации, в которых при выполнении кода осуществляется копирование данных. В этой статье речь по...

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

Asterisk + UniMRCP + VoiceNavigator. Синтез и распознавание речи в Asterisk. Часть 4 Часть 1 Часть 2 Часть 3 В четвертой части, как и было обещано, рассмотрим ограничения и недостатки Asterisk как голосовой платформы и особенности его взаимодействия с VoiceNavigator. Голосовая платформа – это программно-аппаратный комплекс с функциями синтеза и распоз...

[Перевод] Xv6: учебная Unix-подобная ОС. Заключение Книга рассказала об идеях, что лежат в основе операционных систем, на примере xv6. Одна часть кода xv6 выражает основные идеи и каждая строка кода важна - переключение потоков, пространства пользователя и ядра, блокировки и т.д. Другая часть кода воплощает алгоритмы и структ...

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

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

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

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

Microsoft раскрыла стоимость подписки на обновления для Windows 10 по программе ESU Microsoft опубликовала информацию о стоимости подписки на обновления безопасности для Windows 10, которые будут выпускаться с октября 2025 года по программе Extended Support Updates (ESU). Планируется, что обновления на платной основе будут выпускаться в течение трёх лет. П...

Практическое руководство по Rust. 4/4 Hello world! Представляю вашему вниманию четвертую и последнюю часть практического руководства по Rust. Первая часть Вторая часть Третья часть Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уве...

NASA продвигается к лунным миссиям Artemis: завершено шестое испытание двигателей RS-25 для ракеты SLS NASA успешно завершило шестое из двенадцати планируемых испытаний двигателей RS-25, необходимых для сертификации лунной ракеты SLS (Space Launch System). Испытания провели инженеры в космическом центре имени Стенниса 27 января, используя полноценную испытательную пусков...

Основы полнотекстового поиска в ElasticSearch. Часть третья Это третья и заключительная статья из цикла, в которой рассмотрим стандартную модель ранжирования документов в Elasticsearch.После того как определено множество документов, которые удовлетворяют параметрам полнотекстового запроса, Elasticsearch рассчитывает метрику релевантн...

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

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

GeForce RTX 5090 не повторит судьбу пожароопасной RTX 4090. Испытания разъёма питания 12V-2х6 показали, что он работает даже при неполном подключении Ещё в июле мы узнали, что Nvidia работает над заменой для пожароопасного разъёма 12VHPWR. И вот теперь в Сети появились первые испытания разъёма 12V-2х6, который как раз должен прийти на замену 12VHPWR.  Авторы канала HardwareBusters посетили лабораторию компании ...

Разгоняем Ignite в облачной инфраструктуре. Часть 2 Привет! С вами Дмитрий Пшевский и Семён Попов, технические лидеры юнита Data в Сбере. Это вторая часть нашего материала о производительности сервисов при работе с Ignite. В первой части мы рассказали, как перешли от монолита к микросервисной архитектуре, попробовали поработ...

Проект «Селенит». Часть 2: Квадратурный смеситель В каждой конструкции есть какое-либо основополагающее решение. Разработанный в рамках проекта трансивер Selenite Lite – не исключение. Основой радиоприёмного тракта разработанного устройства является смеситель по схеме Тэйло (Tayloe detector). Принцип действия этого замечат...

Опубликованы технические подробности процессоров AMD Zen 5 В публикации на Xwitter High Yield приводит список того, что мы знаем о настольных процессорах AMD следующего поколения: они будут работать на Socket AM5 и использовать тот же базовый процессорный пакет, что и Ryzen 7000, но они будут называться Ryzen 9000.

Ещё немного Ubuntu: вышел дистрибутив Ubuntu 23.10 с GNOME 45 Привет, Хабр! Многие пользователи Ubuntu, да и других дистрибутивов Linux продолжительное время ожидали выхода нового релиза  23.10. И вот, его уже можно загрузить. Установочные образы Ubuntu 23.10 "Mantic Minotaur" созданы для Ubuntu, Ubuntu Server, Lubuntu, Kubuntu, U...

История FineReader: так создавалась легенда (часть II) Мы продолжаем изучать летопись функционального развития легендарного редактора FineReader PDF. Первую часть 30-летней истории можно прочитать здесь. А сейчас перенесемся в середину нулевых.  Читать далее

FreeIPA vs Samba AD Используя продукты ведущих вендоров, мы не всегда задумываемся о том, что в них реализованы лучшие практики, позволяющие экономить на администрировании, повышать безопасность инфраструктуры и обеспечивать удобство для работы пользователей. Но эти детали, как шило в... мешке,...

Как мы работаем с ресурсами в веб-приложениях Приложения, созданные на платформе 1С:Предприятие, могут быть развернуты в трёхзвенной архитектуре (Клиент – Сервер приложений – СУБД). Клиентская часть приложения может работать, в частности, как веб-клиент, в браузере. Веб-клиент – это довольно сложный фреймворк на JavaScr...

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

Три операционные системы Linux обошли Windows 11 в игровых тестах Все три дистрибутива Linux смогли обойти Windows 11, используя слой совместимости Proton от Vavle.

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

[recovery mode] ShIoTiny5 — новые веяния и маленькое устройство Несколько лет назад я писал о системе визуального программирования ShIoTiny для модулей на базе микроконтроллера ESP8266. Поэтому, чтобы не повторяться, для тех, кто "не в теме" - сразу отсылаю к моей первой статье на Хабре: ShIoTiny: малая автоматизация, интернет вещей или ...

[Перевод] Улучшенная маршрутизация HTTP-серверов в Go 1.22 В Go 1.22 ожидается появление интересного предложения - расширение возможностей по поиску шаблонов (pattern-matching) в мультиплексоре, используемом по умолчанию для обслуживания HTTP в пакете net/http.Существующий мультиплексор (http.ServeMux) обеспечивает рудиментарное соп...

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

Sony выпустила игровую приставку PlayStation 6 за $200 долларов. Теперь это мечта миллионов людей Для того чтобы играть в видеоигры необходимо иметь электронное устройство, которое позволит все это делать. Такого рода электронных устройств существует крайне много, но существует специальный отдельный класс электроники, предназначенной для этой цели, и. это игровые Читать...

NVIDIA планирует доминировать на рынках ИИ за счет использования памяти HBM NVIDIA начнет внедрение HBM3e в 1 квартале 2024 года с Hopper H200, а HBM4 ожидается к 2026 году. Также собирается отдать значительную часть своих заказов на HBM Samsung.

[Перевод] Wasm vs Docker containers vs Kubernetes vs serverless: битва за первенство В начале года на YouTube-канале DevOps Toolkit вышло видео с разбором WebAssembly. Автором ролика является Виктор Фарчич (Viktor Farcic) — developer advocate в Upbound, член CNCF Ambassadors, Google Developer Experts, CDF Ambassadors и GitHub Stars.Мы перевели видео про WebA...

RecTools – OpenSource библиотека для рекомендательных систем Если вы когда-либо работали с рекомендательными системами, то знаете, что все необходимые и самые часто используемые инструменты разбросаны по разным библиотекам. Более того, каждая из таких библиотек имеет много уникальных особенностей, к которым нужно приноровиться (наприм...

Who are you, Platform Engineering: разбираемся с одним из главных технологических трендов. Часть 1 Platform Engineering — один из главных технологических трендов 2024 года. По оценке Gartner, к 2026 году 80% компаний, занимающихся разработкой, будут иметь внутренние платформенные сервисы и команды для повышения эффективности разработки.  Мы в VK Cloud предлагаем Dev Pl...

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

SwiftUI уроки (часть 9) Разбираемся с List, ForEach and Identifiable В UIKit для iOS один из наиболее часто используемых элементов управления пользовательским интерфейсом - это UITableView. Если вы имеете опыт разработки приложений с использованием UIKit, то знаете, что table view предназначен...

[Перевод] Пишем 2D игру на JavaScript и Canvas. Часть 2. Графика Привет!Продолжаем создавать браузерную игру с использованием чистого JavaScript и элемента Canvas. Добавляем графику, вращения, гравитацию и адаптируем игру для мобильных устройств. Читать далее

Microsoft работает над чат-ботом Xbox с искусственным интеллектом Microsoft тестирует нового чат-бота Xbox на базе искусственного интеллекта, который призван автоматизировать задачи службы поддержки. Об этом сообщает портал The Verge со ссылкой на собственные источники. Чат-бот Xbox Support Virtual Agent представляет собой анимированного ...

Делаем crackme. Часть первая: whitebox AES Эта статья первая из цикла, в котором мы будем создавать crackme для linux amd64. В crackme будут реализованы шифрование каждой функции отдельным ключём и наномиты для противодействия отладке. В данной статье мы рассмотрим алгоритм встраивания к...

Испытания 5 отечественных автомобильных аккумуляторов в корпусе D23. Часть 7: итоги большого теста Привет, Хабр! Сегодня завершается серия экспериментов с российскими и белорусскими аккумуляторами для автомобилей азиатского производства, а именно, АКТЕХ Standart, Тюмень ASIA, АКОМ ASIA, Tubor Classic и ZUBR ASIA. Мы смоделировали несколько характерных критических ситуа...

Основы Identity and Access Management (IAM) в архитектуре приложений Привет, Хабр!С каждым годом мы становимся свидетелями все большего количества сбоев в системах безопасности, утечек данных и хакерских атак даже на самые маленькие проекты.Identity and Access Management (IAM) выступает как наша первая линия обороны. Оно не просто защищает на...

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

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

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

[Перевод - recovery mode ] Как работает etcd с Kubernetes и без него Если вы когда-либо взаимодействовали с кластером Kubernetes, скорее всего, он был основан на etcd. etcd лежит в основе работы Kubernetes, но несмотря на это, напрямую взаимодействовать с ним приходится не каждый день.Этот перевод статьи от learnk8s познакомит вас с принципам...

ИИ под запретом. Gentoo вводит ограничения на использование искусственного интеллекта Gentoo, один из самых популярных дистрибутивов Linux, ввёл запрет на принятие изменений, созданных при помощи инструментов генеративного искусственного интеллекта (ГИИ). Этот запрет охватывает различные аспекты работы над дистрибутивом. Так, разработчики больше не могут испо...

Импортозамещение которое мы потеряли: советские ЯП и их создатели (часть 2) В комментах к предыдущей части некоторые читатели предложили рассказать о ещё нескольких ЯП, которые сыграли значительную роль для развития программирования в СССР. Автор не смеет игнорировать просьбы трудящихся. В этой части цикла поговорим об АЛМО, Эль-76 и Рапира и ЛЯПАС....

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

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

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

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

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

Создаю свой дистрибутив Linux: Часть 4 Линуксы настолько дружелюбны к пользователям, что я уже четвёртую часть подряд исправляю эту "дружелюбность"...

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

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

Разработка Tower Defense на Unity — часть 2, проектирование И так, в прошлой статье цикла тут мы определились с концепцией игры, геймплеем и программными средствами. Самое время поговорить об архитектуре, организации игрового процесса, что и как будет происходить. Чтобы определиться с организацией всех процессов в игре необходимо раз...

Apple усилила безопасность iMessage перед квантовыми компьютерами Apple объявила о модернизации системы безопасности iMessage с использованием криптографии, устойчивой к квантовым вычислениям, начиная с iOS и iPadOS 17.4, macOS 14.4 и watchOS 10.4.

[Перевод] Я изучила 900 самых популярных инструментов ИИ на базе open source — и вот что обнаружила Четыре года назад ИТ-эксперт Чип Хуэн* проанализировала экосистему ML с открытым исходным кодом. С тех пор многое изменилось, и она вернулась к изучению темы, на этот раз сосредоточившись исключительно на стеке вокруг базовых моделей.О результатах исследования читайте под ка...

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

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

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

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

Анализ безопасности приложений, использующих GraphQL API Привет! Меня зовут Даниил Савин. Летом я участвовал в программе стажировки для безопасников от Бастион и в процессе глубоко исследовал тему безопасности приложений, использующих GraphQL. Так появилась статья, из которой вы узнаете:— какие встроенные функции есть у GraphQL;—...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами Часть 4 В предыдущей части был рассмотрен основной подход, применяемым для тестирования сложных цифровых устройств - constraint random testing. Мы узнали, как автоматизировать проверку корректности работы устройства с помощью сравнения его выходов с эталонной моделью. Тестовые окру...

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

До 10 000 рублей за каждое нарушение. Из-за нового закона собственников квартир начнут массово штрафовать Большая часть населения России проживает в многоэтажных многоквартирных домах, расположенных преимущественно в городской черте. Но даже не смотря на высокую стоимость такого рода объектов недвижимости, делать в таких все что захочется нельзя, поскольку существует целый Чита...

Анонс Windows 11 Insider Preview Build 22635.3140 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новую предварительную сборку Windows 11 (версия 23H2) под номером 22635.3140 (KB5034851) для участников программы Windows Insider на канале Beta. Полный номер сборки: 10.0.22635.3140.ni_release_svc_betaflt_prod1.240126-1206. Важно!...

UML: обзор основных типов диаграмм, диаграмма объектов. Часть 3 Хабр, привет! В прошлых статьях про UML (Часть 1, Часть 2) мы узнали что такое язык моделирования UML и зачем он нужен, а также рассмотрели диаграмму классов и диаграмму компонентов. Сегодня я хочу продолжить тему проектирования процессов и остановиться на диаграмм...

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

Создаю свой дистрибутив Linux: Часть 3 Просто продолжаю собирать свой дистрибутив Linux, наконец пришло время устанавливать всякое в систему.

Создаю свой дистрибутив Linux: Часть 7 И снова продолжаю работу над меню "Пуск", кто бы мог подумать, что в Linux всё настолько криво реализовано...

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

Микроядерные операционные системы, включая KasperskyOS, появятся на обычных потребительских устройствах Микроядерные операционные системы (ОС), к которым относится KasperskyOS, могут появиться на обычных устройствах пользователей в ближайшие 3-4 года, о чем заявил глава отдела бизнеса по развитию KasperskyOS Дмитрий Лукиян. В микроядре ОС большая часть функциональности вы...

Эволюция Traffic Engineering-2. От основ PCEP к новому взгляду на РСЕСС Traffic Engineering помогает нам решать проблемы оценки и оптимизации производительности IP‑сетей, но при этом требует недюжинного понимания сетевых технологий и протоколов, которые используются в больших сетях. В прошлый раз мы остановились на магии работы PCE-контроллера и...

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

Оказывается, новые процессоры Intel поддерживают уникальную функцию APO, ускоряющую игры на 20-30% Процессоры Intel Core 14-го поколения (Raptor Lake Refresh) не могут похвастаться новой архитектурой или техпроцессом, они не поддерживают Thunderbolt 5, но оказалось, что они всё же могут предложить пользователям кое-что, чего нет у предшественников. Речь о функции Int...

Как построить хороший Vision продукта, используя Lean Canvas? Многие продакт-менеджеры тонут в сотне документах, которые приходится постоянно обновлять. Картинка, создающая целостное понимание по продукту, теряется или тратится много времени на то, чтобы её собрать. Целевая аудитория, исследования — в одном месте, метрики — в друг...

HTB Visual. Захватываем сервер на Windows через проект Visual Studio Для подписчиковВ этом райтапе я покажу, как проникнуть на хост через бэкдор в настройках проекта Visual Studio. Затем получим сессию от имени службы веб‑сервера, активируем привилегию SeImpersonate и используем очередную «картошку» для выполнения кода от имени системы.

[Перевод] Анализ «Пяти неправд» «Пять почему» — это распространённый метод исследования первопричин события. Он основан на предположении, что задав вопрос «почему» пять раз, можно найти ответ, который и будет являться первопричиной. Программист Сергей Целовальников* уверен: такая практика может оказаться п...

Counter-Strike 2 против Valorant. В сети сравнили две игры На днях вышла игра Counter-Strike 2, которая является обновленной CS:GO. Автор YouTube-канала GameBest решил сравнить новую часть с другим крайне популярным сетевым шутером — Valorant. Читать полную статью

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

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

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

12 лет спустя: Damn Small Linux снова в строю. По-прежнему быстрый, но изрядно «располневший» Проект Damn Small Linux достаточно странный. Он не обновляется по многу лет, все считают, что он умер, а потом его авторы снова начинают работу над дистрибутивом. Так произошло в далёком уже 2012 году, когда апдейтов не было около 4 лет. После всё снова затихло, уже на 12 ле...

DIY: Ваше собственное облако на базе Kubernetes (часть 3) Вот мы и подобрались к самому интересному: запуску Kubernetes в Kubernetes. В этой статье мы поговорим о таких технологиях, как Kamaji и Cluster API, а также о том, как интегрировать их с KubeVirt.В прошлых статьях мы уже рассказывали, как мы готовим Kubernetes на bare metal...

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

[recovery mode] Что можно и стоит писать в поле Pre-conditions в тест-кейсах Тестирование продуктов является неотъемлемой частью процесса разработки программного обеспечения. В его основе лежит создание и выполнение тест‑кейсов — документированных инструкций, определяющих шаги для проверки определенных функций или аспектов програм...

Путевые заметки: как люди находили путь домой. Часть 1 В эпоху новейших технологий найти дорогу из точки А в точку Б можно, просто введя адрес в GPS-навигатор или смартфон. Однако люди всегда стремились к ориентированию и прекрасно определяли свое местоположение и до появления GPS-навигаторов и смартфонов. В этой серии статей мы...

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

Опыт использования свободного ПО OSS-CAD_SUITE для программирования FPGA Gowin Для программирования FPGA нужна среда проектирования. Например, при использовании микросхем ПЛИС Altera/Intel мы используем САПР Intel Quartus Prime Software. Возможно, основная ценность технологии ПЛИС даже не сами микросхемы, а программное обеспечение, которое позволяет ра...

[Перевод] Жизнь могла появиться в первые секунды после Большого взрыва Жизнь обрела свой дом на планете Земле около 4 миллиардов лет назад. Это значительная часть истории Вселенной, насчитывающей 13,77 миллиарда лет. Предположительно, если жизнь возникла здесь, то она могла появиться где угодно. А при достаточно широком определении жизни возмож...

Фотохостинги с 2017 по 2023 (утрачено 57% фотографий) С публикации прошлого текста ( «Тестирование фотохостингов на цифровой износ (21 шт)») прошло 6 лет, что позволяет провести новое исследование, но не по теме цифрового износа и конкретно по вопросу выживания цифровых архивов.Если вы захотите сказать, чт...

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

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

Personal (jesus) стенд — решаем проблему тестовых контуров в компании Всем привет, меня зовут Захаров Антон, и я DevOps-инженер в компании Bimeister! Весь свой опыт  я получил в этой компании, за 5 лет прошел путь от эникея до того, кем я работаю сейчас (большое спасибо коллегам!). Я расскажу, как на базе своих серверов и внутренних ресур...

Как тимлиду оценить «КПД разработки». 4 работающих способа — без хрустального шара и гадания на кофейной гуще Привет, Хабр! Я Аня Анциферова, продакт «Цифрового вагона». Я уже рассказывала о том, зачем ПГК пошли в разработку и какие продукты мы делаем. Несмотря на то, что сейчас у ПГК существует «дочка» — ПГК Диджитал, и там трудится порядка 400 человек, мы — не ИТ-гигант. А это зна...

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

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

[Перевод] Основы Scrum менее, чем за 10 минут (Scrum Alliance) Скрам  –  это легкая методология, которая помогает людям, командам и организациям создавать ценности. Это простая и намеренно неполная система, которая позволяет пользователям полностью раскрыть свой потенциал и работать в режиме Agile. В центре внимания Скрам...

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

Как написать новостной Телеграм-канал если ты не программист. Часть первая Всем привет! Попробую написать трилогию покорения основ Python, отражающую мой путь любителя с “паяльником”. Тут не будет основ, чистого кода, отсылок к требованиям PEP-8, практически не будет ООП.Всех суровых Senior’ов, читающих данный материал, прошу понять и простить. Я н...

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

Выбираем лучшую видеокарту на октябрь 2023 года на основе сравнения 30 ускорителей 3D-графики в 23 тестах (с и без RT/DLSS/FSR/XeSS) в 3 разрешениях Выбираем лучшие видеокарты — в целом и отдельно по ценовым сегментам, исходя из тестов производительности под Windows 11 и текущих рыночных цен. Чтобы результаты были прозрачными по всему списку ускорителей, тестирование проводим в одинаковых условиях настроек на максимально...

Fooocus v2 — бесплатный Midjourney у вас на компьютере. Подробная инструкция по установке и использованию нейросети Друзья, всем привет! Сегодня я хочу рассказать вам про самую простую и доступную для понимания нейросеть, которая создает изображения по вашему текстовому описанию. Она называется Fooocus и основана на знаменитой Stable Diffusion XL. Это идеальное решение в качестве вашей пе...

Японцы разработали способ продления срока службы аккумуляторов в 10 раз. Что это за технология? Японская компания Koike разработала монокристалл, который можно использовать в качестве электролита в батареях. Его сопротивление примерно на 90% меньше, чем у материалов на основе поликристаллов, используемыми в стандартных твердотельных аккумуляторах. По словам авторов ид...

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

Подводные грабли экспертных утилит при работе с инцидентами Привет, Хабр! Меня зовут Максим Суханов, я ведущий эксперт в команде CICADA8 Центра инноваций МТС Future Crew. Это подразделение отвечает, в том числе, за реагирование на инциденты кибербезпасности, форензику и реверс-инжиниринг вредоносного ПО. Ещё я занимаюсь другими инте...

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

Как будет работать обмен сообщениями между WhatsApp, Telegram и другими мессенджерами Наверное, все уже знают, что еще до наступления марта Apple выпустит обновление iOS 17.4, которое позволит пользователям из ЕС скачивать приложения для iPhone из альтернативных магазинов. Однако мало кто обратил внимание, что под действие европейского закона о цифровых рынк...

Современные Hi-Tech методы реабилитации после инсульта. Часть 2 — новые методики восстановления Это вторая часть обзора о том, как выйти из инсульта с минимальными потерями. Первая часть была о том, как распознать инсульт, что делать, куда бежать и что дает нейровизуализация инсульта для определения объема реабилитационных мероприятий. Эта «Часть 2» — про хай-тек метод...

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

[Перевод] Откуда мой компьютер берёт время? Серверы NTP уровня 3 получают время от серверов NTP уровня 2, серверы NTP уровня 2 получают время от серверов NTP уровня 1, Серверы NTP уровня 1 получают время от некоторых эталонных часов.Возможно, это радиосигнал, такой как MSF в Великобритании или DCF77 в Германии. Но в б...

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

Атаки на Bluetooth. Часть 1 Снова приветствуем всех заинтересованных и случайно попавших на эту статью! Продолжаем рубрику "Без про-v-ода", в основном мы разбираем для вас атаки на Wi-Fi, но в этой статье мы затронем одну из популярных беспроводных технологий - Bluetooth. Все мы каждый день им пользуем...

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

[Перевод] Внутренние стремления и внешние злоупотребления — переплетённые риски ИИ С учётом того, насколько они будут способными, будущие ИИ‑системы смогут представлять серьёзные риски для общества. Некоторые из рисков исходят от того, что люди будут использовать ИИ в плохих целях (злоупотребление). А некоторые — от&...

[Перевод] 10 рекомендаций по VS Code для повышения продуктивности А вы знали, что 73% разработчиков по всему миру используют один редактор кода? Так и есть. Результаты проведённого в 2023 году опроса Stack Overflow показали, что VS Code является самой популярной средой разработки. Visual Studio Code остаётся наиболее предпочтительной IDE...

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

Event Loop. Мифы и реальность В сети есть довольно большое количество публикаций про Event loop и как он работает. Новые статьи появляются на популярных ресурсах и по сей день, в том числе на Хабре. Однако, к сожалению, далеко не вся информация, представленная в этих материалах является провере...

Создаю свой дистрибутив Linux: Часть 9 Пошёл второй месяц с того момента, как я начал делать свой дистрибутив Linux, это оказалось весьма увлекательное занятие...

[Перевод] Долой баги! Рандомизация веб-тестирования В своей книге "Методы тестирования программного обеспечения" Борис Бейзер описывает парадокс пестицидов. В контексте тестирования программного обеспечения - независимо от того, какой метод тестирования вы выберете, вы все равно пропустите более незаметных “вредителей”, ...

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

Где тут криминал? Чем опасны синтетические медиа и кто с ними борется С развитием искусственного интеллекта появились и синтетические медиа. Это интернет-ресурсы или отдельные публикации, созданные с помощью AI-технологий. Опасность в том, что для производства таких материалов можно использовать дипфейки и генерировать ложный контент. Читать д...

[Перевод] Язык Janet для смертных. Часть 1 — Значения и ссылки Это первая глава перевода небольшой книги о языке Janet за авторством Иана Генри (Ian Henry). В этой книге раскрываются различные аспекты работы с языком, обьяснение синтаксиса и некоторых приемов программирования. Внимание, в этой публикации содержатся скобочки! Люди с неп...

5 методик, которые необходимо использовать продуктовому дизайнеру в 2024-м 5 методик, которые необходимо использовать продуктовому дизайнеру в 24-мПрактическое руководство по использованию фреймворков, которые помогут вам создавать лучшие продукты с разбивкой по этапам Читать далее

Обзор на сайт pq.hosting по аренде VPS серверов Сайт pq.hosting предлагает аренду VPS серверов по разумной цене. На сайте представлены различные конфигурации VPS серверов, которые можно выбрать в зависимости от потребностей пользователя. Сайт имеет простой и интуитивно понятный интерфейс, что делает процесс выбора и заказ...

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

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

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

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

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

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

Linux превзошел Windows 11 в новых играх Испытания проводились с использованием дистрибутивов Microsoft Windows 11, Nobara Linux (на базе Fedora), Arch Linux и POP!_OS (на базе Ubuntu)

[Перевод] Result builders in Swift Конструктор результатов можно рассматривать как встроенный предметно-ориентированный язык (DSL) для сбора деталей, которые объединяются в конечный результат. Конструкторы результатов в Swift позволяют создавать результат, используя "блоки сборки", расположенные в ряд друг за...

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

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

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

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

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

Операция Lahat: новая группа Hellhounds атакует российские организации через системы на базе Linux В октябре 2023 года команда Positive Technologies по расследованию инцидентов PT CSIRT обнаружила компрометацию одной энергетической компании с использованием трояна Decoy Dog. Этот вредонос активно используется в атаках на российские компании и правительственные организации...

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

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

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

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

PostgreSQL Antipatterns: ходим по JSON-граблям Недавно попался на глаза примерно такой кусок запроса, и тут прекрасно примерно все:• множество чтений из CTE (хоть и единственной записи, но все же);• извлечение по каждому ключу текста с раскастовкой в jsonb;• извлечение каждого отдельного json-ключа в каждое отдельное одн...

Samsung уже тестирует One UI 6.1 для Galaxy S21, Galaxy S21 FE, Galaxy S22, Galaxy A54, Galaxy A34 и ряда других моделей Первыми смартфонами Samsung под управлением Android 14 с новейшей версией интерфейса One UI – One UI 6.1 – станут Galaxy S24, Galaxy S24 Plus и Galaxy S24 Ultra, ну а следом One UI 6.1 должен выйти для других моделей компании. И уже очерчен их примерный пере...

Почему Cities: Skylines 2 так тормозит (часть 2, самое мясо) [Первая часть]Генерация скайбоксаВ игре используется встроенная система неба HDRP Unity, то есть она генерирует текстуру скайбокса (кубическую карту) в каждом кадре. Это занимает около 0,65 миллисекунды, что не очень много по сравнению со всем остальным, но если игра нацелен...

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

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

Tesla может начать продажи роботов Optimus в 2025 году, а уже в этом году они начнут трудиться на заводах После публикации финансовых результатов Tesla за первый квартал 2024 года Маск сообщил обновленную информацию о сроках внедрения гуманоидного робота Optimus. Генеральный директор заявил, что Optimus уже выполняет заводские задачи в своей лаборатории. Он считает, что к к...

[Перевод] Новый отчёт НАСА предполагает, что к 2050 году мы сможем добывать энергию в космосе Солнечная энергетика космического базирования (СЭКБ) в последнее время находится на слуху: прошлым летом было проведено успешное испытание демонстрационной установки, получавшей солнечную энергию в космосе. Несмотря на то, что концепция в основе своей здравая, существует мно...

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 2 Я продолжаю рассказывать, как HTML и CSS могут улучшить или ухудшить доступность интерфейсов. В своём рассказе я использую свой опыт и моего незрячего знакомого Ильи. Мы уже выпустили первую часть. В этой статье будет: атрибут autofocus и его нюансы, паттерн «Skip-link» и и...

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

Работа с файлами других САПР в КОМПАС-3D. Часть 3. Добавление компонентов в сборку без предварительного открытия «В предыдущих сериях» (часть 1 и часть 2) мы рассказали, какие практические сценарии работы с файлами моделей из других CAD-систем существуют в КОМПАС-3D. Разобрали, как открывать файлы открытых и проприетарных форматов для просмотра, создавать с них конструкторскую документ...

Практика внедрения PHPunit Уже достаточно сказано о пользе автоматизированного тестирования (например, тут и тут), но до сих пор многие так и не пишут тестов. Одна из причин, как мне кажется, в том что предлагаемые способы автоматизации тестирования сложнее чем необходимо для большинства случаев. Сего...

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

Грейдирование для менеджеров: как внутреннее тестирование помогает нам рефакторить Wiki Всем привет! Меня зовут Соня Евстигнеева, я руководитель проектов в AGIMA. Расскажу почти детективную историю про нашу внутреннюю систему грейдирования и про то, какие метаморфозы с ней происходят. Сначала она просто помогала нам определять уровень знаний у новичков, а тепер...

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

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

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

4 распространенных заблуждения и недопонимания про дефицит калорий. Часть 1 Почему все рекомендуют именно 20% дефицит калорий и что будет, если сделать дефицит больше - 50% или 100%? Верно ли, что потерю жира можно предсказать по формуле 1 гр жира за каждые 9 кк дефицита? Правда ли, что при большем дефиците сжигается меньше жира? И есть ли разница м...

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

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

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

Почему мир Hogwarts Legacy похож на цветной картон (Часть I) Думаю, каждый вспомнит с наскоку несколько историй из Ведьмака, Дизонорда, Фаллаута. И я говорю не об основных или сайд квестах, а об истории, которые требовали лишь вашего внимания. Где вы сами складывали картинку по предметам во...

В ярдо Linux добавили «синий экран смерти» – за разработку отвечает сотрудник Microsoft Уже совсем скоро большая часть дистрибутивов Linux получит новую функцию

[Перевод] Потенциальные проблемы с автоинкрементным ключом. MySQL <8.0, PostgreSQL В данной публикации я поделюсь двумя основными причинами, по которым я предпочитаю избегать использования автоинкрементных полей в PostgreSQL и MySQL в будущих проектах. Вместо этого я предпочитаю использовать UUID-поля, за исключением случаев, когда есть очень веские аргуме...

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

ARR: что это такое и чем он полезен бизнесу Работая в условиях жесткой конкуренции и турбулентной экономики, бизнесу постоянно необходимо искать новые методы и подходы для увеличения дохода. Для тех, кто работает с клиентами по подписочной модели, одним из таких инструментов является ARR (Annual Recurring Revenue), ко...

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

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

Я изучал иностранный язык 3 месяца с DuoLingo. Почему это не самый эффективный инструмент для изучения языка Уже чуть более трех месяцев я учил испанский язык  с помощью тренажера DuoLingo. Это первая часть эксперимента. Моей целью было оценить объем знаний и перспективы использования DuoLingo изучающими иностранный язык.Я не тратил много времени, 10-15 минут в день, иногда ме...

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

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

Практическое руководство по Rust. 3/4 Hello world! Представляю вашему вниманию третью часть практического руководства по Rust. Первая часть Вторая часть Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современ...

Why so heavy, Windows? Новая версия ОС Tine Core Linux «весит» всего 24 Мб. Что это за дистрибутив Tiny Core Linux около 15 лет, и он до сих пор актуален, обновляется и модифицируется своими авторами. Правда, с момента выхода версии 1.2 он немного «поправился» — сейчас его объём составляет 24 Мб вместо 10 Мб. Но всё равно это исчезающе малый «вес» по сравнению с другими д...

Как я столкнулся с Tarantool-ом: разбор подводных камней на примере микросервисного pet-проекта Привет, Хабр! Меня зовут Сергей Скубач, я работаю в VK и разрабатываю облачное хранилище WorkDisk. Мы используем Tarantool в своём продукте, так как его разрабатывают и развивают наши коллеги. Я впервые столкнулся с Tarantool именно в VK, и для более глубокого понимания реши...

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

Полное отключение. WhatsApp с 24 октября перестанет работать на смартфонах Android и iOS Самым известным, крупным и распространенным сервисом для общения является WhatsApp, а пользуется он колоссальной громадной популярностью по всему земному шару. Это программное обеспечение на постоянной регулярной основе используют более чем 3 млрд человек, и все Читать полн...

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

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

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

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

Профилирование асинхронного Python Профилирование приложений — это процесс анализа программы для определения её характеристик: времени выполнения различных частей кода и использования ресурсов.Для асинхронного python-кода существует конечное количество специфических "узких мест", которые лучше перечислить зар...

Адаптация, а не онбординг: что мы делаем, чтобы наши сотрудники влились в компанию? Привет, Хабр! Я Анна, руководитель отдела адаптации, обучения и развития в ГК «Автомакон». У нас в команде 800+ специалистов на удалёнке, продолжается бурный рост, и возникает вопрос: как не потерять сотрудников на этапе адаптации? Мы выделили отдельную роль – куратор процес...

«Галя, у нас инцидент!» или зачем мы написали SIEM-чатбота для MaxPatrol Привет, Хабр! Меня зовут Кирилл Орлов, я CISO Oxygen Data Centers & Clouds и в этом посте я поделюсь с вами нашим опытом внедрения MaxPatrol (MP): расскажу, как удобно настроить защиту разных сегментов инфраструктур на базе этого решения, объясню, зачем мы сделали своего...

[Перевод] Когда одного Postgres'a мало: сравнение производительности PostgreSQL и распределенных СУБД Общеизвестно, что PostgreSQL - крайне эффективная СУБД с богатой функциональностью. При этом не секрет, что PostgreSQL масштабируется только вертикально и её производительность ограничена возможностями одного сервера.Написано много хороших постов, в которых сравнивают архите...

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

Создаю свой дистрибутив Linux: Часть 2 Графический интерфейс это первое, с чем взаимодействует пользователь в нормальной операционной системе, так что пора продолжить работу над интерфейсом, и приступать к менее заметным нюансам.

Как перезагрузиться, пройдя пешком 250 км, или каким был для меня Путь Сантьяго Всем привет! Меня зовут Катя Черных, я бизнес аналитик в Х5 Tech, работаю на продукте Ценообразование. Живу в Москве, со времён ковида работаю удалённо и большую часть дня провожу дома. Поэтому к планированию отпуска отношусь серьёзно, стараюсь уезжать подальше из своего дом...

Как сделать связанный сервер для распределенной базы данных. (MSSQL + Postgre) Материал подойдет для студентов и тех кто только начинает создавать распределенные базы данных.Всем доброго дня, дорогие Хабровчане! Решил поделиться созданием связаннх серверов, поскольку информации в интеренете много, но не везде описываются все мелочи....

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

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

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

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

Быстрая печать ажурных стенок в Ultimaker Cura Итак, мне понадобилось сделать довольно крупный (условно) корпус, продуваемый всеми ветрами. Чтобы сэкономить время сразу скажу, что вариантов была масса, но большая часть сводилась к тому, что я постоянно возвращался к использованию заполнения разной степени плотности. Одно...

Внедрение CRM — неожиданный вариант тимбилдинга? На конференциях, на Хабре, на митапах и даже в горячих дискуссиях тематических чатов можно встретить сравнение стоимости внедрения корпоративного программного обеспечения (не обязательно CRM) с зарплатой сотрудника или со стоимостью корпоратива на компанию. В этом есть рацио...

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

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

[Перевод] Новое в SQL Server 2022: улучшаем масштабируемость с Buffer Pool Parallel Scan Параллельный просмотр (сканирование) буферного пула — это новая функция SQL Server 2022, призванная обеспечить лучшую масштабируемость и значительно повысить производительность обслуживания вашей рабочей нагрузки.Буферный пул — это область оперативной памяти, которую SQ...

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

Для BarbarQ 2 проведут тестирование на Android Разработчики BarbarQ 2 собираются протестировать данную мобильную игру в Китае. Поиграть смогут геймеры на Android. Как и с Tarisland и Need for Speed Assemble, нужно будет не просто скачать клиент игры, но также и зарегистрироваться, чтобы получать квалификацию. Предзагруз...

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

TON Storage – прорыв в Web3 или провал? TON Storage - это часть экосистемы TON, изначально спроектированной командой Telegram, во главе с Павлом Дуровым. Она предоставляет возможность хранить, скачивать и делиться файлами децентрализованным способом.Напомню, что работа TON (Telegram Open Network) на несколько лет ...

[Перевод] Разбиение файлов Terraform на компонуемые слои Terraform позволяет создать облачную инфраструктуру с помощью всего одной команды. Допустим, вы хотите запустить Elasticsearch и Kibana в кластере Kubernetes. Для этого можно написать несколько файлов .tf и выполнить команду terraform apply для инициализации кластера Kubern...

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

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

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

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

Книга «Разработка приложений на базе GPT-4 и ChatGPT» Привет, Хаброжители! Эта небольшая книга представляет собой подробное руководство для разработчиков на Python, желающих научиться создавать приложения с использованием больших языковых моделей. Авторы расскажут об основных возможностях и преимуществах GPT-4 и ChatGPT, а та...

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

Как аналитики данных и специалисты по Data Science находят работу после курсов: опыт Практикума Привет, Хабр! Меня зовут Ольга Матушевич, я наставница на курсе «Аналитик данных» в Яндекс Практикуме. Большая часть наших студентов в качестве цели обучения указывает успешное трудоустройство в новой профессии. Поэтому мы внимательно отслеживаем, у кого из выпускников получ...

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

[recovery mode] Дроби в ранних цивилизациях В обширном математическом пространстве дроби занимают особое положение. По своей сути они представляют собой одновременно и числа, и способ выражения частей целого, служащий опорным блоком как в базовой арифметике, так и в сложной математической теории. Несмотря на их повсем...

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

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

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

Что происходит с зубами человека с возрастом — 7 способов сохранить их до старости Зубы человека со временем изнашиваются, но их можно спасти. Источник изображения: Fallbrook Dental Care Зубы являются одними из самых важных органов человека. Они нужны нам не только для пережевывания пищи, но и для общения с людьми. Проблемы с зубами влияют на жизнь человек...

Себестоимость iPhone 15 Pro Max достигла $558 Авторы японского издания Nikkei подсчитали себестоимость компонентов, которые необходимы для сборки одного iPhone 15 Pro Max. Она составила 558 долларов. Это на 12 % больше себестоимости прошлогоднего iPhone 14 Pro Max. На данный момент последняя флагманская «прошка» являетс...

Это база: нюансы работы с Redis. Часть 1 Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на т...

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

Результат 84 тестов показал: производительность Intel Core Ultra в Linux на 15% выше, чем в Windows Ресурс Phoronix, посвященный Linux и различными дистрибутивам на базе Linux, провел большой тест-сравнение Acer Swift Go 14 на базе процессора Intel Core Ultra 7 155H в Ubuntu 23.10 (на ядре Linux 6.7-rc5) и Windows 11. Оказалось, что в Linux производительность выш...

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

Книга «C++ для начинающих. 2-е изд." Привет, Хаброжители! Книга Герберта Шилдта начиная с таких базовых понятий языка, как типы данных, массивы, строки, указатели и функции, книга охватывает также важнейшие элементы объектно-ориентированного программирования — классы и объекты, наследование, виртуальные функц...

Сказ о том, как я эмулятор Intel 4004 на Python писал (часть 2) Небольшой дисклеймер: перед прочтением данной статьи ознакомьтесь с первой частью, дабы вникнуть в суть происходящего. Желаю вам приятного прочтения :)Это вторая часть о том, как я писал и продолжаю писать и улучшать эмулятор Intel 4004 с очень ограниченным функционалом на я...

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

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

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

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

Замыкания и декораторы в Python: часть 1 — замыкания Впервые столкнувшись с концепцией замыканий, я мало что понял, и мне потребовалось потратить какое-то время на поиск и изучение дополнительных материалов, чтобы разобраться. Если у вас возникли те же проблемы, я постараюсь коротко, но понятно объяснить эту тему. Читать далее

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

Размышления о мире. Часть 2: Панпсихизм Чем ярче разгораются костры знания, тем больше тьмы открывается нашим изумлённым глазамТеренс МаккенаЭтот пост - продолжение первой части, повествующей про панкомпьютационализм. Посты слабо связаны между собой логически, однако я сильно рекомендую ознакомиться с первой часть...

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

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

NET hosting. Обзор вариантов и пример деплоя приложения Приложения Dotnet и Mono можно развернуть на сервере разными способами. В статье мы рассмотрим специализированные решения для хостинга dotnet приложений и предоставим инструкцию по развертыванию, написанную на конкретном примере. Читать далее

Linux на смартфоне Android — как и зачем? Linux - операционная система, которая является аналогом всеми известного "Окошка". Сама операционная система имеет множество вариаций, и устроена куда сложнее Windows. В ней надо активно использовать терминал для установки нужных утилит, когда на Windows среднестатистический...

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

Диск – это лава. Исследуем методы выполнения пейлоада в памяти Ни для кого не секрет, что во время пентестов атакующим приходится использовать готовые инструменты, будь то нагрузка для Cobalt Strike, серверная часть от поднимаемого прокси-сервера или даже дампилка процесса lsass.exe. Что объединяет все эти файлы? То, что все они давным-...

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

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

Instagram* начал тестировать ленту с публикациями только верифицированных пользователей Отдельная лента может сделать услугу платных «галочек» популярнее, считает The Verge.

Экзамены детей в Техасе будет проверять искусственный интеллект. Систему хотят внедрить в процесс экзаменов STAAR, заменив большую часть оценщиков Студенты в Техасе, сдающие на этой неделе государственные экзамены, будут участвовать в тестировании новой системы оценивания на основе искусственного интеллекта. Эта система в ближайшее время заменит большинство оценщиков-людей в регионе.  создано DALL-E Техасско...

Как устроен GIL (Global Interpreter Lock) в Python: влияние на многозадачность и производительность Привет, уважаемые читатели!GIL, или Global Interpreter Lock десятилетиями оставался темой обсуждения и дебатов среди питонистов.Что такое GIL? GIL, сокращение от Global Interpreter Lock, представляет собой важную концепцию в Python. Он представляет собой мьютекс, который бло...

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

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

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

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

Внедрение процесса тестирования Google Tag Manager: увлекательная история Даши-путешественницы Март принес с собой проблему: у некоторых клиентов начали подвисать страницы, на которых монолитный js был разделен на чанки. На таких страницах в основном бандле содержится минимум для отрисовки первого экрана, а остальные чанки мы загружаем отложено. Однако из-за неправиль...

Security Week 2415: новые уязвимости в продуктах Ivanti 2 апреля компания Ivanti сообщила о закрытии четырех новых уязвимостей в сетевых шлюзах Ivanti Connect Secure и Ivanti Policy Secure. Из них наибольшую опасность представляет проблема, получившая идентификатор CVE-2024-21894. Ошибка в компоненте IPSec при некоторых условиях ...

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

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

«Что? Где? Когда?» в названии багов Хорошее название бага понятно любому:- менеджеру, плохо знающему техническую часть проекта;- джуниору, который только пришел в проект;- разработчику (зачем мне это чинить?)Для этого оно должно отвечать на 3 главные вопроса: Что? Где? Когда?И в этой статье я хочу разобрать ка...

Docker для новичков — #2 Все инструкции Dockerfile В этой статье я расскажу об инструкциях Docker, о том как написать Dockerfile и о существующих best practice для этого! Читать далее

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

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

OpenAI запускает GPT Store — как создать свой custom GPT с внешними API вызовами Вчера вечером, 10 января 2024 г., OpenAI официально запустили GPT Store. Давайте разберемся, что это такое, и что оно дает. А затем создадим свой собственный GPT и добавим его в GPT Store.Концепция "custom GPT" в терминах OpenAI - это кастомный набор инструкций (custom promp...

Записки оптимизатора 1С (Часть 5). Ускорение запросов с RLS в 1С системах Замахнемся сегодня на RLS.Обсуждать будем проблемы по нашему профилю, связанные с производительностью 1С:Предприятие. Но, в целом, этот материал может быть полезен и не только 1С-никам.Почему запросы с RLS очень часто такие долгие?Какие есть варианты их ускорить? Читать дале...

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

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

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

Тестирование производительности 1С на СУБД MSSQL 2022 и PostgreSQL 15 (на 20, 40, 60,80, 100 пользователей) В начале 2024 года мы решили провести новое исследование производительности 1С:Предприятие на СУБД MSSQL и PostreSQL и вот что получилось... Читать далее

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

[Перевод] А что, если бы функция get в Lodash выводила типы за вас в TypeScript Продвинутая реализация Lodash функции get используя за основу базовую реализацию "Typed Get" type-challenge, а затем покрывая пограничные случаи: опциональные пути, массивы, кортежи. В самом конце типы добавляются к решению на JS. Читать далее

40 креативных меню (перевод) Одна из первых вещей, которые делают при планировании нового веб-сайта — это готовят контент, который будет на сайте. Затем разделяют на разделы, а затем на различные уровни навигации. В результате получается скучный список ссылок. Этот список ссылок является одним из наиб...

На смартфоны вышла игра Stray Cat Doors 3 — последняя часть про девушку-кошку Мобильная игра Stray Cat Doors 3 вышла в App Store и Google Play 6 марта. Клиент можно скачать также из России. Разработчики заявляют, что это последняя часть в серии. В ней игроки отправятся в милое и мультяшное приключение с девочкой в стране грёз, где она исследует неболь...

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