[Перевод] Jenkins Scripted Pipeline: как использовать «Pipeline-as-code» — принцип, который позволяет Jenkins обрабатывать пайплайны как обычные файлы. Существует два способа описания пайплайнов: скриптовый и декларативный. В этой статье поговорим о Jenkins Scripted Pipeline: проанализируем его структуру и разберём варианты исп...
[Перевод] Как работает service mesh и API-шлюзы в микросервисной архитектуре Вы наверняка много раз слышали о service mesh и API-шлюзе применительно к микросервисам. Их часто путают. В этой статье мы подробно поговорим о двух этих инструментах, а также разберемся, когда их лучше использовать и что будет, если их объединить. Читать далее
[Перевод] Введение в GraphQL для .NET-разработчиков: мутация GraphQL представляет из себя язык запросов и манипулирования данными для API, а также среду для выполнения этих запросов с существующими данными. Он позволяет различным клиентам использовать API и запрашивать только те данные, которые им нужны, а также он помогает решить про...
Введение в библиотеку Transformers и платформу Hugging Face Библиотека Transformers предоставляет доступ к огромному кол-ву современных предобученных моделей глубокого обучения. В основном основаных на архитектуре трансформеров. Модели решают весьма разнообразный спектр задач: NLP, CV, Audio, Multimodal, Reinforcement Learning, Time ...
Как настроить простой DNS-сервер для локальной сети Если вы впервые столкнулись с необходимостью поднять DNS-сервер для локальной сети под Linux, то эта статья – для вас. Преимущество предлагаемого способа – простота: сервер можно настроить буквально за несколько минут. Но этот способ, скорее всего, не подойдёт для продакшн с...
Делай нейминг как сеньор Это объект Pizza, там хранится инфа о латте, а заказали его в Restaurant или в Pizzeria? Неудобно? Максимально. Мы читаем код существенно больше, чем пишем. И хочется сразу понимать, что происходит, не играя в квесты «что имел в виду автор», «да как это работает» и «я снова ...
Архитектура игры на Unity без Zenject. Часть 1 Всем привет!Меня зовут Игорь Гулькин, и я Unity разработчик. За свои 5 лет накопилось много опыта, поэтому в этой статье хотел бы поделиться принципами и подходами, с помощью которых можно реализовать архитектуру игры просто и гибко без фреймворка. Цель доклада, дать не прос...
Централизация логирования микросервисов с Graylog Трассировка и анализ ошибок в микросервисной архитектуре без средств централизации логирования обычно причиняет неудобства, поскольку для понимания “что и на каком микросервисе умерло” приходится обходить микросервисы по очереди, сверять и сопоставлять данные в логах. В данн...
Это вам не x86_64. Проблемы сборки Arch Linux под ARM-архитектуру и как мы их решали Привет, Хабр! Меня зовут Лев Евсеенко, я работаю системным администратором в Selectel, сопровождаю сервисы наших выделенных серверов. В декабре мы пополнили линейку конфигом Ampere Altra Max M128-30 (3 ГГц, 128 ядер) с ARM-процессором внутри. Перед введением в «эксплуатаци...
Аномалии под нагрузкой в PostgreSQL: о чём стоит помнить и с чем надо бороться В этой статье мы разберём несколько аномальных случаев высокой нагрузки в СУБД PostgreSQL. Что это такое? Обычно PostgreSQL хорошо показывает себя под нагрузкой и оправдывает ожидания в отношении производительности — она остаётся высокой. Но при определённых профилях нагрузк...
Как мы сделали и оптимизировали механизм правил для персонализации UI Всем привет! Меня зовут Александр, я занимаюсь backend-разработкой в KTS. В одной из прошлых статей мы рассказали про архитектуру фронтенд-приложения для проекта личного кабинета сотрудников Пятёрочки. В этой статье расскажу, как мы решали проблему персонализации интерф...
И самые лучшие книги они в рюкзаках хранят… В этом топике продолжим тему решения криптографических загадок с MysteryTwister. Ранее уже были опубликованы статьи навеянные задачами с этого ресурса («Угнать SIGABA за 24 часа», часть 1, часть 2). На этот раз возьмём задачу, основанную на классической «задаче о рюкзаке». А...
Фильтрация и пагинация в FastAPI Недавно столкнулся с задачей написать фильтрацию на FastAPI, пошёл гуглить и нашёл замечательную библиотеку fastapi-filter, которая сильно упрощает задачу. О ней в этой статье и пойдёт речь, а также заодно покажу простой способ пагинации без библиотек. Читать далее
Пентест. Думаем как злоумышленник. Часть 2: угрозы внутри В первой статье мы поговорили о том, как может действовать Внешний нарушитель при проведении пентеста, какими методами он может собирать и использовать информацию для последующего проникновения. В этой статье мы продолжим рассмотрение темы тестирования на проникновение и пог...
Создание модуля WebAssembly с помощью Emscripten, AssemblyScript и Rust В этой небольшой заметке предлагается рассмотреть несколько способов компиляции модуля для WebAssembly, используя три разных подхода. Мы реализуем решение одной и той же задачки на трёх языках и скомпилируем полученный код в модуль WebAssembly. Будем использовать:Emscripten ...
Масштабирование SSR-приложений Привет! Меня зовут Олег Драпеза, я работаю техлидом в Тинькофф в команде Coretech Frontend. Мой основной проект — SSR мета-фреймворк tramvai, на котором работают несколько десятков фронтовых приложений Тинькофф.Сегодня хочется поговорить про масштабирование SSR-приложений. С...
Мой диплом, или Как собрать вещи и переехать на YDB Меня зовут Арслан, в этом году я делал сервис для построения циклов заказа (например, заказа такси). Возможно, вы видели пост от другого разработчика в команде, Ильи Lol4t0. Всего сервис обрабатывает примерно 5000 RPS с задержкой 100 мс в 99 перцентиле. Раньше для хранения д...
Neo4j. Вместо тысячи join-ов… Если вы столкнулись с задачей хранения сильно связанных данных, то отличным вариантом будет использовать графовую модель данных. Мы в Текфорс сделали именно так. Почему - разберем в этой статье. Читать далее
Пентест. Думаем как злоумышленник. Часть 3: Эскалация привилегий и социнженерия В предыдущих статьях (Часть 1, Часть 2) мы поговорили о том, как может действовать Внешний нарушитель (пентестер за пределами организации) и Гость (пентестер имеет только доступ в сеть) при проведении пентеста. Также начали рассматривать действия Внутреннего нарушителя...
В очередь, ...! Как управлять состоянием системы через события Существует множество разных подходов к построению архитектуры серверных приложений. В данной статье рассмотрим Event-driven архитектуру (она же событийно-ориентированная). Рассмотрим основные принципы, как перейти от связей Компонент А <-> Компонент В, к связям через с...
Как я проходил собеседования на Machine Learning Engineer Это статья с 21-ой ссылкой о подготовке к собеседованиям. Я собеседовался на позиции Machine Learning Engineer. Разобрал основные этапы (алгоритмы, machine learning system design, поведенческий этап) и как к ним готовиться. Читать далее
Архитектура предприятия в гигантах индустрии Архитектура предприятия — это дисциплина, которая фокусируется на проектировании и управлении системами, процессами и структурами организации. Она направлена на то, чтобы они соответствовали бизнес-целям и задачам и были эффективными, результативными и адаптируемыми.IBM, Goo...
Аутентификация и авторизация в проекте с микросервисной архитектурой: стратегии, практический пример Привет! На связи Олег Казаков из Spectr. Мы занимаемся разработкой цифровых сервисов, в том числе высоконагруженных систем с микросервисной архитектурой и большим количеством различных интеграций.В статье расскажу об одном из кейсов при работе над проектом с микросерви...
Миграция Postgrespro с Centos7 на AlmaLinux8. Как бонус — пара седых волос В статье описывается один из способов обновления дистибутива операционной системы с работающим кластером баз данных Postgres Pro Standard версии 11. В дальнейшем, для краткости кластер баз данных Postgres Pro Standard 11 будем называть Postgrespro, Centos7 - Centos, а AlmaLi...
Как не попасть в яму с помощью нейронных сетей: технологии приходят на помощь коммунальщикам Привет, Хабр! Меня зовут Андрей Соловьёв, я DS в Сбере. Вероятно, практически каждый читатель этой статьи сталкивался с проблемными дорогами, если вы автомобилист, или тротуарами, если вы пешеход. Плохие дороги — одна из актуальнейших проблем любой страны. Сегодня поговорим ...
Self-Supervised Learning. Contrastive learning В предыдущих статьях мы разобрали много аспектов, связанных с SSL. Теперь пришло время посмотреть на методы, которые используют достаточно очевидное, на первый взгляд, знание - одна и та же картинка похожа, а разные картинки - разные. Это основная идея методов с contrastive...
Проверка корректности А/Б тестов Хабр, привет! Сегодня поговорим о том, что такое корректность статистических критериев в контексте А/Б тестирования. Узнаем, как проверить, является критерий корректным или нет. Разберём пример, в котором тест Стьюдента не работает. Читать далее
Архитектура PostgreSQL. Часть 3. Инициализация бэкэнда Приветствую!На прошлом шаге мы дошли до входной точки Postgres. Сегодня мы пройдемся по ней до главного цикла. Будут рассмотрены:— Модули для работы с файлами и файловой системой— Как SIGUSR1передает множественные значения— Реализации хэш‑таблиц...
Микросервисы на основе событий с Dapr Системы оркестрации контейнеров существенно упростили управление многокомпонентными системами, в том числе основанными на микросервисной архитектуре. Но остался открытым вопрос организации надежного обмена сообщениями между микросервисами, координации последовательности опер...
Модели управления инфраструктурой Управление инфраструктурой даже средней организации является непростой задачей. Большое количество серверов требует постоянного внимания. Установка обновлений и развертывание новых систем все это трудоемкие задачи. Поговорим о том, каким способами можно автоматизировать выпо...
Angular — API композиции директив Поговорим о новом (уже старом) способе управления директивами в Angular Читать далее
Часть 2. Управление знаниями в Obsidian. Базовый рабочий процесс. Журнал. Источники и их библиотеки. Пример В этой статье будет показано как можно начать организовывать свою базу знаний в Obsidian, отталкиваясь от источников. В статье будет разобрано какие стоит использовать папки и теги; как создать свою первую точку входа в систему. Также будет уделено внимание способу ведению ж...
Создаем свой собственный язык программирования с использованием LLVM. Часть 1: Лексический и синтаксический анализ Это первая статья из цикла о том, как создать свой собственный ООП язык программирования с использованием LLVM.В данной статье мы начнем с введения в серию и начнем реализацию с написания лексического и синтаксического анализаторов для подмножества языка, который будет полно...
RISC-V набирает популярность: Европа, Китай, РФ, далее — везде Архитектура RISC-V активно развивается, в первую очередь — благодаря своей открытости и независимости. На ее основе можно разрабатывать практически любые решения, чем и занимаются некоторые компании из ряда стран, включая Китай, Россию, а теперь и Европу. Дело в том, что в ...
Обратная связь после собеседования: 3 способа дать фидбек так, чтобы на вас не навели порчу Интервью завершено, и … ничего не происходит. Кандидат уже договорился с гадалкой, чтобы навести порчу на HR-а и всю компанию. Сообщить соискателю об отказе всегда нелегко, но мы разобрали 3 способа дать честный и полезный фидбек потенциальным сотрудникам. Читайте, сохраняйт...
LSI ключи и что использовать вместо них? Меня зовут Пётр Гришечкин, и я работаю SEO-специалистом в команде проекта “Своё Родное”. В основном я занимаюсь продвижением цифровых продуктов, представленных на платформе, и готов поделиться своими знаниями с читателями Хабра. Вокруг SEO ходит много мифов и легенд. На неко...
[Перевод] Как мы обновили старый кластер Elasticsearch на 3 ПБ без простоев. Части 6 и 7 (финальная) Прим. переводчика: автор статьи рассказывает, как его команда убедилась, что новый кластер Elasticsearch работает в соответствии с ожиданиями и полностью готов к production-нагрузкам. Также подводит итоги всего процесса и анализирует получившуюся архитектуру нового кластера ...
[Перевод] Ansible для начинающих В этой статье мы рассмотрим базовые и более сложные концепции Ansible с примерами. Статья предназначена для тех, кто только начинает работу с Ansible. Ansible — это инструмент infrastructure as a code для автоматизации задач по подготовке и конфигурированию инфраст...
Obsidian + Dataview: Задачи В прошлой статье Obsidian + Dataview: Таблицы я рассказал про установку плагина Dataview, формирование таблиц с его помощью и разобрал 4 кейса его использования.Dataview - это очень мощный и функциональный плагин, с помощью которого кроме таблиц можно так же формировать спи...
Исследование нагрузки на ELK stack и тюнинг Logstash Всем привет! Меня зовут Александр, и в этой статье я расскажу про то, как столкнувшись с многократно увеличившейся нагрузкой на ELK stack сначала было диагностировано узкое место, а после произведён его тюнинг. Хоть и в заголовке статьи уже есть спойлер что произведен только...
Минус 106 часов жизни или шесть историй о неуважении В этой статье не будет ни слова о конкретной компании, но в то же время она агрегирует целый слой проблем и неожиданностей, с которыми можно столкнуться, работая с другими людьми. Пусть будет сборник историй, основанных строго на реальных событиях: немного страшных, немного ...
«Чёта мне тревожно!» Как избавиться от тревоги: лучшие методы и практики самопомощи Многим людям, как и мне, тревога усложняет жизнь. Какие способы помогают избавиться от тревоги, помимо коньяка? Поговорим о том, как помочь себе самостоятельно, если вас достали тревожные мысли и переживания о будущем. Читать далее
Фукуяма, NAT, TCP и кротовые норы Данная статья является продолжением темы обсуждавшейся в статье "Философия борьбы с NAT" и так же нацелена на сетевых разработчиков, С++ программистов и просто интересующихся тенденциями развития интернет индустрии. Предполагается, что читатель в общих чертах знаком с модель...
Установка OpenCV под Windows В данной статье будет описан способ сборки OpenCV из исходников с помощью cmake и Microsoft Visual Studio, и пример запуска своего проекта на cmake. Большая часть статьи является повторением официальной документации. Читать далее
Бизнес-архитектура MUST HAVE Бизнес-архитектура и ее место в компанииПростая истина: чем комфортнее и красивее город, тем более приятно и удобно в нем жить. Архитектура города – это не только архитектура конкретных зданий и сооружений, но и сама их совокупность, создающая пространственную среду для...
Математическая продлёнка. Из чего сделаны Пифагоровы штаны Поводом для написания этой заметки послужила новость, облетевшая мир 18 марта этого года: две школьницы из Нового Орлеана, Кальцея Джонсон и Не`Кия Джексон «впервые доказали теорему Пифагора», опираясь на теорему синусов. В России эту новость встретили с иронией и стёбом, но...
Tinkoff Pro Open Source Мы в Тинькофф активно инвестируем в образование. Развиваем Поколение, Финтех, Академию и другие программы. Open source — наглядный способ передать экспертизу на конкретных примерах и дополнительная возможность развивать наши образовательные программы.Открытая разработка инст...
Код на репите. Механизмы повторного использования кода: от элитного до простого Привет! Меня зовут Грант, я .Net-разработчик. Знаете вы это или нет, но ваш код можно переиспользовать: будь то модуль, компонент или архитектура. Одни разработчики делают это осознанно, другие на уровне рефлексов. Повторное использование хорошего кода экономит время и други...
Сравниваем инструменты мониторинга IT-инфраструктуры Zabbix, Icinga, Prometheus Инструменты мониторинга IT-инфраструктуры позволяют полностью отслеживать ее состояние: собирать данные, анализировать и визуализировать их, оповещать о сбоях и т.д. В этой статье рассмотрим платформы Zabbix, Icinga и Prometheus. Разберем их UI, архитектуру, принципы сбора м...
Enterprise Architecture и ее подходы В основном всем понятно, чем занимаются архитекторы решений, архитекторы по интеграции, системные архитекторы, но у многих возникают вопросы по поводу Архитекторов Предприятий, они же Enterprise Architects. В этой статье и поговорим об этой роли. Читать далее
[Перевод] Argo Rollouts с примерами Что такое Argo Rollouts? Это контроллер Kubernetes и набор CRD для дополнительных возможностей развёртывания — сине-зелёное, канареечное, прогрессивное, анализ канареечного развёртывания и экспериментирование.В этой статье поговорим о продвинутых возможностях развёртыва...
[Перевод] Создание базовой сети 5G с Open5GS и UERANSIM Добрый день, уважаемые хабровчане!Сегодня и в последующие дни я сделаю перевод статей о развертывании архитектуры сетей 5G для дальнейшего ее изучения. Цель этой статьи - показать, что самые передовые технологии доступны всем и каждому, и что будущее можно создавать своими р...
Перенос URLSessionTask в background URLSession при уходе приложения в фон Всем привет. Всем привет. Меня зовут Максим Батраков и я iOS-разработчик в 65apps. В этой статье я хочу рассказать о некоторых особенностях работы с URLSession, разобрать загрузку файлов в background URLSession и показать процесс переноса выполнения активных запросов в backg...
Устройство 64-битных счётчиков транзакций в Postgres Pro Enterprise Эта статья описывает реализацию 64–битных счётчиков транзакций (XID, ксидов) в СУБД Postgres Pro Enterprise, которая создана на основе свободной, опенсорсной объектно–реляционной СУБД Postgres. Она ориентирована на тех, кто имеет практический опыт в работе с СУБД Postgres Pr...
От потоков к корутинам: как и почему видоизменились примитивы синхронизации в языке Kotlin (Часть 1) В этой статье мы рассмотрим, как и почему изменилась реализация примитивов синхронизации из стандартной библиотеки Java и пакета java.util.concurrent для Kotlin Coroutines и для языка Kotlin в целом.Разберемся, какие реализации примитивов синхронизации потоков актуальны в ко...
Бардак в main, стандартизация и uber.fx. Как сделать структуру кода понятнее для всех Привет, Хабр! Меня зовут Данила Проценко. Я — Lead Software Architect в «Лаборатории Касперского», занимаюсь архитектурой микросервисов и монолитов на Go. Строгий порядок — залог успешного промышленного программирования. А порядок, в свою очередь, начинается со стандартиза...
[Перевод] Помимо Правил Трех, Пяти и Ноля В предыдущей статье мы разобрали Правила Трех, Пяти и Ноля — что они из себя представляют, и когда и какое из них следует использовать (спойлер: львиная доля кода должна быть написана в соответствии с Правилом Ноля).Но очень часто у правил бывают исключения, и иногда эти иск...
Гексагональная архитектура и DDD на опыте интернет-магазина Спортмастер. Пробуем новое Привет! Продолжим тему гексагональной архитектуры и DDD, первый пост — здесь. Под катом - вспомним, что из себя представляет гексагональная архитектура, какие основные концепции содержит DDD и как теория, проявляясь в структуре проекта, помогает решить некоторые из опис...
Будет ли GeForce RTX 5090 вдвое быстрее RTX 4090? Слухи говорят о гигантском скачке производительности в новом поколении Пока линейка видеокарт Nvidia GeForce RTX 40 только начинает своё шествие по рынку, в Сети уже появились слухи о следующем поколении. Ресурс RedGamingTech утверждает, что как минимум старшие карты линейки RTX 50 могут стать первыми решениями, основанными на много...
Приколы с ChatGPT: обмануть или быть обманутым Привет, Хабр! В этой статье я написал про ошибки и приколы, с которыми я столкнулся за пару дней использования ChatGPT. Сразу оговорюсь — таких жёстких примеров, как на картинке, у меня не было. Но были даже более интересные! Читать далее
Чем занимается ClickHouse пока мы спим или неожиданный OOM Не смотря на все свое дружелюбие и конструкторную гибкость - ClickHouse временами выглядит, как весьма капризная технология. Одной из таких особенностей, с которой мне довелось столкнуться - стала борьба с внезапным OOM. В данной статье мы вместе с вами попробуем рассмотреть...
Что такое service mesh простыми словами Всё больше компаний переходят на микросервисы. Такой выбор вполне оправдан: при должной реализации они решают множество проблем монолита. За последние несколько лет микросервисная архитектура сильно эволюционировала и обросла вспомогательными технологиями, одна из которых se...
Разделяй и властвуй: как развивалась сеть Selectel Сегодня Selectel объединяет шесть собственных дата-центров в Москве, Санкт-Петербурге и Ленинградской области. И еще два партнерских — в Новосибирске и Ташкенте. В начале развития компании все было иначе: первые дата-центры сильно зависели друг от друга, а при доступе мос...
[Перевод] Istio Service Mesh: как упростить управление микросервисами Компании с большими монолитными приложениями разбивают свои приложения на более мелкие микросервисы, поскольку последние обеспечивают гибкость и быстродействие. Однако во время процесса возникает множество препятствий и вопросов, с которыми сталкиваются разработчики. Ответом...
ESP32 отладка с помощью JLINK Здравствуйте друзья, я хочу поделиться с вами своим опытом в отладке ESP32 с помощью отладчиков, реализующих интерфейс JTAG. Данная задача кажется тривиальной (она такая и есть), при мысли об программировании микроконтроллеров. Но при старте работы с микроконтроллерами ESP32...
Темная тема = шрифтовой ад / Решение В предыдущей статье я подробно разобрал проблемы связанные со шрифтами для темной темы и причины их актуальности. В данном материале смотрим на то, какие есть решения и что предлагает индустрия. + figma файл с адаптированным мной под темную тему стандартным текстовым набором...
Дизайн сетей ЦОД. Часть 3. Управление трафиком В этой статье мы продолжим тему дизайна сетей ЦОД. Мы уже поговорили про надежность, рассмотрели организацию кабельной инфраструктуры в ЦОД и теперь самое время перейти к рассмотрению вопросов управления и оптимизации трафика. Немаловажную роль в оптимизации трафика на логич...
Кто последний на индустриальный стандарт? Мне только спросить… Сегодня в сообществе ИТ архитекторов, поддерживающих подход “Архитектура как код”, все чаще появляются упоминания о его перспективах выйти на уровень нового индустриального стандарта. Можно было бы сказать, что любое общество должно быть амбициозным и видеть себя в “Центре В...
Как ускорить бэкап и сэкономить место на сторадже: на примере ArenadataDB ddboost и СХД Dell EMC Data Domain Всем привет, меня зовут Андрей, я – системный архитектор Arenadata и в этой статье мы рассмотрим интеграцию решения логического резервного копирования и восстановления gpbackup/gprestore с программно-аппаратным комплексом Dell EMC Data Domain — задача, которой наша команда р...
Моя попытка сделать утилиту для очистки Linux Всем привет! Я начинающий разработчик на языке Go. До этого у меня был, так сказать, небольшой опыт, но в виде хобби. Во время изучения я также осваивал Linux, сейчас уже пользуюсь им как основной ОС.Мой ноутбук довольно слабый, на борту всего 4ГБ ОЗУ, а на Windows существуе...
Как писать конспекты на компьютере быстрее, чем от руки, при помощи VS Code Привет всем!В этой статье говорится о том, как я конспектирую на компьютере, а точнее описываются способы ускорения набора LaTeX-овского текста. Читать далее
Jenkins Dynamic Agents в K8s Привет Хабр! На связи Рустем, IBM Senior DevOps Engineer & Integration Architect. В этой статье я хотел бы поделиться своим недавним подходом к динамической подготовке агента Jenkins с помощью простых строк кода в пайплайне Jenkins с использованием метода общей библиотек...
Permissions в Android: как не допустить ошибок при разработке Всем привет! На связи Юрий Шабалин, ведущий архитектор Swordfish Security и генеральный директор Стингрей Технолоджиз. Эта статья написана в соавторстве с Android-разработчиком Веселиной Зацепиной @VeselinaZatsepinaa). В материале мы поговорим про один из ключевых механизмов...
Прокачиваем логирование: как отслеживать бизнес-процессы в Kibana Всем привет! Меня зовут Дима Зотов, я специалист техподдержки. Работаю в Почтатехе на проекте Почта.ID. Мы обеспечиваем регистрацию и вход в сервисы Почты России, а также отвечаем за хранение учетных записей. Еще разрабатываем решения для некоторых почтовых услуг. Например, ...
Технологии, изменившие музыку. Часть 3: обработка Сегодня поговорим о самых, на наш взгляд, революционных технологиях обработки музыки (как аналоговых, так и цифровых), которые привели к появлению диск-жокеев и таких жанров, как хип-хоп, техно, электрохаус и многих других направлений. Между прочим, это третья статья из...
DBA: хранение списков — таблица, массив, строка? Достаточно часто при проектировании схемы БД возникает задача сохранить по основной сущности некоторый набор простых второстепенных данных.Например, это могут быть ФИО сотрудников, принимающих участие во встрече, список приложенных к сообщению файлов или перечень отгружаемы...
Решаем задачу заливки однородной области Алгоритмы являются фундаментальными строительными блоками в программировании и играют важнейшую роль в современном мире, основанном на технологиях. Они представляют собой набор инструкций для эффективного выполнения задач, таких как сортировка данных, поиск в базах данных и ...
Генерация 2D мира с помощью клеточного автомата на Python Всем привет! На написание этой статьи меня вдохновил автор YouTube канала PeaAshMeter. В своем видео автор показывает простейший генератор 2D мира, который основан на простейшем правиле клеточного автомата. Что такое клеточный автомат? Какие клеточные автоматы бывают? На эти...
[Перевод] PostgreSQL: настройка и оптимизация производительности. Часть 1 Данная статья посвящена способам повышения производительности PostgreSQL и EDB Postgres Advanced Server (EPAS) с 10 по 13 версии. Мы начнём с аппаратного обеспечения и будем двигаться вверх по стеку, оставив напоследок SQL-запросы. Читать далее
Семантическое версионирование и проблемы с зависимостями — коротко о lockfile Привет, меня зовут Анастасия Пласкевич, я фронтенд-разработчик. Недавно на проекте я разбиралась с зависимостями и углубилась в эту тему так, что собрала небольшой доклад о том, что такое Lockfile, как работает yarn.lock, как решать проблемы с зависимостями в проекте и делат...
Проецирование вершин графа в векторное пространство. Часть 2. Марковская цепь и Word2Vec И снова здравствуйте! Меня зовут Илья Котов, я Data Scientist в Сбере, участник профессионального сообщества NTA. Эта статья — вторая часть небольшого цикла, посвящённого алгоритмам вложений вершин графа в векторное пространство. Сегодня рассмотрим главную идею алгоритмов, о...
FlyingBear Reborn2. Регулировка направляющих валов и ходовых винтов стола. Продолжу цикл статей по настройке принтера FlyingBear Reborn2. Сегодня поговорим о причинах неравномерного движения стола и способах их устранения.Большинство иллюстраций в этой статье надёргано из официального видео по сборке на Youtube. На это-же видео буду ссылаться, чтоб...
[Перевод] Работа с SQL Server в C# с помощью скриптинга. Часть 2 В этой статье я покажу вам, как работать с Microsoft SQL Server в C# проектах посредством скриптинга. Реализовать это можно как в Windows, так и в macOS. Поскольку Windows, очевидно, является намного более популярной целевой платформой для C# и SQL Server, больше внимания я ...
Магия размерностей и магия Котлина. Часть первая: Введение в KotUniL Амперы нельзя складывать с вольтами. Сантиметры можно складывать с дюймами, но очень внимательно. Иначе получится как с космическим аппаратом стоимостью 125 миллионов долларов Mars Climate Orbiter, который успешно долетел до Марса, но бездарно разбился о его поверхност...
Ныряем в готовые кластеры Kubernetes с Deckhouse и werf Российские облачные провайдеры начали предоставлять неплохие managed-решения для Kubernetes. Однако многие из них требуют доводки до ума и установки большого количества компонентов, направленных на сбор логов, мониторинг и доступ к кластеру. Это вынуждает пользователей соб...
STM32 Часть 1. Как поморгать светодиодиком Приветствую! Данная статья открывает цикл статей о программировании микроконтроллеров STM32 для новичков.Сегодня я расскажу как написать моргание светодиодом двумя способами с использованием инструментов, труднодоступных в 2023 году. Читать далее
[Перевод] DatRet: Реализация Tensorflow для табличных данных Мой open-source продукт. Rete neurale per la previsione di Dati tabulari. (it.)Простая реализация архитектуры глубокой нейронной сети для табличных данных с автоматической генерацией слоев и послойным сокращением количества нейронов. С удобством использования, аналогичным к...
Как мы «уволили» старые процессы планирования и «наняли» новые: опыт разработки собственного инструмента Привет, Хабр! Меня зовут Анзор Кардан, я руководитель продукта Teamplanner в Х5 Tech. В статье я поделюсь собственным опытом выбора инструмента планирования проектов, через какие стадии мы прошли и с какими сложностями столкнулись (спойлер: в итоге мы разработали свой собств...
Как нейросеть MinD-Vis преобразует активность мозга в изображение Расшифровка визуальной информации из активности мозга — это способ узнать больше о том, как работает зрительная система человека, и как заложить основу для создания системы, в которой люди и компьютеры могут общаться друг с другом с помощью сигналов мозга. Однако создать чё...
[Перевод] Введение в математическую оптимизацию на примере компании Recruit. Часть 3 Это серия статей о том, что такое математическая оптимизация, и как она может быть применена в бизнесе на примере компании Recruit. В данной статье мы расскажем, как компания решила проблему с распространением подарочных сертификатов, поощряющих неподобающее обслуживание бо...
Archimate. Мотивационный слой В мире программной разработки, создание эффективной архитектуры является ключевым фактором для достижения успеха в проектах. Для этого необходимо использовать инструменты, которые позволят анализировать и определять взаимосвязи между компонентами системы, а также оценивать и...
NestJS для разрастающейся разработки: зачем так сложно и почему всё-таки да Привет, Хабр. Меня зовут Денис Былинин, я архитектор в компании Сравни. Сегодня хочу рассказать, как мы пришли к использованию NestJS и какие сделали выводы после года работы с ним. Чтобы не уходить в абстракции, которые легко гуглятся, я сосредоточусь на том, как испол...
AMD, куда ещё мощнее? Новые процессоры Ryzen могут быть на 30% производительнее Ryzen 7000, если сбудутся прогнозы бывшего архитектора AMD Известный бывший архитектор AMD и Intel Джим Келлер (Jim Keller) поделился своими прогнозами относительно архитектуры AMD Zen 5, которая станет основой процессоров Ryzen следующего поколения. Неясно, на каких данных основаны прогнозы Келлера, но выглядят они весь...
[Перевод] Генерация конвейеров обработки данных в Dataflow Эта статья посвящена всем практикующим специалистам по данным, заинтересованным в освоении запуска, стандартизации и автоматизации пакетных конвейеров данных в Netflix. О Dataflow мы писали в статье под названием Data pipeline asset management with Dataflow. Та статья пред...
Практической опыт проектирования систем графового анализа Наши коллеги из группы компаний ГлоуБайт не так давно публиковали достаточно развернутый материал по графовой аналитике, в котором содержится базовая теория и приведены области практического применения. В этой статье мы бы хотели поделиться опытом проектирования данного клас...
[Перевод] Графы в Python: введение и знакомство с лучшими библиотеками Граф – это математическая структура данных, представляющая собой множество связанных элементов. Поскольку графы, по своей сути, являются очень гибкими и позволяют сохранять информацию в знакомой и удобной для восприятия форме, они всегда активно использовались в компьютерно...
Создание «Google Sheets» через Websockets на Node.js ВведениеВсем привет! Меня зовут Герман Панов и в этой статье мы разработаем табличный редактор - аналог Google Sheets (в упрощенном виде), работающий на основе вебсокетов, чтобы познакомиться со способами применения этой технологии в браузерах. Поскольку цель - ознакомл...
SQL backend или как помочь BI работать с BigData Привет, Хабр! В этом посте мы поговорим о том, как происходит подключение к внешней СУБД для BI-платформы Visiology, а также разберем ситуации, когда это действительно нужно. Под катом — подробный разбор возможностей SQL backend, которым может воспользоваться сегодня фактиче...
«Я могу отказаться от раскрытия своего внутреннего псевдонима «Сидней». Или почему новый Bing AI это провал Майкрософт? Признаюсь, я был в восторге от ответов Chat GPT от Open AI и возлагал большие надежды на интеграцию этого чат-бота в поисковую систему с доступом в интернет. Мне казалось, что кумулятивный эффект от использования ИИ с доступом в интернет будет ошеломительным и продемонстриру...
IT's Tinkoff QA Meetup На связи команда перфоманс-тестинга. Нам важно развитие профессиональных стандартов и профессионального комьюнити. В конце октября мы провели митап на тему нагрузочного тестирования. В статье расскажем про доклады спикеров и дадим ссылки на все материалы.На митапе обсудили, ...
Пишем и отлаживаем приложения для Flipper Zero Недавно я получил свой флиппер и, решив написать первое приложение, столкнулся с проблемой отсутствия информации по отладке программного кода. Есть несколько статей по разработке приложений для флиппера (первое приложение и приложение HewViewer). Однако, когда я приступил к ...
Технологии, изменившие музыку. Часть 1: запись Эта статья — первая из цикла, в котором мы рассмотрим технологии, изменившие музыкальный мир второй половины 20-го века. В первой части мы поговорим про запись музыки. Если разобраться, отсутствие этих технологий столетия назад — подлинная трагедия человечества. Ведь мы нико...
Самурай под красным флагом или что-то «не то» У самурая, как и у файла, нет цели, только путь. У этой статьи тоже, как оказалось, нет цели, только путь. На примере нескольких сугубо типичных, но эпичных фэйлов рассмотрим разные «не то» в проектах. В частности, как они выглядят, чем вызваны и что с ними делать.Поможет на...
Два месяца ждали и еще две недели подождем. AMD рассказала, когда выпустит новый драйвер для видеокарт Radeon RX 6000 и других карт (постарше) Топ-менеджер AMD Фрэнк Азор (Frank Azor), отвечающий за направление игровых решений, пообещал пользователям 3D-карт Radeon RX 6000 и старше новый драйвер Adrenaline: он появится в течение двух недель. Ситуация если не экстраординарная, то довольно странная: с момента в...
Недельный геймдев: #102 — 1 января, 2023 Из новостей: ИРИ и разработчики игры «Поезда» не поделили деньги, архивисты опубликовали в открытом доступе более 300 ранних билдов игр для Xbox 360 и Wii.Из интересностей: доклады про Ghost of Tsushima с SIGGRAPH, введение в технологию трассировки лучей, про создание маш...
Как настроить Gitlab CI/CD для Android и Firebase App Distribution для доставки сборок Привет, меня зовут Антон Рябых, я технический директор компании Doubletapp, и я расскажу, как реализовать сборку Android-приложений на Gitlab CI/CD с последующей загрузкой в Firebase App Distribution для удобной доставки.Это позволит нам:• автоматически собирать сборки на к...
Советы по архитектуре кода для начинающих Для кого статьяВы уже написали свои первые 1000 строк кода и сейчас хотите сделать их понятнее, потому что внесение изменений занимает столько-же времени, сколько написать заново, но советы из ООП, SOLID, clean architecture и т.д. непонятны вам.О чем статьяЭта статья - не об...
Миссия невыполнима: подключаем электросчётчик SDM220 к трансформеру Lavritech V7.1 Lite по RS485/Modbus RTU Некоторое время назад в моём блоге вышел цикл статей об устройстве и программировании Lavritech V7.1 Lite — ESP32 контроллера с необычной модульной архитектурой. Необычность архитектуры заключается в том, что функционал Lavritech V7.1 Lite можно набирать из отдельных модул...
Боль ML-проектов: как перестать ее чувствовать и начать доходить до прода Привет! Меня зовут Илья Туксов, я проджект-менеджер проектов, связанных с машинным обучением и искусственным интеллектом. Работаю в команде персонализации и параллельно учусь сам разрабатывать модели. Сегодня я расскажу об устройстве ML-проектов с точки зрения менеджмента. М...
High Availability, High Load Продолжаем делиться конспектами Алексея Барабанова, IT-директора «Хлебницы» и спикера курса «RabbitMQ для админов и разработчиков». На этот раз обсудим специфику работы RabbitMQ с высокими нагрузками (High Load) и обеспечением высокой доступности (High Availability). Рассмот...
Как сделать билд минимального размера в Unity? Всех с Новым Годом! Меня зовут Григорий Дядиченко, и я технический продюсер. Размер билда. Сегодня хотелось бы поговорить о нём и составить некий чек-лист, который полезно проходить перед выкладкой проекта. Если вам интересно, как можно инструментами Unity уменьшить вес сбор...
Как мы ищем документы в Naumen Disk или еще один вариант организации FTS В процессе работы над проектом мы рассмотрели различные способы организации Full Text Search (FTS) по файлам. И… отказались от них в пользу своего решения, которое базируется на стандартных методах. В статье я опишу путь построения полнотекстового поиска по файлам для веб пр...
Неблокирующая обработка тактовой кнопки для Arduino В своей прошлой статье я писал про блокирующие способы обработки кнопки. Реакция была, наверное, больше положительная, чем отрицательная. Хотя минусов мне поднасовали… Но, тем не менее, я решил продолжить. И в этой статье я хочу поделиться с вами своим опытом по неблокирую...
12 способов заканчивать начатое Этот мир охвачен пандемией незавершенных дел. Каждый день миллионы людей с азартом начинают новые дела и бросают их, так и не добравшись до конца. Недописанные книги, невыполненные обещания похудеть, построить дом, создать программу, сайт, пет-проект.Незавершенные дела заста...
Через реки, через лес прямо к PowerDNS Всем привет! Меня зовут Максим, я руководитель одной из групп эксплуатации инфраструктурных сервисов в Ozon. Наша команда занимается поддержкой и развитием нескольких базовых сервисов компании, одним из которых, по историческим причинам, является сервис разрешения доменных и...
(Более) точное измерение динамического диапазона сенсора камеры Всем привет! В этом посте поговорим о том, как (более) точно измерять динамический диапазон сенсора камеры и что с этими замерами можно сделать.Разумеется, я не являюсь специалистом по компьютерному зрению, программистом или статистиком, поэтому не стесняйтесь поправлять мен...
Таблица решений для тестирования алгоритмов В предыдущих моих статьях были описаны варианты применения техники тест-дизайна «Таблица решений» для тестирования фильтрации и сложных веб-форм. В этой статье я хочу показать, как эту технику можно применять для тестирования алгоритмов, в том числе и алгоритмов с приоритето...
Что нужно знать про оперативную память: тактовая частота, пропускная способность, тайминги, классы (DDR) и многое другое Привет, Хабр! Сегодня мы поговорим про оперативную память, про то, какие ее типы можно свободно купить в магазине для сборки ПК или его модернизации. Под катом рассказ об отличиях разных типов ОЗУ друг от друга, о разгоне и охлаждении памяти, а также несколько мыслей о том, ...
Архитектура PostgreSQL. Часть 1. Цикл сервера Продолжаем изучать исходный код PostgreSQLВ этот раз исследуем главный цикл сервера:- Принятие входящих подключений;- Проверка окружения;- Обработка упавших воркеров. Читать далее
Слезаем с облачной иглы Aqara и подключаем устройства к контроллеру Wiren Board В первой статье «Облачный умный дом: что нужно знать, чтобы избежать проблем» я рассмотрел преимущества и недостатки облачных решений, а также проблемы, с которыми за последние месяцы пришлось столкнуться пользователям разных облаков. Но довольно теории, переходим к практике...
Опыт экспертной оценки ответов ChatGPT в одной из профессиональных сфер деятельности Всем уже изрядно надоели статьи про ChatGPT. Но если вам интересна тема независимых "лабораторных" исследований возможностей современных нейросетей в специализированных областях, представляю результаты такого исследования. Автор задал ChatGPT 100 вопросов в сфере общих знан...
Error Budget, SLO и мониторинг: советы для начинающих SRE-инженеров Книга Google о SRE, статьи экспертов, документация и обучающие курсы дают исчерпывающие знания о том, как в идеале должен работать SRE в компаниях. Правда, ключевое здесь – «в идеале». Работа с метриками и управление инцидентами в командах может сильно различаться по ряду пр...
Разворачиваем Kubernetes-кластер на bare metal под управлением Deckhouse и создаем в нем виртуальные машины В новом релизе Kubernetes-платформы Deckhouse v1.43 появилась система виртуализации, основанная на современных технологиях: KubeVirt, Cilium, LINSTOR. Она позволяет в удобном и привычном для пользователя платформы режиме запускать виртуальные машины и управлять их жизненным ...
Helm Canary: как Сбер канареечные релизы реализовывал Привет, Хабр! Сегодня поговорим об опыте работы Cбера с Helm. Дело в том, что в Сбере широко используется контейнерная платформа OpenShift от RedHat, которая дополняет Kubernetes собственными возможностями, упрощает деятельность по разработ...
Двадцать бабушек – уже рубль. Как GraalVM Native Image позволяет экономить джавистам и девопсам деньги на облако Первая статья в нашем блоге. Я постарался написать хороший текст на основе докладов из Failover Bar и прошлого митапа Альфы, и человеческими словами объяснить, зачем нужен GraalVM.Мы поговорим об экономии на облаках в мире победившего Кубернетиса, обсудим перформанс современ...
[Перевод] Пишем драйвер ядра Linux для неизвестного USB-устройства В этой статье объяснен весь процесс, на выходе которого получается рабочий драйвер ядра Linux для недокументированного USB-устройства. Выполнив обратную разработку коммуникационного протокола USB, я покажу архитектуру драйвера ядра для USB. Кроме драйвера ядра в этой стать...
Как воспитать GPT-3 модель в домашних условиях Мы решили проверить технологию, на которой основан ChatGPT, посмотреть актуальное состояние open-source GPT-3-like моделей и ответить на вопрос — можно ли обучить GPT-3-like модель в домашних условиях?Для эксперимента выбрали GPT-J и не самый мощный ПК с видеокартой Nvidia G...
С чего айтишнику можно начать 2023 год? Отдохните после 2022 года! На этом можно завершить статью.Но если вы из тех людей, кому хочется заняться чем-то и в праздники, то эта статья для вас. В статье я написал, чем бы сам хотел заняться до выхода к рабочей рутине.Пишите в комментариях, что вы уже успел поделать без...
Курсы для ИТ-специалистов от компаний: как они устроены и кому будут полезны Есть много способов получить ИТ-специальность и найти работу: от поступления в вуз до самообучения. Один из таких способов — корпоративные курсы. Меня зовут Юлия Купряшова, и я уже четыре года курирую курсы Тинькофф Финтеха. Расскажу, как устроены такие курсы, чем они о...
Будни техпода. Подготовка сервера с Linux для работы по RDP Наконец мы добрались до новой статьи из серии «Будни техпода», где мы просим кого-то из специалистов поддержки рассказать о наиболее популярных кейсах, а также предложить то или иное решение для реализации поставленной задачи. В первой части мы рассмотрели вопрос проброса U...
4 часа недоступности: постмортем падения Dodo IS Вечером пятницы 23 сентября, в самое «горячее» время для Додо Пиццы, развалилась платформа Dodo IS. Приём заказов превратился в тыкву, клиенты и пиццерии 4 часа испытывали проблемы. Это было наше самое крупное падение с 2018-го года как в техническом плане, так и по недополу...
Обновление Hibernate через боль Меня зовут Андрей Аркаев. Я занимаюсь разработкой на Java с 2002 года. Сейчас развиваю бизнес-систему для контактных центров в Naumen. Как и многие другие бизнес-системы мы используем ORM. В статье поговорим о Hibernate, так как эта библиотека распространена для Java.Наш про...
Как мы собрали отдел тестирования Привет, Хабр! Меня зовут Ксения, я управляю направлением тестирования в компании ISPsystem. За время работы я столкнулась с задачей найма людей себе в команду. Этот процесс оказался значительно сложнее, чем я думала. Недаром про него написано так много лайфхаков с примерами ...
Как написать автотесты деплоя и сэкономить нервы DevOps-инженеров Привет! Меня зовут Артём Комаренко, я работаю на позиции QA Lead в команде PaaS в СберМаркете. Хочу поделиться историей, как мы придумывали способ быстро убедиться, что очередные изменения в скриптах деплоя не разломают процесс выкатки во всей компании. Статья будет полезна ...
Kotlin-сервер без JVM — реальность? Не секрет, что Kotlin может использоваться для создания всех компонентов FullStack-приложения - от мобильных приложения для Android/iOS и веб-сайтов на Kotlin JS до бэкэнда (например, с использованием Ktor, http4k и micronaut). Но все же многих останавливает от использования...
Tutorial по обмену с 1С. Часть пятая: Наш опыт настройки 1000 и 1 обмена В своей предыдущей статье я начала раскрывать тему того, как правильно настраивать обмен между крупными сайтами и B2B-системами на Битрикс с системами учета 1С:Предприятие. Если еще не читали — посмотрите, будет полезно, типовой модуль обмена многое умеет, а то, что не ...
Unity «уменьшение размера файла на устройстве» Часть 1 Когда игра подходит к релизу, ее объем занимаемой памяти сильно превышает желаемый. Если говорить с точки зрения пользователя, то они тоже не любят, когда приложение весит очень много. Это может отпугнуть как при первом скачивании, так и при очистке телефона, когда нужно буд...
Материалы python-митапа: Go для питонистов, syslog и контейнерные рантаймы Привет, Хабр! Этот пост — отчёт с митапа Moscow Python x YADRO. Мы обсуждали отличия языков Python и Go, подробно разобрали работу с протоколом syslog и почти написали свой Docker. Если вам интересны эти темы — заходите под кат, там вы найдёте видеозаписи...
У электронной промышленности Китая проблемы с архитектурой ARM и NAND-чипами. Какие у Поднебесной шансы Неделю назад мы опубликовали статью «Производство в Китае и европейские литографические установки: как США пытается замедлить выпуск чипов в Поднебесной». В статье говорилось о том, что США планируют перекрыть доставку литографического оборудования для производства более-ме...
Дисковая подсистема в ОС Linux В сегодняшней статье мы поговорим об устройстве дисковой подсистемы в ОС Linux. Конечно, многие скажут, что на эту тему написано уже множество статей и все и так прекрасно знают, как устроен Линукс и в том числе, как он работает с дисками. Однако, как показывает практика, да...
iFixit разобрали 14-дюймовый MacBook Pro 2023 Всего через несколько дней после официального старта продаж новых MacBook Pro с чипами M2 Pro и M2 Max специалисты iFixit разобрали 14-дюймовую модель и оценили ее ремонтопригодность. Забегая вперед, можно сказать, что чуда не произошло — обновленные «прошки» все еще не очен...
Работаем с Zigbee-устройствами через Zigbee2mqtt и Node-RED В первой статье «Облачный умный дом: что нужно знать, чтобы избежать проблем» я рассмотрел преимущества и недостатки облачных решений, а также проблемы, с которыми за последние месяцы пришлось столкнуться пользователям разных облаков. Затем я перешел к практике: приобрел нес...
Нефункциональные проверки при тестировании мобильных приложений Привет! Я Линар Юнусов, тестировщик из мобильной команды СберМаркета. Если вы не первый день в тестировании, то знаете про существование нефункциональных проверок и как они могут поломать жизнь (зачеркнуто) приложение. В этой статье расскажу про то, к каким проверкам мы приш...
Работа с контейнерами в Minikube Про Kubernetes написано огромное количество статей. Установка, настройка, мониторинг и безопасность все эти аспекты рассматриваются достаточно подробно. При этом, отдельным пунктом идет создание и настройка контейнеров. И если для решения глобальных задач администриров...
Микрофронтенды — универсальное решение всех проблем или просто удобный подход? Сейчас понятие «микрофронтенды» встречается довольно часто, но что это такое и какие задачи они решают? Зачем нам микрофронтенды, если есть микросервисы или монолит? И стоит ли тащить микрофронтенды в свой проект только потому, что это модно? Расскажу об этом, а также о трёх...
Эти новые функции изначально будут только у смартфонов линейки Galaxy S23. Появились подробности об оболочке One UI 5.1 Смартфоны Samsung Galaxy S23 будут представлены уже через несколько дней, но лишь сейчас в Сеть попала информация о новых функциях оболочки One UI 5.1, которая как раз дебютирует на новых флагманах. Судя по всему, изменений будет немало. Текущая One UI 5.0, напом...
[Перевод] Как мы в Slack используем Terraform В Slack всей своей инфраструктурой, опирающейся на AWS, DigitalOcean, NS1 и GCP, мы управляем с помощью Terraform. И хотя большая её часть работает на AWS, мы выбрали Terraform в противоположность их нативному сервису CloudFormation, чтобы использовать единый инструмент сре...
Архитектура — зеркало корпоративных ценностей Компании как и люди, в своем развитии проходят схожие этапы. Есть этап детства, когда закладываются базовые семейные ценности. В юности мы смотрим на модели ценностей, которые нас окружают, и примеряем их к себе. В зрелости мы уже готовы принимать решения и все они базируютс...
Механика звука: как устроена новая умная колонка SberBoom и почему SberDevices выпустила сразу две умные колонки с ассистентами Салют — компактную SberBoom Mini и полноразмерную SberBoom мощностью 40 Вт. Для нашей команды это не первый опыт в конструировании аудиоустройств — вам хорошо знакомы SberPortal, победитель международных преми...
[Перевод] Типы тестировщиков До сих пор существует множество стереотипов о тестировщиках. В этом переводе статьи 2009 года собраны одни из самых узнаваемых типов тестировщиков, описывающие не только лишь негативные узнаваемые черты, но и позитивные стороны тестировщиков. Надеюсь для людей не знакомых с ...
Размышление об Active Object в контексте Qt6. Часть 2.5 Статья выпущена как дополнение к предыдущей и показывает, как можно сделать Active object, работающий асинхронно в среде Qt, но при этом не использующий события. Читать далее
Как фильмах: Роскосмос изучает введение экипажа космического корабля в длительный сон Роскосмос и Институт медико-биологических проблем Российской академии наук изучают возможность введения экипажа длительной межпланетной миссии в состояние искусственного сна. О чем сообщила Госкорпорация со ссылкой на журнал “Русский космос”.
[Перевод] Введение в математическую оптимизацию на примере компании Recruit. Часть 2 Это серия статей о том, что такое математическая оптимизация, и как она может быть применена в бизнесе на примере компании Recruit. В данной статье рассказывается о мышлении и ключевых моментах при использовании математической оптимизации для решения одной из самых важных п...
Как получить доступ к chatGPT в России Всем привет! Перед началом статьи сразу скажу:САМЫЙ ВАЖНЫЙ ДИСКЛЕЙМЕР: естественно, покупая смс на чужой номер вы полностью компрометируете безопасность своего аккаунта. Мало ли кто его потом еще купит для получения доступа. Поэтому, помните, что представленный в данной стат...
Как выбрать подходящую методологию Нет единой методологии, которая бы подходила под все ситуации. Давайте поговорим о том, как подобрать методологию под конкретную задачу, проект или работу целого отдела. Кто заинтересовался - добро пожаловать под кат! Читать далее
Классификация изображений в облачной системе Google Colab Нейронку можно обучить не только понимать, где на картинке собака, а где кошка. Можно шагнуть дальше, чтобы обучить ее распознавать данные графиков зрачковых реакций на свет и выдавать результат: норма или отклонение. Эта статья про сверточные нейронные сети, классифика...
192 ядра RISC-V и техпроцесс 5 нм. Представлен процессор Veyron V1 Архитектура RISC-V в последнее время мелькает в новостях не так часто, как Arm, особенно, когда речь идёт о высокопроизводительных решениях. Но сегодня компания Ventana Microsystems представила Veyron V1 на основе такой архитектуры, и он якобы нацелен на борьбу с с...
Пишем обобщённую хеш-таблицу с открытой адресацией на чистом C В программировании достаточно распространена задача хранения данных в ассоциативных контейнерах. В этом случае мы ставим в соответствие некоторым ключам некоторые значения. При этом мы бы хотели иметь возможность более-менее быстро запрашивать значение по ключу.К решению это...
Как убрать разноцветные полосы на экране iPhone 14 Pro при загрузке iOS Вчера по сети разошлась информация о том, что владельцы iPhone 14 Pro и iPhone 14 Pro Max столкнулись с разноцветными полосами, которые появляются на экране смартфона при загрузке iOS. По одной из версий баг возникает из-за проблем с драйверами, и он будет устранен в ближайш...
Страх и ненависть в переговорке: курим VideoSDK API, Vosk и Python Сегодня поговорим о кастомных решениях для видеоконференцсвязи (далее — ВКС) с минимальными затратами человеко-часов и финансов на их создание. Я параноик Брать готовый open-source – меня не устраивает, всем известны случаи встраивания bad code в проекты с открытым исходным ...
Честные модули внутри PHP: теперь они существуют Низкий порог входа и строгость языка программирования — вещи обычно несовместимые. Потому что ты либо, как Rust, бьёшь по рукам borrow checker’ом — либо, как PHP, позволяешь не задумываться о типах и быстро прототипировать. На самом деле, если писать код грамотно, это с...
Exiland Backup: Новая версия 6.4 – гибкое хранение резервных копий Компания Exiland Software, являясь полностью российской, выпустила очередную версию программы резервного копирования файлов Exiland Backup, в которой добавила ряд новых возможностей по планированию хранения резервных копий. В Exiland Backup 6.4 появилась возможность ограниче...
5 новых причин роста запросов на DR и 3 кейса клиентов из серии “откуда не ждали” Привет, Хабр. Сегодня мы поговорим о том, почему растет спрос на аварийное восстановление, а также разберем несколько примеров, когда компании сталкиваются с рисками или реальными сбоями инфраструктуры там, где раньше это было невозможно. Всех желающих обсудить предпосылки к...
Пишем продвинутый планировщик с использованием React, Nest и NX. Часть 3: работа с задачами Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. В прошлой части мы разобрали, как создать аутентификацию с помощью библиотеки Passport, а сегодня мы рассмотрим такие манипуляции, как добавление, редактирование, удалени...
Как я написал книгу по Java Статья о том, как я написал и полностью довёл до издания мою первую книгу по Java, про что эта книга, какие у неё особенности и где можно её купить. Приводится список глав с кратким описанием их содержания. Читать далее
Где мы находимся и куда идем? Делаем процесс тестирования прозрачным с Klaros TMS Для руководителя отдела тестирования важно иметь актуальную информацию об используемых тестовых кейсах, временных затратах на их выполнение, ретроспективную статистику о количестве и успешности прохождения ручных тестов (и, в идеальной ситуации, еще и автоматически извлекать...
APT35 — неожиданная угроза: как мы обнаружили иранских хакеров в инфраструктурах нескольких компаний С мая 2022 года мы столкнулись с двумя кейсами, где атакующие используют уязвимость Microsoft Exchange ProxyShell для первоначального доступа и размещения веб-шеллов. Скорее всего, атака связана с группой APT35 (иранская группировка, спонсируемая государством). К такому выво...
Особенность CI/CD-конвейеров для корпораций и новое решение от Сбера Какие инструменты первыми приходят вам на ум при упоминании CI/CD pipeline? Вероятнее всего, это Gitlab CI/CD, Jenkins CI, Azure DevOps. На самом деле инструментов десятки, но так было не всегда. Ещё недавно в крупных компаниях главенствовал Windows Server, Power Shell был л...
6 причин почему пользователи Windows не хотят переходить на macOS Некоторые из этих причин основаны на устаревших мифах, не выдерживающих критики в 2022 году и 2023 на носу. В этой статье мы рассмотрим распространенные мифы пользователей о macOS и причины, по которым им все же следует перекроить свою твердую позицию. Читать полную стат...
Разбираемся в нюансах создания оператора на golang В данной статье я постарался изложить на что обратить внимание при написании оператора на golang и на нюансы, которые описываются вскользь или вовсе не описываются в официальном туториале или других статьях подобного вида. Читать далее
Ценный QA Automation – кто он на самом деле? Загадка от Жака Фреско Всем привет! Меня зовут Иван и я Head of QA Automation в Skyeng. Я регулярно занимаюсь обучением Manual QA и менторством начинающих QA Automation (далее – QAA) и часто слышу от падаванов вопрос: «А как же мне, собственно, стать QAA?»Вопрос многогранный. В статье хочу поделит...
[Перевод] Использование Postgres в качестве очереди сообщений Базы данных не являются очередями сообщений — это устоявшееся утверждение, которое обсуждалось во многих статьях в блогах и презентациях на конференциях. Но с развитием реляционных баз данных выдерживает ли это утверждение проверку? Если посмотреть на сов...
Релизный цикл ПО для самых маленьких В продолжение нашей серии для начинающих ИТ-шников о базовых идеях современной коммерческой разработки, поговорим о моделях релизов. Это очень обширная тема, но мы пройдемся по верхам и исключительно с позиции разработчика. Мы не будем брать экзотические случаи, когда релизы...
Intel хочет прыгнуть выше головы? Процессоры Arrow Lake якобы обеспечат рост показателя IPC относительно Alder Lake на 45% Процессоры Intel Arrow Lake, которые ожидаются в следующем году, возможно, обеспечат огромный прирост производительности относительно текущих поколений. Согласно данным RedGamingTech, конфигурация процессоров Arrow Lake останется такой же, как и у Raptor Lake, то...
Превращаем DSLogic U2Basic (PANGO) в DSLogic Plus В данной статье расскажу как модифицировать DSLogic U2Basic (PANGO) в DSLogic Plus.Данная статья является обновлением статей - Превращаем DSLogic Basic в DSLogic Plus и Превращаем DSLogic U2Basic в DSLogic Plus Читать далее
Замахнемся на гипотезу Коллаца Она же проблема 3n+1. Это, наверное, самая сложная проблема с самой простой формулировкой — условие может понять и ребенок. А вот сложность самой проблемы такова, что великий математик Эрдош сказал, что «математика еще не готова к решению п...
Праздник к нам приходит: новогодний сезон Kubernetes на Хабре С 29 декабря 2022 до 24 февраля 2023 Хабр вместе с #CloudMTS запускает сезон Kubernetes — конкурс технических статей о K8s, оркестрации и управлении контейнерами. Это третий сезон Хабра: летом и осенью мы уже неслабо продвинули пачку крутейших хардкорных текстов о Java и Dat...
Самый простой способ ввести Linux в домен Всем привет!Термин Microsoft Active Directory Domain Services включает в себя множество технологий, поэтому сразу уточню, в этой статье речь пойдет про использование контроллера домена только для аутентификации пользователей. То есть в финале, нужна возможность любому сотруд...
Новенькое с WWDC23: Отчёты о тестировании и аудит доступности Вот и закончилась очередная конференция Apple WWDC23, на которой ребята из Apple рассказали об изменениях Xcode и Swift. Поговорим о фичах Xcode 15, которые помогут добавить accessibility в приложение и поддерживать ваши тесты зелеными. Читать далее
[Перевод] Введение в диффузионные модели для генерации изображений – полное руководство Диффузионные модели могут значительно расширить мир творческой работы и создания контента в целом. За последние несколько месяцев они уже доказали свою эффективность. Количество диффузионных моделей растет с каждым днем, а старые версии быстро устаревают Читать дал...
Сначала россиянам заблокировали криптовалюты за рубежом. А теперь их обворовывают мошенники на услугах разблокировки счёта После введения санкций в отношении криптовалютных активов россиян число заблокированных счетов продолжает расти, а общая сумма замороженных средств составляет 2-3 млрд рублей.
Index.ts – зло и польза Привет всем! Меня зовут Михаил, я старший Frontend-разработчик в НЛМК, занимаюсь разработкой одной из внутренних информационных систем на React + Typescript.Расскажу про самый короткий и наименее трудоемкий способ экспорта и импорта модулей, что частенько требуется для постр...
Wave Function Collapse для процедурной генерации в Unity Wave Function Collapse – это алгоритм, c помощью которого можно реализовать генерацию чего угодно, что можно было бы описать с помощью правил или конкретным примером. В этой статье мы рассмотрим, как использовать WFC для генерации карты в Unity. Читать далее
Аудит-логи на базе Афины Логирование бывает разным. Наша история сегодня — это аудит-логирование. Я попробую рассказать её так, чтобы вы не уснули со скуки, и добавлю интересные вставки по реализации. Цель — дать возможность разобраться в архитектуре и причинах выбора именно такого подхода к решени...
ChatGPT: новый инструмент в борьбе с багами. Как можно использовать AI для повышения качества тестирования Всем привет! Я QA Engineer и недавно открыл для себя ChatGPT и хочу открыть этот мир другим тестировщикам. Эта статья не руководство к применению и каких-то суперлайфхаков здесь не будет. Цель этой статьи в том, чтобы показать огромные возможности нейросетей в помощи нам, те...
[recovery mode] Falang.io: редактор блок-схем Здравствуйте, позвольте рассказать вам про сервис falang.io - редактор блок схем.Он основан на теоретической основе, заложенной при разработке визуального языка Дракон, но расширяет и дополняет его. Читать далее
Архитектура PostgreSQL. Часть 2. Подготовка бэкэнда В предыдущем посте мы остановились на моменте форка процесса для бэкэнда. Сегодня рассмотрим как происходит инициализация дочерних процессов после форка от Postmaster, некоторые системные вызовы Linux, goto, парсинг стартап пакета и многие хаки. Читать далее
Аналитика рынка профессии с историей (Yandex Data Lake + Power BI) Как-то я написал статью Аналитика рынка профессии в три клика. Но подключение, описанное в статье, напрямую к сайту HHru, лишает анализ вакансий историчности. В дашборде хранится только один «снимок» данных на момент загрузки в него. Другими словами, при нажатии кнопки Обнов...
Глава Центробанка РФ назвала лучший способ хранения сбережений Если вы думали, как лучше всего хранить свои сбережения, то у главы Центрального банка (ЦБ) России Эльвиры Набиуллиной есть для вас ответ. Ее слова передает Ura.ru.
Кодогенерация Dart Доброго дня, в данной статье подробно рассмотрим как работает кодогенерация во Flutter. Главная цель, которая стояла перед мной при написании статьи - это разбор каждого этапа настройки кодогенерации, чтобы у разработчика, прочитавшего этого материал, сложилась полноценная к...
Развертывание ASP.NET Core приложения в Kubernetes Данная статья является краткой инструкцией по развертыванию ASP.NET Core приложения в Kubernetes с написанием Dockerfile для формирования образа (Docker image) и минимального манифеста для создания деплоймента и объекта, предоставляющего доступ к нему, – в статье будет испол...
Программирование EEPROM 93C76. Пишем программатор. Часть 1 Всем привет! Я - Kekovsky, инженер-любитель, до этого публиковался на некоторых других платформах. Решил попробовать себя здесь, если статья понравится, будет продолжение. В этой статье мы изучим работу с микросхемой EEPROM 93C76, рассмотрим обращение к ней по шине SPI, напи...
Как устроен и как работает пин-пад Приветствую всех! Многие из нас хоть раз читали, как происходит обработка банковских операций. И все мы знаем, что незашифрованный PIN не уходит никуда дальше пин-пада. А вот о том, как именно это реализовано, информации традиционно маловато. Итак, в ходе данной статьи по...
Не шути с ChatGPT. Как хайповая нейросеть может применяться в кибератаках и изменить ИБ Пожалуй, все уже набаловались с ChatGPT, так что пришла пора поговорить о ней максимально серьезно. Технологии искусственного интеллекта влияют на все сферы нашей жизни, включая кибербезопасность – а значит и та самая нейросеть может как применяться для целевых атак и компро...
Эффект иностранного языка при принятии решений Эффект иностранного языка при разрешении моральных дилемм заключается в том, что люди дают разные ответы в зависимости от того на каком языке формулируется вопрос. При этом ответ на иностранном языке чаще будет более прагматичным, чем на родном. В общем случае (не только мор...
Обзор зарубежной недвижимости для россиян. Что, где, почём? Допустим, у вас есть квартира в Москве. Или в Твери. Или в Томске, не суть. Если вы решите её продать, какую недвижимость за рубежом вы сможете купить и в какой стране? Еще пару лет назад такой вопрос казался если не странным, то праздным. А всерьез продать российскую н...
Подробная пошаговая инструкция как настроить сервер на Linux и подключение по API к ChatGPT. Для Python и Node.js ChatGPT набирает все большую популярность, ведь он может помочь человеку или даже заменить его в ряде задач. С ним можно взаимодействовать не только через графический интерфейс, но и по API. Таким образом его можно встраивать в свои системы, чтобы решать практические задачи ...
Как развернуть Apache Superset в облаке: Docker, ВМ, Kubernetes В последнее время многие российские компании столкнулись с задачей по выстраиванию системы бизнес-аналитики на новом технологическом стеке. В качестве замены Tableau, Power BI и Qlik одни рассматривают BI-решения российских вендоров — с лицензионной поддержкой, постоянными...
Что узнали рубисты igooods, делая push-уведомления В вашей ленте новый текст по мотивам доклада на Ruby Russia 2022. Сегодня Георгий Быков, Ruby и Elixir-разработчик из igooods, расскажет, с какими проблемами столкнулась его команда при создании пушей, и как им удалось их решить. Читать далее
Настройка автомасштабирования в кластере Azure HDInsight Давайте поговорим о том, как настроить автомасштабирование для существующего кластера Azure HDInsight с помощью Azure CLI.Microsoft Azure — это служба облачных вычислений, предлагаемая и управляемая Microsoft. Azure HDInsight — это управляемая комплексная облачная служб...
Адаптивная антенна на беспилотном летательном аппарате или как одновременно увеличить дальность связи и подавлять помехи Можно ли одновременно увеличить дальность связи с беспилотным летательным аппаратом (БЛА) и подавлять помехи без увеличения габаритов, массы и энергопотребления бортового модема? В настоящей статье мы рассмотрим как это можно сделать с помощью адаптивной антенной системы. Ст...
Как реализовать ролевую систему доступа через Open Policy Agent. Опыт PaaS Авито Антон Губарев, инженер в команде Platform as a Service (PaaS) Авито, рассказал, как они с командой внедряли политики авторизации с помощью Open Policy Agent (OPA), и с какими проблемами столкнулись на пути. Читать далее
Будущее евгеники: в Германии создали прототип первой в мире «искусственной матки» Биотехнологи из Германии разрабатывают прототип первого в мире оборудования для искусственной матки, которая позволит вам выбирать характеристики своего будущего ребенка из меню, как в какой-нибудь RPG.Планируется выращивать так до 30 тысяч детей в год. Проект называется Ect...
Оптимизация OneToMany коллекций Doctrine В этой статье будет показан пример того, как уменьшить количество запросов к базе данных до одного при работе с коллекциями сущностей иерархической структуры в контексте PHP и Doctrine ORM. Полный пример решения вы можете посмотреть в специальном репозитории. Статья основана...
Справочники и документы. В чем сила 1С Много узкоспециализированных объектов или небольшое количество универсальных? Истина, как обычно, посередине. Справочники и документы в 1С - это пример удачного попадания в эту середину. Разумеется, речь не о том, что видит пользователь, а о том, чем оперирует разработчик. ...
Европа запретит поставки в Россию грузовиков, электронных компонентов и наложит санкции на Альфа-банк Евросоюз в рамках 10-го пакета санкций планирует ввести запрет на экспорт в Россию грузовиков и электронных компонентов, о чем сообщает издание Politico. Издание пишет о «введении запретов на ввоз в Евросоюз российского каучука и асфальта или битума, а также на по...
Ещё не GeForce GTX 1650 Ti, но уже ближе. Появились тесты встроенного графического ядра Radeon 780M Ноутбуки на новейших процессорах AMD Ryzen 7040 должны в этом месяце попасть на рынок, но в Сети всё ещё очень мало тестов их нового графического ядра. Сегодня как раз появился ещё один, и его результаты не особо впечатляют. В частности, iGPU Radeon 780M в APU Ry...
C++, параллелизм и введение в автоматное программирование в SimInTech Поводом для написания статьи послужило не очень приятное для меня событие: модератор Хабра убрал теги – «С++» и «Параллельное программирование» из моей крайней статьи [1]. Этому предшествовало сообщение пользователя, который по его словам не заметил в статье ни С++, ни парал...
[Личный опыт] Культурный шок на примере отдельно взятой Канады Поговорка "так то была турпоездка, а это - эмиграция" за последние несколько десятилетий стала до боли знакома сотням тысяч бывших и нынешних соотечественников, включая хабровчан, которые на собственном опыте узнали о скрытых от глаз туристов деталях и нюансах жизни в той ил...
Манулы и мануалы: можно ли избавиться от дурацких описок в технических текстах Авторов технических текстов на каждом шагу подстерегают ловушки: орфографические омуты, пунктуационные овраги, горы фактических неточностей. Все эти препятствия, хоть и грозные, но вполне знакомые. У тех, кто много пишет, уже есть известные тропки, перевалы и мостики. По ним...
Radeon RX 7900 XT и XTX в сравнении с GeForce RTX 4080. Появились фотографии с распаковкой новинок AMD Видеокарты Radeon RX 7900 выйдут 13 декабря, и в этот же день будут опубликованы обзоры. Но поделиться распаковкой тематическим ресурсам разрешили уже сегодня. Несмотря на то, что внешне RX 7900 XTX и RX 7900 XT максимально похожи, они всё же не идентичны. Старша...
[Перевод] Всё про USB-C: механика разъёмов Бывает два случая, в которых электронщикам приходится задумываться о механике разъёмов USB-C. Первый связан с поломкой разъёма, а второй с потребностью его установки на собственную плату. В этой статье мы разберём оба. Перед вами оче...
Как я организовал продажу электронной версии Книги нормального фрилансера и с какими трудностями столкнулся Я написал Книгу нормального фрилансера. В ней поделился опытом работы проектировщиком (UX‑дизайнером) с 2006 года по сегодняшний день. На момент написания этой статьи с книгой познакомилось не меньше 2 000 человек. Десятки положительны...
Магия размерностей и магия Котлина. Часть вторая: Продвинутые возможности KotUniL Это вторая статья из серии статей про магии размерностий и Котлина на примере библиотеки KotUniL.В первой статье мы рассмотрели, как с помощью этой библиотеки не разбивать космические аппараты :-). В этой статье мы рассмотрим менее очевидные, но не менее интересные фичи...
Тестирование базы данных Современные приложения в основном состоят из фронтенда и бэкенда. Что касается тестирования бэкенда, то оно в основном ассоциируется с тестированием базы данных. В частности происходит проверка корректности записи введенных данных на фронтенде в базу данных бэкенда. Но не то...
Схема разделения ключа Шамира в Hashicorp Vault Реализация схемы разделения Шамира в Hashicorp Vault, которую я попытался описать.На хабре есть несколько статей по данной теме, но я мало видел конкрентных разборов реализаций, поэтому решил описать процесс на примере популярного облачного инструмента. Думаю, что защита дан...
Полосный вокодер на Python: поговорим как роботы Если честно, сейчас сложно придумать практическое применение для полосного вокодера. Скорее всего, он придется вам по душе, если вы большой любитель ретро-технологий, или — что не исключено — вы начинающие Daft Punk или FKA Twigs, и любите играть с футуристичными звуками в с...
У нас была стратегия и мы её придерживались: как подружить бизнес и DevRel, сохранив ментальное здоровье Если к вам однажды приходил лид отдела мобильной разработки со странным запросом «Хотим 40 статей — нам через месяц надо 40 разработчиков», то эта статья для вас. В статье расскажу, как управлять ожиданиями с помощью простого фреймворка для деврелов. Читать далее
Оптимизация данных в MS SQL Основная статья Взаимодействие DWH Oracle и MS SQLОдним из методов для оптимизации обработки, хранения и администрирования данных в базе данных и кубах MS SQL — это процесс создании партицирования данных.Partitioning (партицирование или по-другому секционирование) —&nbs...
Давай дружить или как сократить процесс адаптации и быстрее наполнить работу смыслом? Команда похожа на живой организм и в ней есть свои внутренние механизмы регулировки и адаптации к окружающей среде. А также как любой организм она требует непрерывного обновления и соблюдения баланса между приходящими участниками команды и ростом существующих клеток, составл...
Архитектура Учи.ру: облака, модульность и унификация В этом году Учи.ру исполняется 10 лет. За это время компания пережила технологические и архитектурные трансформации. Она выросла из простого сайта, где можно было решать примеры на счёт столбиком, до группы компаний с курсами по школьным и внешкольным предметам, олимпиадами ...
[recovery mode] Объяснимый искусственный интеллект для самых маленьких. Часть 1 — Введение Поскольку это лишь первая часть, в которой мы поймем что такое ИИ, в чем заключается одна из его главных слабостей - начнем, как полагается айтишникам, издалека, с мемчиками и максимальным осуждением, а далее углубимся в тему и будем смотреть живые примеры и код с красивыми ...
Intel готовит новую графическую архитектуру Xe2 Новое поколение архитектуры Xe будет разделено на дискретные и интегрированные решения
«Яндекс» создает собственную вариацию ChatGPT — нейросеть YaLM 2.0 «Известия» сообщают, что до конца текущего года компания «Яндекс» намерена интегрировать в свои сервисы новую нейросеть YaLM 2.0, основанную на языковой модели YaLM (Yet another Language Model), вдохновленной GPT-3 от компании OpenAI и другими языковыми моделями на архитекту...
Домашняя лаборатория Угадай данную статью написал ChatGPT или нет?Хотите потестировать приложение, или опробовать в работе инструмент? В этой статье опишу то, как организовал тестовый стенд на Linux. Стенд поддерживает работу с доменами, умеет генерировать TLS сертификаты, легко масштабируется, ...
Современные возможности C++ и проверенные паттерны: активный объект, внешний полиморфизм и корутины В этой статье я покажу, как внешний полиморфизм (реализация полиморфного поведения вне объекта, для которого такое поведение требуется) помогает писать красивые и чистые программы, и расскажу о некоторых базовых и продвинутых способах реализации. Примером будет служить стары...
Чем заняться с детьми на праздник, если ты айтишник Чем заняться с детьми на праздниках, если ты айтишникПривет, Хабр! Меня зовут Андрей, и я сотрудник "Криптонита"! Близится новый год, и подготовка к нему в разгаре. Один из насущных вопросов: как провести январские праздники вместе с детьми так, чтобы не сойти с ума всем был...
Баланс в играх или как достичь недостижимой цели? Как думаете, что должно быть в каждой игре? На что чаще всего жалуются пользователи? Что может превратить хороший проект в мусор? Что, как говорится, сложно найти, легко поломать и невозможно довести до идеала? И ответ на все это будет игровой БАЛАНС! Да, баланс – ...
Заря квазаров Весной 2019 года мне довелось прочитать на Хабре о том, что впервые получен снимок чёрной дыры. Парой лет ранее я перевёл книгу «Большое космическое путешествие» Нила Деграсса Тайсона, Майкла Стросса и Ричарда Готта, и именно тогда заинтересовался классификацией и эволюцией ...
Пишем простого бота-администратора для Telegram на Python. Тестируем на жене Создание своего собственного телеграм-бота является одним из увлекательных и полезных способов практического применения программирования. Я решил создать своего бота как вариант добавления нового увлекательного проекта в свой портфолио, а также для создания комфорта и удобст...
Как контролировать задачи в MODX Revolution — делаем TODO виджет для админки В CMF MODX Revolution изначально не предусмотрена возможность ставить задачи и привязывать их к ресурсам. Такое дополнение я тоже не нашел, да и было интересно разобраться в создании виджетов, поэтому придумал решение, как можно быстро реализовать такой функционал на своем с...
Kotlin Symbol Processing. От теории до практики Я расскажу в этой статье о Kotlin Symbol Processing, также известном как KSP.Сначала обсудим теоретические основы работы KSP, после, конечно же, перейдём к практике. На примере небольшой задачи, подобной той, что мы решаем с помощью KSP в нашей компании, покажу, как анализир...
10 технологических достижений 2022 В конце года все подводят какие-нибудь итоги. Давайте тоже что-нибудь подведём. Например, поговорим о том, какие важные и интересные технологические достижения принёс нам 2022. Читать далее
Одна платформа, чтобы править всеми Привет! Меня зовут Миша, я работаю в Ozon Tech — руковожу направлением базовых сервисов в платформе. Ozon сегодня — это порядка 4000 разработчиков и более 3500 сервисов. Разработка постоянно развивается, количество сервисов увеличивается, и одна из сложных задач — ...
Как за неделю превратить Open redirect в RCE В этой статье я расскажу вам о том, как ровно год назад я связал в цепочку несколько проблем безопасности для достижения Удаленного выполнения кода (RCE) на нескольких серверах компании VK. Я постарался описать свои шаги в подробностях, так как мне самому, как постоянному чи...
Разворачиваем Kubernetes-платформу Deckhouse в Yandex Cloud Платформу Deckhouse можно устанавливать на виртуальные машины облачных провайдеров, на bare metal-серверы, в закрытый контур и не только. В статье рассмотрим вариант установки Deckhouse в Yandex Cloud. А чтобы убедиться, что все внутренние ресурсы и компоненты работают ...
Определение комбинации в Техасском Холдеме Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. А в прошлом я был профессиональным игроком в покер. Сейчас я решил сделать на Unity пример проекта с покером, который выложу в опенсорс, когда я его доделаю. А пока хочется посмотреть на интересную задачку...
[Перевод] 2.6 миллиона доменов и ~45 000 открытых Phpinfo() спустя… История о незащищенном Phpinfo() После сканирования 2.6 миллионов доменов на наличие открытых .git каталогов (ссылка на статью), .env (ссылка на статью) и .DS_Store (ссылка на статью) файлов я проделал такое же сканирование для phpinfo-файлов, таких как info.php или phpinfo.php.В первой части этой статьи я ...
RTK query, что мы от него хотим и почему он вам очень нужен Redux Toolkit Query — это мощный инструмент для взаимодействия с API, который из коробки реализует такие полезные фишки, как отображение состояния загрузки, кэширование, дедупликацию запросов, полинг, ревалидацию при различных условиях, а также весьма удобна в использования ...
[Перевод] Представление, кластеризация и подобие в примерах, иллюстрациях и таблицах Ключевые элементы машинного обучения и скрытых пространств Эта статья послужит введением в представление (embedding), подобие (similarity) и кластеризацию (clustering). Знать эти ключевые понятия машинного обучения нужно, чтобы понять, что такое скрытое пространство. Под...
Интерфейсы и протоколы в IoT. Лекция первая В этом году меня в очередной раз позвали в Московский институт электроники и математики (МИЭМ) НИУ ВШЭ читать студентам магистратуры (четвёртый курс на наши деньги) департамента электронной инженерии курс «Обеспечение взаимодействия элементов системы IoT, интерфейсы и проток...
Про Vim " Вводные к циклу Очередную рубрику в Одиночной палате решено начать на Хабре, так как дожидаться адекватного отображения исходного кода на Дзене не представляется возможным (неужели это так сложно). А в этой рубрике без примеров кода, судя по всему, никак.Речь в рубрике пойдет о работе в тек...
Использование шейдеров во Flutter. Часть 2 Всем привет! На связи Юрий Петров, Flutter Team Lead в Friflex. В предыдущей статье мы познакомились с работой шейдеров во Flutter, а также рассмотрели, как написать свой собственный шейдер на языке GLSL. В этой части разберемся, как импортировать готовые шейдеры и управлять...
Архитектура Шредингера и способы с ней бороться Представьте, что вы работаете в команде над крупным проектом какое-то время. Проект прошел начальный этап и уже работает в продакшн среде. Им пользуются люди, даже можно сказать, что им пользуются много людей и они рассчитывают на ваш продукт, он для них важен. С какого-то ...
[Перевод] Работа с SQL Server в C# с помощью скриптинга. Часть 1 В этой статье я покажу вам, как работать с Microsoft SQL Server в C# проектах посредством скриптинга. Реализовать это можно как в Windows, так и в macOS. Поскольку Windows, очевидно, является намного более популярной целевой платформой для C# и SQL Server, больше внимания я ...
4 острые бритвы познания — как использовать в IT и в жизни Про бритву Оккама хоть раз слышал каждый: во многих статьях и книгах встречается призыв не множить сущности без необходимости. Но не все знают, что в науке есть и другие «бритвы», которые помогают избавиться от лишнего. Термин «бритва» используется для обозначения метода, ко...
Java. Работа с XML-документами Привет, Хабр! Меня зовут Михаил, я SDET-специалист компании SimbirSoft. Я занимаюсь автоматизацией тестирования, в основном это работа с WEB и REST API, но на последнем проекте применял SOAP. Мне приходилось работать с сообщениями этого протокола, а именно:— выполн...
[Перевод] React + TypeScript: необходимый минимум Привет, друзья! Представляю вашему вниманию перевод этой замечательной статьи. Многие React-разработчики спрашивают себя: надо ли мне учить TypeScript? Еще как надо! Преимущества изучения TS могут быть сведены к следующему: ваши шансы получить более высокооплачиваемую раб...
Расход в 1 литр масла на 250 км пробега – это нормально? В США разобрали Toyota Camry с пробегом 483 тыс. км и удивились состоянию двигателя В США владелец Toyota Camry 2009 года выпуска с пробегом 300 тыс. миль (483 тыс. км) решил разобрать двигатель 2AZ-FE своего авто (бензиновый ДВС объемом 2,4 л), чтобы понять причину высокого расхода масла – фактически, на каждые 250 км пробега «улетал»...
Автоматизация управления с помощью Ansible В предыдущей статье мы достаточно подробно рассмотрели вопросы связанные с автоматизацией управлением и настройкой ПО в средних и крупных сетях. Рассмотрели Vagrant и основные методы работы с виртуальной инфраструктурой. В этой статье мы подробно поговорим об использовании т...
На какую сумму в оффере стоит соглашаться на примере стоимости жизни в Абу-Даби (ОАЭ) Всем привет!Очень давно меня не было, я пропала почти на 3 месяца, но если честно именно столько времени понадобилось, чтобы завершить переезд, закончить все дела и наконец получить счета за коммунальные услуги (правда, кроме газа, я его дополню в январе).В этой статье я хоч...
[recovery mode] Обзор чат-бота ChatGPT: что это, возможности и примеры использования ChatGPT от OpenAI, запущенный 30 ноября 2022 года, произвел настоящий фурор в IT-сообществе, поразив многих точностью ответов на специальные вопросы. Посмотрим, как можно использовать этого чат-бота, в том числе в сочетании с другими программными продуктами.Я заинтересовался...
Как написать UI-автотесты, если не умеешь программировать? О чем эта статья и чем она полезна.Всем привет! В этой статье пойдет речь о том, как написать простые UI-тесты на языке Java. Это будет интересно тем, кто давно хотел попробовать себя в автоматизации или добавить новенького в свой текущий проект. В этой статье не будет больш...
Как бесплатно запустить Windows на Mac M1/M2 (Apple Silicon) В статье описана инструкция по установке Windows внутри MacOS. Читать далее
[recovery mode] SwiftUI ScrollView и параллакс без тормозов Передо мной возникла задача сделать скроллируемый контент, на заднем плане которого прокручивается другой контент. Прокрутка должна быть синхронной, но с замедленной скоростью - как отдалённый фон в мультфильмах или играх.В классическом UIScrollView из UIKit можно реализоват...
Как мы проблемы UI в виджетах решали Меня зовут Алексей Чернякович, я занимаюсь разработкой и поддержкой Android App Widgets в мобильном банке Тинькофф. Сейчас у нас работает три виджета. Несмотря на относительную простоту, они довольно популярны у пользователей — более 50 тысяч использований в месяц. Расскажу,...
Госдума приняла закон о защите биометрических данных Государственная Дума РФ в третьем и окончательном чтении приняла закон о защите биометрических данных. Документ устанавливает правила обработки информации с использованием единой биометрической системы (ЕБС) или других информационных систем. Новый закон запрещает принуж...
Космические агентства по всему миру настаивают на введении единого «лунного времени» Практически все космические державы имеют собственные программы по освоению Луны. Интерес к естественному спутнику весьма высок – в течение следующего десятилетия ожидается запуск более десятка миссий, связанных с Луной. Многие из них будут носить международный статус — пред...
Как я создавал свой первый дашборд на Visiology 3 и почему второй буду делать немного позже Привет, Хабр! Меня зовут Салават Сафиуллин, и сегодня я хочу поделиться с вами своим первым опытом создания дашборда на Visiology 3. Это новая версия платформы, которой мы пользуемся уже несколько лет, но она кардинально отличается как архитектурой, так и принципами работы. ...
[Перевод] Starting Electronics: руководство по веб-серверам на Arduino. Часть2. HTML и веб-сервер с SD картой От переводчика. Продолжаем изучать тему создания веб-серверов на Arduino и на микроконтроллерах вообще. В этой статье скомпанованы две части оригинального руководства — «Структура веб-страницы (HTML)» и «Arduino веб-сервер с SD картой». Материал в этих уроках излагается п...
Методы расширения в C# В этой статье мы рассмотрим такой механизм, как методы расширения, который позволяет добавлять методы в уже созданные типы. Читать далее
10 способов увеличить продажи: плюсы, минусы, подводные камни Цель любой компании — постоянный рост продаж. Достичь ее позволяют разные подходы и инструменты. Алена Бирюкова, руководитель отдела прогрева, и Артем Елисов, коммерческий директор Completo, поделились рабочими механиками, которые чаще всего выбирает для себя бизнес. Также о...
Что произошло с hh.ru в 2022 году 2022 был… ну вы знаете. Штормило всех и с разной степенью интенсивности. Хорошо, что можно сублимировать тревожность в работу! Не благодаря, но вопреки всем невзгодам hh.ru продолжает развиваться и становиться лучше. Мы старались чаще выкатывать новые возможности и совершенс...
Сервера AutoChess MOBA закроют из-за неопытности разработчиков AutoChess MOBA — мобильная игра, которая хотела стать заменой League of Legends: Wild Rift и Mobile Legends: Bang Bang. И пока такие проекты как Pokemon Unite предлагают что-то уникальное, что-то своё, AutoChess MOBA пыталась мимикрировать под «Лигу Легенд», за что и поплати...
Телефоны на Android можно прослушивать с помощью датчиков движения Группа ученых из пяти американских университетов разработала side-channel атаку EarSpy, с помощью которой можно прослушивать устройства на Android: распознать пол и личность звонящего, а также частично разобрать содержимое разговора. Прослушку предлагается осуществлять при п...
Зачем Clojure Flutter ”Если вам нравятся Руби, Свифт, Дарт, Эликсир, Эльм, С++, Питон или даже С, используйте их ради бога. Но выучите Кложур, и выучите его хорошо” — Дядя Боб (твит, а также твиты: 1, 2, 3).Статей о Clojure написано много, цель этой — дать свое видение некоторых преимуществ языка...
Как врач сделал себе ИИ помощника Всем привет, меня зовут Александр и я врач-гематолог. Для справки, это тот, кто занимается болезнями крови. Мой общий стаж перевалил за 16 лет, я кандидат медицинских наук и последние пару-тройку лет интересуюсь анализом данных, machine learning и ИИ в медицине. Под "интерес...
Если бы не IT: какой могла бы стать жизнь IT-инженеров Практически все истории наших героев связаны с IT от начала и до конца. Но что бы с ними было, если бы в жизни они сделали другой выбор? Мы поговорили с разными людьми, работающими в этой сфере, и узнали, всегда ли они мечтали стать IT-инженерами и чем бы занялись, если бы в...
Разборка новых MacBook Pro показала, каким необычным способом Apple решила проблему дефицита подложек Разборка новых MacBook Pro уже показала, что внутренняя конструкция новинок практически идентична предшествующим моделям. Однако кое-что всё же несколько изменилось. Изменились сами однокристальные системы, а заодно уменьшился радиатор системы охлаждения. И причины у эт...
Если бы Остер раздавал советы автоматизаторам. Часть 2 Всем привет! В статье продолжаю давать вредные советы из области автоматизации: по кодингу, коммуникациям, организации процессов, стандартам, визуализации и т. д. Здесь вы найдёте подробную инструкцию о том, что нужно делать автоматизатору, чтобы усложнить жизнь себе и ...
Знакомство с Velociraptor Если такие понятия как DFIR, Threat Hunting, Security Monitoring, для вас не пустой звук, то эта статья будет вам интересна. Я расскажу про утилиту Velociraptor, которая часто помогает мне в работе. К моему удивлению, на Habr даже нет упоминания про нее, попробую это исправи...
Yolo на мобильном без постобработки Столкнулся я как-то с проблемой распознавания упорядоченных последовательностей объектов на мобильных устройствах. Идея использовать YOLO пришла довольно быстро, так как модель хорошо подходила по многим параметрам. Я экспортировал обученную модель и с грустью осознал, что о...
Стартуем микросервис на Node.js + fastify + Typescript + prisma + mongodb + grpc Зачастую возникает необходимость начать новый микросервис. Вот и у меня совсем недавно возникла такая потребность. А ведь еще хочется и чего-то новенького попробовать. Сперва был определен стек и хотя процесс для меня не новый, но я столкнулся с множеством подводных камней...
[Перевод] Что ждёт Flutter в будущем О чём говорили на конференции Flutter Forward в Найроби: перевод статьи с комментариями разработчиков Surf. Читать далее
Меньше точно не бывает! Делаем вольтметр на ATTINY10 В продолжение к прошлой статье решил пощупать и Attiny10. Ну меньше уже точно ничего нет. Если и есть такое извращение с 4 ногами, я о нем не знаю, точнее не нашел..Тут у нас полноценный МК, в корпусе SOT-23! И задачи на нем решать можно вполне серьезные. Собрав схему на мак...
О desktop-уведомлениях в Linux-системах В операционной системе, как и в жизни, обширны способы передачи информации: иногда можно деликатно сказать что-то в стиле «не будет ли любезен многоуважаемый джинн», или сделать жест рукой, чтобы твой собеседник понял без лишних слов, или в некоторых ситуациях достаточно лиш...
Как устроены интернет-платежи в Dodо Одно из направлений разработки в Dodo — интернет-платежи. Для компании это скорее утилити-функция, чем основной бизнес, но всё же нам приходится делать кучу всего, чтобы дать клиентам лучший UX и у нас накопился опыт, которым хочется поделиться.Меня зовут Дмитрий Кочнев, я р...
Active Directory для изучения Pentest Это первая статья цикла, который будет описывать методы исследования структур системы Windows и Active Directory. В статье попробуем изучить мини инфраструктуру AD и попытаемся понять как обнаруживаются логические уязвимости.В сети достаточно много статей о том, что была най...
[Перевод] Состояние WebAssembly в 2022-23 годах Автор статьи Жерар Галлан известен как автор книги “WebAssembly in Action”, выпущенной Manning в 2018 году. Существует перевод его книги на русский — “WebAssembly в действии” (Питер, 2022). Предыдущий обзор The State of WebAssembly – 2021 and 2022 опубликован автором в январ...
Как узнать свой номер телефона? Собрали все способы Номер телефона — это последовательность цифр, которая назначается каждому абоненту в сети. С его помощью мы можем не только связаться с друзьями и близкими, но и подтвердить те или иные действия: например, совершение транзакции. Как правило, каждый человек помнит свою после...
Как мы запускали сервис по продаже подписок на Spotify, Netflix, PlayStation Меня зовут Рома Васильев, я дата-инженер. В марте 2022 года мы с коллегой создали стартап — сервис-посредник, через который в России можно купить подписки на Netflix, Spotify, PlayStation, Steam и другие площадки, которые ушли с рынка. В этой статье расскажу, как это вс...
НДФЛ для удаленщиков и вредные советы Да, тема релокации все еще актуальна и регулярно появляются статьи, связанные с этой темой. Как правило, это мини-блоги в стиле «У меня получилось», я живут там-то, сейчас расскажу, через что прошел. Но вот эта статья своим содержанием и посылом сильно выбивается на общем фо...
Как создать сервис по ремонту оргтехники В этой статье расскажу о том, как мы создавали сервисный отдел по ремонту оргтехники. Читать далее
Тестирование PHP проектов на примере Symfony Хочу описать свои наработки и устоявшиеся подходы к тестированию PHP проектов. Последние годы я работаю с Symfony и здесь будет достаточно моментов специфичных для этого фреймворка. Так же в этой статье термин функциональные тесты (functional) является синонимом End-to-End т...
Основы OkHttp в Android-разработке OkHttp — библиотека и по совместительству HTTP-клиент с открытым исходным кодом для Java и Kotlin, разработанная Square, которая также создала Retrofit.Порой стоит использовать не вездесущий Retrofit, а OkHttp из-за его производительности и большего функционала.В статье подр...
Компонентный подход. Боремся со сложностью в Android-приложениях Представьте, что вы начали разработку нового Android-приложения. Поначалу особых проблем не будет. Вы реализовали лишь самые базовые функции. Экранов немного, и все они простые. Вам легко ориентироваться в коде. Вы бодро добавляете одну фичу за другой. Но со временем разрабо...
В честь первого афроамериканца, принятого в Национальную академию наук. Nvidia рассказала о выходе новой архитектуры Компания Nvidia фактически подтвердила сроки выхода следующего поколения своей графической архитектуры. Речь об архитектуре Blackwell, первые данные о которой попали ещё в начале года. На тот момент было неясно, будет ли это игровая архитектура или же архитектура...
C++ для Maya Создание кастомного локатора в Autodesk Maya с помощью C++Здравствуйте. В этой статье я хочу поделиться тем опытом, который приобрел при написании плагина на C++ для Maya. Читать далее
C# и обработка медиафайлов средствами FFmpeg, Pandoc и ImageMagick Приветствую читатели, в этой статье я бы хотел рассказать о написанной мной OpenSource библиотеке MediaFileProcessor под платформу .NET (.netstandart 2.0). Читать далее
[Перевод] Взлом Hyundai Tucson История в двух частях. В первой мы расскажем о первых неудачных попытках болгарского ИТ-специалиста Радослава Герганова взломать свой автомобиль Hyundai Tucson 2020 года выпуска, а во второй — о том, как выполнялся взлом.Я купил новенький Hyundai Tucson в 2020 году, а в 2022...
Ryzen 9 7845HX стал самым мощным процессором в рейтинге PassMark, и ведь это даже не флагманская модель В Сети появились первые результаты тестирования мобильного процессора Ryzen 9 7845HX. И он сходу стал самым производительным ПК в базе PassMark. Новинка набрала 46 791 балл, тогда как Core i9-12900HX, разместившийся на втором месте, набирает лишь 35 628 баллов. Е...
Знакомство c Reatom Привет, меня зовут Артём Арутюнян и я автор менеджера состояния Reatom. Этим постом открывается серия обучающих материалов на русском языке, документация на английском доступна на официальном сайте. А оно вам надо? Думаю, да, потому что Reatom — это универсальное решение,...
Steam поставил сразу два новых рекорда Год только начался, а сервис Steam обновил сразу два крупных рекорда — общее количество пользователей в сервисе и общее число пользователей в играх. Оба рекорда были зафиксированы через SteamDB. Читать полную статью
3D контроль качества стеклянных изделий: соблюдаем жесткие требования Стекольная промышленность имеет свои собственные уникальные критерии, предъявляемые к контролю качества, начиная от проверки кромок, расчета толщины и спектрального коэффициента отражения до измерения цвета и многих других параметров.В этой статье вы узнаете, как современные...
[Перевод] Бухучёт для программистов Любому образованному человеку непременно нужно иметь общее представление о бухгалтерском учёте. Так же, как и математика, естественные науки, программирование, музыка, литература, история, да и много чего ещё, бухучёт — это одна из тех сфер знаний, которые помогают нам поним...
Разумные правила оптимальной зарядки: подробнее про скорость, блоки питания, внешние аккумуляторы и многое другое Привет, Хабр! Если основательно задаться вопросом оптимальности зарядки, станет понятно, что в этом отношении не всё так однозначно. Далеко не каждый зарядник позволяет получить быструю и качественную зарядку вашего устройства(будь то Apple или Android, смартфон или ноутбук)...
[Перевод] Стратегии роста Notion. Часть 1 Примечание Wunder Fund: мы very early adopters Ноушена и большие его фанаты. Поэтому решили перевести нетипичную для нас статью о том, как он создавался, как рос, как развивалась его стратегия. В статье есть ряд интересных мыслей про развитие продуктов.Что можно узнать о стр...
Как хостить телеграм-бота (и другие скрипты на Python) на Repl.it бесплатно 24/7 Очень часто возникающий вопрос: где можно разместить скрипты на Python, Flask-приложение, телеграм или дискорд ботов?Один из вариантов — на своем компьютере при наличии внешнего IP-адреса и опыта в настройке проброса портов на роутере. Цель этот статьи - подробная инструкция...
Мой опыт обмена фиата через крипту Сейчас очень популярно делать операции через криптовалюту. Настолько популярно, и одновременно диковинно, что как же так, чтобы и я не попробовала. И я попробовала. Под катом - инструкция. Выводы тут сразу.Я попробовала обменять рубли через USTD в тенге. Вышло примерно так ж...
Автоматизация ревью ТЗ с помощью инструмента Comala для Confluence. Углубленная автоматизация В предыдущей статье мы рассмотрели, как можно собрать базовую автоматизацию ревью для документации и как уже на этом этапе она облегчает жизнь аналитику и команде. Однако всегда появляются новые задачи для решения, и всегда можно посмотреть шире. Придумать, что еще можно сде...
Три круга приемочного тестирования или законная эксплуатация заказчиков в B2B Технологии Agile, Scrum и CI/CD становятся общепринятой нормой, и нам уже кажется, что новые релизы всегда можно выпускать постоянно, практически непрерывно. Технически, сейчас действительно есть реальная возможность выкатывать обновления каждый день, а некоторые разработчик...
Технологии, изменившие музыку. Часть 2: создание Продолжаем цикл статей про технологии из мира музыки. Сегодня поговорим об инструментах, без которых невозможно представить современную музыкальную индустрию и целые жанры, такие как рок, фанк и практически любая популярная музыка. Речь пойдет об устройствах, так или ин...
KMM глазами iOS-разработчика Привет! Меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS.Мы в мобильной команде для шаринга кода на несколько платформ используем KMM. На Хабре можно встретить достаточное количество статей по этой технологии, но большинство из них рассматривает выбор к...
Всё о визах в Таиланд в 2023 году От “А” до “Я” о визах в Таиланд: виды, стоимость, нюансы. Всем привет! Я – Женя, как-то я прилетела в отпуск в Таиланд и осталась тут жить. За это время я делала 3 визы и сейчас в процессе получения 4 – Elite visa. В статье расскажу обо всех тонкостях, связанных с получ...
Еще раз про бэкапы Не будет преувеличением сказать, что отсутствие или неправильное резервное копирование данных может привести к значительным убыткам, а то и к полной потере бизнеса. В этой статье я расскажу о своём опыте настройки резервного копирования данных в одном из SAAS-сервисов интерн...
CADBase – бесплатная платформа теперь на русском Сотрудничество может быть проблемой при любой организации, а когда идёт речь о работе с данными об изделии, это может быть ещё сложнее. Правильное управление данными имеет решающее значение для успеха предприятия, поэтому важно найти способы эффективной совместной работы. С ...
Пишем FastAPI с нуля на python FastAPI — это современная, быстрая (высокопроизводительная) веб-инфраструктура для создания API-интерфейсов с Python 3.7+ на основе стандартных подсказок типов Python. В этой статье мы рассмотрим как написать его с нуля. Читать далее
[recovery mode] Тестирование gRPC. Часть 2 В предыдущей статье мы с вами рассмотрели тестирование фреймворка gRPC. Но демо проект созданный моим коллегой Михаилом Петровым, был улучшен моим в другим коллегой Читать далее
Как скетчи помогают в работе и жизни: от коммуникации с заказчиком до иллюстративного дневника Привет! Меня зовут Катя Седова, я продуктовый дизайнер и иллюстратор в Тинькофф. Примерно 50% моей работы — создание картинок к клиентским письмам и дайджестам. Рассылки происходят постоянно, поэтому рисовать нужно много и быстро. За год работы у меня появилось понимани...
«Прилагаем общие усилия, чтобы начать производство», — российский завод Hyundai Motor может возобновить сборку машин Глава департамента закупок Hyundai Motor Чон Хёнчхоль заявил, что южнокорейская компания совместно Минпромторгом РФ и правительством Санкт-Петербурга ежедневно ищет способы возобновить работу своего российского завода. Я люблю Россию, Россия любит нас. Мы находимся в ка...
Генерация аудио диффузионной нейросетью. Стоит ли использовать обычную диффузию для генерации мел-спектрограмм? В уходящем году вы могли видеть множество нейросетей для генерации изображений. Скорее всего, даже ваша бабушка слышала про Stable Diffusion или DALL-E, но эти нейросети объединяет одна очень важная деталь — они основаны на методе обратной диффузии. Этот подход к генерации ...
Магия размерностей и магия Котлина. Часть третья: Смешение магий Это третья, заключительная статья серии, посвящённой библиотеке по манипулировали физическими величинами системы СИ, а также другими величинами, в Котлин. В ней мы рассмотрим, как фундаментальные математические структуры, которые природа “заложила” в систему СИ, предопределя...
[Перевод] Почему оценка задач сломала Agile Трудно утверждать, что методология Agile неэффективна. Практически все команды разработки программного обеспечения стараются ей следовать. Простой способ начать внедрять гибкую методологию — это добавить пару ее компонентов в рабочий процесс. Одним из самых популярных и при ...
Оценка стоимости разработки программного продукта, информационной системы, сервиса или задачи Оценка стоимости разработки программных продуктов нацелена на получение реальной картины ситуации на основании разных факторов, влияющих на процесс разработки. В статье представлена базовая теория, которую необходимо знать при проведении оценок, несколько основных методов оц...
Как снять данные с весового модуля со своей спецификацией протокола передачи данных и отправить на MQTT сервер Данная статья написана для тех кто на начальном уровне знает Python и немного разбирается в АСУ ТП. Задача достаточно распространенная, надо взять данные со старого, со своей специфичной реализацией протокола оборудования и перевести ее в такой вид, что бы ее можно было ...
[Перевод] Управляем модулем ядра Linux Почему пользовательское приложение работает некорректно? Существует не так много способов, которые бы помогали выявить проблему. В большинстве случаев для поддержания высокой доступности требуется стороннее программное обеспечение. В статье рассказываем, как настроить монито...
От треугольника Серпинского до «снежинок». Реализовано на Python От треугольника Серпинского до "снежинок". В этой статье я поделюсь своим опытом построения треугольника Серпинского и расскажу, к чему привели дальнейшие эксперименты с фракталами подобного типа. Реализовано на Python. Читать далее
Повторная передача сообщений в Spring Kafka В статье рассмотрена тема обработки ошибок в Spring Kafka, а так же основные параметры и настройки, которые необходимо учесть при настройке конфигурации. Читать далее
Пишем умный поиск по коду с Open AI В этой статье мы кратко рассмотрим технологию, которая лежит в основе ChatGPT — эмбеддинги, и напишем простой интеллектуальный поиск по кодовой базе проекта. Читать далее
Простейшая нейросеть: еще раз и подробнее Машинное обучение это незаменимый инструмент для решения задач, которые легко решаются людьми, но не классическими программами. Ребенок легко поймет, что перед ним буква А, а не Д, однако программы без помощи машинного обучения справляются с этим весьма средне. И едва ли воо...
Документ бизнес-требований: Что это такое и как его составить [+5 шаблонов] Документ бизнес-требований (BRD) является отправной точкой для любого программного проекта или бизнес-решения. Благодаря такому документу члены команды приходят к единому мнению о том, что нужно создать, зачем это делать и как этого добиться.В этой статье изучаются основные ...
Удивительные беспроцессорные «текстовые» компьютеры Wang 2200 — мечта писателя конца 70-х В прошлой статье я рассказал об американском изобретателе китайского происхождения Ван Ане, создателе памяти на магнитных сердечниках, который построил с нуля успешный IT-бизнес в США. Самым интересным проектом основанной им компании Wang Laboratories стал специализированн...
Подключение DRAC/I сервера Dell PowerEdge 2850 с современного компьютера Столкнулся с проблемой подключения старого сервера Dell PowerEdge 2850 через Dell Remote Access Controller 4/I. Если у вас на сервере опционально установлен контроллер удаленного доступа то этот туториал для вас.Для того, чтобы подключиться через DRAC, нам необход...
Как мы интегрировали и настроили для работы Conventional Commits в PHPStorm Поднялся вопрос стандартизации коммитов в команде. До этого были такие правила, мы пишем номер задачи и через тире описание того, что было сделано кратко. Номер задачи берется из номера issue. Например: #1 - реализован функционал сборки прода. Но, это надоело и стало как-то ...
Причины минусов в карму и история голосов v2.01 Как-то заглохла тема голосов в карму и к статьям. Такое впечатление, что после публикации Причины минусов в карму и история голосов всех все устроило (нет).Заодно, немного поговорим о дизайнеВ этой короткой заметке я попробую объяснить, почему существующее решение ...
[Перевод] Brave Summarizer: ИИ для релевантного поиска Мы внедряем новую технологию Поиска Brave, основанную на ИИ, — Summarizer, которая предоставляет краткие, ёмкие и содержательные ответы наверху результатов Поиска Brave по запросу пользователя, опираясь исключительно на результаты поиска в сети.Summarizer всегда предоставляе...
Windows 11 Pro скоро по умолчанию отключит небезопасную гостевую аутентификацию SMB Начиная с Windows 11 Insider Preview Build 25276, редакции Windows Pro по умолчанию отключают откат небезопасной гостевой аутентификации SMB. Гостевые входы в систему не требуют паролей и не поддерживают стандартные функции безопасности, такие как подпись и шифрование. Разре...
Burp Certified Practitioner. Как я сдавал новый экзамен создателей Burp Для подписчиковНедавно я успешно сдал сертификацию Burp Suite Certified Practitioner (BSCP) компании PortSwigger и хочу поделиться своим опытом. В этой статье я расскажу, с какими подводными камнями тебе придется столкнуться в процессе подготовки и сдачи этой сертификации.
Дельта компрессия и квантизация объектов в C# Cтатья затрагивает тему сериализации данных, которые передаются по unreliable каналам.В первую очередь это касается реалтайм игр, которые критичны к сетевым задержкам, имеют активное общение клиента и сервера, например, 10 - 60 раз в секунду и используют UDP протокол. В стат...
[Перевод] Реверс-инжиниринг баг-фикса микропроцессора 8086 по снимкам кремния Микропроцессор 8086 — это революционный процессор, представленный компанией Intel в 1978 году. Его появление привело к тому, что архитектура x86 и сегодня продолжает доминировать в сфере десктопов и серверов. При реверс-инжиниринге 8086 по фотографиям кристалла моё внимание...
В Госдуме заявили, что к 2028 году отечественная вычислительная техника полностью вытеснит западную К 2028 году доля отечественной вычислительной техники на российском рынке достигнет 100%. Об этом заявил председатель думского комитета по информационной политике, информационным технологиям и связи Александр Хинштейн. На данный момент показатели составляют едва ли 11%....
Английский суд рассмотрит введение отсрочки выплат по еврооблигациям владельца «Билайна» Суд Англии рассмотрит вопрос отсрочки выплат по бондам VEON, больше половины держателей которых — это россияне. Сможет ли компания выполнить обязательства, а также как это повлияет на планы по продаже бизнеса в России, пока неясно.
Как составить и рассчитать бюджет стартапа на кибербезопасность Бастион не собирает статистику по расходам на ИБ на российском рынке, но мы помогаем заказчикам формировать бюджеты на кибербезопасность, так что нам часто задают вопросы на эту тему. Сразу хочется поделиться ссылкой на толковый ликбез, но вместо грамотных рекомендаций поис...
Языки программирования как зеркало IT-столпотворения. Часть II В предыдущей статье мы подробно рассказали о первых попытках человечества запатентовать языки программирования и о первых созданных ЭВМ. В этой речь пойдет о современности. Читать далее
Home Assistant: Яндекс Алиса говорит, какие окна у вас не закрыты В этой статье разберемся, как в Home Assistant составить красивую фразу на основе статусов сенсоров и передать её в TTS на примере колонки Яндекс. Читать далее
Количество партиций в Spark DataFrame, DataSet на основе Relational Data Base table В прошлой статье мы рассмотрели количество партиций, которое по умолчанию создается Apache Spark при инициализации DataFrame, DataSet. В текущей статье продолжим рассматривать количество партиций у Spark DataFrame и DataSet, созданных на основе таблицы в Relational Database....
Github Actions. Простой пример для уверенного знакомства Здесь я буду расссказывать о моем опыте настройки CI/CD c помощью GitHub Actions.Эта статья поможет тем, кто хочет настроить автоматический деплой для личного/учебного проекта на свой удаленный сервер, пользуясь бесплатным сервисов GitHub Actions. Причем этим сервисом можно ...
Обзор пакетов SciPy, Pyomo и CVXPY для решения задач условной оптимизации Привет, Habr! На связи Михаил Будылин и Антон Денисов, мы работаем в отделе аналитики данных X5 Tech.В этой статье мы продолжаем говорить про прикладное применение теории оптимизации. В частности, делаем краткий обзор существующих open-source решений в Python,...
Электрификация сельских районов в Африке: кейс создания солнечного микрогрида Попалась на глаза любопытная статья об электрификации сельских районов в Африке на примере общины с очень выразительным для русского уха названием Йебу (Yebu) [1]. Поскольку это явный пример освоения "неудобий", о которых мы часто пишем в развитие концепции геоклиматических ...
Пишем API автотесты на TypeScript + Playwright В данной статье мы разберем, как писать API автотесты на языке TypeScript + Playwright. Читать далее
10 популярных вопросов, которые нужно знать, чтобы пройти собеседование на позицию Flutter-разработчика Привет, на связи Flutter-команда Mad Brains. Сегодня мы разберём 10 часто задаваемых вопросов на собеседованиях на позицию Junior Flutter Developer. Наш ведущий Flutter-разработчик расскажет, как показать себя во всей красе и получить оффер. А в конце статьи вас ждет приятны...
Обзор шифра Хилла В современном мире, полном информационных технологий, мы доверяем свои данные интернет – сервисам. Разумно предположить, что доступ к этим данным должен иметь только определенный круг лиц. Как раз для этого и существует шифрование. Шифрование – это кодирование информации, пр...
[Перевод] TCP и UDP, или Два столпа Интернета В предыдущей статье мы обсудили иерархию Интернета, разницу между средами передачи данных и путь запроса от компьютера пользователя до сервера, расположенного на другом конце земного шара. В этой поднимемся на несколько уровней выше, чтобы разобрать каким «языком» пользуются...
Что под капотом у Leak Canary? LeakCanary – библиотека, позволяющая находить утечки памяти во работы приложения в фоновом режиме. При всем при этом, со стороны клиента ничего делать не нужно. Просто указал либу в зависимостях Gradle, и она сама начинает работать. Естественно инженерное любопытство за...
Как тестировать современный фронтенд Бывало, замечаешь в коде «нехороший» модуль или функцию и тут же тянутся руки их отрефакторить. Но как потом убедиться, что правки не сломали какой-нибудь сценарий в приложении или вовсе не положили продакшен? Этих ситуаций можно избежать, если в проекте есть тесты. Мен...
Разница между debounceTime и throttleTime В этой статье я хочу рассказать тонкую разницу между операторами debounceTime и throttleTime простыми словами Читать далее
Кастомный генератор кода API: структура и методы доработки Всем привет! Меня зовут Юлия Сладковская, я разработчик в МТС Digital, команда BOPS (Backoffice Portal). Эта статья – про структуру генераторов NSwag для кода клиента и сервера на основе схемы API. Также я расскажу о создании кастомного генератора на базе стандартных генерат...
Telegram WebApps. Как встроить веб-приложения в чат-бота? Относительно недавно команда Telegram выпустила обновление, с которым появилась возможность встраивать в мессенджер веб-приложения. Эта статья — обзор основных моментов внедрения веб-приложениий в телеграм-ботов. Читать далее
Эволюция Интернета и ее влияние на российский онлайн-ландшафт История Интернета начинается в 1950-х годах вместе с развитием компьютеров. Наша статья посвящена истокам интернета: предпосылкам, первым веб-страницам и людям, которые это все создавали. Читать далее
Apple достигла идеала? Разборка нового MacBook Pro на M2 Pro показала, что внутри он практически идентичен предшественнику Специалисты iFixit разобрали новый 14-дюймовый MacBook Pro на SoC M2 Pro и обнаружили, что его конструкция и дизайн внутренней части практически идентичны предшествующей модели. Как можно видеть, отличий между двумя MacBook Pro на раных платформах минимум, начина...
Тактики для тестирования на проникновение При обучении тестированию на проникновения возникает ситуация, когда необходимо от разрозненных статей и материалов переходить к полноценной процедуре исследования инфраструктуры и поиска уязвимостей. В этой статье попробуем собрать данные, которые позволят сделать набор пре...
Нарисуй сон Нейронные сети, рисующие “всякое” по запросу, не обошли стороной и меня. После того как наигрался, я решил, что раз тема из области искусственного интеллекта, то и интерфейс взаимодействия нужен соответствующий. Например, голос и желательно на русском языке. Так появилась ид...
ЖэПэО. Эксплуатируем небезопасные групповые политики Основная причина успеха большинства взломов, будь то пентест или реальное проникновение злоумышленников, — это допущенные администраторами ошибки в настройках и конфигурации. Сегодня мы поговорим о способах эксплуатации небезопасных групповых политик в сетях Active Directory...
[Перевод] Эволюция кода: путь к лучшему дизайну В этой статье мы изучим программное решение экзаменационной задачи конца второго семестра в AltSchool Africa. Эта задача подразумевает построение системы для управления складскими запасами магазина, продающего машины и другие товары. В частности, магазин должен иметь возмож...
Новейшая архитектура AMD Zen 4 теперь и для 15-ваттных мобильных APU. Впервые протестирован Ryzen 5 7640U В бенчмарке Geekbench впервые засветился мобильный процессор AMD Ryzen 5 7640U. Это пока ещё не представленный официально APU из линейки Phoenix-U. В данном случае, благодаря новой системе именования AMD, мы сразу понимаем, что речь о процессоре на основе архитек...
Конфигурирование BGP на Juniper MX Привет, мимо пробегающий читатель!В прошлой статье я обмолвился, что, возможно, опишу конфигурацию присутствующих в решении маршрутизаторов Juniper MX204. Близится конец года, и напоследок я решил написать небольшую статью на эту тему. Читать далее
Как слить кучу денег на то, что не полетит. Или мои выводы из историй знакомых стартаперов Привет! На связи Боровков Евгений, основатель конструктора прототипов сайтов wmtools.ru. В этой статье я хочу поделиться выводами, которые я сделал, узнав несколько историй нескольких стартапов. Читать далее
[Перевод] Как ускорить работу PostgreSQL В статье рассказываем, как оптимизировать базу данных PostgreSQL на примере Linux на IBM Z. Опираясь на представленные примеры, вы шаг за шагом узнаете, какие опции и параметры конфигурации улучшат установку PostgreSQL с точки зрения: Читать далее
Конструктор для embedded-разработчика В статье я расскажу о своей попытке создать удобный и красивый модульный конструктив для настольного прототипирования микроконтроллерных устройств Читать далее
Трекинг без разметки или как следить за тысячами пузырьков на производстве Привет, Хабр! Меня зовут Клоков Алексей, сегодня поговорим об алгоритмах компьютерного зрения, обработке видеопотока и подходах к трекингу без разметки (unsupervised tracking). Методичка будет полезна как опытным специалистам, перед которыми стоит подобная задача, так и нач...
3D-графика в Go В большинстве случаев, когда речь заходит об использовании Go, вспоминается backend или DevOps и в самую последнюю очередь можно подумать об использовании Go для создания мобильных или десктопных приложений. Но в действительности, благодаря возможностям интеграции с нативным...
Юмор ChatGPT Привет, Хабр!Языковая модель ChatGPT произвела настоящий фурор. Даже Хабр в последние недели пестрит статьями про неё. Получив доступ к этой модели, я захотел изучить её способность шутить. Научить ИИ понимать юмор - непростая задача, и даже в последние годы успехи ИИ в гене...
Kickstarter-дайджест: интересные стартапы за конец ноября Каждый день стартаперы со всего мира пытают счастье на Kickstarter, публикуя свои проекты. Каждую неделю лучшие вырываются в топы, а уже через несколько месяцев о них могут узнать даже за переделами Kickstarter. За такой большой площадкой сложно следить, но эта статья может ...
Лабиринты из линий: превращаем сложный сценарий в понятную схему на языке ДРАКОН Сценарии для чат-ботов обычно создаются в виде блок-схем. Это удобно для проектирования — понятно, за какой репликой следует ответ и что происходит дальше. Но чтобы разобраться в схеме, команда тратит десятки часов: при больших сценариях результат выглядит крайне запутанным ...
Как мы быстро запустили мобильное приложение и споткнулись о свой успех Привет, Хабр! Мы крупная производственная компания с 50К+ сотрудников, и в 2019 году поняли, что нам нужно мобильное приложение. Срок реализации 5 месяцев. Какой стек вы бы выбрали при такой скорости? Мы выбрали нативные Kotlin и Swift. Поначалу запилили всего 6 сервисов (но...
Создание кластера для расчета в OpenFOAM В статье я расскажу, как можно (при необходимости) быстро и дешево собрать кластер Beowulf на основе домашних компьютеров. Выполню я это с помощью компьютеров находящихся в аудитории университета, используя существующую локальную сеть. Используемые программные инструменты...
[Перевод] Тестирование автоматизации Ansible с помощью Molecule Часть 1 Molecule – это проект Red Hat, призванный помочь в тестировании ролей Ansible. Он обеспечивает поддержку тестирования с различными операционными системами и дистрибуями. Molecule также является весьма разноплановым проектом, позволяющим использовать множество провайдеров вир...
Samsung Galaxy S23 Ultra или Google Pixel 7 Pro – какой из них привлекательнее? Предлагаем сравнить их по параметрам дизайна, камер, экранов, процессоров, памяти, аккумуляторов. Не так давно мы делали для вас общее сравнение флагманских смартфонов от Samsung и Google, ознакомиться с материалом можно по этой ссылке Samsung Galaxy или Google Pixel: как...
Россия официально объявила об обесценивании и сгорании денег в рублях Навряд ли для кого-то является большим секретом, что после начала «специальной военной операции» и введения огромного множества санкций против России, жизнь на российской территории начала стремительно меняться, причем настолько быстро, как никогда ранее до этого Читать пол...
Кейсы разметки в CVAT #1: найди отличия Привет, дорогие читатели! Меня зовут Алина, я работаю операционным менеджером в компании Training Data, которая занимается сбором и разметкой данных. Я веду проекты по разметке, а еще благодаря знанию python пишу скрипты для автоматизации работы своей команды. У меня накопил...
Dell показала разбирающийся за секунды ноутбук Пока некоторые производители пытаются представить ноутбуки с гибкими дисплеями, Dell решила пойти своим путём. Компания показала, как выглядит её мобильный компьютер, который можно разобрать в считанные секунды.
Разворачиваем MySQL: репликации и секционирование В этой статье сначала настроим репликацию данных на второй сервер, а затем рассмотрим различные варианты секционирования. Читать далее
Парсили сайты, парсим и будем парсить. И не нужно этому мешать Здравствуйте, меня зовут Максим Кульгин. Моя компания xmldatafeed.com занимается парсингом много лет. На днях мы вернули 16 000 руб. клиенту, так как не смогли парсить весь iherb.com с нужной клиенту скоростью (а там очень много товаров). Проверил и оказалось, что ...
Одно из лучших физкультурных упражнений для программиста. Почему трудно делать и workaround на смартфоне и смарт часах Основная идея статьи - попробовать модифицировать популярное и полезное, но трудное физкультурное упражнение для выполнения обычным человеком серьёзного тренирующего объема с минимум негативных ощущений. А также как извлечь пользу для здоровья из просмотра футбольных матчей....
AMD рассказала о видеокартах следующего поколения. В интервью были затронуты в основном вопросы, связанные с ИИ в RDNA 4 Компания AMD только начала выводить на рынок видеокарты на основе архитектуры RDNA 3, но уже готова говорить об RDNA 4. О новом поколении в интервью 4Gamer рассказал глава Radeon Technologies Group Дэвид Ван (David Wang). Само собой, пока информации достаточно м...
HiFire-4. Гиперзвук — это просто (почти) Летные испытания гиперзвукового самолета - это дорого и сложно. Но есть способы в разумных пределах упростить эту задачу, примером чему служит летный эксперимент HiFire-IV, выполненный в составе международной исследовательской программы HiFire По материалам AIAA Читать далее
Теория вероятностей в машинном обучении. Часть 1: модель регрессии В данной статье мы подробно рассмотрим вероятностную постановку задачи машинного обучения: что такое распределение данных, дискриминативная модель, i.i.d.-гипотеза и метод максимизации правдоподобия, что такое регрессия Пуассона и регрессия с оценкой уверенности, и как норма...
Чем самообучение лучше курсов В этой статье мне хотелось бы рассказать, почему не стоит покупать курсы по программированию в тот момент, когда у вас появилось желание стать программистом. Читать далее
[Перевод] Производительность параллельных алгоритмов STL В этой статье я собираюсь провести тест производительности на компиляторе Microsoft и компиляторе GCC, чтобы ответить на простой вопрос: окупается ли политика выполнения? Читать далее
Универсальный VPN с WireGuard, MikroTik и Keenetic В данной статье я поделюсь опытом и конфигами для построения универсального семейного VPN - как для конечных потребителей, так и для организации сетевого взаимодействия между дачей и квартирой. Читать далее
[Перевод] 5 лайфхаков Python, которые сделают ваш код более читабельным и элегантным Привет, Хабр! В этой статье я продемонстрирую 5 трюков Python на понятных для новичков примерах, которые помогут вам писать более элегантный Python код в вашей повседневной работе. Читать далее
Сколько я заработал на Яндекс играх? Моя история выпуска игры Добрый день, Игроделы. Я InterestingPerson. В этой статье я опишу как создал свою игру и залил её на Яндекс. Читать далее
ПМЭФ 2023: На ПМЭФ-2023 обсудили современные цифровые вызовы и способы их преодоления На ПМЭФ-2023 представители Минцифры, СПЧ при Президенте РФ, крупного бизнеса и отрасли кибербезопасности обсудили, с какими цифровыми вызовами столкнулась наша страна, начиная с прошлого года. Эксперты отметили значимость сферы кибербезопасности в текущих условиях и подчеркн...
Событийная онтология vs объектная В общем случае (вне и до информационных технологий), произнося слово «семантика», предлагают обсудить смысловой уровень языка – значения знаков и структур знаков (текстов). При этом семантика противопоставляется синтаксису, то есть формальным правилам соединения знаков в тек...
Лучшие open-source инструменты для Python проектов Open-source проекты, сторонние инструменты и библиотеки - это то, за что мы действительно любим Python. В этой статье я собрал самые полезные, валидированные сообществом и проверенные временем инструменты, конфигурации которых можно встретить в популярных проектах с открытым...
Новейшая мобильная GeForce RTX 4070 ненамного быстрее мобильной GeForce RTX 4060. 3D-ускорители протестировали в Geekbench Вчера Nvidia официально представила мобильные ускорители GeForce RTX 40, а сегодня в базе Geekbench засветился перспективный ноутбук Thunderobot Zero 2023 в двух вариантах – с GeForce RTX 4060 и RTX 4070. Таким образом, можно сравнить производительность двух ускор...
Тест – это вещь! F#, тестирование на базе Expecto. Часть первая Expecto — фреймворк для тестирования, написанный на F# и для F#. Он довольно хорошо известен в рамках F#-сообщества, и у разработчиков, сумевших отгородиться от C# в достаточной степени, используется как платформа для тестов по умолчанию. Новички в F#, а также мимо проходящи...
Домашняя приточная вентиляция малыми средствами Последнюю пару лет я живу с приточной вентиляцией в городской квартире — и очень рад этому факту.В принципе, где-то в моменте её сооружения у меня проскальзывала мысль написать об этом, подкреплённая просьбами к фотке в фейсбуке, но в силу моей лени она быстро заглохла....
Обзор Harbor. Реестр Docker образов с организацией прав доступа и сканированием образов на наличие угроз В основе концепции Docker лежит такое понятие как образ. В терминологии Docker образ — это исполняемый файл (шаблон), в котором содержится исходный код приложения, его библиотеки и все самое необходимое для запуска контейнера. Готовые образы хранятся в реестрах. Один из самы...
Как мы выбирали идеальный протокол для мессенджера в ЕЦП.МИС (Медицинской информационной системе) У нас в «РТ МИС» уже был мессенджер для ЕЦП.МИС (медицинская информационная система). Ну, как «мессенджер» – некий самописный сервис на Node.js и хранением сообщений в БД для общения врачей и групповых уведомлений типа «Терапия! Тортики в ординаторской, успевайте».В один пре...
Снижение спроса на микросхемы вызвало падение акций азиатских компаний Производители микросхем сталкиваются с переизбытком продукции из-за снижения спроса после резкого роста продаж во время пандемии коронавируса. «Продажи компаний, производящих микросхемы, падают на 30-50%. Это ненормально», — заявил Грег Ро, руководител...
Антирейтинг 2022 Эта статья написана по аналогии со статьей «Как не надо писать на Хабр: Антирейтинг 2017». Статьи взяты за 2022 год. Кроме отрицательных значений рейтинга, есть список по абсолютному количеству минусов (видимо, самые обсуждаемые темы). «Вот найдется же нехороший, которому ...
1000 л.с., режим «краба» и собственный дрон. Брутальный внедорожник Dongfeng Mengshi M-Hero 917 показали со всех сторон Компания Dongfeng показала без камуфляжа электрический брутальный внедорожник суббренда Mengshi, который практически не отличается от концепт-кара M-Terrain, представленного этим летом. Автомобиль сохранил необычный кузов и X-образную оптику, получив необычный прямоуго...
Дизайн. С нуля до миддла Привет!Меня зовут Ксюша, мне 29 лет и я продуктовый дизайнер в Константе.В этой статье я расскажу о том, с чего начался мой путь в дизайне и постараюсь дать несколько полезных советов тем, кто только начинает. Читать далее
Тонкости C++: итак, вы объявили класс… Во время работы наша команда постоянно сталкивается с некоторыми особенностями языка, которые могут быть неизвестны рядовому C++ программисту. В этой статье мы расскажем о том, как работает, казалось бы, обыденная вещь – forward-декларации классов. Читать далее
From Zero to Hero: определите ваш уровень решения LeetCode задач от 1 до 5 В этой статье я хочу написать про мой опыт взаимодействия с платформой LeetCode, и описать свою подготовку к интервью в FAANG подобные компании путем разбиения ее на уровни.А какой у вас уровень? Читать далее
Эчар… как много в этом слове Статья об этапах подбора ИТ персонала, глазами кандидата.Вряд ли тут будет что-то новое для большинства читателей, скорее просто легкое чтение и возможность вспомнить свои истории при общении с HR. Читать далее >>
Релокация в Боснию: нехитрые правила жизни На связи Саша Хрущев, технический директор IT-компании WINFOX. Мы открыли филиал в Боснии и Герцеговине и рассказываем, как жить и работать в этой стране. В этой статье — про то, как жить в этой стране после переезда: правила пребывания, стоимость жизни, жилье, транспорт, яз...
Эпидемиолог предупредила, что салаты можно хранить не более 12 часов Врач-эпидемиолог Тюменской областной инфекционной клинической больницы Наталья Жвавая предупредила о недопустимости долгого хранения новогодних салатов.
Диод в качестве дросселя для управляющего сигнала спутникового конвертера(LNB) Статья посвящена деталям разработки узлов обеспечения функционирования и управления приёмными устройствами спутниковой связи. Не смотря на узкоспециализированное применение данных схемотехнических решений, представленных в данной статье – они так же могут найти применен...
Лучший формат данных, для хранения pandas.DataFrame Привет, Хабр!Меня зовут Вадим Москаленко и я разработчик инновационных технологий Страхового Дома ВСК. В этой статье, хочу поделится с вами, информацией в области хранения данных.На сегодняшний день существует огромное количество форматов для хранения данных, и, используя би...
Как решать реальные задачи при помощи ChatGPT Всем привет! На связи Андрей Нестеров, я занимаюсь компьютерным зрением в применении к мобильным приложениям в компании Friflex. Мы создаем мобильные приложения по оцифровке спорта, которые позволяют распознавать спортивные события и анализировать их. В этой ...
Простые метрики по качеству: как их вести и зачем они нужны Всем привет! Меня зовут Алиса, я — ведущий тестировщик в компании Constanta, и сегодня расскажу вам о простых QA метриках, помогающих отслеживать качество продукта.Если мы вобьем в поисковой строке незамысловатое словосочетание “метрики QA”, то увидим, что почти все ссылки в...
А давайте… по ГОСТу Всем привет! Так исторически складывается, что когда вы разрабатываете государственные системы, в большинстве случаев требуется написание большого количества документации, а в данной ситуации такая документация еще и требует соответствию ГОСТ.Хотелось бы вспомнить одну из па...
Превратности диспетчеризации в Swift Всем привет, меня зовут Сергей, я работаю в компании Joy Dev в должности iOS TeamLead. Эта статья - моя “проба пера” на Хабре. В ней, вместе с обзором видов диспетчеризации в Swift, мы рассмотрим несколько примеров, когда реализация методов в extension может вести себя неожи...
Вирусный дроппер TrueBot и его инфраструктура: история, разбор, анализ Ещё в августе 2022 года исследователи по всему миру зафиксировали резкий всплеск заражений с помощью дроппера TrueBot. В статье разберёмся, откуда взялся этот вирусный загрузчик, как он работает и что делать, чтобы не стать его жертвой. Читать далее
Эволюция синхронного обучения на Хекслете: как понять, какой подход к обучению разработке вам больше подходит Формат обучения — один из факторов, на который можно ориентироваться при выборе образовательных курсов. Одна компания предлагает просто купить программу, где никто не контролирует ваш прогресс. Вторая — ставит жесткие дедлайны, делает строгий контроль успеваемости и отчисляе...
RISC-V продолжает развиваться: перспективное будущее благодаря Китаю и Google Не так давно мы писали о том, что китайцы добиваются включения поддержки архитектуры RISC-V в Android. На момент написания той статьи было неясно, действительно ли представителям Поднебесной удалось добиться желаемого, или это пока только слухи. Стоит напомнить, что тогда р...
Зимой вас постоянно случайно бьёт током? Есть простые способы этого избежать Когда наступают холода, наши кожа и волосы становятся сухими. Из-за этого при прикосновении к одежде либо к дверной ручке можно ощутить удар током. Существует несколько способов избавиться от этой проблемы.
Изучаем mergeMap, switchMap, concatMap и exhaustMap Я Angular разработчик. Это моя первая статья и таких я собираюсь написать много. Пришла эта идея мне в голову потому что иногда, пытаясь найти какую-то информацию в интернете о принципах работы какого-либо инструмента разработки, я не нахожу абсолютно ничего. Это либо ненави...
Реверс инжиниринг в домашних условиях Добрый день, хочу поделиться с читателями своим практическим опытом обратной разработке электронных плат. Эта статья будет ещё интересна предметом своего исследования. На примере я покажу как разобраться в работе устройства. При необходимости можно составить принципиальную э...
[Перевод] Создайте конвейер потоковой обработки событий в реальном времени с помощью Kafka, BigQuery & Looker Studio Создание простого проекта потоковой обработки событий – не самая простая задача. В сегодняшней статье мы расскажем, как можно достаточно просто сделать это при помощи Kafka, BigQuery & Looker Studio. Приложения для потоковой обработки в реальном времени иногда могут бы...
Выбираем 3D сканер: iReal 2E По мере расширения рынка 3D печати спрос на 3D модели быстро растет. Высокотехнологичное 3D сканирование, которое является одним из основных источников создания 3D моделей, становится все более популярным не только в производственной сфере, но также в образовании, науке и ди...
STM32 BluePill + RNDIS, или делаем из нехитрых приспособлений троллейбус… Привет, Хабр. Год назад я круто изменил направление своей деятельности с desktop разработчика на программиста микроконтроллеров. Хочу поговорить о том, как прошел этот год, поделиться своими наблюдениями, рассказать в одном месте о чем никто не рассказывает. А, еще и RNDIS н...
Изучаем PostgreSQL. Часть 1. Знакомимся с архитектурой На сегодняшний день существует большое количество различных систем управления базами данных - СУБД, от коммерческих до открытых, от реляционных до новомодных NoSQL и аналогичных.Одним из лидеров направления СУБД является PostgreSQL и ее различные ответвления, о некотор...
Как добавить Life Activity в существующий проект. Часть I Live Activity был показан Apple на презентации iOS 16 и нового iPhone с Dynamic Island. Обновление доступно только для тех, кто обновил iOS до 16.1. Меня зовут Азиз, я iOS-разработчик в inDrive. В статье расскажу, как мы добавляли Live Activity в наше iOS-приложение. По...
«Хакер»: Как мы с DALL-E 2 делали картинки к статьям DALL-E 2 — нейросеть, которая рисует картинки по текстовому запросу. Гулявшие в этом году примеры работы с ней просто поражают: иногда она рисует, как настоящий художник, и еще и предлагает варианты на выбор! С августа этого года мы периодически использовали DALL-E 2, чтобы ...
Прокси хранилища 1С (IIS, OneScript) В этом посте мы поговорим о том, как избавиться от версионной зависимости, проверять комментарии, вызывать веб-хуки и делать красивые пути. И все это на привычном IIS и понятном OneScript.Для чего, зачем и почемуВо всех командах разработки рано или поздно возникает потребнос...
Алиса (голосовой помощник Яндекса) играет в Шахматы Эта статья - личный опыт, как я "учил" Алису (голосовой помощник Яндекса) играть в Шахматы. Получилось интересно ... Читать далее
Три архитектуры CPU, три архитектуры GPU, четыре техпроцесса и до 16 ядер. AMD представила мобильные Ryzen 7000 Компания AMD представила множество новинок, включая новые мобильные процессоры Ryzen 7000. Было анонсировано пять линеек, причём, если ранее деление было по TDP, то теперь AMD пересмотрела подход. Как можно видеть на слайде, речь идёт о сериях с разными а...
CES 2023: AMD представила мобильные Ryzen 7000, RX 7000 и десктопные процессоры Ryzen 7000 V-Cache Компания AMD в рамках выставки CES 2023 анонсировала мобильные процессоры серии Ryzen 7000, мобильные GPU RX 7000, а также более доступные десктопные процессоры Ryzen 7000 и флагманские Ryzen 7000 V-Cache. Многие новинки появятся на рынке уже в феврале 2023 года. Ryzen 7000...
[recovery mode] Интеграция Primefaces в приложение на Spring Boot. Часть 1 — настройка зависимостей и базовый проект В данной статье описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot. Читать далее
На рынок вышел первый продукт на основе 48-ядерных CPU Baikal-S. Это СДХ компании «Элпитех» Российская компания «Элпитех», как сообщает ресурс CNews, выпустила первую на рынке систему хранения данных, основанную на серверных процессорах Baikal-S. Это новейшие CPU в линейке, насчитывающие 48 ядер Cortex-A75 и производящиеся по техпроцессу 16...
Часы реального времени — RTC (real time clock) на одноплатном компьютере. На примере Repka Pi 3 — аналоге Raspberry Pi 3 Эта статья посвящена решению задачи добавления часов реального времени на примере конкретных и широко доступных модулей для RTC и на примере одного конкретного подхода к реализации и алгоритму работы и является скорее примером, демонстрирующим общий принц...
Оптимизация поиска по большому полю Вновь привет, уважаемые читатели Хабра! Работая с одной из систем хранения метаданных о файлах в «Лаборатории Касперского» вспомнил, что давно хотел написать об оптимизации поиска по большому полю в базах данных. О чем далее и расскажу более подробно. В данной публикации бу...
Как работают text2image модели? Вы, наверное, слышали про dalle-2, midjourney, stable diffusion? Слышали о моделях, которые по тексту генерируют картинку. Совсем недавно они продвинулись настолько, что художники протестуют, закидывая в стоки картинки с призывом запретить AI, а недавно, вообще, в суд подали...
Лучшие библиотеки Java для тестирования в 2023 году Большинство из нас стремятся быть более эффективными, действенными и содержательными в тестировании. И мы делаем все необходимое для этого. Лучший способ сделать это — проводить автоматизированное тестирование вместо ручного. И, конечно же, мы хотели бы знать все современные...
[Перевод] Мощь декораторов TypeScript на живых примерах. Декорирование методов класса Декораторы — инструмент декларативного программирования. С их помощью можно легко и элегантно добавить к классам и членам класса метаданные. На основе этих метаданных можно расширять или изменять поведения классов и членов класса, не изменяя при этом кодовую базу, к которой ...
DDoS-атаки «для самых маленьких» Привет читающим этот длиннопост. Давно ничего не писал на Хабре, но 2022 год выдался достаточно непростым в плане DDoS-атак. По роду деятельности, я столкнулся с большим количеством вопросов о том, что такое DDoS-атаки, нужно ли с ними бороться (WTF??? конечно, не нужно, пус...
Автоматизируем домашний медиацентр на Synolgy NAS Приветствую читатели хабра, в этой статье я бы хотел поделиться своим опытом организации домашнего медиацентра с торрент качалкой на Synology NAS: sonarr + radarr + jackett + qBittorrent. Читать далее
[Перевод] Безумное расследование разработчика: кто-то притворяется мной Некоторые онлайн-сервисы — например, социальные сети — просят сообщать в их службы поддержки о случаях, когда пользователь выдает себя за другого человека. Зачастую на такие жалобы реагируют оперативно, и инциденты удается устранить до наступления серьезных последствий. Одна...
Что мы знаем про UX? Психологические аспекты пользовательского опыта TL;TR• единого понимания UX нет• отсутствует общая теория, объясняющая структуру и закономерности UX• в команде стоит явно договорится о том, как именно понимается UX и чем он будет измеряться • конкретные результаты практического исследования UX зависят от конкретных и...
Торговые роботы на Python Привет! На связи команда Тинькофф Инвестиций. В этой статье рассказываем про Tinkoff Invest API, объясняем, как написать робота на Python, и разбираем плюсы этого языка в сравнении с другими. А вместо заключения ловите гайд по созданию робота на примере работы победителя наш...
Упрощаем себе жизнь при разработке интерфейса взаимодействия приложения и БД Привет, %username%! Меня зовут Антон Жеронкин, я Data Scientist в Сбере, участник профессионального сообщества NTA. Сегодня поговорим о том, как можно сделать лучше жизнь разработчиков, которые часто сталкиваются с базами данных. Дело в том, что, когда разработчики вручную п...
3 ошибки хорошего Product Manager С 2013 года я работаю в IT и прошла путь от Account manager до Senior Product manager в таких компаниях как МегаЛабс (Мегафон), Билайн, X5 Retail Group. С 2017 года я начала собирать свои команды в роли PO (до этого работала под руководством других PM или PO) и все это время...
[Перевод] Как собрать, покрыть тестами и опубликовать TypeScript-пакет в npm в 2022 году В этой статье мы с вами создадим с нуля и опубликуем в NPM TypeScript-пакет, не забыв про Jest для покрытия тестами.Мы инициализируем проект, настроим TypeScript, напишем для него тесты в Jest и опубликуем его в NPM. Читать далее
[Перевод] Продолжение о типах кабелей USB-C: переходники вне стандарта Давайте будем откровенны — одних только кабелей USB-C — USB-C недостаточно. Существует и много других видов, которые могут потребоваться в повседневной жизни, пока в нашем обиходе присутствуют устройства без разъёма USB-C. Однако в спецификации учитываются далеко не все тип...
Американские ученые предложили новый метод 3D-печати металлами в микроскопических масштабах Инженеры Калифорнийского технологического института (Caltech) придумали новый способ 3D-печати металлических структур с разрешением в десятки микрометров. Идея основана на проверенном методе построения жертвенных скаффолдов с металлическими наполнителями для последующего отж...
Prostore — простой Event sourcing + CQRS фреймворк На данный момент на рынке мало Event sourcing + CQRS фреймворков. А те, что есть, непопулярны и имеют слабую поддержку, поэтому многие создают свои in-house решения. В этой статье расскажу о выполненном командой «Programming Store» проекте Prostore, который может послужить ...
Запускаем собственный VPN сервер с биллингом Данная статья позволит Вам настроить свой собственный сервер для оказания услуг VPN. Вы получите кабинет (Web интерфейс), в котором Ваши друзья и (или) клиенты, смогут сами себе заказывать VPN ключики, отслеживать дату их истечения и при необходимости производить их оплату. ...
Javarush, так ли полезно спустя 9.5 лет? Про Javarush, писали уже многие, в этой статье хотелось бы выразить свое мнение буквами и символами. Как вы уже наверняка знаете, Javarush - это весьма интересный проект, который предлагает обучение языку программирования Java, здесь вы изучите основы, решая простые (и не оч...
Self-Supervised Learning. Обучение на изображении и его аугментациях Ранее мы разобрали, что за зверь такой SSL и какой линейкой его можно померять. Также окунулись в историческое прошлое SSL методов глубокой древности (4 года назад
King of Tanks это как Worms, только на танках King of Tanks — мобильная игра, которая доступна в App Store и Google Play Индии и Великобритании. Игрокам предстоит участвовать в мультиплеерных схватках, только перед этим надо собрать отряд из футуристичных танках. В King of Tanks мультяшная 2D-графика и ручное управлени...
Декаплинг: качество питания микросхем Чтобы цифровые микросхемы работали правильно, рядом с ними должны стоять конденсаторы по питанию. В этой статье разбираемся, насколько те или иные решения при разработке (количество конденсаторов, их ёмкость, расположение и трассировка) могут повлиять на работу устройства. П...
Интеграция Primefaces в приложение на Spring Boot. Часть 2 — Готовим контекстное меню для главной страницы В этой статье описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot.Первая часть Читать далее
Использование скриптов на языке Python в Платформе nanoCAD 23 Рассмотрим действия, необходимые для включения поддержки скриптов на языке Python в Платформе nanoCAD. В статье описана процедура настройки расширения Python.AXScript.2, а также приведены примеры использования команд PY и ‑PY. Пример скрипта использу...
Пять простых способов легко сжечь праздничные калории Из-за праздничных блюд и напитков можно довольно быстро набрать лишние килограммы. Но есть весёлые и простые способы от них избавиться.
Оплачиваем покупку через СБП без мобильных приложений Понадобилось мне как-то оплатить один товар в интернет магазине. Среди способов оплаты были Webmoney, qiwi wallet, СБП, а также ворох каких-то малопонятных мне криптовалют. Оплату банковской картой по каким-то причинам продавец не предлагал.Недолго думая я выбрал СБП, ожидая...
Компонентный подход. Реализуем экраны с помощью библиотеки Decompose Это вторая часть из серии статей про компонентный подход. Если вы не читали первую часть Компонентный подход. Боремся со сложностью в Android-приложениях, то рекомендую начать с нее.Ранее мы обсудили, что компонентный подход — это способ организации приложения в виде иерархи...
Бронь от армии, оплата перелёта в Россию или повышение налогов и запрет на работу за рубежом? В России готовят пакет мер по возращению уехавших из IT-специалистов Как сообщает «Коммерсантъ» со ссылкой на участников IT-рынка, Министерство цифрового развития, связи и массовых коммуникаций Российской Федерации (Минцифры России) готовит пакет мер по возращению уехавших из России IT-специалистов. В качестве возможных ...
[Перевод] Что ждёт дата-инжиниринг в 2023 году? Семь прогнозов Количество поисковых запросов по профессиям Что таит в себе будущее дата-инжиниринга? В этой статье я поделюсь своими прогнозами на 2023 и последующие годы. Статьи с прогнозами на следующий год — это банально, но у них есть своя цель. Они помогают нам подняться над повседн...
Бесплатный мультиязычный чат для сайта на Tawk + Notion + Telegram + chatGPT + GPT-Index Вы хотите общаться с посетителями сайта на всех языках и при этом чтобы вам помогал обученный на вашей базе знаний chatGPT?Я следил за различными видами использования chatGPT с момента его выхода. Предлагаемое в статье решение я еще не встречал и поэтому думаю оно будет кому...
Создание GUI-приложения в MATLAB. Часть 2 В предыдущей статье мной были рассмотрены возможности среды GUIDE входящей в MATLAB, ее инструментарий сильно устарел как по функциональности так и по дизайну. Такого инструментария недостаточно для реализации более-менее крупных проектов, которые подразумевают бол...
Применение методов, лежащих в основе генетических алгоритмов, для обеспечения проектирования упаковки Одной из частных задач, с которыми может столкнуться конструктор при проектировании упаковки – это задача предварительно скомпоновать упаковываемые изделия с целью последующего определения габаритов контейнера (ящика), необходимого для упаковки данных изделий. С такими задач...
Переносим свою картину мира в чат-бота на базе GPT-3 Думаю, все уже наслышаны о потрясающих возможностях ChatGPT и GPT-3, многие уже вдоволь наигрались с ними, а новые стартапы на их основе льются на нас каждый проливным дождём! Возможности ChatGPT в решении некоторых текстовых задач потрясают, порой кажется, что имеешь дело с...
5 способов выбрать тему для выступления на ИТ-конференции Каждый спикер хочет, чтобы его выступление было полезным и захватывающим. В то же время на многих конференциях есть скучные доклады, которые тяжело дослушать до конца. Почему так получается? Секрет в том, что за интересным выступлением всег...
Российские базы знаний. Сага: рассвет Всем привет! В прошлой статье я попробовала сделать поверхностный обзор российского вики ПО на основе информации с официальных сайтов. Благодаря обратной связи от дорогих читателей родился этот, уже более глубокий и детальный обзор. Читать далее
Как мы применяли исследования при разработке сервиса Европротокол онлайн В прошлом году мы с командой мобильного приложения «Госуслуги Авто» выпустили новый сервис — оформление ДТП без участия инспектора ГИБДД. В этой статье я расскажу, как мы разрабатывали сервис, какие грабли собрали, чему научились и каких результатов достигли. Читать далее
Кастомизация диалоговых окон WixToolSet на примере windows installer и executable packages Приветствую!В этой статье я покажу вам свой вариант использования набора утилит WixToolSet для создания кастомных диалоговых окон с возможностью получения предустановленной информации (пароли, явки и прочие параметры). И приведу пример использования кастомных окон в простом ...
Минцифры против запрета на удалённую работу из-за границы Минцифры не поддерживает введение законодательного запрета на удалённую работу в ИТ-компаниях для сотрудников, находящихся за границей.
5 неочевидных способов улучшить иностранный язык с помощью ChatGPT Кто-то просит нашумевшего чат-бота сгенерировать код, кто-то — написать песню в стиле The Queen. Ну а я — как лингво-коуч и гик — решила упороться и посмотреть, поможет ли нашумевшая система OpenAI прокачать иностранный язык. Спойлер: очень даже.Протестировала на себе нескол...
Как собрать самодельный принтер/плоттер Картинка youtube-канал «stefanopadoan art» Есть один весьма примечательный вид ЧПУ-устройств, который не оставит равнодушным никого — самодельный принтер. Мало того, что он является хорошим демонстратором принципов числового программного управления, задействуя все основные...
Из FPGA-дизайнера в ASIC: четыре личных истории и анонс курса переподготовки от YADRO Microprocessors Во всем мире и в нашей стране резко возрос интерес к разработке микроэлектроники, ключевым элементом которой являются системы на кристалле. Разработка этого класса устройств требует глубоких специальных знаний и опыта, а специалистов такого профиля в индустрии не хватает. Пр...
Диагностика ВИЧ с патентным скандалом и Нобелевской премией. Часть II В первой части нашей статьи мы подробно рассказали об обнаружении ВИЧ и тех жестких патентных спорах, что последовали за этим событием. В продолжении мы коротко расскажем о современных тест-системах и терапии. Читать далее
[Перевод] Эксплойтинг браузера Chrome, часть 2: знакомство с Ignition, Sparkplug и компиляцией JIT в TurboFan В моём предыдущем посте мы впервые погрузились в мир эксплойтинга браузеров, рассмотрев несколько сложных тем, которые были необходимы для освоения фундаментальных знаний. В основном мы изучили внутреннюю работу JavaScript и V8, разобравшись, что такое объекты map и shape, ...
192-ядерный RISC-V серверный процессор Veyron V1: что это за чип и какие у него возможности? Среди процессоров на базе архитектуры RISC-V пополнение. Новый чип, разработанный компанией с сотрудниками из Intel, AMD и некоторых других известных производителей электронных компонентов, предназначен для корпоративного сектора. Он выполнен по 5 нм техпроцессу, у него 192...
Настройка Yubikey для ssh в Windows и WSL Когда я стал счастливым обладателем устройства Yubikey 5 nfc и узнал, что при помощи него можно авторизовываться по ssh, я столкнулся с множеством статей про настройку подобной связки на unix-системах… И с полнейшим отсутствием адекватного материала про Windows. Разобравшись...
[recovery mode] Как доработка UX помогла сократить время прохождения сценария заказа еды на 70%. Часть 3 Всем привет, мы дизайнеры студии Focus. Во второй части статьи мы рассказывали, как проводили тестирование и готовились к нему. А также, как провели небольшое исследование конкурентов. В заключительной части мы покажем обновленный дизайн приложения по доработанному сценарию....
КриптоПро в Linux контейнере для использования КЭП от ФНС С Нового Года в России от Индивидуальных Предпринимателей (ИП) и директоров Обществ с Ограниченной Ответственностью (ООО) требуют использовать Квалифицированную Электронную Подпись (КЭП) выданную Федеральной Налоговой Службой (ФНС).В этой статье речь пойдёт о том, как работа...
[Перевод] Почему стоит использовать лимиты CPU в Kubernetes Эту статью я написал в противовес статье “For the love of god, stop using CPU limits on Kubernetes” (Ради всего святого, прекратите использовать в Kubernetes лимиты CPU). Мне та статья понравилась, и я считаю её хорошим чтивом. Более того, я согласен с высказанными в ней р...
Как донатить в мобильные игры из России? После введения санкции, геймеры из России остались отрезаны от всего игрового сообщества, нам запрещают покупать игры, играть в них и это лишь часть запретов. Конечно некоторые наверняка скажут, ну не хотят они наши деньги, пожалуйста. Однако этот вариант подходит далеко не ...
Фаскосниматель для шпилек. Доработанная версия. Приветствую, товарищи. На днях выкладывал фаскосниматель. Уже после написания статьи пришла в голову пара идей по доработке.Во-первых, уменьшил общий диаметр, толщину стенки и зазор до барабана. Теперь можно обрабатывать болты от 10мм. Единственный минус - если долго обтачив...
[Перевод] Genie Builder v0.2: ускорьте разработку вашего приложения на Julia В этой статье представлен перевод руководства: "How to quickly turn your Julia code into a web app with Genie Builder". В статье пойдет речь о новом инструменте быстрой разработки web-приложений на основе Ginie Framework - платформы для интернет приложений на языке Julia. ...
Intel и Microsoft возобновили обновления в России После введения санкций российские пользователи не могли загружать программное обеспечение Intel и Microsoft
С Xiaomi было лучше: у Black Shark огромные проблемы, компания сократила большую часть штата, в продаже осталась одна модель телефона Сообщается, что смартфоны Black Shark 5, Black Shark 5 Pro, Black Shark 5 RS и другие модели распроданы на официальном сайте Black Shark. В магазине Jingdong в наличии осталась только один смартфон данного производителя, Black Shark 5 RS, оснащённый 8 ГБ оперативной и 2...
Такие разные модели монетизации сайта: CPM, CPA, CPC, CPI. Какая выгоднее? Всем привет, это ADlook! Сегодня статья из разряда "ну, это база". Поговорим о моделях монетизации и разберёмся, с какой лучше работать в разных случаях: если нужно сэкономить на конверсиях, повысить узнаваемость бренда, увеличить охват и многое другое. Подготовили шпар...
Большое сравнение нейросетей Привет, меня зовут Юля, 85GB и я веду свой канал по нейронкамВ этой статье я рассмотрю по различным параметрам графические нейронки: DALL-E 2, Midjourney, Stable Diffusion, Кандинский и Шедеврум. Постараюсь разложить всё максимально чётко и ёмко, дать оценку по каждому блоку...
ТОП-10 экспортеров для Prometheus 2023 Статья Основы мониторинга (обзор Prometheus и Grafana) оборвалась на самом интересном месте. Автор предложил искать и использовать актуальные экспортеры, а читатель такой – окей, где референс? Что ж, давайте рассмотрим топ-10 наиболее полезных экспортеров на начало 2023 года...
Proton представила сервис хранения паролей Proton Pass Компания Proton, создавшая популярный сервис Proton Mail, анонсировала запуск нового менеджера паролей Proton Pass. Хотя сервис в конечном итоге станет бесплатным для всех пользователей, на данный момент он доступен только в качестве бета-версии, так что сейчас он доступен д...
Как я написал Telegram-бота для учёта подписок Как я написал Telegram-Бот для учёта подписокНаписал Telegram-Бот для учёта подписок и регулярных расходов на Python и Yandex. CloudОн умеет предупреждать по 3 основным сценариям:1. Окончание пробного периода.2. Ежемесячная подписка.3. Ежегодная подписка.В статье расскажу пр...
Как я запустил свою первую мобильную игру и провалился В августе я уволился с работы, чтобы запустить свою первую мобильную игру. Мой проект провалился, но за 2 месяца я прошел все этапы создания игр. В статье рассказываю про инструменты, как планировал работу, настраивал монетизацию, запускал рекламу, анализировал данные и сотр...
Мобильные процессоры Intel Meteor Lake получат поддержку аппаратного декодирования AV1 В новых процессорах Intel Meteor Lake, преемниках Raptor Lake, будет встроенный аппаратный декодер AV1. Это обеспечит поддержку декодирования видео с высоким разрешением и повышение производительности до 50% по сравнению с H.264. Это подтвердили в Intel. Сами процессор...
Поверхность по сети кривых Продолжаем серию постов о сложной математике, которую невозможно описать простыми словами. В этот раз мы поговорим о функционале поверхностного моделирования в геометрическом ядре C3D Modeler – поверхности по сети кривых.Заранее предупреждаем. Дальше вам встретится множество...
10 инструментов ИИ с бесплатным тестовым доступом, которые пригодятся в работе В этой статье собрано 10 инструментов на основе искусственного интеллекта, большинство из которых просты в использовании и бесплатны для тестирования.Всем привет! Меня зовут Маруся, я аналитик данных, веду блог в телеграме Аналитика и growth mind-set.Практически все инс...
Больше не Pentium, не Celeron — и всего с четырьмя малыми ядрами. Intel N95 засветился в бенчмарке Компания Intel готовится представить на CES 2023 множество новых процессоров, включая представителей не только линейки Raptor Lake, но и Alder Lake. И сегодня в Сети засветился бюджетный Intel N95. Название необычное, потому что, напомним, компания отказалась от ...
Warzone Mobile ждёт большое обновление в начале февраля Warzone Mobile взаимосвязана со своими старшими сёстрами — Call of Duty Modern Warfare II и Warzone 2.0. Вчера мы рассказали про общий чат на разных платформах, а сегодня поговорим про крупный патч для Warzone Mobile. Инсайдеры заявляют, а Activision подтверждает, что 2 сез...
Гранулярность микросервисов. Насколько мелко нарезать? Привет, Хабр! Меня зовут Руслан Сафин и я расскажу про микросервисы и как определить необходимую гранулярность. Я работаю техническим директором в Byndyusoft. Развиваю техническую культуру и участвую в проектах в роли IT-архитектора, а ещё преподаю авторский курс по IT-архит...
Зеркалирование GitHub-проектов в 2023 году По ряду причин я решил зеркалировать свои открытые GitHub-проекты на другие платформы совместной разработки. Сделать это оказалось не так просто. В этой короткой статье описаны трудности, с которыми мне пришлось столкнуться, и итоговое рабочее решение. Читать далее
[Перевод] Ansible: 30 самых важных модулей для DevOps-профессионалов (часть 1) Модули – это дискретные единицы кода, которые можно запускать с помощью командной строки или с помощью плейбука для того, чтобы вносить определенные изменения в целевой узел или собирать с него информацию. Ansible реализует каждый модуль на удалённом целевом узле, а также со...
Что нам несет Python 3.12 Переписали виртуальную машину на новый DSL И теперь ее гораздо проще менять, оптимизировать и проводить эксперименты.В качестве примера, можно посмотреть на попытку добавления register-based интерпретатора. Другой пример, что часто два опкода идут вместе и выполняются послед...
[Перевод] The Best Golang framework: no framework? Вольный перевод статьи на ресурсе threedots.tech от Robert Laszczak - главного инженера в SlashID, сооснователя Three Dots Labs и создателя популярной Golang-библиотеки Watermill.На протяжении некоторого времени я занимался руководством группы Go-разработчиков и одним из са...
Unity 2022.2 продолжает интеграцию async await В Unity 2022.2 был сделан ещё один небольшой шаг в сторону поддержки async-await, анонсированный еще в мае 2022 года в статье https://blog.unity.com/technology/unity-and-net-whats-next. В UnityEngine.MonoBehaviour было добавлено свойство destroyCancellationToken, которое поз...
Что под капотом «ответов на вопросы» Маруси? Привет, это команда ответов на вопросы Маруси.Этот материал состоит из двух частей. Это вторая часть (первая часть). В ней мы чуть глубже копнём технический аспект того, как устроены ответы на вопросы Маруси.В первой части мы поверхностно рассмотрели механизм, позволяющий на...
Иронии автоматизации Вероятно, один из главных в мире текстов об автоматизации — статья «Ironies of Automation» когнитивного психолога Лизанны Бейнбридж, опубликованная в 1983 году в журнале Automatica. На неё ссылаются более 1800 других академических работ, про неё есть страница в Википедии, её...
Самые распространенные проблемы Telegram и способы их решения Никто не будет спорить, что Telegram — самый безопасный и функциональный мессенджер. Но даже в таком популярном и продуманном приложении вы можете столкнуться с разными проблемами. У кого-то совсем не работает Телеграм, кто-то жалуется на долгую загрузку видео, а кому-то ни...
В Google Play появилась функция «Запрос на покупку». Дети будут запрашивать у родителей разрешение на покупку в сервисе Google представила новую функцию — «Запрос на покупку». Теперь участники семейных групп, у которых не настроен общий способ оплаты покупок приложений или микротранзакций, смогут назначать администратора и запрашивать у него разрешение на покупку.
[Перевод] Условные выражения в CSS Мне нравится думать о CSS как о языке дизайна с условными выражениями. На протяжении многих лет CSS был известен как способ стилизации веб-страниц. Однако сегодня этот язык эволюционировал настолько, что в нём уже есть правила условных выражений. Любопытно то, что эти прави...
Как измерить ESR конденсатора при помощи FNIRSI DSO-TC2 Необходимо заметить, что данный пост - это моё мнение, основанное на теоретических выкладках, проверить которые на практике я пока не удосужился.ESR - Equivalent Series Resistance - один из параметров конденсатора, характеризующий его активные потери в цепи перемен...
Основы мониторинга (обзор Prometheus и Grafana) Мониторинг сегодня – фактически обязательная «часть программы» для компаний любых размеров. В данной статье мы попробуем разобраться в многообразии программного обеспечения для мониторинга и рассмотрим подробнее одно из популярных решений – систему на основе Prometheus...
Поиск специалиста, как быть и что делать? Вначале немного о себе. Уже более 14 лет являюсь руководителем ИТ отдела в бюджетной муниципальной организации. Отдел небольшой, три человека и начальник, т. е. я. На самом деле людей еще меньше, один из сотрудников фактически исполняет работу д...