Социальные сети Рунета
Суббота, 1 октября 2022

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

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

Используем R lang в SQL Server В продолжение предыдущей статьи поговорим о том, как использовать SQL Server Machine Learning Services. В этой статье приведены варианты использования на языке R. Для чего должна быть установлена R 4.2.1(https://cran.r-project.org/src/base/R-4/) Также нам потребует...

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

Варианты использования Java ML библиотек совместно с Spring, Docker, Spark, Rapids, CUDA В данной статье рассматривается способ использования GPU nVidia с технологией CUDA в Docker-контейнерах для распределенной тренировки моделей машинного обучения на нескольких машинах. Цель статьи - показать вариант использования Big Data Tool Apache Spark в Docker-контейнера...

Использование ООП подхода для рассылки писем через Unione (php, Yii2) В данной статье мы бы хотели описать использованный нами ООП подход к отправке писем через данный сервис рассылок на php. Суть которого заключается в создании объекта инкапсулирующего данные необходимые для отправки письма и методы работы с ними. Кажется что это довольно про...

Как проверяют физических лиц в СБ компаний методом OSINT Чтобы обезопасить себя от влияния «человеческого фактора» и снизить любые риски, связанные с потерей денег или репутации службы безопасности компаний прибегают к различным методам. Как ни крути, а это их прямая обязанность. Если в компанию, скажем, придёт человек, который на...

Asterisk. Доставка SIP Message после возврата абонента из off-line'а В предыдущих статьях я описал как настроил и собрал GSM <> SIP систему на базе Asterisk. В этой статье расскажу как быть с входящими SMS, если получатель не в сети. Читать далее

Как я восстанавливал аудиозапись Adobe Audition 1.5 из временного файла Звуковым редактором Adobe Audition версии 1.5 пользовались многие пользователи старых ПК. Некоторые пользуются им до сих пор из-за его простоты и удобства, несмотря на наличие более свежих версий или другого подобного современного софта. В своих предыдущих статьях я неоднокр...

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

Руководство по CMake для разработчиков C++ библиотек Данное руководство позволит читателю составить полную картину того, как организовать сборку C++ библиотек с использованием современных возможностей CMake. Предполагается, что читатель имеет представление о базовых понятиях из мира CMake и динамических/статических C++ библиот...

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

Materialized Path – создаём своё первое дерево Всем привет! Меня зовут Хусрав, я бэкенд разработчик в компании Bimeister.В этой статье я бы хотел бы поговорить о способе поиска родительских и дочерних элементов структуры посредством PostgreSQL Materialized Path.Статья является вводной и рассчитана на людей, незнакомых с ...

Поиск открытого API сайта или Ускоряем парсинг в 10 раз Поиск открытого API сайта или Ускоряем парсинг в 10 раз Цель статьи — описать алгоритм действий поиска открытого API сайта. Целевая аудитория статьи — программисты, которым интересен парсинг и анализ уязвимостей сайтов. В статье рассмотрим пример поиска API сайта edadeal.ru...

Обработка исключений в Java в функциональном стиле. Часть 2 Обработка исключений в Java в функциональном стиле. Часть 2. В предыдущей статье была рассмотрена функциональная обработка исключений с помощью интерфейса Try<T>. Статья вызвала определенный интерес читателей и была отмечена в "Сезоне Java". В данной статье а...

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

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

[Перевод] CVE 2022-0847: Исследование уязвимости Dirty Pipe ПредисловиеДанная статья является переводом англоязычного исследования, посвященногоразбору уязвимости Dirty Pipe и непосредственно эксплоита, позволяющего еювоспользоваться для локального повышения привилегий.ОригиналВведениеУязвимость Dirty Pipe была обнаружена в ядре Linu...

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

Building generator in Unity Генератор зданий в ЮнитиВ данной статье описан процесс создания генератора зданий внутри Юнити с объяснением логики и примером подходящих моделей. Читать далее

[Перевод] Грокаем функторы Это перевод статьи из целого цикла постов "Грокаем функциональное программирование" Мэта Торнтона. Я позволил себе немного поменять порядок постов. В оригинале, функторы идут после монад, что мне показалось неверным. Всякая монада - это функтор, но не всякий функтор - это мо...

Поиск объектов на видео с помощью Python В данной статье хочу рассказать про поиск объектов на видео с помощью Python и OpenCV. Помимо обычных видео, можно использовать и камеры.Полный код и все исходники можно найти на моем Github.Данный проект является продолжением моей предыдущей статьи - Поиск объекто...

Все люди — НПС в компьютерной игре? Упомянув, несколько лет назад, в опубликованной на Хабре юмористической статье «12 способов» о том, что значительная часть населения Земли является НПС (от англ. Non-Player Character) я не собирался возвращаться к этой теме. Но идея оказалась прилипчивой — раз возникнув, она...

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

Oauth 2.1 spring authorization server + SPA Доброго всем дня уважаемые хабровчане!До сего момента я являлся лишь читателем этого замечательного ресурса, но вот кажется и пришло время написать мою первую статью.Oauth 2.1 - дальнейшее развитие популярного фреймворка авторизации Oauth 2.0, который на момент написания ста...

Переезд в США от визы О-1 до гринкарты: стоимость эмиграции, сроки, ошибки и советы Пять лет назад, в июле 2017 я впервые рассказал на Хабре свою историю переезда в США по визе для талантливых специалистов. В июле уже этого года эта история, наконец, завершилась получением гринкарты. Поскольку первая статья вызвала достаточно большой интерес, было много воп...

[Перевод] Распространенные ошибки при написании плагинов Joomla 4 Перевод недавней статьи профессионального PHP-разработчика, руководителя Akeeba Ltd и ведущего разработчика Akeeba Backup для WordPress, Joomla! и standalone Николаса Дионисопулоса.В статье он делится своим опытом отладки плагинов Joomla 4, написанных разными разработчиками...

[Перевод] Ошибка в stacktrace из продакшена В этой статье я расскажу про исключительную ситуацию, которая произошла с одним исключением в продакшене Android приложения. Читать далее

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

Голос в мобильных сетях. От чего зависит качество? Привет, Habr! На связи МегаФон и в данной статье мы подробно расскажем всё про передачу голоса в мобильных сетях. Что определяет качество речи? Какие речевые кодеки используются в мобильных сетях и их отличия? Как оператор измеряет и контролирует качество реч...

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

Управление учетными записями в Linux. Часть 2. Не/правильная настройка доступа В предыдущей статье мы рассмотрели вопросы хранения учетных данных в ОС семейства Линукс. Теперь перейдем к обсуждению вопросов правильной и не очень настройки прав доступа к различным объектам операционной системы.Напомню основные моменты относительно учетных записей в Лину...

Экономим на Azure SQL Databases Всем привет! В данной статье я расскажу о том, как наша компания смогла сэкономить за счет внедрения Azure SQL Elastic Pool. Дополнительно будут примеры Azure REST API для энумерации SQL Servers, для энумерации SQL databases и для получения метрик. Самые пытливые в конце ста...

Туториал по настройке почты exim4 в облаке Yandex Эта статья представляет собой материал, который предназначен для экономии времени системных администраторов, столкнувшихся с проблемой работы почты в облаке yandex. В этом материале мы рассмотрим настройку почты с использованием exim4 и 360.yandex. Читать далее

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

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

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

[Перевод] Экзибит, прокачай мой трансформер или Основные идеи по улучшению модели трансформера с 2018 по 2020 год (часть 1) В июне 2021 года вышла статья “A Survey of Transformers” - обзор различных нововведений, сделанных с применением архитектуры “трансформер” после ее появления в материале “Attention is all you need”.Этот материал особенно актуален сейчас. Приведенные подходы и архитектуры нач...

Документация в Kotlin-коде и CI/CD Всем, кто создавал библиотеки или сервисы с публичным API хорошо знакома боль, когда документация отстает от изменений в коде и рутинный процесс обновления документации на сайте становится настолько неинтересным, что про него просто забывают. Можно ли как-то автоматизировать...

[Перевод] Как работают браузеры, часть 3: деревья специальных возможностей и рендеринга Это заключительная статья из цикла статей о работе браузеров. Ссылка на первые два перевода:Часть 1: навигация и получение данныхЧасть 2: парсинг и выполнение JSСтатьи предназначена для начинающих разработчиков и тех, кто интересуется разработкой. Здесь нет глубоких техничес...

Технологии NiFi & Kafka: применение (часть 1) Добрый день, меня зовут Рустам Ахметов, я архитектор ГК Юзтех и интеграционной шины данных UseBus. В этой статье я расскажу о нашем опыте разработки продукта и выборе технического стэка. Хочу добавить, что я буду давать лишь поверхностный Helicopter view на продукты и их ана...

Объясняю Pattern Memento (Снимок) В начале своего разработческого пути, меня часто посещало желание понять и принять паттерны. Но в интернете, этот материал крайне сложен для начинающих программистов. Поэтому я решил создать цикл статей, в которых разберу все GoF паттерны.Первым разобранным шаблоном будет Сн...

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

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

Две главные ошибки при использовании MediatR MediatR является, безусловно, очень успешным и популярным open-source проектом, который глубоко проник в недры коммерческой разработки. Однако, сколь популярен инструмент столь много способов его применения рождается среди сообщества. В этой статье я покажу два самых главных...

Проблема с использованием тега img и picture в Safari Данная статья описывает баг и его решения в контексте ReactJS + Server-Side Rendering, но это также актуально для всех фреймворков большой тройки так и для чистого JS.При разработке сайта мы столкнулись с проблемой, что при использовании тега <img> на некоторых страниц...

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

8 сервисов для зарубежных покупок в 2022 году Эта статья стала итогом моих экспериментов в 2022-ом. С начала года я искала сервисы, которые помогают выкупать товары в интернет-магазинах за рубежом и доставляют их в РФ. Прочитав кучу отзывов (спойлер: в основном плохих), я попробовала заказать товары через так назыв...

Сравнение Quartz, kagkarlsson и кастомной реализации для запланированного задания в реактивном Spring Boot приложении Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям, которые были опред...

Работа с микросхемой АЦП MCP3301 Микросхема MCP3301 представляет собой 13-битный низкопотребляющий (до 450 мкА в активном режиме при питании  от источника 5 В) аналого-цифровой преобразователь (АЦП) последовательного приближения с дифференциальным входом и возможностью передачи данных по SPI-интерфейсу...

Задача о 8-ми ферзях. Свежий взгляд. Шаг 1 + 1/2. Сокращаем количество шагов перебора в три с половиной раза Данная статья в большей мере является уточнением моей предыдущей статьи по оптимизации перебора на шахматной доске с ферзями.https://habr.com/ru/post/679200/Оптимизация перебора в данной задаче, это не только лишь хардкорное скоростное решение на базе 64-битной арифметики и ...

Задачи для средней школы. Скрещивание Microsoft Active Directory (LDAP) и Hashicorp Vault на домашнем стенде, часть 1 Такой низкокачественный лонг лонг рид я писать не хотел, меня заставили, но сначала в комментариях задали вопрос про доучивание, затем эта статья вызвала у меня некое недоумение своим обрывом на полуслове. Поскреб по амбарам, нашел черновик заметки по дообучению коллег от ур...

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

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

[Перевод] Обзор UI-инструментов для мониторинга и управления кластерами Apache Kafka Прим. перев.: автор этого материала — Герман Осин, старший архитектор решений в Provectus. Осин сравнивает функциональность восьми UI-инструментов, которые помогают решить проблемы наблюдаемости и мониторинга Apache Kafka. Стоит отметить, что обзор скорее вводный. Он будет ...

Разбираемся с EXCEPTION_CONTINUE_EXECUTION Механизм структурированной обработки исключений (Structured Exception Handling, SEH) позволяет не только "отловить" сгенерированное исключение, но и вернуться к инструкции, вызвавшей сбой и попробовать выполнить ее заново. В данной статье разбирается использование механизма ...

Ресерч свежего Excel документа с Loki malware внутри Вечер добрый, Хабр! Решил немного изучить свежий сэмпл малваря LokiBot (31.08), который содержится в Excel документе и используется для фишинговой рассылки. В этой небольшой статье основное внимание уделено практической части поиска, извлечения и небольшого разбора поведения...

Концепция локального изготовления изделий (описание) НИМАНИЕ! ЛОНГРИД! Данная статья является видением автора и основывается на личном опыте и накопленной информации. Применение основной идеи данной статьи несет предположительный характер. Спасибо за внимание.Концепция локального изготовления изделий - это модель производства ...

Глубокое погружение в Java Memory Model Я провел в изучении JMM много часов и теперь делюсь с вами знаниями в простой и понятной форме. В этой статье мы подробно разберем Java Memory Model (JMM) и применим полученные знания на практике. Да, в интернете накопилось достаточно много информации про JMM/happens-before...

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

Зачем мы сделали собственный контроллер для копирования секретов в Kubernetes Делимся нашей внутренней разработкой — Kubernetes-контроллером mirrors. Мы создали его внутри нашего DevOps-отдела для копирования Kubernetes-секретов между неймспейсами кластера. В итоге mirrors превратился в универсальный инструмент синхронизации данных из разных исто...

Легкая автоматизация кроссплатформенных тестов с Kotlin DSL Привет! Я - Урманчеев Станислав, QA Automation Engineer на проекте «Лояльность» в Mир Plat.Form (НСПК). Хочу поделиться с читателями Хабра нашим опытом в создании и развитии фреймворка для автоматизации тестов на Appium.Какие проблемы мы собрали по пути, к чему пришли в итог...

Использование цвета в терминале Я пишу небольшие скрипты для работы в программах-оболочках «Windows PowerShell» версии 5.1 и «PowerShell» версии 7 в операционной системе «Windows 10». Иногда тянет подсветить текстовый вывод в консоль разными цветами. В этой статье я хочу рассказать о паре грабель, на котор...

Технологии UNIGINE 2: визуальный редактор материалов Если во времена Half-Life 2 в моде были фототекстуры, то сегодня материалы поверхностей в 3D-графике реального времени воссоздаются с нуля. Для этого используются шейдеры, написанные программным кодом. Но не все художники владеют программированием! Специально для них в UNIGI...

Чувак, где моя черепаха? Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом, заурядно плохом ко...

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

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

Динамическая маршрутизация на основе FRRouting Приветствую, дорогой читатель!Меня зовут Евгений, я занимаюсь развитием сетевой инфраструктуры в Домклик. Сегодняшняя статья будет охватывать только применение динамической маршрутизации на основе FRRouting (FRR), но, возможно, в будущем я напишу продолжение о том, как конфи...

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

Пытаюсь устроиться на работу #1 Тестовое задание на pyZMQ Эта статья только первая из цикла "прохожу тестовые задания". Подобными заметками я хочу показать другим начинающим программистам с чем им придется столкнуться при собеседованиях на работу. Сам я изучаю питон(и не только) уже порядка 4 лет, но это только теория с практикой н...

Взлом игрового архива трэш-клона GTA 3 и использование Kaitai для упрощения распаковки Эта статья продолжает идею предыдущей "Как у меня получилось взломать и распаковать ресурсы старой игры для PSX" здесь я также попытаюсь с точки зрения "новичка в реверс-инжиниринге" описать ход мыслей и действий с помощью которых мне удалось "с нуля" разобраться в устройств...

Пишем тесты производительности под Webflux Добрый день! Меня зовут Александр Леонов, я руководитель группы разработки одной из распределённых команд Usetech. Сегодня я хочу рассказать вам о том, как написать карманный тест производительности на неблокирующий код Webflux. Статья рассчитана на разработчиков, которые ра...

Terraform за 15 дней (AWS/Yandex cloud). День 1 Terraform за 15 дней (AWS/Yandex). День 1Мы от простого к сложному, поднимем небольшую инфраструктуру на aws и Яндекс (актуальность последнего я думаю объяснять не нужно). Так что по итогу вы сможете сказать: “Я изучал terraform от простого к сложному”.Я постараюсь добавить ...

Большой гайд. Пишем микросервисы на Java и Spring Boot, заворачиваем в Docker, запускаем на EKS, мониторим на Grafana Туториалы делятся на две больших категории: либо "как нарисовать сову", либо подробно расписанные тысячи шагов в формате "напиши туториал для дурака - и только дурак захочет его читать".Как какой из двух категорий относится эта статья — решать вам.В этой статье вы увидите по...

Как мы строили реактивный игровой сервер на Vert.x Всем привет, меня зовут Алексей Жуков, я старший программист в студии IT Territory. В этой статье я расскажу, как мы строили игровой сервер для Rush Royale. Объясню, почему создание сервера в геймдеве — это не так просто, как кажется на первый взгляд, а также опишу плюсы и м...

Дары пандемии: Магистратура Georgia Tech по специальности Computer science. Опыт выпускника Давненько на Хабре не было статей про доступную ипотеку магистратуру Georgia Tech, которая ко всему прочему стала еще доступнее с этой осени. Так вот еще одна статья на эту тему. Под катом я поделюсь информацией о том почему я решил попасть в эту программу, стоимость обучени...

Разработка драйвера сетевого адаптера для Linux. Часть 1 В этой статье мы рассмотрим как устроен драйвер сетевого адаптера для Linux.Cтатью разделим на две части.В первой части рассмотрим общую структуру сетевого адаптера, узнаем какие компоненты входят в его состав, что такое MAC и PHY, разберемся как подготовить адаптер к работе...

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

Kafka как интеграционная платформа: от источников данных к потребителям и в хранилище (часть 2) Привет! Продолжаю рассказ про интеграционную платформу на базе Apache Kafka и про то, как мы постарались гармонично вписать ее в непростую ИТ инфраструктуру группы НЛМК.Напомню, что в первой части статьи были описаны соглашения об именовании топиков, подход к реализации роле...

Шахматы на C++ Не так давно я захотел написать свой шахматный движок. На удивление в Интернете нашлось не так много хороших статей на эту тему. Были статьи с довольно слабыми программами, многие из которых даже умудрялись пропускать некоторые важные правила. А были статьи с хорошими програ...

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

Ускоряем разработку: автоматический перевод C++ в Swift. Часть II В первой статье рассказали, почему нам потребовалась автоматическая кодогенерация свифтового интерфейса для C++ в Mobile SDK. Описали инструменты, которые есть в нашем распоряжении, и сделали вывод: лучший промежуточный слой для преобразования на сегодняшний день — это C.&nb...

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

Появился новый ролик для грядущей Call of Duty: Modern Warfare 2 Студия Activision опубликовала новый тизер грядущей Call of Duty: Modern Warfare 2. Обладатели предзаказа получат доступ к игре уже 20 октября, то есть на 8 дней раньше официальной даты релиза. В небольшом тизере можно увидеть знакомых героев, а также несколько кадров ...

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

Консольный UI и отказ от асинхронного кода в idewave-cli С выходом версии 1.0.1 я решил осветить некоторые аспекты технической стороны моего проекта. В этой статье я расскажу про использование библиотеки tui-rs и про нюансы использования библиотеки tokio-rs, а так же постараюсь рассказать, что же было исправлено и почему так, как ...

Сервис для оперативной оценки стоимости своих навыков на рынке труда Уважаемые читатели, хочу представить Вашему вниманию свой небольшой проект https://sugar-beet.herokuapp.com/, который является воплощением идеи описанной в своей предыдущей статье Сколько ты стоишь? Метод анализа вакансий с HR-агрегаторов. Стадию развитию его можно определит...

Визуализация решает или про иллюстрацию статистических тестов В статье представлены результаты использования пакетов ggstatsplot и ggpmisc, позволяющих визуализировать результаты проверки статистических гипотез и параметры уравнений регрессий. Читать далее

Обзор GraphQL-фреймворков на Java В предыдущей статье мы поговорили о том, что такое graphQL, почему решили на него переходить, какие у него есть достоинства и недостатки. Но что делать дальше, если вы всё-таки решились внедрить graphQL в java-проект? Какие на данный момент есть фреймворки, чем они отличаютс...

Drag-and-Drop на Python+OpenCV В данной статье расскажу про простой Drag-and-Drop на Python+OpenCV.Идея заключается в перемещении созданных квадратов на экране жестами руки. Так как нам потребуется как-то воспроизводить клик, то представим, что кликом будет служить соединение указательного и среднего паль...

Model serving в Kubernetes: сравнение инструментов Доброго времени суток, дорогой читатель!Последние несколько лет в решении бизнес задач прогрессирует тренд использования Искусственного Интеллекта. Перед специалистами, отвечающими за инфраструктуру встают вопросы о том, какие решения они могут предложить ML-специалистам для...

[Перевод] Spring Data JDBC – генерация первичных ключей с помощью последовательностей (sequence) По умолчанию Spring Data JDBC ожидает, что первичные ключи сущностей генерируются на стороне базы данных. В статье Introduction to Spring Data JDBC (Введение в Spring Data JDBC) мы использовали вариант с автоинкрементной колонкой, а в этой статье рассмотрим другой способ – и...

История одного перехода с gcc на clang На прошлой неделе, после нескольких месяцев разработки, вышла очередная версия языка программирования NewLang. Одной из технических особенностей данного релиза является переход на использования компилятора clang вместо gcc. Данная статья описывает причины смены компилятор...

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

Сезон Java всё: итоги и самые полезные статьи С 1 июля по 15 августа наш любимый ресурс временно захватили джависты. Развлекались они, а разгребать 46 хардкорных технических текстов нам, читателям Хабра.Или нет: я (@apoltavcev) попросил участников сезона Java выбрать лучшие статьи. Под катом вас ждут краткие итоги конку...

Глава Facebook* признал цензуру статьи про ноутбук Байдена Марк Цукерберг рассказал, что Facebook (*принадлежит Meta, которая признана в РФ экстремистской и запрещена) ограничила доступ к статье о сыне Джо Байдена во время выборов 2020 года. Дело в том, что компания получила предупреждение ФБР о возможных попытках дезинформации со с...

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

Проектирование Data Pipelines в Apache Airflow Сегодня я хотел бы познакомить вас с важным инструментом в методологии DataOps, а именно Apache Airflow и проектирование Data Pipelines (Конвейеры данных).Эта статья будет посвящена краткому введению в Airflow и шагов по созданию и настройке конвейеров данных (Data Pipelines...

[Перевод] OSPFv3: построение топологии В предыдущей статье блога я рассмотрел процесс построения простой однозональной топологии OSPFv2 с помощью вывода команды show ip ospf database. В этой статье мы повторим тот же процесс, но с использованием OPSFv3 и IPv6. Читать далее

Event Storming: что будет, если запереть 10 человек в одной комнате Меня зовут Александр Донсков и я архитектор в компании REG.RU. Сегодня я расскажу о том, что такое Event Storming и что будет, если запереть 10 человек в одной комнате (в том числе виртуальной). Цель статьи не столько в том, чтобы рассказать, как это работает, сколько п...

Выходим за пределы JVM. Объясняем на крестиках-ноликах чем хорош Kotlin Multiplatform Какой есть общий недостаток у мобильной, front-end и back-end разработки и иногда распила микросервисов? Дублирование логики. Очень часто я видел статьи или новости, где одна команда мобильных разработчиков ждет другую, чтобы выкатить релиз. И если с мобильными версиями боле...

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

Обход средств защиты в iOS-приложениях В прошлой статье мы рассмотрели базовые уязвимости и способы их обнаружения. Но что делать, если в приложении используются дополнительные средства защиты (например, Jailbreak Detection или SSL-pinning), которые не позволяют нам изучить его? В этой статье расскажем, как и с п...

Программирование для админа: какой язык выбрать? Эксперты Слёрма — Антон Черноусов, Павел Селиванов, Денис Наумов и Владислав Килин — собрались, чтобы обсудить, какой язык больше подходит для админов, инженеров и devops.Дисклеймер. Этот материал не претендует на звание истины в последней инстанции. Статья создана на основе...

[recovery mode] «Вам повезло!» или как Яндекс устранял баг ПредисловиеHello, team! Возможно, столь завуалированное название статьи Вас заинтересовало, и вы решили прочитать ее во что бы то ни стало, дабы понять суть. Но на деле все куда проще, а остроты данной ситуации подбавляют лишь комические реплики службы поддержки Яндекс ...

Использовать ли Reusable Workflows в GitHub Actions? CI система GitHub Actions достаточно свежа по сравнению со своими конкурентами, но продолжает радовать сочетанием легкости использования и постепенным расширением функционала. На мой взгляд, шаблонизация используемых пайплайнов это безумно важная составляющая, и в конце 2021...

Опыт перехода на MVI в Android на базе собственного решения В команде Android мы активно применяем MVI для проектирования взаимодействия состояния экрана и бизнес-логики. В этой статье мы хотим рассказать о собственной MVI-библиотеке – Reduktor и об опыте внедрения и использования. Статья будет полезна всем, кто хочет познакомиться с...

[Перевод] Как настроить зависимые выпадающие списки в MS Excel, используя СМЕЩ и СУММПРОИЗВ Привет, Хабр!В этой статье мы демонстрируем простой способ по настройке зависимых выпадающих списков в MS Excel.Статья будет особенно полезна тем, кто еще не пользуется ни формулами массива, ни клавишей F9 при их написании.С уважением,Владимир Читать далее

Как научиться учиться с помощью второго мозга. 4 инструмента, 3 апгрейда и 3 ошибки Новички которые слышат про методику Zettelkasten более чем в половине случаев считают что могут прокачать свой процесс обучения с ее помощью. Обычно речь идет про программирование.В этой статье я не буду давать распространенные советы по тому как научиться учиться вроде "нуж...

Домашний Linux-сервер или как самому развернуть систему визуализации на MQTT+Telegraf+InfluxDB+Grafana В данной статье приведен скоуп информации о том, что взять за основу, чтобы развернуть свой домашний Linux-сервер и систему визуализации на нем, используя MQTT в качестве транспорта с оконечного оборудования. Многие статьи или инструкции, которые есть в и...

Поиск объектов на фото с помощью Python В данной статье хочу рассказать про поиск объектов на изображении. В качестве изображения может быть использована как Captcha, так и любое другое изображение.Полный код и все исходники можно найти на моем Github. Для того, чтобы написать легковесное приложение для обнаружени...

[Перевод] Использование шаблонов проектирования группы GoF в React В этой статье поговорим о том, как написать в React многократно используемый код, используя три шаблона проектирования группы Gang-of-Four. Читать далее

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

[Перевод] Влияние дофамина на организм: как работает и как этим управлять Ура! Готов магнум опус про дофамин, по мотивам подкаста Лаборатории Губермана! Это было сложно, долго и дорого, но оно того точно стоило! В статье содержатся основные факты о дофамине и его воздействии на нас, а, главное, — описаны практические инструменты управления этим в...

Использование Python в SQL Server Machine Learning Services В продолжение статей Приключения при настройке сервисов машинного обучения в MS SQL Server 2019 и Используем R lang в SQL Server разбираемся как работать с Python в сервисам машинного обучения. С Python ситуация несколько лучше, чем с R, так как достаточно много предустанов...

Как выбирать материалы для строительства дома (в статье — розыгрыш призов!) Всё начинается с возведения базовых конструкций. Вместе с Леруа Мерлен и видеоблогером Андреем Шайтером мы расскажем про первые этапы строительства и грамотный подбор материалов. В конце статьи вас ждёт небольшой тест — это возможность выиграть сертификаты в Леруа Мерлен.

Неочевидное про Fragment API. Часть 1. Транзакции Всем привет! Меня зовут Максим Бредихин, я Android-разработчик в Тинькофф. В этой серии статей я расскажу об интересных моментах из Fragment API, о которых вы могли не знать. Материал будет полезен как начинающим разработчикам, так и закаленным в боях с багами девелоперам.Ус...

Я сделаю свою «умную» колонку… «with blackjack and hookers!». Эпизод 2 (но двоек не существует). Проект NeBender Данный проект является одновременно развитием и ответвлением проекта Pinder.В комментариях к первой статье (да и сам думал об этом тоже) мне предлагали вариант для распознавания смыслов на GPT.Почитал немного про использование GPT, круто это всё конечно, вот прямо спорткар, ...

Система техподдержки, которая понравится руководству В статье перечислю некоторые кейсы работы системы техподдержки портала https://www.gosuslugi.ru/. Я столкнулся с ним как обычный пользователь. Заранее извиняюсь перед всеми причастными к работе ГосУслуг. Я с глубоким уважением отношусь к создателям этого портала. Надеюсь, чт...

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

Cемь фильмов о цифровом мире на фестивале Doker С 15 по 24 августа в Москве в восьмой раз пройдет международный фестиваль документального кино «Докер». С 2016 года ЛАНИТ поддерживает «Докер» и вместе с оргкомитетом проводит единственный в мире конкурс фильмов об информационных технологиях – «Let IT dok!».В этом году докум...

Конкурентность в Go в пяти примерах Привет, Хабр! Я Артем Чаадаев, Golang-разработчик в МТС Digital. В этой статье я собрал примеры использования конкурентного кода в Go. Хотите узнать, как писать конкурентный код? Значит, вам сюда.Добро пожаловать под кат! Читать далее

Миграция кода с Oracle на PostgreSQL: особенности и пути обхода, средства конвертации, вспомогательные модули Эта статья завершает цикл о миграции с СУБД Oracle на СУБД PostgreSQL. В первых двух статьях рассматривались проблемы и устоявшиеся способы переноса данных из одной СУБД в другую (часть 1, часть 2). В третьей статье была представлена часть особенностей, которые нужно учесть ...

Реализация кэш-компрессии по алгоритму base+delta Существенную часть кристалла современных ЦП занимает кэш-память. Дальнейшее увеличение кэш-памяти без изменения технологических норм приведет к соответствующему увеличению кристалла. Одним из способов увеличения объема хранимой информации в кэше без увеличения самого кэша яв...

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

TypeScript: разбираем исходный код Radash Привет, друзья! Radash — это современная альтернатива Lodash, библиотека, предоставляющая набор часто используемых утилит (вспомогательных функций), реализованных на TypeScript. В данной статье мы вместе с вами разберем исходный код нескольких наиболее интересных утилит. Р...

А пользователь кто? Моделирование пользовательских ролей и описание персон В гибкой разработке как никогда популярно использование пользовательских историй (user story). И если вы слышали или работали с ними, то в курсе, что они пишутся от имени разных пользователей (user types). Определение пользователей важно не только для этого инструмента, но и...

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

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

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

Рубим под корень: расследование атаки на хост с закреплением и запуском rootkit Привет, Хабр!  В предыдущей статье мы разобрали пример фишинга с использованием зловредного PDF вложения на примере задания GetPDF от CyberDefenders. Сегодня мы поговорим о руткитах (от англ. root – корневой, kit –набор, в данном контексте означает получение неограничен...

Обработка естественного языка (NLP) методами машинного обучения в Python В данной статье хателось бы рассказать о том, как можно применить различные методы машинного обучения (ML) для обработки текста, чтобы можно было произвести его бинарную классифицию. Рассмотрим задачу обработки естественного языка (NLP — Natural Lanuage Processing) на п...

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

[Перевод] Безопасный Spring REST с применением Spring Security и OAuth2 В этой статье мы продемонстрируем пример настройки Spring Security + OAuth2  для защиты конечных точек REST API на фреймворке Spring Boot. Клиенты и учетные данные пользователей будут храниться в реляционной базе данных (для баз данных H2 и PostgreSQL подготовлены приме...

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

Экспорт метрик в Prometheus из логов PostgreSQL с помощью Vector В этой статье я хочу рассказать о не совсем обычном использовании логов — о получении из лог-файлов метрик для Prometheus. Это может быть полезно, когда существующие экспортеры не предоставляют нужные метрики, а писать свой экспортер не хочется или очень затратно. Читать дал...

От Web до Desktop за 2 недели: технология Electron на практике Если у вас есть компьютер и вы используете его по назначению, то скорее всего вы так или иначе работали с приложениями на Electron (даже если об этом не знали).Меня зовут Сергей Володин, я руковожу командой разработки VK WorkMail. В этой статье я расскажу, как на основе Elec...

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

Преобразование формата ошибок с помощью встроенных событий Symfony Работая над проектом, у меня возникла задача: возвращать информацию об Exception в формате JSON если client в запросе указывает поддерживаемый им MIME тип application/json используя заголовок Accept. Простыми словами - если клиенту нужна ошибка в JSON, то дать ему JSON. В др...

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

Установка Linux на примере CentOS 7 Привет, Хабр!В новой статье разбираем процесс установки Linux на примере CentOS 7 без использования графического установщика. Объясняем, когда и почему нужно устанавливать вручную, какие этапы происходят с момента запуска железа. Дополнительно затрагиваем тему LVM — зачем ну...

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

Продолжаем разгонять FizzBuzz После написания первой статьи про FizzBuzz (которая неожиданно для меня стала выбором редакции на Технотексте 2021) у меня появлялись мысли о том, как еще можно ускорить, но все время было не до того. И тут мне прилетает перчатка. Читать далее

CDC и логическая репликация для баз данных, реализованных на стеке open source-решений Привет, Хабр! На связи СберТех — мы создаём Platform V, цифровую платформу Сбера для разработки бизнес-приложений.В платформу входит более 60 продуктов на базе собственных сборок open source, доработанных до уровня enterprise по функциональности, безопасности, производительн...

Этой индустрии нужен новый герой: ARM врывается с двух ног Part II Привет! Это снова я :)Первая статья из цикла “Скандальное разоблачение x86: ARM врывается с двух ног” получила отклик больше, чем я ожидал: 155+ комментариев и 55 плюсов. Спасибо всем за активное обсуждение — в комментариях получился холивар с кучей интересных мыслей по сабж...

«Демодуляция 2022» — как прошёл фестиваль и что изменилось с прошлого года 17-18 сентября в центральном офисе «Яндекса» в Москве прошёл ежегодный фестиваль ретрокомпьютеров «Демодуляция». Традиционно, кроме «Яндекс Музея» (организатора мероприятия) в фестивале приняли участие другие отечественные музеи ретротехники и ретроэнтузиасты. В материале об...

OpenAI решили распознавание речи! Разбираемся так ли это… Вчера OpenAI выпустили Whisper. По сути они просто опубликовали веса набора больших (и не очень) рекуррентных трансформеров для распознавания речи и статью (и самое главное, в статье ни слова про compute и ресурсы). И естественно уже вчера и сегодня утром мне в личку начали ...

#2 Нейронные сети для начинающих. NumPy. MatplotLib. Операции с изображениями в OpenCV Это вторая статья из серии введения в «Нейронные сети для начинающих». Здесь и далее мы постараемся разобраться с таким понятием — как обработка графических данных, визуализация данных, а также на практике решим пару простых задач. Предыдущая статья — #1 Нейронные сети для ...

[Перевод] Подробно о мониторинге и профилировании JVM Управление доступными ресурсами в облачной среде по запросу – тема, которая бывает очень непростой. Но эта работа стоит того, поскольку вы сможете использовать ресурсы гораздо эффективнее. Поэтому многие компании и проекты решаются мигрировать на облачные платформы, в частно...

Спектрометр из смартфона, картона и осколка DVD-диска: смотрим на спектры лампочек, фонариков, солнца Всем привет! Продолжаем придумывать, как можно использовать устаревший смартфон в новом качестве. Эта статья подготовлена по материалам второго сезона видеокурса “Galaxy Upcycling - новая жизнь старого смартфона”. В  уроках первого сезона мы уже сделали 3D-голограмму, п...

Чем грозит авария на Запорожской АЭС Запорожская АЭС – это крупнейшая АЭС Украины и Европы. Уже почти полгода она находится под контролем российских войск. В последний месяц вокруг нее возникает много тревожных новостей: ее территорию обстреливают, ходят слухи о ее минировании. Россия и Украина обвиняют друг др...

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

__proto__ и prototype Часто на собеседовании опытный разработчик может спросить у начинающего: «Что такое __proto__ и prototype, и чем они отличаются?». Обычно этот вопрос либо ставит в тупик, либо на него отвечают заученной мантрой из видео «50 вопросов на собеседовании»: « __proto__ — это ссылк...

[Перевод] Грокаем монады Прим. переводчика: Это перевод первой статьи из целого цикла постов "Грокаем функциональное программирование" Мэта Тронтона. Да, это очередная статья про монады. Но она отличается от всего, что я читал по этой теме ранее. Поэтому мне захотелось перевести ее, чтобы самому вни...

Навигация в Swift UI: что изменилось с появлением iOS 16 Одно из самых проблемных мест SwiftUI — работа с навигацией. Отсутствие доступа к стеку навигации, невозможность разделить UI-слой и слой навигации, сложность создания диплинков — всё это затрудняло работу многим разработчикам, использующим SwiftUI в своих проектах. В iOS 16...

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

Как вернуть в iPhone СберБанк, СберБизнес, Аэрофлот и прочие пропавшие из App Store приложения В этой статье я опишу способ возврата на iPhone приложений, которые исчезли из App Store и не смогли автоматически установиться на новый смартфон на базе iOS при переезде или восстановлении из резервной копии.Я использую приложение Сбербанка, поэтому при переселении образа н...

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

Проверка JavaScript-движка Rhino, или как встретились единорог с носорогом Имеется большое разнообразие языков программирования, но больше всего наши пользователи хотят, чтобы анализатор PVS-Studio поддержал один из самых популярных языков – Javascript. Одним из проектов, который можно использовать для написания статического анализатора JavaScript...

Готовим Window Inset под соусом Jetpack Compose и щепоткой View Обожаю запах свежей мобильной разработки по утрам, дням и вечерам

Когда можно обойтись без проджекта: о командах эксплуатации на аутсорсе Эта статья — текстовая версия выступления Сергея Хованова на онлайн-квартирнике про инфраструктуру на аутсорсе. Если вам удобнее, можете посмотреть видео. И заодно заглянуть в другие доклады — они тоже интересные. Слово Сергею. Привет, Хабр! Меня зовут Сергей Хованов, я...

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

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

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

В Tower of Fantasy можно будет построить свой дом Tower of Fantasy готовится к первому крупному обновлению с момента релиза. Стоит ждать новый контент. Зарубежные издания передают, что 15-го сентября на серверах Tower of Fantasy появится обновление 1.5 под названием «Искусственный остров». Вместе с ним в игру добавят систе...

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

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

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

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

Умный в гору не пойдет Всем привет!Небольшая статья о нахождении оптимального маршрута Читать далее

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

Запрет на Ghost Gun в Америке Данная статья написана в целях познакомить читателя с таким являнием как Ghost Gun. Автор ни к чему не призывает. Помните, неправомерное приобретение, хранение и применение оружия является преступлением и должно преследоваться по всей строгости Закона! Ghost Gun (гост ган)...

Сказ о том, как в PVS-Studio бага обновляли Помимо полюбившегося многим маскота – единорога — в PVS-Studio есть второстепенный персонаж, он же антагонист нашего продукта, баг. Однако баг не есть вездесущее, нерушимое зло, а, скорее, случай бытовой или даже рабочий. В данной статье рассказано о том, как рисовался новый...

Почему в С++ массивы нужно удалять через delete[] Заметка рассчитана на начинающих C++ программистов, которым стало интересно, почему везде твердят, что нужно использовать delete[] для массивов, но вместо внятного объяснения – просто прикрываются магическим "undefined behavior". Немного кода, несколько картинок и ...

[Перевод] Продвинутые хуки в React: всё о UseEffect В этой статье рассмотрим советы и приёмы, которые помогут более профессионально написать код на React. Читать далее

Мой аналог The GO Playground The GO Playground своего рода онлайн песочница для любителей языка Go. Под данным катом описано как я создавал свой аналог этой платформы. Читать далее о Go Playground

Выбор основных проектных параметров ракеты. Или как самостоятельно спроектировать Falcon 1e (часть 1) В одной из статей я писал с чего начать создание своей ракеты. Среди основных технических задач первого этапа самой главной является задача проектно-баллистического анализа и выбора основных проектных параметров. В данной статье я постараюсь на примере показать что это такое...

Расширение списка ACE для BloodHound BloodHound – это популярный инструмент для сбора и анализа данных при проведении пентеста внутренней инфраструктуры на базе Active Directory. Этот инструмент позволяет визуализировать некорректные настройки объектов AD и строить цепочки атак. Основная его особенность — испол...

Microsoft подтвердила, что обновление KB5015878 вызывает проблемы со звуком в Windows 10 Microsoft признала, что накопительное обновление под кодом KB5015878, выпущенное в конце июля, привело к возникновению различных проблем со звуком на устройствах под управлением Windows 10. Чтобы остановить распространение проблемы, компания воспользовалась технологией Know...

Осознанные сновидения. Зачем нужны, как вызвать, какие последствия? В поисках продуктивности особое место занимает сон. Его можно использовать для глубокого и качественного отдыха, выделенного организму самой природой. А можно относиться к нему, как к инструменту для изучения психики. Привет! На связи RISE: сообщество про ноотропы и личную п...

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

Пять инструментов Site Reliability Engineering Надежность (reliability) программного продукта всегда является одним из приоритетов компании. Особенно это актуально для ПО, превратившегося в ежедневный инструмент для своих пользователей. Они рассчитывают на заявленный функционал, поэтому любая невозможность его использова...

Как организовать потоковую обработку данных. Часть 2 Привет, Хабр! Я – Евгений Ненахов из центра Big Data МТС Digital. Это вторая часть  статьи о том, как мы создали универсальный инструмент потоковой обработки данных и построили с его помощью мощную систему стриминга. В первой половине статьи мы обсудили основные компоне...

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

Unreal Engine: Unreal header tool и Рефлексия в деталях Привет Хабр!В этой статье будет разобрана работа Unreal Header tool, рефлексии, и немного затронем VM. Читать далее

[Перевод] Как использовать Docker в приложениях Node.js и React В этой статье поговорим о том, как разработать и запустить бэкэнд на Node.js-Express и фронтенд на React в контейнере Docker. Читать далее

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

PostgreSQL Antipatterns: где скаляру в GiST место? В PostgreSQL есть "волшебный" тип индекса GiST, который позволяет быстро искать разные сложные вещи - от интервалов до массивов и даже реализовывать полнотекстовый поиск.Про его внутреннее устройство и возможности подробно рассказывал Егор Рогов, а я в статье "PostgreSQL Ant...

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

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

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

Введение в базы данных Я решила написать эту статью, потому что именно такой статьи мне очень не хватало несколько лет назад, когда я только начала карьеру в аналитике данных. Тогда я часто слышала слова «база данных», «реляционная база», «primary key», примерно понимала, что они означают, но...

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

Как мы ведём документацию рядом с кодом В Альфа-Банке мы уже больше 5 лет ведём документацию рядом с кодом. Но она используется не для всех проектных документов. Дело в том, что документация у нас делится по слоям: фронт, миддл и бэкенд. Если с миддлом — слоем микросервисов — всё хорошо, то вот с переводом фр...

Бутстреп и А/Б тестирование Привет, Хабр! В этой статье разберёмся, как с помощью бутстрепа оценивать стандартное отклонение, строить доверительные интервалы и проверять гипотезы. Узнаем, когда бутстреп незаменим, и в чём его недостатки.  Читать далее

Apple выпустила iOS 16.0.2 с исправлением багов. Обновляемся! В ночь с четверга на пятницу Apple выпустила iOS 16.0.2. Выходу обновления не предшествовало ни единого дня открытого бета-тестирования, а сам релиз состоялся не в традиционный для подобных событий вторник, что указывает на экстренный характер апдейта. Впрочем, оно и понятн...

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

[recovery mode] Автоматический подбор синаптических весов. Самое начало. Циклический перебор В одной из предыдущих статей (Синаптические веса в нейронных сетях – просто и доступно) мы разбирались со смыслом синаптических весов на примере определения цифры на 13-ти сегментном индикаторе и подбирали веса "вручную", путем логических рассуждений.С этой статьи приступаем...

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

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

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

[Перевод] Node.js: работа с файловой системой Привет, друзья! Представляю вашему вниманию перевод этой замечательной статьи. Данная статья включает в себя: обзор основных частей интерфейса Node.js для работы с файловой системой (далее — ФС); рецепты (сниппеты кода) для выполнения задач с помощью названного интерфейса...

Jmeter не только для нагрузочного тестирования Однажды отделу тестирования понадобился инструмент для постоянного измерения скорости загрузки страниц, с помощью которого можно узнавать о проблемах на сайте в режиме реального времени. В статье я расскажу о том, как силами QA-отдела REG.RU мы сделали мониторинг страниц на ...

[Перевод] JDBC vs JPA В мире разработки программного обеспечения очень любят аббревиатуры. И работа с базами данных в Java — не исключение.Наличие множества вариантов работы с БД может запутать: что же я использую на самом деле? Все используют JPA? Мне тоже стоит его использовать? Но я еще слышал...

PostgreSQL 15: Часть 5 или Коммитфест 2022-03 Эта статья о мартовском коммитфесте завершает серию о принятых изменениях в PostgreSQL 15. Предыдущие статьи посвящены первым четырем коммитфестам: 2021-07, 2021-09, 2021-11, 2022-01. На момент публикации уже доступна вторая бета-версия PostgreSQL 15. Все приведенные ниже...

Java, реактивное программирование, Reactor, Spring Cloud Function, Streams, etc… Реактивное программирование в Java — полезный инструмент со множеством применений. Его суть в асинхронной обработке поступающих сообщений, и есть несколько вариантов реализации этого механизма. И Java в целом, и Spring Framework в частности подразумевают несколько аспектов ...

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

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

Почему похудеть, работая в ИТ, так сложно Это ответ на статью Для чего вам тренировка «стоимостью» в полвафли, если у вас КФА 1,2?, и попытка раскрыть некоторые несообразности из статьи и комментариев. Читать далее

[Перевод] Плейбуки Ansible — советы и примеры В этой статье мы рассмотрим плейбуки Ansible — схемы для действий по автоматизации. Плейбуки — это простой, целостный и воспроизводимый способ определить все действия, которые мы хотели бы автоматизировать. Читать далее

Невыжившие в IT Этот текст я пишу из лучших побуждений, безо всякой иронии, снобизма и насмешки. Хочу сберечь время и нервы тем, кто поддался на «войти в айти» и прямо сейчас учится сортировать массивы, парсить строки и верит в «да-да, этим ты и будешь заниматься на работе».Есть такое понят...

Количество Биткоинов не будет 21.000.000 Различные источники утверждают, что последний Биткоин будет добыт в 2140 году и всего их будет 21.000.000, но нигде не сказано почему именно так, а не иначе? В этой статье я подробно раскрою ответ на этот вопрос. Докопаться до истины

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

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

Как организовать потоковую обработку данных. Часть 1 Привет, Хабр! Меня зовут Евгений Ненахов, я работаю в центре Big Data МТС Digital. В этой статье я расскажу о том, как мы создали универсальный инструмент потоковой обработки данных и построили с его помощью мощную систему стриминга. Если вам интересна обработка данных – доб...

Онлайн-сервер для NFS Underground 2 своими руками. Часть 1 Привет, Хабр! Спустя 13 лет я решил рассказать как однажды начал писать dedicated-сервер для игры NFS Underground 2, как решил возродить функционал оригинального онлайн-сервера, закрытого ещё в 2007 году, и как получилось, что это всё ещё WIP, несмотря на килотонны написанно...

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

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

Как мы переходили с pip на Poetry Всем привет! Я Станислав Бушуев, Software Engineer в Semrush. В этой статье я расскажу о том, как мы столкнулись с проблемой периодического обновления Python-зависимостей, тестировали решение с полной их фиксацией, ошибались, и в итоге перешли на Poetry. Читать далее

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

Работа с хранимым кодом приложения при миграции с Oracle на PostgreSQL: особенности, сложности и способы их преодоления В предыдущих статьях о миграции с Oracle на Postgres мы рассматривали перенос данных из одной системы управления базами данных в другую (часть 1, часть 2). Сегодня разговор пойдёт об особенностях работы с кодом приложения при необходимости смены СУБД. В частности, буду...

[Перевод] Скорость времени Сколько нужно времени, чтобы снять показания времени? Каков хронометраж времени? Эти странные вопросы выплыли в публичную плоскость еще в 2014 году, когда Netflix переносил свои сервисы с CentOS Linux на Ubuntu, а автору этой статьи довелось помогать в отладке некоторых прич...

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

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

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

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

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

PMBoK, Agile и Канбан: современное проектное управление и его значение для менеджеров проектов Привет, Хабр! Я Денис Бартоломе, Agile-коуч Сбера.   Вся эта статья ― обсуждение новой версии Project Management Body of Knowledge (PMBoK) и её влияния на прекрасный мир проектного управления. PMBoK ― свод знаний, максимально полное изложение информации по управлен...

Как мы создали Digital Workplace для сотрудников Коллективу Альфа-Банка и корпоративным коммуникациям больше 30 лет. За нашу историю накопилось огромное количество систем, которые внедрялись разными командами. Отпуска мы планируем в SAP HCM, командировку оформляем в SAP АХД, кандидатов ведём в E-Staff, обучение проходим в ...

ORB_SLAM3 на raspberry pi 4 Рассматриваются нюансы установки ORB_SLAM3 на одноплатном пк — raspberry pi 4 c ОС Raspbian buster, проводится поверхностный анализ возможностей алгоритма с учетом ограничений raspberry, показаны возможные пути оптимизации производительности, используется помимо прочего ROS...

Что такое осень? Это Школа Всем привет! Меня зовут Анастасия Артамонова, я - руководитель направления IT-обучения и развития Мир Plat.Form, и вы уже могли читать мою статью в этом блоге. С чего хотелось бы начать в этот раз: мир меняется, меняются обстоятельства и времена года. Развивается Мир Plat.Fo...

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

Сложно, но можно — стажировка в Яндекс Go Впереди новый сезон стажировок, и статья будет актуальна для тех, кто планирует начать карьеру в Яндексе. Я Максим, iOS-разработчик в службе технического развития Яндекс Go. В декабре 2021 года завершил стажировку в команде и хочу поделиться опытом, полезными ссылками и выво...

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

На пенсию до 45: как поменялось сообщество FIRE за последние три года Привет! Это команда сервиса для безопасных сделок с фрилансерами Solar Staff. В этой статье мы расскажем о движении FIRE и о том, что изменилось внутри комьюнити за последние несколько лет. Читать далее

[Перевод] Разбираем успех Fortnite: часть 1 — психология и UX Бывший UX-директор в Epic Games поделится с нами в этой статье о том, как устроен мозг игрока и как эти знания были использованы в разработке Fortnite. Читать далее

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

Альтернативная прошивка для датчика температуры и влажности Sonoff SNZB-02 Zigbee Приветствую всех читателей Habr. В этой статье хочу поделиться с вами своим новым небольшим проектом. Звездой этого проекта является датчик температуры и влажности воздуха SONOFF SNZB-02 от компании ITEAD. Этот датчик появился на рынке около 2 лет назад, это было по сути ...

AirPods Pro 2 будут поддерживать Bluetooth 5.2 и LE Audio По данным ресурса MacRumors, недавно компания Apple зарегистрировала в базе регулятора Bluetooth SIG новое устройство с поддержкой Bluetooth 5.2. Есть предположение, что в заявке описаны AirPods Pro второго поколения.Читать дальше... ProstoMAC.com.| Постоянная ссылка | No c...

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

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

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

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

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

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

Там сложно, ты не разберешься В своей первой статье на Хабре я описывал опыт реверсинга и модификации проекта, доставшегося по наследству. Конечно, в отношении проекта на Python "реверсинг" - это гипербола, однако с чем-то ранее неизвестным столкнуться все же получилось. Если вкратце - вместо классически...

Postgres Pro Enterprise 14.4.1: что нового — статистика, безопасность, анализ работы VACUUM В дни майского HighLoad++ Foundation 2022 наша компания объявила о выпуске Postgres Pro Enterprise 14.2.1. С тех пор вышло несколько обновлений, мы расскажем о наиболее свежем из них - Postgres Pro Enterprise 14.4.1, основанном на PostgreSQL 14.4. Этот выпуск включает все но...

Читаем почту mail.ru из python при помощи imap Подробно разбираем работу библиотек imaplib и email, открываем ящик и читаем письма (получаем из писем всё что есть) на примере mail.ru (хотя в целом, должно работать везде).Рабочие задачи заставили обратиться к классике - электронной почте, материала довольно много в сети...

Картошка-0. Повышаем привилегии в AD при помощи RemotePotato0 Для подписчиковВ этой статье мы поговорим о разных вариациях кросс-протокольной атаки NTLM Relay с использованием эксплоита RemotePotato0, а также на этом примере обсудим, как можно спрятать сигнатуру исполняемого файла от статического анализа.

Репликация MySQL и MariaDB: мониторинг с помощью Zabbix Когда к отказоустойчивости интернет-магазина или другого сервиса с базами данных предъявляются повышенные требования, не обойтись без репликации серверов СУБД и файлов. Репликация совместно с другими технологиями отказоустойчивости помогает полностью защититься от сбоя обору...

ИГРА: Насколько вы грамотны? Проверьте! Ихний, евонный, калидор, заплотишь… Ух! Проверьте, сможете ли вы отыскать слова, в которых допущены самые раздражающие ошибки на свете.

Physically-based rendering. Ray marching (часть 2) Привет, Хабр!Перед вами продолжение статьи про рендеринг. В первой части, которую вы, кстати, можете найти по ссылке (link), мы поговорили о трассировке лучей и маршевом методе, а в этой части мы с вами получим фотографию мыльного пузыря. Будет интересно :) Читать далее

[Перевод] Создаем классный UI: iOS Shape Morphing Серия, посвященная воссозданию классных демок пользовательского интерфейса, на которые я наткнулся на просторах интернета. Сегодня мы реализуем морфинг между разными формами иконок и разберемся, что такое Metaballs.На днях в Твиттере я наткнулся на твит, демонстрирующий одну...

[Перевод] Как опубликовать свой плагин в репозиторий WordPress.org Каждый, кто знаком с WordPress, пользуется плагинами с его репозитория, это очень простой и удобный способ расширить стандартный функционал. Если вы разрабатывали или кастомизировали тему, то сколько раз вы копировали один и тот же код с предыдущего сайта на новый? Сколько р...

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

Vue, React или Angular: какой стек используют в России. Проанализировал 180 сайтов Благодаря лени узнал, какие фреймворки используют компании на российском рынке. Проанализировал e-comm, банки, интернет-магазины, сайты застройщиков, стриминговые сервисы, телекоммуникации и другие сферы. В конце статьи ссылка на таблицу. Читать далее

Приручаем многопоточность в Node.js (часть 2: очередь, каналы и координатор) В первой части статьи мы остановились на моменте, когда с помощью распределения задач между потоками по алгоритму Round-robin мы добились-таки ускорения работы приложения за счет многопоточности.Но вот неприятность: такой алгоритм очень неравномерно нагружает потоки и не пол...

Physically-based rendering. Ray marching (часть 1) В этой статье ты, мой читатель, познакомишься с основными понятиями в трассировке лучей и сможешь попробовать написать свой первый рендер, а во второй части я расскажу, как получить реалистичный рендер мыльного пузыря. Читать далее

Компилирование и исполнение Java-кода в Runtime Привет Хабр! Сегодня я хотел бы поговорить про динамическое компилирование и исполнение Java-кода, подобно скриптовым языкам программирования. В этой статье вы найдете пошаговое руководство как скомпилировать Java в Bytecode и загрузить новые классы в ClassLoader на лету. Чи...

Текстовое кунг-фу: советы от мастера UX-дизайна Привет, меня зовут Булат Давлетов, я продуктовый дизайнер в «БАРС Груп». Эта статья будет не про копирайтинг или дизайн, а про удобство работы с текстом за компьютером каждый день. Читать далее

Отмена релокейта в Болгарию, плесень и ремонт, или как я переехал в деревню Всем привет. Меня зовут Павел Кишеня, я работаю в REG.RU системным администратором. Два года назад я переехал из Минска в область, деревню Лещёвцы. В этой статье я расскажу, как и почему я переехал, какие здесь условия для работы и жизни и причем здесь плесень. Читать далее

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

А какой-то что-то как-будто бы open source VDI будет? Open source так плотно вошел в нашу жизнь, что мы ее без этого феномена и не представляем. Многое чем мы пользуемся основано на open source компонентах, работает на open source ОС и это можно продолжать до бесконечности. И если любая инфраструктура начинается с фундамента в ...

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

Автоматизация на Wiren Board и Node-RED: четыре полезных сценария без программирования Меня зовут Дмитрий, и я готов признаться: я не программист. Я знаю, что многие электрики и технари тоже не пишут код, и эта статья для вас! Ниже я покажу, как с помощью Wiren Board 7 и Node-RED настроить самые полезные сценарии умного дома. И ни строчки кода писать не придет...

Приручаем многопоточность в Node.js (часть 3: разделяемая память, атомарные операции и блокировки) В предыдущей части мы остановились на мысли, что минимизировать простой вспомогательных потоков нашего приложения можно, если заставить их самих получать себе задачи, не дожидаясь, пока их загрузит кто-то другой со стороны.Но тут возникает две проблемы:1. как эффективно дост...

Микроконтроллеры Megawin серии MG32F02: таймеры общего назначения Продолжая цикл публикаций по микроконтроллерам на ядре Cortex-M0 компании Megawin (см. предыдущие статьи 1, 2, 3, 4 и 5), сегодня рассмотрим таймеры общего назначения. Читать далее

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

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

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

#1 Нейронные сети для начинающих. Решение задачи классификации Ирисов Фишера На хабре было множество публикаций по данной теме, но все они говорят о разных вещах. Решил собрать всё в одну кучку и рассказать людям. Это первая статья серии введения в нейронные сети, «Нейронные сети для начинающих». Здесь и далее мы постараемся разобраться с таким пон...

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

[recovery mode] Квантовая запутанность глазами хакера. Часть 1 Квантовая запутанность, изначально предсказанная в совместной работе Эйнштейна, Подольского и Розена, подразумевает взаимозависимость квантовых состояний двух или большего числа объектов. Такая взаимозависимость может сохраняться, даже если эти объекты разнесены в пространс...

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

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

FHRP Nightmare. Ад и кошмар систем отказоустойчивости маршрутизации Для того, чтобы повысить уровень отказоустойчивости своей сети на уровне маршрутизации, сетевые администраторы в большинстве случаев используют протоколы семейства FHRP. Меня зовут @in9uz, и в рамках данной статьи ты узнаешь какой кошмар может возникнуть в сети, если к конфи...

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

И нафиг ты это пишешь Статья будет краткой. Даже не очень статья, а так - вопрос для раздумий.Сколько раз я на Хабре видела авторов интересных (мне), но замолкавших (навек!! ааа) от комментариев вроде "зачем вы тащите это старьё", "лучше бы написали о..." и т.д. Читать далее

Telegramm-habr-бот. Долгий путь к совершенству Каждый день мы просматриваем habr. Каждый день заходим на главную ленту и просматриваем её. Что, если автоматизировать этот просмотр?В статье я расскажу, как я писал telegram-бота на python3, который вытаскивает заголовки статей с habr и пишет их в telegr...

Концепция локального изготовления изделий (введение) ВНИМАНИЕ! ЛОНГРИД! Данная статья является видением автора и основывается на личном опыте и накопленной информации. Применение основной идеи данной статьи несет предположительный характер. Спасибо за внимание.Как, находясь в шаговой доступности, изготовить для потребителя пер...

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

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

Триквел по Orchard Core. Повторная проверка при помощи PVS-Studio В этой статье мы исследуем проект Orchard Core c помощью статического анализатора PVS-Studio и узнаём, так ли привлекателен код платформы, как сайты, созданные на её основе. Итак, пусть поток статического анализа несёт нас вперёд! Читать далее

Выкатываем сервис в production: 6 шагов к успешному релизу Существует много руководств и инструкций по созданию базовых бекенд-приложений. Также в сети можно найти пошаговые tutorial по сборке приложения и развёртыванию на сервер, либо подробные инструкции для популярных CI/CD-инструментов. Описанных в них шагов достаточно для запус...

[recovery mode] Готовим нагруженный Postgres в Yandex.Cloud Перед тем как приступать к основной части статьи, наверное стоит начать с вопросов «зачем». В контексте данной статьи их три: 1)      Почему Postgres2)      Зачем Public Cloud3)      Почему Yande...

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

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

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

[Перевод] Разработка Rails приложений с использованием Hotwire (Введение) Если вы разрабатываете SPA приложения на Ruby on Rails, вы, скорее всего, используете какой-нибудь классный JS-фреймворк для быстрого обновления пользовательского интерфейса без перезагрузки страницы. И без JS фреймворка на фронтенде действительно мало что можно сделать, это...

Почему все говорят про ДАО. В чем суть, и как они делаются Будем откровенны – про ДАО говорят далеко не все. К относительно широкой аудитории это слово только начало прокладывать путь. Американский Forbes выпустил колонку на тему «Что такое ДАО» в прошлом году, NY Times и The Economist написали свои объяснения уже в 2022-м. Издания ...

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

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

Настоящий Product Backlog Refinement: 4 этапа правильной работы над фичами Привет, Хабр! Я Екатерина Колесникова, Agile Coach в inDriver. Когда я пришла в команду, заметила проблемы в процессе Product Backlog Refinement. Я предложила новый сценарий этой церемонии — и он сработал. В этой статье поделюсь опытом проведения PBR без скучной теории о «пр...

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

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

Очередная статья про систему типов TypeScript Вы уже все знаете, какая выразительная система типов в нашем синем друге, ведь об этом было написано немало статей. Думаю, втирать рассказывать об этом уже нет смысла, поэтому сразу перейдём к делу. Напишем-ка парсер JSON на типах в Typescript и инкремент числа.Особо впечатл...

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

FPGA Weekly News #005 Ребята из FPGA комунити каждый день делают небольшую подборку новостей из мира FPGA и делятся ею с читателями хаба FPGA. Внимание: возможны повторы! Читать дальше →

Хаброконтент. С этим нужно что-то делать? Триггером для написания этой небольшой статьи послужил сегодняшний материал в разделе новостей «В Москве и Санкт-Петербурге откроют магазины беспошлинной торговли для дипломатов». Что интересно, его автором является пользователь @Travis_Macrifс учетной записью, имеющей отмет...

SophiApp, или Как мы делали опенсорс программу для настройки Windows 10 & 11 Я от лица команды хочу показать вам SophiApp — графический наследник Sophia Script for Windows: бесплатная, портативная и полностью опенсорная программа для тонкой настройки Windows 10 и Windows 11.В этой статье я расскажу, как оброненная мной фраза в комментарии 3 года наза...

Крякнул софт? Суши сухари Именно так считает "товарищ майор", и с подобным утверждением порой соглашается российское правосудие.С 1997 года в своде законов российских дремлет статья 273 УК РФ (Создание, использование и распространение вредоносных компьютерных программ), карающая не чтившего уголовный...

Насколько хорошо у вас настроен OSPF/IS-IS или помогатор для сетевых инженеров Коллеги-сетевики, привет. К написанию данной статьи меня сподвигли задачи, с которыми приходилось сталкиваться во время работы с OSPF/IS-IS и тот набор решений, к которому я в конечном итоге пришел. Речь идет о насущном вопросе сетевых инженеров, когда приходится применять н...

[Перевод] Почему KRaft заменил ZooKeeper Зачем менять ZooKeeper на встроенный лог Apache Kafka® для управления метаданными? В этой статье вы узнаете, зачем нужна была эта замена, какие преимущества даёт протокол консенсуса на основе кворума, вроде Raft, и как работает контроллер кворума поверх протоколов KRaft. Чит...

Микроконтроллеры Megawin серии MG32F02: АЦП и компаратор Продолжая цикл публикаций по микроконтроллерам на ядре Cortex-M0 компании Megawin (см. предыдущие статьи 1, 2 и 3), сегодня рассмотрим АЦП и аналоговый компаратор, а также проведем эксперименты с более "продвинутым" МК MG32F02A064. Читать далее

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

Как расти менеджерам: подробная инструкция на примере менеджерской линейки Авито Как расти техническому менеджеру?Этот вопрос может возникать по разным причинам, например:- Настоящий ли я Team Lead или Engineering Manager?- Готов ли я к переходу на следующий уровень?- Будут ли мои навыки ценны в другой компании? Смогу ли я оказаться на такой же роли?В ст...

Как научить операционную системы «выбрасывать» из системных вызовов исключения C++ и как это можно применять Эта статья написана по мотивам дипломной работы, выполненной в ВУЗе. Мне показалось, что она могла бы быть интересна и другим людям, поэтому выкладываю пересказ. В этой работе я кратко рассмотрю, как вообще работают исключения в С++, опишу, как я добавил их поддержку в прост...

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

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

Microsoft исправила ошибку перехода на летнее время в Чили в необязательном обновлении Компания Microsoft исправила ошибку перехода на летнее время в Чили в необязательном обновлении. Предварительная версия обновления для Windows за сентябрь 2022 г. включает следующие обновления часового пояса для Чили: • Часы были переведены на час вперед в 12:00 a.m. 11 сент...

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

Как концептуально работает Tornado Cash, который «забанили» власти США 8 августа 2022 года Управление по контролю за иностранными активами Министерства финансов США (OFAC) наложило санкции на Tornado Cash, миксер криптовалюты, что вызвало шквал обсуждений в криптосреде. В этой статье разберем как концептуально работает криптомиксер Tornado Cash...

Как подружить Vivado и git: с микроблейзом и сабмодулями Разработка под программируемые логические интегральные схемы (ПЛИС) и систем на кристалле (СНК) отличается монструозностью IDE и их проектов. В одном котле замешаны исходные коды логических модулей, специфические файлы для привязки к контретной модели ПЛИС, файлы ресурсов, т...

Microsoft придумала, как ускорить браузер Edge Компания Microsoft повысила производительность браузера Edge версии 102, но пока только в Windows. Теперь он автоматически сжимает дисковый кеш, уменьшая дисковое пространство, необходимое для работы программы. «Начиная с Microsoft Edge 102 для Windows, браузер а...

Пока Google от навязчивой рекламы отказывается, Apple хочется ее увеличить По данным MacRumors, 9to5Mac и AppleInsider, компания Apple планирует показывать рекламу на вкладке "Сегодня" в App Store и на страницах отдельных приложений. Эти два новых места размещения рекламы будут дополнять объявления, которые уже можно увидеть на вкладке "Поиск" и в ...

Unity: Небольшой скрипт = все ориентации экрана Хватит блокировать вертикальную или горизонтальную ориентацию экрана в своих проектах на Unity! В этой статье мы рассмотрим небольшой скрипт, который я использовал в своем проекте. Читать далее

[Перевод] Как создать элементы HTML с несколькими классами с помощью JavaScript В этой статье мы рассмотрим, как создать элементы HTML с несколькими классами с помощью JavaScript. Читать далее

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

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

Неочевидное про Fragment API. Часть 2. (Не) создаем инстанс Всем привет! Меня зовут Максим Бредихин, я Android-разработчик в Тинькофф. А это — вторая статья серии об интересных моментах из Fragment API, о которых вы, возможно, не знали.Готовьте вкусности, сегодня я расскажу, как (не) создавать новые инстансы фрагментов. Читать далее

Ностальгии пост: Windows 95 уже 27 лет. Как установить эту ОС на разных устройствах В августе 2022 года Windows 95 исполнилось 27 лет. Казалось бы, совсем недавно операционная система праздновала 25-летие, но время бежит быстро. В любом случае ОС была действительно новым словом среди операционных систем того времени. Об истории создания Windows 95 неоднокра...

Сам себе data scientist или зачем нужен анализ данных менеджеру по продажам Всем привет! Меня зовут Михаил Тимофеев, я работаю специалистом в отделе телемаркетинга в Ростелекоме. Когда начинал работать менеджером по продажам, меня постоянно мучали вопросы: почему клиент отказался, где моя зона роста, что делать, чтобы продавать больше? И т...

Write Once Run Anywhere Вспоминается мем, где человек говорит: «JavaScript — это круто, на нем можно делать роботов и мобильные приложения», а потом его душит собака. Я себя представляю таким человеком, но надеюсь, меня никто не задушит, потому что я делаю на JavaScript вещи, которые в принципе не ...

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

Задачи на собеседованиях. Event loop. JS Почти на каждом собеседовании бывает задачка на событийный цикл. И как я понял, не все до конца понимают как их решать. А решают их обычно в голове, а лучше используя бумажку и ручку. В статье я приведу способ решения через таблицу Основной поток/Микрозадачи/Макрозадачи Чита...

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

Даешь Mir Pay на Айфоне? Apple позволит удалить Wallet в iOS 16.1 На днях Apple разослала приглашения на первую за два года очную презентацию, которая пройдет 7 сентября. На ней будет однозначно представлено новое поколение iPhone, Apple Watch и, возможно, AirPods Pro. Вместе с релизом новых устройств нас ожидает выход анонсированных на W...

Тепловой аккумулятор позволит сократить выбросы углекислого газа на 15% Это становится возможным при использовании так называемых "кирпичных тостеров", основа которых обычный кирпич

Дзен позволил авторам упоминать другие каналы в постах и статьях В Дзене заработала функция упоминаний других каналов

GraphQL: доступ запрещен Жил-был один маленький разработчик, работал себе над REST API и горя не знал. Но вот приходит к нему тимлид и предлагает затащить GraphQL. Казалось бы: классный и мощный GraphQL — это запросто! Но в процессе проектирования API разработчик столкнулся с неожиданными проблемам...

Развертывание Spring Boot приложения с помощью Nginx, Let's Encrypt и Docker Compose Привет, Хабр! В своей первой статье я бы хотел поделиться опытом в развертывании Spring Boot приложения. Но для начала небольшое отступление, которое должно ответить на вопросы зачем и почему.Недавно я столкнулся с задачей разработать Telegram бота. Казалось бы, что тут слож...

[Перевод] Интеграция Open Policy Agent (OPA) в Kubernetes OPA можно интегрировать практически куда угодно, включая Kubernetes. Из этого материала вы узнаете, как интегрировать OPA в Kubernetes, и на примерах рассмотрите преимущества этой интеграции. В Kubernetes мы развертываем OPA как контроллер доступа.  Читать далее

[recovery mode] Как универсально организовать импорты в проекте, независимо от того, где находятся модули? Начнем с того, что это статья посягается на святой устой комьюнити Python разработчиков, устой звучит так "синтаксис python - идеален, стандартные библиотеки - идеальны, и полноценны, GIL - это неизбежная жертва для такого прекрасного языка как Python ... может быть в конце ...

WireMock – швейцарский нож в арсенале тестировщика. Часть 1 Всем привет! Меня зовут Анатолий Калмыков, и я отвечаю за качество создаваемых решений в «Ростелеком ИТ». Сегодня я расскажу вам про WireMock – это одновременно и утилита, и библиотека на Java для создания HTTP заглушек над веб-сервисами. Он создает HTTP-сервер, к которому м...

Преподавание иностранных языков. Системные ошибки Каждый раз говорят, что надо рассказывать в начале статьи кто я такой. Написал в профиль) Методист я, в общем.Цель статьи – обозначить проблему и перечислить причины её существования. Так вышло, что много лет работаю со студентами ведущих вузов Москвы и неплохо знаю ситуацию...

Пока все ждут появление Diablo Immortal в РУ Google Play, наши читатели качают свежую версию На днях Blizzard добавил и снова удалил Diablo Immortal из Google Play. Но это не проблема для читателей AppTime. Diablo Immortal — мобильная MMO, для которой в этом месяце выходит первый крупный патч; подробнее об этом в отдельной статье. Так вот, издание iXBT Games перед...

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

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

Разбираемся с концепцией аутентификации в HTTP Я часто путаю понятия авторизации и аутентификации между собой, поэтому решил создать материал, который закрепил бы эти понятия через какой-то практический опыт.Хотелось создать статью, которая поэтапно раскроет базовые концепции аутентификации и авторизации на практике, пос...

Параметры в Jenkins Jenkins — один из наиболее популярных инструментов CI/CD. Он позволяет автоматизировать каждый этап жизненного цикла программного обеспечения: от создания до развертывания. В этой статье Кирилл Борисов, Infrastructure Engineer технологического центра Deutsche Bank, расскажет...

[Перевод] Почему ваши ежедневные стендапы не работают и как это исправить Перевод статьи Лукаса Ф. Косты "Why your daily stand-ups don't work and how to fix them" с некоторыми размышлениями переводчика (выделены курсивом).Ежедневные стендапы — классический пример выученной беспомощности. Мы все знаем, что они отстой. Тем не менее, мы ничего с этим...

Использование slots | Python Когда мы создаем объекты для классов, требуется память, а атрибут хранится в виде словаря (в dict). В случае, если нам нужно выделить тысячи объектов, это займет достаточно много места в памяти.К счастью, есть выход — слоты, они обеспечивают специальный механи...

Без А/B результат XЗ, или Как построить высоконагруженную платформу А/B-тестов Один из важных вопросов как в нашей жизни, так и в бизнесе, и в IT — вопрос эффективности. Эффективно ли мы планируем наше время, те ли задачи решает бизнес, тот ли код мы оптимизируем? Чтобы ответить на эти вопросы, результат должен обладать главным критерием — измеримостью...

Сага о SEO, часть 1: серверный рендеринг Наверняка хотя бы раз в жизни вы или ваши знакомые в поисках приятного досуга на вечер обращались к Яндексу или Гуглу с запросами вроде “кино онлайн бесплатно” или “смотреть сериалы 2021”. Если так, не стоит стесняться, вы такой не один, с подобными запросами в Яндекс, напри...

Отвертки и пассатижи гейм-дизайнера: основные инструменты и навыки, которые пригодятся в работе Предположим, что ты — Junior Game Designer. Ты только начинаешь свой путь, а студия, в которую ты пришел, сразу отправляет тебя в бой — сражаться с реальными задачами. Какие инструменты использовать в работе с конфигурациями? Где собирать макеты для интерфейса? Как искать ре...

Вам письмо! 4 рассылки Лайфхакера, на которые стоит подписаться Проверенные материалы о здоровье, курс для начинающих авторов и не только.

Вот как мы поняли, что нам нужно больше стажеров Всем привет! Меня зовут Алексей Половинкин, я руковожу отделом Python в AGIMA. Последние пару лет мы набираем в команду больше стажеров. Это был наш эксперимент — хотели посмотреть, что из этого выйдет. Результат впечатлил: мы поняли, что нам нравится с ними работать. В...

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

[Перевод] Новая фаза материи открывает портал во второе измерение времени Физики разработали метод коррекции ошибок, способный существенно повысить производительность квантовых компьютеров. Статья с описанием экспериментов опубликована в Nature 20 июля. Подробности — к старту флагманского курса по Data Science. Читать далее

[Перевод] Пользовательские типы и std::format в C++20 std::format — очень полезное (и серьезное) нововведение C++20, позволяющее нам форматировать текст в строки удобным и эффективным образом. Оно привносит в язык форматирование в стиле Python в сочетании с безопасностью и простотой использования.В этой статье я расскажу, как р...

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

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

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

От абстрактной идеи к готовой механике: как гейм-дизайнеру составить ТЗ для программиста Когда идея игровой механики возникает в голове гейм-дизайнера, она существует в виде абстрактной задумки, у которой нет конкретного воплощения. И чтобы реализовать ее в реальности, он должен как-то объяснить программисту, в чем ее суть — гейм-дизайнеру нужно понятно и однозн...

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

В Белоруссии признали экстремистскими два набора стикеров из Telegram В суде Центрального района Минска признали экстремистскими материалами два набора стикеров для Telegram. Об этом сообщили в Министерстве информации РБ. Они называются «Luka» и «Sasha 3%». Эти наборы стикеров уже включили в список запрещенных мат...

Одна панель, чтобы объединить все визуализации. Panel for Python Качественная визуализация данных не менее важна для анализа данных, чем методы математической обработки. На сегодняшний день существуют десятки (если не сотни) библиотек для визуализации наборов данных на Python, но иногда в них встречаются уникальные возможности и хотелось ...

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

Перенос данных из Oracle в PostgreSQL: секционирование, временные таблицы и инструменты Поскольку тема «переезда» c СУБД Oracle на СУБД Postgres не теряет актуальности, продолжаем наш цикл о миграции. Это вторая статья о переносе данных из Oracle в Postgres (первая доступна по ссылке). На этот раз мы подробнее остановимся на секционировании и временных таблицах...

Роль UX писателя и копирайтера в мультивселенной безумия UX писатель (UXW) и копирайтер (CW) — две разные профессии. Их путают по одной причине: у них один и тот же основной рабочий инструмент — текст. С помощью текста копирайтер создает красивую, завораживающую вселенную, а UX писатель наводит там порядок — в этой вселенной ...

Почему iPhone переключается с LTE на 3G и что с этим делать Использование Интернета в Айфоне — важнейшая функция, без которой смартфон фактически становится бесполезным. В качестве экономии данных пользователи всегда могут выбрать, какую технологию передачи данных использовать — LTE, 3G или EDGE, известную как просто ...

Pump Station Framework для ПЛК ОВЕН 110-32м2 Привет, Хабр! Это мой первый опыт написания здесь, если что, уж сильно не пинайте). Сам я программист самоучка. Новый язык Structured Text и среду разработки Codesys разбирал по мануалу и стандарту МЭК-61131-3. В статье будет рассматриваться легкий самописный фреймворк для...

QA Lead и точка: Часть 3 – Адаптируемся под разные роли В прошлой статье QA Lead и точка: Часть 2 мы обсуждали, как QA лиду оставаться на пике формы и какие способы обучения  для этого выбрать. В  третьей части, мы поговорим про гибкость, а именно про возможность и готовность примерить на себе разные роли, которые, в за...

Немного про Infrastructure as Code в VMmanager и про ценности для IT-отделов и всей компании Привет, Хабр! Недавно мы выпустили новую функциональность в продукте VMmanager — интеграцию с Terraform и Swagger для работы в рамках концепции Infrastructure as Code. В этой статье я хочу крупноуровнево рассказать о таком подходе, немного раскрыть составляющие нашей интегра...

Приключения при настройке сервисов машинного обучения в MS SQL Server 2019 В статье описано, как настроить сервисы машинного обучения для R и Python. Несмотря на большой опыт в IT, сразу у меня не работает примерно ничего. Поэтому будут ссылки на то, что делать, если сразу не завелось. В итоге я поставила новый экземпляр с сервисами машинного обуче...

Обзор операторов PostgreSQL для Kubernetes. Часть 3: CloudNativePG Статья продолжает наш обзорный цикл о PostgreSQL-операторах для Kubernetes. В первой части мы рассматривали операторы Stolon, Crunchy Data и Zalando. Во второй — KubeDB и StackGres, а также объединили все пять операторов в сравнительную таблицу. В этот раз разбираем решение ...

Сравнение стандарта PEP8 и «Чистого кода» Роберта Мартина ПРЕДИСЛОВИЕПривет Хабр! Признаюсь, честно, за время моего отсутствия я успел по вам соскучиться.Прежде чем начинать изложение материала, позвольте рассказать небольшую историю, вдохновившую написать эту статью.Был совершенно обычный день, когда мне в обеденное время написал ...

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

Инсайдер поделился чертежами iPhone 14 Pro Max Инсайдер, известный под ником ShrimpApplePro, опубликовал в сети несколько фотографий чертежей будущего флагмана Apple. Главное, что можно увидеть на снимках — это габаритные размеры новинки.Читать дальше... ProstoMAC.com.| Постоянная ссылка | No comment Вы также можете оз...

Связь GreenPlum и PostgreSQL GreenPlum — популярное решение для масштабных аналитических систем и в небольших стартапах, и в крупных корпорациях. Оно предлагает понятный пользователям синтаксис ANSI SQL, хорошо ложится на облачный ландшафт, позволяет обучать и применять модели машинного обучения, а ещё ...

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

Боремся с 16-летним легаси-кодом, или исправляем C и C++ front-end в PVS-Studio В 2022 году статическому анализатору PVS-Studio для языков C и C++ исполняется 16 лет. Если бы анализатор был человеком, то он бы уже заканчивал школу. Это очень старый проект, и система типов в нем не потерпела кардинальных изменений практически с самого начала. В этой стат...

Программирование — это про общение Когда выгорание по внутренним (и внешним) причинам достигает максимума, когда тошнит от одного воспоминания о том как выглядит IDE, когда мнится что в седло большой разработки больше не вернутся никогда, но, при всём при этом, вносить свой вклад в развитие индустрии хочется ...

[Перевод] Введение в математическую оптимизацию на примере компании Recruit. Часть 1 Что такое «математическая оптимизация» — четыре области применения, шаги по её применению к реальным проблемам, чем она отличается от машинного обучения и как её использовать иначе Прим. переводчика: Ранее на хабре не было переводов статей с японского языка. Мы решили испра...

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

Задачи для средней школы. Скрещивание Microsoft Active Directory (LDAP) и Hashicorp Vault на домашнем стенде, часть 2 Это вторая (из трех) часть переписанного руководства по дообучению совсем начинающих коллег всяким мелочам - зачем нужен Hashicorp Vault, при чем тут MS Active directory, как и куда смотреть в Windows логи на элементарном уровне, базовые / Entry (Junior) SA задачи. Читать д...

[Перевод] Модульное тестирование операторов Kubernetes с помощью моков Из этой статьи вы узнаете, зачем нужны моки для модульного тестирования операторов Kubernetes и как их писать. Эти концепции применимы к операторам на разных языках и фреймворках. Здесь мы будем использовать Golang, controller-runtime и библиотеку testify. Читать далее

Запуск Flannel & kube-proxy отдельно от кластера Всем привет! В сегодняшнем материале разберемся, как сделать внутренние сетевые ресурсы кластера k8s доступными напрямую с внешнего хоста. Спойлер: в этом нам поможет запуск Flannel в связке с kube-proxy этом самом хосте. Так мы получим доступ к приложениям, запущенным в Kub...

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

Обнаружение препятствий на OpenCV. Часть 2 С момента последней статьи прошел почти год. За это время произошло немало событий, времени на мое хобби с автономным катером нашлось откровенно мало. :/Но идея создания алгоритма обнаружения абстрактных препятствий не давала мне покоя. Постоянно казалось, что до результата ...

[Перевод] Как создать Star Rating виджет на React.js и оптимизировать его В этой статье я хочу затронуть еще одну задачу, с которой вы можете столкнуться на собеседовании на позицию Front-End — создание Star Rating виджета.За последние пять месяцев у меня было 15 онсайт собеседований, а также офферы от Google, Roku, Microsoft и других компаний.Вы ...

Event-driven архитектура в Kubernetes Kubernetes, как система оркестрации, позволяет автоматизировать процесс развертывания сложных приложений и восстанавливать ожидаемое состояние кластера после сбоев. В общем случае приложение представляет собой резидентно запущенные контейнеры, которые обрабатывают запросы кл...

Дюк, вынеси мусор! — 6. Shenandoah GC Несмотря на то, что мы уже успели достаточно подробно рассмотреть целых шесть сборщиков мусора (Serial, Parallel, CMS, G1, ZGC, Epsilon), у OpenJDK еще есть, что нам предложить. Эта статья посвящена Shenandoah, тому самому сборщику, "который смог" (с таким слоганом он обычно...

[Перевод] Обработка окон и вкладок браузера в Selenium PHP Один из распространённых сценариев работы с веб-приложениями заключается в открывании нового окна (или вкладки) браузера после выполнения пользователем определённого действия. Многие веб-разработчики используют HTML-тэг __blank, приказывающий браузеру при нажатии на ссылку ...

Микроконтроллеры Megawin серии MG32F02: модули UART и отладка кода в ОЗУ Мы продолжаем цикл статей по микроконтроллерам компании Megawin на ядре Cortex-M0. В этой статье будут рассмотрены: периферийные модули UART, обработчики прерываний UART, метод отладки кода в ОЗУ МК с базовой частью инициализации во flash-памяти, механизм системных вызовов, ...

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

Web3.0 на Python, часть 1: основы Привет, Хабр! Во время знакомства с Web3 было сложно найти понятные примеры базовых операций с блокчейном с использованием Web3Py в одном месте. Например: просмотр баланса, отправка ETH и ERC20 токенов, минтинг NFT, взаимодействие с контрактами и тд. Эта статья как раз и пос...

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

Визуализация алгоритмов сортировки Приветствую всех, уважаемые читали! Меня зовут Сергей Семенов, я frontend-разработчик в компании Домклик. Эта статья посвящена созданию интерактивного приложения для визуализации алгоритмов сортировки. Надеюсь, многим из вас тема покажется интересной. Уверен, что вы успешно ...

Внедрение GraphQL на фронтенде без переломов Всем привет! Меня зовут Илья, я фронтенд-разработчик в hh.ru. В статье расскажу, как внедрить GraphQL на фронте, не переломав всё на своем пути. В проекте мы используем React и Redux, для асинхронных запросов у нас есть собственная библиотека, а бэкенд работает на Java. Для ...

Cache pollution? Запасайтесь тестами Всем ведь приходилось заниматься улучшением производительности? Для игр особенно актуально, ну может какая-то три-в-ряд не страдает этим. Как обычно серебряной пули нет, начинаем со структур данных, алгоритмов, спускаемся ниже если не помогает, придумываем SoA, AoS шаблоны. ...

[Перевод] Алгоритм большинства голосов Бойера — Мура #Введение# Решал задачки на LeetCode и вот небольшой переводик небольшой статьи про небольшой алгоритм. Алгоритм голосования Бойера-Мура является одним из самых популярных и оптимальных алгоритмов, который используется для поиска преобладающего элемента среди заданных, котор...

В мобильном приложении «Госуслуги Авто» теперь можно создать европротокол Минцифры России запустило сервис «Европротокол онлайн» в мобильном приложении «Госуслуги Авто». С его помощью автомобилисты могут оформить извещение о ДТП без вызова сотрудника полиции и заполнения бумажных бланков. Чтобы оформить электронный евр...

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

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

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

Сублицензиар или Лицензиат? Заблуждения при заключении сублицензионных соглашений Ежедневно IT-компании заключают множество контрактов, договоров или соглашений. Если с товарами и услугами всё прозрачно и понятно даже рядовому сотруднику, то с передачей прав даже у матёрых юристов и бухгалтеров случаются промахи. Я встречал немало Сублицензионных соглашен...

Старое железо СССР. Часть 2. Промiнь Старое железо СССР Часть 2.Спасибо за комментарии к части1. С критическими замечаниями согласен, но исправить недостатки не смогу. С картинками, безусловно, веселее. Однако пользование чужих картинок ограничено запутанными авторскими правилами. Опасаюсь их нарушить. Поэтому ...

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

Steam Deck — тетрис «на стероидах» Несколько месяцев назад к нам в офис приехал Steam Deck. Мы его заказывали еще в прошлом году, в первую очередь — чтобы протестировать на нем наш флагман War Robots, который доступен в библиотеке Steam. Но, конечно, интерес к девайсу не ограничивался только этим, и хотелось ...

[Перевод] Атака на Intel TXT через перехват выполнения кода SINIT Атака, представленная в этой статье, как обычно, предполагает, что злоумышленник может выполнить код до запуска TXT, т.е. до инструкции SENTER. Цель злоумышленника состоит в том, чтобы либо 1) иметь возможность скомпрометировать только что загруженный гипервизор, даже если о...

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

Умный дом на Wiren Board и Node-RED: ещё три полезных сценария без программирования Привет, хабровчане! С вами снова Дмитрий, и не будучи программистом я пробую настроить автоматизацию дома через визуальную среду Node-RED. В первой статье я настроил сценарии мастер-выключателя, включения вытяжки при превышении концентрации CO₂, и собрал приборную панель (da...

Похоже, Google готовит пару очень необычных смартфонов Можно не сомневаться, что Google имеет множество аппаратных продуктов, которые должны появиться в скором будущем. Конференция разработчиков Google I/O, которая прошла несколько месяцев назад показала нам некоторые из них. Среди прочего оказался не только Pixel 6a, который у...

[Перевод] Как планировать выполнение команд с помощью Anacron в Linux Когда нам требуется запланировать выполнение задачи в Linux, мы всегда можем использовать такие утилиты, как cron или systemd-timers. Есть различные реализации cron, но всех их объединяет то, что они запускаются как системные службы и рассчитаны на использование в постоянно...

SVTR — state-of-the-art нейросеть для задачи OCR SVTR - state-of-the-art модель-трансформер для решения задачи OCR. Авторами статьи была предложена архитектура с одним "зрительным" модулем для эффективного распознавания текста. Основная идея работы заключается в обработке признаков разного уровня, то есть локальных, которы...

Управление устройствами интернета вещей через Kubernetes Kubernetes последовательно захватывает все новые ниши для декларативного описания ожидаемого состояния и теперь ресурсами Kubernetes можно управлять облачными провайдерами (например, через Crossplane), создавать и масштабировать функции (KNative) и многим другим. И кажется и...

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

[Перевод] Джанет Джексон, разрушительница ноутбуков Как-то раз коллега поделился с автором этой статьи одной байкой со времен поддержки Windows XP. Крупный производитель компьютеров обнаружил, что, если включить композицию “Rhythm Nation” Джанет Джексон, то некоторые модели ноутбуков выходят из строя. Не хотелось бы оказаться...

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

[Перевод] Что нового в Swift 5.7 Swift 5.7 привносит в язык очередную гигантскую коллекцию изменений и улучшений, включая такие мощные фичи, как регулярные выражения; практические усовершенствования, как сокращенный синтаксис if let; а также множество доработок по приведению в порядок согласованности вокруг...

[Перевод] Провал Tailwind, инструмента для невежд Привет, Хабр! Не так давно в нашем блоге вышел перевод статьи «Взлет и падение Bootstrap». Как указали в комментариях наши читатели, вскоре после публикации оригинального материала на Medium, на том же ресурсе появилось и опровержение. Чтобы вы могли оценить обе точки зрения...

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

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

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

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

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

Торопиться не надо… (Про спинлоки) После небольшой статьи про особенности при работе с кэшем (https://habr.com/ru/post/687146/) мне в личку прилетело несколько замечаний про работу спинлоков и приглашение на собес от пчелайнов, приятно, что технические статьи читают не только технари... лирика. Возвращаясь к ...

Ученые Сколтеха и МГУ создали эффективную замену литию в аккумуляторах Российские ученые разработали катод для натрий-ионных аккумуляторов. Статья с описанием изобретения опубликована в Nature Communications. Современные аккумуляторы для телефонов и электромобилей изготавливаются с использованием лития. ...

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

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

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

SamsPcbLab, часть 4: Тактика развития микроэлектронной отрасли РФ до 2030 года Обстоятельства подтолкнули подумать на тему существующих проблем в отрасли, а также их возможных решений. Решил оформить это в статью на Хабре, но сначала сел за изучение уже написанного, чтобы не повторяться, а также откалибровать свои мысли. Прочитал около 20 статей, как в...

Скамейки на пустой площади: как создать условия для геймдев-обучения и решить кадровый вопрос на годы вперед Пензенской игровой студии BIT.GAMES в этом году исполняется 20 лет: 15 из них мы разрабатываем игры, 3 — обучаем разрабатывать. И нет, это не инфобизнес. Это жизненная потребность растить для себя кадры в региональных, не столичных условиях. Как организовать геймдев-про...

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

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

[recovery mode] Platform V Incident Manager и обработка связанных инцидентов: упрощаем жизнь командам сопровождения Привет, Хабр! Меня зовут Евгений Янес, я ведущий руководитель IT-направления в СберТехе — компании, которая строит Platform V, цифровую платформу Сбера для разработки бизнес-приложений. В статье расскажу, как мы создали Platform V Incident Manager — продукт для автоматизации...

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

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

Создание модулей с учётом новой структуры Joomla 4 Joomla 4 "под капотом" претерпела немало изменений относительно предыдущих версий. Её кодовую базу сообщество разработчиков регулярно подтягивают до современных реалий, вводя актуальные технологии в ядро CMS. Так, например, если раньше загрузка классов была вариациями на тем...

C++. Унарный минус и беззнаковый тип Привет, Хабр! Меня зовут Владимир, я работаю в VK Карты. Хочу рассказать про случай, который недавно произошёл у нас в подразделении. Он кажется достаточно типичным и может быть интересен другим программистам.Нам, программистам на C++, не привыкать, что даже самый безобидный...

NetEase анонсировал игру «unVEIL the world» на iOS и Андроид Ролевая игра «unVEIL the world» выйдет на смартфоны. За её иллюстрацию отвечает автор манги «Обещанная Страна Грёз». «unVEIL the world» — мобильная RPG в аниме-стилистике, где вы собираете группу из героев. Судя по описанию и видео, то сюжет игры вращается вокруг огромного ...

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

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

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

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

Что общего между локализацией багов и расследованием преступления? Всем привет! Меня зовут Иван, я QA-инженер релизной команды в inDriver. В этой статье хочу вольно порассуждать о схожести моделей когнитивной деятельности в тестировании ПО и расследовании уголовных дел. Мне кажется, у этих сфер много общего — например, оба процесса представ...

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

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

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

Груг против сложности. Я пролинтил все посты на Хабре про Python, и вот что я нашёл В какой-то момент времени я превратился в педанта брюзгу. В фильмах малейшие нестыковки и провалы в логике портят мне весь просмотр. В чатах меня бесит it's вместо its. А в статьях про программирование... Всё плохо. За меня всё уже сказал @AlexanderAstafiev, я лишь процитиру...

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

Недельный геймдев: #82 — 14 августа, 2022 Из новостей: Nvidia выложила в открытый доступ MDL SDK, у Unity вышла новая демка Lion с правдоподобными волосами и шерстью, AppLovin предложил купить Unity за 17,5 миллиардов.Из интересностей: годный доклад с GDC от звукорежиссёра Джеффа ван Дайка про создание звуковых э...

О доверии-2 или Почему надо вести себя хорошо Статья двухлетней давности вызвала кое-какой резонанс, а последние месяцы максимально жёстко уткнули нас в то, как много (да всё, фактически!) зависит от того, кому и чему мы верим. Ну вот.1. Как-то в середине 80-х сестра моя пришла из детского сада и, с благоговением в голо...

Как разговорить айтишника: превращаем инженера в спикера Доброго времени суток, друзья. Меня зовут Константин Архипов, руководитель проектов в команде DocFlow МТС Digital, преподаватель IT-центра МАИ, амбассадор конкурса «Цифровой прорыв» АНО «Россия – страна возможностей». В этой статье я расскажу о том, как научить специалистов ...

Рецепт готовки Apache Kafka: как создавался Data Lake на 80 Тb Kafka позволит вам грамотно организовать работу с большим массивом данных, но в процессе может подкинуть проблем. Иногда придется устроить танцы с бубном, чтобы программа продолжила работать, а не рухнула в момент запуска.О не очень стандартном использовании Apache Kafka и л...

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

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

О приеме заявок на участие в гранте объявил MarsDAO Фонд гранта в $200 000 будет распределен между как действующими, так и разрабатываемыми DeFi проектами. Участники получат до $40 тысяч после рассмотрения заявок организаторами. Грант рассчитан для DeFi проектов, имеющих в основе дефляционную модель, полезных криптосообществу...

Как отслеживать сон с помощью Apple Watch Возможности отслеживать сон с помощью Apple Watch ждали долгих пять лет с момента выхода часов. В 2020 году вместе с выходом watchOS 7, Apple предоставила своим пользователям такую возможность. Но количество определяемых показателей было очень небольшим. Часы по-прежнему не...

[Перевод] Целеустремленный зомби Давние читатели “crawl” могут вспомнить, что у меня никогда не хватало терпения для идеи “Искусственный Интеллект просто хочет жить”. Я растоптал её ещё в своём самом первом романе — Читать далее

Решения для резервного копирования и восстановления из Поднебесной Каждый год появляются новые вызовы, что заставляют ИТ-компании искать нетривиальные подходы для решения задач своих заказчиков. И, как вы понимаете, «ЛАНИТ-Интеграция» не стала исключением. Нашей команде уже удалось поработать со множеством продуктов, однако мы не перестаем ...

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

Стало известно, когда выйдет iOS 16. Ждать осталось недолго На WWDC 2022 Apple представила новые версии операционных систем для iPhone, iPad, Mac и Apple Watch. С версией для планшетов получилась заминка, и ее релиз откладывается как минимум на месяц. Мы рассказывали об этом в отдельном материале. macOS всегда выходит позже осенью. ...

Twitter позволит редактировать твиты. Наконец-то! По данным Bloomberg, Twitter тестирует функцию редактирования публикаций и в скором времени объявит о её появлении.

Запуск MFC-приложения на не-x86 архитектуре нативно при помощи Winelib и подключение к нему плагина на Qt Занимался я недавно портированием одного старого win32 MFC MDI приложения, до сих пор разрабатываемого с использованием Microsoft Visual Studio 6.0 (среда разработки 1998 года выпуска), на Linux. При чем необходимо было, чтобы под Linux собирался нативный бинарник в формате ...

Размер имеет значение! Часть 2 Как бы мы себя не обманывали - Размер имеет значение! И конечно, мы будем говорить о размере нашего андроид приложения, куда мы добавляем кучу классных features, и даже не задумываемся как это может негативно повлиять на размер приложения. Поэтому мы научимся обнаруживать ре...

Мониторинг дисков и программных RAID-массивов с помощью Zabbix Ранее в статьях, посвященных Zabbix, мы рассказали про особенности мониторинга SAAS-сервиса интернет-магазинов, а также про установку сервера и агента Zabbix.Новая статья поможет вам настроить мониторинг дисков и программных RAID-массивов, созданных с помощью mdadm. Без преу...

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

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

Обзор паттернов интеграции микросервисов. Часть 2 Продолжаем обзор паттернов интеграции микросервисов. В первой части мы рассказали, зачем IT-специалистам нужны шаблоны интеграции, и для каких задач они подходят. Подробно остановилисьна Circuit Breaker, Sidecar, Ambassador, Anti-Corruption Layer и Async Request-Reply. Сегод...

Первый опыт написания полноценной программы Каждый начинающий программист мечтает реализовать свой собственный проект. Не написать простенький код, по заданию преподавателя, а воплотить в жизнь свои идеи. Так и я, изучая C++ 3-4 месяца, решился попробовать разработать макет электронного журнала для преподавателей. Чи...

Деньги, знания, самооценка: зачем айтишнику становиться ментором Недавнее исследование MentorcliQ показало, что все компании США из списка топ-50 по версии Fortune используют программы менторства. Также наставничество практикуют 84% компаний, входящих в топ-500. Во время экономического спада из-за Covid-19 у компаний с программами об...

LINSTOR — это как Kubernetes, но для блочных устройств (обзор и видео доклада) В июне я выступил на объединенной конференции DevOpsConf & TechLead Conf 2022. Доклад был посвящен LINSTOR — Open Source-хранилищу от компании LINBIT (разработчики DRBD). Основной идеей выступления было показать [на примере Kubernetes], как работает и устроен LINSTOR, ка...

Что такое слои блокчейна L0, L1, L2 и L3 и зачем они нужны В последнее время в новостях все чаще и чаще упоминаются L-слои блокчейна (например, инвестиционный фонд A16z вкладывается в L2 решение на Ethereum Optimism или L3 компания Orbs расширяет свое решение на блокчейн TON).Концепция слоев — это категоризация блокчейнов, необходим...

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

Впечатления от Weekend Offer для бэкенд-разработчиков В прошлой статье я рассказывал про One Day Offer Fronted, сегодня поделюсь впечатлениями об аналогичном мероприятии для бэкенд разработчиков.В комментариях к прошлой статье было высказано предположение, что мне просто не повезло. А рекрутер из яндекса заметила что участников...

Huawei Mate 50 «позволит пронзить небо». Huawei на день опередит Apple с анонсом спутниковой связи в смартфоне Ю Чэндун, глава потребительного бизнеса Huawei, опубликовал новый тизер серии смартфонов Huawei Mate 50, заявив, что она принесет с собой прорыв в коммуникационных технологиях. В частности он заявил, что в смартфоне будет использоваться технология, которая «позвол...

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

Microsoft подтвердила дату выхода обновления Windows 10 22H2 Несмотря на то, что сейчас всё внимание Microsoft уделено Windows 11 и её свежему обновлению, всё же готовится и новая версия Windows 10 под номером 2H22. Забавно, что компания напомнила об этом в своём блоге, причём именно в материале где описывается, , как загрузить о...

США объявили войну крипто-анонимности: как санкции на Tornado Cash меняют будущее блокчейна Прямо сейчас происходят события, которые могут стать поворотной точкой для всей криптоиндустрии (а заодно и для всех open-source программистов). Тем более странно, что пока эти события вызывают ажиотаж только в узком кругу настоящих криптанов… В этой статье я попытаюсь объяс...

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

Проклятые Земли. Освежаем геймплей Статья о том, как реверс-инжиниринг может дать новое дыхание старой игре и освежить её геймплей. Обзор уникальных фишек игры Проклятые Земли, изменение механик и добавление новых фишек.Наверняка многие играли в Проклятые Земли и аддоны к ним лет 15, а то и все 22 года назад....

Что будет с iOS-разработкой в России Этим вопросом наверняка задавался не один мобильный разработчик, который создаёт приложения для айфонов и другой яблочной техники. Приложения удаляют из App Store, статьи пугают тем, что скоро все смартфоны превратятся в кирпич, — ситуация напряжённая. Может, уже стоит искат...

Как работает Autoplay в онлайн-кинотеатре Привет! Меня зовут Алексей Мельников, я продакт в KION (онлайн-кинотеатр от МТС Digital), занимаюсь фичами, связанными с искусственным интеллектом. Весной мы писали о фиче пропуска титров. Судя по карме, статья хабровчанам понравилась и это мотивировало нас на написание...

Топ вещей из Java, которых мне не хватает в C# Спор "Java vs. C#" существует чуть меньше, чем вечность. Есть много статей, затрагивающих разные участки его спектра: Что есть в C# чего нет в Java, что языки друг у друга позаимствовали, у одних LINQ, у других обратная совместимость, в общем, тысячи их.Однако, я никогда не ...

Apple патентует перчатки для управления AR-шлемом Компания Apple подала заявку на новый патент, в котором описаны специальные перчатки для фирменного AR-шлема. Напомним, что работы над последним ведутся уже не первый год.Читать дальше... ProstoMAC.com.| Постоянная ссылка | No comment Вы также можете ознакомиться с другими...

[recovery mode] FizzBuzz по-пенсионерски Статья коллеги @qrdl про собеседование с написанием вариантов FizzBuzz очень понравилась.Но очень не понравился код, совсем не понравился. (Так бывает, статья задорная, веселая, с понтами, а код не хороший) И после публикации технотекстов пришлось внимательно изучить https:/...

5 лучших ноутбуков для работы лета 2022 года: от ультрабуков до игровых ПК Сегодня поговорим о технике, а именно — о рабочих инструментах для многих представителей IT-индустрии: от дизайнеров до разработчиков. Конечно, потребности у всех разные: кому-то нужен сверхмощный ПК, а для кого-то и хромбука 2018 года достаточно. В этой статье расскажем лиш...

Virtual Infrastructure для разработчиков и сисадминов: обзор сервиса #CloudMTS Привет, Хабр! Разнообразие софта, программных сред, мощностей и конфигураций железа постоянно увеличивает требования к рабочему месту. При работе над несколькими проектами одновременно требования удваиваются.  Многие сейчас занимаются текущими делами удаленно, без привы...

Докеризированные команды и make, как стандартная точка в проект. Быстрый способ запуска разработки проекта на php В публикации опишу подход к использованию контейнеров docker и make который я практиковал последние несколько лет в своих рабочих командах и личных pet-проектах. Подход сформировался в процессе поиска минималистичного и унифицированного способа запуска проектов на php. Чтобы...

Перегрузка функций в TypeScript Перегрузка функций — это та область TS, которая находится в невидимой зоне для разработчиков, которые изучали JS, а потом на работе «на ходу» начали осваивать TS. Особенно, если изучение JS не было связано с университетом или любым другим фундаментальным образованием. Если в...

Danger. Автоматизируем ревью на CI и пишем свой плагин Привет, я Татьяна Родионова, Android-разработчица в Lamoda. Как-то раз передо мной появилась задача упростить ревью пул-реквестов с помощью Danger. Я решила добавить автоматическую проверку код стайла, используя ktlint. Но оказалось, что Danger не поддерживает такое решение,...

Похищаем сохраненный в Chrome пароль с помощью XSS Меня зовут Артем Мышенков, я ведущий инженер по технической защите информации в команде безопасности REG.RU. Наша команда занимается тестированием систем компании на безопасность и поиском уязвимостей.В этой статье я расскажу о том, как с помощью XSS-атаки в сочетании с Clic...

В связи с утечкой базы данных «Яндекс.Еды» возбуждено уголовное дело Сразу по трем разным статьям УК РФ

Старт 2 сезона Security Small Talk: ролики для профи и новичков в ИБ Мы продолжаем делать видеоконтент, который может быть полезным как начинающим безопасникам, студентам, так и ИБ-и ИТ-специалистам. Сегодня публикуем 2 новых ролика Security Small Talk. В первом смотрите об управлении секретами в DevOps-окружениях, во втором найдете интересны...

Что должен знать дата-инженер. Роадмап для джуниора Привет, username! Меня зовут Иван Васенков и я джуниор дата-инженер в дирекции данных и аналитики Lamoda. Но к этой профессии я пришел не сразу: окончив университет, я начал работать аналитиком данных, затем стал BI-разработчиком, а уже после этого — дата-инженером.На моем п...

Русский язык в программировании Судя по результатам голосований (на compiler.su и даже здесь на Хабре) идею программирования на русском поддерживает не так уж и мало людей. В данной статье приводится мой краткий обзор некоторых языков программирования и решений, которые позволяют программировать на русско...

Как печатать гибкими материалами | Аддитивный ликбез за 5 минут Привет, 3DToday!✌️В эту пятницу, после 18:00 смотрите очередной познавательный выпуск для начинающих и тех, кто интересуется аддитивными технологиями!

Суффиксное дерево на python Суффиксное дерево (Suffix Tree, ST) – это структура данных, которая позволяет "проиндексировать" строку за линейное время от её длины, чтобы потом быстро находить подстроки (за время О(длина искомой подстроки)).Тема построения Suffix Tree и его применения хорошо раскрыта...

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

«Коммерсантъ» напугал российских эмигрантов штрафами в размере 2000% за переводы на иностранные карты В Твиттере завирусилась статья «Коммерсанта» с жутковатым посылом: если гражданин РФ эмигрировал в другую страну и открыл там себе местную банковскую карточку – то любой валютный перевод другому такому релоканту грозит чуть ли не неминуемым штрафом от российской налоговой в ...

Как выбрать шлагбаум? Если посмотреть на ассортимент шлагбаумов у нас на сайте, то одна из первых вещей, которая бросается в глаза, это разлет стоимости шлагбаумов от 49 650 рублей до 1 793 567 рублей. А один из часто возникающих вопросов это, а в чем собственно разница между шлагбаумом за условн...

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

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

Как открыть IT фирму в Грузии: делюсь опытом В июне 2022 года нам удалось зарегистрировать IT-фирму в Тбилиси. Ниже читатель найдет несколько полезных советов, если захочет сделать то же самое. Можно ли открыть фирму самомуК сожалению, в Грузии нет интернет-сервиса удаленной регистрации компаний, такого как, например...

[Перевод] Как использовать тип JSONB в PostgreSQL с Hibernate Многие СУБД, помимо поддержки стандарта SQL, предлагают дополнительную проприетарную функциональность. Одним из таких примеров является тип данных JSONB в PostgreSQL, позволяющий эффективно хранить JSON-документы.Конечно, хранить JSON-документ можно и в виде простого текста ...

Mir Pay не работает. Что на этот раз случилось с платежным сервисом После прекращения работы Google Pay и появления проблем с картами Visa и MasterCard в России миллионам людей на помощь пришел сервис Mir Pay. Он позволяет оплачивать покупки, используя смартфон. Однако в работе фирменного приложения постоянно случаются разные проблемы. Пожа...

Что известно про Apple Watch Pro и зачем они нужны Любители экстремальных видов спорта, которые по совместительству являются еще и пользователями Apple Watch, не первый год просят Apple выпустить защищенную версию часов. Ведь какими бы прочными и защищенными не были обычные Apple Watch, экстремальный спорт даже они пережить...

В Steam состоялся релиз симулятора пивовара   В Steam состоялся релиз симулятора пивовара Brewmaster. Игра позволит приготовить пиво своей мечты, подробно пройдя все этапа готовки этого напитка. До 6 октября на игру действует скидка 10%, а ее стоимость составляет 399 рублей. У игры уже множество положительных отзывов...