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

[Перевод] Пирамидальная сортировка (HeapSort) Перевод статьи подготовлен специально для студентов курса «Алгоритмы для разработчиков». Пирамидальная сортировка (или сортировка кучей, HeapSort) — это метод сортировки сравнением, основанный на такой структуре данных как двоичная куча. Она похожа на сортировку выбором, г...

Сортировки распределением В сортировках распределением элементы распределяются и перераспределяются по классам до тех пор, пока массив не отсортируется. Траффик

Как включить сортировку контактов по фамилии на iPhone и Android Активировать такой вариант сортировки просто и можно абсолютно на любом устройстве.

Сортировка фотографий по данным из EXIF + PHP Хочу поделиться своим опытом сортировки фотографий с помощью скрипта на PHP Наступает тот момент, когда фотографий становится не много, а катастрофически много. Читать дальше →

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

Лаунчер Pocophone F1 поделится с MIUI 11 самым лучшим Слух о том, что в MIUI появится возможность сортировки приложений по типу той, что применяется в лаунчере Pocophone F1, подтвердился. На скриншотах ниже видно, что такая функция уже реализована в MIUI – судя по всему, версии для разработчиков. В лаунчере будет р...

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

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

«Топологическая» сортировка графа с циклами Полное название статьи должно было звучать как «Устойчивая „топологическая“ сортировка графа с циклами за O(|V| + |e| log |e|) по времени и O(|V|) по памяти без рекурсии», но мне сказали что это перебор. Читать дальше →

BlackPlayer 2.52 BlackPlayer — англоязычный многофункциональный мультиформатный плеер с эквалайзером и разной сортировкой музыки (кроме папок). Можно менять темы оформления.

Состоялся релиз Xbox One May 2019 Update Компания Microsoft объявила о публичном релизе Xbox One May 2019 Update (версия 1905). Это довольно небольшое обновление, включающее в себя несколько новых функций. Во-первых, теперь в списке друзей отображаются иконки устройств (ПК, консоль или смартфон), чтобы вы могли бы...

WBOIT в OpenGL: прозрачность без сортировки Речь пойдёт о “Weighted blended order-independent transparency” (далее WBOIT) — приёме, описанном в JCGT в 2013 г. (ссылка). Читать дальше →

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

Поиск задач в JIRA (простым языком). Часть 2: Продвинутый поиск Структуру JQL-запросов без примеров сложно понять специалистам, не знакомым ранее с JIRA. Мы уже успели рассказать про быстрый и базовый поиск. Теперь же прейдем к самому мощному из трех методов — к продвинутому поиску. В этом режиме вы можете указывать критерии, которые ...

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

Nvidia откажется от предварительной сортировки GPU Turing Как известно, графические процессоры Nvidia Turing для видеокарт GeForce RTX выпускаются в двух модификациях, отличающихся частотным потенциалом. Кристаллы с пометкой «А» предназначены для использования в ускорителях с заводским разгоном GPU, тогда как версии...

Alphabet показала обучаемых роботов для сортировки мусора и других повседневных задач Это не первая попытка компании выйти на рынок робототехники.

Сортировка и группировка чатов Telegram: новый клиент AiGram Messenger с Искусственным интеллектом Чего не хватает в мессенджере Telegram? Больше всего, пожалуй, сортировки и группировки чатов, и хотя многие пользователи давно просят об этом разработчиков приложения, они не торопятся с реализацией данных функций. И если на платформе Android еще можно найти сторонние клие...

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

Alphabet показала универсальных обучаемых роботов для сортировки мусора и других повседневных задач Это не первая попытка компании выйти на рынок робототехники.

3D-жесты, помощник по сортировке мусора и что еще появится в MIUI 10 и MIUI 11 Сроки выхода обновления не указаны.

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

Microsoft рассказала о новых функциях в Xbox One System Update 1905 Компания Microsoft поделилась подробностями о новшествах, которые будут ждать пользователей в новом обновлении операционной системы для Xbox One с номером версии 1905. Участники программы Xbox Insider на каналах Alpha Skip Ahead и Alpha получат обновление уже завтра. Играть...

Sortify — сортировка всех вкладок браузера Chrome в два клика Вы можете расположить их в порядке открытия или сгруппировать по сайту.

Google Ads тестирует сортировку кампаний в боковой панели Нововведение заметили западные вебмастера

[Из песочницы] Визуализация времени возрождения Рошана В данной статье рассматривается перехват функций графического API на примере DirectX 9 под x64 применительно к игре Dota 2. Будет подробно рассказано, как внедриться в процесс игры, как изменить поток выполнения, приведено краткое описание внедряемой логики. В конце поговор...

Arend – язык с зависимыми типами, основанный на HoTT (часть 1) В данном посте мы поговорим о только что выпущенном JetBrains языке с зависимыми типами Arend. Этот язык разрабатывался JetBrains Research на протяжении последних нескольких лет. И хотя репозитории уже год назад были выложены в открытый доступ на github.com/JetBrains, полноц...

Ktab — менеджер закладок для Chrome с удобной сортировкой по тегам Расширение позволяет быстро найти сохранённые ссылки на нужную тему.

Silicon Lottery признаёт, что бизнес по сортировке процессоров скоро себя изживёт AMD и Intel слишком хорошо знают возможности собственных процессоров.

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

Google Data Studio получил обновлённую главную страницу и новые функции Google обновил главную страницу сервиса Data Studio, чтобы пользователям было проще находить и создавать отчёты. Предполагается, что в результате они смогут быстрее переходить от статистики к действиям. Сервис также получил несколько новых функций: Более интерактивные диагра...

«Билайн» запустил нейросеть для поиска людей Новая технология призвана сократить волонтерам «Лиза Алерт» время на просмотр и сортировку полученных снимков.

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

Полный привод в матрицах 4×4 Само умножение нехитрое, элементы строк умножаются на столбцы поэлементно и складываются. Как корректно умножать можно посмотреть здесь Языковая часть написана на Delphi, а для оптимизации код выполнен с применением встроенного 64-х битного ассемблера. Рассматриваются 4 прак...

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

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

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

Обновление Телеграма: новые права администраторов групп, отмена удаления чатов и сортировка контактов Что нового в версии мессенджера 5.2.

В YouTube Music добавили сортировку альбомов, а в Apple Music появились ежедневные плейлисты Музыкальные сервисы от Google и Apple получили небольшие обновления. В новой версии YouTube Music появилась […]

SmartMail Conf: первая конференция Почты Mail.ru по машинному обучению 23 марта в нашем офисе пройдет первая профессиональная конференция от разработчиков Почты Mail.ru — SmartMail Conf. Она будет посвящена использованию технологий машинного обучения в высоконагруженных сервисах. Машинное обучение — одно из приоритетных для нас направлений, и...

[Перевод] Распознавание источников освещения на картах окружения В этой статье представлена реализация на Python алгоритма распознавания источников освещения на картах окружения (LDR или HDR) при помощи равнопромежуточной проекции (equirectangular projection). Однако после внесения незначительных изменений её также можно использовать с п...

Сравнение AMD K6-III+, AMD Athlon XP и AMD Athlon 64 на равной частоте (600 МГц) Я давно задумал написать эту статью с целью сравнить ядра процессоров трёх поколений. Пока это только заготовка статьи, заполнение которой произойдёт по мере нахождения и сортировки накопленного материала.

YouTube Music наконец-то получает возможность сортировать альбомы и плейлисты Приложение YouTube Music наконец-то получила ​​долгожданную опцию сортировки, которая позволит пользователям сортировать плейлисты и альбомы по алфавиту или в обратном алфавитном порядке. По умолчанию для параметра сортировки установлено значение « Недавно добавлено...

Персонализация товарных рекомендаций на больших данных с помощью Vowpal Wabbit Привет! Меня зовут Никита Учителев. Я представляю отдел Research & Development компании Lamoda. Нас 20+ человек, и мы работаем над различными рекомендациями на сайте и в приложениях, разрабатываем поиск, определяем сортировку товаров в каталогах, обеспечиваем возможность...

[Из песочницы] Обзор нового javascript фреймворка Htmlix В данной статье постараюсь описать все основные возможности нового javascript фреймворка Htmlix, а также рассмотреть принцип его работы на примере создания небольшого приложения. Данное приложение — это страница простого фильтра товаров по категориям, с различными частями ш...

«Яндекс.Диск» начал автоматически сортировать видеоролики и фотоснимки В облачном сервисе «Яндекс.Диск» появилась новая функция. Речь идет об автоматической сортировке пользовательских видеороликов и фотоснимков.

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

Arend – язык с зависимыми типами, основанный на HoTT (часть 2) В первой части статьи про язык Arend мы рассматривали простейшие индуктивные типы, рекурсивные функции, классы и множества. 2. Сортировка списков в Arend 2.1 Упорядоченные списки в Arend Определим тип упорядоченных списков как пару, состоящую из списка и доказательства его ...

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

Microsoft урезала функциональность WMP в Windows 7, оставив ее прежней в Windows 8 и 10 Корпорация Microsoft продолжает продвигать свою операционную систему Windows 10, делая все, чтобы переубедить пользователей оставить прежние ОС и воспользоваться последней версией. Некоторые действия компании вызывают вопросы. На днях стало известно, что корпорация урезал...

Нейросети помогут справиться с мусором В России ведется создание уникального робота, который будет полностью автономно заниматься сортировкой мусора. Его работа будет строиться на основе нейросетей. Созданием новинки занимается «Лаборатория машинного обучения». Планируется, что работы по созданию первого образца ...

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

Как автоматически выделять цветом определенные E-mail письма в Почте на Mac Почтовый клиент Mail на Mac предлагает много возможностей для удобной сортировки входящих писем – автоматическая отправка по разным папкам, удаление спама и даже воспроизведение звука при поступлении определенных сообщений. А ещё определенные письма можно «раскрасить» в ваши...

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

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

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

Книга «Совершенный алгоритм. Основы» Привет, Хаброжители! Эта книга основана на онлайн-курсах по алгоритмам, которые Тим Рафгарден ведет на Coursera и Stanford Lagunita, а появились эти курсы благодаря лекциям для студентов, которые он читает в Стэнфордском университете на протяжении многих лет. Алгоритмы — э...

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

Как происходит утилизация старых iPhone? Apple раскрыла все секреты В 2016 году Apple впервые показала робота Liam, который разбирает старые и сломанные iPhone для последующей их переработки. Эта инициатива была продиктована заботой об окружающей среде. Но на этом Apple не остановилась — в 2018 году компания представила улучшенный вар...

[Из песочницы] Делаем простой Circuit Breaker на базе кеша в Spring Эта статья для тех, кто использует в своем приложении эффективный кеш и хочет простым добавлением 1 класса в проект добавить стабильности не только приложению, но и всему окружению. Если вы узнали себя, читайте дальше. Что такое Circuit Breaker Читать дальше →

AppMgr III 4.63 AppMgr (также известный как App 2 SD) — это приложение с абсолютно новым дизайном, включающее в себя следующие компоненты: Перемещение приложений: перемещает приложения во внутреннее или внешнее хранилище для освобождения дополнительного места Сокрытие приложений: скрывает...

[Из песочницы] SVG индикатор загрузки на Vue.js Привет! Учусь на front-end, и параллельно, в учебном проекте, разрабатываю SPA на Vue.js для back-end, который собирает данные от поискового бота. Бот нарабатывает от 0 до 500 записей, и я должен их: загрузить, отсортировать по заданным критериям, показать в таблице. Ни back...

Раскрыт секрет движения пузырьков в «Гиннесе» Группа японских физиков попыталась понять в чем тут дело и как объясняется происходящее с точки зрения науки. Ученые быстро выяснили, что настоящий «Гиннес» для наблюдений не годится — он не прозрачен. Исследователи во главе с Томоаки Ватамура (Tomoaki Watamura) из Университ...

Xamarin.Forms — простой пример Host-based Card Emulation В этой статье будем реализовывать так называемую Host-based Card Emulation (HCE, Эмуляция банковской карты на телефоне). В сети много подробных описаний этой технологии, здесь я сделал акцент именно на получении работающих приложений эмулятора и ридера и решении ряда практич...

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

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

Расчет нулевой гипотезы, на примере анализа зарплат украинских программистов Решил поделиться, да бы и самому не забывать, как можно использовать простые статистические инструменты для анализа данных. В качестве примера использовался анонимный опрос относительно зарплат, стажа и позиций украинских программистов за 2014 и 2019 год. (1) Этапы анализа...

Прошивка EMUI 10 на базе Android 10 будет кардинально отличаться от MIUI 9.1 своим интерфейсом Huawei усиленно адаптирует прошивку EMUI 9.1 для своих смартфонов и планшетов, но на горизонте уже маячит EMUI 10. Новую прошивку представят уже 9 августа на мероприятии Huawei Developer Conference 2019, но в Сети уже появились первые подробности о ней. Опубликовано не...

Обмен сайта на Битрикс и 1С: решение основных проблем В этой статье мы собрали основные проблемы обмена с 1с и простые чек-листы по их решению Статья будет полезна как программистам 1С, так и Битрикс разработчикам. Текст структурирован по принципу: проблема — варианты решения. Если есть конкретная задача, то сразу переходите п...

Mattermost. Интеграция с внешними сервисами Выбирая замену, используемой у нас системы обмена сообщениями, наткнулся на описание Mattermost, и решил попробовать. Одним из плюсов, описываемой системы, является простая интеграция со сторонними сервисами, так называемые "хуки" (outgoing и incoming hooks). Вот про настрой...

Drag-&-Drop компоненты для слепых пользователей? Вы шутите? Что объединяет Trello, Gmail, Aviasales и Google Keep? В каждом из них есть Drag-&-Drop-компоненты, которые можно перетаскивать мышкой. Использование этих компонентов делает сайты по-настоящему удобными, потому что в реальной жизни мы часто используем этот паттерн. Перед...

[Из песочницы] Знакомство с простейшей нейронной сетью и ее пошаговая реализация Как-то раз я наткнулся на книгу под названием «Создай свою нейросеть», автор которой -Тарик Рашид и после прочтения остался доволен, в отличие от многих других методичек по нейронным сетям, которые по-своему, несомненно, хороши, в этой книге все подавалось простым языком c д...

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

[Перевод] 12 возможностей ES10 в 12 простых примерах Перед вами перевод статьи из блога Carlos Caballero на сайте Medium.com. Автор расскажет нам о функциях, которые появились в версии ES10 2019 года. ES10 — это версия ECMAScript, актуальная для 2019 года. Она содержит не так много нововведений, как версия ES6, выпущенная в...

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

Xiaomi Pocophone F1, наконец, получил новую версию MIUI Прошлогодний народный флагман Xiaomi Pocophone F1 еще в конце апреля получил прошивку MIUI 10.3.4.0, которая при близком знакомстве оказалась полна багов, в результате чего Xiaomi приостановила распространение прошивки. В итоге пользователям пришлось еще какое-то в...

Еще больше Material: скриншоты нового дизайна Google Play Сколько Google не пытается, Google Play продолжает походить на «помойку», а не на магазин, делающий акцент на качественных продуктах. App Store в этом плане выше на голову. Но поисковый гигант не прекращает делать попытки. Сайт 9to5Google опубликовал скриншоты предполагаемо...

Первый программируемый компьютер на ДНК Экспериментальный протокол и реализация алгоритма сортировки на программируемом ДНК-компьютере Учёные давно ведут эксперименты с хранением информации в ДНК и с обработкой этой информации. Например, учёные из Вашингтонского университета и Microsoft недавно построили «первы...

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

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

[Из песочницы] Хранение и автоматическая сортировка фото и других файлов. Работа с файлохранилищем на базе NAS Synology Давно хотел написать про то как я храню свои файлы, как делаю бэкапы, но все никак не доходили руки. Недавно тут появилась статья, в чем-то похожую на мою но с другим подходом. Сама статья. Я уже много лет пытаюсь найти идеальный для себя метод для хранения файлов. Думаю я ...

Google работает над «Fast Share», заменой Android Beam Google работает над новым и простым способом обмена файлами между различными устройствами, включая Android и Chromebook. Google сейчас работает над альтернативой, названной «Fast Share», которая похожа на Apple AirDrop на iOS и Mac. Однако более непосредственное сравнение с...

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

OneDrive 5.23 OneDrive — облачное харнилище от Microsoft. Открывайте документы, фотографии и другие файлы с устройства под управлением Android, компьютера с Windows или Mac OS и других устройств, а также предоставляйте другим пользователям доступ к этим файлам. Работайте максимально эффек...

Идея о поиске людей в лесу Эта статья описание небольшой идеи возникшей после прочтения недавней статьи «Обыскать 314 км² за 10 часов — финальное сражение инженеров-поисковиков против леса» Сразу предупрежу, что у меня маловато опыта в радиотехнике, и совсем нет оного в поиске пропавших людей, так чт...

Ликбез по передаче параметров по значению в конструкторы и сеттеры (современный C++, примеры) Судя по комментам habr.com/ru/post/460831/#comment_20416435 в соседнем посте и развернувшейся там дискуссии, на Хабре не помешает статья, как правильно передавать аргументы в конструктор или сеттер. На StackOverflow подобного материала полно, но тут что-то я не припомню. По...

Нейросеть поможет найти пропавших людей Новая технология позволяет волонтерам "Лиза Алерт" в 2,5 раза сократить время на просмотр и сортировку полученных снимков. В дальнейшем технология будет совершенствоваться и адаптироваться к специфике поиска пропавших людей. С 2018 года отряд начал применять беспи...

Apple CarPlay обзаведётся новыми опциями Система Apple CarPlay была представлена ещё в далёком 2013 году. С тех пор эта платформа почти не обновлялась — как в дизайне, так и с функциональной точки зрения. Изменения конечно были, но их сложно назвать глобальными или масштабными. Впрочем, в iOS 13 Apple всё-та...

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

[Перевод] Тестирование не для начинающих Я большой фанат тестирования. Я пишу об этом в блог и почтовую рассылку, я обсуждаю это c другими разработчиками в свободное время, я зашел так далеко, что даже создал обучающий курс по тестированию в Go. Но несмотря на всю мою любовь к тестированию, я не рекомендую его нов...

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

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

[Перевод] Вычисление 2D-коллизий: алгоритм Гилберта — Джонсона — Кирти Я занялся изучением процессов распознавания коллизий, и это привело меня к алгоритму Гилберта — Джонсона — Кирти (Gilbert-Johnson-Keerthi, GJK). Все примеры кода в посте написаны на TypeScript. В примерах используются созданные мной структуры, которые подробно в посте не р...

Разработчики рассказали о новых функциях MIUI 10, они появятся и в MIUI 11 Xiaomi непрерывно дорабатывает оболочку MIUI и часто информирует о функциях, которые будут внедрены в интерфейсе в ближайшее время. Вот и на этот раз разработчики рассказали о нововведениях, которые появятся в MIUI 10 в ближайшее время, а потом перейдут и в MIUI 11. Так...

[Из песочницы] Когда стоит сохранять длину массива в локальную переменную в C# Читая Хабр, я наткнулся на статью "Стоит ли сохранять длину массива в локальную переменную в C#?" (которая была в разделе «лучшее»). Мне кажется глупый вопрос, не совсем корректные измерения (почему нет измерений для вложенных циклов?) и странный вывод. Длину масс...

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

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

Обновление May 2019 Update доступно для консолей Xbox One 16 мая компания Microsoft объявила о выпуске обновления для Xbox One – May 2019 Update. Это обновление имеет версию 1905, которое является обновлением апрельской версии 1904.Обновление довольно незначительное, хотя в нем есть несколько новых функций. Во-первых, вы сможете ув...

Cоздание визуальных компонентов в Unity UI. Система частиц Привет! Эта статья о создании собственных визуальных компонентов в UI на примере компонента для визуализации системы частиц в Canvas’e. Данная информация будет полезна для реализации различных эффектов в пользовательском интерфейсе, а также может использоваться для генераци...

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

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

Walmart объявил роботизации магазина Ритейлер Walmart объявил роботизации магазина, он развернет 1500 новых автономных очистителей пола "Auto-C", 300 сканеров полок "Auto-S" и дополнительные 1200 разгрузчиков "FAST" для сканирования и сортировки предметов по мере их поступления с грузовиков. Кроме того, для...

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

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

Xiaomi урезала цену на флагманский Mi 9 и добавила 9 новых функций Компания Xiaomi объявила сегодня о снижении цены на флагманский смартфон Mi 9. Начиная с 10 июля в Китае модель Xiaomi Mi 9 с 6 ГБ ОЗУ и 128 ГБ встроенной флэш-памяти можно будет купить за 407 долларов.  Это на 29 долларов меньше, чем изначальная стоимость в 436 д...

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

Peephole микрооптимизации в С++ и C# компиляторах В школе, когда мы решали уравнения или считали формулы, мы пытались их сперва сократить несколько раз, к примеру Z = X - (Y + X) сокращается в Z = -Y. В современных компиляторах это подмножество так называемых peephole-оптимизаций, в которых мы по, грубо говоря, набору шабло...

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

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

Знакомьтесь, <details> Я хочу рассказать о замечательно элементе <details> и показать несколько примеров его использования, от простых до безумных. Читать дальше →

Использование DiagnosticSource в .NET Core: практика В предыдущей статье я рассказал про механизм DiagnosticSource и на простом примере показал, как с его помощью можно перехватывать запросы в базу данных через классы SqlConnection и SqlCommand и измерять время их выполнения. В настоящее время DiagnosticSource уже используется...

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

Avalonia первая встреча Когда мы встречаем новый язык, мы пишем «Hello word», а когда встречаем новый UI, то создаем блокнот. Здесь же я хочу показать простейший пример дружбы с корссплатформенным GUI Framework AvaloniaUI. Читать дальше →

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

Google выпустила крупное обновление Google Drive для Android Регулярные обновления приложений – это то, за что Google можно только похвалить. Не проходит и недели, чтобы поисковый гигант не выпустил очередной апдейт для фирменных программ или сервисов. На этот раз повезло приложению облачного хранилища Google Drive, которое получило ...

Таблица Менделеева для iPhone Химия представляет собой главную, основную естественную науку. Химия изучает свойства элементов и образованных ими соединений, которые составляют Вселенную. Почему железо ржавеет, а олово нет? Как изменится поверхность планеты, если песок станет растворимым? Почему ра...

EMUI 10: улучшения и изменения в новой версии оболочки 9 августа будет дан старт конференции для разработчиков Huawei Developer Conference (HDC 2019). Форум созывается для того, чтобы компания рассказала о своих достижениях и поделилась планами на будущее. А еще состоится презентация новой версии фирменной надстройки EMUI 10. &n...

Microsoft полностью переработает меню Пуск в Windows 10 На днях Microsoft случайно выпустила сборку Windows 10 Build 18947 для инсайдеров каналов Fast Ring, Slow Ring и Release Preview. И это ничего, такое бывает, но стоит отметить, что данное случайное обновление включает в себя полностью обновленный дизайн меню «Пуск», который ...

iOS 13 официально представлена: темная тема, обновленные приложения, конфиденциальность Компания Apple провела традиционную конференцию для разработчиков WWDC 2019, где представила несколько новых устройств и программные новинки. Наиболее ожидаемым был анонс новой версии операционной системы iOS 13. Если не считать появления долгожданной темной темы, визуально...

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

Особенности формирования тактовых частот в PSoC 5LP При разработке аппаратной части комплекса REDD, описанного в этой статье, мы рассматривали различные варианты реализации. PSoC рассматривался, так как для него имеется готовый относительно стандартизованный, пусть и де-факто, вариант переходника USB-I2C. К сожалению, по пр...

[Из песочницы] Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис Для кого Выбор способа обмена. Описание API. Реализация API на стороне 1С. Android. Cтруктура приложения. BroadcastReceiver. Получаем данные ШК на примере АТОЛ Smart.Lite. Реализуем обмен и хранение данных. Используем Retrofit 2, Room, Coroutines. Пользовательский интерфейс...

Apex Launcher 4.5.1 Apex Launcher  — быстрый и кастомизируемый лаунчер для ICS с множеством настроек и возможностей для кастомизации. Основные особенности: Папки в меню приложений (начиная с версии 2.0.0) Выбор кол-ва рабочих столов и настраиваемая сетка  Круговая, эластичная прокрутка (...

[Из песочницы] Deploy Symfony + React приложения на AWS посредством CI Добрый день, в данной статье я покажу как развернуть Symfony 4 приложение на AWS. В официальной документации есть пример подобного процесса, однако мой вариант не столь тривиален, как загрузка zip архива с приложением. На дворе 2019, в моде docker, микросервисная архитектура...

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

Архитектура Digital Workspace на платформе Citrix Cloud Введение Статья описывает возможности и архитектурные особенности облачной платформы Citrix Cloud и набора сервисов Citrix Workspace. Данные решения являются центральным элементом и основой для реализации концепции цифровых рабочих мест (digital workspaсe) от компании Citr...

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

Firefox Send: свободный сервис обмена шифрованными файлами Вчера Mozilla довела до финальной версии один из своих экспериментальных проектов Firefox Send: простой и безопасный сервис обмена зашифрованными файлами. Поддерживаются файлы до 1 ГБ (до 2,5 ГБ после авторизации в Firefox Account). Сервис выглядит просто, но под ним рабо...

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

[Перевод] Почему простой дизайн сайта лучше с научной точки зрения Исследование, проведенное Google, имело два ключевых вывода: • Пользователю нужно всего 1/50 до 1/20 секунды, чтобы оценить, красивый сайт или нет. • «Визуально сложные» сайты оцениваются как менее красивые, чем их простые аналоги. Другими словами, исследование показало ...

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

[Перевод] Функциональный JavaScript: пять способов нахождения среднего арифметического элементов массива и метод .reduce() Методы итерирования массивов похожи на «стартовые наркотики» (это, конечно, не наркотики; и я не говорю, что наркотики — это хорошо; это — просто фигура речи). Из-за них многие «подсаживаются» на функциональное программирование. Всё дело в том, что они невероятно удобны. Кро...

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

Словарь рекламных метрик.  CTR, CPI, CPM, CPC, CR Для того, чтобы оценить качество рекламных компаний существует большое количество различных метрик. Все они давольно таки простые для понимания, но чтобы было проще ориентироваться, в данном посте будут описаны основные из них. Разберем один из стандартных процессов попа...

Патч 2.0 для Warhammer 40,000: Inquisitor – Martyr выйдет 28 мая Студия NeocoreGames готовит глобальное обновление для игры Warhammer 40,000: Inquisitor – Martyr, которое изменит боевую механику, систему прогресса и т. д. Основные нововведения патча 2.0: улучшения темпа и гибкости игрового процесса для всех трех классов полностью перера...

Искусственный интеллект Amazon обвинили в предвзятости к расе человека Разработкой системы распознавания лиц занимается практически каждая технологическая компания. Одной из них является Amazon — ее технология называется Rekognition и, по мнению специалистов из Массачусетского технологического института, она сильно уступает своим аналогам. Дел...

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

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

[Перевод] Почему американская молодёжь притворяется, что любит работать Я наблюдал за тем, как величайшие умы моего поколения работали по 18 часов в день, и хвалились этим в Instagram с тегом #hustle. Когда перформативный трудоголизм успел стать образом жизни? Ни разу в начале своей рабочей недели – ни в очереди за утренним кофе; ни в толпе лю...

[Перевод] Визуализация работы PEG парсера В прошлый раз получился простой генератор парсера PEG. Сейчас же я покажу, что на самом деле делает сгенерированный парсер при разборе программы. Я погрузился в ретро-мир ASCII-арта, в частности, библиотеку с именем «curses», которая доступна в стандартной поставке Python дл...

[Перевод] Разработка веб-серверов на Golang — от простого к сложному Пять лет назад я начал разрабатывать Gophish, это дало возможность изучить Golang. Я понял, что Go — мощный язык, возможности которого дополняются множеством библиотек. Go универсален: в частности, с его помощью можно без проблем разрабатывать серверные приложения. Эта ...

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

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание ...

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

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

SamsPcbGuide, часть 13: Использование IBIS-моделей В этой спонтанной статье решил поделиться опытом применения IBIS-моделей на примере простой задачи. Читать дальше →

[Из песочницы] Простой парсер для youtube в гугл таблицах Предыстория Появилась задача собрать данные по 2000+ youtube видео, из которых необходимо было извлечь название видео, канала и язык. Функция IMPORTXML, с помощью которой можно выполнять парсинг с сайтов, — не помогла, поскольку, как оказалось в дальнейшем, youtube хранит д...

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

Технические отличия BI систем (Power BI, Qlik Sense, Tableau) Время необходимое на прочтение 11 минут Мы и Квадрат Гартнера 2019 BI :-) Целью данной статьи является сравнение трёх ведущих BI платформ, которые находятся в лидерах квадранта Gartner: — Power BI (Microsoft) — Tableau — Qlik Рисунок 1. Gartner BI Magic Quadrant 2019 М...

И ещё один Steam Windows Client Local Privilege Escalation 0day В предыдущей серии Не так давно я опубликовал описание уязвимости для Steam. Я получил много отзывов от читателей. Valve не проронили ни слова, а HackerOne прислал огромное слезливое письмо и, в основном, молчал. В итоге меня забанили Valve на H1 — я не могу участвовать в и...

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

Алгоритмы поиска простых чисел «Самое большое простое число 232582657-1. И я с гордостью утверждаю, что запомнил все его цифры… в двоичной форме». Карл Померанс Число называется простым, если оно имеет только два различных делителя: единицу и само себя. Задача поиска простых чисел не дает покоя математи...

Искусство парсинга 2 или транслитерация собственной разметки +БОНУС: как включать классы друг в друга в C++ Привет, Хабр! Эта статья — прямое продолжение статьи Искусство парсинга или DOM собственными руками, где мы разобрали HTML-документ и построили на его основе абстрактное синтаксическое дерево (AST) с доступом к любому элементу ч...

Media365 Reader 4.3.1092 Media365 Reader — стильное и удобное приложение для чтения электронных книг Android. С этой главной новой версии вы можете открыть более 50 форматов файлов через импорт в EPUB и PDF: Преобразование AZW, azw3, CBC, CBR, CBZ, CHM, DOCX, FB2, освещено, ФПС, Mobi, PDB, PM...

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

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

Краткая история хранения данных, часть №1 — от перфокарт до пузырьковой памяти История компьютерных носителей информации за последние 300 лет.

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

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

Сравнительное тестирование PostgreSQL на FreeBSD, CentOS, Ubuntu Debian и openSUSE Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «PostgreSQL benchmark on FreeBSD, CentOS, Ubuntu Debian and openSUSE» автора Martin Kováčik. В ней рассматриваются тесты СУБД PostgreSQL 10.1 в приближенных к реальным условиям средах на различных unix-сис...

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

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

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

Генератор простых арифметических примеров для чайников и не только Привет! В этой «статье», а вернее сказать очерке, покажу очень простой способ развлечься зная самые основы latex и python. Читать дальше →

[Перевод] API IntersectionObserver и ленивая загрузка изображений Использование ленивой загрузки изображений для улучшения производительности веб-проектов — востребованная техника оптимизации. Всё дело в том, что изображения — это «тяжёлые» ресурсы, которыми переполнены современные веб-сайты. Мы уже кое-что об этом публиковали. Здесь можно...

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

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

[Из песочницы] Сохранение цвета элемента в БД Navisworks Предыстория задачи Возникла у заказчика задача, допустим, такая: Скинуть в 1С элементы модели здания. В 1С использовать эти части модели в договорах – ну, допустим, указать, что вот такие-то элементы уже построены, такие-то – только запланированы, и т.п.. В Navisworks на че...

[Перевод] Новое в Hadoop: познакомимся с различными форматами файлов в Hadoop Всем привет! Публикуем перевод статьи, подготовленный для студентов новой группы курса «Data Engineer». Если интересно узнать, как построить эффективную и масштабируемую систему обработки данных с минимальными затратами, посмотрите запись мастер-класса Егора Матешука! Неско...

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

Отправка сообщений peer-to-peer при помощи PeerJS Приветствую вас, уважаемые читатели. В предыдущей статье я рассказал, как сделать простую звонилку в браузере при помощи PeerJS. А сегодня планирую рассмотреть, как обмениваться сообщениями между двумя пользователями напрямую без задержек. Кому это интересно? Если Вы разраб...

Разработка простейшей «прошивки» для ПЛИС, установленной в Redd. Часть 2. Программный код Итак, в прошлой статье мы разработали простейшую процессорную систему, с помощью которой планируем провести тест микросхемы ОЗУ, подключённой к ПЛИС комплекса Redd. Сегодня же мы сделаем для этой аппаратной среды программу на языке С++, а также разберёмся, как эту программу ...

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

[Перевод] Публикуем приложения iOS в App Store с GitLab и fastlane Как GitLab с fastlane собирает, подписывает и публикует приложения для iOS в App Store. Недавно у нас был пост о том, как быстро собрать и запустить приложение Android с GitLab и fastlane. Здесь мы увидим, как собрать и запустить приложение iOS и опубликовать его в TestFlig...

Роботы будущего смогут обучаться сами чему угодно Подразделение Alphabet X, ранее известное как Google X, представило проект Everyday Robot. Его суть заключается в разработке «универсального самообучающегося робота». Идея состоит в том, что с помощью камер и сложных алгоритмов машинного обучения роботы будут учиться в проце...

Зачем нам на производстве AR и VR Привет! AR и VR — штуки модные, сейчас приложения с их использованием не сделал только ленивый (или тот, кому оно просто не надо). От Oculus до MSQRD, от простых игрушек, радующих детишек появлением динозавра в комнате, до прикладных приложений вида «Расставь мебель в своей ...

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

Простой слайдер изображений на CSS и Javascript Автор уже опубликовал скрипт карусели, который также использует только CSS и Javascript. Теперь давайте рассмотрим скрипт слайдера. Он отличается от карусели тем, что одновременно виден только один элемент, а не несколько, и элементы не прокручиваются, а медленно замещаются ...

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

Ломаем простую «крякми» при помощи Ghidra — Часть 2 В первой части статьи мы при помощи Ghidra провели автоматический анализ простой программы-крякми (которую мы скачали с сайта crackmes.one). Мы разобрались с тем, как переименовывать «непонятные» функции прямо в листинге декомпилятора, а также поняли алгоритм программы «верх...

[Перевод] Есть ли что-то общее у разных песен-хитов? Если выполнить вход на Spotify.me, то можно получить персонализированную сводку того, как Spotify понимает вас через музыку, которую вы слушаете на этом сайте Spotify. Это круто! Я слушаю много музыки и люблю работать с данными, поэтому это вдохновило меня на попытку анали...

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

RESTinio — это асинхронный HTTP-сервер. Простой пример из практики: отдача большого объема данных в ответ Недавно мне довелось поработать над приложением, которое должно было контролировать скорость своих исходящих подключений. Например, подключаясь к одному URL приложение должно было ограничить себя, скажем, 200KiB/sec. А подключаясь к другому URL — всего 30KiB/sec. Самым инте...

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

WISE-PaaS — облачная платформа для промышленного интернета вещей WISE-PaaS — (Platform as a Service) облачная платформа Advantech для промышленного интернета вещей, объединяющая в себе различные инструменты для сбора, обработки, и визуализации данных, автоматизации, управления устройствами и системами искусственного интеллекта и машинно...

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

[Из песочницы] Система генерации ландшафта лабиринта с улучшенным визуальным реализмом [перевод статьи Jinmo Kim] Привет, Хабр! В этой публикации я расскажу о статье автора Jinmo Kim: "Maze Terrain Authoring System in Immersive Virtual Reality for New Visual Realism". Она была опубликована 4.04.2019. Полный текст статьи можно посмотреть здесь. Краткое описание системы В стать...

[Из песочницы] Идея, как можно предоставлять сотрудникам временный доступ к ресурсам клиента, не светя лишний раз пароли Небольшая предыстория После лекции на HighLoad++ 2017. Я посмотрел этот доклад, “Как мы админа увольняли”, в записи. Докладчик сказал, что все web компании испытывает проблемы с паролями, и у меня появилась идея как это решить. Скорее всего кто-то уже сделал, но, если честно...

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

Устройства ввода-вывода ADAM-6200 Модули удаленного ввода-вывода предназначены для связи с периферийными устройствами различных типов. Это важнейший элемент построения промышленных систем. Они могут как принимать сигналы от других устройств, так и посылать управляющие сигналы на устройства, интегрируясь с ц...

[Из песочницы] Размеры Java-объектов разного типа Введение Содержит ли Java-объект: поля, объявленные в суперклассе? private поля, объявленные в суперклассе? методы? элементы массива? длину массива? другой объект (в себе)? hash-код? тип (свой)? имя (своё)? Ответы на эти (и другие) вопросы можно получить с помощью библиот...

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

[Перевод] Руководство для начинающих по серверной веб-разработке с Node.js Большую часть своей веб-карьеры я работал исключительно на стороне клиента. Проектирование адаптивных макетов, создание визуализаций из больших объемов данных, создание инструментальных панелей приложений и т. Д. Но мне никогда не приходилось иметь дело с маршрутизацией или ...

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

[Перевод] Big O Примечание. Сокращенный перевод, скорее пересказ своими словами. UPD: как отметили в комментариях, примеры не идеальны. Автор не ищет лучшее решение задачи, его цель объяснить сложность алгоритмов «на пальцах». Big O нотация нужна для описания сложности алгоритмов. Для этог...

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

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

Расчёт каннибализации на основе классического A/B-теста и метод bootstrap’а В данной статье рассмотрен метод расчёта каннибализации для мобильного приложения на основе классического A/B-теста. В данном случае рассматриваются и оцениваются целевые действия в рамках процесса реаттрибуции с рекламного источника (Direct, Criteo, AdWords UAC и прочих) по...

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

GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), я нередко получаю вопросы о том как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() ...

Разбор задач с конференции Hydra — балансировка нагрузки и in-memory хранилища Несколько дней назад случилась конференция Hydra. Ребята из JUG.ru Group пригласили спикеров мечты (Лесли Лэмпорт! Клифф Клик! Мартин Клеппманн!) и посвятили два дня распределённым системам и вычислениям. Контур был одним из трёх партнёров конференции. Мы общались на стенде,...

Как простой <img> тэг может стать высоким риском для бизнеса? Безопасность на реальных примерах всегда интересна. Сегодня поговорим об SSRF атаке, когда можно заставить сервер делать произвольные запросы в Интернет через img тэг. Итак, недавно занимался тестированием на проникновение одновременно на двух проектах, сразу на двух э...

Children of Morta — всем семейством против Скверны (Mac) В последнее время все больше разработчиков вспоминает о таком жанре как «рогалик». Однако далеко не у всех получается удачно соединить вместе процедурно генерируемые уровни, разных противников, героев с различными умениями и какой-никакой простой сюжет. Но иногда интересные ...

[Перевод] Понимание брокеров сообщений. Изучение механики обмена сообщениями посредством ActiveMQ и Kafka. Глава 1 Всем привет! Начал перевод небольшой книги: "Understanding Message Brokers", автор: Jakub Korab, издательство: O'Reilly Media, Inc., дата издания: June 2017, ISBN: 9781492049296. Из введения к книге: "… Эта книга научит вас рассуждать о системах обмена сообщениями на броке...

Во что поиграть: Alien: Blackout, Aion: Legions of War и другие новинки (январь 2019) Настоящим хитом прошедшей недели на мобильных платформах стала Alien: Blackout, но те игроки, которые не являются поклонниками хорроров тоже найдут занятие по душе. Сразу несколько масшабных MMORPG оспаривают пальму первенства и привлекают внимание геймеров. А для разнообр...

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

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

Безопасный доступ к полям регистров на С++ без ущерба эффективности(на примере CortexM) Рис. взят с сайта www.extremetech.com/wp-content/uploads/2016/07/MegaProcessor-Feature.jpg Всем доброго здравия! В прошлой статье я рассмотрел вопрос о проблеме доступа к регистрам микроконтроллера с ядром CortexM на языке С++ и показал простые варианты решения части про...

[Перевод] Процедурные паттерны, которые можно использовать с тайловыми картами Процедурная генерация используется для повышения вариабельности игр. Среди известных проектов можно упомянуть Minecraft, Enter the Gungeon и Descenders. В этом посте я объясню некоторые из алгоритмов, которые можно применять при работе с системой Tilemap, появившейся как 2D-...

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

Бэрримор, что за шум вокруг Voximplant? Внедрили веб-сокеты, сэр WebSocket — это прогрессивный стандарт полнодуплексной (двусторонней) связи между клиентом и сторонним сервисом в режиме реального времени. Веб-сокеты используются для организации непрерывного обмена данными без разрыва соединения и дополнительных HTTP-запросов. И мы рады ...

Граф Скоринг де ля Фер или исследование на тему кредитного скоринга, в рамках расширения кругозора. Ч.3 Часть третья, в которой Атос выпал в осадок, а Граф де ля Фер мудрит с алгоритмами. UPD Часть первая здесь UPD Часть вторая здесь AntipovSN and MihhaCF Вступление от авторов: Добрый день! Сегодня мы продолжаем цикл статей, посвященных скорингу и использованию в оном теории г...

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

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

[Из песочницы] Преобразование черно-белых изображений в ASCII-графику при помощи неотрицательного матричного разложения В общем случае преобразование изображения в ASCII-графику представляет собой довольно трудоемкую задачу, однако существуют алгоритмы, позволяющие автоматизировать данный процесс. В данной статье рассматривается подход, предложенный исследователями Paul D. O’Grady и Scott T....

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

Вия, Уая, Вая, Вайя – “трудности перевода”, или что скрывается за новой платформой SAS Viya (Вайя)    В сети можно найти огромное количество разнообразных статей о методах использования алгоритмов математической статистики, о нейронных сетях и в целом о пользе машинного обучения. Данные направления способствуют существенному улучшению жизни человека и светлому будущем...

Как мы промышленность и big data подружили Приходит как-то на завод специалист по цифровизации. Здесь походил, там походил, лоб наморщил и говорит: «Я знаю, как у вас тут можно кое-что оптимизировать. Экономить конкретно будете! Дайте только мне доступ во-о-от к этим данным по производству». В ответ на заводе разводя...

[Из песочницы] Имплементация кэша на Verilog В данной статье разбор простейшей реализации RAM на языке Verilog. Перед тем, как перейти к разбору кода, рекомендуется изучить базовый синтаксис языка Verilog. Здесь вы можете найти обучающие материалы. Читать дальше →

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

Фракталы в иррациональных числах Статья является продолжением моей первой статьи «Фракталы в простых числах». В предыдущей статье мы научились рисовать самоподобные паттерны с помощью взаимно простых чисел. В этой статье покажу фрактальную природу числа . Без предисловия. Под кат. Читать дальше →

Операция “Миграция”: как происходит переезд в облако DataLine Лет 7 назад самые первые проекты переезжали в наше облако просто и незатейливо. Образы виртуальных машин загружались на FTP-сервер, или их привозили на жестких дисках. Затем через специальный импорт-сервер ВМ загружали в облако. Если для клиента не проблема выключить виртуа...

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

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

Как отменить подписку на Mac? Два способа Если вы оформляли подписку на различные сервисы при помощи App Store, а сейчас хотите ее отменить, сделать это можно прямо с iPhone или iPad. Но что если вы хотите воспользоваться для решения этой задачи своим компьютером Mac? Например, если оформили пробную подписку на при...

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

Конструирующий XPath? Алгоритмический XPath? Ничего, кроме XPath Здравствуйте, уважаемые читатели. В этой публикации речь пойдет о немного нестандартных применениях такого хорошо известного формализма как XPath. Все знают, что он очень удобен для извлечения информации из XML- или HTML- или еще каких-нибудь *ML-документов (как простых текс...

Новый драйвер делает видеокарты Radeon RX 5700 XT и RX 5700 шумнее в режиме простоя Свежий графический драйвер Radeon Software Adrenalin 19.7.3 beta, как сообщается, меняет настройки работы вентиляторов видеокарт Radeon RX 5700 XT и RX 5700. Источник обнаружил, что при установке нового драйвера вентиляторы в простое вращаются на более высоких оборотах....

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

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

Как Сбербанк собирает согласие на обработку биометрии TL;DR: Сбербанк собирает согласие на сбор и обработку биометрических данных без нормального информирования своих клиентов об этом. Вступление Если говорить о биометрических данных, то пока самым интересным сектором для их применения в частном бизнесе является банкинг. Суть ...

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

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

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

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

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

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

[Перевод] Результаты бенчмарка сетевых плагинов Kubernetes (CNI) по сети 10 Гбит/с (обновлено: апрель 2019) Это обновление моего предыдущего бенчмарка, который теперь работает на Kubernetes 1.14 с актуальной версией CNI на апрель 2019 года. Во-первых, хочу поблагодарить команду Cilium: ребята помогли мне проверить и исправить скрипты мониторинга метрик. Что изменилось с ноября 20...

Как сделать из сайта приложение и выложить его в Google Play за несколько часов. Часть 2/2: Trusted Web Activity В первой части мы превратили наш сайт в Progressive Web App. Там же было сказано, что совсем недавно, 6 февраля 2019 года, Google предоставили простую возможность выкладывать PWA в Google Play при помощи Trusted Web Activity. Всё, что нужно сделать, это написать небольшую ...

Алгоритм взаимодействия сотен тысяч уникальных частиц на GPU, в GLES3 и WebGL2 Описание алгоритма логики, и разбор рабочего примера в виде техно-демки-игры WebGL2 версия этой демки https://danilw.itch.io/flat-maze-web остальные ссылки смотрите в статье. Статья разбита на две части, сначала про логику, и вторая часть про применение в игре, первая часть...

[Из песочницы] Сборка примера Augmented Faces ARCore в Unity Надеюсь, данная статья будет полезна тем, кто хочет пощупать возможности дополненной реальности ARCore в Unity, но при этом не смог найти понятной инструкции. Мы соберем пример приложения дополненной реальности Augmented Faces ARCore для Unity, оно будет отслеживать через...

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

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

Huawei: Защита плоскости управления В статье рассматриваются аспекты защиты плоскости управления маршрутизаторов Huawei NE Series. Примеры приведены для NE40e, с программным обеспечением: VRP V800R008. На других типах маршрутизаторов (например NE5k) и с другой версией ПО, конфигурация может несколько отличатьс...

Как удалять геолокационные метки с фото и видео в iOS 13? iPhone В руке с запущенным приложением Фото Если вы — не параноик, это не значит, что за вами не следят. К счастью, в Apple тоже это понимают, поэтому постоянно работают над улучшением конфиденциальности. Не стала исключением и новая версия iOS под номером 13, в которой, нес...

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

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

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

В Exim пропатчили критическую уязвимость Разработчики почтового агента Exim выпустили экстренный патч к критической уязвимости своего продукта. Как уточняется в описании, злоумышленники могли атаковать системы версий 4.80–4.92.1 с включенным TLS, чтобы выполнить на сервере сторонний код с root-привилегиями. Описани...

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

[Перевод] Нетехнологические компании начинают масштабно использовать искусственный интеллект По словам Александры Суйч Басс, искусственный интеллект распространяется за пределы технологического сектора, что повлечет серьезные последствия для компаний, работников и потребителей. Детекторы лжи не очень широко используются в бизнесе, но китайская страховая компания Pi...

Уточняем описание функций системы с помощью диаграммы Sequence Уточняем описание функций системы с помощью диаграммы Sequence (продолжение "Белки") В данной статье рассмотрим, как можно детализировать (уточнить) описание автоматизируемой функции с помощью UML Sequence Diagram — диаграммы последовательности. В данном примере я использую ...

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

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

[Перевод] Структуры данных для программистов игр: bulk data Любому программисту будет полезно понимание различных структур данных и способов анализа их производительности. Но на практике мне ни разу не пригождались АВЛ-деревья, красно-чёрные деревья, префиксные деревья, списки с пропусками, и т.д. Некоторые структуры данных я исполь...

Анализ механизмов локализации интерфейса приложений в Splunk В данной статье мы рассмотрим основной механизм локализации интерфейса приложений Splunk (в т.ч. стандартных элементов приложения Search) — gettext internationalization and localization (i18n). Читать дальше →

Домен-фронтинг на базе TLS 1.3. Часть 2 Введение В первой части статьи мы дали краткое описание механизма encrypted SNI (eSNI). Показали каким образом на его основе можно уклоняться от детектирования современными DPI-системами (на примере билайновского DPI и запрещенного РКН рутрекера), а также исследовали новый в...

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

[Перевод] Reflective Shadow Maps: Часть 2 ― Реализация Привет, Хабр! В данной статье представлена простая реализация Reflective Shadow Maps (алгоритм описан в предыдущей статье). Далее я объясню, как я это сделал и какие подводные камни были. Также будут рассмотрены некоторые возможные оптимизации. Рисунок 1: Слева направо: бе...

Тесты на Си без SMS и регистрации Недавно zerocost написал интересную статью «Тесты на C++ без макросов и динамической памяти», в которой рассматривается минималистический фреймворк для тестирования Си++ кода. Автору (почти) удалось избежать использования макросов для регистрации тестов, однако вместо них в ...

[Перевод] Рукопожатие SSH простыми словами Secure Shell (SSH) — широко используемый протокол транспортного уровня для защиты соединений между клиентами и серверами. Это базовый протокол в нашей программе Teleport для защищённого доступа к инфраструктуре. Ниже относительно краткое описание рукопожатия, которое происхо...

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

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

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

Предсказания от математиков. Разбираем основные методы обнаружения аномалий За рубежом все большую популярность набирает использование искусственного интеллекта в промышленности для предиктивного обслуживания (predictive maintenance) различных систем. Цель этой методики — определение неполадок в работе системы на этапе эксплуатации до выхода её из с...

[Из песочницы] Унификация правил валидации на примере Asp core + VueJS В статье описывается простой способ унификации правил валидации пользовательского ввода клиент-серверного приложеия. На примере простого проекта, я покажу как это можно сделать, с использованием Asp net core и Vue js. Разрабатывая веб приложения, мы как правило сталкаваемся...

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

[Перевод] Простейший JSON RESTful API на Эликсир Как реализовать на Эликсир JSON API endpoint без каких либо фреймворков? От переводчика: В статье приведён пример очень простого веб-приложения, которое можно рассматривать как Hello, World! в создании простейшего API на Эликсире. Код примера незначительно изменён для того, ...

[Из песочницы] Простой вариант реализации многопоточности на PHP Многопоточность в PHP отсутствует «из коробки», поэтому вариантов её реализации было придумано великое множество, включая расширения pthreads, AzaThread (CThread), и даже несколько собственных наработок PHP программистов. Основным минусом для меня стало слишком больше колич...

Встраиваем интерпретатор Python в java-приложение с помощью проекта Panama Пару дней назад увидел твит Брайана Гетца, но только сегодня дошли руки поиграться с примерами. Про это и хочу кратко рассказать. О проекте Panama на Хабре уже писали, поэтому просто покажу пару простых примеров того, как можно применить native binder. Читать дальше →

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

Python и FPGA. Тестирование В продолжение к первой статье, хочу на примере показать вариант работы с FPGA (ПЛИС) на python. В данной статье затрону подробнее аспект тестирования. Если фреймворк MyHDL позволяет людям, работающим на python, используя знакомый синтаксис и экосистему, заглянуть в мир FPGA,...

[Перевод] Основы внедрения зависимостей В этой статье я расскажу об основах внедрения зависимостей (англ. Dependency Injection, DI) простым языком, а также расскажу о причинах использования этого подхода. Эта статья предназначена для тех, кто не знает, что такое внедрение зависимостей, или сомневается в необходим...

[Перевод] Знакомство с Тестированием в Python. Ч. 3 Друзья, у нас для вас отличные новости. Во-первых на улице наконец-то светит солнышко, а это значит, что весна начинает полноправно вступать в свои права. Вторая новость более профильная — уже 20 марта стартует первое занятие в новом потоке по курсу «Разработчик Python», в с...

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

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

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

[Из песочницы] Способы сегментации точек в Point Clouds Введение Некоторое время назад мне потребовалось решить задачу сегментации точек в Point Cloud (облака точек — данные, полученные с лидаров). Пример данных и решаемой задачи: Поиски общего обзора существующих методов оказались неуспешными, поэтому пришлось собирать информац...

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

Обязательно ли в онлайн играх должны быть бонусы ? Почти как faraon casino – новое слово в мире азартных развлечений Бренд «Вулкан» считается самым известным в плане азартных развлечений на просторах Рунета. И для многих станет открытием факт того, что общее число официальных сайтов составляет всего несколько десятков. Остал...

Как изменилось приложение «Фото» в iOS 13 Не так давно Apple показала нам iOS 13. Обновление можно назвать эволюционным — компания медленно, но уверенно совершенствует свою мобильную операционную систему. Среди списка глобальных изменений можно выделить: новый темный режим интерфейса, менеджер загрузок, поддержка в...

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

Check Point Falcon Acceleration Cards — ускоряем обработку трафика Относительно недавно мы публиковали статью про Check Point Maestro, новую масштабируемую платформу, которая позволяет практически линейно наращивать “мощность” шлюзов Check Point. Однако это не единственная технология увеличения производительности. Еще в 2018 году были ано...

ок.tech: QATOK 11 декабря в петербургском офисе Одноклассников состоится ок.tech: QATOK – мероприятие, посвященное обеспечение качества в ИТ проектах и всему, что с этим связанно. Вместе с коллегами из OK, Mail.ru и Qameta Software поговорим про замеры производительности в Android-прилож...

[Перевод] Создание калькулятора чаевых на Kotlin: как это работает? Рассказываем, как создать простое приложение для расчета чаевых на языке Kotlin. Если точнее, то Kotlin 1.3.21, Android 4, Android Studio 3. Статья будет интересной, в первую очередь, для тех, кто начинает свой путь в разработке Android-приложений. Она позволяет понять, ч...

[Из песочницы] Как создать простой микросервис на Golang и gRPC и выполнить его контейнеризацию с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Go, gRPC and Docker» автора Mat Evans. Существует множество статей о совместном использовании Go и Docker. Создавать контейнеры, способные взаимодействовать с клиентами и между собой, очень легко. Далее следует небол...

Реализация целого типа в CPython На Хабре уже были статьи о подробностях реализации менеджера памяти CPython, Pandas, я написал статью про реализацию словаря. Казалось бы, что можно написать про обычный целочисленный тип? Однако тут не всё так просто и целочисленный тип не такой уж и очевидный. Если вам и...

IBM LTO-8 – простой способ хранить «холодные» данные Привет, Хабр! По статистике 80% данных устаревают в течение 90 дней и больше активно не используются. Весь этот массив данных нужно где-то хранить и желательно хранить с наименьшими затратами. И при этом иметь простой и быстрый доступ в случае необходимости. В последние ...

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

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

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

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

Индексаторы в C# под капотом: индексируем лучше Доу-Джонса Доброго времени суток. В данной статье я предлагаю ознакомиться с индексаторами в различных типах. Посмотрим код языка ассемблера для данных индексаторов и характеристики каждой инструкций по ее скорости. Также я предложу несколько очевидных выводов. Но что именно использова...

Пример Model-View-Update архитектуры на F# Кому-то не нравился Redux в React из-за его имплементации на JS? Мне он не нравился корявыми switch-case в reducer'ах, есть языки с более удобным pattern matching, и типы лучше моделирующие события и модель. Например, F#. Эта статья — разъяснение устройства обмена сообщения...

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

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

Подключение Micrometer для веб-приложения на Java Micrometer используется для сбора метрик приложения JVM и позволяет экспортировать данные в различные системы мониторинга. В этой статье я расскажу, как подключить Micrometer для spring web приложения и экспортировать данные в Prometheus (хороший пост о нем). Так как мое при...

[Перевод] Реализуем UI в iOS: улучшаем, ускоряем, масштабируем Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. При создании мобильных приложений большая часть времени уходит на разработку UI, и оптимизация этого процесса всегда является актуальной темой в среде разработчиков. Мой коллега А...

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

Один день из жизни модели ресторана Данная статья описывает новые компоненты фреймворка для имитационного моделирования, ранее представленного в статье «Простая система имитационного моделирования на Go». По мере расширения фреймворка появилась возможность моделировать более сложные системы, например, провест...

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

Вебинар «Визуализация отчётов с помощью Data Studio и Power BI» Мы расскажем, как визуализировать данные с помощью Google Data Studio и Power BI, рассмотрим новые функции и интересные отчеты. Обговорим, чем отличаются эти два инструмента визуализации отчетов. Отдельно расскажем вам об интеграции Google BigQuery и Power BI и покажем их во...

Микрофреймворк slim 25 апреля 2019 года свет увидела новая мажорная alpha-версия микрофреймворка Slim, а 18 мая она выросла до beta. Предлагаю по этому поводу ознакомиться с новой версией. Под катом: О новшествах фреймворка Написание простого приложения на Slim-4 О дружбе Slim и PhpStorm Чита...

Гигатрон — самодельный микрокомпьютер без процессора Микрокомпьютер Gigatron — это минималистичный 8-битный ретро-компьютер построенный по необычному дизайну: в нём нет никаких сложных логических интегральных схем, нет даже микропроцессора! Его CPU построен на классических логических элементах серии 7400, также известных как...

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

Гайд по автоматическому аудиту смарт-контрактов. Часть 2: Slither Анализатор: Slither Описание: Open-source static analysis framework for Solidity githib: https://github.com/trailofbits/slither Это статический анализатор кода, написанный на python. Он умеет следить за переменными, вызовами, и детектирует вот такой список уязвимостей. У каж...

Угловые эффекты Добрый день, дорогой читатель! Это вторая переводная статья из цикла статей о создании физического движка авторства Chris Hecker. Если Вы ещё не ознакомились с первой, то рекомендую это сделать, т. к. всё сразу станет понятнее. Большое спасибо за поддержку первого перевода: ...

На мобильных вышла бесплатная баскетбольная аркада NBA NOW Издатель Gamevil представил собственный баскетбольный симулятор под названием NBA NOW Mobile Basketball Game. Хотя, на самом деле, симуляции здесь минимум. Это всего лишь аркада, которая играется в вертикальной ориентации, а управлять в ней можно одним пальцем. Также здесь...

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

Что общего у оверклокинга и даунсайзинга? Продолжение темы современных двигателей в формате comparing incomparable. После прочтения статьи «Apple в 2019 году — это Linux в 2000 году» я подумал что по такому же принципу можно сравнить и процесс “ускорения” в компьютерном “железе” c тенденциями «разукрупнения» ДВС....

Проблемы пакетной обработки запросов и их решения (часть 2) Это продолжение статьи «Проблемы пакетной обработки запросов и их решения». Рекомендуется сначала ознакомиться с первой частью, так как в ней подробно описана суть задачи и некоторые подходы к ее решению. Здесь же мы рассмотрим другие методы. Читать дальше →

Промышленные неуправляемые коммутаторы Advantech серии EKI-2000 При построении сетей Ethernet используются различные классы коммутирующего оборудования. Отдельно стоит выделить неуправляемые коммутаторы – простые устройства, позволяющие быстро и эффективно организовать работу небольшой Ethernet-сети. В данной статье приводится подробны...

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

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

Трезвый взгляд на Helm 2: «Вот такой, какой есть...» Как и любое другое решение, Helm — пакетный менеджер для Kubernetes — имеет плюсы, минусы и область применения, поэтому при его использовании стоит правильно оценивать свои ожидания… Мы используем Helm в своём арсенале инструментов непрерывного выката. На момент написания ...

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

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

[Из песочницы] GIT изнутри: введение (перевод) Привет, Хабр! Представляю вашему вниманию перевод статьи "Git for Computer Scientists" автора Tommi Virtanen. GIT изнутри: введение От себя: Периодически почитываю статьи, как различные популярные технологии устроены под капотом, наткнулся вот на этот материал. Ста...

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

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

[Перевод] Краткое введение в Kustomize Прим. перев.: Статью написал Scott Lowe — инженер с большим стажем в ИТ, являющийся автором/соавтором семи печатных книг (преимущественно по VMware vSphere). Сейчас он работает в её дочерней организации VMware — Heptio (поглощена в 2016 году), специализируясь на облачных выч...

Учимся писать Waves смарт-контракты на RIDE и RIDE4DAPPS. Часть 1 (Многопользовательский кошелек) Всем привет! Совсем недавно Waves Labs анонсировал конкурс для разработчиков приуроченный к релизу в тестовую сеть расширения языка смарт-контрактов RIDE для децентрализованных приложений Ride4Dapps! Мы выбрали кейс DAO, так как Ventuary планирует заниматься разработкой dAp...

Apache, ViewState&Deserialisation В данной статье рассмотрим уязвимость на основе подмены сериализованного Java-объекта ViewState и метод её эксплуатации на примере web-приложения виртуальной машины с HackTheBox, использующей технологию Apache MyFaces. Читать дальше →

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

[Перевод] Как CSS Grid меняет представление о структурировании контента Каждый, кто хотя бы немного занимался созданием веб-сайтов, знает, что теги <div> — являются важным строительным блоком для контроля над макетом. HTML5 представил новые семантические элементы, чтобы помочь в этом. И хотя они являются фантастическим дополнением к языку...

Как ускорить шифрование по ГОСТ 28147-89 на процессоре Байкал-Т1 за счет SIMD-блока В статье на примере описания реализации алгоритма шифрования по ГОСТ 28147–89, построенного на сети Фейстеля, показаны возможности двухъядерного процессора BE-T1000 (aka Байкал-Т1) и проведены сравнительные испытания реализации алгоритма с помощью векторных вычислений с сопр...

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

[recovery mode] Пример контент-стратегии для продвижения интернет-магазина оружейных запчастей О роли контента в SEO спорят много, жарко и на разных уровнях: Решает ли он что-нибудь вообще? Если решает, то можно ли им пренебречь как малозначимым фактором? Если нельзя, то сколько нужно контента в знаках? Если не получается столько создать, то можно ли красть? Если не...

Чат на сайте и в выдаче Яндекс В этом тексте речь пойдёт о чатах для бизнеса от Яндекс. 3 апреля 2019 г. Яндекс объявил о том, что он запустил собственную чат-платформу. Надо сказать, что появление чатов на страницах поисковой выдачи Яндекса произошло несколько ранее, но теперь Яндекс берётся и обрабаты...

Muttная история Мой коллега обратился ко мне за помощью. Разговор получился примерно следующий: — Посмотри, мне клиентский линуксовый сервер надо срочно в мониторинг добавить. Доступы дали. — И в чём проблема? Не можешь подключиться? Или прав в системе недостаточно? — Нет, подключаюсь я но...

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

[Из песочницы] Абстрактная фабрика на пальцах Написать данную статью меня заставили две причины. Совсем недавно я познакомился с паттерном Абстрактная фабрика. Как говорится – «Не умеешь сам, научи товарища». Известно, что один из лучших способов закрепления материала – это объяснение кому-либо ранее изученного. Вторая ...

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

В Редакторе отчётов Google Ads стали доступны два новых типа диаграмм Google Ads добавил в Редактор отчётов два новых типа диаграмм: линейчатую диаграмму с накоплением и пузырьковую. Теперь в инструменте доступны 6 типов диаграмм: Линейная Гистограмма Линейчатая с накоплением Круговая Точечная Пузырьковая Новые типы диаграмм дадут дополнительн...

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

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

[Из песочницы] Dagger 2 – это элементарно (Часть 1) Содержание Введение Что такое Dependency Injection, Пример зависимости Dagger 2 – введение Первое использование Dagger 2 Введение Статья написана не продвинутым программистом для таких же, обычными и понятными словами В статье используется пример кода на Kotlin. Версия da...

Мобильная тумба для китайских станков. Или как разместить их в квартире Дамы и господа, здравствуйте! Данную статью я решил написать после прочтения комментария в статье Программирование на JavaScript для токарного станка от QwertyOFF Я слабо представляю как можно держать токарный, даже такой, в квартире, разве что у вас есть комната, которую с...

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме...

Планировщик ресурсов в HPE InfoSight HPE InfoSight – облачный сервис НРЕ, позволяющий проактивно выявлять возможные проблемы с надёжностью и с производительностью массивов HPE Nimble и HPE 3PAR. При этом сервис может также сразу рекомендовать и способы устранения возможных проблем, причём в ряде случаев устра...

Извлечение мастер-пароля из заблокированного менеджера паролей SafeInCloud После прочтения этой статьи мне захотелось провести исследование другого менеджера паролей на наличие похожих уязвимостей. В комментариях к статье пользователем Dark_Angel был задан вопрос: А что скажите насчет SafeInCloud? Читать дальше →

Про Godot, GLSL и WebGL, шейдеры используемые в мини игре Статья в основном про GLSL-шейдеры, и как я их использовал в этой мини-демке-игре. Статья разбита по такой очередности: Ссылки и краткое описание. Очень краткое описание игровой логики, и используемых возможностей Godot. Про используемые шейдеры. Еще немного про Godot, и е...

Figma — простое решение для дизайнера, сложное решение для верстальщика Если вы работаете в области web-разработки, то рано или поздно, вам суждено будет познакомиться с Figma. Смиритесь с этим фактом и начинайте изучать. Я же попробую описать данный продукт, с точки зрения повседневного пользователя. Читать дальше →

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

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

Data Version Control (DVC): версионирование данных и воспроизводимость экспериментов Эта статья — своеобразный мастер-класс «DVC для автоматизации ML экспериментов и версионирования данных», который прошел 18 июня на митапе ML REPA (Machine Learning REPA: Reproducibility, Experiments and Pipelines Automation) на площадке нашего банка. Тут я расскажу об осо...

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

Фотогалерея дня: интерфейс EMUI 10 в смартфоне Huawei P30 Pro Компания Huawei анонсировала интерфейс EMUI 10 вчера и пообещала, что в сентябре для смартфонов P30 и P30 Pro появится его бета-версия. Но источник предлагает не ждать сентября и прямо сейчас посмотреть на то, как выглядит EMUI 10 на смартфоне. В данном случае, на P30 P...

[Из песочницы] Учим компьютер различать звуки: знакомство с конкурсом DCASE и сборка своего аудио классификатора за 30 минут Введение Доброго времени суток, хабр! Накопив немного опыта в решении задач классификации и детектирования акустических событий, мы с ananaskelly решили, что готовы им с вами поделиться. Цель этой статьи — познакомить вас с некоторыми задачами и рассказать о соревновании по ...

Как я написал и издал книгу об МГУ: 10 критических ошибок Три года назад я решил сделать книгу о высотке МГУ на Ленинских горах — большую, иллюстрированную, с привлечением выпускников и т.п. История этой работы — настоящее кино (местами фарс, местами хоррор) с кучей драматических поворотов. Сверхудачный краудфандинг, широкая аудито...

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

Пробую .NET Core + Kubernetes + appmetrics + prometheus + grafana + jobs + health checks Краткое знакомство с kubernetes для разработчиков на примере разворачивания простого шаблонного сайта, с постановкой его на мониторинг, выполнением джобов по расписанию и health checks (все исходники прилагаются) — Установка Kubernetes — Установка UI — Запуск своего прил...

Prisma-CMS как движок для быстрого создания MVP Наверняка многие слышали понятие MVP (Минимально жизнеспособный продукт вики). На хабре тоже много статей про MVP, но в основном это или просто описание что такое MVP и для чего оно, или различные success и не очень story. Но я не нашел ни одной статьи, где бы описывалось на...

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

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

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

Фишеры распространяют «гадкий список» по Instagram В социальной сети Instagram появилась новая фишинговая рассылка The Nasty List. С зараженного аккаунта пользователю приходит сообщение о том, что он якобы попал в список под названием The Nasty List ( «гадкий/скверный список»). В сообщении приводится номер жертвы в...

[Перевод] Фотографии из грубых набросков: как именно работает нейросеть NVIDIA GauGAN В прошлом месяце на NVIDIA GTC 2019 компания NVIDIA представила новое приложение, которое превращает нарисованные пользователем простые цветные шарики в великолепные фотореалистичные изображения. Приложение построено на технологии генеративно-состязательных сетей (GAN), в ...

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

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

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

Категории выражений в C++ Категории выражений, такие как lvalue и rvalue, относятся, скорее, к фундаментальным теоретическим понятиям языка C++, чем к практическим аспектам его использования. По этой причине многие даже опытные программисты достаточно смутно представляют себе, что они означают. В это...

[Из песочницы] Что ты такое, замыкания в JavaScript? В этой статье я постараюсь разобрать механизм реализации замыканий в JavaScript. Для этого я буду использовать браузер Chrome. Начнем с определения: Замыкания  - это функции, ссылающиеся на независимые (свободные) переменные. Другими словами, функция, определённая в замыка...

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

Три парадигмы асинхронного программирования в Vertx Я хочу показать три парадигмы асинхронного программирования — callbacks, futures, coroutines на примере простого веб приложения на фрейморке Vertx. Код будем писать на Котлине. Допустим у нас есть приложение, которое получает некую строку в HTTP запросе, по ней ищет URL в б...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

Уникальный калькулятор MyScript Calculator 2 доступен на iOS и Android бесплатно Разработчики приложения MyScript Calculator 2 сделали все для того, чтобы сделать процесс решения примеров и уравнений максимально простым и интуитивным. Вместо того, чтобы выбирать нужные цифры и знаки на виртуальной клавиатуре, вам достаточно просто написать пальцем,...

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

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

Пишем Reverse socks5 proxy на powershell.Часть 3 История об исследовании и разработке в 3-х частях. Часть 3 — практическая. Буков много — пользы еще больше Предыдущие статьи из цикла можно найти тут и здесь =) Проверка боем Давайте теперь проверим работу нашего скрипта на практике. Для этого попробуем выбросить обратный ...

[Из песочницы] Разработка приложений на Elixir/Phoenix с помощью Docker Под катом небольшое и простое руководство, в котором показано, как использовать Docker Compose для настройки и запуска приложения Elixir/Phoenix + PostgreSQL. Читать дальше →

Как тратить меньше времени на Google Ads: 10 способов В статье рассматриваются три основных направления - автоматизация, использование общей функциональности и визуализация данных. Сообщение Как тратить меньше времени на Google Ads: 10 способов появились сначала на Searchengines.ru.

Чем мы можем Вам помочь? Чем Вы можете помочь нам? Открытый API и вход по отпечатку пальцев. Что нового в security-приложении Cloud-Clout Приложение для безопасного хранения и обмена данными в облаках Cloud-Clout открывает свой API. Добрый день, Хабр! Прежде всего, разработчики приложения хотят поблагодарить всех хабро...

Цифровые права добрались до России Путин подписал Федеральный закон от 18.03.2019 № 34-ФЗ «О внесении изменений в части первую, вторую и статью 1124 части третьей Гражданского кодекса Российской Федерации». Предполагается, что внесённые поправки обеспечат защиту прав граждан и юрлиц в цифровой экономике. За...

Не Spring Boot’ом единым: обзор альтернатив В настоящее время нет недостатка во фреймворках для создания микросервисов на Java и Kotlin. В статье рассматриваются следующие: Название Версия Год первого релиза Разработчик Helidon SE 1.1.1 2019 Oracle Ktor 1.2.1 2018 JetBrains Micronaut 1.1.3 2018 Object Compu...

Ищем пневмонию на рентгеновских снимках с Fast.ai Наткнулся на статью в блоге компании Школа Данных и решил проверить, на что способна библиотека Fast.ai на том же датасете, который упоминается в статье. Здесь вы не найдете рассуждений о том, как важно своевременно и правильно диагностировать пневмонию, будут ли нужны врачи...

Новое приложение Xbox для Windows 10 появилось в Сети Неделю назад Microsoft переименовала старое приложение Xbox в «Компаньон консоли Xbox» (Xbox Console Companion), чтобы освободить место для нового приложения Xbox под Windows 10. Теперь скриншоты приложения просочились в Сеть, благодаря пользователям WalkingCat и Vitor De Lu...

[Из песочницы] Ant-карусель на CSS и Javascript С появлением CSS3 появилась возможность совершать анимацию без использования JS-библиотек, таких, например, как jQuery. CSS3 свойство transition позволяет плавно изменять другие свойства элемента (width, height, margin, opacity и пр.), задав в качестве параметров время и зак...

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

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

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

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

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

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

10 способов, как вас могут обмануть при обмене криптовалют Во время работы по запуску мониторинга обменников криптовалют на Bits.media занялся я составлением списка рисков, с которыми сталкивался, и о которых мне писали пользователи после инцидентов. А чтоб добру не пропадать, решил оформить все в отдельную статью. Немного дополни...

Как собрать когорты пользователей в виде графиков в Grafana [+docker-образ с примером] Как мы решили задачу визуализации когорт пользователей в сервисе Promopult c помощью Grafana. Promopult — мощный сервис с большим числом пользователей. За 10 лет работы число регистраций в системе перевалило за миллион. Те, кто сталкивался с подобными сервисами, знают, что ...

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

Эх, что же стало с чемоданами?! На примере детского чемодана-самоката ZINC Грядет май, многие уезжают в первые отпуска с детьми, а потому время рассказать про презабавную, хоть и очень простую штуковину — детский «чемокат». Вообще, с чемоданами творится последнее время что-то странное… Читать дальше →

Универсальный DSL. Возможно ли это? Язык предметной области. Не перегружен конструкциями языка общего назначения. При этом позволяет всего несколькими строчками реализовать весьма сложную логику. Все это — DSL. Однако создание DSL требует от разработчика соответствующей квалификации. Регулярное использование...

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

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

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

DEV Labs 2019. Python для решения нетривиальных задач. Онлайн-митап Уважаемые коллеги! Приглашаем принять участие в онлайн-митапе серии DEV Labs, который пройдёт 20 марта и будет посвящён языку Python. Расскажем о применении Python в сфере проектирования систем «умного дома» и рассмотрим примеры решения задач по распознаванию человеческих д...

Пишем простой модуль Magisk для Android Введение Одним вечером я устал менять TTL после перезагрузки устройства и подумал как можно было бы делать это автоматически. Android же Linux и на нем должен быть аналог systemd или он сам. В процессе исследований мой взор пал на Magisk. На удивление разработать модуль для ...

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

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

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

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

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

Разработка гибридных PHP/Go приложений с использованием RoadRunner Классическое PHP-приложение — однопоточность, тяжелая загрузка (если вы конечно не пишите на микрофреймворках) и неизбежная смерть процесса после каждого запроса… Такое приложение тяжелое и медленное, но мы можем дать ему вторую жизнь гибридизацией. Чтобы ускорить — демонизи...

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

Моделирование для печати на 3D принтере в КОМПАС 3D В сегодняшней статье хотелось бы поговорить об отечественном САПР КОМПАС 3D. Не буду многословным и не буду рассказывать на сколько это мощный инструмент в умелых руках.И так как сегодня речь пойдёт о моделях для принтера, покажу как правильно сохранять модель в формате STL....

Книга «Классические задачи Computer Science на языке Python» Многие задачи в области Computer Science, которые на первый взгляд кажутся новыми или уникальными, на самом деле уходят корнями в классические алгоритмы, методы кодирования и принципы разработки. И устоявшиеся техники по-прежнему остаются лучшим способом решения таких задач...

Без дизайнера: 15 инструментов для визуализации данных Уместить 20-страничную презентацию в трех слайдах, превратить статистику в инфографику, сделать не «форму допроса», а новый канал коммуникации – всегда актуальные и часто горящие задачи. Собрали в одной статье все инструменты для их решения. Гифки, видео, карты, графики ...

[recovery mode] Расширение (плагин) SketchUp для проектирования мебели программистом При расчете стоимости новой кухни цена оказалась такой большой, что я решил сделать её сам так как это обойдется в два раза дешевле. Для тренировки решил сделать для себя рабочий стол. Достаточно быстро пришло понимание: чтобы сделать хорошую вещь нужно сделать 3D модель. Эт...

Поддержка интерфейса PCI Express 4.0 не даёт видеокартам Radeon RX 5700 преимущества в производительности Вчера в продажу поступили видеокарты Radeon RX 5700 и RX 5700 XT. На нашем сайте уже вышла первая часть обзора, кроме того, мы ознакомились с усреднёнными показателями других тематических ресурсов. Теперь же пришла пора узнать, имеет ли хоть какое-то значение для новых ...

[Из песочницы] Немного о стандартах космической связи Спутник Метеор М1 Источник: vladtime.ru Введение Эксплуатация космической техники невозможна без радиосвязи, и в этой статье я постараюсь объяснить основные идеи, которые легли в фундамент стандартов, разработанных Международным Консультативным Комитетом по космическим сис...

[Из песочницы] Антипаттерны в React или вредные советы новичкам Привет, Хабр. Ровно год прошел с момента, как я начал изучать React. За это время я успел выпустить несколько небольших мобильных приложений, написанных на React Native, и поучаствовать в разработке web-приложения с использованием ReactJS. Подводя итог и оглядываясь назад н...

[Перевод] Создаём процедурные глобусы планет Искажения, бесшовный шум и как с ними работать. Генерируем планету Один из простейших способов генерации планеты — использование шума. Если мы решим выбрать его, то у нас есть пара возможных вариантов. Давайте рассмотрим каждый и определим лучший: Шум Перлина (Perlin Noi...

OpenSceneGraph: Управление окнами и режимами отображения Введение Мы уже говорили о том, что класс osg::Camera управляет связанным с ним графическим контекстом OpenGL. Графический контекст инкапсулирует информацию о том, как и куда происходит отрисовка объектов и какие атрибуты состояния к ним применяются. Под контекстом понимают...

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

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

[Из песочницы] Oracle VM Server for SPARC для чайников (How-to) Небольшой How-to для начинающих работать с ОС Solaris и платформой виртуализации Oracle VM Server for SPARC, ранее известной как Sun Logical Domains. Oracle VM представляет из себя гипервизор XEN, установленный на ОС Solaris. Управлять гипервизором возможно из командной ...

NetGuard 2.218 NetGuard — от разработчика под ником M66B с форума XDA будет очень полезным для многих пользователей, ведь оно позволяет закрыть доступ к интернету установленным приложениям. Особенность NetGuard заключается в том, что приложение работает без root-доступа, что практически не...

[Из песочницы] Система Управления Тесткейсами QuAck — простые радости тестирования Привет, Хабр! Представляю вашему вниманию перевод статьи «QuAck — the joy of testing» автора Aziz Namazov. Сегодня я затрону непростую тему жизненного цикла программного обеспечения. Тема эта достаточно сложная и многогранна, включающая в себя все этапы, начиная от дизайн...

Подсчитываем энергобюджет радиолинии для спутника формата CubeSat Предисловие Думаю, нужно коротко пояснить, почему вдруг такая, казалось бы, тривиальная тема с подсчетом энергобюджета и почему именно спутники CubeSat? Ну, здесь всё достаточно просто: моя короткая педагогическая практика показала (мне), что тема эта хоть и базисная, но дал...

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

Google Analytics и GDPR: а нужно ли согласие пользователя? После публикации о том, как быстро проверить cookies на соблюдение GDPR, наиболее обсуждаемым оказался вопрос необходимости получения согласия пользователей при использования на сайте Google Analytics. В этой статье ознакомимся с позициями некоторых Европейских регуляторов ...

[Перевод] Логическая репликация между версиями PostgreSQL Есть разные подходы к обновлению PostgreSQL, но некоторые приводят к простою приложения. Если нужно избежать простоя, используйте для обновления репликацию — логическую или физическую (потоковую), в зависимости от сценария. В этой статье мы рассмотрим разницу между логическ...

Непростая загогулина. Краткий путеводитель по эллиптическим кривым Для подписчиковЭллиптическая криптография (Elliptic Curve Cryptography, ECC) — штука популярная, мощная и при этом не очень понятная. Мы в CloudFlare используем ее везде: от защиты HTTPS-соединений наших клиентов до передачи данных между серверами. В этой статье я попытаюсь ...

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

Прямая трансляция Go Meetup в Acronis → С программой мероприятия можно ознакомиться здесь Читать дальше →

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

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

Варианты загрузки Windows 10 November 2019 Update Подошла к концу разработка нового обновления для Windows 10, которое получило название November 2019 Update, и теперь Microsoft приступает к распространению новой версии системы среди пользователей. Но на этот раз это не крупное функциональное обновление, а скорее сервис-па...

Дискретная математика для WMS: алгоритм сжатия товаров в ячейках (часть 1) В статье мы расскажем, как решали проблему нехватки свободных ячеек на складе и о разработке алгоритма дискретной оптимизации для решения такой задачи. Расскажем о том, как мы «строили» математическую модель задачи оптимизации, и о том с какими трудностями мы неожиданно ст...

Как распилить монолит на сервисы и сохранить производительность In-memory кэшей без потери консистентности Всем привет. Меня зовут Александр, я Java-разработчик в группе компаний Tinkoff. В данной статье хочу поделиться опытом решения проблем, связанных с синхронизацией состояния кэшей в распределенных системах. Мы столкнулись с ними, разбивая наше монолитное приложение на микр...

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, ...

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

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

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

Очереди и JMeter: обмен с Publisher и Subscriber Привет, Хабр! Это сиквел моей предыдущей публикации, в котором расскажу о вариантах размещения сообщений в очередях с помощью JMeter. Мы делаем шину данных для крупной федеральной компании. Различные форматы запросов, преобразования, замысловатая маршрутизация. Для тестиров...

Обработка исключений ASP.NET при помощи IRO.Mvc.MvcExceptionHandler Если вы являетесь c# бекенд разработчиком, наверняка рано или поздно появилась необходимость найти унифицированный способ обработки исключительных ситуаций. Хотя, даже если вы довольствуетесь кодом 500 в ответе, эта статья все равно поможет улучшить ваш способ, при этом не...

Как взять сетевую инфраструктуру под свой контроль. Глава третья. Сетевая безопасность. Часть третья Эта статья является пятой в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь. Эта часть будет посвящена Campus (Office) & Remote access VPN сегментам. Может показаться, что дизайн офисной сети...

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

Представляем Tartiflette: реализацию GraphQL с открытым исходным кодом для Python 3.6+ Друзья, в преддверии майских праздников мы решили не заваливать вас сложными техническими статьями, поэтому нашли довольно интересный, а главное, легкий в прочтении материал, переводом которого с радостью делимся с вами. Данный материал мы хотим приурочить к запуску курса «W...

[Перевод] 2D-тени на Signed Distance Fields Теперь, когда мы знаем основы комбинирования функций расстояний со знаком, можно использовать их для создания крутых вещей. В этом туториале мы применим их для рендеринга мягких двухмерных теней. Если вы пока не читали моих предыдущих туториалов о полях расстояний со знаком ...

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

How to get Security Log with non-administrative user Привет Хабр! Читайте под катом как получить доступ к логу безопасности Windows без прав администратора. Эта будет не первая статья на Хабре связанная с логами Windows и наверно не самая оригинальная, но на мой взгляд я потратил слишком много времени на поиск простого решен...

Директор ООО «Вториндустрия» просит прокуратуру Стерлитамака вступиться за предприятие В пятницу (8 февраля) со стороны директора ООО «Вториндустрия» А.А.Ягафарова в адрес прокуратуры города Стерлитамак (Республика Башкортостан) было направлено заявление. В нем он обращает внимание на ситуацию, в которой неизвестными лицами были нарушены права предприятия...

[Перевод] Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие В некоторых сферах программирования нормально хотеть написать такую структуру данных или алгоритм, которые могут работать с элементами разных типов. Например, список дженериков или алгоритм сортировки, которому нужна только функция сравнения. В разных языках предложены всев...

Виртуальную реальность адаптировали для слабовидящих людей С помощью SeeingVR можно, к примеру, добавлять описание объектов, а также выделять направляющие контуры и менять цвет предметов. При этом девять инструментов могут работать с любыми типами шлемов виртуальной реальности, а другие пять необходимо интегрировать в VR-приложение ...

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

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

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

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 2 Эта статья продолжает цикл переводных заметок об OpenWhisk от автора Priti Desai. Сегодня будут рассмотрены примеры развертывания GitHub webhook, периодических сигналов, а также приведено простейшее приложение для отправки сообщений в Slack. Читать дальше →

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

[Из песочницы] Преодоление порога 32 КБ для данных в ПЗУ микроконтроллеров AVR Что может быть хуже костылей? Только неполно документированные костыли. Перед вами скриншот из последней официальной интегрированной среды разработки для 8-битных микроконтроллеров AVR, Atmel Studio 7, язык программирования Си. Как видно из столбца Value, переменная my_arra...

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

4 рецепта аппетитных маринованных опят Простые и проверенные варианты из свежих и даже замороженных грибов.

[Перевод] Создание игры «Крестики-нолики» при помощи TypeScript, React и Mocha Представляем вам перевод статьи Josh Kuttler, опубликованной на blog.bitsrc.io. Узнайте, как создать приложение «Крестики-нолики», используя React и TypeScript. Простая игра в крестики-нолики создана по модульному принципу и загружена на сайт Bit. Вы можете изменять компо...

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

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

ЧПУ выжигатель с нихромовой проволокой часть 3. Прошивки и ПО. Всем привет. Давайте продолжим. Начало здесь и здесь .  Есть группа в VK Немного отклонюсь от порядка написания, начнем с различного ПО и прошивки. Плюс в следующей статье, добавим пару плюшек с помощью двух релюшек )) Как было известно из первой статьи станок работает ...

OMower c ROS, первые шаги Первоначально, OMower разрабатывался под простые интерфейсы управления pfodApp и Modbus. Первый — это текстовый протокол высокого уровня, в котором передаются менюшки и управляющие команды, а второй — известная, но не слишком удобная в данном применении вещь, так как требует...

Cruise открывает исходный код Worldview В Cruise Automation сотни инженеров и тестировщиков работают с данными, собранными на дорогах и через симулятор. Также специальная внутренняя команда AV Tools создает приложения для визуализации, поиска и анализа этих данных. Ведь пользователи и разработчики должны понимать ...

Сотрудник Netflix создал нейросеть для поиска поцелуев в фильмах Компьютерное зрение практически идеально распознает объекты на статичных изображениях, и на данный момент проблемы в основном возникают только с видеороликами. Тем не менее разработчики продолжают создавать нейронные сети для распознавания разнообразных действий на видео, и...

[Из песочницы] Новичку only: 10 вещей, которые вы должны знать как веб-разработчик Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Things You Should Know As a Web Developer» автора Anuupadhyay. Написание тысячи строк кода и превращение в веб-сайт — одна из творческих и сложных вещей для веб-разработчиков. Если вы в этом деле новичок, увидели ...

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

[Перевод] Десять лет на удалёнке Ещё во время учёбы в колледже (вперёд, Бронкос!) мы с Алеком запустили стартап. Мы были молоды, неопытны и наивны. Наш первый проект назывался YippieMail: агрегатор электронной почты. Проще говоря, YippieMail отображает все ваши почтовые ящики (например, Hotmail, Yahoo, Gmai...

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

[Перевод] История видеопроцессоров: 1976 — 1995 годы Эволюция современных графических процессоров началась с появления в 1995 году первых 3D-карт, за которым последовало широкое распространение 32-битных операционных систем и недорогих персональных компьютеров. До этого индустрия графики в основном состояла из более прозаичн...

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

Основы формата GLTF и GLB, часть 1 Что такое GLTF и GLB? GLTF (GL Transmission Format) — это формат файла для хранения 3Д сцен и моделей, который является крайне простым в понимании (структура записана в стандарте JSON), расширяемым и легко взаимодействующим с современными веб-технологиями. Данный формат хоро...

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

Пишем краулер на раз-два 1.0 Веб-краулер (или веб-паук) — это важная составная часть поисковых систем для обхода веб-страниц с целью занесения информации о них в базы данных, в основном, для их дальнейшей индексации. Такая штука есть у поисковиков (Google, Yandex, Bing), а также у SEO-продуктов (SEMrush...

Лучшие почтовые клиенты для Android Электронная почта была изобретена еще на заре зарождения персональных компьютеров и до сих пор остается важным средством коммуникации. С развитием мобильных технологий пользоваться своим e-mail на смартфоне или планшете стало очень удобно. Только вот ящиков у каждого челове...

[Перевод] Когда стоит проверять гипотезу о не меньшей эффективности? Статья от команды Stitch Fix предлагает использовать подход клинических исследований не меньшей эффективности (non-inferiority trials) в маркетинговых и продуктовых A/B тестах. Такой подход действительно применим, когда мы тестируем новое решение, имеющее преимущества, неиз...

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

Выбираем мобильного разработчика за 5 шагов: взгляд IT-компании Всем привет! Мобильные приложения сегодня приобретают все большее значение для бизнеса, но найти надежного подрядчика – непростая задача. Мы в mobile.SimbirSoft пообщались с нашими заказчиками и выяснили, что при выборе исполнителя их всегда волнует следующий вопрос: на что ...

[Из песочницы] Liqubase и Maven Введение Liquibase представляет из себя систему управления версиями базы данных, в основном это касается структуры и в меньшей степени содержимого базы. При этом описание базы с одной стороны достаточно абстрактно и позволяет использовать на нижнем уровне различные СУБД, и с...

[Из песочницы] Архитектура компьютерных систем 1 часть. Логические вентили Логические элементы Доброго времени суток, я начинаю серию статей по написанию виртуальной машины на языке Golang. Я выбрал этот язык так как он прост для чтения и имеет в стандартной библиотеке уже необходимые функции, которые пригодятся в дальнейшем. Эта статья не несёт в...

[Из песочницы] Новый проект братьев Дуровых: Telegram Open Network Приближается момент полномасштабного запуска самого ожидаемого криптопроекта, который действительно может изменить мир. К началу ноября сеть TON будет запущена и все смогут в полной мере оценить её достоинства и начать использовать по назначению: разработчики — создавать пол...

Оптимизация Unity UI В этой статье разбираются вопросы оптимизации UI-элементов проектов, сделанных в ​Unity​. На основании информации из официальной документации и личного опыта я постарался наглядно объяснить принципы работы UI-элементов. Также здесь вы найдёте практические советы, которые по...

Визуализация дерева приматов Станислав Дробышевский в начале года опубликовал подробное дерево происхождения приматов. Версия в ПДФ Комментаторы во «Вконтакте» просили интерактивную версию (1, 2, 3, 4), потому что её удобнее изучать и проще обновлять при появлении новых данных. Мы с Олей Моховой решил...

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

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

Spring Annotations: магия AOP Сакральное знание о том, как работают аннотации, доступно далеко не каждому. Кажется, что это какая-то магия: поставил над методом/полем/классом заклинание с собачкой — и элемент начинает менять свои свойства и получать новые. Сегодня мы научимся волшебству аннотаций на п...

[Перевод] Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важен Пишем API для React компонентов,...

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

40 миллионов HTTP запросов/мин на голом Си Введение I/O реактор (однопоточный цикл событий) — это паттерн для написания высоконагруженного ПО, используемый во многих популярных решениях: Node.js Tor Transmission Chromium Memcached ... В данной статье мы рассмотрим подноготную I/O реактора и принцип его работы, нап...

Реверс-инжиниринг бинарного формата на примере файлов Korg SNG. Часть 2 В прошлой статье я описал ход рассуждений при разборе неизвестного двоичного формата данных. Используя Hex-редактор Synalaze It!, я показал как можно разобрать заголовок двоичного файла и выделить основные блоки данных. Так как в случае формата SNG эти блоки образуют иерар...

Asana: лайфхаки и советы по работе от команды Теплицы Как сэкономить время, работая с проектами в Asana, в чем преимущества Premium-версии и как НКО могут приобрести ее со значительной скидкой? В нашей статье – обзор возможностей для тех, кто только знакомится с сервисом, а также советы от руководителя Теплицы Алексея Сидоренк...

Новая (а может и нет) кинематика 3D принтера THOne-Bot Что в переводе означает "Две руки в одну".Сразу скажу, если такое уже есть (Кинематика SCARA не в счет), не нужно кричать, что я лошара и не умею пользоваться интернетом, я не претендую на звание изобретателя велосипеда) Дайте ссылку, мне интересно будет посмотреть.Показ раб...

[Из песочницы] Как быстро увеличить размер диска на сервере Всем привет! Недавно столкнулся с простой на первый взгляд задачей — увеличить «на горячую» размер диска на сервере Linux. Описание задачи Есть сервер в облаке. В моем случае, это Google Cloud — Compute Engine. Операционная система — Ubuntu. Сейчас подключен диск размером 3...

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

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

[Перевод] Способы тестирования программного обеспечения Всем привет! Уже на следующей неделе мы запускаем новый поток по курсу «Автоматизация веб-тестирования». Этому и будет посвящен сегодняшний материал. В этой статье рассматриваются различные способы тестирования программного обеспечения, такие как модульное тестирование (uni...

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

[Перевод] Новшества JavaScript: итоги Google I/O 2019. Часть 2 Сегодня мы публикуем вторую часть перевода материала о новшествах JavaScript. Здесь мы поговорим о разделителях разрядов чисел, о BigInt-числах, о работе с массивами и объектами, о globalThis, о сортировке, об API интернационализации и о промисах. → Первая часть Читать да...

Как не промахнуться с бюджетом на серийное производство корпусов: 20 примеров из практики бюро по инженерному дизайну Публикация всего двух статей о том, как самостоятельно оценить стоимость производства корпуса для прибора (первая и вторая) подняла просто волну запросов из серии «А вот сколько будет стоить наш корпус при тираже 5-100-1000- ∞ штук?» Как выясняется в ходе общения, большин...

[Перевод] Руководство по логированию в Node.js Первая задача, с которой чаще всего сталкиваются разработчики, начинающие программировать на JavaScript, – как регистрировать события в журнале консоли с помощью метода console.log. В поисках информации по отладке кода на JavaScript вы найдёте сотни статей в блогах, а также...

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

[Перевод] Обмен данными между React-компонентами с использованием библиотеки RxJS Перед вами перевод статьи Chidume Nnamdi, опубликованной на blog.bitsrc.io. Перевод публикуется с разрешения автора. Появление библиотеки RxJS открыло массу новых возможностей в мире JS. Цель RxJS — достигать многого, используя небольшое количество кода. Прочитав эту стат...

Задачи с собеседований: найти пропущенное число в массиве Один из наиболее часто задаваемых вопросов на собеседованиях – найти пропущенное число в массиве на Java, C # или любом другом языке. Такого рода вопросы задаются не только в небольших стартапах, но и в некоторых крупнейших технических компаниях, таких как Google, Amaz...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 21. Дистанционно-векторная маршрутизация RIP Тема сегодняшнего урока – RIP, или протокол маршрутной информации. Мы поговорим о различных аспектах его применения, о его настройке и ограничениях. Как я уже говорил, тема RIP не входит в учебный план курса Cisco 200-125 CCNA, однако я решил посвятить этому протоколу отдель...

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

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

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

[Перевод] Неизменяемых коллекций в Java не будет – ни сейчас, ни когда-либо Всем привет! Сегодня вашему вниманию предлагается перевод вдумчиво написанной статьи об одной из базовых проблем Java — изменяемости, и о том, как она сказывается на устройстве структур данных и на работе с ними. Материал взят из блога Николая Парлога (Nicolai Parlog), чей...

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