Социальные сети Рунета
Среда, 3 марта 2021

[Из песочницы] A* pathfinding на C#: двоичные кучи и борьба с аллокациями Сегодня мы разбираем один из популярнейших алгоритмов поиска пути. Работать будем с двумерным массивом целочисленных координат. Сначала кратко ознакомимся с методами обхода графов, напишем собственно поиск пути, а затем перейдём к самому вкусному: оптимизации быстродействия...

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

OSINT в Telegram Протокол Telegram известен своей доступностью и открытостью. У него есть множество публичных реализаций: tdlib/td, rubenlagus/TelegramApi, vysheng/tg, LonamiWebs/Telethon и другие. Однако, даже имея в распоряжении столь богатый инструментарий и объемную документацию (https...

GSoC 2019: Проверка графов на двудольность и трансформеры монад Прошлым летом я участвовал в Google Summer of Code — программе для студентов от компании Google. Ежегодно организаторы отбирают несколько Open Source-проектов, в том числе от таких известных организаций, как Boost.org и The Linux Foundation. Для работы над этими проектами Go...

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

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

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

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

Простое руководство по дистилляции BERT Если вы интересуетесь машинным обучением, то наверняка слышали про BERT и трансформеры. BERT — это языковая модель от Google, показавшая state-of-the-art результаты с большим отрывом на целом ряде задач. BERT, и вообще трансформеры, стали совершенно новым шаго...

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

[Перевод] Шпаргалка по сортировке для Data Science Сортировка данных является основной задачей для ученых и инженеров по обработке данных. Пользователи Python могут выбирать наиболее удобную из ряда библиотек со встроенными, оптимизированными опциями сортировки. Некоторые даже работают параллельно с GPU. На удивление, неко...

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

[Перевод] Как использовать простую утилиту для поиска уязвимостей в программном коде Graudit поддерживает множество языков программирования и позволяет интегрировать тестирование безопасности кодовой базы непосредственно в процесс разработки. Источник: Unsplash (Markus Spiske) Тестирование — важная часть жизненного цикла разработки программного обеспечени...

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

[Перевод] Алгоритм Укконена: от простого к сложному Изучая курс Алгоритмы на строках столкнулся с задачей о построении суффиксного дерева. Перейдя по ссылке на дополнительные материалы наткнулся на рекомендацию "просмотреть этот замечательный комментарий на Stack Overflow". Изучив и реализовав по приведённому вольному описан...

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

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

Ищем максимальную разницу между соседями. User-friendly-разбор задачи по алгоритмам Привет, Хабр! Давайте поговорим про алгоритмы. Новички часто воспринимают их как что-то тяжёлое, сложное и непонятное, и отчасти это правда, но алгоритмы — это базис. А чем лучше вы знаете базис своей специальности, тем с большей вероятностью преуспеете в ней. Сегодня м...

[Перевод] 5 JavaScript-библиотек для работы со строками Работа со строками может оказаться непростым делом из-за того, что она подразумевает решение множества разноплановых задач. Например, для простого приведения строки к «верблюжьему» стилю понадобится несколько строк кода: function camelize(str) {   return str.replace(/(?:^\w...

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

SafetyNet Attestation — описание и реализация проверки на PHP В эту тему пришлось детально погрузиться во время работы над обеспечением стандартных механизмов верификации устройств для разных мобильных платформ. Задача сводилась к разработке полноценной реализацию проверки JWS-токенов по протоколу SafetyNet на серверной стороне.После м...

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

Как проще всего найти работу в Киеве Один из самых популярных в Украине сервисов поиска работы grc.ua. Для тех, кто ищет работу в Киеве, можно сразу зайти в соответствующий раздел. The post Как проще всего найти работу в Киеве first appeared on HiTech.Expert.

[Перевод] Java и базы данных: обзор библиотек и API Каждый раз при необходимости взаимодействия с базами данных появляются три вопроса: - Какой подход использовать при разработке: java-first или database-first? Писать сначала Java-классы или SQL-запросы? Будет ли использоваться уже существующая база данных? - Каким способом в...

[Перевод] Простая интеграция RabbitMQ и Spring Boot Перевод статьи был подготовлен в преддверии старта курса «Разработчик на Spring Framework». Всем привет! Я хотел бы поделиться с вами библиотекой с открытым исходным кодом, которая облегчает интеграцию RabbitMQ с приложениями на Spring Boot. Кроме того, эта библиотека пре...

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

Ищем цепочку событий в потоке данных с помощью FlinkCEP В данной статье речь пойдет об использовании открытой платформы Apache Flink для обнаружения цепочки последовательности событий. Статья подойдет как для начинающих разработчиков в области обработки потоковых данных, так и для тех, кто желает познакомиться с Apache Flink. Н...

Алгоритмы быстрой обработки HTTP-строк В HTTP/2 появилась компрессия стандартных заголовков, но тело URI, Cookie, значения User-Agent по-прежнему могут составлять десятки килобайт и требуют токенизации, поиска и сравнения подстрок. Задача становится критичной, если HTTP-парсер должен обрабатывать интенсивный злон...

Объяснение: почему wc на Haskell оказался «быстрее» аналога на С После недавних статей (№10xd34df00d, №2chapuza, №3picul) сравнивающих скорость работы реализаций упрощенной утилиты wc у меня оставался только один вопрос — Как простая реализация на Haskell оказалась быстрее [простой реализации на C ?! Читать дальше →

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

Публикуем дизайн-библиотеки компонентов VKUI в Figma Библиотеки в дизайн-инструментах — это важная часть дизайн-системы. Мы считаем, что дизайнеры должны работать с элементами, которые максимально приближены к реализации в коде. Поэтому в библиотеках мы собрали для них самые актуальные компоненты, которые отражают все те же со...

[Из песочницы] Реализация алгоритма определения ширины объекта с помощью ультразвукового дальномера и энкодеров на языке RobotC Доброго дня! Сегодня я бы хотел поделиться реализацией алгоритма определения ширины объекта с помощью ультразвукового дальномера и энкодеров на языке программирования RobotC (с использованием платформы VEX EDR). Предистория Недавно, мне предложили провести мастер-класс на ...

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

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

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

[Перевод] 5 стратегий успешного поиска работы в сфере IT Пандемия COVID-19 успела внести свои коррективы на рынке труда, однако оставила шанс найти хорошую работу в сфере IT, в том числе за рубежом. Для того чтобы поиски работы увенчались успехом: 1. Инвестируйте время в резюме. Мало найдется людей, которые регулярно обновляют ...

[Перевод] D как улучшенный C Уолтер Брайт — «великодушный пожизненный диктатор» языка программирования D и основатель Digital Mars. За его плечами не один десяток лет опыта в разработке компиляторов и интерпретаторов для нескольких языков, в числе которых Zortech C++ — первый нативный компилятор C++. Он...

Фреймворки и библиотеки для кроссплатформенной разработки десктопных программ В этой статье я расскажу вам о некоторых самых популярных фреймворках, которые помогут вам при разработке программ для компьютеров под управлением Windows/MacOS/Linux. Если вы опытный программист, то вряд ли найдете в этой статье что-то новое для себя. Она скорее для новичко...

XML сайты в результатах поиска Что такое XML сайт XML сайт это сайт страницы которого являются простыми XML файлами с MIME типом "text/xml". Они содержат только уникальные данные для этой страницы. В таком XML файле задаётся ссылка на XSLT шаблон который преобразует XML в HTML или в XHTML в брау...

n-Queens Completion Problem — линейный алгоритм решения EricGrig Предисловие Я хотел бы начать предисловие со слов благодарности двум замечательным программистам из Одессы: Андрею Киперу (Lohica) и Тимуру Гиоргадзе (Luxoft), за независимую проверку полученных мною результатов, на начальном этапе исследования. 1. Статья «Line...

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

Navigation Component-дзюцу, vol. 2 – вложенные графы навигации Каждое большое приложение содержит множество способов навигации между экранами. А хорошая библиотека навигации должна помогать разработчику их реализовывать. Именно с такой мыслью я подошёл к исследованию кейсов со вложенными графами навигации. Это вторая из трёх статей про...

Google объявил о глобальном запуске BERT Google приступил к запуску алгоритма BERT по всему миру, на более чем 70 языках. Об этом сообщил сотрудник поиска Дэнни Салливан (Danny Sallivan) в Twitter. Как стало известно вчера, в число этих языков также входит русский. Всего их 72. Со всем списком можно ознакомиться в ...

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

[Из песочницы] Как использовать сторонние сборки в Plug-In Проблема Я, и думаю многие разработчики MS Dynamic CRM (в моём случае это 2016 on premise) столкнулись с проблемой, для того что бы использовать сторонние сборки, необходимо их объединять с основной сборкой и потом её регистрировать в Plugin Registration Util. Как пример мн...

[Перевод] Что принёс нам Pandas 1.0 9 января состоялся релиз Pandas 1.0.0rc. Предыдущая версия библиотеки — 0.25. Первый мажорный релиз содержит множество замечательных нововведений, в том числе улучшенное автоматическое суммирование датафреймов, больше форматов вывода, новые типы данных и даже новый сайт док...

[Перевод] Тесты Ферма и Миллера-Рабина на простоту Салют хабровчане! Сегодня мы продолжаем делиться полезным материалом, перевод которого подготовлен специально для студентов курса «Алгоритмы для разработчиков». Дано некоторое число n, как понять, что это число простое? Предположим, что n изначально нечетное, поскольку в ...

PgGraph — утилита для архивации и поиска зависимостей таблиц в PostgreSQL Сегодня я хочу представить читателям Хабра утилиту, написанную на Python, для работы с зависимостями таблиц в СУБД PostgreSQL. API утилиты простое и состоит из трех методов: archive_table — рекурсивная архивация/удаление строк с указанными Primary Keys get_table_referenc...

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

Вышел пакет Sequoia 0.20.0, реализация OpenPGP на Rust Вчера был представлен выпуск пакета Sequoia 0.20.0. Он предлагает библиотеку функций и инструментарий командной строки с реализацией стандартов OpenPGP (RFC-4880). Команда проекта состоит из трех человек — участников проекта OpenPGP (RFC-4880). Для повышения безопасности и ...

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

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

[Из песочницы] Кроссплатформенный многопоточный TCP/IP сервер на C++ Как-то раз встала задача по написанию простого и быстрого многопоточного TCP/IP сервера на C++ и при этом, чтобы работал из под Windows и Linux без требования как-либо изменять код за пределами класса самого сервера. Ранее, на чистом C++ без библиотек вроде Qt, Tcp-сервер не...

Загрузка и обработка изображений в .NET Core В этой статье я хочу рассказать о своём опыте реализации механизма загрузки изображений в .NET Core приложении с последующим их ресайзом и сохранением в файловой системе. Для обработки изображений я использовал кроссплатформенную библиотеку ImageSharp от Six Labors. Существу...

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

Мы опубликовали современный Voice Activity Detector и не только Всегда при работе с речью встает несколько очень "простых" вопросов, для решения которых нет большого количества удобных, открытых и простых инструментов: детекция наличия голоса (или музыки), детекция наличия цифр и классификация языков. Для решения задачи детек...

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

Что я узнал о поиске работы в IT в 2019 году Я уже рассказывал тут пару раз об источниках поиска работы, о том, какие каналы смотреть при подготовке к собеседованиям и вот это всё. Сейчас решил поделиться своими наблюдениями за рынком и подтвердить некоторые довольно популярные мысли, звучавшие в том числе и на Хабре в...

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

[Перевод] Пишем движок полнотекстового поиска на Go Полнотекстовый поиск — один из тех инструментов, которые мы используем практически каждый день, когда ищем какую-то информацию в интернете. Full-Text Search (FTS) — это метод поиска текста в коллекции документов. Документ может ссылаться на веб-страницу, газетную статью, соо...

SQL HowTo: префиксный FTS-поиск с релевантностью по дате В нашем СБИС, как и в любой другой системе работы с документами, по мере накопления данных у пользователей возникает желание их "поискать". Но, поскольку люди — не компьютеры, то и ищут они примерно как "что-то там такое было от Иванова или от Ивановского… не...

[Из песочницы] Валидация данных в C++ с использованием библиотеки cpp-validator Казалось бы, валидация данных — это одна из базовых задач в программировании, которая встретится и в начале изучения языка вместе с "Hello world!", и в том или ином виде будет присутствовать в множестве зрелых проектов. Тем не менее, Google до сих пор выдает ноль ...

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

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

[Перевод] Использование asyncio для создания асинхронных драйверов устройств на MicroPython v.1.12 Изученая возможности MicroPython для своих целей натолкнулся на одну из реализаций библиотеки asyncio и, после недолгой переписки с Piter Hinch — автором библиотеки, понял, что мне необходимо глубже разобраться с принципами, базовыми понятиями и типичными ошибками использова...

[Перевод] Как сделать интерактивную карту с помощью Python и open source библиотек Сегодня делимся с вами пошаговым руководством создания интерактивных карт для веб-приложения или блога. Просто сохраните эту статью в закладках. Хоть и существует, например, библиотека d3.js, которая может создавать пользовательские карты, есть несколько инструментов еще пр...

SQL HowTo: пишем while-цикл прямо в запросе, или «Элементарная трехходовка» Периодически возникает задача поиска связанных данных по набору ключей, пока не наберем нужное суммарное количество записей. Наиболее «жизненный» пример — вывести 20 самых старых задач, числящихся на списке сотрудников (например, в рамках одного подразделения). Для различны...

Как найти человека в Instagram по номеру телефона? Простая инструкция по поиску профиля человека в Instagram по номеру телефона. В Instagram только небольшое число пользователей подписываются своими...

Лайфхак для быстрого попадания в Zero-click поисковой выдачи На просторах Хабра встретилась статья: Zero-click выдача и On SERP SEO: как попасть на нулевую позицию в Яндексе и Google, в которой говорится о попадания не просто в ТОП, а прямо на самую нулевую позицию поисковой выдачи. А так же приводится внушительный список рекомендаций...

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

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

Лучшие приложение для прослушивания музыки на Android Многие пользователи мобильных устройств слушают музыку через сервисы потоковой передачи, такие как Pandora, Spotify, Google Play Music или Apple Music. При этом немалая часть меломанов предпочитает использовать собственную коллекцию медиа - и потому что потоковая передача не...

[Перевод] Специалисты по информатике хотят загнать в угол гипотезу Коллатца Действенная технология SAT-решателей может сработать с печально известной гипотезой Коллатца. Однако шансы на это не слишком велики. В последние несколько лет Марийн Хиюл использовал технологию компьютеризированных поисков доказательств под названием «SAT-решатель» (SAT от...

Как продвигать страницу в Instagram в 2020 году? Instagram сегодня – не только развлекательная социальная сеть, но еще и место для продвижения своего творчества, поиска клиентов, реализации товаров и услуг. Закономерно, что чем больше в подписчиках пользователей, тем больше вероятность покупки, заказа, ознакомления с творч...

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

Google Chrome так не умеет. Microsoft Edge получил поиск в боковой панели Ещё на конференции Build в мае компания Microsoft анонсировала новую удобную функцию для своего браузера Microsoft Edge — поиск прямо в боковой панели.  Подобная возможность упущена в большинстве браузеров, в том числе и в наиболее популярном Google Chr...

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

IQListKit: таблицы и коллекции без dataSource IQListKit — реализация UITableView/UICollectionView без dataSource. Просто определяете секции и ячейки, а библиотека дальше все делает сама, в том числе и анимацию изменений. Работает с iOS 9.0.  Исходники: https://github.com/hackiftekhar/IQListKit

[Из песочницы] Технология видео поиска «Video Color» Немного о поиске Когда мы говорим о поиске, то сразу представляем себе поисковую систему Google с формой для ввода текстовой строки и многие сотни результатов ссылок на найденные страницы. Однако задумаемся о предмете нашего поиска. Что мы ищем? Текст Документы HTML ст...

[Перевод] Представляем PyCaret: открытую low-code библиотеку машинного обучения на Python Всем привет. В преддверии старта курса «Нейронные сети на Python» подготовили для вас перевод еще одного интересного материала. Рады представить вам PyCaret – библиотеку машинного обучения с открытым исходным кодом на Python для обучения и развертывания моделей с учителем...

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

[Перевод] Рейт лимиты с помощью Python и Redis В этой статье мы рассмотрим некоторые алгоритмы рейт лимитов на основе Python и Redis, начиная с самой простой реализации и заканчивая продвинутым обобщённым алгоритмом контроля скорости передачи ячеек (Generic Cell Rate Algorithm, GCRA). Для взаимодействия с Redis (pip in...

[Перевод] Python-пакеты для Data Science Python — это один из самых распространённых языков программирования. Хотя стандартные возможности Python достаточно скромны, существует огромное количество пакетов, которые позволяют решать с помощью этого языка самые разные задачи. Пожалуй, именно поэтому Python и пользуетс...

Поиск научных публикаций в Интернете. Часть 2. Где и как искать Продолжение (начало – здесь) 1.3. Поисковые системы – специализированные и не очень В общем случае результаты поиска в первую очередь зависят от поставленной задачи и корректности запроса. Но эти результаты чаще всего, с одной стороны, а) избыточны и с другой стороны — ...

Как быстро найти трек из Apple Music в Spotify, Яндекс.Музыке и других сервисах Наверное, все хотя бы раз слышали термин «кросс-платформенность». Говоря простым языком, это то же самое, что универсальность, но в более узком смысле, потому что, как правило, этим термином обозначают совместимость приложений и сервисов с разными платформами. Вот, например...

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

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

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

В iOS 14 обнаружили сюрприз времён классического iPod с колёсиком Компания Apple не склонна запрятывать в своих продуктах разного рода «пасхалки», как это делает Google. Однако из каждого правила есть исключения. Энтузиасты обнаружили интересный сюрприз от Apple в готовящейся к выпуску мобильной операционной системе iOS 14...

OpenPGP переписывают на Rust: проект Sequoia Секвойя Стагг в роще Олдер-Крик, Калифорния В 2018 году три бывших разработчика GnuPG начали работу над проектом Sequoia — реализацией OpenPGP на Rust. Как известно, OpenPGP — это открытый стандарт шифрования данных, часто используемый для защищённой электронной почты; а G...

Портировать игры на DirectX 12 станет еще проще Компания Microsoft на прошлой неделе выложила в открытый доступ библиотеку D3D12 Translation Layer, которая должна упростить портирование игр на API DirectX 12. D3D12 Translation Layer – это одна из вспомогательных библиотек для переноса графических концептов и команд с API ...

Чек-лист для тестирования числового поля При тестировании встречаются как интересные задачки с замудреной логикой, так и простые, вроде проверки простой строки или числового поля. Для простых полей можно один раз написать чек-лист проверок, а потом переиспользовать, лишь немного меняя под «своё» поле. Сегодня мы р...

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

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

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

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

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

WhatsApp начиная с 1-го числа перестанет работать на iOS и Android Самым известным и популярным в мире сервисом для общения является WhatsApp, а используют его более чем 2 млрд человек, все из которых находят его самым лучшим среди всех существующих на рынке. Это программное обеспечение позволяет Читать полную версию публикации WhatsApp на...

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

[Перевод] Вражеский ИИ: преследование игрока без Navigation2D и поиска пути A* Создаёте игру, в которой враги должны преследовать игрока? Всё начинается с простого — заставим врага бежать к игроку. Но что произойдёт, если он находится за деревом, или за углом стены? Ну, теперь враг будет выглядеть довольно глупо — упрётся в объект, перебирая ногами на ...

Трансформация цвета: поиски в прореженном столе Это обзор функциональности, появившейся в Pillow 5.4: применение трехмерных таблиц поиска (3D lookup tables, 3D LUT) для трансформации цвета. Эта техника широко распространена в обработке видео и 3D-играх, однако мало графических библиотек могли похвастаться их поддержкой до...

HoughNet: поиск точек схода сетью, сплавленной с классическим алгоритмом Пока в мире распознавания объектов обучают десятки и даже сотни зарекомендовавших себя архитектур искусственных нейронных сетей (ИНС), разогревая планету мощными видеокарточками и создавая «панацею» для всех задач компьютерного зрения, мы в Smart Engines твердо идем по иссл...

Немного про устройство современного радио на примере HackRF One Приветствую, Habr! Некоторое время назад в поле моего зрения очень часто попадало множество статей, видеороликов о теме SDR трансиверов. Тема представляет интерес и сегодня. Большой популярностью среди радиолюбителей и других, разного рода, «технарей» пользуются устройства H...

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

КАМАЗ и Pulsar VC ищут международные стартапы КАМАЗ заинтересован в привлечении проектов в широком спектре как в России, так и за рубежом - от транспортной навигации, обслуживания "последней мили" и оперативного ремонта до проектов в пассажирском транспорте. Фонд Pulsar займется глобальным поиском и отбором пр...

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

[Из песочницы] Точные и быстрые вычисления для чисел с плавающей точкой на примере функции синуса. Введение и часть 1 Внимательно прочитал очень хорошие статьи от ArtemKaravaev по сложению чисел с плавающей точкой. Тема очень интересная и хочется её продолжить и показать на примерах, как работать с числами с плавающей точкой на практике. В качестве эталона возьмём библиотеку GNU glibc (libm...

Делаем маршрутизацию (роутинг) на OpenStreetMap. Введение Хотелось бы поделиться опытом создания систем маршрутизации PostgreSQL/PgRouting на карте OpenStreetMap. Речь пойдет о разработке [коммерческих] решений со сложными требованиями, для более простых проектов, вероятно, достаточно обратиться к документации. Насколько мне извест...

Sony заплатит за найденные уязвимости в PS4 Довольно часто крупные производители электроники или каких-то сервисов делают упор на программу поиска уязвимостей со стороны пользователей. То есть, сейчас, к примеру, компания PlayStation запустила свою подобную программу. Суть очень проста — если вы смогли найти какую-то ...

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

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

[Из песочницы] Изобретаем велосипед или пишем персептрон на С++. Часть 1 и 2 Изобретаем велосипед или пишем персептрон на C++. Часть 1 Напишем простую библиотеку для реализации персептрона на C++ Читать дальше →

[Перевод] PowerShell — это язык программирования? Является ли PowerShell языком программирования? Совершенно определённо — является. И не обращайте внимание на тех, кто говорит, что это не так. Многие, работающие в сфере программирования, могут просто посмеяться над мыслью о том, что код, написанный для PowerShell — это неч...

Существует ли во Вселенной универсальный язык? Кадр из фильма “Прибытие” Начиная со знаменитого романа Герберта Уэллса “Война миров”, вот уже на протяжении 100 лет человечество рассматривало последствия и конфликты, которые могут возникнуть в результате первого контакта с потенциально враждебным инопланетным видом. Приме...

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

Работа с файлами в C++ с использованием Boost Привет! Я время от времени рассказываю на Хабре о решениях распространённых задач на C++, и вообще люблю делиться опытом. Поэтому даже написал целую книгу, которая называется «Разработка приложений на С++ с использованием Boost». Она может быть интересна разработчикам, кото...

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

[Из песочницы] Ray Casting Visual Search (RCVS). Простой и быстрый алгоритм поиска схожих по геометрии 3D моделей Для меня эти две модели очень похожи, однако у них нет очевидных характеристик, по которым можно было бы измерить их сходство. У этих моделей разное количество вершин, рёбер и полигонов, они разного размера, к тому же по-разному повёрнуты в пространстве, и у обеих одинаков...

Представлен ICQ New, обновленный вариант некогда популярного мессенджера При его разработке в Mail.ru Croup сделали акцент на групповое общение — в новом приложении доступны аудио- и видеозвонки с максимальным числом участников в 30 человек. В Mail.ru Group представили обновление популярного в прошлом мессенджера ICQ, сообщает «Комме...

Proton: лучший UITextView Proton — нативный текстовый редактор для iOS и macOS (Catalyst). Это простая библиотека, которая позволяет вам расширить TextView и добавить в него необходимые функции. Это форматирование текста, встроенные View, ответы, поиск и так далее. Проще говоря — это тот ...

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

Задачи с собеседований: поиск одинаковых чисел в двух строках Дан массив из двух строк со списками чисел, разделенных запятыми, отсортированными в порядке возрастания. Ваша цель – вернуть строку чисел, которые встречаются в обоих строках, в отсортированном порядке. Если пересечения нет, возвращаем false. Например: если входной ма...

[Перевод] Руководство по FFmpeg libav Долго искал книгу, в которой было бы разжёвано, как использовать FFmpeg в качестве библиотеки (в дальнейшем в тексте — libav, т.е. library audio video). Обнаружил учебник «Как написать видеоплеер и уложиться в менее чем тысячу строк». К сожалению, информация там устаревшая,...

Создаем веб-приложение на Haskell с использованием Reflex. Часть 1 Введение Всем привет! Меня зовут Никита, и мы в Typeable для разработки фронтенда для части проектов используем FRP-подход, а конкретно его реализацию на Haskell – веб-фреймоворк reflex. На русскоязычных ресурсах отсутствуют какие-либо руководства по данному фреймворку (да и...

Лучшие платформы Smart TV на 2020 год При выборе и покупке нового телевизора стоит учитывать массу вещей и непривычную терминологию. В этой статье поговорим про систему, на основе которой стоит предпочесть телевизор. Но сначала обсудим некоторые основы. Что такое Smart-TV Функция Smart-TV дает возможность пользо...

Найти 15 инженеров за две недели карантина Привет, Хабр!  Я работаю эйчаром в DataLine, в том числе курирую набор дежурных инженеров в службу технической поддержки. Мы уже рассказывали о важности этой позиции для компании. Дежурным инженерам мы доверяем проверку оборудования в дата-центре и работу с клиентами на пер...

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

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

[Перевод] Реверс-инжиниринг популярного античита BattlEye BattlEye — это преимущетвенно немецкий сторонний античит, в основном разрабатываемый 32-летним Бастианом Хейко Сутером. Он предоставляет (или пытается предоставить) издателям игр простую в применении систему античита, использующую механизмы общей защиты, а также обнаружение...

Сравнение 6 популярных “Drag&Drop” тем на WordPress WordPress является одним из самых популярных инструментов, когда речь заходит о необходимости в легком управлении контентом и простой веб-разработке. Он успешно завоевал рынок инструментов для создания веб-сайтов, предоставляя своим пользователям быстрые, надежные и простые ...

Опубликован релиз Sequoia 1.0, реализации OpenPGP на языке Rust Спустя три года после начала разработки опубликован релиз Sequoia 1.0. Это реализация OpenPGP на языке Rust, содержащая обширную библиотеку функций и инструментарий командной строки. Релиз опубликован после того, как разработчики закончили работу над низкоуровневым API — в ...

Реализация автодополнения кода в Ace Editor Ace (Ajax.org Cloud9 Editor) — популярный редактор кода для веб-приложений. У него есть как плюсы, так и минусы. Одно из больших преимуществ библиотеки — возможность использования пользовательских сниппетов и подсказок. Однако, это не самая тривиальная задача, к тому же не ...

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

[Из песочницы] Конвертация текстовых документов в xml на С# Недавно мне пришлось столкнуться с необходимостью достать текст из офисных документов (docx, xlsx, rtf, doc, xls, odt и ods). Задача осложнялась требованием представить текст в формате xml без мусора с максимально удобной для дальнейшего парсинга структурой. Решение использо...

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

Практическое занятие «Поиск вредоносного ПО в IoT» Продолжаем серию занятий по разбору CTF-задач для тех, кто начинает карьеру в ИТ и ИБ. Ближайший вебинар стартует в четверг 23 апреля в 18:00 и будет посвящен поиску вредоносного ПО в IoT. Будем разбирать протокол общения вредоносного ПО с C&C-серверами на примере ботне...

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

MASK-RCNN для поиска крыш по снимкам с беспилотников В белом-белом городе на белой-белой улице стояли белые-белые дома… А как быстро вы можете найти все крыши домов на этой фотографии? Все чаще можно слышать про планы правительства провести полную инвентаризацию объектов недвижимости с целью уточнения кадастровых данных. Для...

Как предсказать гипероним слова (и зачем). Моё участие в соревновании по пополнению таксономии Как может машина понимать смысл слов и понятий, и вообще, что значит — понимать? Понимаете ли вы, например, что такое спаржа? Если вы скажете мне, что спаржа — это (1) травянистое растение, (2) съедобный овощ, и (3) сельскохозяйственная культура, то, наверное, я останусь убе...

[Перевод] Как «Сумерки» навсегда испортили поиск картинок Google Поучаствуйте со мной в эксперименте. При помощи поиска изображений Google мы будем искать разные времена суток. Откроем новое окно Google Chrome в режиме инкогнито, чтобы результаты не были искажены нашей историей поиска. В конце концов, это ведь научный эксперимент, и нам...

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

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

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

[Перевод] Объединяем функции логическими операторами в C++ В преддверии старта занятий в новом потоке группы «Разработчик С++» подготовили перевод интересного материала. Большинство алгоритмов STL в C++ используют всего лишь одну функцию для выполнения некоторой работы над коллекцией. Например, чтобы извлечь все четные числа из ко...

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

[Из песочницы] Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer. Angular — отличный фреймворк. Мы все его любим <3. Одна из вещей, которая делает Angular успешным и прекрасным в...

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

[Перевод] Лучшие практики, эмпирический опыт и математика Есть довольно простая идея, высказанная Фейнманом — цель физики найти простейшую теорию, которая сможет объяснить как можно больше явлений природы. Эта та идея, которая стоит за электродинамикой Максвелла или КЭД. Каждая новая большая теория объясняла больше явления природ...

Эффект реалистичного перелистывания страниц на JS Представляю вашему вниманию — один из возможных вариантов реализации довольно забавного приема, для создания эффекта реалистичного перелистывания страниц. Демо и документация: nodlik.github.io/StPageFlip Github: github.com/Nodlik/StPageFlip Подобный эффект я реализовывал...

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

Как я за 4 часа решатель японских кроссвордов написал Лениво просматриваю выложенный недавно коллегами из «Сириуса» список курсов, проведенных у школьников… Так, а это что такое? «Поиск комбинаторных объектов с помощью SAT-солверов»? «Мы сделали решатель судоку, японских кроссвордов и прочего»? В памяти всплывает мысль о том, ...

Обзор Candy FCP815X E0/E. Духовой шкаф c Wi-Fi и базой рецептов Тетради с рецептами, собираемыми у друзей, родственников и знакомых, книги со сборниками - все это с повсеместным распространением интернета и смартфонов отошло на второй план. Сейчас при поиске нужного рецепта быстрее и проще обратиться к поисковику или Youtube, просмотрев ...

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

Разработка сервера для многопользовательской игры с помощью nodejs и magx Многие разработчики начинают разработку многопользовательского онлайн сервера на основе библиотеки socket.io. Эта библиотека позволяет очень просто реализовать обмен данными между клиетом и сервером в реальном времени, но продумать и реализовать всю логику и интерфейс взаимо...

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

[Перевод] Python. Язык, на котором просто мыслить Привет, Хабр! У нас возможен предзаказ долгожданного второго издания книги "Простой Python". Перевод первого издания вышел в 2016 году и по сей день остается в числе бестселлеров. Поскольку мы убеждены, что Python — лучший язык программирования для начинающих, ...

Tarantool: история ускорения поиска в 1С Недавно у наших добрых друзей из крупной розничной сети возникла задача ускорения поиска в 1С. Во-первых, искать нужно было по клиентам (три справочника, 9 текстовых полей, поиск типа %like%) и всего-то по 2,5 млн записей. Сразу скажем, что полнотекстовый поиск и морфология...

Пакет валидации mobx form validation kit 2.0 (TypeScript / Flutter) Предисловие Почти полтора года назад мы выпустили первую версию библиотеки "Новый пакет валидаций для React на Mobx @quantumart/mobx-form-validation-kit" Время шло, и библиотека корректировалась и не стояла на месте, да собственно, как и наше развитие в целом. Мы п...

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

[Из песочницы] Самый простой алгоритм для создания Филворда (Часть 1) Привет, Хабровцы. В этой статье я хочу поделиться с вами немного своим опытом и показать вам мой простой алгоритм, который я придумал для создания Филворда. Под «Филвордом» я буду иметь ввиду эту многим знакомую игру. В игре есть поле размером обычно NxN заполненное словами...

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

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

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

Как я html-парсер на php писал, и что из этого вышло. Заключительная часть Здравствуйте. Представляю вам заключительную главу цикла. В ней пойдет речь о реализации самого парсера, его модулей, вроде функции анализа, построения стека и dom дерева. Помимо этого поговорим и об обработке комментариев. Как оказалось, комментарии могут обрабатываться по...

Google Assistant поможет трекеру Tile искать потерянные вещи Голосовой помощник Google Assistant объединился с Bluetooth-трекером Tile, чтобы еще быстрее находить вещи лежащие не на своих местах. Теперь можно попросить свою умную колонку «позвонить» потерянному предмету. Раньше вам приходилось говорить «ОК, Google, попроси Tile н...

Поиск и устранение проблем в Postgres с помощью pgCenter. Алексей Лесовский Предлагаю ознакомиться с расшифровкой доклада начала 2019 года Алексея Лесовского — «Поиск и устранение проблем в Postgres с помощью pgCenter» Время от времени при эксплуатации Postgres'а возникают проблемы, и чем быстрее найдены и устранены источники проблемы, тем благодарн...

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

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

Опубликован Scheme Request For Implementation — 203: A Simple Drawing Language in the Style of SICP Structure and Interpretation of Computer Programs -- это один из самых известных учебников программирования в мире, на основе которого несколько десятков лет преподавался начальный курс программирования в MIT, а во многих унивеситетах, в том числе в Беркли, преподаётся до си...

4 полезных совета по работе с Safari на iPhone и iPad Панель интеллектуального поиска в Safari представляет собой гибрид старой адресной строки и панели поиска, объединенных в одно универсальное место для ввода текста и перехода по ссылкам. Это очень удобно, поскольку можете получить доступ к поисковой системе по умолчанию, ис...

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

Как обучить нейронную сеть DeepPavlov на ноутбуке с использованием GPU В этой статье я хочу поделиться своим опытом использования данной open-source библиотеки на примере реализации одной задачи с парсингом файлов PDF/DOC/DOCX содержащих резюме специалистов. Здесь я также опишу этапы реализации инструмента для подготовки датасета. После чего м...

В нативный код из уютного мира Java: путешествие туда и обратно (часть 1) Java и другие управляемые языки просты и удобны во многих случаях, но иногда их возможностей недостаточно — например, если нужна библиотека, написанная только на C или C++. Иногда хочется позвать пару методов из системного API, или попытаться улучшить производительность для...

[Перевод] Кунг-фу стиля Linux: великая сила make Со временем Linux (точнее — операционная система, которую обычно называют «Linux», представляющая собой ядро Linux и GNU-инструменты) стала гораздо сложнее, чем Unix — ОС, стоящая у истоков Linux. Это, конечно, неизбежно. Но это означает, что тем, кто пользуется Linux уже да...

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

Музыкальные ХИТы 2020 года Осень не у всех вызывает позитивные эмоции, для кого-то это пора уныния и плохого настроения. А в этом году, так тем более. Но давайте быть позитивными, и искать хорошее во всем. Многим людям в этом помогает музыка, так как она способно оказывать психофизиологическое влияние...

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

Как в Sports.ru писали свой WYSIWYG-редактор В середине 2018 года в Sports.ru задумались о переезде на новый WYSIWYG-редактор текста для пользовательских постов. С июня 2019 года редактор работает в режиме бета-версии. За это время мы решили множество проблем, связанных как с проектированием архитектуры всего сервиса, ...

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

Interprocess communication с использованием GRPC Сегодня хочу рассказать о нашем пути реализации межпроцессного взаимодействия между приложениями на NET Core и NET Framework при помощи протокола GRPC. Ирония заключается в том, что GRPC, продвигаемый Microsoft как замена WCF на своих платформах NET Core и NET5, в нашем случ...

[Перевод] 10 вещей, которые вы могли не знать о scikit-learn В этой переведенной статье ее автор, Rebecca Vickery, делится интересными функциями scikit-learn. Оригинал опубликован в блоге towardsdatascience.com. Фото с сайта Unsplash. Автор: Sasha • Stories Scikit-learn является одной из наиболее широко используемых библиотек Pytho...

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

Почему мы выбрали Kotlin одним из целевых языков компании. Часть 2: Kotlin Multiplatform Продолжаем цикл статей о внедрении языка Котлин в наш процесс разработки. Первую часть ищите здесь. В 2017 году увидел свет амбициозный проект от компании Jetbrains, предлагающий новый взгляд на кросс-платформенную разработку. Компиляция кода на kotlin в нативный код различ...

Реализация процессорной архитектуры из книги Чарльза Петцольда «Код. Тайный язык информатики» Наверное многие, из тех, кто увлекается изучением того, как работает компьютер на самом низком уровне читали такие книги как: Таненбаум "Архитектура компьютера" или Харрис, Харрис "Цифровая схемотехника и архитектура компьютера", которые безусловного являются объемлющими тру...

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

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

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

Примерно 20 строк, примерно такие же результаты: wc на Elixir Полгода назад Крис Пеннер опубликовал Beating C With 80 Lines Of Haskell: Wc. В предисловии говорится: Задача состоит в том, чтобы построить более шустрый клон оптимизированной вручную реализации утилиты wc на C в нашем любимом высокоуровневом языке программирования со сборк...

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

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

[Перевод] Wasm или не Wasm? Мы, в компании Linkurious, занимаемся работой над Linkurious Enterprise. Это — веб-платформа, которая, используя возможности графов и средства их визуализации, призвана помогать компаниям и органам власти, расположенным по всему миру, бороться с финансовыми преступлениями. ...

Работаем дома №3. Лучшие приложения для видеоконференций Вы работаете удаленно от офиса? Ищите приложения для видеоконференций? Возможно именно наши рекомендации вам помогут! Удаленная работа дома? Частые видеозвонки с коллегами? Или, может быть, вы просто хотите пообщаться с друзьями, не выходя из дома? Хорошее приложение для ви...

Ещё один велосипед: храним юникодные строки на 30-60% компактнее, чем UTF-8 Если вы разработчик и перед вами стоит задача выбора кодировки, то почти всегда правильным решением будет Юникод. Конкретный способ представления зависит от контекста, но чаще всего тут тоже есть универсальный ответ — UTF-8. Он хорош тем, что позволяет использовать все сим...

Ученые обнаружили новый вид черной дыры Согласно результатам исследования, опубликованного в журнале Science, ученые, возможно, обнаружили самую маленькую черную дыру из когда-либо открытых. Это стало возможным благодаря новой методике, которая объединяет несколько наборов данных. Исследователи полагают, что черн...

Реализация поиска печатей на OpenCV без нейронок, регистрации и смс Не так давно перед нами стояла задача найти и извлечь печати с документов. Зачем? Например, для проверки наличия печатей в договорах с двух сторон (участников договора). У нас в закромах уже был прототип для их поиска, написанный на OpenCV, но он был сыроват. Решили откопат...

Flutter, Dart — локальная база в сотни раз более быстрая чем SQLite или Shared Preferencies Примерно месяц назад общаясь с одним разработчиком приложения на Flutter встала проблема торможения обработки маленьких (в десятках тысяч) массивов данных на телефоне юзера. Многие приложения предполагают обработку данных на телефоне и, далее, их синхронизацию с бэкендом. На...

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

[Подборка] Полезные статьи о релокации в США: выбор визы, поиск работы, зарплаты и налоги Одна из самых популярных тем в нашем блоге – релокация. А самым популярным направлением для переезда русскоговорящих инженеров остаются США. Это легко объяснимо – в этой стране наиболее развита IT-отрасль, FAANG, тысячи стартапов, передовые технологии и вот это все.В этом ма...

Поиск работы в Сингапуре: галеры, карьерные агентства и много собеседований Меня зовут Андрей Вогулкин, я — fullstack developer. Работал 3 года фронтенд-разработчиком в стартапе, 4 — Oracle-разработчиком в телекоме, сменил 4 страны. В этой статье на примере нескольких кейсов расскажу о том, как я искал работу в одной из 4 стран — в Сингапуре: где ис...

Лучшие головоломки для Android-устройств в 2020 году Игры-паззлеры до какого-то момента были простым жанром, цель которого - убивать время, решая головоломки. На мобильных платформах жанр получил дальнейшее развитие, превратившись в один из наиболее популярных на Android-устройствах. Всё начиналось с простых вирусных игр вроде...

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

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

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

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

TCP BBR: быстрый и простой способ ускорения загрузки страниц. Доклад Яндекса Современные протоколы прикладного уровня используют для ускорения передачи данных мультиплексирование, которое повышает требования к надёжности канала. На конференции YaTalks Александр Грянко phasma рассказал, как мы ускоряем загрузку страниц на каналах с большими потерями п...

Выбираем аккумуляторную отвёртку. 4 хороших варианта Аккумуляторная электроотвертка – пожалуй, самый простой в использовании и маломощный из семейства электроинструментов. Если вы делаете упор на экономию времени и усилий, то выбирайте что-то из нашей подборки! Читать полную статью

Как снизить стоимость владения SIEM-системой и зачем нужен Central Log Management (CLM) Не так давно, Splunk добавил ещё одну модель лицензирования — лицензирование на основе инфраструктуры (теперь их три). Они считают количество ядер CPU под серверами со Splunk. Очень напоминает лицензирование Elastic Stack, там считают количество нод Elasticsearch. SIEM-систе...

Эти популярные приложения для Android содержат в себе вирусы, поэтому их нужно срочно удалить Самой популярной операционной системой для смартфонов и планшетов в настоящее время является Android, а установлена она на более чем 3/4 от общего числа мобильных устройств из различных ценовых категорий. В этом нет совершенно ничего и Сообщение Эти популярные приложения дл...

OpenCASCADE и Невидимое солнце Дао Тот лучший путник, что следов не оставляетТот лучший лидер, что без речи вдохновляетПлан совершенен, если плана вовсе нетИ если мудрый двери закрывает,Вам никогда не разгадать секрет Великая книга Дао - Стих 27 ( Перевод Ю. Полежаевой)Привет, Хаб...

VideoLayout: быстрое и простое видео для Android Обычно показ видео на Android “стоит” очень дорого с точки зрения производительности. Кроме того, из-за большого размера часто разработчики не хотят добавлять видео в свои проекты. С помощью этой библиотеки VideoLayout вы можете сделать быстро работающий и мало весящий видео...

Мне кажется, дело не в языке, а в том, как на нем пишут «Летом между 2 и 3 курсом я пошла искать работу — а в Новосибе того времени почти все вакансии для ребята без опыта были про PHP. Начинала с очень простых вещей — WordPress, Drupal… Потом писала бэкенды на Yii и много еще разного. Go впервые попробовала в 2014-м, вдохновивши...

[Перевод] Проектирование C API C API все так же распространены, как и раньше. На C написано много библиотек или библиотек с предоставлением C API. Есть также биндинги для различных языков программирования, что делает язык C стандартом де-факто для переносимых API. Тем не менее многие API не соответствуют ...

Адресная строка Google Chrome станет более безопасной и быстрой За прошедшие годы Google внес в Chromium множество изменений, в том числе скрыл протокол URL в адресной строке. Обнаруженные нами новые изменения кода показывают, что компания экспериментирует с другим изменением адресной строки для Chrome в Windows 10 и других платформах. G...

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

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

Zip Slip возвращается в Node.js Не так давно, в 2018 году, прогремел хорошо забытый новый вид атак — Zip Slip. Zip Slip является широко распространенной критической уязвимостью распаковки архивов, позволяющей злоумышленникам записывать произвольные файлы в систему, что обычно приводит к удаленному выполне...

[Перевод] Мир JavaScript в 2021 году Мир веб-разработки весьма изменчив. Изменения в нём происходят очень быстро. Что принесёт в него 2021 год? Здесь я хочу поделиться выводами о грядущих крупных JS-трендах, которые я сделал, проанализировав соответствующие исследования, проведённые в 2020 году. Сначала — п...

Сверхдлинное преобразование Фурье на FPGA Всем привет! В этой статье я хочу рассказать про реализацию алгоритма сверхдлинного быстрого преобразования Фурье на ПЛИС. Написать эту статью меня побудило желание поделиться личным практическим опытом, который не хотелось бы потерять, оставив информацию только у себя в го...

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

Книга «Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд.» Привет, Хаброжители! Мы выпустили третью версию #1 Best Seller in Python Programming Amazon — популярного в мире руководства по языку Python. Вы сможете не только максимально быстро его освоить, но и научитесь писать программы, устранять ошибки и создавать работающие прило...

Проект Natasha. Набор качественных открытых инструментов для обработки естественного русского языка (NLP) Два года назад я писал на Хабр статью про Yargy-парсер и библиотеку Natasha, рассказывал про решение задачи NER для русского языка, построенное на правилах. Проект хорошо приняли. Yargy-парсер заменил яндексовый Томита-парсер в крупных проектах внутри Сбера, Интерфакса и РИА...

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

Полнотекстовый поиск в Couchbase Server Дмитрий Калугин-Балашов большую часть своей жизни писал поиск: с 2011 года в компании Mail.ru был поиск по почте, затем был небольшой перерыв из-за работы в США, а сейчас это — работа над поиском в Couchbase. Одна из первых вещей, которую Дмитрий понял, работая в США — не вс...

В поисках ДРЕВНЕЙ жизни. История под ногами Как же надоел этот город. Куча машин, шум, воздух наполненный тысячами тонн сгоревшего топлива. Вечная суета, все куда-то спешат, проживая жизнь день за днем забывая про самое основное. Про себя! Как вы отдыхаете? Кто-то едет на рыбалку, кто-то на охоту, а кто-то за грибами....

[Перевод] OCR для PDF в среде .NET — как извлечь текст из недоступных для поиска PDF документов Извлечение текста — одна из популярных задач обработки PDF документов. Вам потребуется извлечь текст из PDF, чтобы: проиндексировать документ для полнотекстового поиска распарсить некоторые данные (например, названия и цены товаров в прайс-листе) выделить, удалить или замен...

Трансформеры в Поиске: как Яндекс применил тяжёлые нейросети для поиска по смыслу Привет, Хабр. Меня зовут Саша Готманов, я руковожу группой нейросетевых технологий в поиске Яндекса. Сегодня на YaC 2020 мы впервые рассказали о внедрении трансформера — новой нейросетевой архитектуры для ранжирования веб-страниц. Это наиболее значимое событие в нашем поиске...

Тетрис на битбордах: старые песни на новый лад Битборды (Bitboard) — специальные битовые структуры, позволяющие эффективно рассчитывать ходы в настольных играх. На хабре писали про применение битбордов к шахматам и даже к шашкам. Сегодня мы применим технику битбордов к несколько неожиданной, но всем знакомой игре – к т...

Какой мессенджер выбрать вместо Google Hangouts Прошло довольно много времени с тех пор, как Google объявил о прекращении работы Google Hangouts. Тем не менее, приложение все еще существует, хотя, вероятно, оно не задержится надолго. Компания уже выпустила ряд обновлений, в которых были удалены некоторые функции приложен...

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

Intel представила чудовищный GPU с 16 384 ядрами и производительностью свыше 40 TFLOPS Компания Intel сегодня провела мероприятие Architecture Day 2020, на котором рассказала немало нового. И, наверное, одним из самых впечатляющих анонсов был анонс линейки графических ускорителей XE HP. Стоит сразу оговорить, что нацелены они не на потребительский сегмент...

Microsoft Edge для Windows 10 получает поддержку веб-виджетов и многое другое Microsoft Edge, один из лучших браузеров для Windows, получит три новые функции в следующем большом обновлении. Microsoft, похоже, тестирует новую функцию веб-виджетов, поиск по вкладкам Chrome и меню расширений для браузера. Виджеты уже давно существуют на Android, и похоже...

Выбор проектора для домашнего кинотеатра по расстоянию до экрана Большинство проекторов располагаются на расстоянии от экрана, равном 1.5 ширины изображения, но очень часто размеры комнаты или любимые люстры на потолке заставляют искать проектор, который можно установить ближе или дальше Особенности оптики проекторов У проекторов не быва...

Выбор проектора для домашнего кинотеатра по расстоянию до экрана Большинство проекторов располагаются на расстоянии от экрана, равном 1.5 ширины изображения, но очень часто размеры комнаты или любимые люстры на потолке заставляют искать проектор, который можно установить ближе или дальше Особенности оптики проекторов У проекторов не быва...

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

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

GenerationS и Группа ЧТПЗ начинают поиск стартапов Главная задача отбора – найти наиболее перспективные решения, готовые к внедрению и реализации на предприятиях Группы ЧТПЗ.

Машина опорных векторов в 30 строчек В этой статье я расскажу как написать свою очень простую машину опорных векторов без scikit-learn или других библиотек с готовой реализацией всего в 30 строчек на Python. Если вам хотелось разобраться в алгоритме SMO, но он показался слишком сложным, то эта статья может быть...

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

[Перевод] Простая хэш-таблица для GPU Я выложил на Github новый проект A Simple GPU Hash Table. Это простая хэш-таблица для GPU, способная обрабатывать в секунду сотни миллионов вставок. На моём ноутбуке с NVIDIA GTX 1060 код вставляет 64 миллиона случайно сгенерированных пар ключ-значение примерно за 210 мс и...

Radeon RX 5950 XT сможет потягаться с GeForce RTX 3080 Ti? Стали известны параметры «Большого Navi» Несколько дней назад мы узнали о том, что GPU Navi 21 — тот самый «Большой Navi» — даст жизнь большому числу моделей видеокарт Radeon. Но позже источник дополнил новость информацией о характеристиках этого самого GPU. Итак, если верить этим данн...

Сверточная нейронная сеть и ее интеграция в iOS (часть 1) Средства реализации. Различные алгоритмы машинного обучения интегрированы в множество высокоуровневых языков программирования. Наиболее популярным и быстро развивающимся из них является Python. TensorFlow — открытая программная библиотека для машинного обучения, разработа...

[Перевод] Анализ библиотеки ИИ ботов из Quake 3 Изучение исходного кода ИИ уже выпущенных игр — превосходный способ изучения хитростей на реальных примерах. Quake 3 Arena — интересный образец, потому что код игры полностью выложен в открытый доступ (за исключением инструментов), а сама игра стала примером архитектуры дви...

Тестируем Android-приложение правильно Всем привет, Меня зовут Андрей Рыжкин, я CTO AGIMA. Сегодня я расскажу о том, как мы тестируем приложения на Android, а также поделюсь нашим чек-листом. Чек-лист от команды AGIMA В 2020 году количество приложений для Android вплотную приблизилось к трём миллионам (по да...

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

Объектив Mitakon Speedmaster 85mm f/1.2 теперь доступен в вариантах с креплениями Nikon Z и Canon RF Компания Zhong Yi Optics начала выпуск двух новых вариантов объектива Mitakon Speedmaster 85mm f/1.2, представленного в 2015 году. Это варианты с креплениями Nikon Z и Canon RF. Полнокадровый объектив фокусируется вручную. Кольцо управления диафрагмой поворачивается б...

[Из песочницы] Вывод текста на OLED дисплей с контроллером SH1106 по шине SPI через библиотеку HAL Здравствуйте, уважаемые читатели. В своих разработках на микроконтроллерах STM32, для вывода осмысленной информации, я пользуюсь OLED дисплеями на чипе SSD1306. В последний раз пришел ко мне 1,3" SPI модель по демократичной цене — около 200руб. Первое, что бросилось в г...

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

Число подписчиков Яндекс.Музыки достигло 3 млн Количество подписчиков сервиса Яндекс.Музыка достигло 3 млн пользователей, за три года увеличившись в 12 раз. На сегодняшний день библиотека сервиса включает более 60 млн треков и более 90 тысяч подкастов. Сервис доступен в 12 странах, включая Россию, страны СНГ и Израиль. П...

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

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

Настоящая оптимизация на C/C++ Это продолжение двух постов (первый, второй). В этот раз оптимизация будет произведена на реальной задаче, с правильно построенной методологией тестирования. Задачу возьмем из нашумевшего поста «Алгоритм перевода числа (байтов) в приставку СИ», она интересна тем, что на перв...

[Из песочницы] Пишем простую игру на python Сегодня мы создадим всем известную игру камень, ножницы, бумага. В этом нам поможет ЯП python и библиотека tkinter, но если вы не знаете что это такое, советую почитать данную статью. Первое, что нам нужно, это начальная структура, окошко, у меня оно будет выглядеть так: f...

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

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

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

Ищем чехол для Huawei MatePad Pro Иногда пользователи не совсем понимают, как правильно выбирать чехол для Huawei MatePad Pro 5G LTE 10.8", на какие элементы и параметры стоит обращать внимание, а на какие можно не смотреть вообще. Мы понимаем, что это очень сложный процесс и далеко не всегда пользователь мо...

Твердотельный накопитель Nimbus Data на 100 Тбайт оценён в $40 000 Компания Nimbus Data известна в корпоративном сегменте, как производитель твердотельных накопителей сверхвысокой ёмкости. Два года назад она представила SSD-носители серии ExaDrive DC ёмкостью до 100 Тбайт. К моменту запуска она не назвала их стоимость. Недавно стало понятно...

JavaScript библиотека Webix глазами новичка. Часть 4. Работа с данными. CRUD Я — начинающий front-end разработчик. Сейчас я учусь и стажируюсь в одной минской IT компании. Изучение основ web-ui проходит на примере JS библиотеки Webix и я хочу поделиться своим скромным опытом и сохранить его в виде небольшого учебного пособия по этой интересной UI б...

[Перевод] Простое и строгое доказательство 26/10 измерений в теории струн … вы нигде не найдете. По крайней мере, у меня не получилось сделать его таковым. Требование определенного и большого числа пространственно-временных измерений (26 для более простой бозонной теории струн и 10 для более сложных суперструн) это один из наиболее неправильно по...

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

Марсоход Perseverance будет искать жизнь на Марсе Задача Perseverance - поиск явных признаков того, что микробная жизнь могла существовать на Марсе миллиарды лет назад. Он будет собирать образцы керна в металлические трубы, и будущие миссии вернут эти образцы на Землю для более глубокого изучения. The post Марсоход Persever...

AI на минималках 2: Генератор стихов на Prolog AI на минималках 2: Генератор стихов на Prolog На картинке — четверостишье, сгенерированное моей программой. Оказывается "стихи" писать легко, нужно только знать несколько необходимых ингредиентов: размер, ритм, рифма. "Стихи" в кавычках, потому что в на...

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

Простое и удобное журналирование ошибок для сайтов на .NET Core Возможно, многим знакома библиотека ELMAH (Error Logging Modules and Handlers), которая позволяет организовать простое журналирование ошибок для любого сайта, созданного с помощью .NET Framework. Этот простой и проверенный временем инструмент выручал меня во многим проектах...

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

Оптимизация C++: совмещаем скорость и высокий уровень. Доклад Яндекса Что влияет на скорость работы программ на C++ и как её добиться при высоком уровне кода? Ведущий разработчик библиотеки CatBoost Евгений Петров ответил на эти вопросы на примерах и иллюстрациях из опыта работы над CatBoost для x86_64. Видео доклада ...

Как ИТ-сообщество реагирует на инициативу New IP В качестве инициаторов потенциальной замены TCP/IP выступил ряд телекоммуникационных компаний страны.Но ряд экспертов, в том числе из Международного союза электросвязи (ITU), считает, что это не лучшая идея. Обсуждаем мнения и возможные варианты реализации протокола. Читат...

Тест на зоркость: проверь зрение Тест: проверка зрения Вопрос 1 из 7 Какие числа изображены внутри кругов? 12, 8, 4, 71, 6 Нет, приглядитесь внимательнее 12, 42, 74, 6 Верно! 12, 2, 42, 71, 8 Нет, приглядитесь внимательнее 12, 2, 42, 7...

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

Docker для фронтендера. Часть 2. Что ты такое? Продолжаю делать расшифровку своего доклада Docker для фронтендера с конференции FrontendConf 2019. В предыдущей части я постарался ответить на вопрос, зачем фронтенд-разработчику может понадобиться Docker. Сегодня попытаюсь простым языком рассказать, что это за инструмент,...

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

Сеть Folding@Home по производительности превзошла семь лучших суперкомпьютеров мира, вместе взятых Приток в сеть Folding@Home новых участников, желающих помочь победить COVID-19, привел к тому, что производительность входящих в нее систем достигла 470 PFLOPS. Это в три раза выше производительности Summit — самого быстрого суперкомпьютера в мире. И больше, чем с...

MyApp extends Holiday Я уверен, что среди уважаемой аудитории найдутся те, кто меня поймет. Дело в том, что во всем изобилии популярных библиотек и фреймворков для веб-фронтэнда, лично мне, не нравятся, практически, все альтернативы. В каждом из вариантов я нахожу для себя существенные минусы, к...

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

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

[Перевод] 10 хитростей Python, о которых полезно знать По данным StackOverflow Python — это самый быстрорастущий язык программирования. Например, в одном из отчётов Forbes речь идёт о том, что использование Python выросло на 456%. Python применяется в Netflix, в IBM, и ещё в тысячах компаний по всему миру. Давайте не забывать и ...

Сеть Folding@Home по производительности превзошла семь лучших суперкомпьютеров мира, вместе взятых Приток в сеть Folding@Home новых участников, желающих помочь победить COVID-19, привел к тому, что производительность входящих в нее систем достигла 470 PFLOPS. Это в три раза выше производительности Summit — самого быстрого суперкомпьютера в мире. И больше, чем с...

Лучшие дешевые смартфоны Samsung, которые можно купить в 2020 году Компания Samsung наиболее известна своими флагманскими семействами Galaxy S и Galaxy Note, но этот производитель наряду с дорогими флагманскими моделями предлагает телефоны практически в любой ценовой категории. Мы уже знакомились с некоторыми из лучших телефонов Samsung, во...

Лучшие дешевые смартфоны Samsung, которые можно купить в 2020 году Компания Samsung наиболее известна своими флагманскими семействами Galaxy S и Galaxy Note, но этот производитель наряду с дорогими флагманскими моделями предлагает телефоны практически в любой ценовой категории. Мы уже знакомились с некоторыми из лучших телефонов Samsung, во...

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

Зачем вам чужие ошибки? Исправляем уязвимости в сторонних библиотеках Любое ПО содержит уязвимости, причем они появляются на разных этапах его жизненного цикла. Полностью избавиться от уязвимостей в коде достаточно сложно, но можно, как минимум, сократить их количество. Для этого используются средства SAST, DAST и IAST – статический, динамичес...

О маркировках дисков замолвим слово Технологии записи на оптические диски были мейнстримом достаточно долго и породили множество сопутствующих технологий, в том числе LightScribe и LabelFlash. Указать на диске его содержимое? Нарисовать картинку и затем выжечь ее лазером? Нет проблем. А сейчас расскажу, как э...

Microsoft расширяет возможности Windows 10 PowerToys с помощью нового диспетчера подключаемых модулей Microsoft PowerToys – набор полезных инструментов и утилит для Windows 10, который скоро получит еще одно большое обновление. Согласно дорожной карте, Microsoft работает над новым диспетчером подключаемых модулей для PowerToys Run, который является средством запуска приложен...

[Перевод] Python и разработка простого веб-приложения, использующего технологии машинного обучения Тот, кто занимается машинным обучением (Machine Learning, ML), обычно, реализуя различные проекты, выполняет следующие действия: сбор данных, их очистка, разведочный анализ данных, разработка модели, публикация модели в локальной сети или в интернете. Вот хорошее видео, в ко...

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

Домен corp.com выставлен на продажу. Он опасен для сотен тысяч корпоративных компьютеров под управлением Windows Схема утечки данных через Web Proxy Auto-Discovery (WPAD) при коллизии имён (в данном случае коллизия внутреннего домена с названием одной из новых gTLD, но суть та же). Источник: исследование Мичиганского университета, 2016 Майк О'Коннор, один из старейших инвесторов в до...

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

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

Samsung SmartThings Find — простой поиск гаджетов Galaxy даже без подключения к сети Компания Samsung представила новый сервис SmartThings Find для поиска потерянных смартфонов, планшетов и носимых устройств Galaxy.

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

Как работают подсказки в Chromium и что мы сделали с ними в Яндекс.Браузере Давненько я ничего не рассказывал о Яндекс.Браузере, а ведь интерес к нему на Хабре был нешуточный. Пора исправляться. Сегодня хочу поднять тему подсказок в адресной строке. Задумайтесь, сколько раз в день вы вводите что-то в строку своего браузера. Вы набираете слово на к...

[Перевод] Строгая десериализация YAML в Python c библиотекой marshmallow Исходная задача Необходимо прочитать нетривиальный конфиг из .yaml файла. Структура конфига описана с помощью дата-классов. Необходимо, чтобы при десериализации были выполнены проверки типов, и, если данные невалидны, было брошено исключение. То есть, проще говоря, нужна ...

Большое обновление браузера Microsoft. Новый Edge приносит поиск в боковой панели, синхронизацию открытых вкладок, темы, спящие вкладки и многое другое Компания Microsoft выпустила большое обновление фирменного браузера Edge. Стабильная версия Edge 88 собрала множество интересных функций, которые до этого тестировались в каналах Beta, Dev и Canary.  Одно из самых заметных новшеств — появление боковой панели...

Как в 2020 году разработчику найти удаленную работу: статистика, инструменты + советы инженера По статистике Stack Overflow, активно ищут работу немногим более 17% разработчиков. При этом, помимо зарплаты, в пятерку важных факторов при смене места входит и запрос на улучшения work/life balance. Традиционно многие люди видят в удаленной работе возможность улучшить эт...

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

Пилим веб-опросник как у Meduza: пошаговый гайд для начинающих Меня зовут Егор, я Full-stack разработчик в Leader-ID. В этой статье я хочу поделиться простым рецептом по созданию красивого и удобного веб-опросника наподобие тех, что делает Meduza. Он умеет показывать статистику после ответа на отдельные вопросы, подсчитывать общий балл,...

[Перевод] Имитация рисования от руки на примере RoughJS RoughJS это маленькая (<9 КБ) графическая библиотека JavaScript, позволяющая рисовать в эскизном, рукописном стиле. Она позволяет рисовать на <canvas> и с помощью SVG. В этом посте я хочу ответить на самый популярный вопрос о RoughJS: как это работает? Немного ист...

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

Отлаживаем ядро из командной строки с bpftrace Это очередная статья из цикла «BPF для самых маленьких» (0, 1, 2) и первая из серии практических статей про трассировку Linux современными средствами. Из нее вы узнаете о программе и языке bpftrace — самом простом способе погрузиться в мир BPF с практической точки зрения, да...

Microsoft выпустила расширение Microsoft News для Google Chrome Старый Microsoft Edge канул в лету, а на его смену пришел новый Microsoft Edge, который уже основан на Chromium. Как бы там не было, как у старого, так и у нового Microsoft есть есть одна функция, которая может показаться интересной: Адресная строка поиска, новостная лента,...

Вокруг data.table Эта заметка будет интересна для тех, кто использует библиотеку обработки табличных данных для R — data.table, и, возможно, будет рад увидеть гибкость ее применения на различных примерах. Вдохновившись хорошим примером коллеги, и надеясь, что вы уже почитали его статью, пред...

Интеграция в проект LVGL графической библиотеки для микроконтроллеров LVGL — Light and Versatile Graphics Library также известная как LittleVGL. Библиотека поддерживает большое количество микроконтроллеров, таких как STM32, ESP32 и другие. Мне пока удалось запустить полноценную демо программу на ESP32 и STM32f429 Discovery. Библиотека открыт...

[Перевод - recovery mode ] Учебный проект на Python: алгоритм Дейкстры, OpenCV и UI ( часть 1) Лабиринты — это распространенная головоломка для людей, но они представляют из себя интересную задачу для программирования, которую мы можем решить, используя методы кратчайшего пути, такие как алгоритм Дейкстры. Вспоминаем алгоритм Дейкстры Алгоритм Дейкстры — один из наиб...

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

Простой умный алгоритм поиска для iOS на Swift Алгоритм умнее простого сопоставления подстроки, но не такой сложный, как нечеткое сопоставление имен методов в Xcode.

[Перевод] Четыре простые настройки терминала Kubernetes, которые повысят вашу продуктивность Я управлял эксплуатацией больших Kubernetes-кластеров более трёх лет, и хочу поделиться своим минималистичным подходом к настройке терминала kubectl terminal, которая доказала свою высокую эффективность в повседневной работе. Хорошо настроенный терминал с командной строкой ...

Пишем ИИ для игры Гомоку (5 в ряд) Разрабатывая браузерную игру Гомоку (5 в ряд) на языке JavaScript, я столкнулся с необходимостью реализации компьютерного противника (ИИ). В данной статье кратко описаны основные компоненты ИИ, а также приведено сравнение алгоритмов поиска Negamax, NegaScout и MTD-F.Основные...

Как найти иллюстратора, если вы ничего не понимаете в иллюстрации Меня зовут Полина, я работаю веб-дизайнером и иллюстратором. Работы много, поэтому со временем возник вопрос о поиске «запасного игрока», который в случае моего большого загруза мог бы подхватить задачу по созданию иллюстраций для статей на Хабр и Яндекс Дзен. До этого мом...

Беги, муравей. Беги В данной статье рассматривается процесс создания имитационной модели поведения муравьиной колонии (можно почитать в википедии ) в среде имитационного моделирования «AnyLogic». Данная статься носит практический характер. В ней будет рассмотрен вопрос применения муравьиного ал...

Что ещё, кроме животных, можно смотреть в 3D в Google «Смотреть 3д животных». Именно этот запрос на протяжении нескольких недель оставался самым популярным в Google, а наша инструкция, в которой мы подробно расписали, что и как, до сих удерживает первое место по количеству прочтений среди наших читателей. Почему? Причин на сам...

Есть ли жизнь без Nvidia? Запускаем TensorFlow на Radeon RX 580 На новом рабочем месте меня посадили за ПК, оборудованный процессором Ryzen 2600 и видеокартой Radeon RX 580. Попробовав обучать нейронные сети на процессоре, я понял, что это не дело: уж слишком медленным был процесс. После недолгих поисков я узнал, что существует как миним...

Как мы собрали 4 тысячи кандидатов на 32 вакансии и прокачали 952 человека, а потом нашу методику забрали университеты Как выяснилось, поиск работы может представлять собой увлекательную командную игру, причем играть в нее можно не только ради финального трудоустройства, но и чтобы выявить в самом себе скрытые таланты и лидерские качества. Изначально у нас была гипотеза, что «играть» в нее ...

WhatsApp с 1-го числа на Android и iOS прекратит работать В настоящее время на рынке можно встретить крайне много различных самых разных сервисов для общения, а одним из наиболее крупных и известных среди всех существующих на рынке является WhatsApp. Это программное обеспечение является невероятно распространенным, Читать полную в...

Nikon называет Nikkor Z 24-50mm f/4-6.3 самым коротким и легким зум-объективом для полнокадровых беззеркальных камер Одновременно с полнокадровой беззеркальной камерой Nikon Z 5 компания Nikon представила совместимый с ней объектив Nikkor Z 24-50mm f/4-6.3. По словам производителя, это самый короткий и легкий зум-объектив для полнокадровых беззеркальных камер. Объектив будет предложе...

Android Localization Library: простое переключение языков Android Localization Library — библиотека для управлениями языками в приложении. Принцип локализации остается прежним (вы делаете разные строковые файлы для разных языков), а библиотека помогает переключаться между языками “на лету”. Например: class MainApplication : A...

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

[Перевод] Интеграция чат-бота Dialogflow с Angular-приложением Существует множество публикаций о разработке чат-ботов с использованием возможностей платформы Dialogflow. Но для выхода на решение, которое применимо на практике, просто создать бота недостаточно. Бота надо подключить к веб-интерфейсу. Это — интересная и сложная задача. Чат...

Магазин приложений Huawei AppGallery стал доступен на ПК Ранее Huawei запустила магазин приложений AppGallery для смартфонов Huawei и Honor в качестве замены магазину Google Play Store. AppGallery предлагает огромный каталог приложений для Android, безопасность личных данных и привычные возможности по поиску контента в разных...

Как правильно искать изображения в Google Картинках Для большинства пользователей Интернета основным инструментом поиска информации является Google, а сервис Google Картинки (Google Images) – самое популярное место для поиска картинок. Достаточно ввести любой запрос, и вы увидите тысячи связанных с ним изображений. Все кажетс...

Клонированные переменные Как-то попалось интересное (для меня), хотя и довольно давнее обсуждение языков программирования, где упоминался и язык PL/1. В конце концов, как всегда и бывает на таких форумах, все стороны остались при своем мнении, и тогда один из участников предложил написать на разных ...

Что выбрать в качестве библиотеки компонентов для React-проекта Меня зовут Ксюша Луговая. В СберКорусе я занимаюсь поддержкой библиотеки React-компонентов Korus-UI. С проблемой выбора библиотеки рано или поздно сталкивается почти каждый разработчик, и порой решение может быть нетривиальным. Возникают вопросы: чем руководствоват...

[Перевод] Как создать свой первый open source проект на Python (17 шагов) Каждый разработчик ПО должен знать как создать библиотеку с нуля. В процессе работы Вы можете многому научиться. Только не забудьте запастись временем и терпением. Может показаться, что создать библиотеку с открытым исходным кодом сложно, но Вам не нужно быть потрепанным ж...

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

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

Конвертация xls в xlsx и xml на C# В этой статье я постараюсь рассказать об одном из возможных путей конвертации документов формата xls в xml. Непосредственно моя задача выглядела примерно так: Дано: 1-2 дня времени на поиск и реализацию решения Найденное решение должно быть настолько бесплатным, насколько э...

Microsoft втихаря лишила Windows 10 полезной функции. Больше никаких походов в интернет за драйверами через Диспетчер устройств В выпущенном недавно необязательном обновлении Windows 10 (сборка 19041.423) пользователей ждёт неожиданное «новшество». Компания Microsoft тихо и без объявления войны убрала опцию Диспетчера устройств (Device Manager) обновления драйверов через интернет.&nb...

C++17. Функция стандартной библиотеки std::launder и задача девиртуализации В этой статье мы попробуем разобраться с одним из самых неоднозначных и непонятных нововведений стандарта C++17 — функцией стандартной библиотеки std::launder. Мы посмотрим на std::launder с другой стороны, посмотрим на источник. Разберем что лежит в основе функции на пример...

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

Типизированные запросы OData в TypeScript Традиционно запросы OData к данным выражаются в виде простых строк без проверки типов при компиляции или без поддержки IntelliSense, кроме того, разработчику приходится изучать синтаксис языка запросов. Данная статья описывает библиотеку TsToOdata, которая превращает запрос...

[Перевод] Единый математический язык для физики и инженерного искусства в 21 веке Конец 18-го и 19-й век были временем колоссального прогресса в математике. Величайшие умы тысячелетия вводили все новые математические системы и языки, такие как алгебры Клиффорда и Грассмана. Хотя эти алгебры вызвали значительный интерес, в то время они воспринимались как п...

[Перевод] Связные списки, трюки с указателями и хороший вкус В интервью на TED 2016 (14:10) Линус Торвальдс рассказывает о хорошем стиле программирования. В качестве примера приводит два варианта удаления элементов из односвязных списков (см. ниже). В первом варианте есть специальный случай, а в другом — нет. Линус предпочитает второй...

WhatsApp начиная с 1-го числа перестанет работать на всех Android и iOS Как бы сильно не старались различные конкуренты, в число которых входят Telegram, WeChat, Viber, ICQ, Signal и другие, но самым популярным и распространенным по всему земному шару мессенджером, то есть сервисом для общения, является WhatsApp. Читать полную версию публикации...

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

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

178 Тбит/с — новый мировой рекорд скорости интернета Установлен новый рекорд скорости передачи данных в интернете, который составляет 178 терабит в секунду (Тбит/с). Сразу стоит добавить, что в обозримом будущем такая скорость не будет доступна рядовым пользователям. В данный момент самая быстрая доступная скорость для по...

Парсер командной строки на .NET5 Сегодня мы собираемся показать вам, как начать парсинг аргументов командной строки. Кстати, это один пост из серии статей о .NET 5. У нас есть еще много интересного.Приложения командной строки, также известные как консольные приложения, - это программы, созданные для использ...

Долгожданное новшество Spotify. Доступ ко всем песням на смартфоне Команда популярного музыкального сервиса Spotify готовит к запуску новую полезную функцию, которая порадует многих пользователей.  На грядущее нововведение обратила внимание Джейн Маньчунь Вонг (Jane Manchun Wong), специализирующаяся как раз на поиске таких скрыты...

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

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

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

[Из песочницы] Фасетные фильтры: как готовить и с чем подавать О чем речь  Как сделать фасетный поиск в интернет-магазине? Как формируются значения в фильтрах фасетного поиска? Как выбор значения в фильтре влияет на значения в соседних фильтрах? В поиске ответов дошел до пятой страницы поисковой выдачи Google. Исчерпывающей информации н...

Зачем нам нужны нейронные процессоры? Нейросети сейчас называют новым электричеством. Мы их не замечаем, но пользуемся каждый день. Face ID в iPhone, умные ассистенты, сервисы перевода, и даже рекомендации в YouTube — всё это нейросети. Они развиваются настолько стремительно, что даже самые потрясающие отк...

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

[Перевод] Flutter.dev: Простое управление состоянием приложения Всем привет. В сентябре OTUS запускает новый курс «Flutter Mobile Developer». В преддверии старта курса мы традиционно подготовили для вас полезный перевод. Теперь, когда вы знаете о декларативном программировании пользовательского интерфейса и разнице между эфемерным сос...

Office 2019 стал бесплатным для Windows 10 Наиболее известной и популярной операционной системой среди всех существующих на рынке в настоящее время является Windows 10, а установлена она на более чем 1,4 млрд электронных устройств, относятся к числу которых персональные компьютеры, ноутбуки, планшеты, Читать полную ...

Биткоин или Биткойн? В русском языке встречаются два варианта написания слова Bitcoin — через «ои» (Биткоин) и через «ой» (Биткойн). Какое же из них верное? На самом деле это не такой уж простой вопрос. Дебаты между сторонниками обоих вариантов ведутся не один год и, на момент написани...

Я протестировал «Быстрые команды» для Android. Это какая-то дичь «Быстрые команды», которые появились в iOS 12, на мой взгляд, являются одним из главных преимуществ iOS над Android. Благодаря им мне удалось расширить функциональные возможности своих устройств, научив их такому, чего ни один Android-смартфон ни за что не сделает при помощ...

Material Design Search UI iOS: красивый поиск Material Design Search UI iOS — экран поиска в материальном дизайне для iOS. Представляет стилизованную поисковую строку и соответствующий View с результатами. Написано на Swift 5.0 и работает начиная с iOS 11.0. Исходники: https://github.com/twho/material-design-searc...

Виджеты и библиотека приложений в iOS 14 навсегда изменят экран вашего iPhone Главный экран iPhone практически не менялся со времени дебюта iPhone 13 лет назад. Он представлял собой простую сетку иконок и оставался таким же вплоть до выхода iOS 13 (где в iPad впервые появились виджеты). В iOS 8 Apple добавила поддержку виджетов, хотя снова по своему ...

Секреты поиска Spotlight на Mac Если вы давно пользуетесь macOS, то наверное уже привыкли к поиску Spotlight, с помощью которого можно легко найти практически любой файл на накопителе Mac. В этой статье мы расскажем о некоторых полезных советах, которые помогут во взаимодействии с поиском Spotlight. ♥ ПО Т...

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

Процессоры AMD Ryzen 4000U обеспечат лучшую автономность, нежели Intel Ice Lake-U Процессоры для ноутбуков должны обладать не только достаточно высокой производительностью, но и потреблять при этом не слишком много энергии. Компания AMD сегодня раскрыла больше подробностей о своих мобильных процессорах Ryzen 4000-й серии, входящих в семейство Renoir, в то...

Яндекс запустил новую версию поиска — «Вега» Яндекс представил «Вегу» — большое поисковое обновление. Теперь Яндекс точнее и быстрее отвечает на запросы, а также учитывает сигналы от асессоров-экспертов при обучении поискового алгоритма. Люди могут решать с помощью Яндекса гиперлокальные задачи — находить нужное в конк...

Об ошибках в коде QuantConnect Lean В данной статье рассматриваются ошибки в проекте с открытым исходным кодом, найденные с помощью статического анализатора. Говорится о некоторых простых вещах, которые могут помочь избежать их появления. Например, используя синтаксические конструкции языка начиная с C# 8.0. ...

Быстрее, чем C++; медленнее, чем PHP Привет, Хабр. У меня тут случайно код на хаскеле получился быстрее аналогичного кода на C++. Иногда — на 40%. (время работы, меньше — лучше, C++ снизу) Что самое смешное — я собирал хаскель-код через LLVM-бекенд, но при этом сравнивал с GCC. Если сравнивать с clang (что вро...

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

Новая функциональность в RESTinio и опять с помощью C++ных шаблонов Увидело свет очередное обновление небольшой библиотеки для встраивания асинхронного HTTP-сервера в C++ приложения: RESTinio-0.6.12. Хороший повод рассказать о том, как в этой версии с помощью C++ных шаблонов был реализован принцип "не платишь за то, что не используешь&q...

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

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

Подшипники B71911-E-T-P4S-UL в любом объеме Подшипники –это небольшие, но очень важные детали. Применяя современные технологии, с помощью этой запчасти крутятся все остальные детали. К тому же, она контролирует их движение и систематизирует, благодаря ПШ движения происходят равномерно, а не хаотично. Подшипник HS71903...

[Перевод] Эволюция PHP — от 5.6 до 8.0 (Часть 1) После релиза PHP версии 7.3 я решил уделить больше внимания развитию PHP: что собственно развивается и в каком направлении искать понимание потенциала и оптимизации этого невероятно популярного языка программирования.В результате поиска лаконичного списка функций, реализован...

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

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

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

[Перевод] Вышел Windows Terminal Preview v0.8 Выпущена новая версия Windows Terminal. Терминал можно загрузить из Microsoft Store или со страницы выпусков на GitHub. Давайте перейдем к просмотру нововведений! Поиск В Терминал добавлена функция поиска. По умолчанию, для вызова строки поиска, используется комбинация клав...

DDD, CQRS, Event-Driven, модель акторов и микросервисы Хочу поделиться своим опытом реализации микросервисной архитектуры поверх actor-model фреймоворков, таких как AKKA и Microsoft Orleans. Моя гипотеза: если использовать один стек для реализации микросервисов, то можно: Существенно снизить сложность разработки и объем кода У...

[Перевод] Почему нужна инструментальная поддержка пагинации на ключах Всем привет! Я бэкэнд-разработчик, пишу микросервисы на Java + Spring. Работаю в одной из команд разработки внутренних продуктов в компании Тинькофф. У нас в команде часто встает вопрос оптимизации запросов в СУБД. Всегда хочется еще чуть-чуть быстрее, но не всегда можно об...

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

Ускоряем загрузку больших объёмов в PostgreSQL, используя COPY from STDIN binary ...К сожалению Qt драйвер для постгреса не поддерживает функционал, необходимый для быстрой загрузки. Поэтому я написал свою библиотеку на С++ для этого, а теперь хочу с Вами поделиться этим прекрасным методом добавления и самой библиотекой. Читать далее

Тысячи украденных паролей стали доступны в поиске Google В августе прошлого года мошенники начали рассылку фишинговых писем, замаскированных под уведомления о сканировании от Xerox. Письма содержали вредоносное вложение в формате HTML, которому удалось обойти защитные фильтры Microsoft Office 365. В результате более тысячи учетных...

Какой язык программирования быстрее работает, проще изучается, легче пишется и вообще всех прекрасней на свете? В преддверии дня разработчика мы решили поднять извечный вопрос: «Какой язык программирования самый лучший?» Читать дальше →

Интернационализация: как сделать веб доступным для всех Ecma International, Technical Committee 39 или по-простому TC39 — это группа JavaScript-разработчиков, создателей реализаций технологий, академиков и других заинтересованных сторон, которые вместе с сообществом поддерживают и развивают JavaScript как платформу. Участники TC...

[Из песочницы] Почему Rust должен стать функциональным языком программирования Привет, Хабр! Начав изучение Scala, я сразу столкнулся с тем, что функциональная реализация простейшего алгоритма быстрой сортировки работает радикально медленней и потребляет существенно больше памяти, чем аналогичная императивная реализация. При этом никто не спорит, что ...

Как писать на ассемблере в 2021 году Несмотря на наличие множества языков различной степени высокоуровневости, сегодня ассемблер не потерял своей актуальности и в индексе TIOBE находится на почётном 10-ом месте (на февраль 2021), обогнав такие модные языки как Go и Rust. Одна из причин его привлекательности – в...

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

[Перевод] Делаем печатные ссылки кликабельными с помощью TensorFlow 2 Object Detection API TL;DR В этой статье мы начнем решать проблему того, как сделать печатные ссылки в книгах или журналах кликабельными используя камеру смартфона. С помощью TensorFlow 2 Object Detection API мы научим TensorFlow модель находить позиции и габариты строк https:// в изображениях ...

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

[Перевод] RED: Улучшение качества звука с помощью резервирования Еще в апреле 2020 года Citizenlab сообщил о довольно слабом шифровании Zoom и заявил, что Zoom использует аудиокодек SILK. К сожалению, статья не содержала исходных данных, чтобы это подтвердить и дать мне возможность обращаться к ней в дальнейшем. Однако благодаря Натали С...

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

Стало понятно, откуда у видеокарт GeForce RTX 3000 столь огромное количество ядер CUDA. Nvidia раскрыла некоторые детали Видеокарты GeForce RTX 3080 и RTX 3070 так впечатлили соотношением цены и производительности, что вряд ли кто-то расстроился из-за того, что Nvidia оставила за кадром многие технические характеристики. Вероятно, узнаем мы о них уже после старта продаж, но кое-что всё ж...

[Перевод] Как я модернизировал свою Flash-игру В этом посте я расскажу о том, как перенёс свою Flash-игру Frog Fractions на современную платформу. В результате я создал частично автоматизированный порт на Unity при помощи Haxe. Пост будет интересен всем, кто пытается модернизировать свою кодовую базу на Flash. В посте б...

Быстрое сравнение double Вчера здесь вышла статья о быстром парсинге double, я зашёл во блог к её автору, и нашёл там ещё один интересный трюк. При сравнении чисел с плавающей точкой особое внимание приходится уделять NaN (восемь лет назад я писал про них подробнее); но если сравниваемые числа завед...

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

ABBYY NeoML: как мы делали библиотеку машинного обучения и зачем она нужна Привет, Хабр! Меня зовут Стас, и я отвечаю за направление Common Libraries в компании ABBYY. Недавно мы выложили на GitHub созданную нами библиотеку для машинного обучения NeoML. NeoML — это кроссплатформенная C++ библиотека, позволяющая организовать полный цикл разработки ...

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

Найден простой способ ускорить систему Windows Эксперты обнаружили способ, позволяющий сделать более быстрой работу операционной системы Windows 10. Функция локального поиска среди приложений и файлов на компьютере может ускориться, если отключить использование онлайновой поисковой системы Bing.Опция отказа от использова...

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

[Перевод] 20 инструментов Android-разработчика, о которых вы могли не знать Набор полезных, но не очень известных инструментов и библиотек Android.Работая над статьями о 30 лучших библиотеках и проектах Android 2019 г. и 25 лучших библиотеках и проектах Android 2020 г., я наткнулся на множество замечательных инструментов и проектов, которые могут пр...

[Перевод] 52 датасета для тренировочных проектов Mall Customers Dataset — данные посетителей магазина:id, пол, возраст, доход, рейтинг трат. (Вариант применения: Customer Segmentation Project with Machine Learning) Iris Dataset — датасет для новичков, содержащий размеры чашелистиков и лепестков для различных цветков. MNIS...

[Перевод] Как максимальной единицей передачи информации в интернете стали 1500 байт Ethernet повсюду, и десятки тысяч производителей выпускают оборудование с его поддержкой. Однако почти у всех этих устройств есть одно общее число – MTU: $ ip l 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00...

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

[Перевод] 23 непростых вопроса для JavaScript-собеседования Хотите подготовиться к собеседованию по JavaScript и ищете вопросы, на которых можно попрактиковаться? Если так — считайте, что ваши поиски окончены. Автор материала, перевод которого мы сегодня публикуем, говорит, что собрал более двух десятков вопросов по JavaScript, предн...

[Из песочницы] Комбинаторика в Python Стандартная библиотека python, начиная с версии 2.2, предоставляет множество средств для генерирования комбинаторных объектов, но в интернете мне не удалось найти ни одной статьи, которая подробно рассказывала бы о работе с ними. Поэтому я решил исправить это упущение. Читат...

Huawei представила свой поисковик на замену Google. Как им пользоваться Даже если вы не пользуетесь смартфонами Huawei, скорее всего, вы знаете, что AppGallery – это собственный магазин приложений китайской компании, который она запустила на замену Google Play. Несмотря на довольно широкий ассортимент, который за последний год сильно разросся, ...

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

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

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

Google облегчил отслеживание изменений в документации по поиску На сайте Google Developers появилась новая страница «Latest updates», где можно отслеживать последние изменения в документации по поиску. Эта страница была добавлена 20 марта. Она находится в разделе «Поиск для разработчиков» и содержит информацию по самым крупным обновления...

[Из песочницы] Бот для сборов. Собираемся на футбол с новыми технологиями Введение Всем привет. В этой статье я опишу своего чат-бота для сервиса обмена сообщениями telegram и социальной сети VK с использованием NodeJS. На этом месте у многих читателей должно вырваться что-то вроде: "Доколе!" или "Что, опять ?!". Да, похожие публикации уже были и ...

Bloomberg: Google хочет получить больше контроля над поиском и голосовым помощником в смартфонах Samsung Условия сделки не раскрываются, но Google ежегодно платит «миллиарды долларов», например, за предустановку поиска Google в Safari.

[Перевод] Как самые медленные компьютерные программы проливают свет на фундаментальные ограничения математики Как правило, программисты хотят минимизировать время выполнения кода. Но в 1962 году венгерский математик Тибор Радо поставил противоположную задачу. Он задался вопросом: как долго может выполняться простая компьютерная программа, прежде чем она закончит работу? Радо назвал ...

Технология Apphost: альтернативная вселенная микросервисов в Яндексе Когда-то поиск Яндекса представлял из себя бутерброд. Каждый его слой могли эффективно разрабатывать единицы людей. Однако верхний добавлял пикантности. Этот слой представлял из себя Apache с кучей Perl’овых модулей. Поддерживать большой объём кода на стареющем языке програм...

[Туториал] Как создать вашу первую инкрементальную IDLE игру на JavaScript Сегодня я расскажу вам, как создать простейший ToDo лист простейшую инкрементальную IDLE игру на JavaScript, потратив меньше одного дня ежегодных каникул. Для этого предлагаю выбрать сову игру попроще и не пропускать шагов между овалом и готовой совой пустым проектом и готов...

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

Как я делал 2D тени в Unity Что первое приходит в голову разработчику инди-игры, когда он сталкивается с необходимостью добавления фичи, представления о реализации которой толком не имеет? Разумеется, он идёт искать следы тех, кто уже прошёл этот путь и удосужился записать свой опыт. Так поступил и я н...

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

Дерево отрезков: просто и быстро Накануне очередного запуска курса «Алгоритмы для разработчиков» мы провели открытый урок. На нём поговорили об известной идее дерева отрезков, обсудили, как его строить, обновлять и быстро O(log n) вычислять сумму чисел любого отрезка данного массива. Алгоритм очень простой ...

Bison, dynamic linking и… обработка BMP изображений В этом посте я постараюсь раскрыть тему написания несложного модульного приложения на языке C89 для обработки 24-битных BMP изображений, использующего в своей работе простой скриптовый язык.Если вы заинтересованы в разработке языков или вам необходимо быстро разобраться как ...

[Перевод] Sysbench и распределение случайных величин Перевод статьи подготовлен специально для студентов курса «Базы данных». То, что вы, возможно, не знали о генерации случайных чисел в sysbench Sysbench — это популярный инструмент для тестирования производительности. Первоначально он был написан Петром Зайцевым в начале ...

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

Работа с SD-картой по интерфейсу SPI. Реализация на VHDL Привет, Habr! Однажды на работе мне досталась задача оценить возможность реализации хранения данных на SD-карте при подключении ее к FPGA. В качестве интерфейса взаимодействия предполагалось использование SPI, так как он проще в реализации. Полученным опытом хотелось бы поде...

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

Заражены все: смартфоны переносят смертельный коронавирус В настоящее время по всему миру официально зарегистрировано около 18 тысяч человек, которые заболели смертельным коронавирусом. Ежедневно число зараженных увеличивается на 2 – 3 тысячи человек, и чем дальше в будущее, тем больше будет зараженных Сообщение Заражены все: смар...

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

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

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

Объектив Trioplan 50mm F2.8 доступен в вариантах с креплениями Canon EF, Nikon F, Fujifilm X, Sony E, Pentax K, M42, Micro Four Thirds, Leica M и Leica L Вслед за объективами Lydith 30mm F3.5 II и Trioplan 100mm F2.8 II компания OPC Optics, которой сейчас принадлежит торговая марка Meyer Optik Görlitz, выпустила третью в этом году модель обновленного ассортимента — полнокадровый объектив Trioplan 50mm F2.8 II....

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

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

Google BERT в поиске на всех языках охватывает около 10% запросов Сотрудник Google Дэнни Салливан прояснил в Twitter, что глобальный запуск BERT не повлиял на долю охватываемых им запросов. Как и на английском языке в США, в других языковых версиях поисковой системы BERT влияет на примерно 10% запросов. «Это зависит от языка, но в целом со...

Чаты на вебсокетах, когда на бэкенде WAMP. Теперь про Android Мой коллега уже писал про наш опыт разработки чатов на вебсокетах для iOS, поэтому часть про особенности бэкенда с точки зрения клиента у нас общая. А вот реализация на Android, конечно, отличается. И ещё мне не приходилось, как в первой статье, искать библиотеку для поддерж...

Снижение скорости свободного перемещения для первого слоя      Доброго времени суток. Прошу строго не судить, это мой первый пост. Испытывал трудности при печати модели с большим количеством элементов в первом слое. Раньше использовал PLA и проблем не было, перешёл на ABS, узнал все его капризы с адгезией к столу. Если использовать...

«Лэт ми спик фром май харт» © Во время проведённого на этой неделе вебинара в чате возникло обсуждение вопроса «Нужен ли перевод ITIL4?». Опять. К сожалению, трансляция была прервана, поэтому не успели обсудить этот вопрос. Но, поскольку дискуссия возникает не первый раз, выскажусь здесь. Также в конце д...

[Перевод] Почему на Raspberry Pi4 стоит поставить 64-битную ОС Одно из преимуществ работы на компанию, занимающуюся производством программ, заключается в том, что вам часто представляется возможность протестировать прототипы нового железа. Однако не в данном случае – я купил себе Raspberry Pi4 потому, что она очень дешёвая! На Raspbe...

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

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

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

Мастерская Dell – лучшее, что когда либо случалось с вашим компьютером! Необходимо быстро и недорого выполнить профессиональный и качественный ремонт компьютера или ноутбука? Для большинства это серьезная проблема, поскольку не хочется доверять свой не дешевый гаджет в руки непроверенным мастерам, а вдруг, они его наоборот, еще больше сломают? Л...

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

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

Что бы я заказал себе в Черную пятницу 2020: ТОП подборка! Каждый год в конце ноября во всем мире проводится Черная пятница — самая большая распродажа, когда магазины сбрасывают цены, причем скидки, бывает, доходят до 50%, а то и 70%! Да вы уже и сами в курсе, наверняка за это утро получили несколько рассылок от магазинов с темой «...

[Перевод - recovery mode ] Делаем быстрее POSTGRESQL COUNT (*) Часто жалуются, что count (*) в PostgreSQL очень медленный. В этой статье я хочу изучить варианты, чтобы вы получили результат как можно быстрее. Почему count (*) такой медленный? Большинство людей без проблем понимают, что следующий запрос будет выполняться медленно: S...

Представлен объектив Leica Summilux-M 90mm F1.5 за 13 тысяч долларов Компания Leica представила светосильный умеренный телеобъектив Summilux-M 90mm F1.5, который предназначен для съемки портретов. Новинка характеризуется фокусным расстоянием 90 мм, углом поля зрения 27°, максимальной диафрагмой f/1,5, конструкцией из восьми элементов (в том ч...

[Из песочницы] Desktop pet на C# WPF Desktop pet — пусть и бесполезное, но весьма забавное украшение рабочего стола. В данной статье показана, наверное, самая простая его реализация. Гифка под катом! Читать дальше →

WhatsApp с 1-го числа прекратит полностью работать на Android и iOS Самым популярным, крупным и известным мессенджером является WhatsApp, а пользуются им более чем 2 млрд человек, все из которых находят его самым лучшим и наиболее привлекательным среди всех существующих на рынке. Это программное обеспечение позволяет Читать полную версию пу...

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

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

Код аудита: поиск дублей, face detection и аномальные изображения Хабр, привет! Сегодня я расскажу, как мы делали аудит изображений, используя компьютерное зрение, сверточную нейронную сеть FaceNet, а также про кластеризацию гистограмм с целью поиска аномальных изображений. Читать дальше →

Gameloft дарит игры в честь своего юбилея Gameloft исполнилось 20 лет, и чтобы отпраздновать, компания отдает несколько игр бесплатно. Ну как несколько, 30! Известная мобильная игровая студия, популярная благодаря своим франшизам, таким как Modern Combat и Asphalt, назвала этот пак Gameloft Classics. Это приложение,...

ruleguard: динамические проверки для Go В этой статье я расскажу о новой библиотеке (и утилите) статического анализа go-ruleguard, которая адаптирует gogrep для использования внутри линтеров. Отличительная особенность: правила статического анализа вы описываете на особом Go-подобном DSL, который на старте rulegua...

Распродажа от LIDER-3D в честь Всемирного дня шопинга 11.11 Чтобы подсластить всем этот не самый простой год, компания LIDER-3D начинает масштабную распродажу в честь Всемирного дня шопинга 11.11.2020!В этот раз скидки до 30% действуют на десятки позиций, в числе которых топовые 3D-принтеры, сканеры, периферия и расходные материалы. ...

Nestle отозвала более 40 тысяч килограмм куриного мяса из-за найденных в нём кусочков твёрдого пластика Производитель всем известных Kinder Сюрпризов и шоколада Nesquik выпускает множество других продуктов питания, в том числе и мясо. И вот, как стало известно, компания Nestle была вынуждена отозвать более 40 тыс килограмм куриного мяса из-за найденных в нём кусочков твёрдого ...

Connection: поиск кратчайшего пути в графе Connection — библиотека нахождения путей в графе на Swift. Автор позиционирует ее как расширение GameplayKit, но, кажется, может подойти и многим другим. В целом — ищет кратчайший путь между двумя вершинами во взвешенном графе. Пример: import Connection // Create...

Представлена Apple M1 — самая быстрая SoС для ПК и ноутбуков Вчера в ходе мероприятия под названием One More Thing компания Apple представила новые ноутбуки MacBook Air и MacBook Pro и компьютер Mac mini, которые построены на базе однокристальной системы Apple M1. Это первое поколение фирменных ARM-процессоров для компьютеров Mac...

Google запустил проект, который поможет охладить мегаполисы В больших городах температура держится обычно на 3-4 градуса выше, чем в сельской местности, так как здания и асфальт задерживают тепло. Простое и известное решение этой проблемы – посадить больше деревьев в районах с их дефицитом. Для этого Google разработал новый проект Tr...

Студенты пишут Uart драйвер для STM32F411 Доброго здравия всем! Сегодня я хочу вам рассказать, как постепенно студенты учатся разрабатывать ПО для микроконтроллера на примере драйвера UART на STM32F411. Код и архитектуру с небольшими моими изменениями и доработками я попытаюсь привести здесь. Сразу отмечу, что все...

«Яндекс» назвал самые популярные слова в поиске в 2020-м и предыдущих годах Тройку лидеров угадать несложно.

Google BERT в поиске на всех языках охватывает около 10% запросов Сотрудник Google Дэнни Салливан прояснил в Twitter, что глобальный запуск BERT не повлиял на долю охватываемых им запросов.Как и на английском языке в США, в других языковых версиях поисковой системы BERT влияет на примерно 10% запросов.«Это зависит от языка, но в целом соот...

[Перевод] Python Gateway в InterSystems IRIS Эта статья посвящена Python Gateway — комьюнити-проекту с открытым исходным кодом для платформы данных InterSystems IRIS. Этот проект позволяет оркестрировать любые алгоритмы машинного обучения, созданные на языке Python (основная среда для многих Data Scientists), использов...

Web Sip клиент на основе JsSIP + FreePBX У FreePBX есть Web Sip клиент. Мне было интересно как он работает. Начав изучать технологию WebRTC я наткнулся на 3 библиотеки — это JsSIP, его fork SIP.js, а также sipml5. JsSIP и SIP.js не удалось запустить с первого раза, не хватало опыта. А вот sipml5 оказался самым про...

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

Готовим Большую Фичу™ на Kotlin Multiplatform. Доклад Яндекса Предположим, вы решили внедрить Kotlin Multiplatform в свой проект, чтобы переиспользовать логику на iOS и Android. Рано или поздно вы захотите сделать Большую Фичу, которая будет включать в себя и сложную многопоточную логику, походы в сеть, кэширование. Каждый из этих этап...

LabVIEW NXG — простые типы данных и приведение типов Это третья статья из цикла о LabVIEW NXG, в которой мы рассмотрим простые типы данных и несложные преобразования между ними. Система типов LabVIEW весьма похожа на "классические" языки программирования. В данной статье мы рассмотрим базовые типы — численные, булев...

Как писать музыку на Python — помогут три тематические библиотеки (для специалистов разного уровня) Продолжаем тему музыкального программирования — ранее мы говорили о языках Csound, SuperCollider и Pure Data, а сегодня рассказываем Python и библиотеках FoxDot, Pippi и Music-Code. Читать дальше →

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

В поисках LD_PRELOAD Эта заметка была написана в 2014-м году, но я как раз попал под репрессии на хабре и она не увидела свет. За время бана я про неё забыл, а сейчас нашёл в черновиках. Думал было удалить, но авось кому пригодится. В общем, небольшое пятничное админское чтиво на тему поиска ...

ThinkPad i1200 и Windows ME: неправильный ретроноутбук на неправильной ОС Наивысшую ценность для любого коллекционера представляют редкие, выдающиеся артефакты. Самый крутой магнитофон, самый мощный ноутбук, самый необычный КПК. Эти «приоритеты» иногда бывают надуманными, причина их появления — не объективные преимущества, а некий консенсус среди ...

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

Не баян: ищем дубликаты изображений на основе Milvus с индексом FAISS внутри В user-generated проектах часто приходится бороться с дубликатами, а для нас это особенно актуально, так как основной контент мобильного приложения iFunny — это изображения, которые постятся десятками тысяч ежедневно. Для поиска повторов мы написали отдельную систему, чтоб...

Новогодний IMaskjs 6 — React Native, Pipes, ESM Всем привет! Я только что выпустил релиз шестой версии библиотеки imaskjs. После каждого мажорного релиза мне кажется, что это последняя версия. Библиотеке уже не один год, она стабильна и достаточно популярна среди сообщества. Что там еще можно сделать да еще и на мажорную...

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

Красивый концепт WordPad в Windows 10 В настоящее время происходит обновление Windows 10 с применением Fluent Design, а это означает, что приложения постепенно получают новый визуальный стиль. Тем не менее, одно из приложений, не получающих обновлений, является WordPad, который по-прежнему остается одним из самы...

Мои поиски физической панели управления умным домом Довольно давно у меня появилась мысль установить управляющую панель, расположенную рядом с входной дверью внутри квартиры/дома. Существует несколько вариантов реализации этой задумки: сенсорная панель оператора ПЛК; планшет; сенсорный дисплей, подключенный к микрокомпьютер...

Поиск в Windows 10 перестанет загружать ресурсы диска или процессора Обновление Windows 10 20H1, которое будет выпущено в конце этого года, содержит исправления для чрезмерного использования диска и мощности процессора, вызванного индексатором поиска Windows.

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

Практические методы оптимизации запросов в Apache Spark После вводной статьи про Spark Shell мне хотелось бы рассмотреть некоторые приемы оптимизации запросов в Spark и Hive, и сравнить их с теми, что обычно применяются в классических СУБД типа Oracle или MS SQL. Базовая модель данных Рассмотрим разные техники на базе известной ...

Instagram для медиа: простые механики для быстрого и бесплатного роста числа подписчиков. Кейс «Русского Радио»

Ecotrade Group фиксирует рост популярности приложения Eco Cat App Компания Ecotrade Group отмечает рост популярности своего бесплатного приложения-прайсбука. Совместимое со всеми устройствами приложение Eco Cat App выполняет функцию расширенной системы поиска расценок на каталитические преобразователи металлолома среди обширного ...

[Перевод] Полигоны Another World Существует интересный способ изучения архитектуры компьютеров прошлого. Найти знакомую вам программу и попытаться выяснить, как она была портирована. Хорошим выбором для этого мог бы стать DOOM. Мегахит 1994 года от id Software был портирован на всё, что только можно. Игра с...

Как мы улучшили Умный поиск на hh.ru в 2019 году: инфографика На hh.ru сейчас более 44 миллионов резюме и около 601 тысячи вакансий. Их нужно соотнести друг с другом так, чтобы по запросу соискателя ему мгновенно выдавались в топе результатов поиска те вакансии, которые наиболее подходят именно ему, а по запросу работодателя — наиболее...

Tesla наймёт человека для защиты Илона Маска в соцсетях Производитель электрокаров Tesla начал поиски специалиста по поддержке клиентов (customer support specialist), который будет решать вопросы с увеличением числа сообщений в социальных сетях, направленных на главу компании. Иными словами, Tesla ищет человека для защиты Илона М...

[Из песочницы] Пишем шейдеры кодом в Unity LWRP Введение Здравствуй, Хабр. Сегодня хочется рассказать немного о том, как можно быстро и безболезненно (почти) начать писать классические текстовые шейдеры в Unity с использованием Lightweight Rendering Pipeline (LWRP) — одним из примеров конвейера Scriptable Rendering Pipeli...

Эксперименты с микроконтроллерами в Jupyter Notebook Jupyter Notebook — любимый инструмент-среда для data scientist'ов, аналитиков, инженеров, математиков, студентов и даже для нас — самых обычных ученых в экспериментальной физике. Этот инструмент предназначен для работы с интерпретируемыми языками и удобного графического пре...

1825 л.с. на 1240 кг массы и максимальная скорость свыше 500 км/ч. Анонсирован гиперкар Bugatti Bolide В то время как многие производители при проектировании своих спорт- и гиперкаров делают ставку на электрические силовые установки, в Bugatti остаются верны ископаемому топливу и двигателям внутреннего сгорания. Такой используется в Bugatti Bolide — «самом эк...

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

[Перевод] HyperBand и BOHB. Понимание современных алгоритмов оптимизации гиперпараметров Специально к старту курса «Машинное обучение» в этом материале представляем сравнение BOHB и HyperBand — двух передовых алгоритмов оптимизации гиперпараметров нейронной сети и простого случайного поиска оптимальных гиперпараметров. Сравнение выполняется с помощью платформы n...

[Перевод] Создание Minecraft за одну неделю на C++ и Vulkan Я поставил перед собой задачу воссоздания с нуля Minecraft за одну неделю с помощью собственного движке на C++ и Vulkan. Меня вдохновил на это Hopson, который сделал то же самое при помощи C++ и OpenGL. В свою очередь, его вдохновил Шейн Бек, которого вдохновила Minecraft, и...

Мелкая питонячая радость #10: конечные автоматы и глубокое обучение в несколько строк Конечно, самая большая радость этих дней — python 3.9. Но кроме этой радости кто-то должен ворошить github в поисках мелких приятностей, которые несут добро и свет тем, кто пишет на python. Transitions Тем, кому приходилось писать реализацию какого-нибудь сложного информаци...

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

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

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

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

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

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

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

Добавление собственных пунктов в меню Marlin    Привет всем 3D печатникам и не только!   Сегодня постараюсь в простой форме рассказать, как можно добавить собственный пункт меню в Marlin. На форуме уже была статья на эту тему, но в ней рассматривался случай отмены печати при возникновении проблем в начале печати. Спосо...

Первое синтетическое лекарство: как изобрели аспирин Между тем еще в 1828 году немецкий химик Бюхнер выделил из коры действующее вещество салицин (от латинского названия ивы — Salix). Однако действие его было очень слабым, поэтому распространения оно не получило. Жерар предложил своему приятелю использовать производное салицин...

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

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

Надоел Google Play Store? Вот вам лучшие альтернативы Не обязательно использовать Play Store для того, чтобы скачивать приложения Если вы пользуетесь Android довольно давно, то знаете, что это довольно открытая операционная система, позволяющая модифицировать буквально все, что угодно. Но вот приложения для Android (если мы не ...

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

Не обновляйте Redmi Note 9 до MIUI 12: есть причины Один из наиболее часто задаваемых вопросов в последние месяцы, поступающий от поклонников бренда Xiaomi, это «Когда MIUI 12 появится на моем устройстве»? И поэтому, когда после тысячи проверок, не появилось ли обновление, которые делались ежедневно, мы видим долгожданное уве...

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

Как мы нарисовали на карте несколько тысяч интерактивных объектов без вреда для перформанса Привет, меня зовут Дарья, и я Frontend-разработчик юнита Гео в Авито. Хочу поделиться опытом того, как мы сделали на вебе новый поиск по карте, заменив кластеры более удобным решением и сняв ограничение на количество отображаемых объектов. В статье я расс...

В поисках свежести 20 марта 2010 года началось извержение вулкана Эйяфьядлайёкюдль в Исландии. 14 июля 2015 года межпланетная станция New Horizons передала на Землю фотографии Плутона. 15 апреля 2019 года случился пожар в соборе Парижской Богоматери. Что общего в этих случаях? Каждое подоб...

Blitz: относительное время для TextView Библиотека для Android-приложения от нашего читателя. Blitz — устанавливает в TextView относительное время (например, «5 минут назад»). Киллер-фичей является автоматический апдейт строки со временем — по прошествии, скажем, минуты время обновится самостоятель...

Поиск работы в Германии продакт-менеджером и не только. Часть 3/5. Что нужно сделать перед тем, как начать рассылать CV Начало серии постов смотрите здесь и здесь. Ваши действия при поиске работы зависят от целей, которые вы преследуете. Например, вы твердо хотите попасть в Facebook на позицию аккаунт-менеджера по работе с малым и средним бизнесом. В этом случае вы начинаете читать многочисл...

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

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

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