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

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

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

[Перевод] Процедурная генерация планет От переводчика: Представляю вашему вниманию статью авторства Andy Gainey, в прошлом независимого разработчика игровых инструментов, ныне сотрудника Paradox Development Studio. На мой взгляд, автор играючи создал один из лучших процедурных генераторов планет с открытым исход...

[Перевод] Процедурные дороги в Houdini и Unity Для моей постапокалиптической игры Frameshift мне нужно было заполнить очень большой открытый мир разнообразными городами. В нашей команде всего 3 человека, поэтому я, разумеется, воспользовался процедурной мощью Houdini! Раньше, когда не знал о Houdini, я писал на C# соб...

[Перевод] Unity: бесконечный процедурно генерируемый город, получаемый при помощи алгоритма WFC (коллапс волновой функции) Привет, Хабр! Как законодатели мод по теме Unity на российском рынке предлагаем вам почитать интересное исследование о практическом использовании алгоритма WFC (Wave Function Collapse), построенного по образу и подобию известного принципа квантовой механики и очень удобного...

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

[Перевод] Как разработчики процедурно создали кучу «мусорных» мобильных игр и заработали 50 тысяч долларов Два инди-разработчика рассказывают, как использовали автоматизацию, один аккаунт Google Play и единственный шаблон игры про слот-машины для создания и публикации более тысячи приложений. На проводимой в этом году Game Developers Conference выступили два разработчика игр, с...

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

Пиксельные отступы в текстурной развертке Представляем четвертую статью нашего цикла о работе с 3D-моделями в Unity. Предшествующие статьи: «Особенности работы с Mesh в Unity», «Unity: процедурное редактирование Mesh», «Импорт 3D-моделей в Unity и подводные камни». В предыдущей статье мы упомянули о проверке тексту...

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

1,500 игровых автоматов входят в бар: дело в количестве, а не качестве На проводимой в этом году Game Developers Conference выступили два разработчика игр, способные написать новую главу романа-антиутопии о будущем: они рассказали историю о том, как заработали деньги, позволив делать всю работу роботам. В их случае этой работой была процедурная...

[Перевод] Цепи Маркова для процедурной генерации зданий Примечание: полный исходный код этого проекта можно найти [здесь]. Так как он является частью более масштабного проекта, я рекомендую смотреть коммит на момент выпуска этой статьи, или файл /source/helpers/arraymath.h, а также /source/world/blueprint.cpp. В этой статье я х...

[Перевод] Пространство генерации и пространство возможностей В этом туториале я расскажу о двух терминах, которые используются мной для описания процедурных генераторов: пространство генерации (generative space) и пространство возможностей (possibility space). Мы дадим определения этим двум терминам, а затем рассмотрим интерактивные п...

Процедурно генерируемая Remnant: From the Ashes обзавелась новым трейлером Не сгенерированным процедурно, а то вышло бы забавно.

[Перевод] Создание процедурного генератора головоломок В этом посте описывается генератор уровней для моей игры-головоломки Linjat. Пост можно читать и без подготовки, но он легче усвоится, если сыграть в несколько уровней. Исходный код я выложил на github; всё обсуждаемое в статье находится в файле src/main.cc. Примерный план ...

На мобильных вышел экшен-рогалик Restless Dungeon Разработчик Moustache Banana выпустил слешер Restless Dungeon для iOS и Android. В этой игре вам предстоит исследовать процедурно генерируемые подземелья, уничтожая разнообразных врагов: гоблинов, демонов, призраков, рыцарей и других. В процессе нужно будет собирать ново...

OpenSceneGraph: Процедурная анимация геометрии и атрибутов состояния Введение Говоря о приемах программирования, специфичных для OSG в прошлый раз мы говорили о механизме обратных вызовов (Callback) и его реализации в движке. Настало время посмотреть на то, какие возможности дает нам применение этого механизма для управления содержимым трехм...

[Перевод] Генерация подземелий в Diablo 1 Diablo 1 — это классический roguelike 1996 года в жанре hack and slash. Это была одна из первых успешных попыток познакомить широкие массы с roguelike, которые до этого имели нишевую графику в виде ASCII-арта. Игра породила несколько сиквелов и множество имитаций. Она извес...

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

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

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

CD Projekt RED: в Cyberpunk 2077 не будет процедурно сгенерированных элементов Ведущий аниматор кинематографических сцен ролевого шутера Cyberpunk 2077 Мацей Петрас (Maceij Pietras) рассказал порталу JeuxActu о том, что вся игра создаётся вручную. Ни один из элементов не будет процедурно сгенерирован. Это всё то же самое интервью, из кото...

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

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

[Перевод] Как генерируются подземелья в Enter The Gungeon В последнее время я много играл в Enter The Gungeon. Это потрясающая, ужасно сложная игра в жанре bullet hell, сильно напомнившая мне Binding of Isaac. Но чем больше я играл в неё, тем больше осознавал малозаметную гениальность дизайна подземелий. Существует много процедур...

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

[Перевод] Нечёткий мир шума Перлина Что такое шум Перлина? Шум Перлина придуман в 1983 году Кеном Перлином (получившим за это достижение премию Американской Академии кинематографических искусств и наук). Видите ли, в те времена все стремились к фотореализму, но его всегда не хватало. Кен Перлин придуман этот ...

Генерация документов с помощью ONLYOFFICE DocumentBuilder Привет, Хабр. Я хочу рассказать об утилите под названием DocumentBuilder, которая позволяет генерировать документы, таблицы и презентации, а также показать, как можно его использовать для решения ваших задач, на примере создания резюме из шаблонов. Работает билдер следующи...

В Epic Games Store бесплатно раздают игру от создателей BioShock В Epic Games Store началась раздача City of Brass, которую сделали разработчики BioShock. Это экшн от первого лица, релиз игры состоялся в 2018 году. Бесплатно получить продукт можно до 6 июня. События City of Brass происходят во вселенной, вдохновленной сказками «Тысяча и...

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

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

Вейвлет — анализ.Часть 1 Введение Рассмотрим дискретное вейвлет – преобразования (DWT), реализованное в библиотеке PyWavelets PyWavelets 1.0.3. PyWavelets — это бесплатное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT. При обработке данных на компьютере может выполня...

В Apple Arcade выйдет двухмерный платформер Crossy Road Castle 5 лет назад студия Hipster Whale выпустила Crossy Road — современную версию Frogger: адаптированную для мобильных платформ и с ненавязчивыми внутриигровыми покупками. Теперь студия решила выйти и в Apple Arcade. Но там уже есть свой Frogger, поэтому новенькая Crossy Road Cas...

Введение в контекстно-ориентированное программирование на Kotlin Это перевод статьи An introduction to context-oriented programming in Kotlin В этой статье я постараюсь описать новое явление, которое возникло как побочный результат стремительного развития языка Kotlin. Речь идет о новом подходе к проектированию архитектуры приложений и б...

Flank That Tank! 1.21 Танковый бой в полностью разрушаемом мире.  Все в игровом мире можно разбить на куски, используя процедурные алгоритмы уничтожения.  Используйте виртуальный джойстик для маневрирования своего танка и нажмите, чтобы прицелиться и выстрелить.  Играйте на первых шес...

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

Сюжетный экшен-рогалик Lovecraft's Untold Stories вышел на Android Дорогая, но лишенная внутриигровых покупок и прочих отвлекающих факторов Lovecraft's Untold Stories вышла на iOS еще в начале лета. На этих выходных студия Blini Games выпустила ее и в Google Play. По традиции платформы авторы предоставили и демо-версию, которая содержит 2 у...

Рецепты Python: преобразование из HTML и URL в PDF и PS Для приготовления преобразования из HTML и URL в PDF и PS нам понадобится сам python, генератор htmldoc и плагин pyhtmldoc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальный репозитории. Можно также воспользоваться...

Panzer Warfare 1.22 В эту игру можно играть в метро, автобусе, самолете. Игрок ведет ожесточенные бои в танках на мобильных телефонах и планшетах. Вы можете выбрать из множества танков современной эпохи и улучшать их боевые способности. ОСОБЕННОСТИ ИГРЫ •Большой выбор танков и оружия...

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

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

Динамическая генерация DAG в Airflow Всем привет! Меня зовут Антон, в Ростелекоме я занимаюсь разработкой центрального хранилища данных. Наше хранилище состоит из модулей, в качестве оркестратора которых используются несколько инстансов Informatica, часть из которых мы хотим перевести на Airflow в рамках перехо...

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

Новый мрачный платформер Microbian в стиле Limbo вышел на iOS Игры Limbo и INSIDE любят не только за их фирменный визуальный стиль, но именно благодаря ему их мгновенно узнают. Разработчик Victor Garcia решил повторить этот стиль в в своем дебютном проекте Microbian. В Microbian вам предстоит сыграть за микроба, который пытается сбежа...

Разработан симулятор, который сделает беспилотники дешевле и безопаснее Innopolis Simulator для автономных подвижных объектов, разработанный на основе Unity 3D, может использоваться разработчиками и конечными пользователями в целях тестирования, отладки и образовательной деятельности. Симулятор отрабатывает различные сценарии на дороге, имитируе...

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

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

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

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

[Из песочницы] Преобразование Фурье. The Fast and the Furious Зачастую при разработке алгоритмов мы упираемся в предел вычислительной сложности, который, казалось бы, преодолеть невозможно. Преобразование Фурье имеет сложность , а быстрый вариант, предложенный около 1805 года Гаусом1 (и переизобретенный в 1965 году Джеймсом Кули и Джон...

В Epic Games Store бесплатно раздают игры Nuclear Throne и RUINER Сервис цифровой дистрибуции Epic Games Store радует своих пользователей очередной бесплатной раздачей игр. На этой неделе предлагаются проекты Nuclear Throne и RUINER. Nuclear Throne – это игра в жанре рогалик с видом сверху. Целью игрока является пройти 15 процедурно сгенер...

Генерация приложения на React с бэкэндом на GraphQL за считанные минуты Мы добавили новую экспериментальную возможность в 8base CLI (Command Line Interface), которая генерирует готовое приложение на React из вашей модели данных. Это очень удобно для начала работы с GraphQL и React, а также для быстрого создания пользовательского интерфейса прило...

Космическое приключение Holy Potatoes! We're In Space?! выйдет на PS4 и Switch на этой неделе Компания Rising Star Games и студия Daylight объявили о том, что Holy Potatoes! We’re In Space?! выйдет на PlayStation 4 15 января, а 17 января заглянет на Nintendo Switch. Holy Potatoes! We’re In Space?! — это приключенческая игра с элементами с...

[Перевод] Доступное объяснение алгоритма коллапса волновой функции Алгоритм коллапса волновой функции (Wavefunction Collapse Algorithm) учит компьютер импровизировать. На входе он получает архетипичные данные и создаёт процедурно генерируемые данные, похожие на исходные. (Источник) Чаще всего он используется для создания изображений, но ...

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

[Из песочницы] Неявные (implicit) параметры и преобразования в Scala Пробежавшись по предыдущим статьям на Хабре, тыц и тыц так и не удалось в быстром режиме понять, что делает неявность (implicit) в Scala. Попробуем разобраться вместе. Итак, implicit в Scala позволяют избежать вызывания методов или явных ссылок на переменные, и взамен это...

Анонсировано приключение Shovel Knight Dig, оно может выйти на мобильных Студия Yacht Club Games провела презентацию, во время которой анонсировала сразу несколько проектов. Но нас больше всего интересует совершенно новое приключение Shove Knight Dig, которое с большой долей вероятности может выйти на мобильных, хотя пока что анонс был сделан тол...

Стартовала предварительная регистрация на ролевую Aurora Legend Aurora Legend – это грядущая RPG от студии Rastar Games. Ее действие происходит в фэнтезийном мире, где вы станете командующим сотни героев. Ваша задача — развивать стратегию, чтобы максимально эффективно использовать силу каждого из персонажей. Разработчики приготовили бол...

Метод дублирования. 11 примеров из конструкции ДВС Дублирование (от французского doubler удваивать) в системе это вид резервирования, имеющего минимальную избыточность. Статья эволюция развития автомобильных двигателей с начала 90-х годов вызвала интерес, и сильное обсуждение преобразований в двигателестроении. Эта стать...

Простой ASN1-кодек на базе sprintf Транспортный синтаксис ASN.1 определяет однозначный способ преобразования значений переменных допустимых типов в последовательность байт для передачи по сети. В ASN.1 он называется базовыми правилами кодирования (Basic Encoding Rules, BER). Правила являются рекурсивными, так...

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

[Перевод] Секреты работы с тканью в игре Alan Wake [Программист анимаций компании Remedy Хенрик Энквист рассказал, как его команда создала убедительную симуляцию твидового пиджака главного героя игры в жанре хоррор-триллер Alan Wake.] Главный персонаж нашего экшн-триллера — Алан Уэйк, писатель, попавший в кошмар, где он в...

«Dungeon Keeper здорового человека»: стратегия Dungeon Warfare 2 вышла на iOS и Android Это полноценный сиквел популярной tower defense, в котором вам предстоит стать повелителем собственного подземелья и всеми силами защищать его от врагов. Одна из главных и самых приятных фишек — ловушки и враги с реальной эмуляцией физики. Всего разработчики приготовили 32 ...

Заводим Spring StateMachine Вступление В проектах я встречался с тремя примерами, так или иначе связанными с теорией конечных автоматов Пример 1. Занимательный говнокод код. Занимает уйму времени, на то чтоб понять что происходит. Характерной особенностью воплощения обозначенной теории в коде являет...

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

Операция TaskMasters: как мы разоблачили кибергруппировку, атакующую организации России и СНГ Изображение: Unsplash Осенью 2018 года эксперты PT Expert Security Center выявили активность преступной группировки, деятельность которой была направлена на хищение конфиденциальных документов и шпионаж. Сегодня мы расскажем о ходе расследования, а также опишем основные м...

Какой следующий член…? — Ищем формулу для n-го члена последовательности, производящие функции и Z-преобразование Скачать файл с кодом и данные можно в оригинале поста в моем блоге В языке Wolfram Language есть четыре совершенно потрясающие функции: FindSequenceFunction, RSolve, DifferenceRootReduce и FindFormula. В этой статье мы обсудим их возможности и поговорим о функциях, тесно с ...

Найден новый способ редактирования ДНК Способ, получивший название праймированное редактирование, отличается от CRISPR/Cas9 тем, что работает только с одной нитью ДНК. Более 175 опытов, проведённых на клетках мышей и людей, показали, что вероятность успешного эксперимента при праймированном редактировании составл...

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

Книга «Знакомство с PyTorch: глубокое обучение при обработке естественного языка» Привет, Хаброжители! Обработка текстов на естественном языке (Natural Language Processing, NLP) — крайне важная задача в области искусственного интеллекта. Успешная реализация делает возможными такие продукты, как Alexa от Amazon и Google Translate. Эта книга поможет вам из...

Авторы Solitairica анонсировали тактику с элементами выживания ZOR: Pilgrimage of the Slorfs В 2016 году студия Righteous Hammer выпустила на мобильных карточный рогалик под названием Solitairica. Внезапно проект приобрел популярность среди узкого круга поклонников. Благодаря этому он до сих пор продолжает развиваться. Тем временем разработчики анонсировали новый п...

Забудьте о CRISPR. Разработан более точный и эффективный метод редактирования генома Редактирование генов человека путём изменения ДНК за последнее десятилетие значительно усовершенствовалось. Современные инструменты, такие как CRISPR/Cas9, являются чрезвычайно мощными, но обладают рядом недостатков, связанных с неточностью, высоким уровнем ошибок и некоторы...

Как редактировать STL файл в Inventor (Mesh Enabler) и MeshMixer Данный пост посвящен редактированию STL моделей в Inventor и MeshMixer. Он будет интересен тем, кто работает в Inventor и столкнулся с проблемой редактирования STL файла и не знает путей решения. Решил эту проблему двумя способами - скачивание специального плагина из APPStor...

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

[Перевод] Нативное редактирование Jupyter Notebooks в VS Code С осктябрьским релелизом расширения Python, мы рады объявить о поддержке нативного редактирования Jupyter Notebooks в Visual Studio Code! Теперь вы можете напрямую редактировать файлы .ipynb и получать интерактивность Jupyter Notebooks с полной мощью VS Code. Вы можете упра...

Функциональное тестирование навыков Яндекс Алисы на Node.js Прошел почти год с того момента, как появилась возможность создавать свои навыки для Алисы — голосового помощника от Яндекса. В каталог ежедневно прибывают новые навыки, а их общее число составляет несколько сотен. К сожалению, общение с некоторыми навыками мягко говоря "не...

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

Microsoft делает преобразование текста в речь более доступным и вместе с Alphabet X открывает обучающие курсы по квантовым вычислениям Microsoft совместно с группой китайских исследователей создала искусственный интеллект для преобразования текста в речь. Он способен генерировать реалистичную речь, используя 200 образцов голоса (общей продолжительностью примерно 20 минут) и соответствующие правила транскрип...

[Перевод] TensorFlow на Apache Ignite С чего начинается родина мы все знаем, а глубокое обучение начинается с данных. Без них невозможно обучить модель, оценить ее, да и вообще использовать. Занимаясь исследованиями, увеличивая индекс Хирша статьями о новых архитектурах нейронных сетей и экспериментируя, мы опир...

[Из песочницы] Три Больших Лжи о JavaScript Привет, Хабр! Представляю вашему вниманию мой перевод статьи "The Three Big Lies About JavaScript" автора Richard Kenneth. Данная статья была написана в мае 2016 года, однако ее актуальность, на мой взгляд, не исчезла. Я начинающий программист, поэтому возможны оши...

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

Как разрезать сложный STL с помощью Fusion и Meshmixer Печатаю фигурку D.Va - персонаж игры из Overwatch и в процессе печати столкнулся с трудностями, решил которые разрезав модель на части. О том, как именно можно разрезать высоко полигональную модель опишу ниже.Фигурка в оригинальном масштабе маленькая, потому печатаю в масшта...

POS-троян DMSniff атакует кинотеатры и рестораны Специалисты компании Flashpoint опубликовали отчет с анализом работы зловреда DMSniff, который используется в атаках на POS-терминалы по меньшей мере с 2016 года. Программа похищает сведения о банковских картах, обрабатываемых точкой продаж, и применяет алгоритм автоматическ...

[Перевод] Моя вторая неделя с Haiku: множество скрытых алмазов и приятных сюрпризов, а также некоторые проблемы Редактирование снимка экрана для этой статьи — в Haiku TL;DR: Производительность намного лучше, чем изначально. Виноват был ACPI. Запуск в виртуальной машине работает прекрасно для показа экрана. Git и менеджер пакетов встроены в файловый менеджер. Публичные беспроводные се...

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

[Перевод] Дробное броуновское движение Введение fBM расшифровывается как Fractional Brownian Motion (дробное броуновское движение). Но прежде чем начать говорить о природе, фракталах и процедурных рельефах, давайте на минуту углубимся в теорию. Броуновское движение (Brownian Motion, BM), просто, без «дробности» ...

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

Разговорный BERT — учим нейросеть языку соцсетей Одним из главных событий в области компьютерной лингвистики и машинного обучения в 2018 году был выпуск BERT от Google AI, который признан лучшим докладом года по мнению североамериканского отделения Ассоциации компьютерной лингвистики (NACL). В этой статье мы расскажем об э...

[Из песочницы] Польза строгой типизации в C++: практический опыт Наша программа обрабатывает сетевые пакеты, в частности, заголовки TCP/IP/etc. В них числовые значения — смещения, счетчики, адреса — представлены в сетевом порядке байтов (big-endian); мы же работаем на x86 (little-endian). В стандартных структурах, описывающих заголовки, э...

Беспроводной модуль связи с объектом WISE-4000 Можно ли без навыков программирования развернуть систему сбора данных промышленного уровня? В статье мы познакомимся с устройствами, которые позволяют в несколько кликов получить готовую систему обработки цифровых сигналов, доступных через JSON API. Серия WISE-4000 — это ...

[Перевод] Какой здесь this? Внутренняя работа объектов JavaScript Фотография: "Любопытный" Liliana Saeb (CC BY 2.0) JavaScript – это мультипарадигмальный язык, который поддерживает объектно-ориентированное программирование и динамическое связывание. Динамическое связывание — это мощная концепция, которая позволяет изменять структуру JavaS...

Adobe анонсировала поддержку Ray Tracing для своих приложений Abode объявила на конференции Adobe MAX, что ряд ее приложений теперь получат поддержку функций, доступных в серии графических процессоров NVIDIA RTX, включая Ray Tracing. C помощью технологии NVIDIA художники смогут сэкономить много времени на таких процессах, как рендерин...

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

Программирование LibreOffice Base. Часть 3 Сегодня мы рассмотрим использование диалоговых окон при редактировании данных в LibreOffice Base (OpenOffice Base). Как мы выяснили в предыдущих сообщениях, Форма LibreOffice Base (OpenOffice Base) — это фактически экземпляр текстового редактора LibreOffice (OpenOffice) Writ...

[Перевод] Как работают методы persist, merge из JPA и методы save, update, saveOrUpdate из Hibernate Добрый день, друзья. Перевод статьи подготовлен специально для студентов курса "Разработчик Java". Введение В этой статье я собираюсь показать вам, как работают методы persist, merge из JPA и сравнить их с методами save, update, saveOrUpdate из Hibernate. Хотя лучше испол...

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

PVS-Studio заглянул в движок Red Dead Redemption — Bullet В наши дни для, например, разработки игр уже нет нужды самостоятельно с нуля реализовывать физику объектов, так как для этого существует большое число библиотек. Bullet в свое время активно использовался во многих ААА играх, проектах виртуальной реальности, различных симуля...

[Перевод] А есть ли случайные числа в CSS? CSS позволяет создавать динамические макеты и интерфейсы в Интернете, но как язык разметки он является статическим — после установки значения его нельзя изменить. Идея случайности не обсуждается. Генерация случайных чисел во время выполнения — это территория JavaScript, а ...

[Перевод] Как создавали Spore: интервью с разработчиками 7 сентября 2008 года Maxis выпустила одну из самых амбициозных игр своего времени — Spore. Однопользовательская «игра в бога» в песочнице была поначалу воспринята со смесью одобрения и критики: многие фанаты были расстроены тем, что она не соответствовала ожиданиям, данным...

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

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

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

[Перевод] Физика игрового торнадо: как реализована аэродинамика в Just Cause 4 (трафик) Жак Кернер — старший инженер-разработчик ПО в Avalanche Studios. Как будто раньше игра была недостаточно безумной Введение Серия игр Just Cause и Avalanche Studios известны своей технологией открытого мира, обеспечивающего разнообразный и увлекательный игровой процесс. В ...

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

Лучшие фоторедакторы для Instagram на iPhone и Android Instagram является наилучшей платформой для тех, кто стремится поделиться своими фотографиями в Интернете. Но когда речь заходит о редактировании снимков, этот сервис, безусловно, лидером считаться не может. ПО ТЕМЕ: У кого больше всех подписчиков в Инстаграм – 35 самых попу...

[Перевод] Iodide: интерактивный научный редактор от Mozilla Изучение аттрактора Лоренца, а затем редактирование кода в Iodide В последние десять лет произошёл настоящий взрыв интереса к «научным вычислениям» и «науке о данных», то есть применению вычислительных методов для поиска ответов на вопросы, анализа данных в естественных и ...

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

Основы реактивного программирования с использованием RxJS. Часть 2. Операторы и пайпы В предыдущей статье мы рассмотрели, что такое потоки и с чем их едят. В новой части мы познакомимся с тем, какие методы RxJS предоставляет для создания потоков, что такое операторы, пайпы(pipes) и как с ними работать. RxJS обладает богатейшим API. В документации описано б...

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

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

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

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

Бредогенератор: создаем тексты на любом языке с помощью нейронной сети Привет Хабр. Эта статья будет в немного «пятничном» формате, сегодня мы займемся NLP. Не тем NLP, про который продают книжки в подземных переходах, а тем, который Natural Language Processing — обработка естественных языков. В качестве примера такой обработки будет использов...

Планирование проектов в организации (часть 4) Я продолжаю цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). В этой статье я расскажу о самой «вкусной» части: Планирование проектов. Планирование — это самая простая и самая сложная часть любого проекта основанного целью которого являет...

Пишем свой язык программирования, часть 4: Представление структур и классов, генерация аллокаторов Доброго времени суток тем, кто решил ознакомиться с моей очередной статьёй. Первым делом выкладываю ссылки на предыдущие части: Часть 1: пишем языковую ВМ Часть 2: промежуточное представление программ Часть 3: Архитектура транслятора. Разбор языковых структур и математиче...

Редактирование G-code Всем привет.Многие иногда сталкивались с проблемой, когда при автоматической генерации G-кода получается немного не то, что нужно.Часто это связанно с наличием или отсутствием необходимого обдува.Я использую слайсер Slic3r. И несмотря на всю эластичность доступных настроек, ...

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

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

Rust новости #4 (декабрь 2018) Поскольку праздники кончились, предлагаю вашему вниманию субъективную подборку ржавых новостей за декабрь. В этой подборке: безумие с растом, страшен ли раст, волна пророчеств, Rust 2018, Rust Analyzer. Rust 1.31 & Rust 2018 Самое важное событие декабря — выпуск Rust 1....

[Перевод] Генерацируем тайловые уровни и прячем квадраты от игрока Генерация уровней в Unexplored 2 Мы очень гордимся генератором уровней игры Unexplored 2, это программа, отвечающая всем современным требованиям. В посте я расскажу о том, как создаются уровни игры. Нам не пришлось заново изобретать велосипед. В Unexplored 1 мы уже создали...

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

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

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

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

[Из песочницы] Эффективные и не эффективные методы кодинга на Python Привет, Хабр! Предлагаю Вашему вниманию перевод статьи Good and Bad Practices of Coding in Python автора Duomly. Python – высокоуровневый язык программирования, акцентирующий внимание на удобочитаемости. Он разрабатывается, поддерживается и часто используется в соответствии...

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

Технологию CRISPR впервые применили в США для лечения раковых больных Еще в 2016 году Национальные институты здравоохранения США разрешили исследовательской группе из Университета Пенсильвании (UPenn) начать испытания технологии CRISPR (редактирования генома) на людях. Тем не менее противоречивая и снискавшая крайне неоднозначную оценку учены...

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

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

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

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

SamsPcbGuide, часть 10: Технологии, пайка бессвинцовых компонентов Данная статья – первая статья о технологиях сборки печатных плат. Последний семинар от PCB SOFT был посвящён проектированию, обеспечивающему технологичность изготовления печатной платы (англ. DFM, design for manufacture). Был поднят вопрос о целесообразности реболлинга бессв...

Интерактивная игра на XSLT Когда-то давным-давно придумали люди язык XML и увидели, что это хорошо. И стали использовать его везде, где можно, и даже там, где не следует. Форматы хранения и передачи данных, конфиги, веб-сервисы, базы данных… Казалось, оглянись вокруг — XML, XML повсюду. Время прошло...

«И невозможное возможно»: превращаем черный ящик в белый с помощью бинарного анализа На данный момент существует два основных подхода к поиску уязвимостей в приложениях — статический и динамический анализ. У обоих подходов есть свои плюсы и минусы. Рынок приходит к тому, что использовать надо оба подхода — они решают немного разные задачи с разным результа...

Стартап VOW Foods планирует накормить нас стейками из слонов и динозавров Успехи в редактировании генома и экспериментах со стволовыми клетками подвигли энтузиастов на запуск ряда стартапов, направленных на создание экзотических видов мяса. Речь идет не о заменителях, как в случае с набирающим популярность брендом «Beyond Meat», ученые хотят модер...

Как работать с Shader Graph в Unity3D Графы шейдеров это новый инструмент для создания шейдеров в юнити. Он позволяет создавать шейдеры людям не имеющим навыков написания кода. Результат каждой операции виден при редактировании. Идеальный инструмент для новичков и экспериментаторов. Читать дальше →

Новые системы Infortrend заметно повышают эффективность видеопродакшена Компания Infortrend® Technology, Inc. (код TWSE: 2495), разработчик передовых корпоративных систем для хранения данных, недавно представила решения для общего хранения мультимедийной информации, разработанные с целью упрощения процессов обработки видеоконтента в фо...

Решения для общего хранения мультимедийной информации представила Infortrend Компания Infortrend® Technology, Inc. (код TWSE: 2495), разработчик передовых корпоративных систем для хранения данных, недавно представила решения для общего хранения мультимедийной информации, разработанные с целью упрощения процессов обработки видеоконтента в фо...

[Перевод] Sketch + Node.js: генерируем иконки для множества платформ и брендов. Часть 2 Это вторая часть статьи о создании инструмента, способного экспортировать все помещённые в Sketch-файл иконки: в разных форматах, для разных платформ, с возможностью A/B-тестирования каждой из иконок. Первую часть вы можете прочесть по ссылке. В прошлый раз мы подготов...

Получение обычных SMS в мессенджеры Viber и Telegram (с помощью шлюзов GoIP) Во многих компаниях использующих IP-телефонию и применяющих GSM-шлюзы для корпоративной связи часто возникает вопрос приема и отправки СМС со своих номеров. Для китайских моделей GOIP существует неплохое решение GOIP-SMS-Сервер, о котором неоднократно упоминалось на простор...

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

[Перевод] Раскрывая 140-летний секрет в физике Перевод статьи авторов из IBM Research. Важный прорыв в физике позволит изучить физические характеристики полупроводников в гораздо больших подробностях. Возможно, это поможет ускорить развитие полупроводниковой технологии следующего поколения. Авторы: Oki Gunawan — Staff M...

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

Инвесторы остерегаются «необычных» практик финансирования в ConsenSys Впереди у блокчейн-стартапа ConsenSys масштабные преобразования и переход к так называемому ConsenSys 2.0. Однако анонимные источники издания CoinDesk убеждены, что компания столкнется с существенными проблемами из-за «необычной» инвестиционной стратегии Джозефа Лю...

Daedalic Entertainment выпустит Unrailed! — кооперативный симулятор строительства железных дорог Компания Daedalic Entertainment объявила о том, что выпустит кооперативный симулятор строительства железных дорог Unrailed! с множеством разнообразных карт в сетевом и одиночном режимах. Карты эти будут генерироваться процедурно — с уникальными препятствиями...

Wolfensteiny 3D — реверс-инжиниринг 251 байтов JavaScript При написании кода многие не задумываются ни о чем, кроме логики самой программы. Меньшее число людей думают об оптимизации кода по времени, по памяти. Но лишь единицы доходят до последнего уровня — сжатии программы до рекордно маленького размера. Посмотрите, например, на ...

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

Управление целями в организации: Цели и инженеры (часть 3) Продолжаем цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). Мы уже разобрались с моделью организации, с основными принципами Метода. Теперь время рассказать о Правилах. Правила программируют организацию, а значит они должны быть определ...

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 5 ← Часть 4. Программирование периферийных устройств и обработка прерываний Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 5. Проектирование многопоточных приложений В предыдущих частях статьи мы подробно останавливались на основах программирования с ...

[Перевод] 492-байтная демка на ATtiny5 Демки обычно отличаются более сложной графикой, чем игры того же объёма. Ведь не приходится тратить ресурсы на взаимодействие с пользователем и дополнительные расчёты. Предлагаемая программа работает на микроконтроллере ATtiny5 с 512 байтами ПЗУ, 32 байтами ОЗУ и 16 регист...

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

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

Генерация кода для бекенда. Что генерировать, как и зачем? Я хочу показать в этой статье как у нас в фирме генерируется бекенд (и немного фронтенд) код, зачем вообще это нужно и как это лучше делать. Что именно будем генерировать — не так важно. Важно что мы опишем 3 вида объектов на основе которых сгенерируем взаимодействие фронте...

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

[Перевод] Создание пиксельной туманности при помощи шума и Median Cut Я хотел, чтобы в моей игре The Last Boundary была туманность. Они потрясающе выглядят и космос без них не космос, а просто разбросанные по фону белые пиксели. Но так как игру я делаю в стиле «пиксель-арт», то мне нужно было как-то заставить мою библиотеку шума генерировать п...

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

Dynamic в C#: рецепты использования Это заключительная часть цикла про Dynamic Language Runtime. Предыдущие статьи: Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности. В этой статье подробно рассматривается кэш DLR и важные для разработчика моменты, с ним связанные. Г...

Как подготовиться и сдать экзамен ITIL 4 Foundation ITIL (произносится как «áйтил», англ. IT Infrastructure Library — библиотека инфраструктуры информационных технологий) — библиотека, описывающая лучшие из применяемых на практике способов организации работы подразделений или компаний, занимающихся предоставлением услуг в об...

Эстонские патрули в Африке получили беспилотное транспортное средство Взвод эстонских пехотинцев Estpla-32, сейчас несущий службу в Мали (государство в Западной Африке, не имеющее выхода к морю), впервые начал использовать для патрулирования беспилотное сухопутное транспортное средство (UGV) THeMIS. Об этом сообщил разработчик робота &mda...

Появилось новое программное обеспечение для веб-камер Logitech Capture Компания Logitech выпустила новое программное обеспечение для веб-камер, предназначенное для качественной и удобной записи видеоконтента и передачи потокового вещания в режиме реального времени. Приложение реализовало множество новых возможностей: редактирование видео, оптим...

[Перевод] Учебный курс по React, часть 19: методы жизненного цикла компонентов В сегодняшней части перевода учебного курса по React вашему вниманию будет представлен обзор методов жизненного цикла компонентов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структу...

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

Исследователь Microsoft получил престижную премию по теоретической физике за вклад в развитие квантовых вычислений Доктор Маттиас Тройер, исследователь квантовых вычислений в Microsoft, получил одну из самых престижных наград в области теоретической физики в Германии – Гамбургскую премию – за значительный вклад в развитие квантового метода Монте-Карло. Методы Монте-Карло – группа числ...

Создание 3D-текста на цилиндрической поверхности Как создать выпуклый или выдавленный текст на плоскости, уже сказано и написано немало: достаточно в эскизе ввести нужный текст в режиме Обозначения, отформатировать его, а затем выйти из режима эскиза и выполнить выдавливание или вырезание выдавливанием. При этом в профи-ве...

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

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

Байт-машина для форта (и не только) по-индейски (часть 4) И снова я несколько переоценил объем статьи! Планировал, что это будет заключительная статья, где сделаем компилятор и выполним тестирование. Но объем оказался велик, и я решил разбить статью на две. В этой статье мы сделаем практически все основные функции компилятора. ...

Директ обновляет окно редактирования объявлений Команда Яндекс.Директа сообщила о скорой замене окна создания и редактирования текстово-графических объявлений и смарт-баннеров. Посмотреть на обновления можно уже сегодня — в новое окно редактирования можно перейти из старого интерфейса Директа по кнопкам Добавить...

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

ИБП и рекуперация электроэнергии: как скрестить ежа с ужом? Из курса физики мы знаем, что электродвигатель может работать и как генератор, этот эффект используют для рекуперации электроэнергии. Если у нас нечто массивное приводится в движение электродвигателем, то при торможении механическую энергию можно снова преобразовать в электр...

DJI Terra — новая программа для картирования с помощью дронов от DJI На рынок программного обеспечения для обработки данных дронов вышла компания DJI, ведущий производитель гражданских беспилотных летательных аппаратов и камер для них. На рынке, где основную часть продаж осуществляли продукты компаний Pix4D или DroneDeploy, появилось конкурен...

[Перевод] Грязные хаки ассемблера 6502 В этой статье перечислены некоторые трюки, которые применяли участники моего маленького конкурса программирования Commodore 64. Правила конкурса были просты: создать исполняемый файл C64 (PRG), который рисует две линии, чтобы сформировать изображение ниже. Побеждал тот, чей ...

[Перевод] Тестирование инфраструктуры как код с помощью Pulumi. Часть 1 Добрый день, друзья. В преддверии старта нового потока по курсу «DevOps практики и инструменты» делимся с вами новым переводом. Поехали. Использование Pulumi и языков программирования общего назначения для инфраструктурного кода (Infrastructure as Code) дает много преимущ...

Изучаем Adversarial Tactics, Techniques & Common Knowledge (ATT@CK). Enterprise Tactics. Часть 10 Эксфильтрация или утечка данных (Exfiltration) Ссылки на все части: Часть 1. Получение первоначального доступа (Initial Access) Часть 2. Выполнение (Execution) Часть 3. Закрепление (Persistence) Часть 4. Повышение привилегий (Privilege Escalation) Часть 5. Обход защиты (Defe...

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

[Перевод] Игра на Rust за 24 часа: личный опыт разработки В этой статье я расскажу о личном опыте разработки небольшой игры на Rust. На создание рабочей версии ушло около 24 часов (преимущественно я работала по вечерам или на выходных). Игра еще далека от завершения, но я думаю, что опыт будет полезным. Я расскажу, чему научилась...

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

Создание таблиц в дизайн системе Figma и реализация в Storybook (React) В предыдущей статье на тему дизайна таблиц в Фигме мы выяснили, что базовый элемент создания любого data grid — это компонент ячейки, внутри которого спрятано все необходимое для того, чтобы оставаться в одном экземпляре и строить таблицы ячейка-за-ячейкой. Теперь поговори...

[recovery mode] Agilean — убийца Lean и Agile Гибридная методология управления на основе ценностей В этой статье мы расскажем вам об Agilean («Эджайлин») как методе создания гибридных инструментов на базе Lean и Agile и шире об Agilean как о философии управления бизнесом с плацдарма ценностей. Немного поговорим о нюан...

B2B-навык Алисы: от прототипа до первого сэкономленного рубля Не так давно в Санкт-Петербурге прошла вторая конференция Conversations, посвящённая разговорному AI, на которой мне посчастливилось выступить в качестве докладчика. Темой была разработка прототипа B2B-навыка для крупной компании. В докладе рассказывалось о том, как удалось...

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

[Из песочницы] Хранение настроек в памяти Базового устройства Привет! Если Вам посчастливилось подержать в руках микроконтроллер ESP32 (мне посчастливилось больше и у меня в руках M5Stack) от китайской компании ESPRESSIF, то этот пост, возможно, будет полезен. Бывает ситуация, когда необходимо сохранить какие-то параметры в энергонеза...

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

Делегирование обратной зоны подсети менее /24 в BIND. Как это работает Встала однажды передо мной задача, отдать одному из клиентов право на редактирование PTR-записей отданной ему подсети /28. Автоматизации для редактирования настроек BIND извне у меня нет. Поэтому я решил пойти другим путем — делегировать клиенту кусок PTR-зоны подсети /24. ...

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

Топ-7 способов быстрой проверки компетенций IT-специалистов до собеседования Найм IT-специалистов – это непростая задача. Во-первых, сейчас на рынке наблюдается дефицит опытных кадров, они это понимают. Кандидаты часто не готовы тратить много времени на «отборочные мероприятия» работодателя, если их предварительно не заинтересовать. Ранее популярная ...

Ученые научились взламывать зашифрованные PDF-файлы Исследователи из двух немецких университетов смогли прочитать зашифрованные PDF-документы. Эксперты предложили два способа атаки под общим названием PDFex: оба позволяют взламывать файлы через 27 программ, включая Adobe Acrobat, Foxit Reader, средства просмотра PDF в Chrome ...

[Перевод] Учебный курс по React, часть 11: динамическое формирование разметки и метод массивов map В сегодняшней части перевода учебного курса по React мы поговорим об использовании стандартного метода массивов map() для организации динамического формирования JSX-разметки, описывающей наборы однотипных элементов. → Часть 1: обзор курса, причины популярности React, Reac...

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

[Из песочницы] Методы сжатия/хранения медиа данных в форматах WAVE и JPEG, часть 1 Здравствуйте! Моя первая серия статей будет направлена на изучение методов сжатия и хранения изображений/звука, таких как JPEG (изобр.) и WAVE (звук), также в них будут примеры программ с использованием этих форматов (.jpg, .wav) на практике. В этой части мы рассмотрим именн...

Custom refactoring tool: Swift Любой инженер стремится сделать процесс своей работы максимально оптимизированным. Нам, как мобильным разработчикам iOS, очень часто приходится работать с однообразными структурами языка. Компания Apple улучшает инструменты разработчиков, прилагая много усилий, чтобы нам был...

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

ITIL Intermediate: Release, control, validation — много счастливых релизов Основная причина, по которой необходимо обратить внимание на модуль Intermediate — Release, Control and Validation — сводится к одному слову: DevOps. DevOps стал новейшим способом описания совместной работы Agile и бережливого производства (Lean), но по...

[Из песочницы] Передача знания и Нейронный машинный перевод на практике Нейронный машинные перевод (НМП, англ. Neural Machine Translation, NMT) развивается очень быстро. Сегодня, чтобы собрать свой переводчик, не нужно иметь два высших образования. Но чтобы обучить модель, нужен большой параллельный корпус (корпус, в котором предложению на исход...

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

Батавские слёзки, легковые машины и Gorilla Glass: о некоторых видах укрепленного стекла Привет, Хабр! Все мы слышали такие слова, как "закаленное стекло", "Gorilla Glass", "химическая обработка стекла". Тем не менее, в большинстве случаев мы и не задумываемся о том, как все эти вещи устроены, а зря — эта тема содержит в себе множество удивительных фактов и инт...

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

Как перевести ваил из STL в CAD SOLIDWORKS Многие сталкивались с проблемой: вы скачали файл STL с какого-то сайта, но он вас не устраивает, нужно что-то такое доработать или вы просто хотите CAD файл , а моделировать заново лень..Во многих программах  для 3d моделирования есть функция преобразования STL в CAD, р...

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

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

[Перевод] Встречайте Big Data Tools: поддержка Spark и Zeppelin-ноутбуков в IntelliJ IDEA У нас отличные новости. Мы рады объявить о выходе Big Data Tools — нового плагина для IntelliJ IDEA, который обеспечивает интеграцию со Spark и поддерживает редактирование и запуск Zeppelin-ноутбуков. Теперь вы можете создавать, редактировать и запускать Zeppelin notebooks п...

Получаем ссылки на профили Vk из выдачи SearchFace с помощью Python (но это не точно) Картинка для привлечения внимания: Кадр из сериала Person Of Interest Сегодня мы поговорим о лёгком распознавании лиц с помощью доступных инструментов. Используются: Python 3.6, searchface.ru, внешний сервис для преобразования ссылок на фото в id (бот в телеграме, на тек...

[recovery mode] Кластерная память с аппроксимацией Разработана память с нелинейной аппроксимацией внутри кластеров данных. Кластеры предлагается выделять методом k-средних. Аппроксимацию проводить с помощью обучения ансамбля нейронных сетей. Кластерная память протестирована на примере адаптивного фильтра для преобразования ...

[Перевод] Кеширование в Laravel: основы плюс tips&tricks Техника кеширования позволяет создавать более масштабируемые приложения, запоминания результаты некоторых запросов в быстрое in-memory хранилище. Однако, некорректно реализованное кеширование может сильно ухудшить впечатление пользователя о вашем приложении. Эта статья содер...

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

[Из песочницы] Как сэкономить в AWS до полумиллиона долларов? Привет, Хабр! Представляю вашему вниманию перевод статьи «How to reduce your AWS costs? Save up to $500k with these guidelines!» автора George Batschinski. В этой статье мы в подробностях расскажем, как Back4App уменьшила свои расходы в AWS с $55,492 в месяц до $20,074 в ...

Дочь Путина решила развивать генетическое редактирование в России Мария Воронцова, которую СМИ называют старшей дочерью Президента РФ, вошла в состав совета по реализации Федеральной научно-технической программы развития генетических технологий. В рамках этой программы в России будут развивать технологии генетического редактирования растен...

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

Операция TA505, часть вторая: изучаем бэкдор ServHelper с NetSupport RAT В конце июля 2019 года мы обнаружили интересный образец вредоносного ПО группы TA505. 22 июля 2019 года он был загружен на сервис ANY.RUN для проведения динамического анализа. Наше внимание привлекло то, что среди выставленных тегов, помимо обыденного для TA505 Servhelper,...

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

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

[Перевод] Почему data scientist — это не data engineer? «Ученый может открыть новую звезду, но не может создать её. Для этого ему пришлось бы обратиться к инженеру». Гордон Линдсей Глегг, «Дизайн дизайна» (1969) Несколько месяцев назад я писал о различиях между специалистами по теории и методам анализа данных (data scientist) ...

Android: создание динамических Product Flavors и Signing Configs При работе над Android-проектом, представляющий собой платформу для создания приложений для просмотра видео-контента, возникла необходимость динамического конфигурирования product flavors с выносом информации о signing configs во внешний файл. Подробности под катом. Читать д...

Алиса приобретает навык В этой статье речь пойдёт о голосовых интерфейсах (Voice User Interface — VUI), а также будет показано, как на Node.js можно создать приложение (навык — в терминологии платформы Яндекс.Диалоги) для голосового помощника Алисы. С помощью стороннего API наше приложение будет ...

[Перевод] Глубокое обучение (Deep Learning): обзор Всем привет. Уже в этом месяце в ОТУС стартует новый курс — "Математика для Data Science". В преддверии старта данного курса традиционно делимся с вами переводом интересного материала. Аннотация. Глубокое обучение является передовой областью исследований машинного обучения ...

Резервное копирование, часть 5: Тестирование bacula и veeam backup for linux В данной заметке будут рассматриваться различные "большие" программные средства для резервного копирования, включая коммерческие. Список кандидатов: Veeam Agent для Linux, Bacula. Будет проверяться работа именно с файловой системой, чтобы было удобно сравнивать с предыдущим...

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

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

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

NEM Foundation потратит на структурные преобразования более $8 млн Спонсируемая сообществом некоммерческая организация NEM Foundation опубликовала план финансовой и структурной реорганизации. На реализацию плана 20 февраля организация решила выделить из своих резервов 210 млн монет XEM (примерно $8.7 млн). Первый транш в размере 25 млн XEM ...

[Из песочницы] Документируем процесс подключения и генерации документов в будущей ERP-системе Несколько месяцев назад я закончил один из этапов своего профессионального пути многорукого Шивы в стартапе по разработке системы управления лабораториями неразрушающего контроля. Я расскажу как мне удалось задокументировать часть разработки связанную с подключением и гене...

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

[Перевод] Работа с ошибками в Go 1.13 В последнее десятилетие мы успешно пользовались тем, что Go обрабатывает ошибки как значения. Хотя в стандартной библиотеке была минимальная поддержка ошибок: лишь функции errors.New и fmt.Errorf, которые генерируют ошибку, содержащую только сообщение — встроенный интерфейс...

[Перевод] Пишем кастомный трансформер AST на TypeScript Команда TestMace снова с вами. На этот раз мы публикуем перевод статьи о преобразовании кода TypeScript, используя возможности компилятора. Приятного чтения! Введение Это мой первый пост, и в нём мне бы хотелось показать решение одной задачи с помощью API компилятора TypeScr...

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

Компания Xiaomi выпустила новые бесшумные кондиционеры Сегодня компания Xiaomi выпустила новый 108 Мп смартфон, умные часы и линейку телевизоров, а также не менее долгожданные кондиционеры: настенный Internet Air Conditioner и напольный Internet Vertical Air Conditioner. Главным достоинством этих новинок является маленькая энерг...

[Перевод] Создание ритм-игры в Unity Введение Итак, вы хотите или пытались создать ритм-игру, но игровые элементы и музыка быстро рассинхронизировались, и теперь вы не знаете, что делать. Эта статья вам в этом поможет. Я играл в ритм-игры со старшей школы и часто зависал на DDR в местном зале аркадных автомато...

Анонс AMD Radeon Pro Vega II и Radeon Pro Vega II Duo: мощные ускорители на 7-нм GPU Vega 20 Компания AMD анонсировала новые видеокарты Radeon Pro Vega II и Radeon Pro Vega II Duo для профессионалов, которые постоянно сталкиваются с рендерингом, редактированием видео в разрешении 8K, созданием высококачественного 3D-контента и другими требовательными приложениями. П...

Автомобиль в эпоху мультифункциональности. Какие преобразования возможны? | “Развитие всех систем идет в направлении увеличения степени идеальности.» Законы развития технических систем (Г.С. Альтшуллер). Урбанизация в «зеленом» стиле в своем максимуме как бы это странно не звучало «не содержит варианты с использованием личных электромобилей в...

КОМПАС-3D v17 Home. Работа с Stl. Часть 2. Распознавание Stl. Часто скачанные в интернете Stl-файлы нуждаются в доработке. Можно доработать модель механически, но это противоречит духу 3D-печати. Доработку не всегда можно сделать с помощью операций вырезания и выдавливания на модели без истории построения, часто требуется изменить поло...

[Перевод] Отличия LabelEncoder и OneHotEncoder в SciKit Learn Если вы недавно начали свой путь в машинном обучении, вы можете запутаться между LabelEncoder и OneHotEncoder. Оба кодировщика — часть библиотеки SciKit Learn в Python и оба используются для преобразования категориальных или текстовых данных в числа, которые наши предсказате...

Модернизация GHIDRA. Загрузчик для ромов Sega Mega Drive Приветствую вас, товарищи. Не слышал о пока-ещё-не-опенсорсной GHIDRA, наверное, только глухой/слепой/немой/без_интернета реверс-инженер. Её возможности из коробки поражают: декомпиляторы для всех поддерживаемых процессоров, простое добавление новых архитектур (с сразу же а...

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

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

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

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

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

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

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

[Перевод] Понимание алгоритма БПФ Здравствуйте, друзья. Уже завтра стартует курс «Алгоритмы для разработчиков», а у нас остался один неопубликованный перевод. Собственно исправляемся и делимся с вами материалом. Поехали. Быстрое преобразование Фурье (БПФ — англ. FFT) является одним из важнейших алгоритмов о...

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

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

[Из песочницы] Как я создаю сервис рекомендаций сообществ ВКонтакте Лето заканчивалось, шёл особенно холодный август. Начинался мой 11 класс и я осознал, что сейчас последний шанс (спойлер: нет) на то, чтобы как-то улучшить свою профессиональную компетенцию. Уже несколько лет я усердно делал разные IT проекты, какие-то один, какие-то в колле...

[Перевод] Учебный курс по React, часть 21: второе занятие и практикум по условному рендерингу Сегодня, в переводе следующей части учебного курса по React, мы предлагаем вашему вниманию второе занятие по условному рендерингу и практикум по этой теме. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: ф...

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

VMware NSX для самых маленьких. Часть 6. Настройка VPN Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP Часть четвертая. Настройка маршрутизации Часть пятая. Настройка балансировщика нагрузки Сегодня мы посмотрим на возможности настройки VPN, которые предлагает нам NSX Edge. В ...

[recovery mode] Расширения Google Chrome для программиста Работа программиста настолько сложна и разнообразна, что в ней просто не обойтись без помощи различных инструментов. Подготовил для вас список полезных расширений для Google Chrome, которые облегчат вашу жизнь и сэкономят время. 1. Code Cola Плагин, который предлагает ши...

FFmpeg практика аппаратного декодирования DXVA2 Привет! Эта статья продолжение моей статьи FFmpeg начало работы Visual Studio. Здесь мы приступим к аппаратному декодированию RTSP-потока FULL HD. Заранее скажу, что с данной задачей легко справится даже Intel ATOM Z8350. Задача: аппаратное декодирование и запись до 4-х кад...

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

[Перевод] Учебный курс по React, часть 20: первое занятие по условному рендерингу Сегодня, в переводе следующей части учебного курса по React, мы поговорим об условном рендеринге. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительск...

10 новых бесплатных курсов по когнитивным сервисам и Azure Недавно мы выложили около 20 новых курсов на нашу обучающую платформу Microsoft Learn. Сегодня я расскажу и первых десяти, а немного позже выйдет статья и о второй десятке. Среди новинок: распознавание голоса с когнитивными сервисами, создание чат-ботов с QnA Maker, обработк...

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

20 проектов, 20 языков, срок вчера. Часть 3 Заключительная статья об интеграции Serge+Smartcat. В этой статье я расскажу, как мы масштабируем Serge на всю компанию, рассмотрю 4 нестандартных интеграции и, в качестве бонуса, расскажу о 2 фичах которые могут упростить вам жизнь. Предыдущие статьи: 20 проектов, 20 язык...

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

Как уменьшить размер фотографий и видео на Galaxy S10 Памяти никогда не бывает много. Даже если объем накопителя вашего смартфона составляет 128 ГБ и более, нет ничего зазорного в том, чтобы сэкономить его. Кто-то с этой целью удаляет накопившиеся фотографии и видеозаписи, а кто-то регулярно чистит кэш, который накопили прилож...

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

Редактор фото для паспорта и удостоверения 1.2.0 Редактор фото для документов (ID Photo Maker Studio) — лучшее приложение для редактирования размера фотографий среди бесплатных редакторов фотографий для документов. Это приложение позволяет сэкономить деньги, объединив стандартные паспортные, удостоверения личности или фото...

Алхимия XXI века: преобразование жидкого металлического дейтерия в плазму Что общего между звездами, молнией и северным сиянием? Все эти «объекты» красивы по своему, порой вызывают у наблюдателя экзистенциальные размышления и романтические переживания. Однако и с точки зрения физики у них есть общая черта — плазма. Этот ионизированный газ, счита...

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

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

Криптографические токены PKCS#11. Графическая утилита «с функцией подписания и добавлением метки времени». Часть 1 В комментариях к статье «Использование механизмов криптографических токенов PKCS#11 в скриптовых языках» читатель kovserg написал: «С нетерпением ждём статью с функцией подписания документа и добавлением метки времени». Еще раньше другой участник хабра pas писал о том, что б...

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

Учебные проекты на Godot — Pong (часть 2) Создание и настройка мяча Приветствую вас, хабровчане! В этой части я буду создавать и настраивать мяч для игры Pong. Если вы пропустили начало, то оно здесь. Уровень статьи по прежнему начинающий. Под катом по прежнему много скринов.Зовите детей и welcome под кат. Читать дальше →

Устройство компилятора Swift. Часть 4 Это последняя часть моего обзора компилятора Swift. Я покажу, как можно осуществить генерацию LLVM IR из AST и что выдаёт настоящий фронтенд. Если вы не читали предыдущие части, то переходите по ссылкам: Общий обзор компонентов Разбор исходного файла Swift intermediate lan...

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

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

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

За всё ответишь! Consumer Driven Contracts глазами разработчика В этой статье мы расскажем про проблемы, которые решает Consumer Driven Contracts, покажем как это применять на примере Pact с Node.js и Spring Boot. И расскажем про ограничения этого подхода. Проблематика При тестировании продуктов часто используют сценарные тесты, в кот...

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

Создаём библиотеку по последнему слову техники Привет, Хабр. Это статья о том как написать Hello world по последнему слову техники. В конце мы получим hello world библиотеку которая: Использует typescript Заботится о codestyle Генерирует доку Проводит тесты Читать дальше →

Как научить машину понимать инвойсы и извлекать из них данные Привет, хабр! Меня зовут Станислав Семенов, я работаю над технологиями извлечения данных из документов в R&D ABBYY. В этой статье я расскажу об основных подходах к обработке полуструктурированных документов (инвойсы, кассовые чеки и т.д.), которые мы использовали совсем ...

myTarget запускает инструмент для массового редактирования объявлений Клиентам рекламной платформы myTarget стало доступно массовое редактирование объявлений. С новым инструментом рекламодатели смогут менять тексты и ссылки в нескольких объявлениях одновременно. Для этого необходимо открыть вкладку «Кампании», перейти в раздел «Объявления» и в...

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

[Перевод] Легендарный Intel Core i7-2600K: тестирование Sandy Bridge в 2019 году (часть 3) Часть 1>> Часть 2 >> Часть 3 Игровые тесты: World of Tanks enCore Несмотря на то, что World of Tanks сильно отличается от большинства других часто играемых массовых многопользовательских онлайн-игр, он позволяет игроку очутиться в середине 20-го века и под сво...

[Из песочницы] novtable оптимизация Компилятор Microsoft позволяет добавить расширение «novtable» для атрибута «__declspec» при объявлении класса. Заявленная цель — значительно уменьшить размер генерируемого кода. На экспериментах с нашими компонентами уменьшение составило от 0,6 до 1,2 процента от размера D...

Анализ производительности ВМ в VMware vSphere. Часть 3: Storage Часть 1. Про CPU Часть 2. Про Memory Сегодня разберем метрики дисковой подсистемы в vSphere. Проблема со стораджем – самая частая причина медленной работы виртуальной машины. Если в случаях с CPU и RAM траблшутинг заканчивается на уровне гипервизора, то при проблемах с ди...

В MIT научились передавать звук с помощью лазера Группа исследователей из MIT представила новый метод передачи направленного звука при помощи лазера. Под катом, рассказываем, на чем построена эта технология. Читать дальше →

Zombie Forest HD 1.04 Zombie Forest HD — выживание посреди леса, наполненного зомби и мародерами. Волею судьбы, в самом разгаре зомби-апокалипсиса, вы отыскали убежище внутри домика на дереве. Но с каждым днем численность зомби увеличивается, а еды для них становится все меньше. Агрессивн...

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

[Перевод] Тестирование инфраструктуры как код с помощью Pulumi. Часть 2 Всем привет. Сегодня делимся с вами заключительной частью статьи «Тестирование инфраструктуры как код с помощью Pulumi», перевод которой подготовлен специально для студентов курса «DevOps практики и инструменты». Тестирование развертывания Рассмотренный стиль тестирования —...

[Перевод] Введение в Kubernetes для пользователей VMware. Часть 2. Практика Это вторая часть введения в Kubernetes для пользователей VMware. Прежде чем перейти к практической части, ознакомьтесь с предыдущей статьей по ссылке. Читать дальше →

Принципы работы протокола PIM Протокол PIM — это набор протоколов для передачи мультикаста в сети между маршрутизаторами. Отношения соседства строится аналогично как и в случае динамических протоколов маршрутизации. PIMv2 отправляет каждые 30 секунд Hello сообщения на зарезервированный мультикаст адрес 2...

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

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

Обеспечение надежной работы Zextras Team в сложных корпоративных сетях В прошлой статье мы рассказали вам о Zextras Team — решении, которое позволяет добавить в Zimbra Collaboration Suite Open-Source Edition функциональность корпоративных текстовых и видео-чатов, а также возможность проводить видеоконференции с большим числом участников, без не...

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

Метод бисекционного деления в тестировании Содержание Описание метода Применение тестировщиками Строка данных Файл Применение разработчиками Резюме Иногда баги сами нас находят. Вот мы впихали большую строку данных — и система подвисла. Это она из-за 1 млн символов упала? Или ей какой-то конкретный не понравилс...

GPT-2 нейросеть от OpenAI. Быстрый старт Не успели отшуметь новости о нейросети BERT от Google, показавшей state-of-the-art результаты на целом ряде разговорных (NLP) задач в машинном обучении, как OpenAI выкатили новую разработку: GPT-2. Это нейронная сеть с рекордным на данный момент числом параметров (1.5 млрд,...

[Из песочницы] Домашняя BigData. Часть 1. Практика Spark Streaming на кластере AWS Здравствуйте. В данной статье мы в домашних условиях произведем установку на платформу EC2 AWS (Amazon Web Services) Apache Kafka, Apache Spark, Zookeeper, Spark-shell и научимся всем этим пользоваться. Читать дальше →

Samsung Galaxy Tab S6 — первый планшет с поддержкой HDR10+ Представив в конце июля планшет Galaxy Tab S6, компания Samsung Electronics оставила без внимания одну особенность этого устройства, к которой сочла необходимым вернуться вчера. В пресс-релизе, опубликованном южнокорейским производителем, сказано, что пользователи  ...

Как создать UI kit, который продается. Этапы разработки коммерческой дизайн-системы Сегодня у любого дизайнера есть возможность заработать на собственном дизайн-продукте. Иконки, иллюстрации, шаблоны сайтов и приложений можно превратить в цифровой продукт и продавать по всему миру. Кому-то ваша поделка поможет ускорить работу и человек за нее заплатит. Др...

[Перевод] Учебный курс по React, часть 25: практикум по работе с формами В сегодняшней части перевода учебного курса по React вам предлагается выполнить практическое задание по работе с формами. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проект...

[Перевод] Обзор методов отбора признаков Правильный отбор признаков для анализа данных позволяет: повысить качество моделей машинного обучения с учителем и без,  уменьшить время обучения и снизить требуемые вычислительные мощности, а в случае входных данных высокой размерности позволяет ослабить «проклятие ра...

[Перевод] Как написать смарт-контракт на Python в сети Ontology. Часть 2: Storage API Это вторая часть из серии обучающих статей о создании смарт-контрактов на Python в блокчейн сети Ontology. В предыдущей статье мы познакомились с Blockchain & Block API смарт-контракта Ontology. Сегодня мы обсудим, как использовать второй модуль— Storage API. Storage API...

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

Universal Pictures Home Entertainment будет выпускать контент HDR10+ Universal Pictures Home Entertainment (UPHE), подразделение американской киностудии Universal Pictures, занимающееся распространением видеопродукции для домашнего развлечения, совместно с компанией Samsung Electronics объявило о планах по выпуску продукции, в которой ис...

[Перевод] Обработка 40 ТБ кода из 10 млн проектов на выделенном сервере с Go за $100 Написанной мной инструмент командной строки Sloc Cloc and Code (scc), который теперь доработан и поддерживается многими отличными людьми, подсчитывает строки кода, комментарии и оценивает сложность файлов внутри каталога. Здесь нужна хорошая выборка. Инструмент подсчитывает ...

[Перевод] Учебный курс по React, часть 27: курсовой проект В этой части перевода учебного курса по React вам предлагается создать генератор мемов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительские и дочер...

[Перевод] Учебный курс по React, часть 23: первое занятие по работе с формами В этой части перевода учебного курса по React мы поговорим о работе с формами. В частности, сегодняшнее занятие посвящено организации взаимодействия компонентов и текстовых полей. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные...

[Перевод] Учебный курс по React, часть 26: архитектура приложений, паттерн Container/Component В этой части перевода учебного курса по React мы поговорим об архитектуре React-приложений. В частности, обсудим популярный паттерн Container/Component. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: фай...

Check Point Maestro Hyperscale Network Security — новая масштабируемая security платформа Компания Check Point довольно резво начала 2019 год сделав сразу несколько анонсов. Рассказать обо всем в одной статье не получится, поэтому начнем с самого главного — Check Point Maestro Hyperscale Network Security. Maestro это новая масштабируемая платформа, которая позв...

Байт-машина для форта (и не только) по-индейски (часть 3) Наступил год 2019. Новогодние праздники подходят к концу. Самое время начать вспоминать байты, команды, переменные, циклы… Что-то я все уже забыл с этими праздниками. Придется вспоминать вместе! Сегодня сделаем интерпретатор для нашей байт-машины. Это третья статья, первы...

Security Week 49: взлом гостиничной инфраструктуры 28 ноября эксперты «Лаборатории Касперского» опубликовали интересное исследование о систематических атаках на компьютеры в гостиницах. Подтвержденных жертв кампании больше 20, потенциальных — больше тысячи. Исследованные атаки, скорее всего, ведут две разные группировки с не...

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

[Перевод] Как написать смарт-контракт на Python в сети Ontology. Часть 1: Blockchain & Block API Это первая часть из серии обучающих статей о создании смарт-контрактов на Python в блокчейн сети Ontology при помощи инструмента разработки смарт-контрактов SmartX. В этой статье мы начнём знакомство с API смарт-контракта Ontology. API смарт-контракта Ontology разделен н...

[Из песочницы] Лучшие практики React и советы, которые каждый разработчик должен знать. Часть 1 Привет, Хабр! Представляю вашему вниманию перевод статьи «React Best Practices & Tips Every React Developer Should Know Pt.1» автора Alex Devero. React — одна из самых популярных библиотек для построения интерактивных пользовательских интерфейсов. В этой статье я пока...

Создано вредоносное ПО, позволяющее редактировать МРТ и КТ (дорисовывать и убирать опухоли) до получения снимка. Врачи не способны выявить следы редактирования Уязвимости встречаются не только в процессорах Intel, но в самых разных устройствах и продуктах из различных сегментов. И хотя случаи обнаружения проблем в узкоспециализированном медицинском оборудовании, от которого в некоторых случаях буквально зависит человеческая жизнь, ...

Python v3.x: обработчик исключений для корутин и синхронных функций. Вобщем, для всего В свободное время я работаю над своим небольшим проектом. Написан на Python v3.x + SQLAlchemy. Возможно, я когда-нибудь напишу и о нем, но сегодня хочу рассказать о своем декораторе для обработки исключений. Его можно применять как для функций, так и для методов. Синхронных ...

Смотрю и слушаю где хочу. Интегрируем Chromecast в Android-приложение На улице я часто слушаю аудиокниги и подкасты со смартфона. Когда прихожу домой, мне хочется продолжить слушать их на Android TV или Google Home. Но далеко не все приложения поддерживают Chromecast. А было бы удобно. По статистике Google за последние 3 года, количество дева...

Безопасность клиентских приложений: практические советы для Front-end разработчика Как вы знаете, большая часть атак BlackHat-хакеров направлена на компрометацию серверных данных web-приложений и сервисов. При этом клиентскую часть сегодня атакуют не реже. Согласно сухому определению, любая атака — это комплекс мер со стороны хакера, направленных на сеть и...

Кибергруппировка Cloud Atlas скрытно атакует новые цели Целями злоумышленников стали международные, экономические и аэрокосмические компании, а также правительственные и религиозные организации в России и ряде стран Восточной Европы и Центральной Азии. Отличительной особенностью этих атак стало использование нового, усовершенство...

Детали перехода от парных (относительных) валютных курсов к абсолютным. Работа над ошибками Введение Настоящая статья описывает результаты эксперимента проведенного в рамках проекта “Абсолютный курс валют”. Протокол эксперимента можно увидеть перейдя по ссылке. Проект “Абсолютный курс валют” занимается анализом парных валютных курсов, выделением из них абсолютных ...

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

[Перевод] ООП мертво, да здравствует ООП Источники вдохновения Этот пост возник благодаря недавней публикации Араса Пранцкевичуса о докладе, предназначенном для программистов-джуниоров. В нём рассказывается о том, как адаптироваться к новым ECS-архитектурам. Арас следует привычной схеме (объяснения ниже): показыва...

[Перевод] Отладка скрытых утечек памяти в Ruby В 2015-м я написал об инструментарии, который Ruby предоставляет для обнаружения управляемых утечек памяти. В основном статья рассказывала о легко управляемых утечках. На этот раз я расскажу об инструментах и хитростях, которые вы можете применять для ликвидации утечек, кот...

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

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

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

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

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

VMware NSX для самых маленьких. Часть 5. Настройка балансировщика нагрузки Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP Часть четвертая. Настройка маршрутизации В прошлый раз мы говорили о возможностях NSX Edge в разрезе статической и динамической маршрутизации, а сегодня будем разбираться с ба...

В Институте развития интернета предложили включить в школьную программу популярные компьютерные игры Перечень, направленный в Минпросвещения, включает игры Dota 2, Hearthstone, Dota Underlords, FIFA 19, World of Tanks, Minecraft и CodinGame. По мнению экспертов, эти игры позволяют развивать навыки командной игры, стратегического мышления, логики, скорости реакции, а также к...

DeepPavlov для разработчиков: #1 инструменты NLP и создания чат-ботов Всем привет! Мы открываем цикл статей, посвященных решению практических задач, связанных с обработкой естественного языка (Natural Language Processing или просто NLP) и созданием диалоговых агентов (чат-ботов) с помощью open-source библиотеки DeepPavlov, которую разрабатывае...

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

Инструменты Метода управления проектной организацией (часть 2) Продолжаю серию публикаций об управлении проектной организацией в условиях когда много нужно выполнять все обязательства в срок и в полном объеме и есть ограничение по ресурсам. В прошлый раз я рассказал о концепции Pulse Management (Метода Пульса, далее «Метод»), а сейчас з...

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

Прекрасный Коcплей на Лили (Lili), Эмили Де Рошфор из Tekken в исполнении моделей: Mackenzie G и Jen Ren S! Работа Мишель Моник (Michelle Monique) над фотографией просто феноменальна. Её виденье эпично, а навыки фотографии и редактирования действительно потрясающие. Вы даже можете увидеть, как эти снимки выполняются в ее видео-бэкстейдже этой фотосессии на великолепную Лили, Эмили...

[Перевод] Python в Visual Studio Code – октябрьское обновление Мы рады сообщить о доступности октябрьского обновления расширения Python для Visual Studio Code. Вы можете загрузить расширение Python из Marketplace или установить его прямо из галереи расширений в Visual Studio Code. Если у вас уже установлено расширение Python, вы также...

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

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

[Перевод] Основы Signed Distance Field в 2D Хотя меши являются простейшим и наиболее универсальным способом рендеринга, существуют и другие варианты представления фигур в 2d и 3d. Одним из часто используемых способов являются поля расстояний со знаком (signed distance fields, SDF). Поля расстояний со знаком обеспечива...

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

CRISPR помогла создать двухъядерный компьютер внутри человеческой клетки Швейцарские ученые применили инструменты редактирования генома по методу CRISPR для создания биокомпьютеров. Они отталкивались от идеи, что живая клетка – уже готовый вычислительный комплекс, способный принять данные извне и обработать их. А все человеческое тело можно рассм...

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

Вычисляем потенциальных «злых» ботов и блокируем их по IP Доброго дня! В статье расскажу как можно пользователям обычного хостинга отловить IP адреса генерирующие излишнюю нагрузку на сайт и затем блокировать их при помощи средств хостинга, будет «чуть-чуть» php кода, несколько скриншотов. Читать дальше →

[Перевод] Генерация подземелий и пещер для моей игры На этой неделе я начал работать над новой темой: генерацией подземелий и пещер. Я использовал разбиение пространства для генерации комнат, алгоритмы генерации лабиринтов для генерации коридоров и клеточные автоматы для придания пещерам более естествненного внешнего вида. Р...

[Перевод] Метод CASE: гуманный мониторинг Дзииииииинь! На часах 3 утра, вы смотрите чудесный сон, и вдруг — звонок. На этой неделе вы дежурите, и, видимо, что-то случилось. Автоматизированная система зовет разобраться, в чем дело. Это важный момент управления современными компьютерными системами, но давайте посмотр...

Компания «Россети Урал» создала цифровую систему управления сервисами на базе Naumen Service Desk Проект реализуется в рамках программы цифровой трансформации предприятия, направленной на планомерное преобразование энергетической электросетевой инфраструктуры за счёт сквозной цифровизации процессов, внедрения инновационных технологий.

[Перевод] Учебный курс по React, часть 24: второе занятие по работе с формами Сегодня мы продолжим разговор об использовании форм в React. В прошлый раз мы рассматривали особенности взаимодействия компонентов и текстовых полей. Здесь же мы обсудим работу с другими элементами форм. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX →...

Feudal Alloy – средневековье, роботы и рыбки в головах (Mac) За последний год на виртуальных полках магазина Steam появилось немало экшен-платформеров с прокачкой и элементами метроидвании. Для того чтобы выделить свои проекты на фоне собратьев по жанру разработчики использовали разные подходы. Кто-то старался привлечь пользователей н...

Software Defined Radio — как это работает? Часть 5 Привет Хабр. В предыдущей части был рассмотрен прием сигналов с помощью GNU Radio. Сейчас мы рассмотрим обратную задачу — передачу сигналов различного вида модуляции. Как и в случае приема, с помощью GNU Radio можно создать сложную программную систему для передачи сигнал...

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

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

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

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

VMware NSX для самых маленьких. Часть 3. Настройка DHCP Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT DHCP – сетевой протокол, позволяющий вашим виртуальным машинам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. В NSX Edge есть три опции настроек DHCP: 1) DHCP p...

[Из песочницы] Применение формальных методов валидации моделей для UI Привет, Хабр! Представляю вашему вниманию перевод статьи «FORMALLY SPECIFYING UIS» автора Hillel Wayne. От автора Относительно недавно я наткнулся на статью про Инженерные методы в разработке ПО, где vasil-sd рассказал про формальную валидацию спецификаций к создаваемым пр...

[Перевод] Продвинутые структуры данных. Часть первая: Направленный ациклический граф Всем привет! Уже на следующей неделе стартуют занятия в новой группе курса «Алгоритмы для разработчиков». В связи с этим, делимся с вами переводом совсем небольшого, но довольно интересного материала. Я хотел начать эту серию статей со структуры данных, с которой все мы к...

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

Книга "{Вы не знаете JS} Типы и грамматические конструкции" Каким бы опытом программирования на JavaScript вы ни обладали, скорее всего, вы не понимаете язык в полной мере. Это лаконичное руководство исследует типы более глубоко, чем все существующие книги: вы узнаете, как работают типы, о проблемах их преобразования и научитесь пол...

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

[Перевод] В коре вашего мозга 17 млрд компьютеров Нейросеть нейросетей Изображение brentsview под лицензией CC BY-NC 2.0 В мозг поступает информация из внешнего мира, его нейроны получают данные на входе, производят обработку и выдают некий результат. Это может быть мысль (хочу карри на ужин), действие (сделать карри), и...

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

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

[Из песочницы] OpenAI Gym+ROS+Gazebo: обучение автономного робота в домашних условиях. Часть 1 За последние несколько лет мы стали свидетелями внедрения технологий искусственного интеллекта в нашу повседневной жизни — от роботов-пылесосов до беспилотных дронов. Все они, управляемые искусственным интеллектом, уже являются для нас обыденностью. Но несмотря на это, проце...

Pointer и Value семантика в определении получателя метода Создание новых типов данных — важная часть работы каждого программиста. В большинстве языков определение типа состоит из описания его полей и методов. В Golang помимо этого нужно решить, какую семантику получателя для методов нового типа использовать: значение (value) или ук...

[Из песочницы] Очереди — что это, зачем и как использовать? Посмотрим на возможности AWS SQS Сначала давайте дадим определение понятию «очередь — queue». Возьмем для рассмотрения тип очереди «FIFO»(first in, first out). Если взять значение из википедии — «это абстрактный тип данных с дисциплиной доступа к элементам». Если вкратце, это означает что мы не можем из н...

Робот-тележка на ROS. Часть 4. Создаем симуляцию робота в rviz и gazebo Продолжение цикла статей о создании небольшого робота. В этот раз речь пойдет о создании копии робота в симуляции, которую предлагают визуальные ROS-среды rviz и gazebo (далее «редакторы»). Работа в редакторах будет вестись на виртуальной машине, образ которой был ранее пред...

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

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

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

Преобразование полигональных моделей в граничное представление: алгоритм и примеры кода В большинстве систем проектирования (САПР) основным представлением моделируемого объекта является граничное представление геометрии или B-rep (Boundary representation). Но все чаще пользователям САПР приходится иметь дело с полигональными моделями, например, полученными в ре...

[Перевод] Service mesh для микросервисов. Часть III. Более глубокий взгляд на Istio Перевод статьи подготовлен специально для студентов курса «Инфраструктурная платформа на основе Kubernetes». Это третья статья из серии публикаций, посвященных  Kubernetes и технологии service mesh (также известной как «сеть микросервисов» и «mesh-сеть микросервисов»). В ...

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

iOS 13: Новые эффекты и инструменты для обработки и редактирования фото и видео на iPhone и iPad Системное приложение для работы с фотографиями получило новые возможности как для редактирования фото, так и – впервые в истории! – видео. ПО ТЕМЕ: Как сделать длинный скриншот в iOS 13 на iPhone и iPad.   Эффекты и инструменты для обработки видео на iPhone и iPad В пре...

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

Система совместной работы с документами для Zimbra Open-Source Edition Важность совместного редактирования документов в современном бизнесе трудно переоценить. Возможность составлять договоры и соглашения с участием сотрудников из юр.отдела, писать коммерческие предложения под присмотром начальства в режиме онлайн и так далее, позволяет сэконом...

Множественные эксперименты: теория и практика В современном мире сложно представить развитие продукта без A/B-тестирования. Чтобы успешно запустить продукт или новую функциональность — надо грамотно спроектировать A/B, рассчитать и интерпретировать его результаты. Иногда нам требуется тестирование более чем для двух гру...

Пять ключевых трендов ITSM на этот год Говорим о направлениях, в которых развивается ITSM в 2019 году. / Unsplash / Alessio Ferretti Чат-боты Автоматизация позволяет сэкономить время, деньги и человеческие ресурсы. Одним из наиболее перспективных направлений автоматизации становится техподдержка. Компании вне...

Создание моментальных игр на Unity в Google Play Instant Привет! Перевели статью от Google с пошаговой инструкцией создания Instant Game в Google Play для игр на Unity. Google анонсировал сервис Google Play Instant в марте 2018-го; с тех пор гейм-девелоперы могут создавать игры с мгновенным погружением. Существует несколько спо...

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

Создаем шаблон Xcode проекта Всем привет, я Ваня — iOS-разработчик. В этой статье я расскажу о том, как создавать Xcode шаблоны проектов и о том, как они помогли сэкономить время на старте проекта. Читать дальше →

[Перевод] AlphaFold: Использование ИИ для научных открытий И снова здравствуйте! Делимся публикацией, перевод которой подготовлен специально для студентов курса «Нейронные сети на Python». Сегодня мы расскажем о первом важном событии в истории развития DeepMind, чтобы показать, как исследования с помощью искусственного интеллекта м...

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

Как мы строили Wi-Fi на Huawei В трёх предыдущих статьях (один, два, три) мы рассказали о том, как модернизировали проводную сеть в офисе «Инфосистемы Джет». Теперь пора рассказать о модернизации беспроводной сети. Читать дальше →

[Перевод] Как сделать контейнеры еще более изолированными: обзор контейнерных sandbox-технологий Несмотря на то, что большая часть ИТ-индустрии внедряет инфраструктурные решения на базе контейнеров и облачных решений, необходимо понимать и ограничения этих технологий. Традиционно Docker, Linux Containers (LXC) и Rocket (rkt) не являются по-настоящему изолированными, пос...

Пройди опрос и поделись опытом создания навыков для Алисы Команда Яндекс.Диалогов, активно продолжает работать над развитием платформы для разработчиков. Ей очень важна обратная связь, позволяющая понять насколько разработчикам удобно создавать и публиковать навыки в платформе. Всем создателям навыков для Алисы предл...

ABBYY FineReader 15 выводит редактирование PDF на новый уровень ABBYY обновила ABBYY FineReader — универсальную программу для работы с бумажными и PDF-документами. Благодаря внутренним разработкам ABBYY в области искусственного интеллекта и современных методов машинного обучения, программа превратилась ...

Учёные превратили CRISPR в «генетический швейцарский нож» CRISPR является мощным инструментом редактирования геномов, который часто называют «генетическими ножницами». Однако новое исследование, проведенное Калифорнийским технологическим институтом (Caltech), позволяет сделать из него «генетический швейцарский нож». Учёные адаптиро...

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

[Перевод] Десять заповедей React компонентов Написано Kristofer Selbekk, в сотрудничестве с Caroline Odden. Основано на лекции с таким же названием и с теми же людьми, состоявшейся на встрече ReactJS в Осло в июне 2019 года.От переводчика — оригинальное название The 10 Component Commandments не упоминает React, но бол...

[Из песочницы] Netplan и как его правильно приготовить Ubuntu потрясающая операционная система, давно не работал с Ubuntu server а обновлять свой Desktop со стабильной версии не было смысла. И вот не давно пришлось столкнутся со свеженьким релизом Ubuntu server 18.04, моему удивлению не было предела, когда я понял что я бесконеч...

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

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

Tic Tac Toe, часть 2 Продолжение статьи Tic Tac Toe, часть 1, в которой мы начали разработку этой игры на Svelte. В этой части мы доделаем игру до конца. Добавим команды Undo/Redo, произвольный доступ к любому шагу игры, попеременные ходы с противником, вывод статуса игры, определение победителя...

[Перевод] Как работает ИИ в игре Hitman (2016) Выпущенный компанией IO Interactive в 2016 году Hitman вернул франшизу к её корням: созданию богатых и интересных сценариев, в которых Агент 47 должен устранять свои цели, часто импровизированным и непрактичным способом. Для решения этой задачи внутри игры применяется множес...

[Перевод] Что записано в this? Закулисье JavaScript-объектов JavaScript — это мультипарадигменный язык, поддерживающий объектно-ориентированное программирование и динамическую привязку методов — мощную концепцию, которая позволяет структуре JavaScript-кода меняться во время выполнения программы. Это даёт разработчикам серьёзные возмож...

Раллийный симулятор WRC 8 FIA World Rally Championship выйдет в сентябре Издательство Bigben Interactive анонсировало очередную часть серии раллийных симуляторов WRC. Объявлено, что WRC 8 FIA World Rally Championship выйдет в сентябре этого года на Xbox One, PlayStation 4, Nintendo Switch и ПК. Разработкой, как и в случае с предыдущей ...

[Перевод] Учебный курс по React, часть 16: четвёртый этап работы над TODO-приложением, обработка событий В сегодняшней части перевода учебного курса по React мы продолжим работу над Todo-приложением и поговорим о том, как в React обрабатывают события. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы комп...

[Из песочницы] Domain Driven Design: Value Objects и Entity Framework Core на практике На Хабре и не только написано приличное количество статей про Domain Driven Design — как в общем про архитектуру, так и с примерами на .Net. Но при этом зачастую слабо упоминается такая важнейшая часть этой архитектуры, как Value Objects. В этой статье я постараюсь раскрыт...

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

Яндекс.Директ обновляет окно редактирования объявлений Через несколько недель все страницы создания баннеров станут доступны только в новом дизайне

Celestia: приключения багов в космосе Celestia — трехмерный космический симулятор. Симуляция космоса позволяет исследовать нашу вселенную в трех измерениях. Celestia доступна на Windows, Linux и macOS. Проект очень маленький и в нём, с помощью PVS-Studio, обнаруживается совсем небольшое количество дефектов. Одн...

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

AERODISK Engine: Катастрофоустойчивость. Часть 2. Метрокластер Привет, читатели Хабра! В прошлой статье мы рассказали о простом средстве катастрофоустойчивости в системах хранения AERODISK ENGINE – о репликации. В этой статье мы погрузимся в более сложную и интересную тему – метрокластер, то есть средство автоматизированной защиты от к...

[Перевод] Posit-арифметика: победа над floating point на его собственном поле. Часть 1 Часть 2 От переводчика: Тема формата Posit уже была на хабре здесь, но без существенных технических подробностей. В этой публикации я предлагаю вашему вниманию перевод статьи Джона Густафсона (автора Posit) и Айзека Йонемото, посвящённой формату Posit. Так как статья имеет ...

Трактат о Pinе. Мысли о настройке и работе с пинами на С++ для микроконтроллеров (на примере CortexM) Последнее время я сильно увлекся вопросом надежности софта для микроконтроллеров, 0xd34df00d посоветовал мне сильнодействующие препараты, но к сожалению руки пока не дошли до изучения Haskell и Ivory для микроконтроллеров, да и вообще до совершенно новых подходов к разработк...

[Из песочницы] Анализ скроллинга страниц в Google Data Studio Добрый день, меня зовут Чакканбаев Ильхом я автор блога SeoPulses, хотел бы поделиться переводом и реализацией на практике статьи michaelhoweely.com. Для того чтобы создать полноценный и понятный отчет для блога или статейного сайта в Google Data Studio потребуется использов...

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

Применение смарт-аккаунтов Waves. Часть 1: от аукционов до бонусных программ Блокчейн часто ассоциируется лишь с криптовалютами, но области применения технологии DLT значительно шире. Одно из самых перспективных направлений для применения блокчейна – смарт-контракт, выполняющийся автоматически и не требующий доверия между сторонами, его заключившим...

Делаем процесс разработки тяжеловесного программного обеспечения под микроконтроллеры более удобным (нет) Сейчас уже никого не удивить микроконтроллерами с энергонезависимой (чаще всего Flash) памятью объемом 512 килобайт и более. Их стоимость постепенно снижается, а доступность напротив, растет. Наличие такого объема энергонезависимой памяти дает возможность писать «тяжелые» по...

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

Компания Intel продемонстрировала новые серверные решения Поток данных, генерируемых человечеством, растет в геометрической прогрессии: более половины всего объема существующей информации было создано всего за 2 последних года. Уже в ближайшее время, каждый человек на планете будет генерировать в среднем 1,7 МБ данных в секунду, а ...

[Перевод] Как написать смарт контракт на WebAssembly в сети Ontology? Часть 2: С++ В этой статье мы разберем на двух примерах, как написать смарт контракт на языке C++, используя WASM на основе блокчейн сети Ontology. Сегодня, после нескольких месяцев стабильной работы в тестовом режиме, Ontology запустила WASM в основной сети, что позволяет безболезненн...

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

MSI анонсирует ноутбук Modern 15 Modern 15 весит всего 1,6 кг, что делает его ультрапортативным высокопроизводительным ноутбуком. Гладкое алюминиевое и пескоструйное черное покрытие создает сдержанный и стильный внешний вид. Особенностью MSI Modern 15 является его производительность, обеспечиваемая про...

Протокольно ориентированное программирование, часть 3 Завершающая статья на тему протокольно ориентированного программирования. В этой части мы рассмотрим как переменные обобщенного типа хранятся и копируются и как с ними работает метод dispatch. Читать дальше →

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

Как рендерится кадр в Shadow Fight 3 Технический 3D-художник Banzai Games Роман Терский рассказал о том, как происходит отрисовка кадра и устроены материалы для персонажей в мобильной игре Shadow Fight 3, а также раскрыл небольшие хитрости в настройке окружения Shadow Fight 3 — игра в жанре файтинг/РПГ, разр...

Как мы создали систему оповещения о ядерной угрозе, или как я обучил нейросеть на заголовках Хабра Заголовок статьи может показаться странным и это неспроста — он прекрасен именно тем, что написал его не я, а LSTM-нейросеть (а точнее его часть перед "или"). (схема LSTM взята из Understanding LSTM Networks) И сегодня мы разберёмся, как можно генерировать заголовки статей ...

Как 5G меняет технологии гейминга Благодаря совместной работе компаний отрасли на рынок уже выходят новые устройства и происходит активное развёртывание сетей и инфраструктуры 5G. После десяти лет разработки революционных технологий, необходимых для создания сетей нового поколения, мы представили миру моби...

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

Нейронные сети научили превращать пиксельные изображения в фотореалистичные Недавно нам показали «ремейк» классического шутера 1997 года Quake II, где основная работа по улучшению была сведена к интеграции технологии трассировки лучей, но на этот раз в Сети появилось кое-что поинтереснее. Наконец-то, HD-ремейк, которого мы все ждали! Один из пользо...

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

Телефонные опросы и поиск в CRM в 3CX CFD, новый плагин WP-Live Chat Support, обновление приложения для Android За последние пару недель мы представили несколько интересных обновлений и один новый продукт. Все эти новинки и улучшения соответствуют политике 3CX по созданию на базе UC АТС доступного мультиканального колл-центра.    Обновление 3CX CFD — компоненты Опрос и Поиск в CRM Све...

[Из песочницы] Получаем данные enum в проекции Automapper Немного ликбеза Я очень люблю Automapper, особенно его QueryableExtensions и метод ProjectTo<>. Если вкратце, то данный метод позволяет делать проекцию типов прямо в SQL-запросе. Это позволяло получать dto фактически из базы данных. Т.е. не нужно получать две entity из...

Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript PieceofScript — простой язык для написания сценариев автоматического тестирования HTTP JSON API. PieceofScript позволяет: описывать методы API в формате YAML, с названием метода на почти естественном языке, что удобно для чтения тестов достаточно гибко описывать модели в...

[Перевод] Учебный курс по React, часть 28: современные возможности React, идеи проектов, заключение Сегодня, в заключительной части перевода курса по React, мы поговорим о современных возможностях React и обсудим идеи React-приложений, создавая которые, вы можете повторить то, чему научились, проходя этот курс, и узнать много нового. → Часть 1: обзор курса, причины попу...

[Перевод] Создание динамических PDF-файлов с использованием React и Node.js Материал, перевод которого мы сегодня публикуем, посвящён созданию динамических PDF-файлов с использованием HTML-кода в качестве шаблона. А именно, речь пойдёт о том, как сформировать простой счёт на оплату неких товаров или услуг, динамические данные, включённые в который, ...

[recovery mode] Домашняя BigData. Часть 1. Практика Spark Streaming на кластере AWS Здравствуйте. В интернете много сервисов, предоставляющих возможности облачных сервисов. С их помощью можно осваивать технологии BigData. В данной статье мы в домашних условиях произведем установку на платформу EC2 AWS (Amazon Web Services) Apache Kafka, Apache Spark, Zook...

[Перевод] Учебный курс по React, часть 17: пятый этап работы над TODO-приложением, модификация состояния компонентов В сегодняшней части перевода курса по React мы предлагаем вам выполнить очередное практическое задание и представляем вашему вниманию рассказ о том, как модифицировать состояние компонентов React. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть ...

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

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

Что (не)нужно знать для создания игр на Unity Unity — игровой движок, с далеко не нулевым порогом вхождения (сравнивая с тем же Game Maker Studio), и в этой статье я расскажу с какими проблемами столкнулся начиная его изучение, и какие решения этих проблем нашел. Я буду описывать подобные моменты на примере своей 2d и...

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

[Перевод] Функциональное мышление. Часть 10 Вы представляете, это уже десятая часть цикла! И хотя до этого повествование было сфокусировано на чисто функциональном стиле, иногда удобно переключиться на объектно-ориентированный стиль. А одними из ключевых особенностей объектно-ориентированного стиля являются возможност...

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

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

iPhone 11 получит продвинутую технологию для работы с видео Камера iPhone 11 порадует передовыми опциями Меньше двух недель остаётся до презентации iPhone, а мы знаем о новинках почти всё. Утекли не только спецификации, но и будущий дизайн смартфонов. А это значит, что iPhone 11 не станет для поклонников Apple откровением — тем...

Сэмплирование с температурой Недавно натолкнулся на вопрос в чате ODS: почему алгоритм, генерирующий текст буква-за-буквой, сэмплит буквы не из p (вектор вероятностей следующей буквы, предсказанный языковой моделью), а из p'=softmax(log(p)/t) (где t — это ещё какой-то непонятный положительный скаляр)? Б...

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

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

Хорошее не бывает дешёвым. Но бывает бесплатным В этой статье я хочу рассказать о Rolling Scopes School – бесплатном курсе по JavaScript / фронтенду, который прошла, и который мне очень понравился. Узнала я об этом курсе случайно, информации в сети о нём, на мой взгляд, немного, а курс отличный и заслуживает внимания. Дум...

[Из песочницы] Справочник начинающего подкастера Эта статья — краткое руководство для тех, кто хочет запустить свой собственный подкаст. Когда я вместе с моим нынешним соведущим год назад запускал подкаст “В бесконечность и далее”, я не смог найти ни одной по-настоящему всеобъемлющей статьи. Поэтому я решил попытаться запо...

[recovery mode] Интеграция Опенкарт с учетными системами Опенкарт — один из самых распространенных интернет-магазинов. Во многих случаях возникает задача интеграции со складской учетной системой (чаще всего с 1С). Интеграция предполагает, как минимум, передачу заказов с ИМ в складскую систему для их обработки и отправки товаров п...

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

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

Ученые создали инструмент CRISPR, который может уничтожать более длинные ДНК Международная группа ученых разработала новый инструмент для редактирования генов на основе CRISPR. Исследователи, возглавляемые Мичиганским университетом и Корнельским университетом, сравнивают новый инструмент с измельчителем, способным уничтожать длинные участки ДНК. ...

Universal Radio Hacker — легкий способ исследовать цифровые радиопротоколы Universal Radio Hacker (URH) — невероятно простой и понятный инструмент для анализа цифровых радиопротоколов. В отличие от монстров вроде GnuRadio, освоить его можно за пять минут без мучений. Главные особенности URH: Работает на всех платформах — на macOS/Linux/Windows и...

VMware NSX для самых маленьких. Часть 4. Настройка маршрутизации Часть первая. Вводная Часть вторая. Настройка правил Firewall и NAT Часть третья. Настройка DHCP NSX Edge поддерживает статическую и динамическую (ospf, bgp) маршрутизацию. Первоначальная настройка Статическая маршрутизация OSPF BGP Route Redistribution Читать дальше →

Как настроить Continuous Deployment для своего проекта: личный опыт Перевели для вас статью Юлиуса Минмо о настройке непрерывной интеграции (Continuous Deployment) для своего проекта. Автоматизация позволяет сэкономить кучу времени и сил. Статья будет полезна, в первую очередь, начинающим программистам. Непрерывная интеграция — отличная ...

Кодировки, шифр сдвига, брут хешей и создание картинки с помощью PIL python. Решение задач с r0от-мi Cryto. Часть 1 Данная статья содержит решений заданий Encoding ASCII и Encoding UU направленные на кодировки, Hash Message Digest 5 и Hash SHA-2 — на нахождение прообраза хеша, Shift cipher — шифр сдвига, и Pixel Madness — на составление картинки. Организационная информацияСпециально дл...

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

[Перевод] Как я нашёл баг в GNU Tar Автор статьи — Крис Зибенманн, системный администратор Unix в университете Торонто Время от времени в моей работе происходит нечто странное, что заставляет задуматься, даже если сразу непонятно, какие следуют выводы. Недавно я упомянул, что мы нашли ошибку в GNU Tar, и исто...

[Перевод] Как написать смарт контракт на WebAssembly в сети Ontology? Часть 1: Rust Технология Ontology Wasm снижает стоимость переноса смарт контрактов dApp со сложной бизнес- логикой на блокчейн, тем самым значительно обогащая dApp экосистему. В настоящее время Ontology Wasm одновременно поддерживает разработку как на языке Rust, так и на языке C++. Яз...

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

[Перевод] Бег с протезами: некстген симуляция движения человека с помощью мышц, костей и нейросети Сотрудники Сеульского университета опубликовали исследование о симуляции движения двуногих персонажей на основе работы суставов и мышечных сокращений, использующей нейросеть с Deep Reinforcement Learning. Под катом перевод краткого обзора. Читать дальше →

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

[Перевод] Два в одном: Intel Optane Memory H10 (часть 2) Часть 1 >> Часть 2 Тест накопителей AnandTech — The Destroyer The Destroyer — это чрезвычайно долгий тест, который реплицирует шаблоны доступа приложений с большим объемом ввода-вывода. Как при использовании в реальных условиях, накопители получают время от времени не...

OS1: примитивное ядро на Rust для x86. Часть 2. VGA, GDT, IDT Первая часть Первая статья еще не успела остыть, а я решил не держать вас в интриге и написать продолжение. Итак, в предыдущей статье мы поговорили о линковке, загрузке файла ядра и первичной инициализации. Я дал несколько полезных ссылок, рассказал, как размещается загружен...

[Перевод] Создание системы боёв в RPG Боевые системы наших игр Rimelands: Hammer of Thor и Trulon: The Shadow Engine были высоко оценены игроками. Несмотря на то, что это два сильно отличающихся взгляда на систему боя в RPG, они имеют много общего в дизайне механик и иллюстрируют мою личную философию дизайна. В...

[Из песочницы] Руководство Google по стилю в C++ Часть 1. Именование Часть 2. Комментарии … Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятнее иметь...

«Прощай, Коррозия!»: Блогер рассказал о необходимости антикора на Mitsubishi Outlander XL 2019 Антикоррозийная обработка в перспективе позволит сэкономить на устранении неполадок, возникших из-за образования ржавчины. Каждый владелец Mitsubishi Outlander XL 2019 года сталкивался с тем, что этот автомобиль обладает лакокрасочным покрытием не лучшего качества, а кроме ...

[Перевод] Приёмы в проектировании пользовательского интерфейса, которые сэкономят время В переводе этой статьи автор приводят ряд советов и приёмов, которые упростят жизнь при проектировании дизайна пользовательского интерфейса. В статье даны сведения о полезных и экономящих время возможностях работы таких программ как Sketch, Adobe Illustrator, Figma, Adobe XD...

Динамический ремаркетинг myTarget: неперсональные продуктовые рекомендации Динамический ремаркетинг (dynrem) в myTarget — это технология направленной рекламы, использующая информацию о действиях пользователей на сайтах и в мобильных приложениях рекламодателей. Например, в интернет-магазине пользователь просмотрел страницы товаров или добавил их в...

Деливерим фичи быстрее. Опыт Android-разработки в Badoo Всем привет! Меня зовут Анатолий Варивончик. Я работаю в Badoo уже больше года, а мой общий стаж Android-разработки — более пяти лет. В своей практике я и мои коллеги часто сталкиваемся с необходимостью тестировать идеи максимально быстро и просто. Мы не хотим тратить много...

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

Google меняет правила работы с адаптивной и медийной рекламой в API Все запросы для создания и редактирования адаптивных объявлений перестанут работать

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

[Из песочницы] Анализ эмоциональной окраски отзывов с Кинопоиска Вступление Обработка естественного языка (NLP) является популярной и важной областью машинного обучения. В данном хабре я опишу свой первый проект, связанный с анализом эмоциональной окраски кино отзывов, написанный на Python. Задача сентиментного анализа является довольно р...

[Перевод] Python как предельный случай C++. Часть 1/2 От переводчикаБрендон Роудс − весьма скромный человек, представляющий себя в твиттере как «Python-программиста, возвращающего долг сообществу в форме докладов или эссе». Число этих «докладов и эссе» впечатляет, равно как и число свободных проектов, контрибьютором которых Бре...

План прокачки для получения профессии Data engineer Последние восемь лет я работаю руководителем проектов (не пишу код на работе), что естественно негативно влияет на мой технологический бекэнд. Я решил сократить своё технологическое отставание и получить профессию Data engineer. Основной навык Data engineer — способность раз...

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

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

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

[Из песочницы] Трехмерное моделирование в современном мире Сегодня я расскажу вам о том, что такое 3D-моделирование, каким оно бывает, где его применяют и с чем его едят. Эта статья в первую очередь ориентирована на тех, кто только краем уха слышал, что такое 3D-моделирование, или только пробует свои силы в этом. Поэтому буду объясн...

[Перевод] Редактирование текста тоже вас ненавидит Опубликованная месяц назад статья Алексис Бингесснер «Рендеринг текста вас ненавидит» очень мне близка. В далёком 2017 году я разрабатывал интерактивный текстовый редактор в браузере. Неудовлетворённый существующими библиотеками на ContentEditable, я подумал: «Эй, да просто...

Что слышно в радиоэфире? Радиолюбители/Ham radio Привет Хабр. В первой части статьи про то что слышно в эфире было рассказано про служебные станции на длинных и коротких волны. Отдельно стоит рассказать о радиолюбительских станциях. Во-первых, это тоже интересно, во-вторых, присоединиться к этому процессу, как на прием, т...

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

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

Курс лекций «Основы цифровой обработки сигналов» Всем привет! Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе...

Яндекс обновил редактирование групп объявлений в Директе, добавил смарт-центры для картинок в РСЯ и тестирует рекламу в поисковых подсказках Новости последних дней.

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

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

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

Механики геймификации: древо навыков Привет, Хабр! Продолжаем разговор о механиках геймификации. Прошлая статья рассказывала о рейтинге, а в этой поговорим о древе навыков (технологическом древе, skill tree). Рассмотрим, как древо используется в играх и как эту механику можно применить в геймификации. Читать ...

Лазерная коррекция зрения — так ли эффективен метод Smile на самом деле? Мои исходные данные: небольшая близорукость, -1 диоптрия, но всего лишь 20% остроты — видел только две строчки. Очки или линзы мне были неудобны, поэтому я решил сделать операцию. Выбор сводился всего к двум типам — Femto lasik или Smile. Фемто — проверенный и надежный мет...

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

[recovery mode] В чем набрать и чем собрать C++ проект Задавшись этим вопросом я, в первую очередь, сформулировал требования: жесткие и опциональные (но желательные) для системы сборки и графической среды разработки. Сразу хочу отметить что речь идет о написании C++ кода не под какую-то специфичную платформу типа Android или фре...

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

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

Атомное радио — выполнена первая в истории музыкальная передача Физики из США создали в лаборатории установку для атомного радио, в которой вместо антенн используются ридберговские атомы, просвечиваемые двумя парами лазеров, и провели первую в мире экспериментальную передачу стереофонической музыкальной композиции с помощью АМ-радиоволн...

Ученые призвали к мировому запрету использования технологии генного редактирования CRISPR В прошлом году китайский генетик Хэ Цзянькуй, несмотря на запрет, действующих на территории Поднебесной, провел крайне сомнительный с точки зрения нравственности и этики эксперимент по генному редактированию эмбриональных клеток человека, вследствие чего на свет появились п...

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

Модельно ориентированное проектирование. Создание достоверной модели, на примере авиационного теплообменника «Если на клетке слона прочтёшь надпись «буйвол», не верь глазам своим» Козьма Прутков В предыдущей статье о модельно-ориентированном проектировании было показано, зачем нужна модель объекта, и доказано, что без этой модели объекта про model based design можно говорить толь...

[Перевод] Учебный курс по React, часть 18: шестой этап работы над TODO-приложением В сегодняшней части перевода учебного курса по React вам предлагается продолжить работу над Todo-приложением и сделать так, чтобы щелчки по флажкам воздействовали бы на состояние компонента. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: фун...

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

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

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

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

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

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

[Из песочницы] System.Console, Mono и NCurses Всем привет, в своей работе (а ранее и в учебе) я часто использую C# и этот язык стал мне, что называется, привычным. Решив немного потренироваться в программировании, я написал консольный текстовый редактор для Linux. Вкратце опишу полученный опыт. В Mono класс System.C...

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

[recovery mode] Бинарные деревья поиска Прелюдия Эта статья посвящена бинарным деревьям поиска. Недавно делал статью про сжатие данных методом Хаффмана. Там я не очень обращал внимание на бинарные деревья, ибо методы поиска, вставки, удаления не были актуальны. Теперь решил написать статью именно про деревья. Пожа...

Как мы разогнали САПР КОМПАС-3D → Часть 3 Это заключительная часть статьи об ускорении КОМПАС-3D v18 (Часть 1, Часть 2). Она посвящена доработкам в расчетах массо-центровочных характеристик и тому, что сделано для ускорения КОМПАСа на стороне нашего геометрического ядра C3D. И еще немного расскажем о том, какое желе...

[Перевод] ИИ и 2048. Часть 1: Метод Монте-Карло «2048» через несколько недель исполняется 5 лет, а значит, пора написать что-нибудь, посвящённое этой замечательной игре. Особенно познавательна тема самостоятельной игры искусственного интеллекта в головоломку. Способы реализации есть самые разные и сегодня разберём отно...

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

[recovery mode] Сервим всё Не так чтобы очень давно, в довольно недалекой галактике, на одной провинциальной планетке жили известные потомки обезьян, которые настолько обленились, что решили изобрести искусственный интеллект. «Ну а что?» — подумали они. Хорошо же иметь в советчиках Сверхразум «надмозг...

Stick Combats 5.1.0 Вы готовы к битве Стикманов? ЗАХВАТЫВАЮЩАЯ ИГРА Крутое управление и геймплэй не дадут вам скучать. Продуманый джойстик и вращаюшийся контроллер заслуживают отдельного внимания. Вы оцените разнообразие оружия и создадите свою технику стрельбы. Стрельба, управление и ге...

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