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

Быстрая локализация проблем производительности Microsoft SQL Server в Quest Foglight В прошлой статье об инструменте для мониторинга Foglight for Databases мы рассказывали о возможностях контроля из единого интерфейса SQL Server, Oracle, PostgreSQL, MySQL, SAP ASE, DB2, Cassandra и MongoDB. Сегодня разберём подходы к быстрому выявлению причин нештатной раб...

[Перевод] Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик» Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопрос...

Основы работы с Neo4j в браузере В статье рассматривается как начать работать с графовой СУБД Neo4j, используя Neo4j Browser. Это руководство может быть полезным как дополнение к книге Редмонда и Уилсона "Семь баз данных за семь недель", так как рассматриваемый веб-интерфейс был полностью переработан, а так...

[Из песочницы] Бизнес-логика в базе данных при помощи SchemaKeeper Цель данной статьи — на примере библиотеки schema-keeper показать инструменты, которые позволяют существенно облегчить процесс разработки баз данных в рамках PHP-проектов, использующих СУБД PostgreSQL. Информация из этой статьи, в первую очередь, будет полезна разработ...

Мониторинг производительности запросов PostgreSQL. Часть 1 — репортинг Инженер — в переводе с латыни — вдохновенный. Инженер может всё. (с) Р.Дизель. Эпиграфы. Или история о том, зачем администратору баз данных вспоминать свое программистское прошлое. Предисловие Все имена изменены. Совпадения случайны. Материал представляет собой исключител...

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

Примеры дичи из заказов «приходите спасать» (разбор десятка инцидентов с примерами) Иногда бывает так: — Приезжайте, у нас упало. Если сейчас не поднять — покажут по телевизору. И мы едем. Ночью. На другой край страны. Ситуация, когда не повезло: на графике показан резкий рост нагрузки на СУБД. Очень часто это первое, на что смотрят администраторы систем...

Microsoft SQL Server 2019 и флэш-массивы Dell EMC Unity XT Сегодня мы познакомим вас с особенностями использования SQL Server 2019 с системой хранения Unity XT, а также дадим рекомендации по виртуализации SQL Server с помощью технологии VMware, по настройке и управлению базовыми компонентами инфраструктуры Dell EMC. В 2017 году De...

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

StealthWatch базовые понятия и минимальные требования. Часть 1 Данная статья посвящена довольно новому продукту мониторинга сети Cisco StealthWatch. Основываясь на данных телеметрии вашей инфраструктуры, StealthWatch может выявлять самые разные кибератаки, включая: APTs DDoS атаки нулевого дня наличие ботов в сети кража данных (da...

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

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

5 лайфхаков оптимизации SQL-запросов в Greenplum Любые процессы, связанные с базой, рано или поздно сталкиваются с проблемами производительности запросов к этой базе. Хранилище данных Ростелекома построено на Greenplum, большая часть вычислений (transform) производится sql-запросами, которые запускает (либо генерирует и...

[Из песочницы] Выбор между XML и SQL для накатывания скриптов LiquiBase на примере Java/Spring/H2 В процессе работы над очередным проектом в команде возникли споры по поводу использования формата XML или SQL в Liquibase. Естественно про Liquibase уже написано много статей, но как всегда хочется добавить свои наблюдения. В статье будет представлен маленький туториал по со...

[Перевод] Мониторинг и проверка состояния SSD в Linux И снова здравствуйте. Перевод следующей статьи подготовлен специально для студентов курса «Администратор Linux». Поехали! Что такое S.M.A.R.T.? S.M.A.R.T. (расшифровывается как Self-Monitoring, Analysis, and Reporting Technology) – это технология, вшитая в накопители, та...

[Из песочницы] Настройка GitLab CI для загрузки java проекта в maven central Данная статья рассчитана на java разработчиков, у которых возникла потребность быстро публиковать свои продукты в репозиториях sonatype и/или maven central с использованием GitLab. В данной статье я расскажу про настройку gitlab-runner, gitlab-ci и maven-plugin для решения д...

Интерфейсы для мониторинга производительности популярных БД в Foglight for Databases В прошлых статьях мы рассказывали о мониторинге различных БД в Quest Foglight for Databases и о подходе к быстрой локализации проблем производительности SQL Server. В этой мы покажем какие ещё дашборды можно использовать на основе собираемых метрик. А метрик этих достаточн...

[Перевод] Smem – Отчеты о распределении памяти между процессами и пользователями в Linux И снова здравствуйте. Друзья, хотим поделиться с вами переводом полезного материала о мониторинге использования памяти в Linux. Данный материал подготовлен специально для студентов курса «Администратор Linux». Управление памятью в вопросах мониторинга ее использования – о...

Мониторинг метеоданных в Grafana В этой статье речь пойдет о том, как вывести для мониторинга — нужные показатели системы на графики, при этом не написав ни одной строчки кода. Используемое ПО распространяется свободно кроме сервера БД — это MS SQL сервер, развернутый в облачном сервисе MS Azure, который вы...

Улучшение производительности Zabbix + PostgreSQL при помощи партиционирования и индексирования Примерно год назад передо мной и моими коллегами была поставлена задача разобраться с использованием популярной системы мониторинга сетевой инфраструктуры — Zabbix. После изучения документации мы сразу же перешли к нагрузочному тестированию: хотели оценить с каким количество...

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

[Перевод] Полнофункциональная динамическая трассировка в Linux с использованием eBPF и bpftrace «В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки» — сообщает нам Википедия. Сами будучи поклонниками Linux, мы регулярно сталкиваемся с вопросом, ...

[Из песочницы] Создание REST API с Node.js и базой данных Oracle Привет, Хабр! представляю вашему вниманию перевод статьи «Creating a REST API: Web Server Basics». Часть 1. Создание REST API: основы веб-сервера Веб-сервер является одним из наиболее важных компонентов REST API. В этом посте вы начнете свой проект API REST, создав нескольк...

3. Типовой сценарий внедрения Check Point Maestro В прошлых двух статьях (первая, вторая) мы рассмотрели принцип работы Check Point Maestro, а также технические и экономические преимущества этого решения. Теперь хотелось бы перейти к конкретному примеру и описать возможный сценарий внедрения Check Point Maestro. Я покажу ...

Исследование быстродействия СУБД MS SQL Server Developer 2016 и PostgreSQL 10.5 для 1С Цели и требования к тестированию «1С Бухгалтерии» Основной целью проводимого тестирования является сравнение поведения системы 1С на двух разных СУБД при прочих одинаковых условиях. Т.е. конфигурация баз данных 1С и первоначальная заполненность данными должны быть одинаковым...

Взаимодействие R с базами данных на примере Microsoft SQL Server и других СУБД Поскольку львиная доля бизнес информации храниться в базах данных. На каком бы языке программирования вы не писали, вам придётся производить различные действия с ними. В этой статье я расскажу о двух интерфейса для работы с базами данных в R. Большая часть примеров демонстри...

Как не превратиться в стрекозу, если у вас много разных баз данных На фотографии макрофото глаз стрекозы. Они имеют фасеточное строение и состоят примерно из 30000 шестиугольных фасетов, что позволяет стрекозе смотреть практически на 360 градусов (за исключением направления «прямо назад»). Полезное умение, если ты стрекоза. Когда в орган...

[Перевод] Настройка кластера HA Kubernetes на «голом железе» с GlusterFS & MetalLB. Часть 2/3 Часть 1/3 тут Привет и с возвращением! Это вторая часть статьи о настройке кластера Kubernetes на «голом железе». Ранее мы настраивали НА-кластер Kubernetes с помощью внешнего etcd, схемы «ведущий-ведущий» и балансировки нагрузки. Ну а теперь пришло время настроить дополнит...

[Из песочницы] Получаем Spring Bean из сторонних Application Context правильно Добрый день, хабровчане! В данной статье предлагаю обсудить одну из проблем, с которой нередко сталкиваются в проектах, использующих фреймворк Spring ввиду неверно составленных spring-конфигураций. Не нужно стараться, чтобы такую ошибку допустить, и поэтому данная ошибка яв...

[Перевод] Особенности рендеринга в игре Metro: Exodus c raytracing Предисловие После выхода последней игры из серии «Метро» я потратил несколько часов на изучение её внутренней работы и решил поделиться тем, что может показаться интересным с технологической точки зрения. Я не буду проводить подробный анализ или изучать дизассемблированный ...

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

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

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

ShIoTiny и окружающий мир: аналоговые датчики или АЦП для самых маленьких Основные тезисы или о чем эта статья Продолжение серии статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. Ключевой особенностью данного контроллера является возможность его программирования путем рисования программы в браузере. В данной статье о...

Работа с callbacks в React За время свой работы, я периодически сталкивался с тем, что разработчики не всегда четко представляют, каким образом работает механизм передачи данных через props, в частности колбеков, и почему их PureComponents обновляется так часто. Поэтому в данной статье мы разберемся,...

Сравнение компараторов для синхронизации схем и данных баз данных MS SQL Server Описание общей потребности в синхронизации изменений При работе с базами данных часто приходится решать проблему синхронизации изменений. Если в компании используется всего одна промышленная среда, то в дополнение к ней требуется как минимум еще одна дополнительная среда для...

От ежедневных аварий к стабильности: Informatica 10 глазами админа ETL-компонента хранилища данных часто оказывается в тени самого хранилища и ей уделяется меньше внимания, чем главной базе данных или фронт-компоненте, BI, формировании отчётов. При этом с точки зрения механики наполнения хранилища данными, ETL играет ключевую роль и требу...

[Из песочницы] Процесс компиляции программ на C++ Цель данной статьи: В данной статье я хочу рассказать о том, как происходит компиляция программ, написанных на языке C++, и описать каждый этап компиляции. Я не преследую цель рассказать обо всем подробно в деталях, а только дать общее видение. Также данная статья — это необ...

[Перевод] 5 чрезвычайно простых способов ощутимо повысить скорость вашего VueJS-приложения Здравствуйте. Перевод данной статьи подготовлен специально для студентов курса «Разработчик JavaScript», который стартует уже на следующей неделе. Голос Чуи Немного обо мне — меня зовут Вайбхав, я из Five2One. Я вовлечен во VueJS уже целых 2 года (с момента выхода 1.0) и...

[Перевод] 10 самых распространенных ошибок при работе с платформой Spring. Часть 1 Всем привет. Сегодня делимся первой частью статьи, перевод которой подготовлен специально для студентов курса «Разработчик на Spring Framework». Начнём! Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении...

Управление Raspberry через websockets Raspberry Pi снискали огромную популярность по всему миру. Однако многие из любителей-разработчиков сталкиваются с проблемой доступа к устройству из интернета. Как правило приходится необходимо колдовать с DDNS или докупать статический IP адрес. Оба варианта предполагают нас...

Настройка smart-оборудования Zyxel в автономном и «облачном» режимах О чем статья? 1. Короткий обзор и unboxing smart-коммутатора Zyxel XGS1930-28HP и точки доступа NWA1123-ACv2 2. Описание процесса настройки: в автономном режиме “облачном” режиме с использованием Nebula Control Center (NCC) 3. решение ряда мелких проблем, возникших в ...

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

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

[Из песочницы] Использование SQLite в Unity (Unity + SQLite) Всем привет, данная публикация будет посвящена работе с встраиваемой реляционной базой данных SQLite в Unity. Данная статья написана новичком для новичков с целью показания работы с SQLite, предполагается, что вы знаете основы SQL. Так как в интернете нет ясного тутора для н...

ESP32-CAM Video Streaming Server Подключение I2C и SPI дисплеев ESP-32 CAM модуль с камерой от Diymore ESP32-CAM Video Streaming Server Пример использования находится тут. Предварительно надо установить библиотеки: Esp32 board in Arduino Ide Windows / Esp32 board in Arduino Ide Linux and Mac Подробные настройки есть в статье. В моем...

Zabbix: LLD-мониторинг SIM-карт Yeastar TG Несколько месяцев назад я обзавелся GSM-шлюзом Yeastar TG200. Оборудование само по себе хорошее, чего не сказать о яичном операторе, который периодически подкладывает свинью. Вот поэтому и появилась необходимость иметь актуальную информацию о состоянии SIM-ок и реагировать...

[recovery mode] ShIoTiny: часы без пружины или реальное время и как с ним работать О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этот статье рассказано о часах реального времени в контроллере ShIoTiny, синхронизации времени и использовании узлов работы с часами. Сайт проекта ShIoTiny...

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

[Перевод] Перекрестная репликация между PostgreSQL и MySQL Я в общих чертах расскажу о перекрестной репликации между PostgreSQL и MySQL, а еще о методах настройки перекрестной репликации между этими двумя серверами базы данных. Обычно базы данных в перекрестной репликации называются однородными, и это удобный метод перехода с одног...

[Перевод] Введение в Redis с использованием Spring Boot Перевод статьи подготовлен специально для студентов курса «Разработчик на Spring Framework». В этой статье мы рассмотрим основы использования Redis через Spring Boot с помощью библиотеки Spring Data Redis. Мы создадим приложение, которое демонстрирует, как выполнять CR...

Рекомендации по настройке AFA AccelStor при работе с VMware vSphere В рамках данной статьи хотелось бы рассказать об особенностях работы All Flash массивов AccelStor с одной из популярнейших платформ виртуализации – VMware vSphere. В частности, акцентировать внимание на тех параметрах, которые помогут получить максимальный эффект от использо...

Nextcloud внутри, а снаружи OpenLiteSpeed: настраиваем обратное проксирование Как настроить OpenLiteSpeed на обратное проксирование в Nextcloud, находящийся во внутренней сети? Удивительно, но поиск на Хабре по запросу OpenLiteSpeed не даёт ничего! Спешу исправить эту несправедливость, ведь LSWS – достойный веб-сервер. Я люблю его за скорость и модный...

[Из песочницы] KVM (недо)VDI с одноразовыми виртуальными машинами с помощью bash Кому предназначена данная статья Данная статья может быть интересна системным администраторам, перед которыми вставала задача создать сервис «одноразовых» рабочих мест. Пролог В отдел ИТ сопровождения молодой динамично развивающейся компании с небольшой региональной сетью,...

[Перевод] Храним SSH-ключи безопасно Хочу рассказать как безопасно хранить SSH-ключи на локальной машине, не боясь за то, что какое-то приложение может украсть или расшифровать их. Статья будет полезна тем, кто так и не нашел элегантного решения после паранои в 2018 и продолжает хранить ключи в $HOME/.ssh. Для...

[Из песочницы] Phoenix LiveView: когда вам больше не нужен JavaScript* * для создания динамической страницы Не так давно 12.12.2018 был анонсирован выход новой библиотеки для фанатов phoenix framework под названием Phoenix LiveView. Я бы хотел поделиться с вами впечатлениями от ее использования и phoenix в целом, а в следующей статье попробова...

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

[Из песочницы] Отказоустойчивый DHCP сервер на базе Kea Статья-инструкция по установке и базовой настройке отказоустойчивого сервера Kea DHCP Kea DHCP – это open-source DHCP сервер, разрабатываемый Internet Systems Consortium(ISC) с поддержкой DHCPv4 и DHCPv6. ISC – это те же ребята, которые разрабатывают наши любимые bind и ...

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

«Удаление» объектов в Django Рано или поздно перед разработчиками встаёт задача удаления ненужных данных. И чем сложнее сервис, тем больше нюансов необходимо учесть. В данной статье я расскажу, как мы реализовали «удаление» в базе данных с сотней связей. Читать дальше →

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

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

Гиперконвергентное решение AERODISK vAIR. Основа — файловая система ARDFS Привет, читатели Хабра. Этой статьей мы открываем цикл, который будет рассказывать о разработанной нами гиперконвергентной системе AERODISK vAIR. Изначально мы хотели первой же статьей рассказать всё обо всём, но система довольно сложная, поэтому будем есть слона по частям....

[Перевод] Аналитика логов Nginx с помощью Amazon Athena и Cube.js Обычно для мониторинга и анализа работы Nginx используют коммерческие продукты или готовые open-source альтернативы, такие как Prometheus + Grafana. Это хороший вариант для мониторинга или real-time аналитики, но не слишком удобный для исторического анализа. На любом популяр...

DSC и напильник: часть 1. Настройка DSC Pull Server для работы с базой данных SQL PowerShell Desired State Configuration (DSC) сильно упрощает работу по развертыванию и конфигурированию операционной системы, ролей сервера и приложений, когда у вас сотни серверов. Но при использовании DSC on-premises, т.е. не в MS Azure, возникает пара нюансов. Они осо...

[Перевод] Извлечение данных при машинном обучении Хотите узнать о трех методах получения данных для своего следующего проекта по ML? Тогда читайте перевод статьи Rebecca Vickery, опубликованной в блоге Towards Data Science на сайте Medium! Она будет интересна начинающим специалистам. Получение качественных данных — это пе...

[Из песочницы] Краткое введение в рекурсию. JavaScript Перевод: Привет, Хабр! Представляю вашему вниманию перевод статьи "A Quick Intro to Recursion in Javascript" Yazeed Bzadough. Примечание. Рекурсия не единожды обсуждалась на хабре, но данная статья даёт базовое понимание рекурсии. Это будет полезно начинающим разр...

[Из песочницы] Как определить индексированные журналы ISI, Scopus или Scimago? Когда вы хотите представить свою исследовательскую статью в журнале. Вы должны выбрать целевой журнал для своей области исследования, а также журнал должен быть проиндексирован в любой из основных баз данных индексации, таких как ISI, Scopus, SCI, SCI-E или ESCI. Но определи...

Создание бэкенд приложения для онлайн чата Apollo, Node.js Некоторое время назад я работал над мобильным приложением, функционал которого включал в себя удобный онлайн-чат. И теперь я решил написать статью с краткой инструкцией, как создать чат, используя apollo server и node.js на бэкенде, а так же react native и apollo client на к...

Как мы мигрировали базу данных из Redis и Riak KV в PostgreSQL. Часть 1: процесс Это первая часть статьи, в которой я расскажу о том, как мы построили процесс работы над большим проектом по миграции БД: про безопасные эксперименты, командное планирование и кросс-командное взаимодействие. В следующих статьях подробней расскажу про технические проблемы, ко...

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

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

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

Упрощенный доступ к данным внутренней FAT12 для STM32 В предыдущей статье был рассмотрен вариант использования микроконтроллера STM32F103C8T6 как flash накопителя с внутренней файловой системой FAT12. Теперь можно рассмотреть, каким образом получить данные из нашей внутренней файловой системы. К примеру нам необходимо хранить н...

Univention Corporate Server (UCS) — установка простого и удобного LDAP сервера с web-панелью и его связка с Nextcloud Рано или поздно на любом маленьком или среднем предприятии возникает задача по созданию единого центра авторизации пользователей в многочисленных сервисах и порталах компании. Среди кандидатов на такой центр авторизации сразу приходит в голову Microsoft Active Directory ил...

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

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

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

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его ...

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

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

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

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

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

pg_stat_statements + pg_stat_activity + loq_query = pg_ash? В качестве короткого дополнения к статье Попытка создать аналог ASH для PostgreSQL. Задача Необходимо связать историю представлений pg_stat_statemenets, pg_stat_activity. В результате, используя историю планов выполнения из сервисной таблицы log_query, можно получить очень ...

[Перевод] Создаем конвейер потоковой обработки данных. Часть 2 Всем привет. Делимся переводом заключительной части статьи, подготовленной специально для студентов курса «Data Engineer». С первой частью можно ознакомиться тут. Apache Beam и DataFlow для конвейеров реального времени Настройка Google Cloud Примечание: Для запуска конве...

Кластерное хранилище для небольших web-кластеров на базе drbd+ocfs2 О чем мы расскажем: Как быстро развернуть общее хранилище для двух серверов на базе решений drbd+ocfs2. Для кого это будет полезно: Туториал станет полезен системным администраторам и всем, кто выбирает способ реализации хранилища или хотят попробовать решение. От каких р...

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

PHP: изменение стуктуры БД в командной разработке В мире PHP хорошо известны инструменты миграций структуры БД — Doctrine, Phinx от CakePHP, от Laravel, от Yii — это то первое, что пришло в голову. Наверняка, есть еще с десяток. И большинство из них работают с миграциями — командами для внесения инкрементных изменений в с...

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

Наша служба и опасна, и трудна, или Zyxel ATP500 Введение Мы писали, мы писали, наши пальчики устали. Почему мы вдруг решили начать с этого детского двустишия? Всё очень просто. В данной статье мы хотели познакомить читателей с возможностями нашего самого современного решения по обеспечению сетевой безопасности – линейкой ...

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

[Из песочницы] Parse & Android: рекомендации начинающим разработчикам Аннотация В данной статье я бы хотел поделиться общими впечатлениями от использования BaaS – решения под названием Parse для разработки бэкэнда Android-приложения, рассказать о всех «подводных камнях», с которыми мне пришлось столкнуться в период разработки. Впервые эту плат...

Умный сервис кэша на базе ZeroMQ и Tarantool Руслан Ароматов, главный разработчик, МКБ Привет, Хабр! Я работаю бэкенд-разработчиком в Московском кредитном банке, и за время работы у меня накопился некоторый опыт, которым я хотел бы поделиться с сообществом. Сегодня я расскажу, как мы писали свой собственный сервис к...

Как сократить расходы на базы данных в 2 раза (вебинар) Руководите или отвечаете за работу ИТ-подразделения компании? Устали от регулярных потерь производительности, инцидентов и вливаний бюджетов в инфраструктуру баз данных? 27 ноября (среда) в 12:00 по Мск пройдет открытый вебинар Виталия Саве...

Корм для Битрикс-попугаев. Тестируем производительность, подбираем железо Всем нужны Битрикс-попугаи, и побольше. Я работаю администратором в хостинг-компании и постоянно сталкиваюсь с такими запросами. Давайте покончим с этим раз и навсегда — в этой статье вы найдёте ответ, как железо влияет на производительность CMS Битрикс (реальную и «попуга...

[Из песочницы] Логирование всех запросов к Базе данных в Asp.Net Boilerplate 4.3 .Net Core 2.1 Часто в проекте возникает непонятная ошибка для которой необходимо максимальное логирование всех запросов к Базе данных. Статья поможет тем, кто пишет (развертывает на сервере) один из своих первых проектов на Asp.Net Boilerplate. Читать дальше →

Энергия, тепло и вода: часть вторая Рассмотрим следующий этап развития схемы умного дома из подручных средств :) (продолжение, первая статья тут). Решаемые задачи: Защита от протечек + Удалённое управление + Знать состояние ввода воды (перекрыто или открыто) Знать давление и температуру теплоносителя в кон...

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

Как убедить всех, что у тебя защищённый ЦОД? Преамбула. Статья носит исключительно информационный характер. Предназначена для потенциальных клиентов ЦОД, которые слышали про 152-ФЗ, 149-ФЗ, хотят потратить бюджетные средства и не знают, что такие схемы бывают. Для удобства восприятия материала автор будет излагать схем...

[recovery mode] Poor man's monitoring или мониторим сервера из консоли Всех приветствую уважаемые читатели. В данной статье я расскажу Вам о моём «велосипеде», на котором я делаю мониторинг разных вещей не выходя из консоли. Столкнулся я как-то раз с ситуацией, когда расплодилось довольно много разных проектов и серверов, а настроить нормальны...

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

WAL в PostgreSQL: 4. Настройка журнала Итак, мы познакомились с устройством буферного кеша и на его примере поняли, что когда при сбое пропадает содержимое оперативной памяти, для восстановления необходим журнал предзаписи. Размер необходимых файлов журнала и время восстановления ограничены благодаря периодически...

[Из песочницы] Android preferences delegate В данной статье разобран пример создания делегата для SharedPreferences, который уменьшает boilerplate и делает использование SharedPrefernces более удобным. Те кто хочет посмотреть результат, может перейти к готовому решению, остальным добро пожаловать под кат. Читать дальш...

[Из песочницы] Настройка IPTV от Ростелеком на роутерах MikroTik В свое время когда я купил роутер MikroTik, передо мной кроме базовой настройки инета встала задача обеспечить работу IPTV, до того момента у меня был установленный Ростелекомом D-link. Сама базовая настройка инета на микротике заняла у меня примерно 10 минут, а вот с IPTV п...

Performance tuning and troubleshooting баз данных в наши дни К сожалению, сейчас роль специалистов по Performance tuning и troubleshooting баз данных урезается только до последнего — troubleshooting'a: практически всегда к специалистам обращаются, только когда проблемы уже достигли критической точки, и их нужно решить «еще вчера». Да ...

Еще один способ оптимизации docker-образов для Java приложений История по оптимизации образов для java приложений началась с выхода статьи в блоге спринга — Spring Boot in a Container. В ней обсуждались различные аспекты по созданию docker образов для spring boot приложений, в том числе и такой интересный вопрос, как уменьшение размеров...

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

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

Восхождение на Эльбрус — Разведка боем. Техническая Часть 1. Регистры, стеки и другие технические детали Как и обещали, продолжаем рассказывать про освоение процессоров Эльбрус. Данная статья является технической. Информация, приведенная в статье, не является официальной документацией, ведь получена она при исследовании Эльбруса во многом как черного ящика. Но будет безусловно ...

[Перевод] Анализ TSDB в Prometheus 2 База данных временных рядов (TSDB, time series database) в Prometheus 2 – это отличный пример инженерного решения, которое предлагает серьёзные улучшения в сравнении с хранилищем v2 в Prometheus 1 в плане скорости накопления данных и выполнения запросов, эффективности испо...

Как мы тестировали несколько баз данных временных рядов За последние несколько лет базы данных временных рядов (Time-series databases) превратились из диковинной штуки (узкоспециализированно применяющейся либо в открытых системах мониторинга (и привязанной к конкретным решениям), либо в Big Data проектах) в «товар народного пот...

Управление обдувом радиатора экструдера TEVO Black Widow Сегодня я расскажу про то, каким способом и куда можно подключить вентилятор обдува радиатора, а заодно отвечу на такие вопросыКуда подключать вентилятор обдува радиатора?Он всегда должен работать?Как-то можно снизить его шум?На какой вентилятор его можно заменить?Также в ст...

[Из песочницы] Система контроля библиотеки на Flask-Potion, Часть 0: готовим всё, что понадобится Введение В своей работе я уже некоторое время использую Flask-Potion — фреймворк, основными достоинствами которого являются: весьма удобная интеграция с SQLAlchemy моделями, автогенерация crud-эндпоинтов, наличие клиента potion-client (весьма удобного, если пишешь API сервис...

Ускорение запуска Julia при помощи PackageCompiler.jl Зайдя на официальный сайт языка программирования Julia, можно увидеть утверждение: "Julia is fast!". Однако, новые пользователи на практике сталкиваются с проблемой медленной загрузки модулей, в особенности графических [1,2]. Диалектически, причиной медленного запуска являет...

Топ ошибок со стороны разработки при работе с PostgreSQL HighLoad++ существует давно, и про работу с PostgreSQL мы говорим регулярно. Но у разработчиков все равно из месяца в месяц, из года в год возникают одни и те же проблемы. Когда в маленьких компаниях без DBA в штате случаются ошибки в работе с базами данных, в этом нет ничег...

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

[Перевод] 10 принципов объектно-ориентированного программирования, о которых должен знать каждый разработчик Мне довольно часто встречаются разработчики, которые не слышали о принципах SOLID (мы подробно рассказывали о них здесь. — Пер.) или объектно-ориентированного программирования (ООП), или слышали, но не используют их на практике. В этой статье описываются преимущества прин...

Что такое Wi-Fi Direct и как его использовать на смартфоне под управлением Android Список функций наших Android-смартфонов довольно обширен, и некоторые из них могут запросто остаться незамеченными. Между тем они могут оказаться весьма и весьма полезными. Например, на практически каждом смартфоне имеется функция Wi-Fi Direct. Пару лет назад она наделала н...

Зависимость производительности кода от контекста объявления переменных в JavaScript Изначально эта статья задумывалась как небольшой бенчмарк для собственного использования, да и вообще статьёй быть не планировалась, однако, в процессе проведения замеров всплыли некоторые интересные особенности в реализации архитектуры JavaScript, сильно влияющие на произв...

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

В SecurOS 10.3 появился инструмент администрирования систем на базе SecurOS Cluster Начиная с релиза 10.3 администраторам SecurOS доступно специальное приложение, предназначенное для настройки и мониторинга конфигураций под управлением SecurOS Cluster, а также классических конфигураций SecurOS (без кластеризации). Server ...

Что вам нужно знать о Firebase: 9 советов Полезные советы, основанные на личном опыте использования Firebase и его базы данных, были опубликованы в блоге Lemberg Solutions. Firebase – это облачный сервис, сочетающий в себе множество функций: аутентификацию, базу данных в реальном времени, хранение файлов, уведомлени...

Netramesh – легковесное service mesh решение В процессе перехода от монолитного приложения к микросервисной архитектуре мы сталкиваемся с новыми проблемами. В монолитном приложении обычно достаточно просто определить, в какой части системы произошла ошибка. Скорее всего, проблема в коде самого монолита, либо в базе дан...

MU-MIMO: один из алгоритмов реализации Предисловие В качестве дополнения к моей недавней статье хотелось бы также поговорить о теме MU (Multi User) MIMO. Есть у мною уже упомянутого профессора Хаардта одна очень известная статья, где он вместе со своими коллегами предлагает алгоритм разделения пользователей по ни...

[Из песочницы] Создание системы расширения на библиотеке Qt Плагины(Расширения) Расширения это совместно используемая динамическая библиотека предназначения для загрузки в процессе исполнения основного приложения, которая обязательно должна реализовывать хотя бы один специальный интерфейс. Расширения делятся на два типа: Для Qt Дл...

Пишем под FPGA без HDL. Сравнение высокоуровневых средств разработки В последнее время производители FPGA и сторонние компании активно развивают методы разработки для FPGA, отличающиеся от привычных подходов использованием высокоуровневых средств разработки. Являясь FPGA-разработчиком, в качестве основного инструмента я использую язык описа...

Про установку и использование LineageOS 16, F-Droid Предлагаю вашему вниманию инструкцию как оптимально(по моему мнению) перейти на свободное программное обеспечение при использовании смартфона на примере операционной системы LineageOS(далее сокращённо LOS) и приложений из F-Droid. Я думаю, что это статья будет вам интересна,...

Резервное копирование, часть 6: Сравнение средств резервного копирования В данной статье будет проведено сравнение средств резервного копирования, но сначала стоит узнать, как они быстро и хорошо справляются с восстановлением данных из резервных копий. Для простоты сравнения будет рассматриваться восстановление из полной резервной копии, тем бол...

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

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

[Из песочницы] Система мониторинга автотранспорта своими руками В данной статье хочу затронуть тему о том, как собрать систему для контроля местонахождения автомобиля с минимальными затратами. В качестве главного контроллера будем использовать микроконтроллер Orange pi Zero. Стоимость данного устройства на Aliexpress от 9 USD. Читать...

PHP Composer: фиксим зависимости без боли Многие из вас наверняка сталкивались с ситуацией, когда в библиотеке или фреймворке, который вы используете, есть баг или нет необходимой функциональности. Предположим, вы даже не поленились и сформировали pull request. Но примут его далеко не сразу, а следующий релиз продук...

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

Разворачиваем среду для работы с микросервисами. Часть 1 установка Kubernetes HA на bare metal Здравствуйте уважаемые читатели Хабра! Этой публикацией я хочу начать цикл статей про развертывание полноценной среды оркестрации контейнерами Kubernetes, которая будет готова к эксплуатации и запуску приложений. Я хочу рассказать не просто про то, как развернуть кластер Ku...

Мониторинг сообщений в RabbitMQ Рассмотрим классическую схему построения конвейера сообщений в RabbitMQ состоящую из элементов Producer, Exchange, Queue и Consumer. Задача состоит в том, что бы организовать мониторинг происходящего в очереди и не затронуть основное программное обеспечение (ПО), добавить...

[Перевод] Замена EAV на JSONB в PostgreSQL TL; DR: JSONB может значительно упростить разработку схемы БД без ущерба производительности в запросах. Введение Приведем классический пример, наверное, одного из старейших вариантов использования в мире реляционных БД (база данных): у нас есть сущность, и необходимо сохрани...

Наш опыт создания API Gateway Некоторые компании, в том числе наш заказчик, развивают продукт через партнерскую сеть. Например, крупные интернет-магазины интегрированы со службой доставки — вы заказываете товар и вскоре получаете трекинговый номер посылки. Другой пример — вместе с авиабилетом вы покупает...

[Из песочницы] UICollectionView всему голова: Изменение представления на лету Привет, Хабр! Представляю вашему вниманию перевод статьи "UICollectionView Tutorial: Changing presentation on the fly". В данной статье мы рассмотрим использование различный способов отображение элементов, а также их переиспользование и динамическое изменение. Зде...

Структура DNS пакета Предисловие Решил как то написать снифер DNS, так сказать just for fun. Просто посмотреть какие адреса в моей системе резолвятся. Протокол старый, документации должно быть много. Много. Но все статьи очень не полные и заканчиваются, на самом интересном моменте. Да, есть rf...

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

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

[Перевод] Преимущества и недостатки HugePages Перевод статьи подготовлен для студентов курса «Администратор Linux». Ранее я рассказал о том, как проверить и включить использование Hugepages в Linux. Эта статья будет полезна, только если у вас действительно есть, где использовать Hugepages. Я встречал множество людей, ...

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

[Перевод] Лямбды: от C++11 до C++20. Часть 1 Добрый день, друзья. Сегодня мы подготовили для вас перевод первой части статьи «Лямбды: от C++11 до C++20». Публикация данного материала приурочена к запуску курса «Разработчик C++», который стартует уже завтра. Лямбда-выражения являются одним из наиболее мощных дополнений...

Битва Титанов: сравнение Titan V и Titan RTX при трассировке лучей Видеокарта NVIDIA Titan V вполне способна работать с трассировкой лучей в реальном времени в играх, хотя и не обладает предназначенными для этого RT-ядрами. Это выяснил один из пользователей ресурса 3DCenter с псевдонимом TobiWahnKenobi, который также сравнил произв...

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

OData сервис без написания кода Одним из наиболее важных аспектов разработки программного обеспечения является быстрое создание прототипов. Для большинства служб необходимы по крайней мере некоторые операции CRUD, и большинство приложений можно описать как приложения, управляемые данными. API, которые я п...

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

[Перевод] Полное руководство по Prometheus в 2019 году DevOps- и SRE-инженеры уже, наверное, не раз слышали о Prometheus. Prometheus был создан на SoundCloud в 2012 году и с тех пор стал стандартом для мониторинга систем. У него полностью открытый исходный код, он предоставляет десятки разных экспортеров, с помощью которых можн...

МегаСлёрм для инженеров и архитекторов Kubernetes Через 2 недели стартуют интенсивы по Kubernetes: Слёрм-4 для тех, кто знакомится с k8s и МегаСлёрм для инженеров и архитекторов k8s. На Слёрм-4 остались последние 10 мест в зале. Желающих освоить k8s на базовом уровне хватает. Для Ops, который знакомится с Kubernetes, запу...

[Перевод] Reflective Shadow Maps: Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «Reflective Shadow Maps» автора Eric Polman. Reflective Shadow Maps (RSM) (отражающие карты теней) ― это алгоритм, расширяющий “простые” shadow map. Алгоритм учитывает свет, рассеянный после первого попадания на пов...

[Из песочницы] Переносим проект с Swift 4.2 на Swift 5.0 Привет, Хабр! Представляю вашему вниманию перевод статьи «Swift 5.0: How to migrate your project and frameworks» автора Antoine Van Der Lee. Swift 5.0 был выпущен в марте 2019 года и является первым стабильным выпуском ABI Swift. Несмотря на то, что многие ресурсы освещают ...

[Перевод] 5 важных и упущенных навыков, необходимых лучшему разработчику Предисловие Вы видели эти статьи тысячу раз: «10 вещей, которые нужно создать чтобы стать лучшим разработчиком.» «Лучшие фреймворки для изучения в 2019.» «Сделайте это чтобы стать разработчиком Rockstar.» «Прочитайте эти десять технических книг, и Вы станете успешным раз...

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

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

Универсальная PRTG. Мониторим процессор, камеры видеонаблюдения и Active Directory Продолжаем серию материалов о простой и гибкой системе мониторинга PRTG. В прошлый раз речь шла о возможностях PRTG в целом. На этот раз остановимся на создании сенсоров. В базе PRTG — 200 готовых сенсоров и 100 шаблонов для создания новых. В этой статье расскажем, как работ...

Запускаем OpenVPN в Докере за 2 секунды Привет, хабровчане! Сталкивались ли вы когда-либо с ситуацией, когда очень хотелось бы виртуально перенестись в другой город, страну или на другой континет? У меня такая необходимость возникает достаточно часто, поэтому возможность иметь свой VPN сервер, который можно запуст...

Edition-Based Redefinition. Часть 2 Привет! Как и обещала в предыдущем посте про Edition-Based Redefinition — вот вторая часть. Итак, с чем мы работаем? Наш основной production сервер — это Oracle 12С, Enterprise Edition. И, что важно отметить, на нем работает несколько десятков приложений одновременно. Поч...

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

[Из песочницы] Распознавание цифровых схем. Асинхронный счётный триггер Борис Цирлин и Александр Кушнеров 30.10.2019 Для опытного разработчика схем не составляет большого труда узнать знакомую схему, в каком бы виде она не была нарисована. В этой статье мы покажем, что две транзисторные схемы из патентов являются вариантом асинхронного счётного ...

Предлагаемые изменения в Chromium нарушат работу uBlock Origin Разработчик uBlock Origin заявил, что его расширение для блокировки рекламы не сможет работать, если будут приняты изменения в Chromium. Речь идёт о внедрении declarativeNetRequest API, которые лишают возможности использовать webRequest API. Google считает, что изменения нео...

С чего начать разработку архитектуры? Примечание: Если вы считаете, что на построении архитектуры съели хотя бы полпёсика, то эта статья не для вас. Модель — абстрактное представление реальности в какой-либо форме. Предполагаем, что архитектор уже закончил со сбором требований к будущей системе и их анализом. ...

Хитрости в Machine Learning — работа с несколькими моделями в Keras Это моя первая статья по теме Машинное обучение. С недавнего времени я профессионально занимаюсь машинным обучением и компьютерным зрением. В этой и будущих статьях я буду делиться наблюдениями и решениями специфических проблем при использовании TensorFlow и Keras. В этой ст...

[Из песочницы] Синтез как один из методов улучшения производительности PostgreSQL Философское вступление Как известно, существует всего два метода для решения задач: Метод анализа или метод дедукции, или от общего к частному. Метод синтеза или метод индукции, или от частного к общему. Для решения проблемы “улучшить производительность базы данных” это...

Новый квадрант Gartner по решениям для мониторинга приложений (APM) Встречайте новый квадрант Gartner — Magic Quadrant for Application Performance Monitoring 2019. В этом году отчёт вышел 14 марта. Gartner пророчит четырехкратный рост рынка APM-мониторинга в связи с цифровизацией бизнес-процессов и охват в 20% всех бизнес приложений в срок ...

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

В AMD считают, что PlayStation нового поколения предложит нечто особенное В прошлом месяце компания Sony раскрыла первые подробности о своей будущей консоли PlayStation 5, что вызвало массу обсуждений, причём не только среди рядовых пользователей. Например, несколько слов о новинке сказала на днях и Лиза Су (Lisa Su), президент и генеральный дирек...

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

Мониторинг мёртв? — Да здравствует мониторинг Наша компания с 2008 года занимается преимущественно управлением инфраструктурами и круглосуточной технической поддержкой веб-проектов: у нас более 400 клиентов, это порядка 15% электронной коммерции России. Соответственно, на поддержке очень разнообразная архитектура. Ес...

[Из песочницы] Windows service. Поиск системных ошибок и отображение их в WinForm C# В этой статье мы разберем как с нуля создать приложение, которое будет работать со службами windows и отображать системные ошибки в WinForm (C#). План этой статьи: Создание службы Event Viewer Код службы Проверка работы службы(Запуск службы вручную) Отображение WinForm ...

Межпозвоночная грыжа? Работай над ней Внимание! Данная статья не призывает к самолечению! Не является рекламной. Люди уникальны, единой схемы для всех нет. Статья будет иметь более мотивационный окрас, нежели россыпь медицинских терминов. Тем не менее, я считаю ей место быть, как реальной истории перехода от о...

Использование DiagnosticSource в .NET Core: теория DiagnosticSource — это простой, но весьма полезный набор API (доступен в NuGet пакете System.Diagnostics.DiagnosticSource), который, с одной стороны, позволяет различным библиотекам отправлять именованные события о своей работе, а с другой — позволяет приложениям подписывать...

Поиск данных и объектов в базе данных MS SQL Server с помощью бесплатной утилиты dbForge Search Описание общей потребности в поиске данных и объектов в базе данных Поиск данных, а также хранимых процедур, таблиц и других объектов в базе данных является достаточно актуальным вопросом в том числе и для C#-разработчиков, а также и для .NET-разработки в целом. Достаточно ...

Ищем работу за границей: 7 простых советов для разработчиков Ищете работу за границей? Будучи в сфере IT-рекрутинга уже более 10 лет, я часто даю разработчикам советы о том, как быстро найти работу за рубежом. В этой статье приведены самые распространенные из них. Читать дальше →

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

[Из песочницы] Создание Redux-подобного глобального хранилища, используя React Hooks Привет, Хабр! Представляю вашему вниманию перевод статьи "Build a Redux-like Global Store Using React Hooks" автора Ramsay. Давайте представим, что я написал интересное предисловие к этой статье и теперь мы сразу можем перейти к по-настоящему интересным вещам. Если...

[Из песочницы] Что происходит с интернетом «ТЕЛЕ-2» Привет всем, хабровчане! Собственно, к написанию этой статьи меня подтолкнули часто срабатывающие триггеры системы мониторинга Zabbix на падение скорости в сети «ТЕЛЕ-2». На удаленных объектах, к которым невозможно провести оптику, организован проброс портов регистратора че...

Получение статистики по всем клиентам из API Яндекс Директ в разрезе дней с помощью Python В работе часто использую короткую статистику в разрезе дней чтобы отслеживать отклонения трафика. Более подробно о написании запросов написал в статье « Получение рекламных кампаний Яндекс Директ с помощью API в DataFrame (Python)». В данной статье я в большей степени рас...

Экзамены по Azure На мероприятии в сентябре 2018 было анонсировано, что появились новые экзамены серии AZ-***, а серия 70-53* уйдет в небытие. Описание уже было тут, но эта статья про все изменения, а мне бы хотелось сделать обзор только Azure. Кроме того, в декабре 2018 года были дополнитель...

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

[Перевод - recovery mode ] Руководство по SQL: Как лучше писать запросы (Часть 2) Продолжение статьи Руководство по SQL: Как лучше писать запросы (Часть 1) От запроса к планам выполнения Зная, что антипаттерны не статичны и эволюционируют по мере того, как вы растете как разработчик SQL, и тот факт, что есть много, что нужно учитывать, когда вы задумыва...

Вопросы для собеседования — от кандидата к работодателю Все мы привыкли к тому, что на собеседованиях задают много вопросов. Обычно — работодатели кандидатам. Один из таких вопросов — “а у вас есть вопросы к нам?”. Довольно часто кандидаты не готовы к этому. И зря. Задавать вопросы работодателю — это совершенно нормально и даже н...

[Перевод] Компьютер на базе вентилей NOR: внутри бортового управляющего компьютера «Аполлона» Недавно мы занимались восстановлением бортового управляющего компьютера «Аполлона» – компьютера, занимавшегося управлением, навигацией и контролем на борту миссий «Аполлон», летавших к Луне. Этот исторический компьютер одним из первых начал использовать интегральные схемы (И...

Осторожно — ГАЗ! или Как мы делали негазированные смарт-контракты Блокчейн и смарт-контракты все еще остаются горячей темой среди разработчиков и технических специалистов, много исследований и рассуждений об их будущем и о том, куда это все движется и приведет нас. У нас в Waves Platform свой взгляд на то, какими должны быть смарт-контрак...

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

Отладка cети с помощью eBPF (RHEL 8 Beta) Всех с прошедшими праздниками! Нашу первую статью после праздников мы решили посвятить линуксу, то есть под наш замечательный курс «Администратор Linux», который у нас входит в когорту самых динамичных курсов, то есть с наиболее актуальным материалами и практиками. Ну и, со...

Краш-тесты СХД AERODISK ENGINE N2, проверка на прочность Всем привет! Этой статьей компания AERODISK открывает блог на Хабре. Ура, товарищи! В предыдущих статьях на Хабре были рассмотрены вопросы об архитектуре и базовой настройке СХД. В этой статье мы рассмотрим вопрос, который ранее не был освещен, но его часто задавали – об от...

Архитектура нейронной сети для реализации алгоритма RL с возможностью задания одновременно выполняющихся действий Одна из классических схем нейронной сети для реализации алгоритма RL выглядит следующим образом: Где: inputs – входы в нейронную сеть; FC – (fully connected) архитектура скрытых слоев или CNN — FC – архитектура архитектура скрытых слоев (в зависимости о того, что подается ...

[Из песочницы] Машинное обучение в IT-мониторинге Введение Netcracker – это международная компания, разработчик комплексных IT-решений, включающих услуги по размещению и поддержке клиентского оборудования, а также хостингу созданной IT-системы для телеком-операторов. В основном это решения, связанные с организацией операц...

Magento 2: импорт продуктов из внешних источников Magento является e-commerce решением, т.е. больше нацелено на продажу продуктов, чем на сопутствующий продажам складской, логистический или финансовый учёт. Для сопутствующего лучше подходят другие приложения (например, ERP-системы). Поэтому достаточно часто в практике испол...

[Из песочницы] Consumer Driven Contracts или Gitlab CI глазами QA test automation Цели данной публикации: Краткое введение в Consumer Driven Contracts (CDC) Настройка CI pipeline на основе CDC Consumer Driven Contracts В этой части мы пройдемся по основным моментам CDC. Данная статья не является исчерпывающей на тему контрактного тестирования. Существуе...

Мы два года развивали свою систему мониторинга. Кликай, чтобы… Всем привет! Я уже рассказывал в этом блоге об организации модульной системы мониторинга для микросервичной архитектуры и о переходе с Graphite+Whisper на Graphite+ClickHouse для хранения метрик в условиях высоких нагрузок. После чего мой коллега Сергей Носков писал о самом ...

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

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

[Из песочницы] JavaScript: Создание простого MEVN-приложения О чем статья Цель этой статьи — показать, как можно создать базовое MEVN-приложение. Акроним MEVN означает — MongoDB + Express.js + Vue.js + Node.js. В качестве примера будет написано одностраничное приложение, которое содержит форму, состоящую из нескольких текстовых полей....

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

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

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

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

Как подружить Progress OpenEdge и СУБД Oracle С 1999 года для обслуживания бэк-офиса в нашем банке используется интегрированная банковская система БИСКВИТ на платформе Progress OpenEdge, которая достаточно широко используется во всем мире, в том числе и в финансовом секторе. Производительность данной СУБД позволяет чита...

[Из песочницы] Настройка VSCode для работы с Scala Статья рассчитана на новичков в программировании на Scala, каким я сам и являюсь, и просто на желающих начать писать программный код в VSCode. Так получилось, что единственным гайдом по теме работы со Scalой в Visial Studio Сode оказалось это видео на ютуб-канале DevInside...

[Из песочницы] Построение сервис-ориентированной архитектуры на Rails + Kafka Привет, Хабр! Представляю вашему вниманию пост, который является текстовой адаптацией выступления Stella Cotton на RailsConf 2018 и переводом статьи «Building a Service-oriented Architecture with Rails and Kafka» автора Stella Cotton. В последнее время отчетливо виден перех...

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

Мониторинг окружающей среды в серверном помещении (Bolid + Zabbix) Наверное самым простым способом для ИТ-специалиста при решении задачи мониторинга окружающей среды в серверном помещении будет использование специализированных контроллеров с выдачей данных по SNMP (например, NetBotz или NetPing). Но для тех кто не боится трудностей и хочет ...

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

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

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

10 бесплатных утилит ApexSQL для управления базами данных Microsoft SQL Server Привет, Хабр! Мы много работаем с Quest Software, и в этом году они приобрели ApexSQL — производителя решений для управления и мониторинга баз данных Microsoft SQL Server. В России об этих ребятах, как нам кажется, знают мало. На главной своего сайта они пишут «Killer tool...

Установка и настройка Sonata Admin на Symfony 4 Приветствую всех. В данной статье поговорим об Symfony 4 и Sonata Admin. В процессе установки я столкнулся с массой неточностей в документации и сама документация была раскидана по нескольким местам. Здесь я рассмотрю весь процесс, начиная от создания проекта и заканчивая а...

[Перевод] Эффекты фильтрации SVG. Часть 4. Двухцветные изображения при помощи feComponentTransfer Эта четвертая статья серии об SVG-фильтрах, в которой Sara Soueidan покажет вам, как использовать feComponentTransfer для создания эффекта двухтонового фильтра. Предлагаемая серия статей "Эффекты фильтрации SVG" Sara Soueidan, внештатного разработчика UI/UX интерфейса и авт...

Последние изменения в IO-стеке Linux с точки зрения DBA Главные вопросы работы с базой данных связаны с особенностями устройства операционной системы, на которой работает база. Сейчас Linux — основная операционная система для баз данных. Solaris, Microsoft и даже HPUX все еще применяются в энтерпрайзе, но первое место им больше н...

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

Вейвлет-анализ.Часть 3 Введение При проведении CWT анализа средствами библиотеки PyWavelets (бесплатное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT) возникают проблемы с визуализацией результата. Предложенная разработчиками тестовая программа по визуализации прив...

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

[Из песочницы] Операционные vs аналитические базы: колоночное vs построчное хранение данных Базы данных можно реализовать с помощью Excel, GSheet или при помощи больших ORM систем. В своей практике бизнес-аналитика я сталкивался с разными решениями. А поскольку в бизнес-анализ я пришёл из финансов и аудита, то каждый раз встречая новую систему задавался вопросами —...

Установка FPV и телеметрии на квадрокоптер Данная статья является продолжением статьи «Квадрокоптер на MultiWii SE v2.5 — от задумки до первого полёта», в ней я поделюсь с Вами своим опытом установки и настройки FPV оборудования на квадрокоптер для полётов от первого лица. Заинтересовавшихся прошу под кат. Читать ...

Разбираемся с Machine Learning в Elastic Stack (он же Elasticsearch, он же ELK) Напомним, что в основе Elastic Stack лежат нереляционная база данных Elasticsearch, веб-интерфейс Kibana и сборщики-обработчики данных (самый известный Logstash, различные Beats, APM и другие). Одно из приятных дополнений всего перечисленного стека продуктов — анализ данны...

[Перевод] Почему инженеры не заботятся о мониторинге приложений? Всех с пятницей! Друзья, сегодня мы продолжаем серию публикаций посвященных курсу «DevOps практики и инструменты», потому как занятия в новой группе по курсу стартуют уже в конце следующей недели. Итак, начнём! Мониторинг — это просто. Это известный факт. Поднимите Nagios...

Владельцы 5% доменных зон не следят за их безопасностью Корпорация ICANN проверила владельцев 1207 доменных зон (практически все gTLD) на предмет того, насколько они выполняют требования по безопасности, указанные в их договоре с ICANN. В каждом контракте регистратуры с ICANN указывается, что администратор доменной зоны должен ос...

[Из песочницы] Использование верилятора как средства быстрого моделирования RTL проектов. Введение в UVM В данной статье будут описаны установка и применение бесплатного ПО для моделирования схем цифровой логики на языке Verilog как альтернативы коммерческих продуктов Incisve от компании Cadense и ModelSim от компании MentorGraphics. Сравнение моделирования в ModelSim и Verilat...

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

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

Какие инструменты сетевого мониторинга выбились в лидеры по версии Gartner В феврале 2019 года Gartner выпустил новый Magic Quadrant for Network Performance Monitoring and Diagnostics (MQ for NPMD). NPMD инструменты — это решения для мониторинга сетевого трафика и инфраструктурных метрик сетевых устройств. Большая часть вендоров поставляет комплекс...

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

Хаки при работе с большим числом мелких файлов Идея статьи родилась спонтанно из дискуссии в комментариях к статье «Кое-что об inode». Дело в том, что внутренней спецификой работы наших сервисов является хранение огромадного числа мелких файлов. На данный момент у нас порядка сотен терабайт таких данных. И мы натолкну...

Производительность анимаций на сайтах При разработке сайтов, выходящих за рамки условного бутстрапа, рано или поздно возникают вопросы, связанные с производительностью анимаций. Особенно важными они являются в дизайнерских сайтах, вроде тех, что попадают в каталоги Awwwards, FWA, CSS Design Awards и.т.д. При эт...

NVIDIA GeForce GTX 1660 Ti протестирована в AotS: ощутимо быстрее GeForce GTX 1060 Упоминание готовящейся к выпуску видеокарты NVIDIA GeForce GTX 1660 Ti было обнаружено в базе данных теста производительности игры Ashes of the Singularity. Скриншот с результатами теста опубликовал известный источник в основном достоверных утечек Tum Apisak. Производительно...

Разработана система для мониторинга состояния региональных онкологических служб Система предназначена для помощи врачам, проводящим мониторинг региональных онкологических медучреждений, в сборе и обработке медицинской информации. ИТ-решение разработано на базе флагманской медицинской ИТ-платформы "ТехЛАБ" Galenos. Злокачественные новообразован...

С новым годом, с новым MQTT/UDP Привет. Как я уже писал недавно (Первая краткая статья о MQTT/UDP), MQTT/UDP — протокол на базе MQTT, но: Ходит поверх UDP broadcast (не нужен брокер, почти не нужна конфигурация) До неприличия простой в реализации (10 строк на си + UDP/IP стек — и вы отправляете данные с...

PHPUnit. Мокаем Doctrine Entity Manager Во многих современных приложениях для работы с базой данных используется проект Doctrine ORM. Хорошим тоном считается выносить работу с БД в сервисы. А сервисы нужно тестировать. Для тестирования сервисов можно подключить тестовую базу данных, а можно замокать Менеджер сущно...

9 типовых проблем в сети, которые можно обнаружить с помощью анализа NetFlow (на примере Flowmon) Относительно недавно мы публиковали статью “Сетевой мониторинг и выявления аномальной сетевой активности с помощью решений Flowmon Networks”. Там мы кратко рассмотрели возможности этого продукта и процесс установки. Неожиданно для нас, после статьи и вебинара, поступило бо...

Windows 10 наконец-то получает встроенный счетчик FPS Частота кадров в секунду (FPS) связана с мониторингом частоты обновления во время игр на компьютерах, консолях и смартфонах. Игра с высоким FPS будет выглядеть более плавно, и важно отслеживать FPS, если вы хотите определить игровую производительность.Вы можете отображать FP...

[Перевод] Распределённая трассировка: мы всё делали не так Прим. перев.: Автор этого материала — Cindy Sridharan, инженер из компании imgix, занимающаяся вопросами разработки API и, в частности, тестирования микросервисов. В этом материале она делится своим развёрнутым видением актуальных проблем в области распределённой трассировки...

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

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

[Из песочницы] Оформление PL/SQL кода и формирования PL/SQL документации (pldoc), аналогично JavaDoc Внутри команды нужно разработать свои стандарты и правила, а оформление документации — это одно из главных правил работы в команде. Ну, поехали… Ссылка на сам инструмент pldoc. По ссылки хорошо все расписано как работать и формировать документацию, но чтобы было проще приве...

[Перевод] Интеграция проверок пароля в KeePass по базе данных утечек Данная статья по шагам описывает процесс интеграции проверок пароля на безопасность в менеджере паролей KeePass. Проверки используют последнюю базу данных Have I Been Pwned, где хранятся утекшие пароли, и всё это работает локально, поэтому вам не надо беспокоиться о возможно...

[Из песочницы] Создаем элементы интерфейса программно с помощью PureLayout Привет, Хабр! Представляю вашему вниманию перевод статьи Creating UIViews Constraints Programmatically Using PureLayout автора Aly Yaka. Сегодня я проведу вас через создание простого пользовательского интерфейса мобильного приложения кодом, без использования раскадровок и...

[Из песочницы] Классификация покрова земли при помощи eo-learn. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи "Land Cover Classification with eo-learn: Part 1" автора Matic Lubej. Предисловие Примерно полгода назад был сделан первый коммит в репозиторий eo-learn на GitHub. Сегодня, eo-learn превратился в замечательную библиоте...

Адаптация ARDUINO MEGA 2560 под нужды 3D печати. Возможно кому то данная статья и не интересна. Но все же я не нашел внятного объяснения, как поменять стабилизатор на плате ARDUINO MEGA 2560 на более мощный. И решил написать для тех кому это действительно нужно.ВНИМАНИЕ! Все работы по адаптации плат для работы в 3D принтер...

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

[Из песочницы] Изучаем трассировку с помощью eBPF: Руководство и примеры Привет, Хабр! Предлагаю вашему вниманию перевод статьи Брендана Грегга, посвящённой изучению eBPF На конференции Linux Plumbers было как минимум 24 выступления по eBPF. Он быстро стал не просто бесценной технологией, но и востребованным навыком. Возможно, вам хотелось бы пос...

Реализация пула соединений в WCF для .Net Core с использованием HttpClientFactory Наш продукт разрабатывается на платформе .Net Core 2.2 с использованием WCF 4.5 для взаимодействия с SOAP сервисом клиента. В процессе работы сервиса разработчики шины данных заметили высокую нагрузку на сервер. Далее стали появляться проблемы с доступом к сервису. В результ...

[Из песочницы] Инстансы по информационной безопасности на платформе attackdefense.com … Мы живем в эпоху больших событий и маленьких людей … Уинстон Черчилль Сегодня вашему вниманию представляем первую статью из цикла о разборе и прохождении лабораторных работ с ресурса attackdefense.com с поддержкой известного организатор конференций (Black Hat и Pentes...

[Перевод] О декораторах в Python Всем привет! Перевод статьи подготовлен для студентов курса «Web-разработчик на Python». Интересно развиваться в данном направлении? Запишитесь на День Открытых Дверей курса и пообщайтесь вживую с преподавателем: онлайн-трансляция 23 июля в 20:00 по мск.! Когда вы упражняли...

Автономная СУБД Oracle позволит отказаться от администраторов баз данных Открывая апрельскую конференцию Oracle Experience Autonomous Day, призванную познакомить российских специалистов …

[Перевод] Как работает FaceID в iPhone X: алгоритм на Python Одна из самых крутых фишек iPhone X – это метод разблокировки: FaceID. В этой статье разобран принцип работы данной технологии. Изображение лица пользователя снимается с помощью инфракрасной камеры, которая более устойчива к изменениям света и цвета окружающей среды. Исп...

JMeter — швейцарский нож тестировщика (Часть 2) Сегодня расскажу, как мы с помощью JMeter’а наладили процесс кэширования продуктовых страниц, проверили работу мобильного приложения без самого приложения и создали 2000 юзеров в системе без доступа к базе данных. Кто не в курсе, что здесь происходит, читайте первую часть ...

Удаленный мониторинг и управление устройств на базе Linux/OpenWrt/Lede через 80-ый порт, продолжение Это заключительная часть статьи, вот начало. В прошлый раз я написал о том, как реализовал мониторинг устройств, теперь речь пойдет о управлении. В дискуссиях с «технарями» со стороны Заказчика я часто встречаюсь с ограниченным восприятием возможностей таких маленьких устро...

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

[Перевод] Настройки аутентификации в Veeam Backup for Microsoft Office 365 v3 В недавно выпущенной версии 3.0 решения Veeam Backup for Microsoft Office 365, помимо прочих новинок, поддерживается современный способ аутентификации при работе с облачными данными. В нем задействованы аутентификация с использованием приложения Azure и сервисной учетной зап...

Миграция Cassandra в Kubernetes: особенности и решения С базой данных Apache Cassandra и необходимостью её эксплуатации в рамках инфраструктуры на базе Kubernetes мы сталкиваемся регулярно. В этом материале поделимся своим видением необходимых шагов, критериев и существующих решений (включая обзор операторов) для миграции Cass...

Check Point: оптимизация CPU и RAM Здравствуйте, коллеги! Сегодня я хотел бы обсудить очень актуальную для многих администраторов Check Point тему «Оптимизация CPU и RAM». Нередки случаи, когда шлюз и/или менеджмент сервер потребляют неожиданно много этих ресурсов и хотелось бы понять, куда они “утекают” и ...

Technics EAH-DJ1200 — диджейские наушники с точным мониторингом звука Technics создал диджейские наушники с лучшим функционалом, дизайном и качеством звука. В дополнение к обычному прослушиванию, EAH-DJ1200 обеспечивают точный мониторинг звука даже в очень зашумленном окружении, таком как клубы.

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

Построение отказоустойчивого решения на базе Oracle RAC и архитектуры AccelStor Shared-Nothing Немалое число Enterprise приложений и систем виртуализации имеют собственные механизмы для построения отказоустойчивых решений. В частности, Oracle RAC (Oracle Real Application Cluster) представляет собой кластер из двух или более серверов баз данных Oracle, работающих совме...

[Из песочницы] Инкрементальные бэкапы postgresql с pgbackrest — курс молодого бойца от разработчика Дисклеймер Я — разработчик. Я пишу код, с базой данных взаимодействую лишь как пользователь. Я ни в коем случае не претендую на должность системного администратора и, тем более, dba. Но… Так вышло, что мне нужно было организовать резервное копирование postgresql базы данны...

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

Устанавливаем Vmware ESXi на Mac Pro 1,1 В статье описываю свой опыт установки VMware ESXi на старинный Apple Mac Pro 1,1. От заказчика поставлена задача – расширить файловый сервер. Как создавался файловый сервер компании на PowerMac G5 в 2016, и какого было обслуживать созданное legacy достойно отдельной стать...

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

Как выгружать данные с вложенной структурой из Google BigQuery на примере пользовательских параметров Google Analytics Google BigQuery — популярная облачная база данных, которой пользуются компании по всему миру. Она особенно удобна для работы с “сырыми” данными Google Analytics: в GA 360 интеграция с BigQuery настраивается в несколько кликов, а для бесплатной версии существуют сторонние ск...

[Перевод] Панель мониторинга Grafana для пивной системы BeerTender Пояснение. BeerTender — устройство для охлаждения и розлива пива от Krups и Heineken. По заявлению производителей, оно сохраняет качества свежего пива в течение 30 дней после открытия кега. Конечно, системным администраторам и девопсам удобно отслеживать температуру и уровен...

[Из песочницы] Мой опыт администрирования IBM DB2 Express-C при использовании с 1C: Предприятием Довелось работать с IBM DB2. И на 1С, и сервер на Django использовал эту СУБД одно время, OLAP запросы довольно шустро обрабатывал (правда, требовалась ручная настройка индексов, ну и веб-сервера, конечно, чтобы отклик был в пределах 2 секунд). Году в 2015 подготовил эту неб...

[Перевод] Мониторинг .NET приложений .NET – управляемая среда выполнения. Это означает, что в ней представлены высокоуровневые функции, которые управляют вашей программой за вас (из Introduction to the Common Language Runtime (CLR), 2007 г.): Среда выполнения предусматривает множество функций, поэтому их удобно...

[Из песочницы] Как в yEd Graph Editor построить красивую схему базы данных Хочу показать вам как с помощью нынче популярного приложения yEd, которое предназначено для построения различных диаграмм и схем, можно сделать полноценную(со всеми обозначениями) схему базы данных. Читать дальше →

Основы реактивного программирования с использованием RxJS. Часть 3. Higher Order Observables В данной статье мы рассмотрим, как можно в одном потоке обрабатывать другой, для чего это нужно, и как нам в этом помогут операторы Higher Order Observables (дальше HOO). При работе с потоками часто возникает ситуация, когда необходимо в качестве значения одному потоку пе...

[Из песочницы] Создание многомодульного Gradle проекта SpringBoot + Angular в IDEA Достаточно часто в моей практике используется связка Spring + Angular. Хочу поделится своим опытом по подготовке подобного проекта в среде разработки IntelliJ IDEA. Создаем пустой Gradle проект Для начала создадим пустой Gradle проект в IDEA, при этом снимите все галочки би...

Автономная – значит самоадминистрируемая СУБД Oracle 19c была представлена на конференции Oracle Experience Autonomous Day в Москве. Среди новых возможностей - сбор статистики работы базы данных в реальном времени и система карантина для SQL-запросов, например, сильно загружающих CPU или генерирующих слишком много ...

Nomad: проблемы и решения Первый сервис в Nomad я запустил в сентябре 2016 года. На данный момент пользуюсь как программист и занимаюсь поддержкой как администратор двух Nomad кластеров — один "домашний" для своих личных проектов (6 микро-виртуалок в Hetzner Cloud и ArubaCloud в 5 разных датацентрах ...

Газинформсервис создал СУБД Jatoba на открытом коде PostgreSQL Система управления базами данных «Jatoba» - продукт собственной разработки компании «Газинформсервис». Это программное средство общего назначения для создания и управления реляционными базами данных и обеспечения многопользовательского доступа к данным с разным уровне...

Автоматизация замены дисков с помощью Ansible Всем привет. Я работаю ведущим системным администратором в ОК и отвечаю за стабильную работу портала. Хочу рассказать о том, как мы выстроили процесс автоматической замены дисков, а затем, как исключили из этого процесса администратора и заменили его ботом. Эта статья явл...

[Перевод] Поиск на скорости 1 ТБ/с TL;DR: Четыре года назад я покинул Google с идеей нового инструмента для мониторинга серверов. Идея состояла в том, чтобы объединить в одну службу обычно изолированные функции сбора и анализа логов, сбора метрик, оповещений и панели мониторинга. Один из принципов — сервис до...

Родительская компания Poloniex задействует специальные инструменты для борьбы со схемами Pump & Dump Финтех-компания Circle объявила, что будет использовать в своей деятельности специальные инструменты мониторинга для отслеживания инсайдерского трейдинга и схем Pump & Dump. Об этом пишет Cointelegraph. Соответствующее объявление компания из Бостона, которой, в частности...

Мониторинг + нагрузочное тестирование = прогнозирование и отсутствие сбоев IT-департаменту ВТБ несколько раз приходилось сталкиваться с нештатными ситуациями в работе систем, когда нагрузка на них многократно возрастала. Поэтому появилась необходимость разработать и опробовать модель, которая предсказывала бы пиковую нагрузку на критичные системы. ...

Разработка сайта на WebAssembly с помощью NetCore 3 и Blazor Мое мнение, что WebAssembly будущее интернета. Данная технология на текущий момент уже интегрирована в большинство современных браузерах (а точнее в их движках) на ПК и мобильных устройствах. В таких браузерах как Chrome, Edge, Firefox, и WebKit. В данной статье я опишу как ...

[Перевод] Тестирование PostgreSQL с HugePages в Linux Ядро Linux предоставляет широкий спектр параметров конфигурации, которые могут повлиять на производительность. Главное — выбрать правильную конфигурацию для вашего приложения и рабочей нагрузки. Как и любой другой базе данных, PostgreSQL необходима оптимальная настройка ядра...

AMD Navi будут довольно сильно отличаться от Vega и других чипов на базе GCN Постепенно выясняется всё больше подробностей о новой архитектуре графических процессоров AMD Navi. Как известно, она станет очередной версией уже давно используемой архитектуры Graphics Core Next (GCN), но при этом, по последним данным, получит весьма ощутимые изменения. В ...

Как улучшить защиту периметра сети? Практические рекомендации для Check Point и не только Мы продолжаем цикл статей, посвященных оптимизации security настроек средств защиты периметра сети (NGFW). Хочу сразу заметить, что приведенные рекомендации подходят не только для владельцев Check Point. По сути, если разобраться, угрозы одинаковы для всех, просто каждый N...

[Из песочницы] Права в Linux (chown, chmod, SUID, GUID, sticky bit, ACL, umask) Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300. От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания. Итак, поехали. Читать дальше →

PHP Xdebug proxy: когда стандартных возможностей Xdebug не хватает Для отладки PHP-программ часто используют Xdebug. Однако стандартных возможностей IDE и Xdebug не всегда достаточно. Часть проблем можно решить с помощью Xdebug proxy — pydbgpproxy, но всё же не все. Поэтому я реализовал PHP Xdebug proxy на базе асинхронного фреймворка amph...

[Из песочницы] ClusterJ — работаем с MySQL NDB Cluster из Java Привет, Хабр! В этой статье я хочу рассмотреть такую библиотеку для Java, как ClusterJ, которая позволяет очень просто работать с движком MySQL NDBCLUSTER из Java кода, которая представляет собой высокоуровневое API, схожее по концепции с JPA и Hibernate. В рамках статьи со...

[Перевод] Прекратите усердствовать с комментариями в коде Привет, Хабр! Сегодня вашему вниманию предлагается весьма дискуссионная статья, затрагивающая важный аспект философии "Чистого Кода". Автор статьи берет на себя смелость утверждать, что в большинстве случаев комментарии в коде вредны, но также не забывает указать, когда без...

DirectX 12 теперь работает на Windows 7 С выходом Windows 10 состоялся и релиз DirectX 12, который был эксклюзивным дополнением к новой системе от Microsoft. По словам компании, данный API разрабатывался около 5 лет и старые системы попросту не были совместимы с новым API DX12. Многие пользователи чувствовали в эт...

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

Проверяем сведения о недостоверности в выписках из ЕГРЮЛ, склеив их в pdf на python В настоящее время весьма актуальной темой остается возможность налогового органа исключить из ЕГРЮЛ общество всего лишь ”выявив” в отношении компании так называемые недостоверные сведения. Как показывает статистика с сентября 2018 года ФНС исключила из ЕГРЮЛ 90 тысяч организ...

[Из песочницы] Создание Android приложения с использованием Anko Layouts и Anko Coroutines Примерно год назад я начал использовать Kotlin в своих Android проектах. Мне хотелось попробовать что-то новое, что было бы интересно изучать. Тогда я и наткнулся на Anko. К тому времени писать UI на xml порядком осточертело. Мне всегда нравилось писать интерфейс руками, не...

[Из песочницы] Как было устроено хранилище DWH в TELE2 Здравствуйте, дорогие друзья. Сегодня хочу поделиться историей из жизни, как было устроено хранилище DWH в Tele2 до внедрения КХД (EDW). А в следующих статьях рассказать, как внедрялись ETL-инструменты, EDW и BI решения в Tele2. Поступил я в ИТ подразделение Tele2 в 2012 в о...

[Из песочницы] postgres_exporter и мониторинг экземпляров PostgreSQL с несколькими БД Добрый день, читатели habr! Prometheus и его экосистема экспортеров (агентов), является хорошим инструментом для любого администратора и разработчика. Простота доставки, простота (относительная) настройки, возможность использования сервиса автоматического обноружения. Но реч...

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

[Перевод] Что нужно знать о массивах JavaScript Представляем вам перевод статьи автора Thomas Lombart, которая была опубликована на сайте medium.freecodecamp.org. Перевод публикуется с разрешения автора. Пример использования метода reduce для сокращения массива Позвольте мне сделать смелое заявление: циклы часто бывают...

Типичные ошибки при работе с PostgreSQL Чуть более месяца назад в Москве состоялась крупнейшая конференция постгресового сообщества PGConf.Russia 2019, собравшая в МГУ свыше 700 человек. Мы решили выложить видео и расшифровку лучших докладов. Выступление Ивана Фролкова с разбором типичных ошибок при работе с Postg...

GDPR: как работать с персональными данными ваших работников, фрилансеров и европейских сотрудников контрагентов Статья представляет собой краткую выжимку и мою интерпретацию положений Регламента GDPR (“Регламент”) в связке с Заключением (Opinion) 2/2017 об обработке данных в трудовых отношениях (on data processing at work) от 08.06.2017. Адресуется компаниям, у которых есть полноцен...

[recovery mode] 10 способов защиты интеллектуальной собственности IT-стартапа Проблема защиты интеллектуальной собственности (далее — ИС) часто является одной из наиболее важных, с которой сталкивается любой технологический стартап. Это тесно связано с процессом разработки продукта, наймом квалифицированных сотрудников, привлечением капитала и многи...

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

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

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

[Из песочницы] Учимся стандарту проектирования — Entity Relationship Здравствуйте. Данная статья посвящена одной из самых популярных, а также и многим знакомой, модели проектирования — ER(Entity Relationship), которая была предложена учёным, в области информатики — Питером Ченом, в 1976 году. По ходу статьи простым языком на простых примера...

Сертификация администраторов баз данных и многое другое на юбилейном DevConfX (21-22 июня в Москве) Продолжаем голосовать за интересные доклады в секции «Хранилища данных (Storage)» на DevConfX, которая пройдет уже через неделю. Обратите внимание на доклад о сертификации специалистов PostgreSQL, оставайтесь всегда в курсе последних событий в мире баз данных. Заявки на сек...

Плагин Jetpack прохудился В популярном плагине для WordPress устранили критическую уязвимость, привнесенную в июле 2017 года с выпуском ветки 5.1. Администраторов сайтов призывают как можно скорее обновить расширение до актуальной сборки. Проект с открытым исходным кодом Jetpack призван облегчить упр...

SMS-мониторинг веса трех ульев за 35$ Прошло совсем немного времени с предыдущей публикации о системе за 30$. Что-же изменилось за прошедший лунный месяц? Добавлена солнечная батарейка — время работы практически неограниченно. Добавлена отправка информации по звонку. Возможность работы со всеми видами модулей ...

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

[Из песочницы] Как создать 2D игру с Python и аркадной библиотекой Привет, Хабр! представляю вашему вниманию перевод статьи How to create a 2D game with Python and the Arcade library автора Paul Vincent Craven Как создать 2D игру с Python и аркадной библиотекой Узнайте, как начать работу с Arcade, простой в использовании библиотеки Python д...

NB-IoT: как он работает? Часть 3: SCEF – единое окно доступа к услугам оператора В статье «NB-IoT: как он работает? Часть 2», рассказывая про архитектуру пакетного ядра сети NB-IoT, мы упомянули про появление нового узла SCEF. Объясняем в третьей части, что же это такое и зачем это нужно? При создании M2M-сервиса разработчики приложений сталкиваются с...

[Из песочницы] Решение заданий WorldSkills модуля Network в компетенции «СиСА». Часть 1 — Базовая настройка Движение WorldSkills направлено на получение участниками преимущественно практических навыков, востребованных на современном рынке труда. Компетенция «Сетевое и системное администрирование» состоит из трех модулей: Network, Windows, Linux. Задания меняются от чемпионата к че...

Синхронизация клиентских запросов в Spring Сегодня предлагаю Вам разобрать одну практическую задачу о гонке клиентских запросов, с которой я столкнулся в МаксимаТелеком при разработке back-end для нашего мобильного приложения MT_FREE. При старте клиентское приложение асинхронно отправляет «пачку» запросов к API. При...

Обеспечение безопасности в беспроводных протоколах на примере LoRaWAN Привет, Хабр. Мне хотелось бы в очередной раз поговорить о том, как обеспечивается базовый (читай: минимально необходимый) уровень безопасности данных в беспроводных сетях, используемых в IoT-устройствах, на примере LoRaWAN. Почему именно LoRaWAN? Во-первых, потому, что эт...

Что в черном ящике. Обзор методов тестирования биллинга Проверка платных сервисов — один из ключевых инженерных вопросов в тестировании Badoo. Наше приложение интегрировано с 70 платёжными провайдерами в 250 странах мира, и баг хотя бы в одном из них может привести к непредсказуемым последствиям.  В этой статье я расскажу о мето...

Трассировка лучей на любой видеокарте. Crytek выпустила бенчмарк Neon Noir На данный момент трассировка лучей в играх встречается, к сожалению, не особо часто. Фактически мы имеем лишь несколько игр с поддержкой этой технологии. Все они поддерживают технологию компании Nvidia, которая требует поддержки аппаратного ускорения трассировки лучей, ...

Настройка Warnings Next Generation плагина для интеграции PVS-Studio Релиз PVS-Studio 7.04 совпал c релизом плагина Warnings Next Generation 6.0.0 для Jenkins. Как раз в этом релизе Warnings NG Plugin добавил поддержку статического анализатора PVS-Studio. Этот плагин визуализирует данные о предупреждениях компилятора или других инструментов ...

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

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

Нюансы работы инструментов Target Length и Tuning Meter в PADS Professional/Xpedition При трассировке сложных печатных плат, с использованием высокоскоростных интерфейсов, инженерам необходимо четко контролировать длину критических сигналов, ведь на высоких частотах каждый неучтенный миллиметр проводника будет сильно влиять на целостность сигнала, а значит ...

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

Некоторые аспекты оптимизации LINQ-запросов в C#.NET для MS SQL Server LINQ вошел в .NET как новый мощный язык манипуляции с данными. LINQ to SQL как часть его позволяет достаточно удобно общаться с СУБД с помощью например Entity Framework. Однако, достаточно часто применяя его, разработчики забывают смотреть на то, какой именно SQL-запрос буде...

[Перевод] Демонстрация AresDB: инструмент анализа в реальном времени с открытым исходным кодом на основе GPU от Uber Благодаря анализу в реальном времени мы, сотрудники компании Uber, получаем представление о состоянии дел и эффективности работы и на основе данных решаем, как повысить качество работы на платформе Uber. Например, проектная команда мониторит состояние рынка и выявляет потенц...

Как мы сдружили EF 6 с MSSQL и PostgresSQL Жил-был проект на EF 6 с СУБД MSSQL. И появилась необходимость добавить возможность его работы с СУБД PostgreSQL. Проблем здесь мы не ожидали, ведь есть большое количество статей на эту тему, и на форумах можно найти обсуждение похожих задач. Однако, на деле не все оказало...

[Не] используйте CDN Практически в любой статье или инструменте для оптимизации скорости сайтов есть скромный пункт «используйте CDN». Вообще, CDN – это content delivery network или сеть доставки контента. Мы в компании «Метод Лаб» часто встречаемся с вопросами клиентов по этой теме, некоторые с...

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

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

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

[Из песочницы] Как выглядело бы Московское метро в трехмерном мире Добрый день! Недавно я читал блог одного урбаниста, который рассуждал о том, какая должна быть идеальная схема метро.Схему метро можно рисовать исходя из двух принципов: Схема должна быть удобной и простой для запоминания и ориентирования Схема должна соответствовать гео...

Про ИТ-бизнес и не только Всем доброго нового года! Навеяно статьей Бизнес, я люблю тебя коллеги Verovir, а также ее же статьей Уходя — уходи? Ночной разговор об увольнениях (хотя последняя заслуживает отдельного развернутого ответа). Коллега, вы в статье хорошо выделили ключевые проблемные точки, с ...

[Перевод] Пошаговое руководство по настройке DNS-сервера BIND в chroot среде для Red Hat (RHEL / CentOS) 7 Перевод статьи подготовлен для студентов курса «Безопасность Linux». Интересно развиваться в данном направлении? Смотрите запись трансляции мастер-класса Ивана Пискунова «Безопасность в Linux в сравнении с Windows и MacOS» В этой статье я расскажу о шагах по настройке DNS-с...

Доступная трассировка лучей. Видеокарта Radeon RX Vega 56 в демо Neon Noir компании Crytek обеспечивает более 40 к/с в 1440p В марте компания Crytek показала демо под названием Neon Noir, которое было создано с активным использованием трассировки лучей и при этом работало на видеокарте Radeon RX Vega 56, которая аппаратной поддержки трассировки не имеет. Тогда же Crytek уточнила, что её техно...

[Перевод] Service mesh для микросервисов. Часть II, основы работы с Istio Перевод статьи подготовлен специально для студентов курса «Инфраструктурная платформа на основе Kubernetes». Настройка базового микросервиса в Kubernetes обманчиво проста. В одной из последних статей мы рассказали, как легко начать работать с контейнерами. Мы скомпоновали п...

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

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

Наша космическая промышленность. Взгляд на проблемы рядового разработчика Я работал в нашей космической промышленности достаточно долго (1983-1995, 2008-2012 годы). Когда читаешь статьи о наших неудачах, в них часто не видны основные действующие механизмы создания проблем. Итак, я хотел бы начать это рассмотрение с принципа «фактической негативн...

[Из песочницы] snmp-мониторинг принтеров в The Dude Snmp В сети много инстркций как установить сервер монитринга The Dude от Mikrotik. Сейчас пакет сервера мониторинга выпускают только для RouterOS. Я использовал версию 4.0 для Windows. Здесь я хотел рассмотреть, как сделать мониторинг принтеров в сети: отслеживать уров...

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

Функция отслеживания сна появится на следующих Apple Watch Apple начала тестировать функцию монитора сна для будущей модели Apple Watch. Говорят, что тестирование длилось несколько месяцев, и эта функция может появиться к 2020 году. Ранее Apple купили финский стартап Beddit, целью которого является разработка устройств для мониторин...

Autodesk Maya: полезные базовые функции для работы с 3Д моделями Недавно я столкнулся лицом к лицу с таким зверем как Autodesk Maya. За плечами у меня не было опыта в работе с 3Д моделированием и пришлось в экстренном порядке прокачиваться, начиная с основ, а также ознакомится с функциональностью данного ПО, чтобы проверить работу плагина...

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

Управление параметрами в бизнес-приложениях по аналогии с системой контроля версий В различных приложениях регулярно возникает задача по поддержке логики изменения во времени некоторого атрибута объекта относительно некоторого субъекта (или субъектов). Например, это может быть изменение розничной цены товара в магазинах или показателей KPI для сотруднико...

Статистика и мониторинг PHP скриптов в реальном времени. ClickHouse и Grafana идут на помощь к Pinba В этой статье я расскажу как использовать pinba совместно с clickhouse и grafana вместо pinba_engine и pinboard. На php-проекте pinba — пожалуй единственный надёжный способ понять, что происходит с производительностью. Правда обычно pinba внедряется только тогда, когда уже н...

Возможно ли без Redux? На сегодняшний день можно найти уйму позиций, где требуется react/redux. React прекрасен, вопросов нет. Вопрос к Redux — возможно ли без него. Если погуглить чуть-чуть, найдется добротная статья на хабре (https://habr.com/ru/post/350850/), где автор задается таким же вопросо...

[Перевод] Плагин Veeam для бэкапа и восстановления баз данных SAP HANA В этом сезоне разработчики Veeam представили решение для бэкапа и восстановления серверов и баз данных SAP HANA. Читатели нашего блога проявили интерес к новинке — а тут как раз подоспела и полезная статья от моего коллеги Клеменса Зербе. Сегодня поделюсь ею с вами, немного ...

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

Новая игра со старой атмосферой на Three.js. Часть 2 В первой части я рассказал о проблемах, с которыми я столкнулся в процессе создания 3D игры под браузер c использованием Three.js. Теперь я хотел бы подробно остановиться на решении некоторых важных задач при написании игры, типа конструирования уровней, определения столкнов...

Схема метро Минска В конце июля у моего города появилась красивая схема метро, которую мы старательно рисовали вечерами 8 месяцев. Задача от арт-директора звучала так: нужно спроектировать такую схему метро, чтобы другие города завидовали. Центр Читать дальше →

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

4 релиза Maltego. Принципы работы и возможности При просмотре профилей пользователей соцсетей, невольно задаешься вопросом, а сколько информации лежит в открытых источниках? Понятно, что много. Но как это посчитать? И у кого еще, кроме спецслужб и корпораций уровня Google или Microsoft, есть ресурсы и механизмы, чтобы это...

Эволюция H2 — оконные функции, CTE, JSON/XML во встраиваемой базе данных Есть open source проекты которые стали коммерчески успешным мейнстримом, как например PostgreSQL/Elasticsearch. Другие, к примеру RethinkDB, проиграли на рынке и остановили разработку. А проект H2 database встраиваемой базы данных, написанной на языке java, развивается и здр...

Microsoft выпустила новое накопительное обновление для Windows 10 October 2018 Update (17763.253) Компания Microsoft выпустила новое накопительное обновление для Windows 10 October 2018 Update с кодовым названием KB4480116. После его установки номер сборки системы изменится на 17763.253. Как и прежде, обновление не несёт в себе новых функций, а направлено на устранение ...

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

Empire ERP. Занимательная бухгалтерия: главная книга, счета, баланс В данной статье мы осуществим попытку проникновения в самое сердце "кровавого энтерпрайза" — в бухгалтерию. Вначале мы проведем исследование главной книги, счетов и баланса, выявим присущие им свойства и алгоритмы. Используем Python и технологию Test Driven Development. Здес...

DCIM – ключ к управлению ЦОД Согласно прогнозам аналитиков компании iKS-Consulting, к 2021 году рост числа серверных стоек у крупнейших провайдеров услуг ЦОД в России достигнет 49 тысяч. А их количество в мире, по данным Gartner, уже давно превысило 2,5 миллиона. Для современных предприятий ЦОД – ценней...

Windows 10: настройки не открываются — что делать? Если вы недавно установили Windows 10, то, как правило, эта проблема может быть быстро устранена. Для этого корпорация Microsoft выпустила инструмент для решения проблемы, который сам исправляет эту ошибку. Если ошибка возникла после длительного использования Windows 10, то...

Демо “Back Stage”: взгляд на игры следующего поколения Разработчики опубликованной демки уверены, что именно так будут выглядеть игры следующего поколения, «собранные» на базе движка Luminous Engine (специально для ААА-проектов). В создании видеоряда компании Luminous Productions помогала студия Square Enix. В демке активно исп...

[Перевод] Знакомство с HealthKit В этой статье про HealthKit вы узнаете, как запрашивать разрешение на доступ к данным HealthKit, а также считывать и записывать данные в центральный репозиторий HealthKit. В статье используется Swift 4, iOS 11, Xcode 9 версии. HealthKit — это API, которое было представлено...

[Из песочницы] Опыт установки Apache Airflow на Windows 10 Преамбула: волею судьбы из мира академической науки (медицины) я попала в мир информационных технологий, где мне приходится использовать свои знания о методологии построения эксперимента и стратегиях анализа экспериментальных данных, однако, применять новый для меня стек тех...

Новое решение Informatica для больших данных стало доступным в России Решение обеспечивает сбор потоковых данных и их доставку всистемы работы с большими данными (Kafka, Hadoop, Cassandra) и системы Operational Intelligence (системы мониторинга операций в реальном времени). На российском рынке стало доступным новое решение Informatica для б...

50 советов по UX в виртуальной реальности Этот список был собран на основе нескольких моих статей и заметок, посвященных созданию пользовательского опыта в VR. Материал создавался как своеобразный набор дополнительных рекомендаций для новых специалистов Modum Lab, которые занимаются созданием систем взаимодействия...

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

[Перевод] Подробности о GraphQL: что, как и почему GraphQL сейчас, без преувеличения, это — последний писк IT-моды. И если вы пока не знаете о том, что это за технология, о том, как ей пользоваться, и о том, почему она может вам пригодиться, значит статья, перевод которой мы сегодня публикуем, написана специально для вас. Зд...

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

[Из песочницы] Знакомство с Microsoft Azure DevTest Labs Всем привет! В статье пойдет речь об облачном сервисе Microsoft Azure DevTest Labs. Данный сервис позволяет решить вопрос настройки среды для разработки, тестирования и лабораторных занятий. Тема лабораторных от меня далека, поэтому я расскажу про настройку сред для разра...

Введение в Git Оглавление Предисловие 1. Настройка git ....1.1 Конфигурационные файлы ....1.2 Настройки по умолчанию ....1.3 Псевдонимы (aliases) 2. Основы git ....2.1 Создание репозитория ....2.2 Состояние файлов ....2.3 Работа с индексом ....2.4 Работа с коммитами ....2.5 Просмотр истори...

Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности Прелюдия Рассмотрим следующий код: //Any native COM object var comType = Type.GetTypeFromCLSID(new Guid("E13B6688-3F39-11D0-96F6-00A0C9191601")); while (true) { dynamic com = Activator.CreateInstance(comType); //do some work Marshal.FinalReleaseComObject(com...

Liveprof покажет, когда и почему менялась производительность вашего PHP-приложения Привет, Хабр! Меня зовут Тимур Шагиахметов, я PHP-разработчик в Badoo. Производительность приложения — один из важнейших критериев качества работы программиста. В вопросах оптимизации PHP-приложений помощником является профайлер. Недавно мы рассказывали о том, какими и...

С игрой Quake II RTX в 4K не справляется даже видеокарта GeForce RTX 2080 Ti Компания Nvidia на днях представила игру Quake II RTX. Это старый добрый Quake II, но с поддержкой эффектов, основанных на трассировке лучей. Официальные минимальные системные требования игры включают видеокарту GeForce RTX 2060. Как оказалось, для игры в 4K недостаточ...

Строительные блоки распределенных приложений. Второе приближение Анонс Коллеги, в середине лета я планирую выпустить еще один цикл статей по проектированию систем массового обслуживания: “Эксперимент VTrade” — попытка написать фреймворк для торговых систем. В цикле будет разобрана теория и практика построения биржи, аукциона и магазина. В...

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

[Перевод] Angular без zone.js: максимум производительности Angular-разработчики в большом долгу перед библиотекой zone.js. Она, например, помогает достичь в работе с Angular почти волшебной лёгкости. На самом деле, практически всегда, когда нужно просто поменять какое-нибудь свойство, и мы меняем его, ни о чём не задумываясь, Angula...

Отображение текста в Android Отображение текстовой информации — наверное, самая базовая и важная часть многих Android-приложений. В данной статье пойдет речь о TextView. Каждый разработчик, начиная с «Hello World», постоянно сталкивается с этим элементом пользовательского интерфейса. Периодически в раб...

RTOS или не RTOS вот в чем вопрос На написание данной статьи меня побудила длинная ветка комментариев (дискуссией это я назвать, к сожалению, не могу) к моей недавней статье “Многообразный мир embedded systems и место Embox в нем”. Меня в нескольких местах упрекнули в том, что я путаю RTOS и Embedded OS, чт...

Security Week 13: открытые пароли в Facebook У Facebook проблема с безопасностью пользовательских данных. Опять? Да сколько можно! 19 марта журналист Брайан Кребс сообщил, что компания годами хранила пароли пользователей в открытом виде (новость, статья Кребса, официальное сообщение Facebook). Судя по официальному заяв...

PlayStation 5 и Xbox Scarlett могут получить скоростной твердотельный кеш наподобие Optane Компании Sony и Microsoft могут использовать в своих консолях следующего поколения связки из твердотельных накопителей и скоростного кеша наподобие Intel Optane. Это позволило бы применять менее быстрые и более дешёвые накопители, но при этом всё равно получить весьма высоку...

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

[Перевод] Грокаем DLR Предисловие переводчика Это скорее вольный пересказ, а не перевод. Я включил в эту статью только те части оригинала, которые имеют непосредственное отношение к внутренним механизмам работы DLR или объясняют важные идеи. Примечания будут заключены в квадратные скобки Многие...

Что делать при сбое оперативной памяти. Анамнез и методы лечения Оперативная память – такая деталь системы, которая реже всех выходит из строя. Но спонтанные перезагрузки системы с BSOD и без него, вылеты игр или программного обеспечения, некорректные результаты обработки заданий в тяжёлом софте – всё это и многое другое может быть симпто...

[Перевод] Автоматизация библиотек на Typescript Хочу сразу оговориться: эта статья не дает готового к использованию рецепта. Это скорее моя история путешествия в мир Typescript и NodeJS, а также результаты моих экспериментов. Тем не менее, в конце статьи будет ссылка на GitLab репозиторий, который вы можете посмотреть, и ...

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

[Из песочницы] Пять проблем в процессах эксплуатации и поддержки Highload ИТ систем Привет, Хабр! Десять лет я поддерживаю Highload ИТ системы. Не буду писать в этой статье о проблемах настройки nginx для работы в режиме 1000+ RPS или другие технические вещи. Поделюсь наблюдениями о проблемах в процессах, которые возникают в поддержке и эксплуатации таких с...

Делаем современное веб-приложение с нуля Итак, вы решили сделать новый проект. И проект этот — веб-приложение. Сколько времени уйдёт на создание базового прототипа? Насколько это сложно? Что должен уже со старта уметь современный веб-сайт? В этой статье мы попробуем набросать boilerplate простейшего веб-приложения...

[Перевод] Как была устроена графика NES Выпущенная в 1983 году домашняя консоль Nintendo Entertainment System (NES) была дешёвой, но мощной машиной, достигшей феноменального успеха. При помощи блока обработки изображений (Picture Processing Unit, PPU) система могла создавать достаточно впечатляющую по тем времена...

[Из песочницы] Telegram в качестве хранилища данных для IT проектов Добрый день, сегодня я хотел бы поделится с Вами проблемами и их необычными решениями, которые встретились при написании небольших IT проектов. Сразу скажу, что статья для тех, кто хоть немного разбирается в разработке телеграмм ботов, баз данных, SQL и в языке программирова...

[Из песочницы] Размышления о Agile The measure of intelligence is the ability to change. Albert Einstein Предисловие Представляю ИТ-сообществу “Размышления о Agile” или можно назвать данную статью так, “Agile, это все же философия или проектная методология?”. Цель данной статьи — обсудить с ИТ-сообществом в...

[Из песочницы] Расширяем функционал WDS: добавление возможности загрузки в UEFI Всем привет! В данной статье, описаны шаги которые необходимо выполнить, для добавления к вашему WDS, возможности загрузки в режиме UEFI. Т.е. инструкция в данной статье, предполагает, что у вас уже имеется, примерно следующая конфигурация: 1. Windows Server 2012R2 (или нове...

[Перевод] Руководство по React Native для начинающих Android-разработчиков (с примером приложения) Представляем вам перевод статьи Nikhil Sachdeva, опубликованной на hackernoon.com. Автор делится опытом разработки мобильных приложений с помощью React Native и предлагает создать свое приложение, используя этот фреймворк. Я был Android-разработчиком и довольно длительное...

Как я провел лето с C# 8 В недавнем выпуске подкаста DotNet & More Blazor, NetCore 3.0 Preview, C#8 и не только мы лишь вскользь упомянули такую животрепещущую тему, как C#8. Рассказ об опыте работы с C# 8 был недостаточно большим, что-бы посвящать ему отдельный выпуск, так что было решено подел...

Основы шаблонов С++: шаблоны функций Дисклаймер: статья была начата еще в феврале, но, по зависящим от меня причинам, закончена не была. Тема очень обширна, поэтому публикуется в урезаном виде. Что не поместилось, будет рассмотренно позже. Невозможно разбираться в современном С++, не зная, что такое шаблоны п...

Больше чем Ceph: блочное хранилище облака MCS «Flying Cart», Afu Chan Я работаю в Mail.ru Cloud Solutons архитектором и разработчиком, в том числе занимаюсь нашим облаком. Известно, что распределенной облачной инфраструктуре нужно производительное блочное хранилище, от которого зависит работа PaaS-сервисов и решений, п...

GitLab Shell Runner. Конкурентный запуск тестируемых сервисов при помощи Docker Compose Данная статья будет интересна как тестировщикам, так и разработчикам, но рассчитана в большей степени на автоматизаторов, которые столкнулись с проблемой настройки GitLab CI/CD для проведения интеграционного тестирования в условиях недостаточности инфраструктурных ресурсов ...

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

Разработчики гонки Assetto Corsa Competizione официально прекращает поддержку Nvidia RTX С момента выпуска графических карт Nvidia 20XX в конце прошлого года многие разработчики пытаются внедрить многие функции (такие как трассировка лучей или DLSS) в свои игры. Однако, Assetto Corsa Competizione (которая должна быть выпущена в следующем месяце) была одной из н...

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

Внутрянка 3D-печатной детали Всем привет!Какие планы на следующую среду?Мы приглашаем вас на наш бесплатный вебинар - "Внутрянка 3D-печатной детали", который состоится 22 мая в 19:00 по Москве. Мы разберём следующие вопросы:- Как заполнение влияет на прочность детали? - Что такое Hilbert Curve, Octagram...

Как выглядит zip-архив и что мы с этим можем сделать. Часть 2 — Data Descriptor и сжатие Продолжение статьи Как выглядит zip-архив и что мы с этим можем сделать. Предисловие Доброго времени суток. И снова в эфире у нас нетрадиционное программирование на PHP. В прошлой статье уважаемых читателей заинтересовала тема сжатия в ZIP и сохранение потоков в zip. Попробу...

Flare-On 2019 write-up -0x01 — Intro Данная статья посвящена разбору всех заданий Flare-On 2019 — ежегодного соревнования по реверс-инжинирингу от FireEye. В данных соревнованиях я принимаю участие уже второй раз. В предыдущем году мне удалось попасть на 11-ое место по времени сдачи, решив все з...

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

Бесшовная (почти) миграция между мажорными релизами PostgreSQL с помощью логической репликации У нас в True Engineering на одном проекте назрела необходимость в смене версии PostgreSQL с 9.6 на 11.1. Зачем? База данных на проекте уже объемом 1,5 Tb и растет. Перформанс – одно из основных требований к системе. А сама структура данных эволюционирует: добавляются новые...

Низкоуровневое обнаружение. Как использовать Zabbix LLD, чтобы автоматизировать мониторинг Для подписчиковСегодня я расскажу о важной части системы мониторинга Zabbix — низкоуровневом обнаружении, или Low Level Discovery. Статья познакомит тебя с базовыми сведениями об этой интересной функции и поможет автоматизировать твою систему мониторинга и вывести ее на новы...

[Перевод] Вся правда об ОСРВ. Статья #29. Прерывания в Nucleus SE Все современные микропроцессоры и микроконтроллеры содержат какие-либо механизмы прерывания. Эти механизмы необходимы для обеспечения «отзывчивости», требуемой многими приложениями. Безусловно, отзывчивость и предсказуемость являются основной целью при использовании ОСРВ, но...

Детальный обзор 3CX v16 В этой статье мы сделаем детальный обзор возможностей 3CX v16. Новая версия АТС предлагает различные улучшения качества обслуживания клиентов и повышение производительности труда сотрудников. В тоже время заметно облегчена работа системного инженера, обслуживающего систему. ...

[Из песочницы] Работа Xamarin c SDK, написанном на C Не так давно у меня был интересный проект на Xamarin Forms для нескольких платформ: Android iOS UWP MacOS Нам было необходимо создать библиотеку, которая смогла бы подключаться к нескольким нашим проектам: Xamarin.Forms, Android на Java, Cordova, а также позволять сторонн...

[Перевод] Введение в сетевые политики Kubernetes для специалистов по безопасности Прим. перев.: Автор статьи — Reuven Harrison — имеет более 20 лет опыта в разработке программного обеспечения, а на сегодняшний день является техническим директором и соучредителем компании Tufin, создающей решения для управления политиками безопасности. Рассматривая сетев...

Xbox нового поколения: 1-Тбайт SSD NVMe, 16 Гбайт GDDR6 и трассировка лучей На выставке CES 2019 было официально объявлено, что игровая консоль Xbox следующего поколения будет построена на платформе AMD. После этого в Сети стало появляться всё больше слухов о будущей новинке. Очередные слухи приписывают грядущей Xbox поддержку трассировки лучей в ре...

[Из песочницы] Универсальное DRO на базе Arduino Nano — shDRO Дамы и господа, здравствуйте. В данной статье я расскажу о разработке устройства для снятия показаний с цифровых линеек и других датчиков, размещенных на токарных и фрезерных станках. Разработка ещё не завершена и будет описано то, что сделано на данный момент. Кому интер...

[Из песочницы] Реляционно-сетевая модель данных Реляционная модель потеряла свою исключительность Требования функциональности и структурированности баз данных (БД), наиболее полно реализованные в реляционных системах, сейчас находятся под давлением новых требований. Первая проблема – низкая эффективность для больших дан...

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

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

[Из песочницы] Создание Dataflow шаблона для стриминга данных из Pub/Sub в BigQuery на базе GCP с помощью Apache Beam SDK и Python В данный момент занимаюсь задачей стриминга (и преобразования) данных. В некоторых кругах такой процесс известен как ETL, т.е. извлечение, преобразование и загрузка информации. Весь процесс включает в себя участие следующих сервисов Google Cloud Platform: Pub/Sub — сервис...

[Перевод] Инструментарий для рефакторинга баз данных: Flyway vs. Liquibase В этой статье мы поговорим о Flyway и Liquibase — двух наиболее популярных инструментах на основе Java для рефакторинга баз данных. Цель статьи — сравнить эти инструменты и выяснить, какой из них в каких случаях лучше применять. Читать дальше →

[Из песочницы] Как я сделал удобной разработку на Vue.js с server-side рендерингом Всем привет! Начну с небольшой предыстории. Свой новый проект я решил попробовать сделать на Vue.js. Мне нужен был серверный рендеринг (SSR), CSS модули, code-splitting и прочие прелести. Разумеется, для повышения производительности разработки нужна была горячая перезагр...

[Из песочницы] Как выбрать широкополосный модем для беспилотного летательного аппарата (БЛА) или робототехники Задача передачи большого объема данных с борта беспилотного летательного аппарата (БЛА) или наземной робототехники не редкость в современных приложениях. В данной статье рассматриваются критерии выбора широкополосных модемов и сопутствующие проблемы. Статья написана для разр...

PVS-Studio для Visual Studio Многие наши статьи посвящаются чему угодно, но только не самому инструменту PVS-Studio. А ведь мы очень много делаем, чтобы разработчикам было удобно пользоваться нашим инструментом. Но как раз это часто оказывается за кадром. Решил исправить эту ситуацию и рассказать об пл...

In-App Updates: ускоряем процесс обновления приложения на Android Среди многообразия инструментов, анонсированных на Android Dev Summit, особое внимание хочется уделить механизму обновления приложения In-App Updates (IAUs), который помогает разработчикам ускорить добавление новых фич, баг-фиксов и улучшений производительности. Поскольку ...

GeForce Game Ready 418.91 WHQL: технологии Ray Tracing и DLSS в Battlefield V и Metro Exodus Компания NVIDIA выпустила свежий пакет драйверов для видеокарт GeForce. Обновиться в первую очередь следует владельцам ускорителей RTX 20-ой серии и геймерам, которые играют в Battlefield V и Metro Exodus (релиз проекта вот-вот состоится). Драйвер GeForce Game Ready 418.91 ...

Лучшее программное обеспечение компьютерной сети Современная компания «Softinventive Lab» предлагает своим клиентам качественное программное обеспечение, которое позволит вести учет и контроль за работой сервера и общей рабочей сети. На сайте этой компании https://www.softinventive.ru/software-asset-management/ можно ознак...

Навигация для Android с использованием Navigation Architecture Component: пошаговое руководство Попробуем, пользуясь официальным руководством и примерами кода, построить работающую систему навигации для будущего многоэкранного приложения в соответствии со стандартами Navigation Architecture Component. Статья включает следующие разделы: Часть 1. Подготовительные работ...

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

Аудит безопасности облачной платформы MCS SkyShip Dusk by SeerLight Построение любого сервиса обязательно включает в себя постоянную работу над безопасностью. Безопасность — это непрерывный процесс, который включает в себя постоянный анализ и улучшение защищенности продукта, мониторинг новостей про уязвимости и мн...

Особенности настройки Palo Alto: SSL VPN Несмотря на все преимущества межсетевых экранов Palo Alto, в рунете не так много материалов по настройке этих устройств, а также текстов, описывающих опыт их внедрения. Мы решили обобщить материалы, накопленные у нас за время работы с оборудованием этого вендора и рассказа...

[Из песочницы] Основы реактивного программирования с использованием RxJS Часть 1. Реактивность и потоки Данная серия статей посвящена реактивности и ее применению в JS с использованием такой замечательной библиотеки как RxJS. Для кого эта статья: в основном, здесь я буду объяснять основы, поэтому в первую очередь статья рассчитана на новичков в ...

В Перми появится центр разработки решений для «умного города» Инжиниринговый центр будет заниматься разработкой новых решений для "умного дома", "умного города", платформ для управления энергоресурсами на основе Интернета вещей, 5G, LoRaWan и NB-IoT. На базе центра будут совместно работать специалисты компании, тала...

Новая система по мониторингу соцсетей в РК будет представлена осенью Работу по проведению мониторинга средств массовой информации на основании договора с профильным ведомством выполняет РГП «Центр анализа и информации», созданное при правительстве.

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

Грузовой модуль «Заря»: 20 лет на орбите Специалисты центра им. Хруничева обращают внимание на очень долгий срок работы функционального грузового блока «Заря». Об этом говорится в статье из сборника тезисов XLIII Академических чтений по космонавтике (стр. 263−265 в сборнике). «Анализ данных по расходу ресурса ра...

[Из песочницы] Бесконечный и нелепый список того, что вам нужно знать, чтобы безопасно использовать публичные сети Wi-Fi Привет, Хабр! Представляю вашему вниманию перевод статьи «The Complete, Endless, Ridiculous List of Everything You Need to Be Safe on Public Wi-Fi» автора Patrick F. Wilbur. Wi-Fi сети, вебсайты, протоколы, которые мы используем, не обеспечивают нам необходимой безопасност...

[Перевод] Новости из мира OpenStreetMap № 462 (21.05.2019-27.05.2019) Российское отделение GREENPEACE переходит OSM1 | Map data OpenStreetMap contributors, ODbL Mapbox Картографирование Кристофер Беддоу из Mapillary написал пост, в котором рассказал о двух способах использования данных Mapillary для редактирования OpenStreetMap. Джозеф Айзе...

Работа с Worker “как хочется“, а не “как можно” В этой статье будет использоваться ГРЯЗНЫЙ, небезопасный, "костыльный", страшный и т. д. метод eval. Слабонервным не читать! Сразу скажу, что некоторые проблемы удобства использования решить не удалось: в коде, который будет передан в worker, нельзя использовать замыкание. ...

Десятки тысяч закупок, прозрачных как стекло: распутываем клубок Наводить порядок в закупках крупного банка непросто. Особенно когда они разведены по двум независимым комплексным системам ERP и СЭД. При объединении ВТБ и ВТБ24 у нас также произошло объединение информационных систем, и теперь единый процесс закупок проходит через них. Что ...

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

Эволюция инфраструктуры БД: от базы и приложения на одном сервере до потоковой репликации Привет, Хабр! Меня зовут Антон Маркелов, я ops-инженер компании United Traders. Мы занимаемся проектами, так или иначе связанными с инвестициями, биржами и прочими финансовыми делами. Компания мы не очень большая, около 30 инженеров разработки, масштабы соответствующие –...

[Из песочницы] Make it True — Разработка логической игры на Unity Хочу поделиться процессом разработки простой мобильной игры силами двух разработчиков и художника. Данная статья в большей мере состоит описания технической реализации. Осторожно, много текста! Статья не являются руководством или уроком, хотя надеюсь что читатели смогут в...

[Из песочницы] Какой уровень востребованности PHP разработчиков на 1 квартал 2019 года? На рынке труда программисты PHP являются одними из наиболее востребованных специалистов. За последние 3 года их популярность среди работодателей выросла на более чем на 12%. PHP — самый распространенный язык программирования общего назначения с открытым исходным кодом, многи...

[Перевод] PostgreSQL и настройки согласованности записи для каждого конкретного соединения Перевод статьи подготовлен специально для студентов курса «Базы Данных». Интересно развиваться в данном направлении? Приглашаем вас на День Открытых Дверей, где мы подробно рассказываем о программе, особенностях онлайн-формата, компетенциях и карьерных перспективах, которые ...

Настройка IPSec Site-to-Site VPN на оборудовании Palo Alto Networks Данная статья представляет собой продолжение предыдущего материала, посвященного особенностям настройки оборудования Palo Alto Networks . Здесь мы хотим рассказать о настройке IPSec Site-to-Site VPN на оборудовании Palo Alto Networks и о возможном варианте конфигурации под...

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

Telegram бот для персонализированной подборки статей с хабра Для вопросов в стиле "зачем?" есть более старая статья — Натуральный Geektimes — делаем пространство чище. Статей много, по субъективным причинам некоторые не нравятся, а некоторые, наоборот, жалко пропускать. Хочется оптимизировать этот процесс и экономить время. В вышеупом...

Выпутываемся из сетей Tarantool. Синхронизация нод при фильтрации трафика Компания Variti специализируется на защите от ботов и DDoS-атак, а также проводит стресс- и нагрузочное тестирование. Поскольку мы работаем как международный сервис, нам крайне важно обеспечить бесперебойный обмен информацией между серверами и кластерами в режиме реального...

Как быстро открыть конкретный раздел в настройках iOS Это стало возможным с приложением «Команды» для iOS Пару недель назад на Reddit было обнаружено сообщение, в котором утверждалось, что Apple восстановила возможность запуска определенных разделов приложения «Настройки» с помощью приложения «Команды» в iOS и iPadOS ...

[Из песочницы] Константные указатели на указатели на указа… Введение Недавно ко мне подошли с вопросом, «что это и как этим пользоваться?», показав следующий код: extern "C" { void byteMaskDowngrade(byte***const byteMask, const byte *const *const && source) { // какой-то код. } // некоторые фукции. } Эт...

[Перевод] Деревья квадрантов и распознавание коллизий Эта неделя была короткой, в понедельник и вторник я продолжал работать над системой 2D-освещения. Остальное время я потратил на реализацию деревьев квадрантов (quadtree). В этой статье я поделюсь своей реализацией и мыслями, возникшими в процессе её проектирования. Во-пер...

vCloud Director Extender: миграция В этой статье будет рассмотрена процедура расширения сети предприятия в облако провайдера посредством компонента VMware NSX® Edge™ Gateway Standalone. А также детально разобраны виды миграции виртуальных машин. Прежде чем приступать к миграциям и настройке сети...

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

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения Приветствую, друзья! В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня? Каждый сервис должен работать на каком-то сервере, общаясь с желез...

VPS с видеокартой (часть 2): вычислительные возможности В предыдущей статье мы не затронули некоторые интересные аспекты использования виртуальных серверов с видеоадаптерами. Пришло время дополнить тестирование. Для использования физических видеоадаптеров в виртуальных средах мы выбрали технологию RemoteFX vGPU, которая поддер...

Who is HubEx? Как мы создали платформу для управления сервисом оборудования Иногда можно услышать такую фразу «чем старше продукт, тем он функциональнее». В век современных технологий, далеко идущего web и модели SaaS это утверждение почти не работает. Залог успешной разработки это постоянный мониторинг рынка, отслеживание запросов и требований клие...

Использование Liquibase для управления структурой БД в Spring Boot приложении. Часть 2 В предыдущей части мы разобрались с основными возможностями Liquibase и написали базовый пример Spring boot приложения, который использует Liquibase для инициализации БД. Полный код базового приложения можно увидеть тут. В этой статье мы поговорим про liquibase-maven-plugin ...

[Перевод] Блокировки в Postgres: 7 советов по работе с блокировками И снова здравствуйте! Уже в следующий вторник стартует новый поток по курсу «Реляционные СУБД», поэтому мы продолжаем публиковать полезный материал по теме. Поехали. На прошлой неделе я писал о конкурентном доступе в Postgres, какие команды блокируют друг друга, и как вы ...

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

AERODISK Engine: Катастрофоустойчивость. Часть 1 Привет, читатели хабра! Темой этой статьи будет реализация средств катастрофоустойчивости в системах хранения AERODISK Engine. Изначально мы хотели написать в одной статье про оба средства: репликацию и метрокластер, но, к сожалению, статья получилась слишком большой, поэто...

[Перевод] Утечка 809 миллионов email адресов сервиса Verifications.io из-за публично открытой MongoDB Примечание переводчика — поводом для перевода статьи стало получение уведомления Have I Been Pwned о том, что мои данные оказались в этой утечке. На прошлой неделе исследователи безопасности Bob Diachenko и Vinny Troia обнаружили незащищенную базу данных MongoDB, содержащую...

Основы архитектуры приложений на Flutter: Vanilla, Scoped Model, BLoC (оригинал статьи на английском языке опубликован на Medium) Flutter предоставляет современный реактивный фреймворк, большой набор виджетов и тулов. Но, к сожалению, в документации нет ничего похожего на руководство по рекомендуемой архитектуре приложения для Android. Не сущ...

РНР-безопасность: где и как хранить пароли. Часть 2 Всем привет! На прошлой неделе мы опубликовали первую часть данной статьи, чем вызвали нешуточный холивар. Одной из главных претензий было отсутствие в статье упоминания password_hash, как мы и обещали, вторую часть данного материала начнем как раз таки с хеширования парол...

Обзор новых возможностей nanoCAD СПДС Металлоконструкции версии 1.2 Прошлой осенью компания АО «Нанософт» представила новейшую версию вертикального приложения nanoCAD СПДС Металлоконструкции 1.2, созданную для разработки двухмерных чертежей металлических конструкций марки «КМ». Подробно познакомиться с функционалом можно в описании продукта ...

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

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

[Из песочницы] Sonoff Basic прошивка через Raspberry Pi Эта инструкция не претендует на новизну. Приведенное тут вполне гуглится (правда на английском языке), но я долго искал с чего начать и решил помочь тем, кто встает на путь общения с Sonoff. Обзоров Sonoff Basic в интернете много в том числе на русском языке, также есть ст...

Программы для непрерывного мониторинга глюкозы крови для Windows Статья больше предназначена людям, идущим по жизни с сахарным диабетом 1 типа, которые знакомы с технологией CGMS (система непрерывного мониторинга глюкозы крови) и хотят поменьше отвлекаться на контроль за уровнем глюкозы в крови. Читать дальше →

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

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

[Из песочницы] Крибле Карбле Gradle: магия автоматической сборки Разработчики облегчают жизнь людям, а Gradle — разработчикам. Если вы пишете на Android, эта статья для вас. Читайте о том, что за зверь этот Gradle (спойлер: он слон), а также — как с ним работать. Gradle — система автоматической сборки, которую используют для упрощения раб...

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

Около 200 тысяч сайтов на Magento могут лишиться поддержки Срок обслуживания первой версии CMS Magento истекает в июне 2020 года, однако подавляющее большинство владельцев интернет-магазинов все еще не перешло на актуальный релиз платформы. По разным данным, от почти 200 до 240 тыс. веб-ресурсов рискуют остаться без важных обновлени...

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

Как обеспечить доступность веб-сервиса в облаке при отказе дата-центра В статье описывается вариант обеспечения доступности развернутого в облаке веб-сервиса при возникновении сбоев в работе дата-центра. Предлагаемое решение основано на компромиссе, состоящем в частичном дублировании: в другом дата-центре разворачивается резервная система, кото...

[Из песочницы] Архитектура SPA-приложения биржи в 2019 году Приветствую, хабровчане! Читаю данный ресурс со времени основания, но время на написание статьи появились только сейчас, а значит пора поделиться своим опытом с сообществом. Начинающим разработчикам, рассчитываю, статья поможет улучшить качество проектирования, а опытным выс...

Компания «Динамика» предоставляет новый программный продукт «Dynamika-Финансовый мониторинг» «Dynamika-Финансовый мониторинг» представляет собой рабочее место специалиста Финансового мониторинга на базе программного обеспечения «Dynamika-Единое окно» (включено в Единый реестр российских программ для электронных вычислительных машин и баз дан...

Хабрамегарейтинг: лучшие статьи и статистика Хабра за 12 лет. Часть 1/2 Привет Хабр. После публикации рейтинга статей за 2017 и 2018 год, следующая идея была очевидна — собрать обобщенный рейтинг за все годы. Но просто собрать ссылки было бы банально (хотя и тоже полезно), поэтому было решено расширить обработку данных и собрать еще немного пол...

TabPy для работы с данными в ClickHouse из Tableau Выстраивание коммуникаций между брендами и людьми — то, чем мы в Dentsu Aegis Network занимаемся каждый день, и неотъемлемой частью этой работы является анализ данных. В ряде случаев этот процесс не требует data science (хотя и он у нас есть), тогда мы используем BI платформ...

Magento 2: импорт продуктов прямо в базу В предыдущей статье я описал процесс импорта продуктов в Magento 2 обычным способом — через модели и репозитории. Обычный способ отличается весьма низкой скоростью обработки данных. На моём ноутбуке выходило примерно один продукт в секунду. В данном продолжении я рассматрива...

[Из песочницы] Структуры данных в Java. Полезные методы вспомогательных классов Привет, habr! Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с ...

Добавляем ZigBee устройства в Homebridge используя CC2531 На Хабре уже встречались статьи о том, как подружить ZigBee устройства различных производителей с системами управления умным домом, без использования фирменных хабов, вроде Xiaomi Gateway. Однако, инструкции для homebridge, я не нашел не только на Хабре, но и на других прост...

Обзор Occupy White Walls. Стильно и странно Разработчики некоторых игр умею удивлять нас до глубины души и данная игра именно из таких. Мы привыкли, что в мультиплеерных играх вы сражаетесь, деретесь, копите ресурсы для постройки баз и всего в таком духе. В данном проекте ни с кем сражаться не нужно — достаточно насла...

Telegram-бот для изучения иностранных языков: от зубрежки слов к говорению Не так давно я писал уже о своем боте для изучения иностранных языков. Точнее — для расширения словарного запаса (aka зубрежки слов). В той же статье я написал, что изучение слов без контекста малопродуктивно и что лучше изучать тексты, чем просто пытаться вбить себе в голо...

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

[Из песочницы] Госзакупки: баланс между итальянской забастовкой и русской уголовкой Прочитал я на днях статью ЕЭТП о госзакупках, и даже поучаствовал в комментариях. Хочу рассказать о своем видении данного процесса. Меньше теории, больше практики. Практики будет больше со стороны поставщика, в роли которого мне приходилось выступать, но не только. Мнение...

Не так, как было обещано. Браузер Microsoft Edge на базе Chromium научился открывать страницы в Internet Explorer Компания Microsoft частично сдержала своё обещание и запустила в браузере Edge на базе Chromium режим IE mode. На новшество обратил внимание ресурс Techdows.  Данная функция была анонсирована для версии Edge на Chromium в мае на конференции Build для разработчиков...

Профессиональная помощь при создании и продвижении сайта Современный бизнес практически невозможен без использования Интернет сети. Но вести его в новом русле на профессиональном уровне могут далеко не все, поэтому будет верно доверить это дело профессионалам. Компания «Limenet» предлагает свои услуги, создание и продвижение сайто...

Следующее обновление Windows 10 повысит эффективность поиска Windows Microsoft выпустила Windows 10 20H1 Build 19025 для инсайдеров с рядом исправлений и улучшенной функцией поиска Windows. В отличие от ноябрьского обновления 2019 года, Windows 10 20H1 является следующим большим обновлением, и релиз ожидается уже весной 2020 года, но обновлен...

[Из песочницы] Мониторинг температур на предприятии Пришла задача придумать “что нибудь” для просмотра и контроля за температурами на производстве. Был уже установлен контроллер ПЛК 160 и подключены датчики температур по интерфейсу RS-485 (Википедия). Контроллер и датчики были установлены до меня. Была примерная схема подк...

Создание и обновление списков рассылки в Zimbra Collaboration OSE на основе групп и пользователей Active Directory 1. Пара слов от автора В комментариях к прошлой статье мне задали интересный вопрос об автоматическом формировании списков рассылки на основе групп безопасности AD. Есть задача – есть решение. Правда, оговорюсь сразу, решение несколько костыльное (почему – читать далее), но ...

МТС включил мониторинг спутникового ТВ ПАО "МТС" внедрило систему управления и мониторинга оборудования спутникового телевидения компании. Система позволяет быстро реагировать на внештатные ситуации на телепорте и транслирующем оборудовании, предотвращать помехи в трансляции сигнала и в работе сервисов ...

Oracle выпустила новый набор патчей Очередные обновления для продуктов Oracle содержат 219 заплат; многие из них закрывают сразу несколько уязвимостей. В то же время некоторые баги затрагивают разные продукты — например, RCE-уязвимость CVE-2019-14379 в программном пакете FasterXML jackson-databind, обеспечиваю...

Используем SQLite в Flutter Привет, Хабр! Представляем вашему вниманию перевод статьи «Using SQLite in Flutter». Сохранение данных очень важно для пользователей, так как нецелесообразно грузить одни и те же данные из сети. Разумнее будет сохранить их локально. В этой статье я продемонстрирую как с...

[Из песочницы] 10 самых распространенных ошибок Spring Framework Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Most Common Spring Framework Mistakes» автора Toni Kukurin. Spring, вероятно, один из самых популярных Java-фреймворков, а также могучий зверь для укрощения. Хотя его базовые концепции довольно легко понять, д...

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

[Из песочницы] Принцип работы протокола VRRP FHRP (First Hop Redundancy Protocol) — семейство протоколов, предназначенных для создания избыточности шлюза по умолчанию. Общей идеей для данных протоколов является объединение нескольких маршрутизаторов в один виртуальный маршрутизатор с общим IP адресом. Этот IP адрес буд...

[Перевод] 56 проектов на Python с открытым исходным кодом 1. Flask Это микро-фреймворк, написанный на Python. Он не имеет валидаций для форм и уровня абстракции базы данных, но позволяет вам использовать сторонние библиотеки для общих функций. И именно поэтому это микро-фреймворк. Flask предназначен для простого и быстрого создан...

Нейросеть научили «оживлять» портреты на основе всего одного статичного изображения Российские специалисты из Центра искусственного интеллекта Samsung AI Center-Moscow в сотрудничестве с инженерами из Сколковского института науки и технологий разработали систему, способную создавать реалистичные анимированные изображения лиц людей на основе всего нескольки...

AirPods следующего поколения с функциями «Мониторинга здоровья» появятся в первой половине 2019 года DigiTimes сообщает, что Apple выпустит AirPods следующего поколения, которые включают «функции мониторинга состояния здоровья» в первой половине 2019 года. Источники DigiTimes часто предоставляют надежную информацию, но сайт имеет смешанную репутацию, когда дело доходит до ...

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

«Коралл» и «Пламя»: раскрыты кодовые имена смартфонов Google Pixel 4 Мы уже сообщали, что Google проектирует смартфоны следующего поколения — аппараты Pixel 4 и Pixel 4 XL. Теперь появилась новая порция информации на данную тему. Сведения, обнаруженные на сайте Android Open Source Project, раскрывают кодовые имена разрабатываемых устройств. С...

В КБХА внедрена PLM-система В КБХА внедрение PLM-системы происходит в рамках проекта "Цифровые технологии проектирования и производства". Координацию работ осуществляет Управляющий комитет проекта под руководством генерального директора НПО Энергомаш (входит в Госкорпорацию "Роскосмос&qu...

Что нового в Windows 10 версии 1909 Microsoft остается молчаливой о текущем состоянии разработки Windows 10 19H2, но согласно типичному графику Microsoft, последнее обновление функции Windows 10 в 2019 году будет завершено через несколько дней.Выпуск Windows 10 версии 1909 (под кодовым названием 19H2) должен н...

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

Radar представил решение для быстрого развертывания нод биткоина и Ethereum Блокчейн-стартап Radar запустил сервис DEPLOY, позволяющий разработчикам запускать ноды сетей биткоина и Ethereum. По словам разработчиков, на базе DEPLOY могут быть созданы самые различные решения — кошельки, DeFi-сервисы, биржи и т. д. Представители Radar убеждены, что инд...

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

[Перевод] Как использовать systemd-nspawn для восстановления Linux-системы Перевод статьи подготовлен специально для студентов курса «Администратор Linux». Разбираемся со способностью systemd запускать контейнеры для восстановления корневой файловой системы поврежденной системы. До тех пор пока будут существовать системы GNU/Linux, системным ...

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

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

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

Boost.Spirit, или Добавляем «духовности» фильтрам списков Доброго времени суток, коллеги. Я по-прежнему являюсь разработчиком ISPsystem, и меня все еще зовут Дмитрий Смирнов. Некоторое (довольно продолжительное) время я никак не мог определиться с темой следующей публикации, поскольку материала за последние месяцы работы с Boost.A...

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

Сократить бэкапы на 99.5% с hashget hashget — это бесплатный, оперсорсный дедупликатор — похожая на архиватор утилита, которая позволяет значительно сократить размер бэкапов, а так же организовать схемы инкрементального и дифференциального бэкапа и не только. Это обзорная статья для описания возможностей. Само...

Производительность СУБД Postgres Pro Enterprise выросла вдвое Postgres Pro Enterprise 11 рассчитана на нагрузку в размере 10 тысяч одновременно работающих пользователей и 1 млн транзакций в секунду при размере базы данных до 150 Тбайт.

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