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

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

Практика использования Spark SQL или как не наступить на грабли Если вы работаете с SQL, то вам это будет нужно очень скоро. Apache Spark – это один из инструментов, входящих в экосистему Hadoop, который обрабатывает данные в оперативной памяти. Одним из его расширений является Spark SQL, позволяющий выполнять SQL-запросы над данными. Sp...

[Из песочницы] Doctrine ResultSetMapping на примерах Doctrine ORM предоставляет разработчику удобные средства выборки данных. Это и мощный DQL для работы в объектно-ориентированном ключе, и удобный Query Builder, простой и понятный в использовании. Они покрывают большую часть потребностей, но иногда возникает необходимость исп...

Entity Framework Core Привет, друзья. В этот чудесный майский день мы продолжаем трудиться и сегодня хотим рассказать о том, что в мае OTUS запускает полюбившийся всем курс «Разработчик С#», а также отдельный курс по С# ASP. NET Core. Традиционно, в преддверии старта курсов начинаем публиковать п...

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

Интернет вещей в Яндекс.Облаке: как устроены сервисы Yandex IoT Core и Yandex Cloud Functions В октябре прошлого года состоялась первая облачная конференция Яндекса Yandex Scale. На ней было объявлено о запуске множества новых сервисов, в том числе Yandex IoT Core, который позволяет обмениваться данными с миллионами устройств Интернета вещей. В этой статье я расск...

Введение в язык запросов Cypher Язык запросов Cypher изначально разработан специально для графовой СУБД Neo4j. Целью Cypher является предоставить человеко-читаемый язык запросов к графовым базам данных похожий на SQL. На сегодня Cypher поддерживается несколькими графовыми СУБД. Для стандартизации Cypher бы...

Используем Google Tag Manager Server-Side вместо Zapier Появление Google Tag Manager Server Side привнесло большое количество возможностей в мир маркетологов и дата аналитиков. Так как инструмент новый не все понимают чем он может быть полезен конкретно для их компании. Одно из преимуществ GTM на сторонне сервера в том что вы мо...

[Из песочницы] Как работают реляционные базы данных (Часть 1) Привет, Хабр! Представляю вашему вниманию перевод статьи "How does a relational database work". Когда дело доходит до реляционных баз данных я не могу не думать, что чего-то не хватает. Они используются везде. Существует множество различных баз данных: от небольшог...

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

База данных на SharedPreferences — Android Kotlin Для хранения большого количества информации в Android используется DataBase (SQLite, FireBase и т. п.), а для простого хранения настроек SharedPreferences. Вопрос, можно ли использовать SharedPreferences как своего рода Базу Данных и как это сделать? Статья написана об учеб...

ArangoDB в реальном проекте ArangoDB гибридная (документная и графовая) база данных. К ее положительным сторонам относятся: мощный и удобный язык запросов AQL JOIN (даже более мощный чем в реляционных базах данных) репликация и шардинг ACID (в кластере работает только в платной версии) Из менее сущес...

Организация деплоя в множество k8s окружений с помощью helmfile Helmfile — обёртка для helm, которая позволяет в одном месте описывать множество helm релизов, параметризовать их чарты для нескольких окружений, а также задавать порядок их деплоя. О самом helmfile и примерах его использования можно почитать в readme и best practices guide....

[Из песочницы] Android Remote Debugger — удаленная отладка Android приложений Отладка является важным этапом разработки программного обеспечения. Поиск и исправление ошибок позволяет разрабатывать качественные продукты. В данной статье я хочу поговорить об отладке только Android приложений. Android Studio предоставляет нам различные инструменты профил...

[Перевод] Решение проблемы N+1 запроса без увеличения потребления памяти в Laravel Одна из основных проблем разработчиков, когда они создают приложение с ORM — это N+1 запрос в их приложениях. Проблема N+1 запроса — это не эффективный способ обращения к базе данных, когда приложение генерирует запрос на каждый вызов объекта. Эта проблема обычно возникает, ...

[Перевод] Учебный проект на Python: интерфейс в 40 строк кода (часть 2) Демонстрация проекта Python с пользовательским интерфейсом никогда не была такой простой. С помощью Streamlit Framework вы можете создавать браузерный пользовательский интерфейс, используя только код Python. В этой статье мы будем создавать пользовательский интерфейс для п...

База данных как сервис: когда, зачем и как использовать DBaaS в облаке Database by Julian-Faylona Многие облачные платформы предлагают базы данных как сервис (Database as a Service, DBaaS). Базу можно создать в облаке в несколько кликов, не тратя время на настройку и поддержку. Но не всем приложениям облачные базы данных подходят. Мы расскажем...

Идеальный инструмент для работы с СУБД без SQL для Node.js или Все, что вы хотели знать о Sequelize. Часть 2 Представляю вашему вниманию руководство по Sequelize. Sequelize — это ORM (Object-Relational Mapping — объектно-реляционное отображение или преобразование) для работы с такими СУБД (системами управления (реляционными) базами данных, Relational Database Management System, RD...

VINTEO Server — корпоративная видеоконференцсвязь высшего класса. Установка, настройка, полное описание В прошлой статье, Обучение, переговоры, консультации удалённо — Часть 2: Vinteo Server — 3 месяца бесплатной видеоконференцсвязи, я немного описал особенности и функционал уникального российского решения ВКС Vinteo Server. Эта статья является подробным руководством по устано...

[Перевод] Java: свертывание многострочных логов в однострочный лог с помощью Spirng и логгера Logback или Log4j2 Logback и Log4j2 – одни из самых известных фреймворков логирования в JAVA. Фреймворк Logback используется только совместно с библиотекой SLF4J, которая представляет собой интерфейс для систем протоколирования событий. Log4j2 представляет собой вторую, улучшенную версию логге...

Язык запросов для TSDB. Улучшаем PromQL (Александр Валялкин, VictoriaMetrics) Добрый день! Сегодня я вам расскажу немного про PromQL. Это язык запросов для time-series баз данных. Затем расскажу, как мы его усовершенствовали в разрабатываемой нами time-series базе данных VictoriaMetrics. Читать дальше →

Как Хабр взаимодействует с госорганами и другими заявителями. Transparency report за все годы Привет, Хабр! Наконец-то представлюсь — меня зовут Алексей Шевелёв и в Хабре я руковожу отделом по работе с пользователями (куда входит фидбек через форму обратной связи по всем проектам), попутно являясь Комьюнити Менеджером. И так получается, что с некоторой периодичностью...

Опыт использования gRPC в Почте Mail.ru Привет, Хабр! Я работаю в команде Антиспама Почты Mail.ru. В этой статье я бы хотел рассказать про наш опыт запуска сервиса с пропускной способностью около 3 миллионов запросов в минуту на базе технологии gRPC. Это современная технология передачи данных по сети, которая реа...

Gotta go fast. Оптимизация запросов содержимого письма по IMAP Всем привет! В прошлой статье я рассказал как можно быстро синхронизировать содержимое ящика в локальном кеше. Здесь же я хочу рассказать об особенностях запроса содержимого писем и как лучше запрашивать контент, не боясь за большой расход трафика. Читать дальше →

[Из песочницы] pyqtdeploy, или упаковываем Python-программу в exe'шник… the hard way Наверняка, каждый, кто хоть раз писал что-то на Python, задумывался о том, как распространять свою программу (или, пусть даже, простой скрипт) без лишней головной боли: без необходимости устанавливать сам интерпретатор, различные зависимости, кроссплатформенно, чтобы одним ...

Разведка с geo2ip и reverse-whois Разведка сетевых ресурсов компании главным образом заключается в брутфорсе поддоменов с последующим ресолвом найденных сетевых блоков. Далее могут быть найдены новые домены 2 уровня и процедура повторяется снова. Это позволяет найти новые IP-адреса на каждой итерации.Этот ме...

[Из песочницы] Игра с открытым API: Swagger Play В данной статье я хочу рассказать, как использовать Swagger модуль для Play Framework, с примерами из реальной жизни. Я расскажу: Как прикрутить последнюю версию Swagger-Play (модуль Play, позволяющий использовать аннотации swagger-api и генерировать на их основе документ...

Apache Spark, lazy evaluation и многостраничные SQL запросы Известное об известном: spark работает с “датафреймами” (dataframes), которые являются алгоритмами трансформации. Алгоритм запускается в самый последний момент для того, чтобы "дать больше места" оптимизации и за счет оптимизации максимально эффективно его выполнить. Под кат...

Новые возможности postgres_exporter для мониторинга PostgreSQL Добрый день, читатели habr! В первой заметке о posgres_exporter, я рассмотрел достаточно частный случай, при работе с новой, на тот момент фитчей, а именно возможностью мониторинга одним экспортером набора экземпляров и/или баз данных. И описал тот "букет" проблем с которыми...

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

Cassandra. Как не умереть, если знаешь только Oracle Привет, Хабр. Меня зовут Миша Бутримов, я хотел бы хотел немного рассказать про Cassandra. Мой рассказ будет полезен тем, кто никогда не сталкивался с NoSQL-базами, — у нее есть очень много особенностей реализации и подводных камней, про которые нужно знать. И если кроме Or...

Как Magento 2 взаимодействует с Vue Storefront Привет! Меня зовут Павел и я занимаюсь бэкенд разработкой. Как уже писал AndreyHabr, многие из наших проектов основаны на стеке Adobe Magento 2 (для краткости далее я буду называть ее M2) в качестве бэкенда и Vue Storefront (VS) в качестве фронтенда. Я не буду подробно оста...

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

SOA на Laravel и JSON-RPC 2.0 SOA (Сервис-Ориентированная Архитектура) строится путём комбинации и взаимодействия слабо-связанных сервисов. Для демонстрации создадим два приложения Клиент и Сервер. А их взаимодействие организуем посредством протокола удаленного вызова процедур JSON-RPC 2.0. Читать дал...

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

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

[Перевод] JavaScript tree shaking, like a pro Это перевод статьи об оптимизации и уменьшении размера бандла приложения. Она хороша тем, что тут описаны best practices, советы, которых стоит придерживаться, чтобы тришейкинг работал и выкидывал неиспользуемый код из сборки. Она будет полезной многим, потому что сейчас все...

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

PubSub почти бесплатно: особенности NOTIFY в PostgreSQL Если ваши микросервисы уже используют общую базу PostgreSQL для хранения данных, или ей пользуются несколько экземпляров одного сервиса на разных серверах, можно относительно «дешево» получить возможность обмена сообщениями (PubSub) между ними без интеграции в архитектуру Re...

[Из песочницы] Настройка связки Nginx / LetsEncrypt в Docker Swarm Про то, как поднять контейнер Nginx и настроить для него автообновление сертификатов LetsEncrypt, есть довольно много статей. В этой будет описана довольно нестандартная схема. Основные моменты: Nginx разворачивается как сервис в Docker Swarm, а не как standalone-контейнер;...

[Перевод] Реализация технологии SSO на базе Node.js Веб-приложения создают с использованием клиент-серверной архитектуры, применяя в качестве коммуникационного протокола HTTP. HTTP — это протокол без сохранения состояния. Каждый раз, когда браузер отправляет серверу запрос, сервер обрабатывает этот запрос независимо от других...

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

[Перевод] Java/Spring: Как полностью сгенерировать CRUD REST API с помощью Speedment В этой статье вы узнаете, как с помощью Speedment создать полный CRUD REST API для базы данных. С каждым годом становится все очевиднее, что Spring Framework является одним из наиболее широко используемых фреймворков для веб-разработки на Java. Читать дальше →

[Из песочницы] Капча для codeigniter 4 Добрый день! Несмотря на заголовок статьи, в ней будут представлены общие методы и функции, которые я использовал для создания своей капчи, которые можно применить и в других фреймворках с минимальными правками. Некоторые функции и подходы основываются на материалах поста Ра...

Миграция IBM Lotus Notes/Domino в Microsoft Exchange без шума и пыли Может быть пора? Такой вопрос рано или поздно появляются у коллег, которые используют Lotus в качестве почтового клиента или системы документооборота. Запрос на миграцию (по нашему опыту) может возникнуть на совсем разных уровнях организации: от топ-менеджмента до пользоват...

[Перевод] Использование Clickhouse в качестве замены ELK, Big Query и TimescaleDB Clickhouse — это столбцовая система управления базами данных для онлайн обработки аналитических запросов (OLAP) с открытым исходным кодом, созданная Яндексом. Ее используют Яндекс, CloudFlare, VK.com, Badoo и другие сервисы по всему миру для хранения действительно больших об...

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

[Перевод] Front-end додзё: проекты для тренировки навыков разработчика (5 новых + 43 старых) 1. Клон Notion Приложение Notion полюбилось многим, оно позволяет оптимизировать рабочий процесс, работать с документами, планировать задачи, синхронизировать данные между устройствами. www.notion.so Чему вы научитесь, создавая клон Notion: HTML Drag and drop API. Пол...

Сжатие данных в Apache Ignite. Опыт Сбера При работе с большими объемами данных иногда может остро встать проблема нехватки места на дисках. Одним из способов решения данной проблемы является сжатие, благодаря которому, на том же оборудовании, можно себе позволить увеличить объемы хранения. В данной статье мы расс...

[Из песочницы] Как мигрировать Zabbix с MySQL на PostgreSQL с минимальным downtime В свете того, что Zabbix с некоторых пор поддерживает TimescaleDB, а тут еще и вышел новый LTS релиз Zabbix, то наверняка многие заинтересовались, как осуществить миграцию с MySQL на PostgreSQL. Несмотря на текст на картинке, вполне можно просто так взять и мигрировать Zabb...

[Из песочницы] Управление интерфейсом приложения при помощи жестов (Keras + CoreML) В настоящее время популярность программ с использованием искусственных нейронных сетей растет, в связи с этим появляется большое количество технологий, позволяющих упростить работу связанную с ними. В настоящей статье будет описан один из возможных путей реализации приложени...

Демонстрация Watch Dogs: Legion с трассировкой лучей на Xbox Series X Мы уже давно знаем, что одной из главных особенностей консолей нового поколения является трассировка лучей в реальном времени, а теперь на примере Watch Dogs: Legion можем возможности этой технологии на Xbox Series X. Напомним, что действия в игре происходят в недалёком бу...

[Перевод] Используем nftables в Red Hat Enterprise Linux 8 Статья подготовлена в преддверии старта курса «Администратор Linux» В Red Hat Enterprise Linux 8 приоритетным низкоуровневым решением является nftables. В этой статье мы поговорим о том, как начать использовать nftables. Наиболее актуальной она будет для системных администр...

Полная поддержка популярных реализаций Docker Registry в werf Все популярные реализации реестров для образов контейнеров поддерживают Docker Registry HTTP API и позволяют использовать одни и те же инструменты для работы с ними. Тем не менее, часть реализаций имеет свои особенности и ограничения, а значит — если вам нужно их поддержива...

PostgreSQL Antipatterns: «Должен остаться только один!» На SQL вы описываете «что» хотите получить, а не «как» это должно исполняться. Поэтому проблема разработки SQL-запросов в стиле «как слышится, так и пишется» занимает свое почетное место, наряду с особенностями вычисления условий в SQL. Сегодня на предельно простых примера...

[Перевод] Мои любимые инструменты разработчика Chrome Доброго времени суток, друзья! Chrome Developer Tools — очень мощный набор инструментов для разработки веб приложений. С помощью этих инструментов мы можем перемещаться по DOM, осуществлять проверку запросов на сервер, настраивать производительность приложений и др. Сред...

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

Об одной уязвимости в… Год назад, 21 марта 2019, в баг баунти программу Mail.Ru на HackerOne пришел очень хороший багрепорт от maxarr. При внедрении нулевого байта (ASCII 0) в POST-параметр одного из API-запросов веб-почты, который возвращал HTTP-редирект, в данных редиректа виднелись куски неин...

[Перевод] Продолжайте полет с Xamarin.Forms 4.4 Мы пообщались с нашими разработчиками, которые делают уйму мобильных приложений каждый год, и они сказали: «Мы не можем вспомнить, когда в последний раз мы делали мобильное приложение, которое НЕ включало бы в себя карусель.» Итак, мы рады представить новый элемент управлени...

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

Google Dorking или используем Гугл на максимум Вступление Google Dorks или Google Hacking — техника, используемая СМИ, следственными органами, инженерами по безопасности и любыми пользователями для создания запросов в различных поисковых системах для обнаружения скрытой информации и уязвимостях, которые можно обнаружить...

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

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

Какие смартфоны средней цены выгодно покупать? 10 самых мощных декабря Парни из AnTuTu взяли полезную привычку разделять смартфоны по группам, которые зависят от цены устройств. Ведь и без замеров и тестов понятно, что самыми мощными окажутся смартфоны на самом свежем чипсете, в данный момент на Snapdragon 855+ или Snapdragon 855. Далее идут ...

Битва Charles и Fiddler: как тестировать с комфортом? Всем привет! Меня зовут Ксения Мерзлозубова, и я тестирую мобильные приложения в компании ATI.SU.Для тестирования большинства задач мобильному тестировщику необходим сниффер — инструмент для перехвата и анализа трафика. Сейчас существует множество снифферов, но самые популяр...

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

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

Смартфон Huawei Nova 5 Pro обновили до Android 10 Компания Huawei выпустила стабильную версию прошивки EMUI 10 на базе операционной системы Android 10 для смартфона Huawei Nova 5 Pro. Апдейт привносит стандартные особенности Android 10: и измененный пользовательский интерфейс в журнальном стиле с заголовками и колонками, по...

Определяем направление на аэропорт с помощью RTL-SDR и GNU Radio Привет Хабр. В настоящее время существует не так уж много стандартов связи, которые с одной стороны, любопытны и интересны, с другой стороны, их описание не занимает 500 страниц в формате PDF. Одним из таких, несложных для декодирования, является сигнал VHF Omni-directional...

Установка ReportPortal в kubernetes ReportPortal – это веб-решение на базе открытого ПО, созданное разработчиками EPAM и OSS-сообщества. Его использование позволяет собрать в одном месте документы и результаты различных проектов по тестированию, которые выполняются в компании, и сделать их доступными для тести...

Catchain: алгоритм консенсуса блокчейна TON В предыдущем обзоре наша команда R&D рассказала о структуре Telegram Open Network и особенностях функционирования ключевых узлов (валидаторов) TON Blockchain, а также поделилась опытом Mercuryo, как валидатора сети. Эта статья посвящена одному из ключевых вопросов, отве...

SQL Server Plan Guide и другие не самые лучшие практики Обычно посты об оптимизации запросов рассказывают о том, как делать правильные вещи, чтобы помочь оптимизатору запросов выбрать оптимальный план выполнения: использовать SARGable-выражения в WHERE, доставать только те столбцы, которые нужны, использовать правильнопостроенные...

[Перевод] 5 вопросов по SQL, которые часто задают дата-сайентистам на собеседованиях Хотя составление SQL-запросов — это не самое интересное в работе дата-сайентистов, хорошее понимание SQL чрезвычайно важно для того, кто хочет преуспеть в любом занятии, связанном с обработкой данных. Дело тут в том, что SQL — это не только SELECT, FROM и WHERE. Чем больше S...

PostgreSQL Antipatterns: вредные JOIN и OR Бойтесь операций, buffers приносящих… На примере небольшого запроса рассмотрим некоторые универсальные подходы к оптимизации запросов на PostgreSQL. Пользоваться ими или нет — выбирать вам, но знать о них стоит. Читать дальше →

Подключение к session в Java и Python. HttpURLConnection и CookieManager (Java). Requests(Python) Допустим, что нам надо подключиться к серверу, авторизоваться и поддерживать сессию. В браузере это выглядит следующим образом: На адрес http://localhost:8080/login отправляется пустой GET запрос. Сервер присылает формочку для заполнения логина и пароля, а также присылает ...

IdentityServer4. Основные понятия. OpenID Connect, OAuth 2.0 и JWT Этим постом я хочу открыть ветку статей посвященную IdentityServer4. Начнем мы с основных понятий. Самым перспективным на текущий момент протоколом аутентификации является OpenID Connect, а протоколом авторизации (предоставления доступа) является OAuth 2.0. IdentityServer4 р...

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

Массовая оптимизация запросов PostgreSQL. Кирилл Боровиков (Тензор) В докладе представлены некоторые подходы, которые позволяют следить за производительностью SQL-запросов, когда их миллионы в сутки, а контролируемых серверов PostgreSQL — сотни. Какие технические решения позволяют нам эффективно обрабатывать такой объем информации, и как эт...

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

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

Как научиться разработке на Python: новый видеокурс Яндекса Осенью прошлого года в московском офисе Яндекса прошла первая Школа бэкенд-разработки. Мы сняли занятия на видео и сегодня рады поделиться на Хабре полным видеокурсом Школы. Он позволит вам научиться промышленной разработке на Python. Авторы лекций — опытные разработчики в Я...

[Перевод] Как ограничить частоту запросов в HAProxy: пошаговая инструкция Автор статьи объясняет, как реализовать в HAProxy ограничение скорости обработки запросов (rate limiting) с определенных IP-адресов. Команда Mail.ru Cloud Solutions перевела его статью — надеемся, что с ней вам не придется тратить на это столько времени и усилий, сколько пр...

[Из песочницы] Пакетная обработка в JDBC и HIBERNATE Здравствуйте! В этой статье, я кратко расскажу о пакетной обработке SQL (DML) операторов: INSERT, UPDATE, DELETE, как одной из возможностей достижения увеличения производительности. Преимущества В отличии от последовательного выполнения каждого SQL запроса, пакетная обрабо...

Американские инженеры разработали портативную систему на основе смартфона, позволяющую взаимодействовать с дополненной реальностью напрямую при помощи рук Американские разработчики создали систему дополненной реальности на базе смартфона, позволяющую пользователю взаимодействовать с виртуальными объектами напрямую при помощи рук, а не сенсорного экрана. Новация была представлена на конференции UIST 2019. Отметим, что дополненн...

Магия 2-х строк на Lua или как донести исходные заголовки HTTP Authorization header-авторизации до web-сервиcа Статья будет полезна тем: кому необходимо задействовать несколько видов авторизации в одном запросе к серверу; кто хочет открывать сервисы мира Kubernetes/Docker в общий интернет, не задумываясь о способах защиты конкретного сервиса; думает, что всё уже кем-то сделано, ...

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

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

Microsoft работает над IoT OS на базе Windows 10X Surface Neo будет использовать новый вариант операционной системы, который Microsoft назвала «Windows 10X». Эта новая версия Windows 10 предназначена для двухэкранных и складных устройств, но есть достаточно доказательств того, что ОС в конечном итоге появится на ноутбуках и...

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

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

Outline эффект с использованием RenderFeature в Unity URP В Universal Render Pipeline, создавая свои RendererFeature, можно легко расширить возможности отрисовки. Добавление новых проходов в конвеер рендеринга позволяет создавать различные эффекты. В этой статье, используя ScriptableRendererFeature и ScriptableRenderPass, создадим ...

Домашний веб-сервер на солнечных батареях отработал 15 месяцев: аптайм 95,26% Первый прототип солнечного сервера с контроллером заряда. Фото: solar.lowtechmagazine.com В сентябре 2018 году энтузиаст из Low-tech Magazine запустил проект «низкотехнологичного» веб-сервера. Задача была снизить энергопотребление настолько, чтобы домашнему self-hosted сер...

Строим Telegram-бот в Яндекс.Облаке Сегодня из подручных материалов мы соберём в Яндекс.Облаке Telegram-бот с использованием Yandex Cloud Functions (или Яндекс-функции — для краткости) и Yandex Object Storage (или Объектное хранилище — для ясности). Код будет на Node.js. Однако, имеется одно пикантное обстоя...

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

PKCS#11 для самых маленьких В этой статье мы познакомимся со стандартом PKCS#11, предназначенным для работы с различными криптографическими устройствами. Для демонстрации мы будем использовать токены и смарт-карты Рутокен ЭЦП 2.0. Читать далее

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

Создание собственного пакета для Laravel Nova: OptimalImage Работая над новым проектом, для администрирования которого используется Laravel Nova, я его проверил в инструментах для веб-мастеров от Google. Оказалось что некоторые фотографии на ресурсе были не оптимизированными — размер их можно было существенно сократить. Те, что идут ...

[Перевод] Алгоритм AdaBoost Перевод статьи подготовлен в преддверии старта продвинутого курса «Математика для Data Scienсe». Введение Алгоритм AdaBoost можно использовать для повышения производительности любого алгоритма машинного обучения. Машинное обучение стало мощным инструментом, позволяющим д...

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

MVVM на основе Combine в UIKit и SwiftUI приложениях для UIKit разработчиков Мы знаем, что ObservableObject классы с его @Published свойствами созданы в Combine специально для View Model в SwiftUI. Но в точности ту же самую View Model можно использовать и в UIKit для реализации архитектуры MVVM, хотя  в этом случае нам придется вручную «привязать» ...

Рецепты для хворающих SQL-запросов Несколько месяцев назад мы анонсировали explain.tensor.ru — публичный сервис для разбора и визуализации планов запросов к PostgreSQL. За прошедшее время вы уже воспользовались им более 6000 раз, но одна из удобных функций могла остаться незамеченной — это структурные подска...

Эмоциональная история процессоров: IBM/370 В первой части были описаны многие разные процессоры до середины 90-х. Для мейнфреймов IBM там места не нашлось, так как эти системы долгое время не использовали процессоры-чипы. Однако, мейнфреймы IBM тесно связаны с другими компьютерными системами, долгое время являясь луч...

Балансировка нагрузки в Zimbra Open-Source Edition при помощи HAProxy Одной из главных задач при построении масштабных инфраструктур Zimbra OSE является грамотная балансировка нагрузки. Помимо того, что она повышает отказоустойчивость сервиса, без балансировки нагрузки невозможно обеспечить одинаковую отзывчивость сервиса для всех пользователе...

[Из песочницы] Построение отказоустойчивой системы Embedded Linux на базе модуля Mars ZX3 фирмы Enclustra В связи с загруженностью специалистов, несколько лет назад мы вынуждены были отдать одну разработку контрагентам. Разработка велась на модуле Mars ZX3 фирмы Enclustra, в котором используется SOC ARM+FPGA Zynq-7020. Для сборки Linux использовался BSP от Enclustra (bsp-xilinx)...

Расчет перцентилей для мониторинга высоконагруженных систем Привет, меня зовут Игорь, и я разработчик решений на Tarantool в Mail.ru Group. Я работаю над витринами маркетинга в реальном времени для Мегафона. При мониторинге часто требуется использовать перцентили. Они позволяют понять, как система работает бóльшую часть времени, в о...

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

«Hello, Checkmarx!». Как написать запрос для Checkmarx SAST и найти крутые уязвимости Привет Хабр! В статье я хочу рассказать о нашем опыте создания своих запросов в Checkmarx SAST. При первом знакомстве с этим анализатором может сложиться впечатление, что кроме поиска слабых алгоритмов шифрования/хеширования и кучи false positive, он ничего больше не...

[Перевод] Делаем машину для намотки тороидальных катушек на базе Arduino Перевод с сайта Electric DIY Lab Всем привет, представляю вам изготовленную мною машину для намотки тороидальных катушек на базе Arduino. Машина автоматически наматывает проволоку и поворачивает тороид. В качестве интерфейса я использовал энкодер и ЖК-экран 16×2. Пользова...

Go. FakeDb. Эмуляция работы БД в тестах На днях писал тесты для модуля, который взаимодействует с базой данных. Привязывать модуль тестов к настоящей базе данных не хотелось — это создаёт дополнительные требования к окружению, где будет выполняться тестирование. Создавать сразу экземпляры типа sql.Rows, с нужными ...

PostgreSQL Antipatterns: CTE x CTE По роду деятельности приходится сталкиваться с ситуациями, когда разработчик пишет запрос и думает "база умная, сама со всем справится!" В некоторых случаях (частично от незнания возможностей БД, частично от преждевременных оптимизаций) такой подход приводит к появлению «фр...

Автоматизация Для Самых Маленьких. Заметки. RESTful API Эта статья — одна из обещанных коротких заметок по ходу цикла статей Автоматизация Для Самых Маленьких. Поскольку основным способом взаимодействия с IPAM-системой будет RESTful API, я решил рассказать о нём отдельно. Воздаю хвалы архитекторам современного мира — у нас ест...

Реверс API Сбербанка Зачем У меня есть pet-project, приложение для учета финансов. На мой взгляд одной из ключевых проблем подобных приложений является ручной ввод баланса. У банков, в частности сбера, есть информация о транзакциях которые я совершаю и даже есть неплохая аналитика. Но Банков н...

Гитхабификация Информационной Безопасности Гитхабификация Информационной Безопасности На пути к открытой, независимой от производителя и приветствующей вклад сообщества модели для ускорения обучения в сфере Информационной Безопасности 8 декабря 2019 года Джон Ламберт (John Lambert), JohnLaTwC, Distinguished Engineer,...

Blazor: Server и WebAssembly одновременно в одном приложении ASP.NET Core Blazor — это разработанная Microsoft веб-платформа, предназначенная для запуска на стороне клиента в браузере на основе WebAssembly (Blazor WebAssembly) или на стороне сервера в ASP.NET Core (Blazor Server), но две эти модели нельзя использовать одновременно. П...

[Из песочницы] Earth Engine от Google — уникальная платформа для анализа больших геоданных Earth Engine — это облачная платформа для геопространственного анализа данных в планетарных масштабах. Она позволяет использовать огромные вычислительные мощности компании Google для изучения самых разнообразных проблем: потерь лесов, засухи, стихийных бедствий, эпидемий, п...

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

Как описать 100 Gitlab джоб в 100 строк В продолжение предыдущей статьи про инструменты деплоя в Kubernetes, хочу рассказать вам про то как можно использовать Jsonnet для упрощения описания джоб в вашем .gitlab-ci.yml Дано Есть монорепа, в которой: 10 Dockerfiles 30 описанных деплоев 3 окружения: devel, staging...

GSM/3G/4G-модемы во встраиваемых системах на примере LTE-модема Quectel EC21 и Yocto Project Многим устройствам на базе встраиваемых систем необходим интернет. Проводное подключение к интернету для них не всегда возможно, и если устройства находятся в зоне действия сотовой связи, то к интернету можно подключиться с помощью GSM/3G/4G-модемов. В этой заметке описан ...

Ультразвуковая система определения координат 2.0 Ультразвуковая система определения координат 2.0 О чем эта статья: Эта статья описывает принципы работы моей системы определения координат, и мой опыт её изготовления. Данная статья не является инструкцией по изготовлению навигационной системы, ибо это не так просто, чтобы о...

[Перевод] Взлом ESP32 путём обхода Secure Boot и Flash Encryption (CVE-2020-13629) Мы провели исследование микроконтроллера Espressif ESP32 на предмет устойчивости к атакам, выполняемым методом внесения сбоев в работу чипов (Fault Injection). Мы постепенно шли к тому, чтобы найти уязвимости, которые позволят нам обойти механизмы защищённой загрузки (Secure...

Пишем блог на микросервисах – часть 3 «User» Во второй части нашего цикла статей «Пишем блог на микросервисах» мы описали «API Gateway». Здесь мы опишем реализацию микросервиса User. Читать дальше →

[Перевод] Контейнерные запросы в CSS Как фронтенд-дизайнер я за последние 6 лет не был так взволнован новой CSS-функцией, как сейчас. Благодаря усилиям Мириам Сюзанны и других умных людей прототип контейнерных запросов можно включить в Chrome CanaryО контейнерных запросах запомнилось много шуток, но они, наконе...

Белые методы в SEO, которые работают в 2020 На нашем рынке основные поисковые системы — Яндекс и Google. Мы должны оптимизировать наш сайт так, чтобы именно он находился по интересующим нас запросам на первых местах. Это и называют находиться в топе в поисковиках. ...

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

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

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

[Перевод] Архитектурный шаблон MVI в Kotlin Multipaltform, часть 1 Около года назад я заинтересовался новой технологией Kotlin Multiplatform. Она позволяет писать общий код и компилировать его под разные платформы, имея при этом доступ к их API. С тех пор я активно экспериментирую в этой области и продвигаю этот инструмент в нашей компани...

[Перевод] Миграция с Terraform на Terragrunt В Bestmile мы используем Terraform для AWS IaC. Но чем больше развивалась наша инфраструктура, тем запутаннее становился код Terraform.Код Terraform стало сложнее обслуживать. Он терял эффективность. Terraform — отличный инструмент, но нуждается в дополнениях. Здесь-то ...

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

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

Реверс API по его android приложению Зачем У меня есть pet-project, приложение для учета финансов. На мой взгляд, одной из ключевых проблем подобных приложений является ручной ввод баланса. У банков есть информация о транзакциях которые я совершаю и даже есть неплохая аналитика. Но Банков несколько и они ничег...

[Из песочницы] Typescript Compiler API: возьми управление компилятором в свои руки В разработке приложений на Typescript всегда есть этап сборки проекта. Обычно для этого используются системы сборки и автоматизации workflow, такие как webpack или gulp, обвешанные достаточным количеством плагинов, либо процесс сборки размазывается в командах package.json ...

[Перевод] Понимаем и ищем уязвимости типа Open Redirect Перевод статьи подготовлен в преддверии старта курса «Безопасность веб-приложений». Одной из наиболее распространенных и тем не менее игнорируемых веб-разработчиками уязвимостей является Open Redirect (также известная как «Непроверенные переадресации и пересылки»). Веб-са...

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

[Перевод] Используем Chrome DevTools профессионально И снова здравствуйте. В преддверии старта курса «JavaScript Developer. Professional» перевели 11 советов для тех, кто использует Chrome в качестве среды разработки. Итак, по тем или иным причинам вы решили при разработке ориентироваться на Chrome. Вы открываете инструмент...

Cross-Origin Read Blocking (CORB) в расширениях для Chrome Если вы когда-то разработали расширение для Chrome, то может оказаться, что оно перестало работать. Причина в том, что начиная аж с прошлого года, в браузере Chrome блокируются Cross-Origin запросы из content-скриптов. Это означает, что если ваше расширение обращается к не...

Camunda external tasks — мощный инструмент для создания приложений с отказоустойчивой и масштабируемой архитектурой В Тинькофф для разработки систем автоматизации бизнес-процессов мы используем фреймворк Camunda + Spring. Сами бизнес-процессы описываем с помощью BPMN (Business Process Management Notation) в виде блок-схем. Наиболее часто используемый элемент на наших схемах — service ta...

Как мы построили динамические отчеты на SSRS 2014 Мы уже рассказывали, как помогли одной производственной компании трансформировать процессы корпоративного обучения и развития персонала. Сотрудники заказчика, которые тонули в бумажных документах и Excel-таблицах, получили удобное iPad-приложение и веб-портал. Одна из самых ...

[Из песочницы] Создание Discord-бота, используя библиотеку discord.js | Часть №1 Введение В этой статье я подробно расскажу о том, как работать с библиотекой discord.js, создать своего Discord-бота, а также покажу несколько интересных и полезных команд. Сразу хочу отметить, что я планирую сделать ряд подобных статей, начиная с простых команд, заканчивая...

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

Xiaomi выпустила в продажу портативный Bluetooth-динамик Xiaomi выпустила в продажу новый портативный Bluetooth-динамик, который называется «Mi Outdoor Bluetooth Speaker». Как говорится в описании устройства - динамик обеспечивает мощный звук и способен взаимодействовать с голосовыми помощниками. Подробнее об этом читайте на THG.r...

В Safari нашли серьёзный баг Исследователь безопасности Райан Пикрит подробно описал недавно исправленые уязвимости браузера Safari, которые позволяли злоумышленникам использовать камеры и микрофоны на устройствах iOS и macOS. Созданный злоумышленниками веб-сайт мог заставить Safari поверить, что страни...

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

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

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

Обзор функционала Wi-Fi радиомоделирования в Intangi Iris В последней версии Intangi Iris (5.5) появился новый функционал – Wireless View for Predictive Analysis. Он позволяет проводить моделирование покрытия Wi-Fi. В сравнении с топовыми продуктами для Wi-Fi радиомоделирования (Ekahau, MetaGeek и пр.), которые мы обычно используем...

NVIDIA заявила, что мобильная GeForce RTX 2080 мощнее, чем консоли следующего поколения Во время своей презентации на мероприятии GTC China 2019 исполнительный директор NVIDIA Дженсен Хуанг (Jensen Huang) заявил, что GeForce RTX 2080 является более мощным ускорителем, чем графика консолей следующего поколения. Если говорить коротко, он утверждает, что RTX 2080 ...

Современный код для выполнения HTTP запросов в Swift 5 с помощью Combine и применение их в SwiftUI. Часть 1 Выполнение HTTP запросов — это один из самых важных навыков, которые необходимо получить при разработке iOS приложений. В более ранних версиях Swift (до версии 5) вне зависимости от того, формировали ли вы эти запросы «с нуля» или с использование известного фреймворка Alam...

CVE-2019-18683: Эксплуатация уязвимости в подсистеме V4L2 ядра Linux В данной статье описана эксплуатация уязвимости CVE-2019-18683 в ядре Linux, которую я обнаружил и исправил в конце 2019 года. Указанный CVE-идентификатор присвоен нескольким аналогичным ошибкам типа «состояние гонки», которые присутствовали в подсистеме V4L2 ядра Linux на п...

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

[Перевод] Про SSH Agent Введение SSH-agent является частью OpenSSH. В этом посте я объясню, что такое агент, как его использовать и как он работает, чтобы сохранить ваши ключи в безопасности. Я также опишу переадресацию агента и то, как она работает. Я помогу вам снизить риск при использовании пере...

[Из песочницы] Кому на Руси жить хорошо? Как мы искали самый “зеленый” город с помощью OpenStreetMap и Overpass API У каждой карты есть легенда: именно она говорит читателю о том, что и каким образом на ней обозначено. Домам соответствуют многоугольники серого цвета, дорогам — отрезки и кривые, территории парков и скверов заливаются светло-зеленым и украшаются пиктограммой дерева. А к нек...

[Перевод] Точки входа в Python Многие думают, что точки входа это такие инструкции в setup.py, которые позволяют сделать пакет доступным для запуска из командной строки. Это, в целом, верно, но возможности точек входа не ограничиваются этим. Ниже я покажу как можно реализовать систему плагинов для пакета...

[Перевод] ELK SIEM Open Distro: Прогулка по open Distro В этом посте будет описана установка и настройка open Distro для Elasticsearch. В open Distro доступны следующие плагины являются : Безопасность (Security ) Оповещение (Alerting ) SQL Управление информационной безопасностью (ISM) Анализатор производительности (Performance A...

[Из песочницы] Знакомство с effector-dom на примере списка задач Многим уже известен стейт-менеджер effector, кто-то его уже не только смотрел, но и использует в проде. С конца осени его автор активно разрабатывает девтулзы для эффектора, и в процессе этой работы у него получилось написать очень интересную библиотеку для рендера приложени...

Действительно простая графика в R для науки и публицистики R — очень мощный инструмент для работы со статистикой: от предварительной обработки до построения моделей любой сложности и соответствующей графики. Простой гугл-запрос выдаст большое количество литературы по тому, как «легко и быстро» использовать R. Здесь будут и огромные...

TensorRT 6.x.x.x — высокопроизводительный инференс для моделей глубокого обучения (Object Detection и Segmentation) Больно только в первый раз! Всем привет! Дорогие друзья, в этой статье я хочу поделиться своим опытом использования TensorRT, RetinaNet на базе репозитория github.com/aidonchuk/retinanet-examples (это форк официальной репы от nvidia, который позволит начать использовать в ...

[Перевод] Разработка более быстрых приложений на Vue.js JavaScript — это душа современных веб-приложений. Это — главный ингредиент фронтенд-разработки. Существуют различные JavaScript-фреймворки для создания интерфейсов веб-проектов. Vue.js — это один из таких фреймворков, который можно отнести к довольно популярным решениям. Vu...

[Перевод] Чистый CSS: 4 метода анимирования цвета ссылок Автор статьи, перевод которой мы сегодня публикуем, предлагает, пользуясь чистым CSS, создать механизм изменения цвета текста ссылки при наведении на неё мыши. Но это должна быть не обычная смена цвета. Новый цвет должен заполнять ссылку слева направо, заменяя старый. Для ...

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

16 советов по разработке для андроид на языке Kotlin. Часть 3 И еще раз здравствуйте! В преддверии старта базового курса по Android-разработке, делимся заключительной частью статьи «16 советов по разработке для андроид на языке Kotlin». Читать первую часть Читать вторую часть LATEINIT Одной из ведущих особенностей Kotlin является е...

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

vivo iQOO Neo 855 Racing Edition — доступный флагман на Snapdragon 855+ Как и планировалось, компания vivo представила новый игровой смартфон, получивший название iQOO Neo 855 Racing Edition. Это лишь слегка улучшенная версия последнего iQOO 855, главной особенностью которой стал новый процессор Snapdragon 855 Plus. С ценой 368 долларов смартфо...

Оконные функции с «форточкой» или как пользоваться фреймом Всем привет. 26 февраля в OTUS стартовали занятия в новой группе по курсу «MS SQL Server разработчик». В связи с этим я хочу поделиться с вами своей публикацией про оконные функции. Кстати, в ближайшую неделю еще можно записаться в группу ;-). Оконные функции прочно вошл...

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

Xiaomi Mi 10 представлен официально: самый мощный в мире смартфон на Snapdragon 865 Сейчас в продаже можно обнаружить крайне много невероятно мощных смартфонов на базе Android, входят в число которых Google Pixel 4 XL, Huawei Mate 30 Pro, Xiaomi Mi 9 Pro 5G, Samsung Galaxy Note 10 и Сообщение Xiaomi Mi 10 представлен официально: самый мощный в мире смартфо...

Nvidia выпустила видеокарты GeForce RTX 3080 и RTX 3070 с 20 ГБ видеопамяти Компания Nvidia является одним из самых известных в мире производителей видеокарт, а рассчитаны такие в первую очередь на тех, кто играет в различные видеоигры. Именно графические карты от этого бренда являются самыми мощными на рынке, Сообщение Nvidia выпустила видеокарты ...

Флагманские платы на AMD B550 не будут уступать по возможностям платам на X570 Производители материнских плат пока что официально не анонсировали свои новинки на представленном вчера чипсете среднего уровня AMD B550. Однако в Сети уже появились изображения наиболее продвинутых материнских плат на новой системной логике от ведущих производителей, которы...

Особенности SPIKE™ Prime LEGO® Education Летом 2019 года был анонсирован новый образовательный робототехнический набор SPIKE PRIME. Уже осенью началась волна популяризации нового набора в России. Зима в самом разгаре — и вместо слухов набор попал в мои руки :-) Немного истории, особенностей и собственных мыслей ...

[recovery mode] Архитектура Y messenger Y messenger разрабатывается чтобы быть одновременно и защищенным на уровне Tox, BitMessage, и удобным на уровне Telegram и WhatsApp. В этой статье я опишу как выглядит архитектура и какие решения были использованы чтобы достичь поставленных целей. Какие преимущества совреме...

Настройка LDAP в Oracle BI В статье описана простая настройка LDAP для аутентификации и авторизации пользователей. 1. Перейдете по ссылке Oralce bi которая открывает console(http://адрес: порт/console), используя учетную запись администратора (по умолчанию weblogic). Нажмите на Security Realms -> ...

Смартфоны POCO X3 Pro и POCO F3 Компания POCO Global сегодня представила два флагманских смартфона — POCO X3 Pro и POCO F3. POCO X3 работает на базе Qualcomm Snapdragon 870 5G и графического процессора Qualcomm Adreno 650. PRO-версия получила Qualcomm Snapdragon 860 — одну из самых мощных мобильных плат...

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

Unity + git = дружба: часть 1 джентльменский набор Система контроля версий git уже давно стала стандартом де-факто в мире разработки, но для большинства разработчиков на Unity не секрет, что существует ряд трудностей связанных с особенностями Unity, которые мешают эффективно использовать ее совместно с git. Вот список типи...

Интеграция проекта VueJS+TS с SonarQube В своей работе мы активно используем платформу SonarQube для поддержания качества кода на высоком уровне. При интеграции одного из проектов, написанном на VueJs+Typescript, возникли проблемы. Поэтому хотел бы рассказать подробней о том, как удалось их решить. В данной стать...

[Перевод] Тестирование производительности аналитических запросов в PostgreSQL, ClickHouse и clickhousedb_fdw (PostgreSQL) В этом исследовании я хотел посмотреть, какие улучшения производительности можно получить, используя источник данных ClickHouse, а не PostgreSQL. Я знаю, какие преимущества производительности при использовании ClickHouse я получаю. Будут ли эти преимущества сохранены, если я...

Фото глазами животных — создан уникальный редактор снимков Ученые разработали бесплатное программное обеспечение с открытым исходным кодом, в котором можно менять фотографии, сделанные даже обычным смартфоном, для имитации зрения животных. Редактор описан в статье, опубликованной в журнале Methods in Ecology and Evolution. Программа...

Как работает Windows 10 на Raspberry Pi 4 и Pi 3 Разработчики наконец установили оптимизированную для ARM версию Windows 10 на Raspberry Pi 4 после того, как некоторым людям удалось запустить ее на Raspberry Pi 3 в первой половине 2019 года. Raspberry Pi 4 и Pi 3 официально поддерживают версию Windows 10 для IoT Core, кото...

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

EMUI переняла самую плохую особенность MIUI Компания Huawei переживает не самые спокойные времени из-за торговой напряженности между Китаем и США, а также американских санкций. В данный момент компания работает над собственной альтернативой Android, получившей название Harmony OS, а также над сервисами Huawei Mob...

[Перевод] Создание шейдерной анимации в Unity Недавно я работал над анимацией респауна и спецэффектом главного героя моей игры “King, Witch and Dragon”. Для этого спецэффекта мне нужна была пара сотен анимированных крыс. Создание двухсот мешей со скиннингом с анимацией ключевыми кадрами всего для одного спецэффекта — ...

Как мы решали проблему трех монолитов В стратегиях большинства компаний все чаще упоминается цифровизация: одни компании пытаются внедрять современные технологии (например, Big Data, IoT, AI, blockchain), другие — повсеместно автоматизируют свои внутренние процессы. Несмотря на растущие усилия и инвестиции во вн...

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

Aсинхронный PHP Десять лет назад у нас был классический LAMP-стек: Linux, Apache, MySQL, и PHP, который работал в медленном режиме mod_php. Мир менялся, а с ним и важность скорости. Появился PHP-FPM, который позволил значительно увеличить производительность решений на PHP, а не срочно переп...

Активация discard (TRIM) на Linux для SSD диска Современные SSD диски нуждаются в команде TRIM интерфейса ATA и для этого в ОС построенных на базе ядра Linux предусмотрено два метода управления на уровне файловых систем: discard — устанавливается как опция монтировании файловой системы. Позволяет ядру Linux сразу отправл...

Разработан интеллектуальный аппарат ИВЛ Аппарат создан в рамках инициатив, направленных на оперативное решение экстренных запросов в условиях пандемии COVID-19. Некоммерческая организация Inali, занимающаяся созданием вспомогательных медицинских изделий, разработала и сконструировала интеллектуальный аппарат на ба...

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

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

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

Машинное обучение. Нейронные сети (часть 2): Моделирование OR; XOR с помощью TensorFlow.js Статья является продолжением цикла статей, посвященных машинному обучению с использованием библиотеки TensorFlow.JS, в предыдущей статье приведены общая теоретическая часть обучения простейшей нейронной сети, состоящей из одного нейрона: Машинное обучение. Нейронные сети (ча...

В поиске вопросов, или как создать новый отладчик Мы уделяем много внимания инструментам разработки: участвуем в горячих спорах о редакторах (Vim или Emacs?), долго настраиваем IDE под свой вкус, и тщательно выбираем языки программирования и библиотеки, которые с каждым днем становятся все лучше и удобнее. Однако, здесь мож...

Telegram Open Network: теория и практика от валидатора сети В последние несколько месяцев всё внимание мирового блокчейн-сообщества было приковано к запуску одного из самых масштабных криптовалютных проектов — Telegram Open Network (TON). Что на самом деле представляет из себя блокчейн TON? Является ли сеть TON действительно децен...

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

[Перевод] Лучшие практики Kubernetes. Настройка запросов и лимитов ресурсов Лучшие практики Kubernetes. Создание небольших контейнеров Лучшие практики Kubernetes. Организация Kubernetes с пространством имен Лучшие практики Kubernetes. Проверка жизнеспособности Kubernetes с помощью тестов Readiness и Liveness Для каждого ресурса Kubernetes имеется в...

[Перевод] Докеризация приложения, построенного на базе React, Express и MongoDB Автор статьи, перевод которой мы публикуем сегодня, хочет рассказать о том, как упаковывать в контейнеры Docker веб-приложения, основанные на React, Express и MongoDB. Здесь будут рассмотрены особенности формирования структуры файлов и папок таких проектов, создание файлов D...

[Из песочницы] 5NO — NodeJS ORM for Postgres Кратко об этом модуле Этот модуль разработан мной для упрощения взаимодействия между Postgres и JS. Я понимаю что есть много подобных модулей, но хотелось сделать что то гибкое и простое в обращение средство для разных нужд. Модуль объединяет в себе три важные функции: вал...

[Из песочницы] Koin – это Dependency Injection или Service Locator? Введение В Android-разработке для DI традиционно используют Dagger 2, очень мощный фреймворк с кодогенерацией. Но есть проблема: новичкам сложно его использовать. Сами принципы DI просты и понятны, но Dagger усложняет их. Можно жаловаться на поголовное падение грамотности пр...

Google внедряет BERT в поиск на русском языке Google объявил, что самое крупное обновление алгоритмов работы поиска за последние 5 лет – BERT Update – в этом месяце будет внедрено в поиск на русском языке. BERT – это технология предварительного обучения обработке текста на естественном языке. Она анализирует не отдельны...

[Из песочницы] Пять интересных способов использования Array.reduce() (и один скучный путь) Привет, Хабр! Представляю вашему вниманию перевод статьи "Five Interesting Ways to Use Array.reduce() (And One Boring Way)" автора Chris Ferdinandi. Из всех современных методов работы с массивами самым сложным из всех, что мне пришлось использовать, был Array.reduce(). На пе...

Orchestrator и VIP как HA-решение для кластера MySQL В Ситимобил мы используем базу данных MySQL в качестве основного хранилища постоянных данных. У нас есть несколько кластеров баз данных под различные сервисы и цели. Постоянная доступность мастера является критическим показателем работоспособности всей системы и ее отдельны...

[Из песочницы] User flow: как создаются популярные приложения и сайты Всем привет! Я – Максим Скворцов, UX/UI-дизайнер Omega-R, международной компании по разработке и интеграции IT-решений. Я занимаюсь проектированием и визуализацией интерфейсов мобильных и веб-приложений. На базе своего опыта в сфере информационных технологий и экспертизы...

Составное устройство USB на STM32. Часть 3: Звуковое устройство отдельно, виртуальный СОМ-порт отдельно В третьей части публикации о составном устройстве USB я расскажу о том, как переделать сгенерированный в STM32CubeMX USB Audio Speaker, описанный во второй части публикации, в дуплексное звуковое устройство. Затем мы создадим в STM32CubeMX драйвер виртуального COM-порта. ...

Сергей Зайченко: «Если вы не знаете, где брать данные, берите их из OSM» Сергей Зайченко является одним из создателей картосервиса поискового портала «Спутник», в основе которого OpenStreetMap. Наверное, это один из самых удачных и масштабных примеров использования данных из OSM в рунете. Почему было решено использовать OSM, зачем развивали соо...

[Перевод] Как использовать MySQL без пароля (и рисков для безопасности) Говорят, что луший пароль — тот, который не надо запоминать. В случае с MySQL это реально благодаря плагину auth_socket и его версии для MariaDB — unix_socket. Оба эти плагина — вовсе не новы, о них много говорилось в этом же блоге, например в статье о том, как изменять пар...

Безопасность REST API от А до ПИ Введение Умение реализовать грамотное REST API — полезный навык в наше время, т.к. все больше сервисов предоставляют свои возможности с помощью API. Но разработка REST API не ограничивается реализацией HTTP запросов в определенном стиле и формированием ответов в соответстви...

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

Как собрать образ Oracle DB для Testcontainers Код должен тестироваться на той СУБД, с которой он будет работать. Testcontainers — это такая библиотека, которая позволяет использовать в юнит тестах практически любую СУБД с той же лёгкостью, что embedded базы данных типа HSQLDB или H2. Был бы только Docker образ Именно с...

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

Blue-Green Deployment на минималках В этой статье мы с помощью bash, ssh, docker и nginx организуем бесшовную выкладку веб-приложения. Blue-green deployment — это техника, позволяющая мгновенно обновлять приложение, не отклоняя ни одного запроса. Она является одной из стратегий zero downtime deployment и лучше...

Intel Optane Persistent Memory 200 — новая PMem для новых Xeon Intel Optane PMem серии 200 — это новое поколение высокопроизводительной памяти в формате DIMM на базе чипов Intel Optane, оптимизированное для работы с процессорами Intel Xeon Scalable Gen3. По сравнению с предыдущим поколением серия 200 обеспечивает до 25% прироста скоро...

[Из песочницы] Как я купил заблокированный ноутбук на eBay и попробовал сделать свой AntiTheft на базе IntelAMT TL;DR Absolute Computrace — технология, которая позволяет заблокировать машину(и не только), даже если на ней переустановили операционную систему или даже заменили жесткий диск за $15 в год. Я купил ноутбук на eBay который был залочен этой штукой. В статье описывается мой ...

Check Point WatchTower — управляем NGFW со смартфона Добрый день, сегодня хотелось бы затронуть тему оборудования для малого бизнеса и офисов до 150-300 пользователей. Современные угрозы безопасности требуют осуществлять защиту периметра сети вне зависимости от масштаба предприятия. компания CheckPoint предлагает целый ряд п...

[Перевод] Иерархический буфер глубин Краткий обзор Иерархический буфер глубин — это многоуровневый буфер глуби (Z-буфер), используемый как ускоряющая структура (acceleration structure) для запросов глубин. Как и в случае mip-цепочек текстур, размеры каждого уровня обычно являются результатами деления на степен...

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

Что такое Grin? 1 Что такое Grin? Grin – криптовалюта с открытым исходным кодом на базе протокола MimbleWimble. 2 Каковы ключевые особенности Grin? Повышенная конфиденциальность: криптография, основанная на эллиптических кривых и одной из реализаций схемы обязательств (Pedersen Commitment),...

OWC вдвое увеличивает ёмкость твердотельных накопителей для Apple Mac Компания OWC представила новую версию твердотельного накопителя (solid-state drive, SSD) Aura P12 ёмкостью 4 Тбайта, который даст возможность компании вдвое увеличить ёмкость своих внешних накопителей для компьютеров Apple Macintosh и других. Так, флагманский Accelsior 4M2 с...

PostgreSQL Antipatterns: ударим словарем по тяжелому JOIN Продолжаем серию статей, посвященных исследованию малоизвестных способов улучшения производительности «вроде бы простых» запросов на PostgreSQL: редкая запись долетит до середины JOIN сизифов JOIN массивов вредные JOIN и OR CTE JOIN CTE Не подумайте, что я так сильно не л...

База с миллионами пользователей Telegram утекла в даркнет Как сообщает ресурс kod.ru, в даркнете опубликовали базу с несколькими миллионами пользователей одного из самых популярных мессенджеров в мире Telegram. База данных составляет около 900 МБ. В опубликованной базе данных содержатся уникальные идентификаторы пользоват...

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

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

Apple использует в Mac Pro дешевую оперативную память На данный момент Mac Pro является одним из самых дорогих яблочных компьютеров. Однако, как заметил один их пользователей Twitter, купертиновцы используют в нем далеко не самые дорогие комплектующие. В частности, это касается оперативной памяти, которую Apple закупает у Micro...

AMD представила самый мощный в мире суперкомпьютер El Capitan на основе CPU и GPU, которые выйдут не ранее следующего года Компания AMD сегодня опубликовала пресс-релиз, в котором рассказала о суперкомпьютере El Capitan и его особенностях. Напомним, это система уровня exascale (1018 операций с плавающей запятой в секунду), которая создаётся по заказу Министерства энергетики США компанией Cr...

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

[Перевод] Создайте свой собственный симулятор Q# — Часть 1 Симуляторы — это особенно универсальная особенность QDK. Они позволяют вам выполнять различные задачи в программе на Q#, не меняя ее. Такие задачи включают симуляцию полного состояния, оценку ресурса или симуляцию трассировки. Новый интерфейс IQuantumProcessor позволяет очен...

Avro serialization в Kafka Здесь опишу пример сериализции данных через Avro и передача в Kafka. Для Avro есть сериализатор данных для Kafka, он использует в своей работе реестр (registry) схем и поддерживает версионность на отдельном развернутом сервере. Здесь будет только сериализатор, а версионность...

Что такое Windows PowerShell и с чем его едят? Часть 5: Доступ к внешним объектам В операционных системах Windows поддерживаются различные объектные инфраструктуры. Для доступа к ним можно использовать интерфейсы прикладного программирования (API), но разработка полноценных приложений не всегда оправдана. В PowerShell существуют специальные командлеты, ...

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

Опыт работы над проектом на базе Vue3 в 2021 году Около полугода пришлось поработать над миграцией неработающего проекта на базе Vue 2 на проект Vue v.3. Поскольку до сих пор работа с ним остаётся экзотикой, попробую описать состояние развития этого проекта в июле 2021 года, через 10 месяцев после релиза, и какие особеннос...

SQL в DjangoORM Меня зовут Алексей Казаков, я техлид команды «Клиентские коммуникации» в ДомКлик. В большинстве приложений, с которыми мне приходилось иметь дело, при взаимодействии с БД не ограничиваются лишь драйвером, который позволяет выполнять сырые запросы. Для удобства и избавл...

[Из песочницы] Nuxt + Django + GraphQL на примере Предисловие Nuxt — "фреймворк над фреймворком Vue" или популярная конфигурация Vue-based приложений с использованием лучших практик разработки на Vue. Среди них: организация каталогов приложения; включение и преконфигурация самых популярных инструментов в виде Nux...

Обзор основных функций Google BigQuery и примеры запросов для маркетинг-анализа Google BigQuery – это быстрое, экономичное и масштабируемое хранилище для работы с Big Data, которое вы можете использовать, если у вас нет возможности или желания содержать собственные серверы. В нем можно писать запросы с помощью SQL-like синтаксиса, стандартных и пользова...

[recovery mode] Особенности RTC M41T56 M41T56 это микросхема Real Time Clock, являющаяся аналогом популярной DS1307. И хотя даже цоколевка микросхем совпадает, у них есть существенные отличия, о которых я постараюсь рассказать. Читать дальше →

Kubernetes tips & tricks: особенности выполнения graceful shutdown в NGINX и PHP-FPM Типовое условие при реализации CI/CD в Kubernetes: приложение должно уметь перед полной остановкой не принимать новые клиентские запросы, а самое главное — успешно завершать уже существующие. Соблюдение такого условия позволяет достичь нулевого простоя во время деплоя. Од...

Тизер Samsung Galaxy M31 рассказал о мощной 64-Мп камере смартфона Корейская Samsung уже успела выпустить смартфоны Galaxy A51 и Galaxy A71. Теперь компания активно готовится к презентации куда более доступного Samsung Galaxy M31, и недавно появившийся в сети тизер раскрыл одну из ключевых особенностей этого аппарата. Подробнее об этом чита...

Подключение Yandex Database к serverless телеграм боту на Yandex Functions Данная статья является продолжением вот этой статьи. В ней мы рассмотрели создание и настройку yandex cloud functions телеграм бота. А сегодня мы рассмотрим подключение телеграм бота к базе данных и сохранение какой-либо информации о пользователе, с которым общается бот.В ка...

[Из песочницы] Что такое Flutter и почему вы должны изучать его в 2020 году Привет, Хабр! Представляю вашему вниманию перевод статьи: "What is Flutter and Why You Should Learn It in 2020" автора Gaël Thomas. Что такое Flutter? Flutter — бесплатный и открытый набор средств разработки мобильного пользовательского интерфейса, созданный компанией Google...

[Из песочницы] Расширенный HTML В этой статье хотел бы рассказать немного про библиотеку, первую версию которой я создал еще в конце прошлого года. Суть очень простая — расширить возможности языка HTML, чтобы можно было без JavaScript'а писать простые и рутинные вещи: отправка формы в json формате, загрузк...

API, ради которых наконец-то стоит обновиться с Java 8. Часть 2 Продолжаем рассказ про API, которые появились в новых версиях Java. 1. Files.mismatch() Появился в: Java 12 На практике довольно часто возникает необходимость проверить, являются ли два файла в точности одинаковыми или нет. С помощью метода Files.mismatch(), появившегося в ...

Windows 10 заработала на 192 Мб ОЗУ Linux часто преподносится как система для старых компьютеров, так как многие дистрибутивы работают с 256 Мб ОЗУ в сочетании с устаревшими процессорами. Например, Puppy Linux – это версия Linux, которую вы можете установить на такие бюджетные системы. С другой стороны, считае...

Миграция из Oracle в Postgres Зачем переносить данные Тема переноса (миграции) данных из Oracle в Postgres набирает обороты. В РФ количество запросов по переходу на Postgres на волне импортозамещения, сейчас больше, чем когда либо. Oracle — очень качественный, мощный и отлично документированный инструме...

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

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

Какие производители Android-смартфонов выпустят ... На этой неделе Qualcomm, один из крупнейших производителей чипов в мире, провел свою «выставку достижений» — Tech Summit 2019. Главными события мероприятия стали премьеры новых SoC Snapdragon 865, Snapdragon 765G и Snapdragon 765. Новинки являются демонстра...

Борьба за производительность по-настоящему больших форм на React На одном из проектов мы столкнулись с формами из нескольких десятков блоков, которые зависят друг от друга. Как обычно, мы не можем рассказать о задаче в деталях из-за NDA, но попробуем описать свой опыт “укрощения” производительности этих форм на абстрактном (даже немного н...

Softline создала RPA-решение для обработки заявок в CRM-системе Компания Softline создала RPA-решение, позволяющее автоматизировать процесс первичной обработки заявок в CRM-системе. Робот анализирует запросы на приобретение программного обеспечения, определяет продукт и его количество, выявляет специальные условия, составляет спец...

Как Kafka стала былью Привет, Хабр! Я работаю в команде Tinkoff, которая занимается разработкой собственного центра нотификаций. По большей части я разрабатываю на Java с использованием Spring boot и решаю разные технические проблемы, возникающие в проекте. Большинство наших микросервисов асинхр...

Поднимаем свой инстанс Webogram с проксированием через nginx Привет, Хабр! Недавно я попал в ситуацию, в которой необходимо было работать внутри корпоративной сети с неполным доступом к интернету и как вы можете догадаться по заголовку — Telegram в ней был заблокирован. Уверен, что данная ситуация знакома многим. Я вполне могу обход...

Персональные данные 74% населения Израиля оказались в открытом доступе О том, что база данных, содержащая имена, адреса, серии и номера удостоверяющих личности документов, номера телефонов, домашние адреса, возраст, пол, а также политические взгляды около 6,5 млн избирателей, первым сообщил израильский разработчик Ран Бар-Зик (Ran Bar-Zik). Зат...

[Перевод] Непрерывная интеграция и развертывание настольных приложений с GitHub Actions Из общения с разработчиками настольных приложений мы узнали, что многие хотят узнать, как быстро настраивать рабочие процессы непрерывной интеграции и непрерывного развертывания (CI/CD) для WPF и Windows Forms, чтобы пользоваться многими преимуществами пайплайнов CI/CD, таки...

Эльбрус VS Intel. Сравниваем производительность систем хранения Аэродиск Восток и Engine Всем привет. Мы продолжаем знакомить вас с системой хранения данных Аэродиск ВОСТОК, выполненной на базе российского процессора Эльбрус 8C. В этой статье мы (как и обещали) детально разберем одну из популярнейших и интереснейших тем, связанной с Эльбрусами, а именно – прои...

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

Поиграли в League of Legends: Wild Rift и нам есть, что вам рассказать Уже совсем скоро стартует открытый бета-тест League of Legends: Wild Rift – мобильной версии Лиги Легенд, которую разработчики постарались максимально оптимизировать под управление на экране. Старт ОБТ: 8 декабря во Вьетнаме, Тайланде и Океании10 декабря в России, СНГ, Евро...

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

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

Redux Toolkit больше не нужен? Проблема огромного количества boilerplate-кода при использовании Redux известна всем, каждый ее решает как может. И мы на разных проектах использовали разные костыли и велосипеды, не теряя при этом надежду найти что-то стандартизированное и удобное. Чуть больше года назад мы...

Кастомизация компонентов Ant Design и оптимизация бандла The Archivist by juliedillon Я Иван Копенков, ведущий фронтенд-разработчик в Mail.ru Cloud Solutions, в статье расскажу, какие есть подходы к кастомизации компонентов UI-библиотеки Ant Design, как это сделали мы, а так же покажу, как удалось полностью избавиться от неисполь...

jsqry — лучше, чем jq В своей прошлой статье на Хабре я писал про библиотеку Jsqry, которая предоставляет простой и удобный язык запросов (DSL) к объектам JSON. С тех пор прошло много времени и библиотека тоже получила свое развитие. Отдельный повод для гордости — библиотека имеет 98% покрытие ко...

[Перевод] Как написать игру за месяц, не отвлекаясь от основной работы MoonGun — игра в жанре экшен/стратегия о защите лунной базы от астероидов. Игра была создана Ивенсом Серпой — автором множества статей о геймдизайне — в рамках Github Game Off Game Jam в ноябре 2020 года. Занимался он ей в одиночку в свободное от работы время. Игра получил...

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

[Из песочницы] C++/Qt: пора валить?. Если бы раньше я запускал новый долгоживущий проект, в котором основные функции связаны с большим объёмом вычислений при каком-то взаимодействии с пользователем через графический интерфейс, я бы не задумываясь использовал С++/Qt. Это позволяло использовать один фреймворк/яз...

Robot Framework для автоматизации тестирования: ограничения и плюшки В автоматизации тестирования я уже более 11 лет. Скажу сразу, что являюсь поклонником старомодного тестирования на Java и очень настороженно отношусь к различным готовым фреймворкам. Если вы придерживаетесь такого же мнения или только задумываетесь об использовании Robot Fra...

Игра на WinForms + C# в 16 лет (2 часть) Предыстория Прошло довольно много времени с момента написания предыдущей статьи. Как и обещал я написал вторую часть. Хотелось бы сказать спасибо всем тем, кто давал советы в комментариях, из всех их я смог узнать что-то новое. Ну а для тех кому хочется сразу посмотреть прое...

SD-WAN и DNA в помощь админу: особенности архитектур и практика Стенд, который можно пощупать у нас в лабе, если хочется. SD-WAN и SD-Access — два разных новых проприетарных подхода к построению сетей. В будущем они должны слиться в одну оверлейную сеть, но пока только приближаются. Логика такая: берём сеть образца 1990-х и накатываем...

[Перевод] Что JavaScript-разработчику следует знать о Curl Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «What JavaScript Developers Should Know About Curl» автора Valery Karpov. Curl — это популярный инструмент командной строки, часто используемый для отправки HTTP-запросов. Curl поддерживает большое...

Цифро-аналоговое и смешанное моделирование в PADS Professional Одной из полезных функций, включенных в PADS Professional, является встроенный инструмент моделирования аналоговых смешанных сигналов (AMS), который позволяет моделировать ваши схемотические проекты с использованием моделей SPICE и VHDL-AMS. Возможность использования обоих...

Google рассказал о топ-запросах 2019 года в Украине Проанализировав миллионы поисковых запросов, компания Google в конце года традиционно объявила какие из них стали наиболее быстрорастущими, что чаще всего искали украинцы и какие вопросы задавали Google в 2019 году. Самым популярным поисковым запросом 2019 года в Google Укра...

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

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

Быстрый расчет формул из Excel на C# Как часто вы слышите от заказчиков, что они пришлют данные в Excel или просят вас сделать импорт или выгрузку в Excel-совместимом формате? Я уверен, что в большинстве сфер Excel — один из самых популярных, мощных и в то же время простых и удобных инструментов. Но самым пробл...

Под капотом OpenVINO (Intel Neural Stick) Привет, Habr! Сегодня я хочу рассказать немного об аппаратном ускорителе Neural Compute Stick. Расскажу с точки зрения hardware-разработчика. Известно, что OpenVINO взаимодействует с Neural Compute Stick, а сердцем самого стика является чип Movidius Myriad X. Некоторые ...

[Перевод] Четвероногий робот-паук на Arduino Майлз – это робот-паук на базе Arduino Nano, использующий 4 ноги для ходьбы и маневрирования. В качестве приводов для ног используются 8 сервомоторов SG90 / MG90. Специально сделанная плата позволяет управлять моторами и подавать питание на них и Arduino Nano. В плате есть...

Разработка приложений и Blue-Green deployment опираясь на методологию The Twelve-Factor App с примерами на php и docker Для начала немного теории. Что такое The Twelve-Factor App? Простыми словами, это документ призванный упростить разработку SaaS приложений, помогает тем что, осведомляет разработчиков и DevOps инженеров о проблемах \ практиках которые чаще всего встречались в разработке со...

[Перевод] Питонистический подход к циклам for: range() и enumerate() Автор заметки, перевод которой мы сегодня публикуем, хочет рассказать о некоторых особенностях использования циклов for в Python. Цикл for — это один из краеугольных камней программирования. С этими циклами будущие программисты знакомятся в самом начале учёбы и, после пер...

Dell PowerEdge R740xd – универсальный сервер. Характеристики говорят ЗА! Dell EMC R740xd - это удачное и хорошо зарекомендовавшее себя наследие популярных серверов, продолжающих мощную линейку серверов Dell в корпусе 2U, который прикрыт стильной рамкой. За ней находится настраиваемая система, которая готова выполнить даже самые требовательные за...

Оператор Vodafone Украина запустил сеть «Интернета вещей» NB-IoT в коммерческую эксплуатацию Оператор мобильной связи Vodafone Украина запустил в коммерческую эксплуатацию сеть для интернета вещей NB-IoT. Развертывание технологии NB-IоT выполняется на базе сети LTE, которая позволяет осуществлять шифрование и аутентификацию на базе SIM-карты (что недоступно в таких ...

Дата-центры Google достигли самого высокого уровня энергоэффективности в истории компании Согласно последним исследованиям, в то время как объем вычислений, выполняемых в центрах обработки данных, вырос примерно на 550% с 2010 по 2018 год, количество энергии, потребляемой ЦОД, увеличилось всего на 6%. В результате, несмотря на рост числа запросов клиентов на обла...

Алгоритм BERT внедрён в российскую версию Google Поиска Google объявила о начале использования поискового алгоритма BERT для запросов на русском языке. Компания называет его крупнейшим прорывом за последние пять лет и одним из самых грандиозных успехов за всю историю Google Поиска. Технология предварительного обучения обработке ...

ROS: Застрявшим в Gazebo посвящается… Платформа для робота за 28.000 руб Инструкция по сборке роботизированной платформы для изучения ROS с грузоподъемностью более 30 кг ROS — это мета-операционная система (с открытым исходным кодом) для роботов. Это превратилось в стандарт отрасли. Имея готовый интерфейс обмена сообщениями между различными узлам...

Apple показала, как выглядят новые Powerbeats 4. Релиз — скоро AirPods – настолько крутые наушники, что искать их полноценный аналог для многих стало настоящим хобби. Почему нельзя просто купить AirPods и не заморачиваться, понятия не имею, но факт остаётся фактом. Но иначе не было бы всех этих Xiaomi, Huawei и многих других, кто совер...

[Перевод] Руководство по Node.js для начинающих. Часть 1 Доброго времени суток, друзья! Представляю Вашему вниманию перевод этого руководства по Node.js. Введение в Node.js Node.js — это открытая и кроссплатформенная среда выполнения JavaScript. Это отличное решение почти для любого проекта. Node.js запускает «движок» Java...

PIN-диоды для чайников. Часть 2 Задачи коммутации и управления СВЧ энергией высокого уровня существуют не один десяток лет. И тут одним самых надежных, простых и проверенных решений является использование полупроводниковых pin-диодов. При всей простоте своего устройства, они требуют очень тонкого подхода к...

Применение Flowmon Networks для контроля производительности распределенных приложений и баз данных Статью подготовил Dmitriy Andrichenko | Sales Executive, Russia & CIS | Flowmon Networks Приветствуем Вас на странице нашей новой статьи, посвященной решению задач контроля производительности распределенных сетевых приложений и баз данных. Данная статья является продо...

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

OLX опубликовал рейтинг поисковых запросов украинцев за 2019 год, самые популярные запросы — квартира и велосипед, самый популярный гаджет — iPhone 7 [инфографика] Онлайн-сервис OLX опубликовал рейтинг самых популярных поисковых запросов украинцев за 2019 год. Наибольшее количество поисковых запросов в прошлом году пришлось на такие позиции, как: квартира — более 8,1 млн запросов, велосипед — 5,8 млн, диван — 4,88 млн, кроссовки — боле...

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

Apple A14 Bionic: какой процессор Apple самый мощный? Главный (и пока единственный) источник слухов, порочащих Apple и её новый чип – сама Apple. Вице-президент Apple по архитектуре платформ Тим Миллет рассказал, насколько Apple A14 в новом iPad Air 4 превосходит чип в предыдущем iPad Air. Производительность центрального проце...

[Перевод] Для edge-серверов десятого поколения Cloudflare выбирает процессоры от AMD Ежедневно через сеть Cloudflare Network проходит более миллиарда уникальных IP-адресов; она обслуживает более 11 млн HTTP-запросов в секунду; она находится на расстоянии не более 100 мс от 95% интернет-населения. Наша сеть раскинулась на 200 городов в более чем 90 странах,...

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

Google раскрыл самые популярные запросы россиян в 2019 году Google рассказал о самых популярных поисковых запросах российских пользователей за 2019 год. Интересы россиян можно разделить на три категории: «События года», «Люди года» и «Сериалы года». Из числа событий, которыми заинтересовались россияне, можно отметить…

Your Phone откроет доступ к смартфону через ПК Если у вас есть смартфон на базе Android и ПК с установленной Windows 10, то для вас приятные новости: теперь вы можете синхронизировать уведомления вашего смартфона с вашим компьютером и просматривать их на рабочем столе. Ранее эта функция была доступна только бета-тестера...

Декодируем сигнал метеоспутника NOAA в 50 строчек кода Привет, Хабр. Продолжим тему декодирования различных видов радиосигналов. Одним из интересных форматов, разработанных еще в прошлом веке, является APT (Automatic Picture Transmission). Он используется для передачи изображений Земли из космоса, и что для нас гораздо более ин...

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

[Перевод] Управление жестами: От края до края (I) Всем привет. Специально для студентов продвинутого курса по Android-разработке подготовили перевод интересной статьи. Это первая статья их серии «Управление Жестами». Другие статьи вы можете найти по ссылке. В Android Q был добавлен новый режим навигации по системе, п...

Опыт создания web-приложения с Pony ORM Привет, Хабр! Недавно передо мной встала задача написать на Python web-приложение для разделения счёта в ресторане между участниками трапезы. Так как нужна DB для хранения данных о заказах и пользователях, встал вопрос выбора ORM для работы с базой. Разработка велась на Flas...

Простые запросы SNMP в Python (с помощью pysnmp) Этот пост предназначен в первую очередь для сотрудников телекома, админов и новичков в разработке, впервые столкнувшихся с необходимостью отправить snmp-запросы к какому-нибудь коммутатору и разобрать полученный ответ. Разберем основы работы с библиотекой pysnmp на примере ...

Разбираемся в рекурсии Привет, Хабр. Про рекурсию ходит много шуток, и она традиционно считается одной из сложных для понимания тем в computer science, поэтому давайте сегодня немного о ней поговорим. А именно, давайте обсудим, как выражать доказуемо завершимые вычисления. Зачем это надо? Рекурси...

Китайские “антисанкционные” процессоры стали вдвое мощнее Модели 3A4000 и 3B4000 работают на частотах 1,8 и 2 ГГц, имеют по четыре однопоточных ядра оригинальной архитектуры GS464V и способны выполнять x86-инструкции в режиме аппаратной трансляции. Последнее означает, что даже при одинаковой вычислительной мощности с процессорами I...

[Из песочницы] Защита проекта VBA в MS Excel Всем привет! Я обычный пользователь MS Excel. Не являющийся профессиональным программистом, но накопивший достаточно опыта, для установки и обхода защиты проектов VBA. Дисклеймер: В данной статье рассмотрены виды защиты проектов VBA, от несанкционированного доступа. Их сил...

Powered by ZeroTier. Практическое руководство по строительству виртуальных сетей. Часть 2 В процессе первых пяти шагов, описанных в статье Powered by ZeroTier. Практическое руководство по строительству виртуальных сетей. Часть 1 мы объединили виртуальной сетью три географически удалённых друг от друга узла. Один из которых расположен в физической сети, два других...

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

Что нового в TestMace часть 1. Облачная синхронизация, обновленный интерфейс и многое другое Всем привет! После долгого перерыва TestMace вновь вылезает из норы, чтобы поведать миру о новостях, связанных с проектом. Если кто забыл либо не читал статью о нас, TestMace — это IDE для работы с API. Наша тулза ставит целью покрыть весь спектр работ с существующим API, к...

Пишем декодер для sigrok Если работаешь с цифровой техникой, то рано или поздно появляется необходимость в логическом анализаторе. Одним из доступных радиолюбителям, является логический анализатор DSLogic от DreamSourceLab. Он не раз упоминался на сайте, как минимум: раз, два и три. Его особенность...

[Перевод] Что я узнал после более чем 1000 code review За последние 3 года я рассмотрел более 1000 pull (merge) request’ов. За это время я многому научился — в основном тому, как не проверять код, как сделать процесс менее болезненным, что делает код хорошего качества и так далее. Pull request должен делать только одну вещь Это...

Автоматизация аналитики Jira средствами Apache NiFi Приветствую, господа. Я Маша, мне 23, и я уже полгода изучаю и внедряю на практике Apache NiFi. Должна отметить, что спустя месяц после знакомства с этой технологией — я начала употреблять антидепрессанты. Был ли NiFi триггером или последней каплей достоверно неизвестно, к...

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

Honeypot vs Deception на примере Xello На Хабре уже есть несколько статей про технологии Honeypot и Deception (1 статья, 2 статья). Однако, до сих пор мы сталкиваемся с непониманием разницы между этими классами средств защиты. Для этого наши коллеги из Xello Deception (первый и пока единственный российский разраб...

[Перевод] Что такое Waypoint и какие возможности дает его использование Пару недель назад я посмотрела демонстрацию Waypoint— нового инструмента, который представила 15 октября 2020 года компания Hashicorp. Инструмента, который предназначен для создания легкого, интуитивного и настраиваемого под пользователя рабочего процесса сборки, развертыва...

[Перевод] Примеры GraphQL на Java для начинающих [со Spring Boot] В этой статье мы рассмотрим пример GraphQL на Java и создадим простой сервер GraphQL со Spring Boot. Таким цыпочкам тоже нравятся примеры GraphQL на Java со Spring Boot! GraphQL — это язык запросов для API, который позволяет клиентам запрашивать ограниченное множество данны...

Blackrota, самый обфусцированный backdoor, написанный на Go Самый обфусцированный ELF вредонос на Go, который мы встречали на сегодняшний день.ПредисловиеНедавно, вредоносный бэкдор, написанный на Go, который эксплуатировал уязвимость несанкционированного доступа в Docker Remote API, был пойман на Honeypot Anglerfish.Мы назвали его B...

Браузер на страже API-запросов Команде разработчиков, создающей одностраничное приложение (SPA), рано или поздно придётся столкнуться с ограничениями браузерной безопасности. С одной стороны, нужно сделать так, чтобы фронтенд-сторона могла беспрепятственно общаться с бэкенд API-сервером, а с другой — защ...

2.Elastic stack: анализ security логов. Logstash В прошлой статье мы познакомились со стеком ELK, из каких программных продуктов он состоит. И первая задача с которой сталкивается инженер при работе с ELK стеком это отправление логов для хранения в elasticsearch для последующего анализа. Однако, это просто лишь на словах...

[Перевод] Как мы оптимизировали наш DNS-сервер с помощью инструментов GO В преддверии старта нового потока по курсу «Разработчик Golang» подготовили перевод интересного материала. Наш авторитетный DNS-сервер используют десятки тысяч веб-сайтов. Мы ежедневно отвечаем на миллионы запросов. В наши дни DNS-атаки становятся все более и более распрос...

Comet — PHP-фреймворк для быстрых REST API Два года я писал микросервисы на Go, используя генераторы кода на базе Swagger. Получались довольно компактные и очень быстрые решения. Сейчас использую PHP, поэтому решил найти средства для решения тех же самых задач в экосистеме языка. Знаю и люблю Laravel и Symfony, но т...

В Индонезии выпустят самый мощный в мире смартфон Realme с батареей 6000 мАч Несколько недель назад смартфон Realme с номером продукта BLP793 был обнаружен в базе данных TUV Rheinland. Теперь директор по маркетингу бренда Realme сообщил о готовности компании выпустит необычный смартфон в Индонезии. Подробнее об этом читайте на THG.ru.

Лазерный проектор Epson настолько гармонично рекламировал кровать в IKEA, что его требовали продать вместе с ней Благодаря необычным уникальным ультракороткофокусным объективам мощные проекторы Epson умеют гармонично вписываться в дизайн торговых и жилых площадей Epson лидирует по ассортименту специальных проекторов для Digital Signage, поэтому IKEA не случайно выбрала их для рекламно-...

[Из песочницы] Unity, ECS, Actors: как поднять FPS в своей игре в три раза, когда оптимизировать уже нечего → Что такое ECS → Что такое Actors Не раз слышал, как хорош шаблон ECS, и что Jobs и Burst из библиотеки Unity — решение всех проблем с быстродействием. Чтобы не добавлять каждый раз слово «наверное» и «может», рассуждая о быстродействии кода, решил проверить всё лично. М...

[Из песочницы] Различные способы передачи данных в компоненты Angular Привет, Хабр! Представляю вашему вниманию перевод статьи «Different Ways to Pass Inputs to a Component in Angular» автора Netanel Basal. В этой статье, мы разберём три разных способа передачи данных в компонент. В следующем примере мы будем использовать select как главный...

Бесшовные A/B-обновления в Android: как они устроены Всем привет. В SberDevices наша команда занимается разработкой различных железок прошивок и для них на базе AOSP. Начиная с Android 8 (у некоторых вендоров с 7.1) в системе появился новый механизм накатки OTA-обновлений, т. н. Seamless A/B OTA Updates — бесшовные обновле...

[Из песочницы] Многопоточная сортировка с использованием пула потоков на Java В данном посте будет рассказано, как реализовать сортировку на Java c использованием ExecutorService. Общая суть сортировки в следующем: Массив разбивается на части Каждая часть массива сортируется Идем по упорядоченным массивам, сливаем их в один Здесь применяются иде...

Трассировка лучей в Minecraft стала доступна всем пользователям Bedrock Edition на Windows 10 В апреле этого года Mojang и NVIDIA представили для Windows 10 бета-версию Minecraft Bedrock Edition с поддержкой трассировки лучей и технологии DLSS 2.0. Теперь же, спустя несколько месяцев, новые технологии NVIDIA стали доступны всем пользователям стабильной версии Minecr...

Первые шаги с Fiddler Classic Привет! После знакомства с Charles Proxy большинство из читателей захотело узнать больше про инструменты мониторинга и анализа HTTP/HTTPS трафика. Расскажем про популярный у многих тестировщиков Fiddler. Описать все возможности Fiddler в одной статье вряд ли получится, поэто...

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

Java-дайджест за 29 мая 23 мая нашей любимой Java исполнилось 25 лет. Все эти годы один из самых популярных запросов в гугле — когда же Java наконец умрёт? Не дождётесь. К летней конференции JPoint присоединяется сам Джоэл Спольски — один из двух создателей Stack Overflow. Олды должны хорошо пом...

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

Грабли на пути к keep-alive Увеличение активности обмена данными между микросервисами зачастую является проблемой в архитектуре современных IT решений. Выжать максимум и выжить любой ценой — серьёзный вызов для любой разработки. Поэтому поиск оптимальных решений — это не прекращающийся процесс. В стать...

[Перевод] Создавайте приложения бесплатно с помощью Azure Cosmos DB Free Tier Хотите создать новое приложение, разработать и протестировать или запустить небольшие производственные рабочие нагрузки с помощью Azure Cosmos DB? Наш новый уровень бесплатного пользования позволяет начать работу без затрат и сэкономить деньги при создании и развитии новых п...

[Из песочницы] Императивный подход к реактивным данным на примере Jetbrains KTor и R2DBC Статья об использовании реактивного доступа к базам данных из корутин. Spring все упрощает, но это плохо сказывается на понимании реальных процессов работы приложения. Для демонстрации был выбран фреймворк KTor (просто потому, что мне нравится смотреть на то, что делает JetB...

[Из песочницы] Конспект по методам классификации данных При изучении Data Science, я решил составить для себя конспект по основным приемам, используемым в анализе данных. В нем отражены названия методов, кратко описана суть и приведен код на Python для быстрого применения. Готовил конспект для себя, но подумал, что кому-то это та...

SwayWM — сам себе UnixPorn Всем привет. В этой статье я опишу свой опыт настройки и использования sway — тайлингового оконного менеджера для Linux. Читать дальше →

Fastify.js — не только самый быстрый веб-фреймворк для node.js Последние 10 лет среди веб-фреймворков для node.js самой большой популярностью пользуется Express.js. Всем, кто с ним работал, известно, что сложные приложения на Express.js бывает сложно структурировать. Но, как говорится, привычка — вторая натура. От Express.js бывает слож...

Краткие заметки embed-программиста: дублирование секции в памяти микроконтроллера Начальные условия Есть устройство на базе микроконтроллера (для примера будет взят stm32f405rgt6). При включении оно настраивает свою периферию на основе предпочтений пользователя или настроек по-умолчанию. Пользователь может менять настройки во время работы устройства (как ...

Драйвер Radeon Software Adrenalin 20.1.1 доступен для загрузки Свежее ПО оптимизировано для игры Monster Hunter World: Iceborne, но это далеко не самая главная особенность первого в 2020 году «пакета драйверов» для видеокарт AMD Radeon. Версия Radeon Software Adrenalin 20.1.1 избавляет от множества багов, связанных с опциями Radeon Chi...

Обзор внутриканальных наушников FiiO FW1 В основе наушников-вкладышей FiiO FW1 лежат арматурные драйверы (Balanced Armature), созданные Knowles специально по заказу FiiO. Эти драйверы обеспечивают воспроизведение деталей во всем частотном диапазоне. Технические характеристики FiiO FW1 Тип конструкци...

Личный сервер shadowsocks за 10 минут без затрат Недавно я набрёл на интересное решение, которое позволяет развернуть личный сервер shadowsocks без каких-либо финансовых затрат. В результате получается некий аналог собственного VPN-сервера, с которым могут работать настольные компьютеры и мобильные устройства. Соединение с...

Критический RCE-баг во встроенном сервере GoAhead Исследователи из Cisco Talos обнаружили две новые уязвимости в веб-сервере GoAhead компании EmbedThis. Недостатки позволяют не прошедшему аутентификацию злоумышленнику выполнить на устройстве сторонний код или добиться состояния отказа в обслуживании. Проблема может затронут...

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

10 самых мощных смартфонов января Так как наступил февраль, бенчмарк AnTuTu делится с нами статистикой по самым мощным устройствам, тестирования которых проходили не менее 1000 раз за январь 2020 года. В этот раз доступны два рейтинга одновременно. Первый называет 10 самых производительных смартфонов в при...

ADAM-6700 —универсальный модуль связи с объектом на базе Linux Модули серии ADAM — самый узнаваемый продукт нашей компании. Запущенные в далеком 1992 году, они постоянно развиваются, сохраняя классический узнаваемый дизайн. Сегодня это мощные многофункциональные устройства, совмещающие в себе сразу несколько классов приборов для решен...

Процессор Intel Core i5 нового поколения получит поддержку HyperThreading В базе данных 3DMark был замечен новый процессор Intel Core i5 десятого поколения. И, судя по тому, что мы видим, одной из особенностей нового CPU станет поддержка HyperThreading. Подробнее об этом читайте на THG.ru.

Samsung заплатит $20 000 за лучшую идею повторного использования картонных коробок Компания Samsung совместно с британским журналом Dezeen запустили конкурс, в рамках которого участники должны придумать самый оригинальный вариант повторного использования картонной коробки.В конкурсе может принять участие любой желающий, достигший 18-летнего возраста. Созда...

Машинное обучение на C#: введение в ML.NET ML.NET претендует на звание самой мощной библиотеки для машинного обучения на платформе .NET. Так ли это на самом деле? На вопрос отвечает Джефф Просайз. Джефф Просайз — один из создателей компании Wintellect, коллега по цеху знаменитого Джеффри Рихтера, автор более девят...

Портативный 4K-монитор Desklab можно превратить в графический планшет Для заказа доступна любопытная новинка — портативный монитор Desklab, который, как утверждают разработчики, является одним из самых лёгких устройств в своём классе. Новинка выполнена на матрице 4К: разрешение составляет 3840 × 2160 пикселей при размере 15,6 дюйма по диагонал...

Postgresso 20 Жизнь продолжается. Продолжаем знакомить вас с самыми интересными новостями PostgreSQL Главная новость Feature Freeze Функциональность 13-й версии PostgreSQL заморожена. Теперь только доработки и исправления багов. Список нового, вопреки многим ожиданиям, довольно обширный...

Шардинг, от которого невозможно отказаться А не пора ли нам шардить коллекции? Не-е-е: у нас нет времени, мы пилим фичи! CPU занят всего на 80% на 64 ядерной виртуалке! данных всего 2Tb! наш ежедневный бекап идет как раз 24 часа! В принципе, для большинства проектов вcё оправдано. Это может быть еще прототип или к...

[Из песочницы] Используем macOS для удалённой сборки Unreal Engine билдов из-под Windows Любой пользователь ОС Windows, вставший на увлекательный путь кросс-платформенной разработки, однажды сталкивается с проблемой невозможности сборки «яблочных» билдов из рабочего окружения: для сборки и подписания приложения требуется девайс с macOS. У нас есть два варианта:...

Уродливый API В этой статье хочу рассказать о проблемах, с которыми столкнулся в процессе интеграции с API по HTTP протоколу, и поделиться опытом их решения.При разработке фронтенд приложений (mobile/web), часто сталкиваешься с тем, что API на бэкенде еще не реализован. Приходится ждать р...

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

Компания Compal представила концепт ноутбука с двумя экранами Концепт ноутбука компании Compal представляет ноутбук с двумя экранами. Одним из особенностей является клавиатура и позволяет использовать два экрана для максимальной производительности. Концепт ноутбука получил награду IF Design. Эту награду получают за привлекательный и и...

[Перевод] console.log не является частью JavaScript Доброго времени суток, друзья! Представляю вашему вниманию перевод заметки Nikhil John «console.log isn’t in the JavaScript language». Пожалуй, console.log является самой используемой командой в JS. Однако она не является частью JS. Не верите? А вы загляните в спецификацию...

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

Действительно мощный и недорогой — BQ 5732L Aurora SE Один из самых мощных смартфонов в доступном ценовом сегменте, который обращает на себя внимание очень достойным процессором, привлекательным дизайном с красивыми расцветками корпуса.

Java-дайджест за 10 декабря Вышла четвертая альфа-версия «Remnants of the Precursors» — написанного на Java бесплатного аналога «Master of Orion» (это игра 1993 года). Пятую альфу обещают 5-го сентября. Автор обещает выложить исходники после перехода в бету. Скачать четвертую альфу можно по ссылке. ...

Планы команды IntelliJ Platform на 2020 год Сегодня мы хотели бы рассказать о некоторых из текущих проектов команды IntelliJ Platform, которые затронут IntelliJ IDEA и другие IDE на базе нашей платформы. Результаты этих проектов будут выпускаться в течение следующего года; некоторые из них попадут уже в релиз 2020.1, ...

[Перевод] Виральный сайт изнутри: 5 миллионов просмотров на Ever Given Как уже знают все читающие эту статью, контейнеровоз Ever Given сел на мель в Суэцком канале на шесть с лишним дней. Он заблокировал маршрут, по которому обычно приходило примерно 10% товаров мировой торговли. Но что более важно (по крайней мере, для этого поста), он также ...

Panasonic тестирует роботизированный сервис для перевозки пассажиров в Токио Корпорация Panasonic вместе с крупнейшей в Японии пассажирской железнодорожной компанией JR East Group начали тестирование роботизированного сервиса, позволяющего лицам с ограниченными возможностями беспрепятственно передвигаться в городской среде. Площадкой для испытаний ст...

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

Знакомство с wal-g системой бекапирования PostgreSQL WAL-G — простой и эффективный инструмент для резервного копирования PostgreSQL в облака. По своей основной функциональности он является наследником популярного инструмента WAL-E, но переписанным на Go. Но в WAL-G есть одна важная новая особенность — дельта-копии. Дельта-копи...

Какой язык программирования учить в 2020-м? Статей с подобными заголовками существует уже множество. Но в них постоянно какая-то дичь! Смотрите, Google ещё до основных результатов советует такое: HCL, Карл! Язык, который не просто очень далёк от «Самых Популярных», но ещё и создан для конфигурации, так что его вообще...

[Перевод] Использование алгоритма Прима для генерации соединённых друг с другом пещер Я решил объяснить один из алгоритмов генерации карты, используемых в моей игре In the House of Silence. Главное преимущество этого способа заключается в том, что в отличие от других алгоритмов, он никаким образом не может сгенерировать карту с разделёнными частями. Гене...

Kotlin Multiplatform. Работаем с многопоточностью на практике. Ч.1 Доброго всем времени суток! С вами я, Анна Жаркова, ведущий мобильный разработчик компании «Usetech» Я давно занимаюсь не только нативной разработкой (как iOS, так и Android), но и кросс-платформенной. В свое время я очень плотно писала на Xamarin (iOS, Android, так и Forms...

Аутентификация в Kubernetes с помощью Dex: прикручиваем LDAP Сегодня я подробно разберу настройку аутентификации в Kubernetes с помощью Dex в связке с LDAP, а также покажу, как можно добавлять статических пользователей в Dex.  В статье не буду останавливаться на основных принципах работы Dex, а сразу перейду к установке и настройке L...

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

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

[Перевод] Забудьте о гомоморфном шифровании: теперь у нас есть функциональное шифрование Слышали ли вы о функциональном шифровании (ФШ)? Возможно, вы слышали о нём, и для себя поставили его в один ряд с гомоморфным шифрованием, что не совсем неверно, но и не до конца правильно. Давайте сегодня с вами посмотрим на то, что такое ФШ, разберём пару примеров и то,...

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

Ender 3d продолжение Hi!Прошло почти четыре месяца после покупки Ender 3. Все порывался написать о работе с ним, да каждый раз останавливал очередной незавершенный проект. И вот вчера как бы завершил еще один проект и сел за сей опус. За все месяцы работы у меня не возникло ни одной технической ...

DBA: Находим бесполезные индексы Регулярно сталкиваюсь с ситуацией, когда многие разработчики искренне полагают, что индекс в PostgreSQL — это такой швейцарский нож, который универсально помогает с любой проблемой производительности запроса. Достаточно добавить какой-нибудь новый индекс на таблицу или включ...

Обзор обновленной линейки блоков питания be quiet! Pure Power 11 Обновленное семейство БП be quiet! предлагает «еще больше возможностей за те же деньги». Pure Power 11 – одни из самых доступных моделей с сертификатом 80 Plus Gold на российском рынке, они предназначены для мощных игровых систем и оснащены «бесшумными» вентиляторами. Мы рас...

Трепещущий Kivy. Обзор возможностей фреймворка Kivy и библиотеки KivyMD Kivy и Flutter — два фреймворка с открытым исходным кодом для кроссплатформенной разработки. Flutter: создан компанией Google и выпущенный в 2017 году; в качестве языка программирования использует Dart; не использует нативные компоненты, рисуя весь интерфейс внутри со...

[Перевод] Быстрая загрузка страниц на самых простых дешёвых телефонах Те телефоны, о которых идёт речь в заголовке, по-английски называют «feature phone». Они отличаются крайне скромными возможностями. Кроме того, они весьма доступны, так как стоят в районе $20-25. Их можно сравнить с облегчёнными версиями современных смартфонов. Такие телефон...

[Из песочницы] База данных на ScriptableObject c системой сейва/загрузки Введение В каждой игре есть данные, с которыми работают гейм-дизайнеры. В рпг — это база данных айтемов, в матч-3 — стоимость в кристаллах инструментов из магазина, в экшенах — количество хп, на которое лечит аптечка. Для хранения таких данных существует много способов — кт...

Security Week 32: уязвимость в GRUB2 29 июля компания Eclypsium опубликовала исследование новой уязвимости в загрузчике Grub2, массово используемом в системах на базе Linux — от ноутбуков и IoT-устройств до серверов. Суть уязвимости довольно простая: ошибки при обработке текстового конфигурационного файла grub....

Распознавание объектов на android с помощью TensorFlow: от подготовки данных до запуска на устройстве Обучение нейросети распознаванию образов — долгий и ресурсоемкий процесс. Особенно когда под рукой есть только недорогой ноут, а не компьютер с мощной видеокартой. В этом случае на помощь придёт Google Colaboratory, которая предлагает совершенно бесплатно воспользоваться GPU...

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

ПШЕ AndroidStudio ПШЕ AndroidStudio - Все хорошо, только перед влитием обязательно засквош коммиты. - Заскво...Что? Примерно такая реакция была у меня после получения апрува первого пул реквеста на первой неделе работы в одной крупной компании. Причина такой реакции весьма простая — далеко не...

[Перевод] Введение в графовые базы данных SQL Server 2017 В преддверии старта курса «MS SQL Server Developer» подготовили для вас еще один полезный перевод. Графовые базы данных — это важная технология для специалистов по базам данных. Я стараюсь следить за инновациями и новыми технологиями в этой области и, после работы с реляци...

Производительность Lakefield не впечатляет: 5-ядерный Intel Core i5-L16G7 протестирован в UserBenchmark В прошлом году компания Intel анонсировала 10-нм процессоры Lakefield с пониженным энергопотреблением, предназначенные для планшетов и тонких ноутбуков. И теперь появились новые данные о производительности данных чипов — один из них был протестирован в UserBenchmark. Для нач...

Redux Toolkit как средство эффективной Redux-разработки В настоящее время разработка львиной доли веб-приложений, основанных на фреймворке React, ведется с использованием библиотеки Redux. Данная библиотека является самой популярной реализацией FLUX-архитектуры и, несмотря на ряд очевидных преимуществ, имеет весьма существенные ...

120 к/с, HDMI 2.1, 12 TFLOPS и обратная совместимость — это всё есть у Xbox Series X Компания Microsoft только что без всякой шумихи взяла и раскрыла одну из главных особенностей грядущей приставки Xbox Series X. Недавние слухи были верны — производительность консоли действительно составит 12 TFLOPS. Это вдвое больше, чем у Xbox One X, втрое боль...

[Перевод] Лучшие практики Kubernetes. Корректное отключение Terminate Лучшие практики Kubernetes. Создание небольших контейнеров Лучшие практики Kubernetes. Организация Kubernetes с пространством имен Лучшие практики Kubernetes. Проверка жизнеспособности Kubernetes с помощью тестов Readiness и Liveness Лучшие практики Kubernetes. Настройка зап...

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

Статический генератор сайтов Hugo. Фронтенд реалии В 2020 практически весь мир фронтенда заполонили Javascript фреймворки. Только и слышно о React, Angular, Vue и иногда в далеких просторах можно услышать тихий шепот «Svelte». Разработчики умело используют эти инструменты для создания крутых продуктов, но есть и «динозавры» ...

На орбите Земли возможен взрыв спутника В заявлении говорится, что в декабре 2019 года у спутника произошел сбой, приведший «к значительному и необратимому повреждению батарей». При зарядке аккумуляторов Spaceway-1 может взорваться, а его осколки повредят другие спутники, находящиеся на его орбите. Череда столкнов...

[Из песочницы] Взаимодействие с NIDD через SCEF с использованием утилиты Postman. Краткий экскурс в SCEF и его возможности Данная статья позволит тем, кто еще только начинает свою разработку или уже применяет технологию NB-IoT, составить представление о том, как можно удаленно взаимодействовать с NB-IoT устройством. Краткий обзор NB-IoT легко наступает на пятки 2G и зарекомендовал себя как эн...

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

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

[Перевод] Thanos — масштабируемый Prometheus Перевод статьи подготовлен специально для студентов курса «DevOps практики и инструменты». Фабиан Рейнарц (Fabian Reinartz) — разработчик программного обеспечения, фанат Go и любитель решать сложные задачи. Также он мэйнтейнер Prometheus и соучредитель Kubernetes SIG instr...

[Из песочницы] Как GitLab помогает делать бэкапы больших хранилищ NextCloud Привет, Хабр! Сегодня я хочу рассказать о нашем опыте автоматизации резервного копирования больших данных хранилищ Nextcloud в разных конфигурациях. Я работаю СТО в «Молния АК», где мы занимаемся конфигурационным управлением IT систем, для хранения данных используется Nextcl...

Windows 10 Build 21337 доступна для скачивания Microsoft только что выпустила новую сборку Windows 10 Insider Preview для тестеров в канале разработчиков (Dev). Новая сборка ОС – 21337, и она включает в себя несколько заметных изменений, в том числе новый способ переупорядочивания и настройки виртуальных рабочих столов. ...

Google представляет топ-запросы 2019 года в Украине Традиционно в конце года мы представляем итоговый рейтинг самых популярных запросов украинских пользователей Google.

Основы deep learning на примере дебага автоэнкодера, часть №1 Если почитать обучение по автоэнкодерам на сайте keras.io, то один из первых посылов там звучит примерно так: на практике автоэнкодеры почти никогда не используются, но про них часто рассказывают в обучалках и народу заходит, поэтому мы решили написать свою обучалку про них:...

Мультиплеерный шутер в оригинальном сеттинге Diesel Soldiers: World War вышел на Android В Google Play вышел новый мультиплеерный шутер под названием Diesel Soldies: World War. Это проект с видом сверху и довольно приятной графикой. Действие происходит в сеттинге альтернативной истории с элементами дизельпанка. По сюжету вторая мировая война не закончилась в 19...

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

Работа с объектным S3-хранилищем Mail.ru Cloud Solutions как с файловой системой Waste Pickers by GabrielBStiernstrom С объектными хранилищами чаще всего работают через API. Но если очень хочется, можно сложить туда файлы и работать с ними в объектном хранилище, как в файловой системе, с иерархией каталогов. Грубо говоря, в хранилище можно выложить фото...

[Перевод] Использование API Gateway в качестве единой точки входа для веб-приложений и API Перевод статьи подготовлен специально для студентов курса «Архитектор высоких нагрузок». Введение Преимущества AWS, такие как высокая доступность, масштабируемость и эластичность, уже доказали свою эффективность для SaaS-провайдеров (Software-as-a-Service). При модернизац...

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

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

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

[Перевод] Оптимизация Unity: как вас обкрадывает иерархия сцен Итак, вы оптимизировали самые очевидные части своей игры. Однако на самом деле это не так. Вы упустили хитрый, не совсем заметный момент: оптимизацию иерархии сцены Unity. А что не так с иерархией? Позвольте вам кое-что показать. Запустите Unity и откройте проект своей игр...

UML для самых маленьких: диаграмма классов Аве, Кодер! Диаграмма классов UML иллюстрирует структуру системы, описывая классы, их атрибуты, методы и отношения между объектами. Даже самые малые детки знают, что UML происходит от Unified Modeling Language, если по русски, то — унифицированный язык моделирования, кото...

Django Rest Framework для начинающих: создаём API для чтения данных (часть 1) Меня зовут Стас Гаранжа, я выпускник курса «Python-разработчик» в Яндекс.Практикуме. Я хочу помочь начинающим разработчикам, которые приступили к изучению Django Rest Framework (DRF) и хотят разобраться, как устроен этот фреймворк. Я готовлю цикл статей, в которых расскажу о...

Представлен Asus ROG Zephyrus G14 – первый в мире 14-дюймовый ноутбук с графикой RTX Компания Asus традиционно активна на выставке CES 2020, а одной из главных новинок ее на мероприятии стал игровой ноутбук ROG Zephyrus G14. Это одна из самых компактных моделей в мире, в оснащение которой вошли дискретные 3D-карты Nvidia GeForce RTX и APU AMD Ryzen 4000...

Развёртываем Hyperledger Fabric 2.0 на AWS Hyperledger Fabric — это блокчейн-платформа с открытым исходным кодом от Linux Foundation. С её помощью можно создавать блокчейн-приложения и управлять доступом и разрешениями для данных в цепочке блоков. Hyperledger Fabric стоит использовать в том случае, если требуется соз...

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

Когда пасует VACUUM — чистим таблицу вручную VACUUM может «зачистить» из таблицы в PostgreSQL только то, что никто не может увидеть — то есть нет ни одного активного запроса, стартовавшего раньше, чем эти записи были изменены. А если такой неприятный тип (продолжительная OLAP-нагрузка на OLTP-базе) все же есть? Как по...

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

Ask me anything! Задай вопрос Android-команде Badoo Предлагаем продолжить добрую традицию Ask me anything на Хабре и поговорить про разработку Android-приложений. Сегодня и завтра Android-команда Badoo будет на связи и ответит на любые вопросы о разработке и тестировании приложений с многомиллионной аудиторией, даст советы на...

Графическое ядро процессора Ryzen 7 4700U почти не уступает дискретной GeForce MX350 Если с высокопроизводительными мобильными APU Ryzen 4000 мы уже познакомились весьма подробно, то энергоэффективные пока остаются раскрыты не полностью. Обзоры в Сети уже есть, но полноценных и объёмных пока нет. Поэтому очередное сравнение графической подсистемы R...

[Перевод] Самый полезный модуль стандартной библиотеки Python, о котором все постоянно забывают В Python много отличных доступных «из коробки» модулей. Один из самых полезных — collections. Он содержит «специализированные типы для создания контейнеров», являющихся альтернативами универсальным dict, list, set и tuple. Ниже мы рассмотрим три содержащихся в модуле класса...

Почему iPad с Magic Keyboard не заряжается? Отзывы пользователей Одной из особенностей новой клавиатуры Magic Keyboard для iPad Pro стала возможность заряжать планшет с помощью разъема Smart Connector. Это позволяет подключить кабель для зарядки только к самой клавиатуре (для него сделали специальный порт сбоку), а не тянуть еще один про...

V&V не значит вендетта На протяжении последних шести лет я занимаюсь разработкой и приёмочным тестированием самых разных по сложности и размеру приложений для проведения и сопровождения клинических исследований. Big data, огромное количество визуализаций и представлений, хранилища данных, ETL и ...

Оптимизация рендера под Mobile Здравствуйте, дорогие читатели, любители и профессионалы программирования графики! Предлагаем вашему вниманию цикл статей, посвященных оптимизации рендера под мобильные устройства: телефоны и планшеты на базе iOS и Android. Цикл будет состоять из трех частей. В первой части ...

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

«Тудурант» — менеджер задач, который заставляет примитивный мозг работать Буду краток: системы продуктивности типа GTD никогда не работают в долгосрочной перспективе. Я взял все самые сочные части разных методологий, соединил их, упростил — и теперь им пользуется более 5000 пользователей. В этой статье я описал весь процесс развития продукта от ид...

Графика в Ryzen 7 4800U мощнее, чем в i7-1065G7, а если поднять TDP до 25 Вт, то и мощнее, чем в GeForce MX250 Ноутбуки на базе гибридных процессоров AMD Ryzen 4000 поступят в продажу примерно через месяц, но данные базы 3DMark уже позволяют представить производительность интегрированного в них GPU. В одном таком сравнении свели Ryzen 7 4800U, Ryzen 7 4700U и Core i7-1065G7. Не ...

Памятка по борьбе с алкоголем или Как пережить фуршеты Тут вот праздники скоро. Спросил недавно друг «как мне это все пережить?». Я сначала объяснял, а потом решил написать статью на хабр. Рассказанное — услышит один человек, а написанное — прочитаю сотни! Меня, если честно, достаточно сильно раздражают всевозможные застолья. По...

Создание в SoapUI асинхронного REST MockService с запуском в Portainer Задача: Разработать мок для проверки асинхронного обмена сообщениями с внешней системой.Как пример, рассмотрим некий кейс проверки валидности промокода внешней системой. По шагам:1) Отправляем запрос в сервис внешней системы;Запрос PUT содержит поля (например, в headers...

Шутер на миллион с нуля: путь инди-разработчика Последние пять лет я руковожу образовательными программами по игровой индустрии в Высшей школе бизнес-информатики НИУ ВШЭ. Мы проводим много бесплатных мероприятий с интересными спикерами, собирая аудиторию через Leader-ID. На одной из последних встреч прозвучала очередная к...

[Из песочницы] Сборка тонкого клиента RDP на базе Raspberry Pi С ростом популярности мини-ПК типа Raspberry Pi, и подобных ему клонов, возникла масса кейсов по их использованию в ИТ-инфраструктуре предприятия, умном доме / даче / гараже, и в других применениях. Одним из удобных и желаемых кейсов является использование RPi как тонкого к...

WSL эксперименты. Часть 1 Привет, хабр! В октябре OTUS запускает новый поток курса «Безопасность Linux». В преддверии старта курса делимся с вами статьёй, которую написал один из наших преподавателей — Александр Колесников. В 2016 году компания Microsoft представила IT сообществу новую технологи...

Zebra Technologies представила на выставке NRF 2020 новое решение для интеллектуальной автоматизации SmartSight с мобильной системой автоматизации EMA50 — это первое в розничной торговле роботизированное решение на основе подписки, которое превращает данные в рекомендации по повышению эффективности магазина.  Zebra Technologies Corporation (NAS...

[Перевод] Знай своего врага: создаём Node.js-бэкдор Бэкдор в собственном коде, который может незаметно взаимодействовать с операционной системой, это один из самых страшных кошмаров любого разработчика. В настоящий момент в npm имеется более 1.2 миллиона общедоступных пакетов. За последние три года зависимости проектов превра...

HyperPC Mute – компьютер с GeForce RTX 2070 и Intel Core i9-10900 без единого кулера Российская компания анонсировала уникальный, бесшумный компьютер HyperPC Mute. Отличительной особенностью устройства стала оптимизированная система охлаждения без вентиляторов. При этом ПК базируется на GeForce RTX 2070 и Intel Core i9-1090. ПК способен выполнять широкий…

В России до конца 2019 года испытают улучшенную версию самой мощной пушки в мире Генеральный директор компании “Уралтрансмаш” Дмитрий Семизоров рассказал о том, что уже до конца 2019 года завершится проходящая прямо сейчас модернизация одной из мощнейших пушек, существующих в мире, под названием “Малка”.

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

Конкурент EMUI и MIUI становится интереснее. Перечень улучшений Realme UI 2.0 Realme подготовила обновление для своего фирменного графического интерфейса. Как и ожидалось, новый интерфейс Realme UI 2.0 содержит множество улучшений, основанных на официальных изменениях в Android 11. Новые функции предназначены для улучшения взаимодействия пользова...

[Из песочницы] Модульные скетчи В статье описан способ, который упрощает работу над созданием скетчей. Он подойдет всем людям, работа которых — проектировать интерфейсы для пользователей. Читать дальше →

[Перевод] Продуманные запросы: стратегии кэширования в век PWA Давным-давно мы, в деле кэширования, всецело полагались на браузеры. Разработчики в те дни почти никак не могли на это повлиять. Но потом появились прогрессивные веб-приложения (Progressive Web App, PWA), сервис-воркеры, API Cache. Внезапно случилось так, что в руках програм...

Непрохождение вызова по номеру 112 на телефоне Xiaomi Redmi Note 5 Я использую (уже довольно старый) телефон Xiaomi Redmi Note 5 и хочу рассказать о том, почему этот телефон (и, возможно, некоторые другие) может довести до трагических последствий. Примерно месяц назад потребовалось позвонить 112, но вместо ответа оператора я услышал, что н...

Понижаем барьеры на вход в распознавание речи Автоматическое распознавание речи (STT или ASR) прошло долгий путь совершенствования и имеет довольно обширную историю. Расхожим мнением является то, что лишь огромные корпорации способны на создание более-менее работающих "общих" решений, которые будут показывать...

Полный набор gRPC, RESTful JSON API и Swagger из одного .proto файла. От введения до нюансов и тонкостей grpc-gateway В этой статье я опишу процесс создания сервера с gRPC и RESTful JSON API одновременно и Swagger документацию к нему. Эта статья — продолжение разбора различных способов реализаций API-сервера на Golang с автогенерацией кода и документации. Там я обещал более подробно остано...

Выбраны самые мощные смартфоны среднего класса в марте Бенчмарк AnTuTu опубликовал список самых мощных смартфонов среднего класса в марте текущего года.Лидером списка оказался смартфон OPPO Reno3 5G, который основывается на однокристальной платформе MediaTek Dimensity 1000L. Он смог набрать 407 340 баллов.На втором месте очутилс...

PostgreSQL Antipatterns: сизифов JOIN массивов Иногда возникает задача «склеить» внутри SQL-запроса из переданных в качестве параметров линейных массивов целостную выборку с теми же данными «по столбцам». Читать дальше →

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

Акселератор ВТБ: стартапы учатся взлетать По статистике, выживает около 8 % стартапов, а успех приходит всего к 1 % из них. Главная причина неудачи — нет спроса на товары или услуги: технология, может, и крутая, но потенциальные клиенты о ней не знают. Получается, чтобы не выстрелить вхолостую, надо ориентироваться ...

Удаленный доступ к компьютеру Благодаря различным сервисам, вы можете настроить удаленный доступ к домашней сети. Одной из лучших компаний, которая предоставляет подобного рода услуги, является VPNKI, которая находится по ссылке https://vpnki.ru. Благодаря специалистам ваша домашняя сеть будет доступна и...

Huawei представила голосового помощника Celia Китайская компания Huawei на презентаций новых флагманов P40, представила ещё и фирменного голосового помощника Huawei Celia. Celia откликается на фразу Hey Celia. Помощник Celia пока что только отвечает на запросы о погоде, набирает номера, отправляет сообщения, устанавлив...

IntelliJ IDEA: Structural Search & Replace Современные IDE — очень мощные инструменты, способные помогать разработчику в самых разных ситуациях. Но обратной стороной этой мощности является то, что большинство функций находится в тени — об их наличии мало кто подозревает. Простой пример одной...

Представлен новейший iPad Pro с фирменной клавиатурой Apple представила новый планшет iPad Pro на базе ЦП A12Z. Утверждается, что фирменный процессор оснащён 8 ядрами и мощным нейрочипом. По данным компании, устройство мощнее большинства ноутбуков под управлением ОС Windows. Планшет получил широкоугольную камеру, микрофоны сту...

Как проанализировать рынок фотостудий с помощью Python (1/3). Парсинг данных В интернете огромное количество открытых данных. При правильном сборе и анализе информации можно решить важные бизнес-задачи. Например, стоит ли открыть свой бизнес? С таким вопросом ко мне обратились клиенты, желающие получить аналитику рынка услуг фотостудий. Для них было...

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

[Перевод] HTTP-заголовок Feature-Policy и контроль поведения веб-страниц в браузерах Существует одна совершенно бесподобная методика, позволяющая держать производительность веб-проекта под контролем. Она заключается во внедрении в процесс разработки механизмов, результаты работы которых хорошо заметны. Эти механизмы нацелены на то, чтобы всегда напоминать пр...

Автоматизация ввода в SecureCRT с помощью скриптов У сетевых инженеров часто возникает задача, выполнить copy/past определенных фрагментов из блокнота в консоль. Копировать приходиться обычно несколько параметров: Username/Password и что-либо еще. Ускорить этот процесс позволяет использование скриптов. НО задачи написание ск...

Samsung показала искусственных людей Neon, AR-очки и робота Ballie Неоны захватят мир? Сегодня стартовала потребительская выставка CES 2020. На ней компании со всего мира представляют интереснейшие продукты, но мы остановимся на новинках от Samsung. Речь пойдет об искусственном человеке Neon, очках дополненной реальности и умном роботе Ball...

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

Вышло новое обновление 1.2 для Outer Worlds Switch Разработчик Obsidian Entertainment выпустил новое обновление для Outer Worlds, целью которого является улучшение производительности игры и визуальных эффектов на платформе Nintendo. Помимо визуальных улучшений, производительность игры была улучшена за счет упаковки текстур. ...

Samsung представила телевизоры MicroLED для дома и флагманский Samsung Q950TS QLED 8K Samsung представляет модульные телевизоры MicroLED для домашнего использования, в линейку вошли модели с дисплеями диагональю от 75 дюймов, которые подходят для самых разных домов и интерьеров. Новые 88- и 150-дюймовые MicroLED-телевизоры практически не имеют рамок...

Обучение универсальной модели NLU c BERT и Multitask Learning В современной компьютерной лингвистике понимание смысла написанного или сказанного достигается с помощью моделей естественного языка (NLU). С постепенным ростом аудитории виртуальных ассистентов Салют встает вопрос об оптимизации наших сервисов, работающих с естественным яз...

Google хоронит расширение PHP IMAP Google сообщил владельцам G Suite аккаунтов о том, что с 15 феврался 2021 года авторизация в Gmail и других продуктах будет работать только через OAuth. Для IMAP-авторизации разработчикам предлагается использовать способ автризации под названием SASL XOAUTH2. Но дело в том...

INFADAY 2021 посветят культуре управления данными Организатор форума, компания DIS Group, разделила событие на две секции, на одной из которых специалисты отрасли поделятся бизнес-кейсами, а вторая будет отведена демонстрации новинок из  сферы информационных технологий. Читать полную статью

INLINE Technologies перевела службу сервиса на технологию "цифровых двойников" INLINE Technologies модернизировала процессы деятельности своей службы сервиса, использовав цифровые модели ИТ-инфраструктуры. Работа проведена в рамках корпоративной программы по совершенствованию инструментов и методов сервисного сопровождения заказчиков. Для перехода к ц...

Дополняя SQL. Часть 2. Оптимизация работы со строками и открытия файлов Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Что будет в этой статье? Это вторая статья в цикле о жизни разработчиков IDE для баз данных. Ее структура будет похожа на первую. Как и в первой я расскажу о проблемах с которыми мы сталкивались...

Active Restore: С чего начать разработку в UEFI Всем привет. В рамках проекта от компании Acronis со студентами Университета Иннополис (подробнее о проекте мы уже описали это тут и тут) мы изучали последовательность загрузки операционной системы Windows. Появилась идея исполнять логику даже до загрузки самой ОС. Следовате...

[Перевод] Создание карандашного эффекта в SVG Моя игра Dragons Abound создаёт карты в векторном графическом формате SVG. Векторная графика имеет множество особенностей (например, зум без потерь), что удобно для карт. Также векторная графика хороша для создания чётких линий, например, чернильных контуров: С другой стор...

Самые мощные Android-смартфоны марта в Китае по мнению AnTuTu Разработчики бенчмарка AnTuTu опубликовали топ самых мощных Android-устройств в Китае. Он заметно преобразился со времен появления февральского рейтинга. Если тогда на первом месте был Xiaomi Mi 10 Pro с показателем 594 000 баллов, а большая часть остальных устройств — оцене...

CES 2020: мощный и тонкий ноутбук HP Spectre x360 15 — 17 часов автономности и дисплей 4K Компания HP в преддверии открытия выставки CES 2020 в Лас-Вегасе представила тонкий ноутбук HP Spectre x360 15 с впечатляющей автономностью — до 17 часов. Благодаря полностью переработанный системе теплоотвода он является самым мощным из всех ноутбуков HP серии Spectre. Нови...

[Из песочницы] HTTP Error 503. Service Unavailable: случай в поддержке хостинга Работа в поддержке хостинга в основном однотипная, большинство запросов от клиентов решаются по проработанной схеме, но иногда всё же приходится сталкиваться с нетривиальными проблемами. Тогда главная задача инженера — найти тот самый — единственно верный путь, который приве...

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

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

[Из песочницы] Как скомпилировать декоратор — C++, Python и собственная реализация. Часть 2 Декораторы — одна из самых необычных особенностей Python. Это инструмент, который полноценно может существовать только в динамически типизированном, интерпретируемом языке. В первой части статьи мой товарищ Witcher136 показал, как в С++ реализовать наиболее приближенную к эт...

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

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

[Из песочницы] 9 ключевых алгоритмов машинного обучения простым языком Привет, Хабр! Представляю вашему вниманию перевод статьи «9 Key Machine Learning Algorithms Explained in Plain English» автора Nick McCullum. Машинное обучение (МО) уже меняет мир. Google использует МО предлагая и показывая ответы на поисковые запросы пользователей. Netflix...

Low-code платформы: панацея или рискованная ставка? Low-code платформы (Low code application platforms, LCAP) возникли как реакция на сложность и многообразие современных средств разработки ПО. Согласно Gartner, одним из самых известных игроков в этой области является Mendix. Продажа Siemens за космические $700 млн. это подтв...

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

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

[Перевод] Мягкие частицы в WebGL и OpenGL ES Системы частиц это одни из самых простых способов сделать 3D сцену визуально богаче. В одном из наших Android приложений 3D Buddha Live Wallpaper достаточно простая сцена, которой было бы неплохо добавить чуть больше деталей. И когда мы думали как добавить разнообразия изобр...

Весь Хабр в одной базе. Комментарии и веб-приложение Часть 1 | mega.nz | Онлайн демо Наверное, это продолжение статьи, в которой я парсил Хабр в базу данных. Теперь настало время её применить. Читать дальше →

Sony представила электромобиль Vision-S. Как тебе такое, Илон? Sony представила электромобиль Vision-S Sony знакома всем по игровым приставкам, телевизорам и смартфонам. Но кто бы мог подумать, что компания представит электромобиль? Подобный шаг в очередной раз демонстрирует важность развития программного обеспечения на автомобильном ры...

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

Xiaomi запатентовала смарт-колонку, неотличимую от Apple HomePod Стало известно о новом патенте компании Xiaomi, в котором описана смарт-колонка, по дизайну очень напоминающая Apple HomePod.То, что компания Xiaomi неоднократно пародировала дизайн устройств Apple, далеко не секрет, и это, видимо, вообще не волнует китайского техногиганта.Н...

Давайте отключим vacuum?! Алексей Лесовский Расшифровка доклада 2018 года Алексея Лесовского "Давайте отключим vacuum?!" Такой призыв часто возникает, когда в PostgreSQL возникают проблемы, и главным подозреваемым оказывается vacuum (далее по тексту просто "вакуум"). По опыту, многие наступают на э...

Тагир и Егор: интервью с Тагиром Валеевым В 2019-м зрители JPoint крайне впечатлились докладом «Атомарный рефакторинг» Тагира Валеева (lany). Демонстрация того, как можно нестандартно использовать средства IDE для рефакторинга, взорвала многим мозг и при этом была практически полезна — а в итоге по зрительским оце...

Xiaomi разобралась с проблемой, которая не позволяла использовать наушники Xiaomi Mi Air 2S Компания Xiaomi предлагает большой ассортимент наушников, среди которых представлены несколько моделей полностью беспроводных наушников, в частности, выпущенных под брендом Redmi. В апреле этого года производитель выпустил гарнитуру Xiaomi Mi Air 2S, которая до сих пор ...

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

Вот почему новейшие процессоры AMD Ryzen 4000 не имеют поддержки PCIe 4.0 Неделю назад компания AMD представила новые мобильные APU Ryzen 4000. В ноутбуках они должны появиться в следующем месяцы, но утечки уже сейчас указывают на впечатляющий рост производительности. Причём и у CPU, и у GPU, несмотря на то, что последние, во-первых, всё ещё ...

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

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

Как оптимизировать изучение английского Ни для кого не секрет, что знание английского на хорошем уровне — уже must-have для современного человека. В нынешней реальности с бешеным темпом жизни, напряженной работой и попыткой найти work-life balance, чтобы выучить язык чаще всего приходится прибегать к помощи репе...

[recovery mode] Как при помощи большого монитора и консольной утилиты WLSDM смотреть за Oracle WebLogic Server На просторах утилит консольных расширений Oracle WebLogic Server встретилась одна очень полезная — WLSDM, как ее позиционируют сами авторы — утилита мониторинга WebLogic Server с большим набором возможностей. Если пойдете на сайт разработчика, увидите, что рядом лежит еще од...

Kabam делится подробностями о лоре грядущей RPG MARVEL Realm of Champions Студия Kabam два месяца назад анонсировала RPG MARVEL Contest of Champions, но пока не торопится ее выпускать, а делится подробностями о лоре. Игрокам предстоит взаимодействовать с фракциями героев вселенной Marvel, которые будут называться «Домами» (Houses). Действие будет...

[Из песочницы] ECS back and forth Привет, Хабр! Представляю вашему вниманию перевод статьи "ECS back and forth — Part 1 — Introduction" автора Michele skypjack Caini. ECS back and forth Часть 1 — Введение. Когда я в первые узнал про архитектурный шаблон entity component system, я пошёл искать больш...

Опыт работы с карт-принтерами, часть 1 Данная статья будет полезна тем, кто начинает работу с карт-принтерами(Evolis Primacy и Smart-51) и кодировкой NFC карт типа Mifare Classic и Mifare DESFire EV2. В первой части мы опишем общее впечатление от работы с карт-принтерами, а также проблемы с которыми нам пришлось ...

CES 2020: Panasonic представила стильные VR-очки с поддержкой разрешения UHD и HDR На выставке CES 2020 компания Panasonic представила собственные очки виртуальной реальности, которые визуально больше напоминают аксессуар в стиле стимпанка — «гогглы». Это первое в мире устройство с поддержкой разрешения UHD и HDR. Возможно, это также первый шаг в сторону ...

Темные уголки iOS Auto renewable Subscriptions Все больше и больше приложений переходят на подписочную систему монетизации. Планируете использовать систему подписок в своем приложении? Тогда вам сюда. Денис Кириллов на Mobius 2019 Moscow рассказал о лучших практиках применения технологии Auto-renewable Subscriptions в...

Массивно-параллельная база данных Greenplum — короткий ликбез Для Hadoop и Greenplum есть возможность получить готовый SaaS. И если Хадуп — известная штука, то Greenplum (он лежит в основе продукта АrenadataDB, про который далее пойдёт речь) — интересная, но уже менее «на слуху». Arenadata DB — это распределённая СУБД на базе опенс...

Здоровье индексов в PostgreSQL глазами Java-разработчика Привет. Меня зовут Ваня, и я Java-разработчик. Так получилось, что я много работаю с PostgreSQL – занимаюсь настройкой БД, оптимизацией структуры, производительностью и немного играю в DBA по выходным. За последнее время я привёл в порядок несколько баз данных в наших микрос...

Самые мощные смартфоны апреля 2020 года — рейтинг AnTuTu Команда бенчмарка обновила список самых производительных смартфонов на китайском рынке. Все модели в списке построены на базе Snapdragon 865. Первое...

Владельцы смартфонов со Snapdragon 865 и 765 смогут обновлять графические драйвера в Google Play В сети появляется все больше подробностей о новых однокристальных системах Snapdragon 865 и 765, которые Qualcomm представила два дня назад. Для этих и всех последующих процессоров появится возможность обновлять графические драйвера. Загружать их можно будет напрямую из Goo...

Параметризованное 3D-моделирование подшипникового стакана в nanoCAD Plus 20 Компания MaxSoft категорически приветствует всех читателей! В этой статье речь пойдет о САПР-платформе nanoCAD, а если конкретнее — о её 3D модуле. Так уж сложилось, что из релиза в релиз, все вертикальные решения на базе платформы nanoCAD, ровно как и сама платформа, обяза...

Хакатон на 200 человек — что нужно для организации Знаете, почему проекты в крупных компаниях делаются по полгода? Потому что один из самых медленных процессов — это общение с заказчиком для выявления деталей его потребностей. Простое уточнение ТЗ (на гвозди или на клей надо крепить) может занимать до трёх месяцев. Я сейча...

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

О том,как я двухголового монстра строил - или как не стоять раком,собирая свой первый 3D принтер Всем привет,с вами студент по имени Тёма.Сегодня я хочу поделиться с вами впечатлениями о сборке и проектировке своего первого 3д принтера (но не последнего).О его разработке я уже писал статейку ТЫЦТакже писал и о своих шишках по заказу металла на этот же принтер(спасибо ко...

Обнаружена «бешеная» звездная система Новая планета, получившая название AU Microscopii b, или AU Mic b для краткости, была обнаружена космическими телескопами Transiting Exoplanet Survey Satellite (TESS) и Spitzer. Открытие позволит ученым лучше понять, как развиваются планеты, как формируется их атмосфера и ка...

Процедура обновления Check Point с R80.20/R80.30 до R80.40 Более двух лет назад мы писали о том, что перед каждым администратором Check Point рано или поздно встает вопрос обновления на новую версию. В данной статье было описано обновление с версии R77.30 до R80.10. К слову, в январе 2020-го стала сертифицированной версией ФСТЭК. а ...

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

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

[Перевод] Keras Functional API в TensorFlow В Keras есть два API для быстрого построения архитектур нейронных сетей Sequential и Functional. Если первый позволяет строить только последовательные архитектуры нейронных сетей, то с помощью Functional API можно задать нейронную сеть в виде произвольного направленного ац...

iPhone SE 2020 быстрее телефонов на Android за те же деньги Тех, кто надеялся приобрести дешёвый iPhone, не уступающего в производительности ни одному из iPhone 11, придется разочаровать. Уступает. Тактовая частота центрального процессора в Apple A13 для iPhone SE 2020 искусственно уменьшена. Из вредности (чтобы SE не конкурировал с...

[Перевод] Почему видеоигры и настольные игры не самый лучший показатель способностей ИИ (интервью с создателем Keras) Определение уровня ИИ это один из самых сложных, но и один из самых важных вопросов в области компьютерных наук. Если вы не можете точно сказать, является ли машина созданная сегодня умнее машины созданной вчера, как тогда определить что вы прогрессируете? Читать дальше →

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