Социальные сети Рунета
Понедельник, 25 января 2021

QSerializer: решение для простой сериализации JSON/XML Привет, Хабр! Подумалось мне, что как-то несправедливо получается — у Java, С#, Go, Python и т.д. есть библиотеки для комфортной сериализации объектных данных в модные нынче JSON и XML, а в С++ то ли забыли, то ли не захотели, то ли и не особо надо, то ли сложно все это, а м...

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

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

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

Пример event-driven приложения на основе вебхуков в объектном S3-хранилище Mail.ru Cloud Solutions Rube Goldberg coffee machine Event-driven architecture повышает ценовую эффективность используемых ресурсов, потому что они задействуются только в тот момент, когда они нужны. Существует масса вариантов, как это реализовать и не создавать дополнительные облачные сущности в...

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

Как я писал полудецентрализованную криптовалюту на PHP. (Часть 1 — Сбор библиотек) Предисловие Вы наверно помните прошлую статью, в которой я разрабатывал централизованную криптовалюту. Идея была, как Вы знаете, плохой. Я решил перезапустить линейку этих туториалов, но уже более менее нормальной, чем было в прошлые разы. В этой линейке постараемся «пережев...

Андрей Зинин рассказал о нюансах образовательного проекта «Вместе о Победе» Мосметодцентр представил результаты своего совместного труда с учителями российской столицы, вылившиеся в новый образовательный ресурс «Вместе о Победе» (http://pobeda.mosmetod.ru/). Этот проект получил обсуждение в ходе недавнего селекторного совещания Департамента образова...

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

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

Чиним сериализацию объектов в Kotlin раз и навсегда Недавно я наткнулся на статью о проблеме c Java-сериализацией объектов в Kotlin. Автор предложил решать её добавлением метода readResolve к каждому объекту, который наследуется от java.io.Serializable. Этот способ выглядит абсолютно правильным, однако его поддержка может о...

[Перевод] Новые метрики объектных хранилищ Flying Fortress by Nele-Diel Команда объектного S3-хранилища Mail.ru Cloud Storage перевела статью о том, какие критерии важны при выборе объектного хранилища. Далее текст от лица автора. Читать дальше →

[Перевод] Принципы организации объектных хранилищ Storage by Phade01 Наш коллега недавно написал об архитектуре объектного S3-хранилища Mail.ru Cloud Storage. Теперь мы переводим хорошую статью об общих особенностях и ограничениях объектных хранилищ. Читать дальше →

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

Разработка мобильных приложений на Python. Библиотека KivyMD Приветствую! Сегодня речь снова пойдет о библиотеке KivyMD — наборе виджетов для кроссплатформенной разработки на Python в стиле Material Design. В этой статье я сделаю не обзор виджетов KivyMD, как в недавней статье, а, скорее, это будет материал больше о позиционировании...

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

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

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

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

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

[Перевод] Post Mortem по масштабному сбою Amazon Kinesis в US-EAST-1 (25 ноября) Прим. перев.: на прошлой неделе сбой одного из сервисов AWS привёл к проблемам в доступности/корректном функционировании целого ряда облачных услуг этого крупного провайдера. В официальной публикации, оперативно размещённой инженерами интернет-компании, рассказывается о подр...

Security Week 31: атака на инфраструктуру Garmin Как и атака на Twitter на прошлой неделе, выход из строя IT-инфраструктуры компании Garmin еще долго будут изучать как пример масштабного взлома с серьезными последствиями. Хотя производитель навигационного и фитнес-оборудования, ПО и сервисов на момент публикации не признал...

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

OpenCV — 20! Второй проект центра разработки Intel в России Мы продолжаем рассказ о проектах и продуктах, неразрывно связанных с российским центром разработки Intel. И сегодня речь пойдет о проекте-ровеснике Intel в Нижнем Новгороде – он тоже в этом году отмечает двадцатилетие! Это хорошо известная и широко используемая (а также широ...

IntelliJ IDEA 2020.1: Java 14, анализ потока данных в отладчике, новый режим LightEdit, и многое другое Привет, Хабр! На прошлой неделе состоялся релиз IntelliJ IDEA 2020.1, и в этом посте мы коротко расскажем о самом интересном в новой версии. Из крупного: мы добавили поддержку Java 14, анализ потока данных в отладчике, режим редактирования файлов без открытия проекта (LightE...

Можно ли сложить N чисел типа double наиболее точно? В предыдущих сериях… Прошлая статья рассказала о двух способах сложения двух двоичных чисел с плавающей запятой без потери точности. Чтобы добиться этого, мы представили сумму c=a+b в виде двух чисел (s,t)=a+b, причём таких, что s — наиболее близкое к a+b точно-представимое ...

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

Как использовать объектное S3-хранилище Mail.ru Cloud Solutions для хранения бэкапов Veeam LogiMap ASRS Unit by Vidom Veeam Backup & Replication — коммерческая платформа для резервного копирования и управления данными облачной, виртуальной и физической среды. Она поддерживает разные сценарии хранения данных, в том числе использование S3-совместимых объектных ...

Сериализация в JSON и иммутабельный объект. О пакете built_value для Flutter Иногда JSON от API необходимо конвертировать в объект и желательно в иммутабельное значение. На Dart это возможно, но для этого необходимо много кодить для каждого из объектов. К счастью, существует пакет, который поможет Вам все это выполнить, и в этой статье я Вам расска...

Библиотека ASE для атомных симуляций: создаем наночастицы Библиотека ASE Библиотека ASE — это python-библиотека для проведения атомных манипуляций и вычислений. В данной статье мы будем создавать наночастицы с помощью этой библиотеки. Установка Устанавливается ASE стандартно через pip: pip install ase. Читать дальше →

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

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

Использование Obj библиотек в KolibriOS в языках высокого уровня Вступление В KolibriOS системные библиотеки имеют формат MS COFF и расширение Obj. В этой статье будет рассказано как их импортировать и использовать в C--, GCC и TinyC. Читать дальше →

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

Дружим STM32 с LCD дисплеем 1604 по I2C шине (библиотека HAL) Привет, Хабр! В этой статье я хотел бы рассказать о своем опыте подключения LCD дисплеев к микроконтроллеру STM32 с использованием библиотеки HAL по I2C шине. Подключать буду дисплей 1602 и 2004. Они оба имеют припаянный I2C адаптер на основе чипа PCF8574T. Отладочной пл...

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

Проект Openwifi — как выглядит открытый Wi-Fi-чип Речь идет о первой свободной распространяемой реализации Wi-Fi 802.11a/g/n на базе программно-определяемой радиосистемы SDR (software-defined radio). Поговорим об этом проекте. Читать дальше →

ООП в языке R (часть 2): R6 классы В прошлой публикации мы разобрали S3 классы, которые являются наиболее популярными в языке R. Теперь разберёмся с R6 классами, которые максимально приближённые к классическому объектно ориентированному программированию. Читать дальше →

PyDERASN: как я добавил big-data поддержку Продолжаю прошлую статью о PyDERASN — свободном ASN.1 DER/CER/BER кодеке на Python. За прошедший год, с момента её написания, кроме всяких мелочей, небольших исправлений, ещё более строгой проверки данных (хотя и прежде он был уже самым строгим из известных мне свободных код...

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

Простое создание Kubernetes-операторов с shell-operator: прогресс проекта за год Kubernetes-операторы — удобный механизм для расширения возможностей этой контейнерной платформы, по праву снискавший широкое признание в среде инженеров эксплуатации и им сочувствующих. О том, как они устроены и работают, мы рассказывали в уже далёком 2017-м. А в апреле пр...

Пилотный проект по обработке высокоплотных сейсмических данных с использованием сервиса MCS Компания ООО НПЦ «Геостра» с помощью сервиса MCS провела камеральную обработку сейсмической информации — 40 Тб высокоплотной съёмки МОГТ-3D. О реализации, нюансах и результатах проекта будет рассказано в данной статье. Читать дальше →

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

Jupyter для .NET. «Как в питоне» Несколько месяцев назад Microsoft рассказали о Jupyter в .NET. Но активности по этому топику очень мало, а ведь тема очень интересная. Но что такое прикольное придумать? Я решил сделать удобный вывод класса Entity из библиотеки символьной алгебры: Выглядит круче, чем в пи...

Опыт сопряжения Java, JavaScript, Ruby и Python в одном проекте посредством GraalVM В прошлом месяце вышла стабильная LTS-версия многоязычной среды выполнения GraalVM 20.3.0 от корпорации Oracle и мне захотелось испробовать её для решения какой-нибудь интересной практической задачи. Для тех кто не в курсе, приведу краткое описание этой новой платформы. Graa...

Владимир Ефимов: компания «Исткомпис Рус» — новый резидент особой экономической зоны «Технополис «Москва» Масштабное производство сим-карт будет создано на территории столичной ОЭЗ «Технополис «Москва». По словам заместителя столичного градоначальника по вопросам экономической политики и имущественно-земельных отношений Владимира Ефимова, реализацией проекта (он оценивается в 12...

Android-разработчикам: как сократить время реализации тёмной темы с пары месяцев до недели Привет, меня зовут Влад Шипугин, я Android-разработчик в Redmadrobot. В этой статье я хочу поделится опытом реализации темной темы, создания удобного UI Kit, как для разработки, так и для дизайнеров. Я расскажу про использование Material Components и работу с Vector Drawable...

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

Tesseract OCR tips — создание своего словаря для повышения эффективности OCR Это мой первый пост об оптическом распознавании текста (OCR) с использованием Tesseract. Tesserast это очень популярная open source библиотека для OCR поддерживаемая Google, которая дает высокие результаты точности и поддерживает более 100 языков. В этом посте я расскажу как...

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

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

Как мы пришли к реактивному связыванию в Unity3D Сегодня я расскажу о том, как некоторые проекты в Pixonic пришли к тому, что для всего мирового фронтэнда уже давно стало нормой, — к реактивному связыванию. Подавляющее большинство наших проектов пишется на Unity 3D. И, если у других клиентских технологий с реактивщиной ...

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

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

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

PostgresKit: работа с PostgreSQL PostgresKit — это клиентская библиотека PostgreSQL, построенная на основе SQLKit. Поддерживает создание и сериализацию SQL-запросов на диалекте Postgres. PostgresKit использует PostgresNIO для асинхронного подключения и связи с сервером базы данных. AsyncKit использует...

STM32 fast start. Часть 2 Hello World на HAL, отладка в Atollic TrueSTUDIO В прошлый раз мы осваивали создание нового проекта при помощи STM CubeMX первую часть можно найти здесь. Для тех, кому лень перечитывать — закончилось все тем, что пустой проект успешно собрался. В данной части напишем простейший пример Hello World на HAL, посмотрим как ...

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

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

Видеоигру впервые признали полноценным лекарством Издание Businesswire рассказало о том, что видеоигру впервые признали полноценным лекарством. Речь идет о проекте EndeavorRX от Akili Interactive, которую вполне легально может назначаться в США врачом в качестве лекарственного препарата.

Онбординг разработчиков «Я прихожу на работу, мне дают ноутбук, показывают рабочее место, выдают задачу, а дальше сиди и делай сам. Спустя пару месяцев я должен знать всё о компании, но, на самом деле, я помню только сделанные задачи. Кому задавать вопросы? А можно подойти к директору? Где туалет?»...

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

Представляем Kubernetes CCM (Cloud Controller Manager) для Яндекс.Облака В продолжение к недавнему релизу CSI-драйвера для Яндекс.Облака мы публикуем ещё один Open Source-проект для этого облака — Cloud Controller Manager. CCM необходим не только для кластера в целом, но и собственно CSI-драйвера. Подробности о его предназначении и некоторые ос...

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

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

OpenID Connect: авторизация внутренних приложений от самописных к стандарту Несколько месяцев назад я занимался реализацией OpenID Connect сервера для управления доступом сотен наших внутренних приложений. От собственных наработок, удобных на меньших масштабах, мы перешли к общепринятому стандарту. Доступ через центральный сервис значительно упрощае...

Подготовка SDL2-проекта для запуска на android Всем привет. Сегодня мы посмотрим как подготовить проект с использованием библиотеки sdl2 для запуска игры на android. Читать дальше →

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

[Из песочницы] Как сделать заказной веб- или mobile-проект с нуля: процессы, правила и немного крови В интернете и книгах полным-полно best practices, которые освещают те или иные моменты в работе над ИТ-проектом. Однако best practices не позволяют увидеть всю картинку, на которой был бы виден весь путь реализации проекта с нуля. Мне не удалось найти такой «мануал», котор...

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

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

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

RESTinio-0.6.13: последний большой релиз RESTinio в 2020 и, вероятно, последний в ветке 0.6 RESTinio — это относительно небольшая C++14 библиотека для внедрения HTTP/WebSocket сервера в C++ приложения. Мы старались сделать RESTinio простой в использовании, с высокой степенью кастомизации, с приличной производительностью. И, вроде бы, пока что это получается. Ранее...

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

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

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

[Из песочницы] JavaScript библиотека Webix глазами новичка Я начинающий JS front-end разработчик. Сейчас я учусь и стажируюсь в одной минской IT компании. Изучение основ web-ui проходит на примере JS библиотеки Webix и я хочу поделиться своим первым опытом и оформить, своего рода учебное пособие по освоению этой элегантной и мощно...

Starlink: скорость спутникового интернета, цена в месяц и другие важные подробности Уже не первый год космическая компания SpaceX под руководством Илона Маска активно работает над реализацией проекта под названием Starlink, предполагает который создание быстрого мобильного интернета, который считается спутниковым, так как предоставление доступа к глобально...

[Из песочницы] Опыт эксплуатации CEPH Когда данных становится больше, чем влезает на один диск, самое время задуматься о RAID. В детстве часто слышал от старших: «однажды RAID уйдут в прошлое, объектные хранилища заполонят мир, а ты даже не знаешь, что такое CEPH»,- поэтому первым делом в самостоятельной жизни с...

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

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

Павел Дуров объявил о закрытии своего блокчейн-проекта <p><strong>12 мая 2020 года в своем официальном блоге Павел Дуров сообщил о закрытии блокчейн-проекта TON с криптовалютой Gram. </strong></p><p>Как сообщил Дуров, данный проект закрывается по решению суда ...

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

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

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

Самодельный лидар: OpenTOFLidar В этой статье я хочу рассказать про свой проект импульсного (TOF) Open Source лидара — о том как я его делал, и каких результатов удалось добиться. Читать дальше →

[Из песочницы] Flutter. BlOC, Provider, async – архитектура «по полочкам» Вступление Когда пытаешься написать приложение, то первое с чем сталкиваешься – это как организовать архитектуру приложения. А когда еще при этом речь идет про Flutter, так голова совсем может пойти кругом от того, что выдает Гугл — Vanilla, Scoped Model, BLoC, MVP, MVC, MVV...

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

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

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

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

«Синимекс» участвовала в реализации проекта в банке «Открытие» Компания «Синимекс» в течение 2019 года принимала участие в масштабном проекте по созданию Единого Фронтального Решения (ЕФР) в банке «Открытие»...

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

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

Linux Kernel Library: ядро Linux в форм-факторе so или dll Когда-то читал статью о выборе файловых систем «чтоб везде-везде работало». В ней в очередной раз увидел жалобы, что Ext4 замечательная файловая система, но на Windows есть только кривые неточные проприетарные драйверы. Но отмотаем ленту ещё на пару лет назад: тогда на Хабре...

В результате взлома разработчика онлайн-игр Zynga были украдены учётные записи 170 млн пользователей По данным сервиса Have I been pwned, который позволяет проверить, были ли ваши данные скомпрометированы в результате утечки, недавний взлом Zynga затронул 170 млн пользователей. На текущий момент компания занимает 10-ю позицию среди «жертв» самых масштабных атак, в результат...

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

[Перевод] Мейнтейнер популярнейшей JS-библиотеки приговорен к тюремному заключению за смертельное ДТП по его вине Мы в TestMace активно следим за судьбой проектов, значимых для js сообщества, в частности core-js. И, по нашему мнению, резонансное событие, описанное в статье, не получило должного освещения на хабре. Что ж, мы решили исправить это дело и публикуем перевод статьи, кратко пе...

Новая библиотека для уменьшения размерности данных ITMO_FS — зачем она нужна и как устроена Студенты и сотрудники лаборатории Машинного обучения Университета ИТМО разработали библиотеку для Python, которая решает ключевую задачу машинного обучения. Расскажем, почему появился этот инструмент и что он умеет. Читать дальше →

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

Внедрение Multicast VPN на Cisco IOS (часть 5 — знакомство с Data/Partitioned MDT) В предыдущих выпусках: Profile 0 Profile 1 Profile 3 Profile 11 Как мы узнали из прошлых записей, в опорной сети при реализации mVPN всегда присутствует конструкция Default MDT, к которой подключены все РЕ маршрутизаторы. В рамках данного MDT передаются служебные сообщен...

Масштабируем WebSocket соединения на Go Мессенджер Авито – это: 12 m уникальных пользователей в месяц; Версии для всех современных платформ (Web, iOS, Android); Достаточно нагруженное приложение – около 800 тысяч подключений онлайн по WebSocket (основной протокол общения с пользователями). Александр Емелин из ко...

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

VKWave — фреймворк для разработки ботов ВКонтакте Привет, Хабр! Сегодня я хочу рассказать о замечательной библиотеке для разработке ботов ВКонтакте с помощью языка программирования Python. VKWave VKWave — это фреймворк для разработки ботов ВКонтакте, написанный с помощью asyncio. Основные цели проекта — дать возможность ра...

Техновыпуск Mail.ru, зима 2019 Недавно прошла очередная, зимняя защита выпускников трёх наших технопроктов — Технопарка (МГТУ им. Баумана), Техносферы (МГУ им. Ломоносова) и Технотрека (МФТИ). Команды представили как реализации своих собственных идей, так и решения настоящих бизнес-задач, предложенных р...

Проверка коллекции header-only C++ библиотек (awesome-hpp) Волею судьбы мы проверили большинство библиотек, входящих в коллекцию под названием "Awesome hpp". Это небольшие проекты на языке C++, состоящие только из заголовочных файлов. Надеемся, найденные ошибки помогут сделать эти библиотеки немного лучше. Также мы будем ...

[Из песочницы] STM32 + CMSIS + STM32CubeIDE Здесь я расскажу как создать минимальный проект на CMSIS с использованием «родной» IDE для микроконтроллеров STM – STM32CubeIDE. Возможно STM32CubeIDE и обладает рядом недостатков, но у нее, на мой взгляд, есть несколько преимуществ – таких как проприетарность и бесплатнос...

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

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

AMD раскроет важные подробности о новых видеокартах Radeon RX 6000 в ближайшие три недели Новые видеокарты Radeon RX 6000, похоже, более производительны, чем утверждает сама AMD Во время анонса новых видеокарт Radeon RX 6000 компания AMD практически не затронула вопрос трассировки лучей.  На данный момент мы знаем, что за аппаратное ускорение...

[Перевод] Расширьте возможности машинного обучения Azure с помощью расширения VS Code Привет сообществу Python! Прошло много времени с тех пор, как мы последний раз писали об этом, но мы рады представить новые возможности, добавленные в расширение VS Code Azure Machine Learning (AML). Начиная с версии 0.6.12, мы представили изменения в пользовательском интерф...

Сим-сим, откройся! — Как мы запустили проект «Открытые данные» Всем привет! Меня зовут Сергей Фолимонов, в ДомКлик я отвечаю за direct marketing и коммуникации с клиентами. С недавних пор я выступаю еще в роли PO проекта «Открытые данные», и хочу рассказать об истории создания этого продукта, сделав акцент на проблемах, с которыми нам ...

[Из песочницы] Руководство по CI/CD в GitLab для (почти) абсолютного новичка Или как обзавестись красивыми бейджиками для своего проекта за один вечер ненапряжного кодинга Наверное, у каждого разработчика, имеющего хотя бы один пет-проект, в определённый момент возникает зуд на тему красивых бейджиков со статусами, покрытием кода, версиями пакетов в ...

[Перевод] Кибердека ZBS После того, как я насмотрелся на посты про кибердеки на Hackaday, я решил переделать в кибердеку один из моих старых проектов похожей направленности, в котором использовалась плата Raspberry Pi. На тот момент разработка кибердеки должна была стать моим самым масштабным экспе...

[Из песочницы] MVP для Android — преимущества использования Moxy в качестве вспомогательной библиотеки В данной статье описываются преимущества использования Moxy в качестве вспомогательной библиотеки при использовании MVP для Android-приложения. Важно: здесь не сравнивается MVP с другими архитектурными подходами типа MVVM, MVI и т.п. В статье описывается почему, если в качес...

[Из песочницы] Сборка очень компактного планшетного ПК на базе Core i7 Привет, Хабр! Хочу рассказать о своем порядком затянувшемся пет-проекте по сборке самодельного достаточно мощного планшетного ПК. Процесс еще не завершен, текущее состояние можно назвать «работающим прототипом». Но некоторые предварительные результаты достигнуты, и я хочу по...

[Перевод] Проблемы рейтрейсинга в играх нового поколения: анализ трассировки лучей в ремастере Marvel's Spider-Man По мере приближения запуска нового поколения консолей Insomniac Games начала публиковать больше материалов, раскрывающих подробности о Marvel’s Spider-Man и Marvel's Spider-Man: Miles Morales. Оба проекта задействуют технологию трассировки лучей. На взгляд Алекса Баттальи ...

[Из песочницы] Большой туториал по обработке спортивных данных на python Последние пару лет в свободное время занимаюсь триатлоном. Этот вид спорта очень популярен во многих странах мира, в особенности в США, Австралии и Европе. В настоящее время набирает стремительную популярность в России и странах СНГ. Речь идет о вовлечении любителей, не пр...

Разработка круговых интерфейсов. Часть 2. Перенос библиотеки с JavaScript на QML Оглавление Введение Библиотека круговых интерфейсов v2.0 Круговая CAPTCHA Перенос библиотеки с JavaScript на QML Демонстрационное мобильное приложение Заключение Введение Предыдущая статья была вводной к вопросу разработки круговых интерфейсов. В ней рассмотрены определение,...

Pipes & Filters. Пример применения и реализации при помощи Spring В данной статье речь пойдёт о применении паттерна Pipes & Filters. Для начала мы разберём пример функции, которую позже перепишем с помощью выше упомянутого паттерна. Изменения в коде будут происходить постепенно и каждый раз мы будем создавать работоспособный вариант, п...

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

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

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

Kivy. Сборка пакетов под Android и никакой магии Во вчерашней статье Python в Mobile development, в которой речь шла о библиотеке KivyMD (коллекции виджетов в стиле Material Design для использования их в кроссплатформенном фреймворке Kivy), в комментариях меня попросили рассказать о процессе сборки пакета для платформы A...

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

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

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

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

Разворачивание Minecraft сервера под linux В моей прошлой статье я рассказывал, как быстро развернуть свой Minecraft сервер из образа под Windows. И очень многие, справедливо заметили, что Windows не очень годится для разворачивания такого типа сервера. А PowerShell через RDP — это какое-то ненормальное извращение....

В феврале украинцы приобрели 663 электромобиля из которых только 29 были новыми, Топ-3 составили Nissan Leaf и Tesla Model S/3 Ассоциация «Укравтопром» рассказала о результатах продаж электромобилей в Украине за второй месяц текущего года. В феврале украинцы приобрели и поставили на учет 663 электромобиля, из которых только 29 штук были новыми. Основную массу зарегистрированных в прошлом месяце элек...

Активисты построили в Minecraft свободную «Библиотеку без цензуры» Студия BlockWorks, коллектив художников и дизайнеров, построила в игре Minecraft глобальную цифровую библиотеку «The Uncensored Library»(Библиотека без цензуры). Ее открытие состоялось 12 марта, во Всемирный день борьбы с киберцензурой, и это не просто масштабный игровой объ...

Wi-Fi радио с VFD-дисплеем Это самая долгосрочная поделка в моей жизни. От идеи до конечной реализации, так чтобы ей можно было пользоваться, прошло 12 лет! За это время произошло колоссальное количество событий: переезды, рождения, смерти, но идея была со мной и ни смотря ни на что, я её доделал. И ...

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

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

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

(Не)очередной MQTT телеграм бот для IoT Всем привет! Сегодня хочу поделиться опытом разработки универсального телеграм бота для получения информации и управления IoT устройствами посредством протокола MQTT. Почему (не)очередной? Потому что это не просто бот с двумя захардкоженными кнопками для управление лампочк...

Remedy Entertainment: продажи Control, информация о Vanguard и неанонсированных играх Издание Gamesindustry.biz со ссылкой на Remedy Entertainment поделилось некоторой информацией о Control и проекте под кодовым названием Vanguard. А параллельно инсайдер Nibel рассказал об игре, которую финская студия создаёт в сотрудничестве с Epic Games, и телевизионной ада...

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

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

[Перевод] Реализация epoll, часть 4 Это — последний материал из серии четырёх статей (часть 1, часть 2, часть 3), посвящённой реализации epoll. Тут речь пойдёт о том, как epoll передаёт события из пространства ядра в пользовательское пространство, и о том, как реализованы режимы срабатывания по фронту и по уро...

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

Network-as-a-Service для крупного предприятия: нестандартный кейс Как обновить сетевое оборудование на крупном предприятии без остановки производства? О масштабном проекте в режиме «операции на открытом сердце» рассказывает менеджер по управлению проектами Linxdatacenter Олег Федоров.  Читать дальше →

Моё знакомство с AppGallery: как я воспользовался возможностями Huawei и нашёл точку роста для своего проекта Привет, Хабр! Меня зовут Георгий, я менеджер проектов и гейм-дизайнер в компании Azur Games. Мир мобильных игр — это очень конкурентная среда: здесь важно регулярно включаться в освоение новых инструментов, чтобы продолжать наращивать свою аудиторию. Наша команда отслежива...

Jinja2 в мире C++, часть третья. «Теперь ты в конане» С момента публикации предыдущей части прошло больше полутора лет, была реализована большая куча фичей, сделано несколько релизов, но не об этом пойдёт речь. Пару дней назад в жизни библиотеки произошло важное событие: она была добавлена в основной репозиторий conan'а (conan...

[Из песочницы] OData + RxJava + Retrofit 2 для android приложения Столкнулся на проекте с проблемой доселе не виданной. Пришлось покурить документацию и в этой статье я расскажу как с помощью RxJava и Retrofit 2 — можно решить задачу по созданию клиента Odata для android приложения. Спасибо огромное Jake Wharton за создание таких комфортн...

HighLoad++, Анастасия Цымбалюк, Станислав Целовальников (Сбербанк): как мы стали MDA Следующая конференция HighLoad++ пройдет 6 и 7 апреля 2020 года в Санкт-Петербурге Подробности и билеты по ссылке. HighLoad++ Siberia 2019. Зал «Красноярск». 25 июня, 14:00. Тезисы и презентация. Разработать промышленную систему управления и распространения данных с нуля — ...

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

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

Жуки, бабочки, цикады и прочие. Google пополнила библиотеку AR-поиска более чем двумя десятками разных насекомых Google продолжает активно наполнять библиотеку 3D-объектов, с которыми можно взаимодействовать в дополненной реальности прямо из результатов поиска. Google объявила о внедрении поддержки дополненной реальности в рамках расширения функциональности панели Knowledge Panel в 201...

Bitdefender открыла код технологии интроспекции гипервизора HVI Компания Bitdefender объявила об открытии кода своей технологии интроспекции гипервизора (Hypervisor Introspection, HVI). Она была разработана совместно с проектом Xen. История проекта началась в 2015 году, тогда для гипервизора 4.6 была представлена библиотека libbdvmi...

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

Ищете бесплатные альтернативы cPanel? Держите сразу 7 Приветствую вас, уважаемые читатели и почитатели Хабра! В этой статье я расскажу вам о 7 популярных альтернативах cPanel. Вы узнаете: Почему бесплатные панели управления web-сервером нередко оказываются лучше, чем платные аналоги Какие возможности готовы предложить Вам...

Компьютерное зрение. Свой алгоритм или решение из «коробки»? Меня зовут Александра Царева. Я и мои коллеги работаем над проектами в сфере компьютерного зрения в Центре машинного обучения компании «Инфосистемы Джет». Мне хочется поделиться нашим опытом разработки и внедрения проектов в сфере компьютерного зрения. Сегодня речь пойдет ...

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

[Перевод] MVC в Unity со Scriptable Objects. Часть 3 Завершение цикла статей от Cem Ugur Karacam о реализации MVC в Unity с помощью Scriptable Objects. Прочитать предыдущие части вы можете здесь и здесь. Читать дальше →

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

Бинарная совместимость Reaktive: как мы её обеспечиваем Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. Любая библиотека должна по возможности соблюдать бинарную совместимость. Если разные версии библиотеки в зависимостя...

[Из песочницы] Краткий обзор системы Apache NlpCraft В данной статье я бы хотел познакомить читателей с одним из проектов Apache Software Foundation сообщества — NlpCraft. NlpCraft — библиотека с открытым исходным кодом, предназначенная для интеграции языкового интерфейса в пользовательские приложения. Цель проекта — тотальн...

Хакеры SolarWinds размазали свои байты в HTTP-трафике через регулярные выражения Валидная цифровая подпись на DLL со встроенным бэкдором Практически по всем профильным СМИ прошла новость о взломе программного обеспечения SolarWinds в рамках глобальной кампании кибершпионажа. Здесь нужно понимать масштаб атаки: этот софт для мониторинга IT-инфраструктур...

2-х факторная аутентификация пользователей VPN посредством MikroTik и SMS Здравствуйте коллеги! Сегодня, когда накал страстей вокруг «удалёнки» немного спал, большинство админов победило задачу удаленного доступа сотрудников к корпоративной сети, пришло время поделиться моей давней наработкой по повышению безопасности VPN. В этой статье не будет м...

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

В большинстве случаев сериализация в Андроиде не нужна TL;DR: В большинстве приложений имеет смысл принять явное осознанное архитектурное решение, что в случае смерти процесса приложение просто перезапускается с нуля, не пытаясь восстанавливать состояние. И в этом случае Serializable, Parcelable и прочие Bundle не нужны. Читать ...

Twitter Text: парсинг текста Twitter Text — Swift-реализация библиотеки синтаксического анализа текста твитов. В библиотеке есть методы для анализа текста и вычисления длины, валидности, синтаксического анализа @mentions, #hashtags, URL-адресов и т.д. Исходники: https://github.com/nysander/twitter...

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

Вышел Wine 5.0 21 января 2020 года состоялся официальный релиз стабильной версии Wine 5.0 — свободного инструмента для запуска нативных Windows-программ в UNIX-среде. Это альтернативная, свободная реализация Windows API. Рекурсивный акроним WINE означает "Wine Is Not an Emulator"...

Как синтез речи появился на ПК В прошлый раз мы рассказали о цифровых синтезаторах речи и вспомнили, как в 1974 году Дональд Шерман (Donald Sherman), страдающий от паралича мышц лица, впервые использовал компьютер с системой Text-to-Speech, чтобы заказать пиццу по телефону. Тогда синтезатор работал на мей...

[Перевод] Продвинутый уровень визуализации данных для Data Science на Python Как сделать крутые, полностью интерактивные графики с помощью одной строки Python Когнитивное искажение о невозвратных затратах (sunk cost fallacy) является одним из многих вредных когнитивных предубеждений, жертвой которых становятся люди. Это относится к нашей тенденции...

Учимся разворачивать микросервисы. Часть 3. Helm Привет, Хабр! Это третья часть в серии статей "Учимся разворачивать микросервисы", и сегодня речь пойдет о Helm 3. В прошлой части мы создали Kubernetes конфигурацию для учебного проекта из 2 микросервисов (бекенда и шлюза) и задеплоили все это в Google Kubernetes...

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

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

Web Cryptography API: пример использования Доброго времени суток, друзья! В этом туториале мы рассмотрим Web Cryptography API: интерфейс шифрования данных на стороне клиента. Данный туториал основан на этой статье. Предполагается, что вы немного знакомы с шифрованием. Что конкретно мы будем делать? Мы напишем прос...

ViennaNET: набор библиотек для backend’а Всем привет! Мы сообщество .NET-разработчиков Райффайзенбанка и мы хотим рассказать про набор инфраструктурных библиотек на .NET Core для быстрого создания микросервисов с единой экосистемой. Вывели его в Open Source! Читать дальше →

[Перевод] Напишем и поймем Decision Tree на Python с нуля! Часть 3. Библиотека для анализа данных Pandas Привет, Хабр! Представляю вашему вниманию перевод статьи "Pythonで0からディシジョンツリーを作って理解する (3. データ分析ライブラリPandas編)". Это третья статья из серии. Ссылки на предыдущие статьи: первая, вторая В данной статье я объясню, как работать с библиотекой Pandas, чтобы создавать De...

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

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

[Перевод] Оптимизация времени сборки проекта Там, где я работаю (в стартапе Spot.IM, размер которого находится где-то между малым и средним), Webpack используется для сборки различных проектов. После 4 лет работы над нашим основным продуктом, когда в его код внесло вклад столько народа, что и не сосчитать, время его пе...

Softline защитила администрацию Ставрополя от киберугроз Для реализации масштабного проекта были выбраны решения, разработанные компаниями «ИнфоТеКС» и «Код Безопасности».

[Из песочницы] Создание браузерных 3d-игр с нуля на чистом html, css и js. Часть 1/2 Современная вычислительная техника позволяет создавать классные компьютерные игры! И сейчас, достаточно популярны игры с 3d-графикой, так как, играя в них, ты окунаешься в вымышленный мир и теряешь всякую связь с реальностью. Развитие интернета и браузерных технологий сделал...

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

Строим безопасную разработку в ритейлере. Часть 2, SAP-приложения Недавно мы начали рассказывать вам о своём опыте выстраивания процесса безопасной разработки для крупного ритейлера. Если вы вдруг пропустили этот момент, то можете прочитать первую часть о безопасной разработке порталов и мобильных приложений здесь. А сегодня мы раскроем по...

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

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

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

Статический анализ кода коллекции библиотек PMDK от Intel и ошибки, которые не ошибки Нам предложили проверить с помощью анализатора PVS-Studio коллекцию открытых библиотек PMDK, предназначенную для разработки и отладки приложений с поддержкой энергонезависимой памяти. Собственно, почему бы и нет. Тем более это небольшой проект на языке C и C++ с общим разме...

Как мы автоматизировали портирование продуктов с C# на C++ Привет, Хабр. В этом посте я расскажу о том, как нам удалось организовать ежемесячный выпуск библиотек для языка C++, исходный код которых разрабатывается на C#. Речь идёт не об управляемом C++ и даже не о создании моста между неуправляемым C++ и средой CLR — речь об автомат...

PVS-Studio впечатлен качеством кода Abbyy NeoML На днях компания ABBYY опубликовала исходный код своего фреймворка NeoML. Нам предложили проверить эту библиотеку с помощью PVS-Studio. Это интересный проект с точки зрения анализа, так что мы не стали откладывать его в долгий ящик. Чтение этой статьи не займет у вас много ...

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

ВКонтакте снова выкладывает KPHP Привет! Сейчас будет дежавю. Мы снова выложили на GitHub наш PHP-компилятор — KPHP. Он проделал большой путь, и чтобы рассказать о нём, сначала телепортируемся на шесть лет назад. Поясню для тех, кто не в теме: платформа ВКонтакте изначально была написана на PHP. Со времене...

Более 400 сайтов попали в список бесплатных для доступа из России Вот уже как несколько месяцев чиновники из Минкомсвязи РФ занимаются реализацией проекта «Доступный интернет», который пообещал всем россиянам президент РФ Владимир Путин еще в начале 2020 года. Данный проект предполагает, что все россияне, вне зависимости Сообщение Более 4...

SPM: модуляризация проекта для увеличения скорости сборки Привет, Хабр! Меня зовут Эрик Басаргин, я iOS-разработчик в Surf. На одном большом проекте мы столкнулись с низкой скоростью сборки — от трёх минут и более. Обычно в таких случаях студии практикуют модуляризацию проектов, чтобы не работать с огромными монолитами. Мы в Surf ...

Органы власти Омской области переходят на ОС Astra Linux В Омской области стартовал проект перевода IT-инфраструктур региональных органов исполнительной власти и местного самоуправления на операционные системы семейства Astra Linux. В среде российской ОС на базе СЭД Directum RX планируется выстроить высокопроизводительную с...

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

First DI: Первый DI на интерфейсах для Typescript приложений Делюсь одной из своих библиотек которая называется First DI. Она уже много лет помогает мне решить проблему внедрения зависимостей в браузерных приложениях для таких библиотек как React, Preact, Mithril и другие. При написании First DI за основу была взята идеология DI библи...

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

[Перевод] Анализ скорости распространения COVID-19 и публикация результатов на dstack.ai Предисловие переводчика Всем привет, давно ничего не писал на Хабр, но тут появился повод. Я довольно много лет проработал в области анализа данных и самая важная вещь, которую я понял за это время — в анализе данных очень не хватает инструментов, самых разных инструментов...

Открытый курс «Deep Learning in NLP» от создателей DeepPavlov на базе курса cs224n Всем привет! Вступление Меня зовут Алексей Клоков, я хочу рассказать о запуске классного курса по обработке естественного языка (Natural Language Processing), который очередной раз запускают физтехи из проекта DeepPavlov – открытой библиотеки для разговорного искусственного ...

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

Fortinet Security Fabric на практике. Часть 5. Администрирование и автоматизация Добрый день, друзья! В прошлый раз мы провели взаимную интеграцию основных продуктов фабрики безопасности. Пришло время заключительной статьи цикла Fortinet Security Fabric. В ней мы закончим создание нашей “мини-сети”, о которой велась речь ранее. Мы дадим пользователям дос...

Максим Дубинин: «В OpenStreetMap нужно заниматься тем, что тебе важно, а не пытаться «спасти» проект в целом» Максим Дубинин — основатель проекта GIS-Lab и директор компании NextGIS, которая разрабатывает одноименный продукт. Наверное, его имя известно в России почти любому, кто связан с темой ГИС. Кто использует данные OSM, какого они качества и почему их не ценят — обо всем этом ...

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

PVS-Studio теперь в Compiler Explorer Совсем недавно произошло знаменательное событие: PVS-Studio появился в Compiler Explorer! Теперь вы можете быстро и легко проанализировать код на наличие ошибок прямо на сайте godbolt.org (Compiler Explorer). Это нововведение открывает большое количество новых возможностей ...

[Перевод] Импорт react с древнейших времен до наших дней Прежде чем мы начнём разговор о способах импорта в веб-проекты библиотеки React, покажу современные способы выполнения этой операции и использования хука useState: // Глобальный подход window.React.useState() // Использование импорта в стиле CommonJS const React = require...

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

[Из песочницы] Установка и настройка RTKRCV (RTKLIB) на Windows 10 с использованием WSL Здравствуйте, в данной статье разбирается процесс установки и запуска приложения RTKRCV из открытой библиотеки RTKLIB, разрабатываемой командой Томоджи Такасу (Япония). RTKLIB — это программный пакет с открытым исходным кодом для стандартного и точного позиционирования с и...

[Перевод] Компьютерное зрение на WebRTC-сервере с аппаратным ускорением от Intel OWT WebRTC упростил (в большинстве своем) получение и отправку видеопотоков в реальном времени. А значит, можно немного поразвлекаться с ними при помощи машинного обучения. В прошлом месяце я показал, как запустить компьютерное зрение (Computer Vision – CV) локально в браузере....

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

[Перевод] 14 open-source проектов для прокачки Data Science мастерства (easy, normal, hard) Data Science для начинающих 1. Sentiment Analysis (Анализ настроений через текст) Посмотрите полную реализацию проекта Data Science с использованием исходного кода — Sentiment Analysis Project в R. Sentiment Analysis — это анализ слов для определения настроений и мнений...

Лучшая медицинская страховка — думать головой. Идея приложения Хочу рассказать о проекте приложения, которое я начинал разрабатывать, когда еще работал начальником IT-отдела в одной из ЦРБ в РФ. Рассказываю с целью поделиться опытом, и, возможно, подтолкнуть кого-то к идее реализации интересного продукта. Рассказываю максимально не с...

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

Продвинутая система авторизации действий с ресурсами в Laravel. Часть 2. Шлюзы, Политики Введение Здравствуйте дорогие Хабровчане. Я продолжаю свой цикл статей о продвинутой авторизации действий с ресурсами в Laravel. Чтобы лучше понимать о чем пойдет речь этой статье — необходимо прочесть Первую часть. Для начала вкратце повторю постановку задачи: Имеется бол...

Как устроены абилки в War Robots Привет! Меня зовут Владимир Попов, и я клиентский разработчик на проекте War Robots. War Robots существует уже несколько лет: за это время в игре появились десятки новых мехов. И, конечно, ни один из них не был бы уникальным без собственного набора способностей. О том, ...

Как мы провели международную онлайн-конференцию для 1000 человек Полгода назад мы писали о том, как перенести все внутренние коммуникации в компании в виртуальное пространство. Но тогда мы еще не знали, что всего за пару месяцев нам предстоит подготовить международную онлайн-конференцию — Innovation Day 2020. Как впервые сделать масштабно...

Интервью с Сергеем Жуком — автором книг и скринкастов по ReactPHP Мир IT полон интересных людей, что стало причиной создание проекта MoreView где я беру интервью у разных людей и познаю IT. Я достаточно давно связал свою жизнь с PHP и уже брал интервью у разработчика фреймворка Yii. Чуть более 7 лет назад в мир ворвался асинхронный PHP с б...

Open source: CI/CD и тестовая инфраструктура Авито для Android Мы вынесли в open source инфраструктуру Авито для Android: Gradle плагины, эмуляторы и библиотеки для тестов. Наш код будет полезен при автоматизации CI/CD, а также облегчит написание и поддержку автотестов. В этой обзорной статье мы расскажем, по...

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

CRDT, RON и Сети Данных Эта статья о следующем эволюционном шаге в развитии систем обработки данных. Тема амбициозная, поэтому расскажу сначала немного о себе. Вот уже больше 10 лет я работаю над проектами в области CRDT и синхронизации данных. За это время успел поработать на университеты, стар...

Более 400 сайтов попали в список бесплатных для доступна из России Вот уже как несколько месяцев чиновники из Минкомсвязи РФ занимаются реализацией проекта «Доступный интернет», который пообещал всем россиянам президент РФ Владимир Путин еще в начале 2020 года. Данный проект предполагает, что все россияне, вне зависимости Сообщение Более 4...

Первое исследование состояния DevOps в России В 2019 году компания DORA и и Google Cloud выпустили совместный отчет The 2019 Accelerate State of DevOps: Elite performance, productivity, and scaling, из которого мы знаем, как в мире обстоят дела с DevOps. Это часть большого исследования DevOps, которым DORA занимается с ...

Беспроводной DIY монитор влажности почвы Приветствую всех читателей Хабра! Сегодня хочу поделится с вами моим новым проектом — беспроводным датчиком влажности почвы, который построен на основе всем известного модуля влажности почвы с алиэкспрес. Новый датчик это логическое продолжение первого моего DIY проекта на э...

[Перевод] Интересные CSS-находки в новом дизайне Facebook Я любопытен. Мне всегда интересно открывать инструменты разработчика браузера и разбираться с тем, как сделан какой-нибудь сайт, на который я заглянул. Этот материал представляет собой мой первый рассказ о таких вот изысканиях. Дело в том, что я обнаружил некоторые интересны...

Компания Hitachi Vantara названа ведущим производителем объектных хранилищ в четвертый раз подряд Более 2500 организаций по всему миру выбрали платформу Hitachi Content Platform в качестве хранилища данных для облачных систем и приложений. Компания Hitachi Vantara, дочернее предприятие Hitachi, Ltd., снова вошла в категорию лидеров по результатам оценки поставщиков объек...

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

[Перевод] Стек технологий Shiro Games Наш игровой движок Heaps.io и набор инструментов и технологий, на котором он основан, являются результатом опыта, накопленного за двадцать лет, посвященных созданию игр: сначала в компании Motion-Twin (создатели Dead Cells), а с 2012 года в Shiro Games (Evoland, Northgard и ...

Зал Трудовой Славы JavaScipt С появлением библиотек JavaScript, которые разрабатываются большими коллективами, таких как Angular, React, Vue, — безвозвратно ушли с арены гении-одиночки, которые разрабатывали всю или, по крайней мере, основную часть библиотеки самостоятельно. Предлагаю вместе вспомнить н...

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

Использование перехватов операций для бэкапа файлов в macOS “на лету” Привет, Хабр! Меня зовут Денис Копырин, и сегодня я хочу рассказать о том, как мы решали проблему бэкапа по требованию на macOS. На самом деле интересная задача, с которой я столкнулся в институте, выросла в итоге в большой проект по работе с файловой системой в macOS и стал...

Чему я научился, написав библиотеку компонентов на Svelte Попробовав Svelte в личных проектах, мне захотелось двигаться дальше, и взять фреймворк в проект побольше. Для этого написал библиотеку компонентов svelte-atoms. За основу я взял UI кит на React, который используем на работе. Каким приемам Svelte я научился, читайте под кат...

Архитектурные подходы к авторизации в серверных приложениях: Activity-Based Access Control Framework Сегодня поговорим об секьюрити в web (да, наверное, и не только) приложениях. Прежде чем описывать подходы и фреймворки расскажу небольшую предысторию. Предыстория За много лет работы в IT приходилось сталкиваться с проектами в самых разных сферах. У каждого проекта были сво...

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

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

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

Пандемийный проект на базе ИИ по автоматизированной печати фотографий Google Photos провалился В Google объявили о закрытии 30 июня собственного проекта по развитию сетевого сервиса печати фотографий Google Photos, выстроенного под управлением искусственного интеллекта без участия человека. Подробнее об этом читайте на THG.ru.

Визуализация использования GIL в CPython Интересно, как ведут себя потоки, когда борются за GIL, или немного информации отсюда только для Python3. Сразу оговорюсь, что использую Ubuntu 16.04 c ядром 4.15.0-115-generic, на машине стоит 4-х ядерный процессор Intel(R) Core(TM) i5-4200U CPU @ 1.60GHz с 4 GB RAM. Теор...

Сколько кода на C++ нужно написать для разбора HTTP-заголовка Authorization с помощью easy_parser из RESTinio? Мы продолжаем развивать бесплатный и открытый встраиваемый в С++ приложения HTTP-сервер RESTinio. В реализации RESTinio активно используются C++ные шаблоны, о чем мы здесь регулярно рассказываем (недавний пример). Одной из точек приложения C++ной шаблонной магии стал easy_p...

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

[Из песочницы] Актуальные библиотеки визуализации данных для react-разработчиков Привет, Хабр! Представляю вашему вниманию перевод статьи «Data Visualization Libraries for React Developers in 2019» автора Veronika Rovnik. Вот уже несколько лет подряд React не сдаёт позиции и входит в тройку самых любимых библиотек профессиональных разработчиков по всему...

Как я писал полудецентрализованную криптовалюту на PHP. (Часть 2 — Разработка) Предисловие В одной из прошлых статей я рассказывал какие библиотеки нам пригодятся и сравнили эту задумку с той неудачной. В этой части будем разрабатывать саму криптовалюту и настроим трекер. Не будем медлить, поехали. Читать дальше →

[Из песочницы] Материальный Python. Что нового в библиотеке KivyMD Приветствую! Не так давно уже писали о Python в Mobile development и разработке мобильных приложений на Python с помощью библиотек Kivy и KivyMD. Эта статья продолжит знакомить вас с кроссплатформенными Python инструментами, а конкретно сегодня мы рассмотрим новинки, котор...

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

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

[Из песочницы] Rust vs. State Важно: для комфортного прочтения статьи нужно уметь читать исходный код на Rust и понимать, почему оборачивать всё в Rc<RefCell<...>> — плохо. Введение Rust не принято считать объектно-ориентированным языком: в нём нет наследования реализации; инкапсуляции ...

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

Проект колонии на Марсе на 1 000 000 человек Прошлое — это локомотив, который тянет за собой будущее. Жёлтая стрела (Виктор Пелевин) Международная группа Mars Society объявила конкурс на проект самодостаточной колонии на красной планете. Главный приз — 10 000 $. Условия конкурса просты, и исходя из них я и попытался...

Quarkus: Сверхзвуковая субатомная ветклиника Это вольный пересказ моего Lightning Talk с конференции Joker 2019. С тех пор вышло несколько новых версий Quarkus, доклад приведен в соответствие с текущим положением вещей. В рамках разработки нашего фреймворка CUBA Platform, мы уделяем много внимания тому, что происходит...

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

2 SIM для дачного роутера — это много или мало? В прошлом году я проводил тесты 3G/4G роутеров для загородного дома и эта тема показалась многим интересна. После тестов я даже один роутер встроил в свой автомобиль, чтобы иметь стабильный доступ в Интернет в пути, но всё же наиболее важным мне показалась стабильность досту...

Мониторим события PortSecurity коммутаторов Cisco в Zabbix Здравствуй уважаемое хабросообщество! Решился выплеснуть в онлайн пару in-house решений, которые облегчают деятельность сетевиков и прочих ИТ братьев по разуму. В этой статье речь пойдет о мониторинге событий стандартного (для многих вендоров) механизма защиты от несанкцион...

Azure SDK for .NET: история о непростом поиске ошибок Когда мы решили поискать ошибки в проекте Azure SDK for .NET, то были приятно удивлены его размером. «Три с половиной миллиона строк кода», — приговаривали мы, изучая статистику проекта. Это сколько же там всего можно найти. Но, увы и ах. Проект оказался с секретом. Какова ...

[Перевод] Vue.js для начинающих, урок 3: условный рендеринг Продолжаем наш учебный курс по Vue, которые порекомендовала Наталья Теплухина, Staff Engineer в Gitlab и Core Team Member фреймворка Vue (Q/A сессия с Наташей прошла в нашем инстаграм, а расшифровку можно прочитать здесь) На третьем уроке речь пойдёт об условном рендеринге....

[Из песочницы] EventBus — Система событий для Unity В этой статье я расскажу вам о том, что такое система событий применительно к Unity. Изучим популярные методы и подробно разберем реализацию на интерфейсах, с которой я познакомился, работая в Owlcat Games. Читать дальше →

Как устроиться в LinkedIn, Facebook, Google в Кремниевой Долине Зачем это читать? В предыдущей статье я рассказал про реальные доходы и расходы, на которые может рассчитывать инженер, работающий в одной из Big Tech компаний. Если вдруг это вас заинтересовало, здесь будут подробности про то, как туда устроиться. Я работаю в LinkedIn, кото...

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

Мини Термометр & гигрометр с E-PAPER на nRF52 — или о том, что пока не выпустили производители Приветствую всех читателей Habr! Хочу поделится с вами своим новым опенсорс проектом. Из названия статьи понятно что речь пойдет о датчике температуры и влажности с дисплеем на электронных чернилах. Уже достаточно давно я попробовал сделать проект датчика температуры с таким...

Компания «Синимекс» приняла участие в реализации проекта в банке «Открытие» Компания «Синимекс» в течение 2019 года принимала участие в масштабном проекте по созданию Единого Фронтального Решения (ЕФР) в банке «Открытие». Благодаря компетенциям и экспертизе совместной команды, проект создания ...

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

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

[Из песочницы] NodeJS Бот для Телеграм с обработкой математических выражений Начало работы Сначала создаём каталог где будет храниться сам бот. Здесь инициализируем npm. npm init Используемые модули В разработке я буду использовать TypeScript и библиотеку SlimBot. Читать дальше →

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

Так может выглядеть Huawei Mate X2 Складной Huawei Mate X2 со стилусом и гибкой матрицей внутри   В прошлом году Huawei представила Mate X, который стал вторым по счету складным смартфоном на рынке. Но пределы Китая он так и не покинул, поэтому остается только догадываться, насколько успешным он стал. Се...

Приключенческий шутер Suicide Squad: Kill the Justice League от Rocksteady выйдет в 2022 году на ПК, Xbox X и PS5 [трейлер] После анонса в начале текущего месяца геймстудия Rocksteady опубликовала первый трейлер игры Suicide Squad: Kill the Justice League и раскрыла подробности проекта в рамках мероприятия DC FanDome. Кинематографический трейлер знакомит нас с миром игры, но не отображает реальну...

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

Проекты Центра разработки Intel в России. Intel Integrated Performance Primitives Наш рассказ об очередном проекте Intel, сделанном в России. Это библиотека Intel Integrated Performance Primitives – набор готовых к употреблению, высоко оптимизированных под различные архитектуры Intel, к тому же совершенно бесплатных базовых функций для работы с изображени...

Banana Pi R64 Лучший роутер для OpenWrt, или нет? Здравствуйте меня зовут Дмитрий и сегодня я сделаю обзор на одноплатный компьютер Banana Pi R64. Мы узнаем как установить на него OpenWrt а также как собрать самому прошивку под этот компьютер. Читать дальше →

Сравнение встраиваемых ЯП по размеру в исполняемом файле В рамках одного из моих SDK-проектов нам понадобилось добавить скриптование, которое бы оказало наименьший эффект на размер конечного бинарного файла, но при этом предоставляло хорошую фунциональность. Это дало старт проекту, который описан в этой статье. Прошу заметить, что...

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

Варианты аппаратной реализации USB Type-C, или Когда не требуется Power Delivery Когда мы в SberDevices делаем новое устройство, работаем над его аппаратной частью, перед нами встаёт вопрос выбора интерфейсов. Важным моментом при выборе является их доступность и совместимость с другими устройствами. В своих устройствах мы не могли пройти мимо интерфей...

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

Модули в JavaScript Фронтенд-разработчики каждый день используют модули. Это может быть функция из локального файла или сторонняя библиотека из node_modules. Сегодня я кратко расскажу об основных модульных системах в JavaScript и некоторых нюансах их использования. Читать дальше →

Как мы распилили монолит. Часть 3, Frame Manager без фреймов Привет. В прошлой статье я рассказал про Frame manager — оркестратор фронтовых приложений. Описанная реализация решает многие проблемы, но в ней есть недостатки. Из-за того, что приложения грузятся в iframe, появляются проблемы с версткой, некорректно работают плагины, клие...

Как анализатор PVS-Studio стал находить ещё больше ошибок в проектах на Unity Разрабатывая статический анализатор PVS-Studio, мы стараемся развивать его в различных направлениях. Так, наша команда работает над плагинами для IDE (Visual Studio, Rider), улучшением интеграции с CI и т. д. Увеличение эффективности анализа проектов под Unity также являетс...

[Перевод] Название имплементации и название результата Я хотел написать этот пост ещё в июле, но никак не мог, о ирония, решить, как его назвать. Удачные термины пришли мне в голову только после доклада Кейт Грегори на CppCon, и теперь я наконец могу рассказать вам, как не надо называть функции. Бывают, конечно, названия, котор...

Как не править Python тесты И вынести тестируемые результаты вне кода. Это статья об автоматизации и увеличения удобства тестирования на Python. Вводная У меня был проект, который разрабатывался уже несколько лет. В проекте отсутствовали тесты. А также у него были активные зависимости от других команд...

[Из песочницы] Разработка круговых интерфейсов Оглавление Введение Классификация круговых интерфейсов Принципы проектирования кругового интерфейса Основы анимации кругового интерфейса Библиотека классов на JavaScript для реализации круговых интерфейсов Введение Круговой интерфейс – это графический интерфейс, элементы кот...

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

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

DLR RMC — часть 1. Путь из космоса на Землю Ссылка на первоисточник: http://www.robotexnik.info/publ/robotics/dlr-rmc-part1/1-1-0-13. Здесь больше порядка с оформлением, особенно, для видеороликов. Заходите! Содержание Введение Ничего необычного: один из лучших центров робототехники в мире Оберпфаффенхофен Просто ко...

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

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

Парсинг фотографий с сайта cian.ru с помощью Selenium Здравствуйте дорогие хабровчане, в этом небольшом примере я хочу показать как можно распарсить страницу, данные на которую подгружаются с помощью javascript виджетов. Более того, даже если страницу в этом примере просто сохранить, то всё равно не получится спарсить из неё вс...

Коды избыточности: простыми словами о том, как надёжно и дёшево хранить данные Так выглядит избыточность. Коды избыточности* широко применяются в компьютерных системах для увеличения надёжности хранения данных. В Яндексе их используют в очень многих проектах. Например, применение кодов избыточности вместо репликации в нашем внутреннем объектном хранил...

Acronis Global Cyber Summit 2020: лучшая площадка для обсуждения вопросов киберзащиты Уже в понедельник, 19 октября стартует одно из самых масштабных событий в области киберзащиты — Acronis Global Cyber Summit. В этом году наш саммит пройдет в режиме онлайн, и будет доступен для всех желающих абсолютно бесплатно! Мы решили использовать площадку-конструктор Bi...

Новостной дайджест событий из мира FPGA/ПЛИС — №007 (2020_12) Здравствуйте друзья. Продолжаем публиковать новости из мира FPGA/ПЛИС. В 2020 опубликовано  238 новостей, запущены FPGA стримы и проведена первая отечественная FPGA конференция. Подборка за декабрь и ссылки на все упоминания под катом. Читать дальше →

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

Опыт создания нескольких 3д сцен без перезагрузки страницы (three.js) Что делаю Для личного проекта потребовалось найти решение, для работы с некоторым количеством разных gltf моделей. Небольшой опыт работы с three.js у меня был, поэтому, после ознакомления с примерами GLTFLoader, была выбрана именно эта библиотека. Данные о сценах хранятся в ...

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

Авторы грядущей карточной игры Red and Blue запустили сайт проекта и начали делиться подробностями В прошлом месяце авторы карточной игры HEX: Shards of Fate анонсировали новый проект в жанре, который должен «пошатнуть основы жанра». Кроме короткого трейлера и громких заявлений подробностей было минимум, но теперь разработчики запустили официальный сайт и поделились новым...

Компонент Slider из библиотеки материального дизайна Началось с небольшой детективной истории — разглядывая сайт Material Design, наткнулся на страницу Sliders. В описании говорилось, что данный компонент доступен для Android и даже дана ссылка на Гитхаб. Меня это немножко удивило, так как я ни разу о нём не слышал. Перехожу п...

Подробности грядущей компьютерной MMORPG New World от Amazon Games Amazon Game Studios, игровое подразделение известной американской компании Amazon, появилось еще в 2012 году. Долгое время студия разрабатывала проекты для собственного маркета Amazon App Store, а в 2016 рассказала о первых планируемых играх для ПК, и вот приближается время ...

Глобальное тестирование Summoners War: Lost Centuria начнется в третьем квартале Как и множество других компаний корейский игровой гигант Com2uS недавно опубликовал свой финансовый отчет с результатами за первый квартал 2020 года. Вместе с цифрами он поделился подробностями об активных и разрабатываемых проектах. Напомним, что в прошлом месяце в Южной К...

Swift.assert — жизнь после релиза Как часто вы используете Swift.assert() в вашем коде? Я, честно, использую довольно часто (Если это плохая практика, то, пожалуйста, напишите в комментариях — почему это плохо?). В моем коде часто можно встретить, например, такой вызов: Swift.assert(Thread.isMainThread) Не ...

ОТР запустила 300 точек доступа к сети Wi-fi в одной из больниц Москвы Несмотря на тяжелую ситуацию со вспышкой COVID-19 ИТ компания ОТР продолжает реализацию масштабного проекта по созданию сетевой инфраструктуры для Единой медицинской информационно-аналитической системы города Москвы (ЕМИАС). Проект ...

[Из песочницы] BoxView — удобный autolayout для iOS Хочу поделиться библиотекой для эффективного построения пользовательского интерфейса iOS приложений на основе autolayout. Хотя с появлением SwiftUI актуальность autolayout быстро уменьшается, пока этот механизм все еще активно используется, и библиотека может быть полезна ...

Исследование качества кода Open XML SDK от Microsoft Моё знакомство с Open XML SDK началось с того, что мне понадобилась библиотека для создания документов Word с некоторой отчётностью. После работы с Word API более 7 лет, захотелось попробовать что-нибудь новое и более удобное. Так я узнал, что у Microsoft есть альтернативно...

Программа «Цифровая экономика»: за четыре месяца в дело пошли менее 6% годового объёма выделенных средств По данным Счётной палаты, опубликованным на прошлой неделе, это самый низкий показатель среди всех национальных проектов.Как писал D-Russia.ru, в конце апреля стало известно, что Минкомсвязь направила в правительство предложения сократить бюджет национальной программы "...

Обзор гибких методологий проектирования DWH Разработка хранилища — дело долгое и серьезное. Многое в жизни проекта зависит от того, насколько хорошо продумана объектная модель и структура базы на старте. Общепринятым подходом были и остаются различные варианты сочетания схемы “звезда” с третьей нормальной формой. К...

[Перевод] ELK, SIEM, Open Distro: Оповещения (алерты) Здравствуйте и добро пожаловать в нашу новую статью, в которой будет рассказано об оповещениях (алертах) в нашем решении SOCaaS. Как вы все знаете, предупреждения в любом SOC играют жизненно важную роль при уведомлении группы реагирования. Они могут прервать цепочку кибер-ат...

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

Визуализация сложных данных с использованием D3 и React Существует много возможныx вариантов реализации сложных графиков в ваших проектах. Я за несколько лет попробовал все возможные варианты. Сначала это были готовые библиотеки типа AmCharts 4. AmCharts сразу же оказался большим и неповоротливым. После этого были более гибкие и ...

Отладка микроконтроллеров ARM Cortex-M по UART Часть 2 В прошлой статье я рассказывал про прерывание DebugMon и регистры с ним связанные. В этой статье будем писать реализацию отладчика по UART. Читать дальше →

На платформе i.moscow Московского инновационного кластера (МИК) создано первое межотраслевое объединение Вице-мэр российской столицы Наталья Сергунина рассказала о том, что на платформе i.moscow МИК* создали первый межотраслевой кластер. Речь идет об инновационном территориальном объединении «Зеленоград». По словам чиновницы, в него входят 33 организации. Они на совместных осно...

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

Huawei реализовала 12 миллионов смартфонов Mate 30 Компания Huawei отчиталась об успехах линейки флагманских смартфонов Mate 30, которые появились в продаже около трех месяцев назад. Судя по всему, американские санкции, вылившиеся в отсутствие приложений Play и других сервисов Google, не помешали крупным продажам. На данный ...

Проекты Центра разработки Intel в России. Софт-модем Intel для коммутируемых линий Intel — это не только процессоры и средства для разработки ПО. Многие десятилетия компания вносит очень заметный и существенный вклад в развитие сетевых технологий. Тут и серверные сетевые карты для 1G, 10G, 40G и так далее Ethernet (а равно и клиентские, кто ж из здесь прис...

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

Blazor Client Side Интернет Магазин: Часть 2 — CI/CD Привет, Хабр! Продолжаю делать интернет магазин на Blazor. В этой части расскажу о том как я настроил CI/CD для него. За подробностями добро пожаловать под кат. Читать дальше →

Подведены итоги четвертого EdTech Акселератора ED2 13 декабря в Москве состоялся демо-день четвертого набора акселератора в сфере образовательных технологий ED2. После трех месяцев работы 20 команд-финалистов презентовали свои проекты представителям крупных корпораций, фондам, частным инвесторам и экспертному сообществу...

Автозагрузка модулей с использованием динамического импорта Недавно в Node.js была анонсирована поддержка ECMAScript-модулей, а в ES2020 появилась поддержка динамических импортов. В рамках данной статьи я расскажу о реализации очевидного кейса использования динамических импортов — с неизвестными заранее названиями директорий. Читать...

Taiga UI — библиотека компонентов под Angular, которую вам стоит попробовать Привет!Саша Инкин и я регулярно пишем на Хабр статьи по Angular. Почти все они основаны на нашем опыте разработки большой библиотеки компонентов.Эту библиотеку мы развиваем, перерабатываем и дополняем уже несколько лет, а свои идеи проверяем на нескольких десятках проектов Т...

Kotlin Multiplatform. Работаем с многопоточностью на практике. Ч.2 Доброго всем времени суток! С вами я, Анна Жаркова, ведущий мобильный разработчик компании «Usetech». В предыдущей статье я рассказывала про один из способов реализации многопоточности в приложении Kotlin Multiplatform. Сегодня мы рассмотрим альтернативную ситуацию, когда м...

Немного подробностей о нашем партнерстве со SpaceX Microsoft объявила о ряде анонсов в рамках масштабной глобальной инициативы Azure Space. Ее главной целью является сделать космические инновации доступными компаниям во всем мире. В рамках программы Microsoft планирует развивать сотрудничество с организациями космической о...

Squad Health Check: измеряем здоровье команд Метрики, KPI, SLA, DoD, OKR — численных показателей производительности и эффективности команд существует много, но часто их недостаточно, чтобы понять, как на самом деле обстоят дела в команде. Довольны ли люди тем, что они делают, гордятся ли своим продуктом, хотят ли идти ...

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

Автомобили в Голландии: статистика и информация за 2019 год Привет Хабр. Эта статья является продолжением цикла про Велоинфраструктуру в Голландии. В этот раз речь пойдет про автомобили. Недавно в одном из проектов довелось получить доступ к данным с камеры, распознающей автомобильные номера. Зная номер, можно получить довольно м...

Open Source синтез речи SOVA Всем привет! Ранее мы выкладывали статью про наше распознавание речи, сегодня мы хотим рассказать вам о нашем опыте по созданию синтеза речи на русском языке, а также поделиться ссылками на репозитории и датасеты для свободного использования в любых целях. Если вам интересн...

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

До чего доводит взлёт криптовалют: дефицит видеокарт в России продлится до середины 2021 года минимум Резкий взлёт курса криптовалют привёл к закономерным последствиям — ажиотажный спрос на видеокарты, которые можно использовать для майнинга, вылился в их дефицит. О ситуации на рынке видеокарт в России рассказало издание «Ведомости» со ссылкой на пред...

[Из песочницы] Мой опыт разработки приложения, как PM Я программист в душе. Первую программу написал в 8 лет — игра на ламповый телевизор (24 года назад). Данный проект — это вызов для меня. Я лично не написал ни одной строчки кода. В процессе перекупили основного кодера. Дочь глотнула батарейку — стресс на неделю. Коронавирус....

Беспроводной DIY датчик тепрературы и влажности с e-paper дисплеем Всем привет! Сегодня хочу рассказать читателям о своем DIY проекте датчика температуры и влажности с e-ink дисплеем. Это будет некая обзорная статья об этапах создания устройства, будет много картинок. Идея этого проекта родилась около двух лет назад, примерно тогда я увлекс...

Разработка и тестирование на платформах Эльбрус программы для томографической реконструкции Smart Tomo Engine (+2 видео) Сегодняшняя статья будет посвящена сразу двум нашим любимым темам: компьютерной томографии (КТ) и отечественному процессору Эльбрус. Мы расскажем, чем отличается рентгенограмма от результатов КТ и объясним, зачем такой большой и серьезной машине, как томограф, был бы кстати ...

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

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

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

Dynamic Delivery в многомодульных проектах (часть 1) Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и занимаюсь внедрением Dynamic Features в наши проекты. Dynamic Delivery — технология, позволяющая устанавливать и удалять части приложения прямо во время работы для того, чтобы уменьшить место, занимаемо...

Непрерывная интеграция в Unity: как сократить время сборок и сэкономить ресурсы + пайплайн в подарок Всем привет, на связи Александр Панов, техлид из Pixonic. В компании я отвечаю за межпроектные решения и околопроектную периферию и сегодня хочу поделиться своим опытом и наработками. Платформы непрерывной разработки и интеграции, или CI/CD, сейчас используются повсеместн...

Разработка первого проекта на платформе Microsoft Dynamics 365 For Finance and Operations Всем привет! Меня зовут Таня, я тимлид группы разработки Axapta в компании Lamoda. В этой статье речь пойдет про разработку нашего первого проекта на платформе Microsoft Dynamics 365 For Finance and Operations. Я расскажу про подходы, которые мы использовали, про ошибки,...

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

Сервис Ubisoft+ доступен на Google Stadia: Assassin's Creed Valhalla и Watch Dogs: Legion за $15 в месяц На прошлой неделе мы сообщили, что облачный игровой сервис Google Stadia стал доступен в восьми новых странах из Восточной Европы. Посмотреть, входит ли ваша страна в этот список можно как раз в предыдущей новости. Теперь мы узнали, что Google Stadia заработала совместно с с...

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

Bethesda гордится успехами Fallout 76 в 2019 году На самом деле, гордиться действительно есть, чем.

Хороший ли выбор Svelte для реализации виджета? Привет! Меня зовут Дмитрий Усов, я фронтенд-разработчик в Ситимобил. Буквально несколько месяцев назад появилась задача создать виджет для заказа такси через сайт. В этой статье я хотел бы рассказать, почему для этой задачи был выбран Svelte, поделиться своим мнением о его д...

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

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

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

Две альтернативы JDBC Примеры для двух неблокирующих библиотек доступа к SQL базам данных — Vert.X SQL и R2DBC. Примеры будут основаны на PostgreSQL и реактивных обертках Java. Начнем с главного: JDBC — это отличный стандарт. Служил и служит верой и правдой. Но новые веяния просят новых решений...

[Из песочницы] STM32F3xx + FreeRTOS. Modbus RTU с аппаратным RS485 и CRC без таймеров и семафоров Всем привет! Относительно недавно, закончив ВУЗ, я попал в небольшую компанию, которая занималась разработкой электроники. Одна из первых задач с которой я столкнулся — необходимость в реализации Modbus RTU Slave протокола с использованием STM32. С грехом пополам я её тогда ...

Microsoft оптимизирует ядро Linux для серверных ARM На конференции Linux Plumbers Conference 2020 разработчики Microsoft рассказали о своем экспериментальном проекте — оптимизации ядра Linux для серверных ARM-процессоров. С докладом выступил главный менеджер по разработке программного обеспечения Ян Бирман. По словам спец...

Spring-анимации во Vue Привет, Хабр! Мне давно хотелось добавлять в любые проекты Spring-анимации. Но делал я это только для React-проектов с помощью react-spring, так как не знал ничего другого. Но наконец я решил разобраться, как оно все устроено и написать свою реализацию! Если вы тоже хоти...

[Перевод] Как думают программисты-сеньоры? Автор материала, перевод которого мы публикуем сегодня, поддерживает идею Ральфа Уолдо Эмерсона о том, что мы становимся тем, о чём думаем. Здесь пойдёт речь об образе мыслей программистов-сеньоров. Читать дальше →

Альтернативное понимание контекста с помощью статистической языковой модели В интернете полно статей на тему основанных на N-граммах языковых моделей. При этом, готовых для работы библиотек довольно мало. Есть KenLM, SriLM и IRSTLM. Они популярны и используются во многих крупных проектах. Но есть проблемы: Библиотеки старые, не развиваются. Пло...

monobank снижает ставку на остаток (с 10% до 7%), но кредитная ставка и обязательный платеж тоже немного уменьшаться Популярный платежный сервис monobank, который на прошлой неделе преодолел знаковый рубеж в 2,5 млн активных клиентов (за 2,5 года) сегодня предупредил клиентов об изменениях в ключевых тарифах с 1 сентября. Всего их три: два положительных и одно — неприятное. Подробности рас...

GitHub: новая Open Source библиотека для OSINT В мире информационной безопасности часто задаются вопросом об исследовании открытых источников на получение личной информации — будь то защищающая сторона (например, для контроля периметра, выявления открытых уязвимостей) или пентестеры (поиск точки входа, аудит периметра и...

Проект LLHD — универсальный язык описания аппаратуры Буквально на днях на arXiv-е была выложена очень занятная статья швейцарских исследователей, в которой представлены подробности проекта LLHD. Это проект создания многоуровневого промежуточного представления для языков описания аппаратуры, наследующий идеологию и принципы про...

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

Паскаль играет в Go. Реализация методов и интерфейсов в любительском компиляторе If I could export one feature of Go into other languages, it would be interfaces. — Russ Cox Мой предельно простой компилятор Паскаля уже становился предметом двух публикаций на Хабре. Со времени их написания язык обзавёлся всеми недостающими средствами, положенными станд...

Записки pentester’а: случаи на охоте – 2 Продолжим разговор за интересные случаи в работе пентестеров. В прошлом посте речь шла о внешних тестированиях на проникновение, сегодня же расскажем о наиболее занимательных внутренних пентестах, реализованных нами за последнее время. Суть их в том, что мы должны были, на...

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

За три месяца эксперимента «Доступный интернет» провайдеры потеряли около 200 млн рублей За три месяца эксперимента «Доступный интернет», в рамках которого обеспечивается бесплатный доступ к социально значимым веб-ресурсам, провайдеры домашнего интернета недополучили 190-220 млн рублей выручки. Об этом сообщает издание «Коммерсант» со ссылкой на данные комиссии ...

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

Будни такси ВКонтакте Артем Пулявин руководит фронтенд-разработкой в Ситимобил и на конференции FrontendConf 2020 рассказал про такси ВКонтакте: как проект начинался и каким он стал. Проект задумывался внутри Ситимобил как экспериментальный, но за год по количеству поездок вырос в 30.000 раз. А...

МТС поможет в развитии технологий для «умных» городов в Московской области Компания МТС, один из крупнейших российских операторов связи, объявила о начале реализации масштабной программы по развитию фиксированной сети передачи данных в Подмосковье. Речь идёт о создании инфраструктуры высокоскоростных каналов доступа в Интернет по волоконно-оптическ...

[Перевод] Представлена Grafana Tempo, широко масштабируемая распределенная система трассировки Grafana Labs с гордостью представляет простую в эксплуатации, масштабируемую, рентабельную, распределенную систему трассировки: Tempo. Она разработана в качестве надежного хранилища, оптимизированного для поиска идентификаторов, единственная ее зависимость — объектное храни...

Теперь еще и телевизоры. Видеочат Google Duo станет доступен на Android TV Буквально на прошлой неделе Google перенесла сервис видеоконференций Meet на телевизоры через Chromecast. Теперь же стало известно, что видеочаты Google Duo тоже станут доступны прямо с экрана телевизора, причем здесь речь идет о выпуске отдельного приложения для Android TV....

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

Fluentd: почему важно настроить выходной буфер В наше время невозможно представить проект на базе Kubernetes без стека ELK, с помощью которого сохраняются логи как приложений, так и системных компонентов кластера. В своей практике мы используем стек EFK с Fluentd вместо Logstash. Fluentd — это современный универсальный ...

Radeon RX 6800 XT с охлаждением на азоте побил новый мировой рекорд 3DMark Fire Strike Radeon RX 6800 XT с охлаждением на азоте побил новый мировой рекорд 3DMark Fire Strike. Такой высокий результат удалось достичь, благодаря специально выстроенной тестовой системе. Подробнее об этом читайте на THG.ru.

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

PC-геймеры Reddit объединяют свои вычислительные мощности вокруг проекта Folding@Home для борьбы с COVID-19 Модераторы сабреддита «PC Master race» призвали владельцев мощных игровых видеокарт присоединиться к научным облачным вычислениям Стенфордского проекта Folding@Home, который прямо сейчас занимается расчетом моделей сразу по восьми направлениям для борьбы с COVID-19. Инициати...

[Перевод] Визуализация списка женщин-лауреатов Нобелевской премии в виде кристаллов в 3d с использованием Vue, WebGL, three.js Год 1 | вдохновение В этом месяце я очень долго пыталась определиться с датасетом и идеей для его обработки. Хотя я начала думать о нем еще в мае, по факту законить удалось только через 8 месяцев (черт, я плоха), а описать проект мне удалось еще спустя месяц (оу, я чертовс...

Маркетинговые хитрости на рынке смартфонов. Где нет прогресса? Ранее, в нашем блоге обсуждалось, какие современные смартфоны классные и как их гибко можно использовать в «гиковских» целях. Возможно, но сегодня мы поговорим о другой стороне медали. Речь пойдёт о практическом применении в ежедневных задачах. Мы поговорим о том, что нам ...

ViennaNET: набор библиотек для backend’а. Часть 2 Сообщество .NET-разработчиков Райффайзенбанка продолжает краткий разбор содержимого ViennaNET. О том, как и зачем мы к этому пришли, можно почитать в первой части. В этой статье пройдемся по еще не рассмотренным библиотекам для работы с распределенными транзакциями, очеред...

В Epic Games Store началась раздача ролевого экшена Torchlight II В Epic Games Store подходит к концу масштабная предновогодняя акция: предпоследней, четырнадцатой по счёту временно бесплатной игрой в сервисе стала Torchlight II от ныне закрытой Runic Games. Добавить Torchlight II в свою библиотеку можно на странице проекта в Epic Games ...

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

[Перевод] Подробности об использовании CSS-функции minmax() в Grid-макетах Существует множество руководств, в которых рассматриваются общие вопросы работы с CSS Grid, с механизмом, позволяющим создавать сеточные макеты. Я и сам немало об этом писал. Но я обратил внимание на то, что у многих разработчиков возникают сложности с использованием CSS-фун...

Архитектура S3: 3 года эволюции Mail.ru Cloud Storage Storage Corridor by St-Pete Всем привет! Я Mons Anderson, архитектор платформы Mail.ru Cloud Solutions, расскажу, как мы построили наше S3-хранилище, как оно работает, какие решения оказались удачными, а какие стоило изменить, если бы мы начали такой же проект с нуля сейчас...

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

Все, что вы хотели узнать об LDPC кодах, но стеснялись спросить (наверное) Предисловие С кодами малой плотности проверок на чётность, которые дальше мы будем именовать коротко LDPC (Low-density parity-check codes), мне удалось познакомиться более или менее близко, работая над семестровым научным проектом в ТУ Ильменау (магистерская программа CSP)....

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

Не решать за дизайнера задачу дизайнера Привет, Хабр. Последние 3 месяца около 40% моего рабочего времени занимает общение с дизайнерами. Про то, что дизайн — это не про нарисовать, а про спроектировать, знают давно и многие. А о том, почему это так, доступно объяснял в своем выступлении Костя Горский, в прошлом ...

Самое интересное в PHP 8 PHP 7.4 только-только объявлена stable, а нам уже подавай еще больше усовершенствований. И лучше всех о том, что ждет PHP, может рассказать Дмитрий Стогов — один из ведущих разработчиков Open Source PHP и, наверное, старейший активный контрибьютор. Все доклады Дмитрия тольк...

PyCharm исполнилось 10 лет У PyCharm юбилей. На протяжении десяти лет наша IDE развивалась вместе с Python, отражая изменения в языке и отвечая на запросы Python-разработчиков. Все это время мы стремились сделать PyCharm максимально удобной и эффективной IDE. PyCharm — не просто коммерческий продукт...

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

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

Инженеры Toyota признали – Tesla опережает их в области бортового ИИ на 6 лет Инсайдерская информация из недр Toyota Motor указывает на существенное отставание автогиганта от компании Tesla. По итогам недавнего реверс-инжиниринга Model 3 один из ведущих специалистов Toyota прямо заявил «Мы не можем этого повторить». Речь идет о технологии Hardware 3 –...

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

Что нужно знать о популярных фреймворках Привет! Меня зовут Дима Чудинов, я наставник на веб-факультете Яндекс.Практикума, Head of Group, Front-end, ABBYY. Студенты недавно задали мне вопрос: «Что лучше: Angular или React?». Я начал отвечать и понял, что мне понадобится для этого статья. Позже я понял, что и одной...

Введение в SSD. Часть 4. Физическая Прошлые части цикла «Введение в SSD» поведали читателю про историю появления SSD-накопителей, интерфейсы взаимодействия с ними и популярные форм-факторы. Четвёртая часть расскажет о хранении данных внутри накопителей. Читать дальше →

[Перевод] Docker передает cnab-to-oci в проект CNAB… и что вообще такое CNAB? Прим. перев.: Эта статья — перевод недавнего анонса из мира контейнеров. В прошлом месяце компания Docker объявила о передаче своей очередной разработки в руки более широкого Open Source-сообщества. Речь шла об инструменте конвертации метаданных CNAB-пакета в формат стандарт...

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

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

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

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

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

GitHub: библиотека для сбора SSL-сертификатов Представляем еще одну библиотеку, написанную на Go – GoTransparencyReport предназначенную для автоматизации сбора и обработки SSL-сертификатов по API сайта transparencyreport.google.com (ранее мы уже размещали библиотеку для поиска данных о корпоративных email по домену). Су...

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

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

[Из песочницы] ToolKit на базе Eclipse и GTK+, для «Toradex Colibri T20 (Linux)» Эта статья рассчитана прежде всего на то, чтобы сэкономить время при создании тулкита, но при этом я постараюсь рассказать все достаточно объемно. Содержание Скачать все необходимое Установка SDK Проверка SDK Установка Eclipse Подключение GTK к Eclipse Настройка прое...

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

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

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

«Умный дом» в каждую квартиру многоквартирного дома, или наш MVP В прошлой статье мы рассказали о создании нашей команды, но в этой статье хотим рассказать как именно мы реализовали первый наш проект. Описание объекта Итак наш первый объект — жилой дом имеющий следующие характеристики: 15 этажей 135 квартир Импульсные приборы учета х...

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

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

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

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

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

Ну вы и кадры: показываем, на ком держатся IT в 2020 году Привет! В июле Хабр и Экопси объявили о старте исследования IT-брендов работодателей. Мы собрали и обработали всё, что вы рассказали нам о российских IT-компаниях, подвели итоги и уже скоро назовем работодателей с самыми сильными IT-брендами этого года. Интересных данных у...

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

Blazor Client Side Интернет Магазин: Часть 4 — Добавления товара в корзину Привет, Хабр! Продолжаю делать интернет магазин на Blazor. В этой части расскажу о том как добавил в него возможность добавления товара в корзину. За подробностями добро пожаловать под кат. Читать дальше →

Халк крушить: Square Enix потеряла $67 млн благодаря разработке Marvel's Avengers В начале ноября генеральный директор Square Enix, Ёске Мацуда, провёл конференцию с инвесторами о финансовых результатах компании. Всё оказалось не так хорошо, как хотелось бы. Самой главной проблемой является даже не пандемия, а результаты экшена Marvel's Avengers, реклама ...

Офис Involta: как мы работаем и зарабатываем, не уезжая из региона Компания Инвольта появилась и продолжает успешно развиваться в Иванове. С нескольких человек и идеи о том, как заработать, мы выросли до более сотни сотрудников, десятков проектов и масштабного офиса в центре города. О том, где и как мы работаем, не уезжая из региона, и поче...

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

MLOps — Cook book, chapter 1 Всем привет! Я CV-разработчик в КРОК. Уже 3 года мы реализуем проекты в области CV. За это время чего мы только не делали, например: мониторили водителей, чтобы во время движения они не пили, не курили, по телефону не разговаривали, смотрели на дорогу, а не сны или в облака...

И целого байта мало… (Часть #2) Сегодня поговорим о конкретной работе в области sizecoding. Дело в том, что некоторые релизы не только имеют культовый статус в узких кругах — они прямо и явно воздействовали на умы людей, заставляли учить отладчик, смотреть код, изучать все детали. Было просто непонятно и о...

Seagate SkyHawk AI — огромный и злопамятный В конце прошлого года модельный ряд наших устройств пополнился новой линейкой, SkyHawk AI. Эти накопители создавались для работы в системах видеонаблюдения с поддержкой искусственного интеллекта. Сегодня мы хотим подробно рассказать вам о её флагмане — модели Seagate ST16000...

Опыт инвестиций в акции Всем привет. Опрос в моем прошлом посте показал, что людям хотелось бы почитать о моем опыте инвестиций. На данный момент мой ИИС открыт 1 год и 3 месяца назад. Инвестировал я 500 000 рублей за это время. Читать дальше →

Где взять аудио для машинного обучения: подборка открытых библиотек с лицензией Creative Commons Небольшой дайджест для тех, кто разрабатывает модели машинного обучения. Под катом — своды данных с речью, музыкой и шумом промышленных агрегатов. Читать дальше →

Quartet 9: Allegro | TypeScript Когда создавалась библиотека для валидации данных quartet были поставленны следующие цели-ориентиры: TypeScript Краткость и простота Производительность В этой статье я хотел бы рассмотреть ориентированность quartet на TypeScript. Читать дальше →

Киберугрозы-2021: прогнозы и перспективы В течение 2020 года мы изучали нескончаемый поток угроз, отслеживали действия киберпреступников по всему миру, анализировали инструменты, тактики и направления интереса. В материале Turning the Tide. Trend Micro Security Predictions for 2021 наши эксперты делятся своим виден...

В поисках обеда: распознавание активности по данным фитнес-трекера Мне посчастливилось участвовать в проекте SOLUT, который стартовал в ЛАНИТ около года назад. Проект развивается благодаря активному участию Центра компетенции больших данных ЛАНИТ (ЦК Дата), и главное технологическое новшество проекта заключается в использовании машинного об...

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

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

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

[Перевод] Сравнение React Native и Flutter с точки зрения их применения в реальных проектах Чем React Native отличается от Flutter, за исключением того, что речь идёт о разных фреймворках, в основу которых положены разные технологии? На что ориентироваться тому, кто не знаком с этими инструментами для разработки кросс-платформенных приложений, но хочет выбрать один...

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

7 слов в английском, которые встречаются в СМИ реже чем 3 случая на 100 миллионов В английском языке уже больше миллиона уникальных слов — именно такие результаты дал масштабный анализ литературы, который совместно проводили Гарвардский университет и компания Google. Лексикон языка увеличивается в среднем на 8500 новых слов каждый год. С такой же скоро...

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

Интервью с Александром Филипповым, Lead Game Designer World of Tanks Blitz 14 и 15 мая мы будем участвовать в конференции DevGAMM, на которой будут выступать наши спикеры. И мы подумали, почему бы не разузнать у одного из них о бекграунде, опыте и работе над проектом World of Tanks Blitz, о котором пойдем речь в презентации. Что получилось из этого...

[recovery mode] DevOps & SRE Hiring Day: оффер в DINS за один день Привет, Хабр! 11 декабря мы проводим Hiring Day — это возможность для DevOps и SR-инженеров получить предложение о работе всего за один день. Ищем коллег, которые будут вместе с нами работать над UCaaS-платформой для бизнес-коммуникаций. В проекте вас ждет сложная архитекту...

PUBG Mobile — самая прибыльная мобильная игра уже 5 месяцев подряд Компания Sensor Tower рассказала о мобильных играх, которые заработали больше всего в январе этого года. Интересно, что в App Store лидером стала Honor of Kings, в Google Play — Lineage 2M, но общая прибыль больше всего у PUBG Mobile. За месяц королевская битва принесла Tenc...

Прекращение поддержки Adobe Flash привело к остановке целой железной дороги в Китае В городе Далянь в северном Китае на прошлой неделе произошло локальное ЧП – местная железная дорога была остановлена на целых 20 часов. Причиной стал масштабный сбой в системе управления, который вызвало отключение плагина Adobe Flash. Звучит парадоксально, но это факт – выс...

Официально: релиз мобильной MMORPG Blade & Soul Revolution состоится 14 мая Еще в прошлом месяце стало известно, что мобильная MMORPG Blade & Soul Revolution выйдет за пределами Южной Кореи. Тогда в магазинах App Store и Google Play появились страницы предрегистрации, на основании данных из которых можно было предположить, что релиз состоится 14...

Делаем свой телеканал Вы, возможно, удивитесь, но телевидение всё ещё живо. Да, аудитория поредела и «состарилась», а технологии приумножились и помолодели (IPTV, SmartTV, различные приставки), но всё-таки жизнь есть не только в YouTube и TikTok. Мало того, сейчас сделать свой телеканал можно п...

«Всеукраїнська школа онлайн». 6 апреля на телевидении, Facebook и YouTube стартуют онлайн-уроки для школьников В своем свежем видеообращении президент Украины Владимир Зеленский рассказал некоторые подробности о крупном национальном образовательном проекте с говорящим названием «Всеукраїнська школа онлайн». Об инициативе «Всеукраїнська школа онлайн» впервые было объявлено в минувшее ...

Компания Hitachi Vantara названа ведущим производителем объектных хранилищ в четвертый раз подряд Более 2500 организаций по всему миру выбрали платформу Hitachi Content Platform в качестве хранилища данных для облачных систем и приложений. Компания Hitachi Vantara, дочернее предприятие Hitachi, Ltd., снова вошла в категорию лидеров по результатам оценки поставщиков объек...

Итоговые проекты курса Deep Learning in Natural Language Processing (by DeepPavlov Lab) Недавно завершился «Deep Learning in Natural Language Processing», открытый образовательный курс по обработке естественного языка. По традиции кураторы курса — сотрудники проекта DeepPavlov, открытой библиотеки для разговорного искусственного интеллекта, которую разрабатываю...

Fortinet Security Fabric на практике. Часть 4. Взаимная интеграция Доброго дня! В наших прошлых статьях мы рассказали про концепцию Fortinet Security Fabric, а также описали продукты FortiSwitch и FortiAP. Теперь пришло время рассмотреть процесс взаимной интеграции продуктов “фабрики безопасности” на практике, а также познакомиться с возмож...

ВТБ переходит на единую телекоммуникационную сеть «Ростелекома» "“Ростелеком” как стратегический партнер ВТБ примет участие в реализации проекта по модернизации системы каналов связи для офисов ВТБ по всей стране. В результате полностью изменится их структура: офисы будут напрямую соединены с центрами обработки данных, д...

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

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

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

Апелляционный суд позволил Qualcomm и далее применять бизнес-практику «нет лицензий, нет чипов» В прошлом году суд США признал Qualcomm виновной в нарушении антимонопольного законодательства и постановил изменить способ ведения бизнеса. Речь шла о так называемой практике «нет лицензий, нет чипов». Она подразумевает, что для получения доступа к чипам компании клиентам т...

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

Чтение на выходные: 10 материалов про реплики звуковых карт, открытые библиотеки звуков и аудиософт В прошлый раз мы говорили об акустической левитации и технологии почти стопроцентной шумоизоляции. На этих выходных предлагаем подборку статей о реинкарнации старых звуковых карт, «золотом стандарте» софта для медиапродакшена и о синтезе цифрового звука. Читать дальше &rar...

Участников проекта «Московское долголетие» пригласили повысить функциональную грамотность При поддержке МЦКО* в столице РФ активно реализуется проект «Московское долголетие», ориентированный на бабушек и дедушек местных школьников. Занятия в нем проводятся по 16 направлениям в 63 группах. Как рассказал директор МЦКО Павел Кузьмин, реализация проекта способствует ...

Популярное лекарство признали бесполезным в борьбе с коронавирусом Как стало известно, китайские ученые провели свежий эксперимент, в результате которого популярное лекарство арбидол было признано бесполезным в борьбе с коронавирусом COVID-19.

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

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

[Перевод] Вышел Loki 2.0 Преобразовывайте свои журналы прямо во время запроса, настраивайте уведомления с Loki. Читать дальше →

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

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

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

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

Создаем Swift Package на основе C++ библиотеки Данная статья поможет вам создать свой первый Swift Package. Мы воспользуемся популярной C++ библиотекой для линейной алгебры Eigen, чтобы продемонстрировать, как можно обращаться к ней из Swift. Для простоты, мы портируем только часть возможностей Eigen. Читать далее

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

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

У встроенной графики Iris Xe, которой так гордится Intel, большие проблемы в играх Предварительные результаты тестов процессоров Intel Tiger Lake, в частности их графической составляющей, говорили о том, что, во-первых, GPU Xe значительно быстрее предшественников, а, во-вторых, они на одном уровне с дискретными GPU начального уровня вроде GeForce MX35...

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

[Из песочницы] Использование Enum + Associated Values при навигации и передаче данных между экранами в IOS приложениях В этом посте мне бы хотелось затронуть извечный вопрос об организации навигации и передачи данных между экранами в IOS приложениях. В первую очередь, я хотел бы донести концепт своего подхода, а не убедить вас использовать его как волшебную таблетку. Тут не будут рассматрива...

Новые приключения неуловимого углекислого газа Он от дедушки ушёл, он от бабушки ушёл… Но не смог уйти от технологических решений компании Toshiba! [звучит духоподъёмная музыка из сюиты Г. Свиридова “Время, вперёд!”]». Речь об углекислом газе (CO2), который образуется в результате практически любой промышленной деятель...

Заказчики IBM модернизируют инфраструктуру На очередном заседании инфраструктурного клуба IBM заказчики компании из различных индустрий — авиации, финансового сектора и ИТ — рассказали о реализации четырех масштабных проектов, направленных на решение ...

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

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

[Из песочницы] DevOps — хорошо, но что делать? Как сократить ручной труд и прийти к желаемому результату Итак. В 2018 году на Heisenbug (Московская конференция по тестированию) Барух Садогурский (Developer Advocate в компании JFrog) презентовал интересный кейноут, в котором рассказал о своих основных идеях того, «куда надо идти». В 2019 году на том же  Heisenbug состоялся сикве...

За кулисами жизни модератора Stack Overflow Недавние статьи на Хабре про опыт пользования StackOverflow сподвигли меня на написание статьи, но с позиции модератора. Сразу хочу отметить, что речь пойдёт о Stack Overflow на Русском. Мой профиль: Suvitruf. Сначала хотелось бы рассказать о причинах, побудивших меня участв...

«Linux — это рак». Microsoft признала ошибку прошлого в отношении open source Главный юрисконсульт и президент Microsoft Брэд Смит (Brad Smith) признал, что прошлая позиция компании в отношении открытого программного обеспечения было в корне не верным.  В 2001 году скандально известный исполнительный директор Microsoft Стив Балмер (Steve Ba...

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

Шпаргалка по визуализации данных в Python с помощью Plotly Plotly — библиотека для визуализации данных, состоящая из нескольких частей: Front-End на JS Back-End на Python (за основу взята библиотека Seaborn) Back-End на R В этой простыне все примеры разобраны от совсем простых к более сложным, так что разработчикам с опытом будет...

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

Python в Mobile development Ни для кого не секрет, что область применения Python довольно широка: начиная от web-технологий, игровой индустрии и заканчивая проектами NASA. Python работает практически везде: от карманных компьютеров и смартфонов до серверов сети и практически на всех известных платфор...

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

Заметки с полей: одна из самых больших OpenSource конференций FOSDEM 2020 FOSDEM 2020 на прошлых выходных собрал в Брюсселе 8000+ разработчиков, объединённых идеей открытого ПО. 2 дня, 800 докладчиков и докладов, безлимитное общение и возможность встретить легенд из мира OpenSource. Делюсь своими впечатлениями и заметками с выступлений. Видео с ...

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

[Из песочницы] Робот-секретарь, бот-информатор, бот-терапевт и другие проекты онлайн-хакатона VirusHack Более 70 команд и свыше 300 человек из 64 городов приняли участие в работе над треком «Мегаполис Москва», который прошел в рамках одного из самых масштабных онлайн-хакатонов страны VirusHack. Читать дальше →

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

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

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

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

PostgreSQL 14: Часть 3 или «ноябрьское затишье» (Коммитфест 2020-11) В ноябре завершился последний в этом году коммитфест изменений PostgreSQL 14. О двух предыдущих, июльском и сентябрьском уже говорилось. Громкими киллер-фичами нас не побаловали, надеемся разработчики припрятали их на последние два коммитфеста в январе и марте следующего г...

Pixockets: как мы написали собственную сетевую библиотеку для игрового сервера Привет! На связи Станислав Яблонский, Lead Server Developer из Pixonic. Когда я только пришел в Pixonic, наши игровые сервера представляли собой приложения на основе Photon Realtime SDK: многофункционального, но весьма тяжелого фреймворка. Решение это, казалось бы, должно...

Кэшбэк в кружке робототехники, или как мои ученики зарабатывают на своих навыках Приветствую всех членов сообщества! Меня зовут Владимир Мозговой. Я являюсь основателем частного центра технического творчества «Robo.Grade» в г. Новочеркасске. В данной статье я хочу рассказать о своём опыте по привлечению к различным работам своих учеников — детей от во...

Это не только у вас. Интернет по всему миру замедляется из-за возросшего трафика Не заметили, с сетью последнее время творится что-то неладное? У меня, например, регулярно отключается Wi-Fi, перестал работать любимый VPN, а некоторые сайты открываются по пять секунд, или в итоге не содержат картинок. Правительства многих стран ввели карантин и ограничи...

Lens JS как менеджер состояния приложения Обзор библиотеки lens-js и эксперименты с котиками.Данные — это, в действительности, важная часть Вашего будущего приложения или отдельной библиотеки. Важна их структура, целостность, а также и подходы к организации их хранения и обработки. Задача, прямо скажем, не тривиальн...

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

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

Azure Virtual Training Days — 4 крутых мероприятия в сентябре Azure Virtual Training Days — это отличная возможность глубоко погрузиться в технологии Microsoft. Наши специалисты помогут раскрыть весь потенциал облака, поделившись своими знаниями, предложив эксклюзивные идеи и практические занятия. С нетерпением ждем встречи с вами н...

Реализация аудиоконференций в Telegram + Asterisk В предыдущей статье я описывал реализацию выбора пользователем места жительства при регистрации в моем telegram боте, который я создавал вдохновившись идеей «Телефонного эфира». В этой же статье я опишу интеграцию бота с Asterisk . Читать дальше →

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

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

DLR RMC — часть 2. Управление механическим импедансом: что за зверь и как они его готовят Ссылка на первоисточник — здесь больше порядка с оформлением, особенно, для видеороликов. Содержание Введение Управление механическим импедансом: о понятиях Модель динамики Управление импедансом в обобщённых координатах Управление импедансом в декартовых координатах Компенс...

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

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

ЛитРес:Школа и Мегафон запустили детскую цифровую библиотеку ЛитРес:Школа - это проект который предоставляет образовательным организациям доступ к мобильной библиотеке с возможностью дистанционно выдавать электронные книги.

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

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

Александр Зейналов: «Вы даже можете и не знать, что перед вами OpenStreetMap, но это будет он» Александр Зейналов — системный администратор, который является одним из «хранителей ключей» от серверов российского сообщества OpenStreetMap. Помимо этого, у него богатый опыт использования данных OSM. Что это за сервера, как разместить на них свой проект и чего не стоит и...

[Перевод] Коронавирус: Фиаско века в процессе творения? Как мы принимаем решения без достоверных данных COVID-19, уже называется «пандемией века». Но это так же может быть и самое масштабное «фиаско века». Читать дальше →

Microsoft ♥️ Python Традиционно считается, что Microsoft хорошо поддерживает языки программирования на платформе .NET: C# или F#. Но это не совсем так — облако Azure поддерживает целый спектр языков, среди которых Python занимает почетное место. А если речь заходит о машинном обучении, то Pytho...

[recovery mode] Использование faiss для поиска по многомерным пространствам Привет! Меня зовут Владимир Олохтонов, я старший разработчик в команде автоматической модерации Авито. Осенью 2019 мы запустили сервис поиска похожих изображений на основе библиотеки faiss. Он помогает нам понимать, что фотографии уже встречались в другом объя...

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

Исполнение нацпрограммы «Цифровая экономика» отстает от планов Об этом рассказал “Коммерсанту ” источник, знакомый с материалами, которые рассматривались на заседании правительственной комиссии 15 мая.Всего, по его словам, из 231 запланированного результата нацпрограммы в первом квартале реализовано в полной мере только шест...

Состоялся релиз новой версии Proton 5.13 для запуска Windows-игр в Linux Компания Valve выпустила новую версию проекта Proton 5.13-1, который основан на Wine и предназначен для запуска в Linux-системах игр, созданных для платформы Windows и распространяемых через Steam. Новая версия Proton переведена на Wine 5.13. Разработчики перенесли 256 патче...

В борьбе синих и красных победа присуждается… радужным! Или все таки не присуждается? Ну противостояние то хоть было? Уже прошло более месяца с момента официальной презентации корпорацией Apple обновленной линейки MacBook. Краеугольным камнем новшеств стали камни вычислительные — процессоры. Для последователей продукции Apple переоценить данное событие довольно сложно, ведь мир увидел не ...

Электрокружок. Строим безумный электросамокат/электробайк Привет, друзья. Меня зовут Дмитрий. И я увлекаюсь электрификацией. Хочу рассказать вам про свою идею и что я хочу построить. Есть такая самокатная рама, которая называется 20”16. Точнее, байк. Так вот речь именно о нем. Читать дальше →

[Перевод] Скрам умер. Да здравствует канбан Я пользовался методом управления проектами Scrum (скрам) с самого начала карьеры. Я изучал скрам в колледже. Тогда он считался лучшим методом управления разработкой программного обеспечения. Когда я начал работать, мне нравилось всё, что имеет отношение к скраму: ежедневные ...

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

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

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

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

Праздник к нам приходит: проектируем и программируем световое шоу в xLights Ранее мы рассказывали про историю протоколов управления световым оборудованием. Настало время сделать свое шоу! Под катом рассказываем о нюансах создания собственного светового шоу, которое пригодится не только на Новый год. Проект не самый простой, но результат стоит того...

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