Социальные сети Рунета
Вторник, 16 апреля 2024

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

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

[Перевод] Visx — коллекция графических примитивов для React-приложений, созданная в Airbnb После 3 лет разработки и 2,5 лет использования в продакшн-проектах Airbnb, после переписывания кода на TypeScript, мы рады представить вам официальный релиз коллекции графических примитивов visx 1.0  (раньше она называлась vx). Вот — страница проекта на GitHub. Документацию ...

[Перевод] ELK SIEM Open Distro: Интеграция с WAZUH Продвигаемся дальше по нашему проекту. Мы завершили часть SIEM. Пришло время перевести наш проект из простого наблюдателя в активного ответчика. Одним из важных инструментов, которые мы использовали для этого, является Wazuh. В этой статье мы надеемся просветить вас о преиму...

Microsoft открыла исходный код языка программирования Project Verona Некоторое время назад стало известно, что Microsoft работает над созданием нового языка под кодовым названием Project Verona, который предназначен для безопасного программирования инфраструктуры. Новый язык включает в себя некоторые идеи из популярного языка программировани...

Wrike уходит от использования языка Dart. Часть 1 Данной статьёй мы хотим пролить свет на технический стек Wrike: каким он был раньше и каким мы видим его в будущем. Мы расскажем о том, почему пять лет назад мы выбрали язык Dart основным для frontend-разработки нашего продукта и почему сейчас мы решили посмотреть в сторону ...

[Перевод] Лучшие инструменты с открытым исходным кодом и библиотеки для Deep Learning — ICLR 2020 Experiencebi Сложно найти на Хабре человека, который не слышал бы про нейронные сети. Регулярные новости о свежих достижениях нейронных сетей заставляют удивляться широкую публику, а также привлекают новых энтузиастов и исследователей. Привлеченный поток специалистов способствует не толь...

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

Как переиспользовать код с бандлами Symfony 5? Часть 6. Тестирование Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и ре...

UML для разработчиков Интернет полон статей про UML, вы найдете сотни примеров для каждого вида диаграмм, и без проблем создадите свои, нотация не сложная. Но так ли уж необходимо тратить на это время? Наш богатый опыт говорит «Да». Если у вас в команде более 2 человек и проект от 3 месяцев, то у...

[Из песочницы] Особенности применения языков программирования С и С++ при разработке ПО, связанного с функциональной безопасностью Крис Хоббс (Chris Hobbs) в своей фундаментальной работе «Embedded Software Development for Safety-Critical Systems» [1] приводит распространенное среди программистов мнение о том, что накладывать ограничения на языки программирования, это как заказывать Пикассо создание ка...

[Из песочницы] Учимся разворачивать микросервисы. Часть 1. Spring Boot и Docker Привет, Хабр. В этой статье я хочу рассказать о своем опыте создания учебной среды для экспериментов с микросервисами. При изучении каждого нового инструмента мне всегда хотелось его попробовать не только на локальной машине, но и в более реалистичных условиях. Поэтому я ре...

[Из песочницы] BPF для самых маленьких, часть нулевая: classic BPF Berkeley Packet Filters (BPF) — это технология ядра Linux, которая не сходит с первых полос англоязычных технических изданий вот уже несколько лет подряд. Конференции забиты докладами про использование и разработку BPF. David Miller, мантейнер сетевой подсистемы Linux, назыв...

[Из песочницы] Изучаем VoIP-движок Mediastreamer2. Часть 1 Материал статьи взят с моего дзен-канала. Введение Эта статья является началом серии статей о реалтайм обработке медиаданных с помощью движка Mediastreamer2. В ходе изложения будут задействованы минимальные навыки работы в терминале Linux и программирования на языке Си. Medi...

Поддержка Buildpacks в Spring Boot 2.3.0 Пару дней назад вышел релиз Spring Boot 2.3.0.M1, в описании которого первой строкой упоминается поддержка проекта Cloud Native Buildpacks, являющегося попыткой упростить жизнь разработчика, позволяя максимально автоматизировать сборку образов из исходных кодов. Так как на м...

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

Эксперимент VTrade. Часть 2: Ордеры. Типы, особенности обработки Чтобы понять, как работают биржи, нужно разобраться с биржевыми заявками и правилами их обработки брокером. В статье мы разберем типы ордеров, особенности их исполнения на бирже и накладываемые торговой моделью ограничения. Если вам любопытно, что значат аббревиатуры DAY, G...

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

(S)SDLC, или Как сделать разработку безопаснее. Часть 3 Этой статьей мы завершим небольшой цикл о построении процесса безопасной разработки на основе SAST — статического анализа кода на безопасность. В первой части мы разобрали основные вопросы, возникающие при внедрении SAST в процесс разработки. Во второй части остановились на ...

Ленивая реализация обхода дерева дочерних элементов класса QObject Введение В статье описана ленивая реализация обхода дерева на языке C++ с использованием сопрограмм и диапазонов на примере улучшения интерфейса работы с дочерними элементами класса QObject из фреймворка Qt. Подробно рассмотрено создание пользовательского представления для р...

Numl – Альтернативный язык разметки и стилизации для веб Всем привет! Меня зовут Андрей, я профессионально разрабатываю веб-интерфейсы уже больше 11 лет и последний год развиваю проект Numl, который можно назвать языком разметки и стилизации для веб. В этой статье я расскажу, как в попытке перебороть ряд особенностей CSS и упрости...

Заметки о разработке МРРТ контроллера Приветствую! Ранее я уже рассказывал в статье о своем проекте контроллера заряда для небольшой СЭС с алгоритмом поиска ТММ. Сей проект вялотекущий из-за нехватки времени и порой отcутствия настроения, но все же он развивается. С момент последней статьи я сделал еще 2 ревизии...

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

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

В Украине стартовал социальный проект «Google for Life» Google Украина представил новый проект «Google for Life», цель которого – мотивировать украинских пользователей к изучению и использованию современных технологий в повседневной жизни. Чтобы продемонстрировать, как Google влияет на жизнь людей, в рамках проекта представлена с...

TDD для микроконтроллеров. Часть 3: Запуск на железе TDD для микроконтроллеров. Часть 1: Первый полет TDD для микроконтроллеров. Часть 2: Как шпионы избавляют от зависимостей TDD для микроконтроллеров. Часть 3: Запуск на железе В первой части нашего цикла статей мы начали освещать тему эффективности применения методологии TDD...

Разложение монолита: Декомпозиция БД (часть 1) Эта статья является конспектом книги «От монолита к микросервисам». Материал статьи посвящен декомпозиции БД во время процесса разложения монолита на микросервисы.В предыдущей статье рассмотрели способы извлечения функциональности из монолита в микрослужбы. Однако, что делат...

Опыт конвертирования кода C# в код Rust Постановка задачи Код на языке C# нужно перевести в код на Rust. Точнее, требуется такая процедура перевода (разработка продолжается на C#), чтобы в любой момент можно было получить работающий код на Rust. Эту задачу я решал для языков Java, Python, JavaScript и PHP, написав...

[Перевод] Пишем интерпретатор BASIC в стиле 80-х В течение нескольких лет я работала над личным проектом создания (а на самом деле исследования) «фальшивого эмулятора», то есть написанного на JavaScript эмулятора никогда не существовавшего компьютера. Эта машина должна была стать данью памяти восьми- и шестнадцатибитным ...

[Из песочницы] Java простое веб-приложения. Логин и регистрация Всем доброго времени суток. Эта статья рассчитана для новичков в мире Web и Java. Мы рассмотрим стандартную архитектуру веб-приложения и сделаем небольшой проект с нуля. Будем использовать Spring (Огромный фреймворк для веба), но по минимуму. Если не иметь предыдущего опыта ...

Позиция Mail.ru Group по развитию opensource в России Считаем важным сегодня сформулировать позицию компании по развитию открытого исходного кода в России. Mail.ru Group — opensource-компания в своем ДНК. Мы уже много лет активно развиваем opensource-проекты — и силами отдельных разработчиков-энтузиастов, и целыми командами вну...

[Перевод] Архитектурный шаблон MVI в Kotlin Multipaltform, часть 1 Около года назад я заинтересовался новой технологией Kotlin Multiplatform. Она позволяет писать общий код и компилировать его под разные платформы, имея при этом доступ к их API. С тех пор я активно экспериментирую в этой области и продвигаю этот инструмент в нашей компани...

[Из песочницы] Наука о пользовательском опыте. Использование когнитивных искажений в разработке качественных продуктов Содержание Введение. О чем эта статья Цели и дисклеймеры Часть 1. Хороший продукт Часть 2. Пользовательский опыт (UX). Что это? Часть 3. Архитектура выбора Часть 4. Архитектор выбора Часть 5. Когнитивные искажения и Пользовательский опыт Ссылка на полную версию UX CORE (105...

[Из песочницы] Прикручиваем ActiveDirectory авторизацию к Kubernetes c помощью Keycloak Данная статья написана с целью расширить уже существующую, но рассказывает про особенности связки именно с Microsoft ActiveDirectory, а так же дополняет ее. В этой статье я расскажу как установить и настроить: Keycloak — это проект с открытым исходным кодом. Который обес...

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

[Из песочницы] OSCD: Threat Detection Sprint #1, итоги Open Security Collaborative Development — это открытая международная инициатива специалистов по компьютерной безопасности, направленная на решение общих проблем, распространение знаний и улучшение компьютерной безопасности в целом. Она была создана осенью 2019 года дружеств...

Эксперимент VTrade. Часть 3: Книга ордеров. Обработка и хранение торговой информации В прошлой статье цикла мы познакомились с типами биржевых заявок. Сегодня мы разберем книгу ордеров, обработку заявок и вопросы связанные с организацией хранения торговой информации. Читать дальше →

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

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

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

Как сделать базовый тест-класс для Selenium тестов и выполнить инициализацию через JUnit RuleChain Этой статьей мы продолжаем серию публикаций о том, как мы автоматизировали в одном из крупных проектов ЛАНИТ процесс ручного тестирования (далее – автотесты) большой информационной системы (далее – Системы) и что у нас из этого вышло. Как эффективно организовать иерархию кл...

Почему я сделал личный проект учёта трат на Git+JS Здравствуйте, господа, в этой статье я поделюсь опытом создания приложения учёта трат, в частности отвечу на следующие вопросы: Зачем мне приложение учёта трат? Почему это личный проект? Почему проект на Git+JS? 1. Зачем мне приложение учёта трат? Как и многие другие люди...

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

Open source – наше всё События последних дней заставляют нас заявить позицию по новостям вокруг проекта Nginx. Мы в Яндексе считаем, что современный интернет невозможен без культуры open source и людей, которые инвестируют свое время в разработку программ с открытым кодом. Судите сами: мы все испо...

Управление LCD и OLED дисплеями на AVR-ассемблере Сразу предупреждаю, что не собираюсь разводить холивары насчет преимуществ AVR-ассемблера перед С/Arduino, или даже перед BASCOM-AVR и MikroPascal for AVR — каждый инструмент уместен в своей области. У ассемблерного подхода в ряде случаев имеются свои преимущества — в основн...

[Перевод] Flutter. Весеннее обновление 2020 Привет! Меня зовут Евгений Сатуров, я Flutter-разработчик Surf и основатель Flutter Dev Podcast. Ниже перевод статьи Tim Sneath и Patrick Sosinski с моими комментариями. Полмиллиона разработчиков, 50 тысяч приложений, взрывной рост и обновлённый релизный цикл. Последние м...

В России предложили создать аналог GitHub за ₽2 млрд на случай отключения Более 2 млрд руб. в федеральном проекте "Искусственный интеллект" предложено выделить на создание хранилища открытого кода. Расходы должны оправдаться в случае отключения России от принадлежащего Microsoft хранилища GitHub Министерство экономического развития (МЭР) предложи...

Разработка измерительного прибора ИРИС Приветствую, сообщество Хабра. Недавно наша компания выпустила на рынок контрольно-измерительный прибор ИРИС. Являясь главным программистом этого проекта, хочу рассказать вам про разработку прошивки прибора (По оценке руководителя проекта прошивка составляет не более 30% от...

[Из песочницы] Понимание итераторов в Python Python — особенный язык в плане итераций и их реализации, в этой статье мы подробно разберём устройство итерируемых объектов и пресловутого цикла for. Особенности, с которыми вы часто можете столкнуться в повседневной деятельности 1. Использование генератора дважды >>&...

WSL эксперименты. Часть 1 Привет, хабр! В октябре OTUS запускает новый поток курса «Безопасность Linux». В преддверии старта курса делимся с вами статьёй, которую написал один из наших преподавателей — Александр Колесников. В 2016 году компания Microsoft представила IT сообществу новую технологи...

.NET nanoFramework — платформа для разработки приложений на C# для микроконтроллеров .NET nanoFramework — это бесплатная платформа с открытым исходным кодом, основанная на .NET и предназначена для малых встраиваемых устройств, микроконтроллеров. С ее помощью можно разрабатывать различные устройства для Интернета вещей, носимые устройства, научные приборы, ...

[Перевод] Автономные автомобили на open source (Статья Forbes 2019 года ) Брэд Тэмплтон с ранней версией Стэнфордского робокара. Об авторе: Брэд Тэмплтон — инженер-программист, евангелист робоавтомобилей с 2007 года, работал над Гуглокаром в его ранние годы. Основатель ClariNet, почетный председатель Electronic Fronti...

TDD в микроконтроллерах. Часть 2: Как шпионы избавляют от зависимостей В предыдущей статье мы начали освещать тему эффективности применения методологии TDD для микроконтроллеров (далее – МК) на примере разработки прошивки для STM32. Мы выполнили следующее: Определили цель и инструменты разработки. Настроили IDE и фреймворк для написания тесто...

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

[Перевод] Использование VueJS вместе с Django Перевод статьи подготовлен в преддверии старта курса «Web-разработчик на Python». Введение Сейчас я работаю над очень интересным проектом. И в нем все сложно, потому что сам проект очень масштабный, а я занимаюсь им один в свободное время, при этом работая полный рабочий ...

[Перевод] Проект ELISA: Linux в Safety-Critical системах Представляем вам перевод пресс-релиза (февраль 2019) в котором анонсируется проект ELISA, который позволит включать Linux в системы, для которых критически важна безопасность. За наводку спасибо lingvo Arm, BMW Car IT GmbH, KUKA, Linutronix и Toyota присоединяются к прое...

Что такое Windows PowerShell и с чем его едят? Часть 3: передача параметров в скрипты и функции, создание командлетов Во второй части цикла рассматривались основы языка программирования PowerShell, а сейчас стоит разобраться с использованием написанного на нем кода для задач администрирования. Самый очевидный способ это сделать — запустить сценарий. Кроме него существует возможность созда...

[Перевод] Новости из мира OpenStreetMap № 500 (11.02.2020-17.02.2020) Wochennotiz / weeklyOSM – Issue # 500 | Thank you О нас Вышел 500-й выпуск нашего еженедельного новостного проекта. Всё началось 23 июля 2010 года с небольшой заметки, в которой содержалось всего 14 новостей. Редакция проекта благодарит всех читателей, которые поддержива...

ChaiScript — скриптовый язык для C++ Когда возникает потребность внедрить скриптовый язык в проект на C++, первым делом большинство людей вспоминает Lua. В этой статье его не будет, я расскажу о другом, не менее удобном и легком в освоении языке под названием ChaiScript. Читать дальше →

[Перевод] 7 способов повысить эффективность автоматизации тестирования в Agile разработке Перевод статьи подготовлен в преддверии старта курса «Java QA Engineer». Разработка программного обеспечения — процесс сложный. Еще на заре разработки программного обеспечения как дисциплины архитекторы поняли, что без структуры управления этот процесс превращается в хао...

Понимание (всех) «модульных» форматов и инструментов JavaScript Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «Understanding (all) JavaScript module formats and tools» автора Dixin. При создании приложения часто возникает желание разделить код на части, логические или функциональные блоки (модули). Однако ...

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

ПАО «Городские инновационные технологии» и фонд Гранта Агасьяна проведут конкурс «Лидеры ЖКХ 2020» Цель проекта – вовлечь в сферу ЖКХ талантливых молодых управленцев и предпринимателей и помочь им реализовать собственные проекты на благо населения. В конкурсе могут принимать участие лица в возрасте до 40 лет из любого региона РФ, заинтересованные в создании собственной с...

Обзор некоммерческого проекта MyVPN с открытым исходным кодом Приложение MyVPN с открытым исходным кодом позволяет автоматизировать управление виртуальными частными сетями. Для его использования не потребуются навыки системного администрирования. Читать дальше →

[Перевод] Руководство Google по стилю в C++. Часть 10 Часть 1. Вступление … Часть 9. Комментарии Часть 10. Форматирование … Эта статья является переводом части руководства Google по стилю в C++ на русский язык. Исходная статья (fork на github), обновляемый перевод. Читать дальше →

В Беларуси появится мобильное приложение, которое поможет при пересечении границы <strong>Правительство Беларуси одобрило два проекта международной технической помощи, включая разработку мобильного приложения для помощи в пересечении государственной границы, сообщает Национальный правовой интернет-портал.</strong><br /&a...

[Перевод] Легко добавляйте, удаляйте и переименовывайте файлы и цели в проектах CMake Работать с проектами CMake в Visual Studio 2019 16.5 Preview 2 стало проще, чем когда-либо. Теперь вы можете добавлять, удалять и переименовывать исходные файлы и цели в ваших проектах CMake из IDE, не редактируя сценарии CMake вручную. При добавлении или удалении файлов с п...

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

Как переиспользовать код с бандлами Symfony 5? Часть 3. Интеграция бандла с хостом: шаблоны, стили, JS Поговорим о том, как прекратить копипастить между проектами и вынести код в переиспользуемый подключаемый бандл Symfony 5. Серия статей, обобщающих мой опыт работы с бандлами, проведет на практике от создания минимального бандла и рефакторинга демо-приложения, до тестов и ре...

[Перевод] Создание микросервиса на Quarkus, Kotlin и Gradle Введение В предыдущей статье было приведено краткое описание процесса создания микросервиса на современных JVM фреймворках, а также их сравнение. В этой статье будет более детально рассмотрен недавно вышедший Quarkus на примере создания микросервиса с использованием упомяну...

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

Небольшой вклад в борьбе Avalonia UI против зоопарка платформ Эта статья – результат проверки проекта Avalonia UI с помощью статического анализатора PVS-Studio. Avalonia UI – это кроссплатформенная платформа пользовательского интерфейса на основе XAML, с открытым исходным кодом. Это один из технологически значимых проектов в истории ....

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

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

Первая смерть на реактивном ранце 4 декабря 2019 года насмерть разбился австралийский пилот Kelman Riches. Эта первая в истории человечества смерть на реактивном ранце/ховерборде. BSBD. Пилот упал с высоты 6-9 метров на фестивале в Пуэрто-Рико в парке аттракционов. Подробностей пока нет, есть только ново...

Алексей Башкеев станет руководителем платформы Яндекс.Облако Ян Лещинский, отвечавший за развитие Облака со старта проекта в 2017 году, вернётся в США к семье и продолжит консультировать компанию ближайшие несколько месяцев. Операционным директором Яндекс.Облака остаётся Олег Коверзнев, он продолжит отвечать за развитие бизнеса Облака...

Краткий гайд по использованию GDB В этом коротком туториале мы рассмотрим базовые приёмы работы с GDB, а также посмотрим как можно (и нужно) подготавливать файлы к отладке для GDB. GDB — переносимый отладчик проекта GNU, который работает на многих UNIX-подобных системах и умеет производить отладку многих яз...

LG начала разработку технологий для сетей 6G Для разработки технологий для беспроводной системы связи следующего поколения LG Electronics наладила партнерские отношения с Корейским научно-исследовательским институтом стандартов (KRISS) и с Корейским институтом передовых технологий (KAIST). Участники проекта будут иссле...

[Из песочницы] Пишем автотест с использованием Selenium Webdriver, Java 8 и паттерна Page Object В этой статье рассматривается создание достаточного простого автотеста. Статья будет полезна начинающим автоматизаторам. Материал изложен максимально доступно, однако, будет значительно проще понять о чем здесь идет речь, если Вы будете иметь хотя бы минимальные представлени...

Книга «Экстремальный Cи. Параллелизм, ООП и продвинутые возможности» Привет, Хаброжители! Для того чтобы овладеть языком C, знания одного лишь синтаксиса недостаточно. Специалист в области разработки должен обладать четким, научным пониманием принципов и методик. Книга «Экстремальный Cи» научит вас пользоваться продвинутыми низкоуровневыми в...

Обучение модели естественного языка с BERT и Tensorflow Рис. 1. Фразы и предложения в векторном представлении модели естественного языка Обработка естественного языка (Natural Language Processing, NLP) – это область вычислительной лингвистики, ориентированная на разработку машин, способных понимать человеческие языки. Разработк...

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

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

Автоматизация тестирования ПО QIWI-терминалов Привет, Хабр! Сегодня поговорим на специфическую тему: автоматизация тестирования ПО для терминалов самообслуживания QIWI. В теме автоматизации тестирования есть области, которые исхожены вдоль и поперек несколько раз, например, тестирование веб-сервисов. Для таких област...

Закон Конвея и его важность при создании команд Закон Конвея (Conway’s Law) имеет большое значение для понимания тех сил, что возникают при формировании команд, и того результата, который они могут оказать на команды в условиях длительного и автономного, неуправляемого и некорректируемого воздействия. И, как следствие, дл...

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

Unity + git = дружба: часть 1 джентльменский набор Система контроля версий git уже давно стала стандартом де-факто в мире разработки, но для большинства разработчиков на Unity не секрет, что существует ряд трудностей связанных с особенностями Unity, которые мешают эффективно использовать ее совместно с git. Вот список типи...

16 советов по разработке для Android на языке Kotlin. Часть 1 Перед прочтением этих советов вам желательно ознакомиться с документацией Kotlin и самостоятельно изучить язык на сайте try.kotlinlang.org. Поскольку эти советы направлены именно на использование Kotlin в контексте разработки под Android, у вас также должен быть опыт работ...

Huawei представила альтернативу Windows с Android. И это не Harmony OS Компания Huawei представила общественности ещё одну операционную систему — openEuler. Это уже вторая попытка компании за последнее время выйти за пределы Android и Windows с собственными разработками.  Первой стала Harmony OS, на основе которой уже на...

Статический генератор сайтов Hugo. Фронтенд реалии В 2020 практически весь мир фронтенда заполонили Javascript фреймворки. Только и слышно о React, Angular, Vue и иногда в далеких просторах можно услышать тихий шепот «Svelte». Разработчики умело используют эти инструменты для создания крутых продуктов, но есть и «динозавры» ...

[Из песочницы] Критерии оценки российских BI-систем Я уже много лет возглавляю компанию, являющуюся одним из лидеров по внедрению BI-систем в России и регулярно входящую в топ-списки аналитиков по объему бизнеса в области BI. За время работы я участвовал во внедрении BI-систем в компаниях из различных областей экономики – от ...

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

[Перевод] Как технический долг убивает ваши проекты Каждый проект требует жертвы. Главное, чтобы не слишком большой. Команда Mail.Ru Cloud Solutions перевела статью Алекса Стейвли про минусы технического долга и его способность уничтожить даже самый успешный проект. Предупреждение автора: в этой статье не так много практики...

В России запущен первый проект в области квантовой химии Компания Nissan и Проект по квантовому машинному обучению Российского квантового центра (РКЦ) объявили о запуске совместного научно-технологического проекта. Проект относится к области применения квантовых вычислений для моделирования химических соединений. Партнеры рас...

Google представляет социальный проект “Google For Life” Сегодня мы рады представить проект “Google For Life”, цель которого мотивировать украинских пользователей к изучению и использованию современных технологий в повседневной жизни.

Сниппет, расширение для VSCode и CLI. Часть 1 Доброго времени суток, друзья! В процессе разработки Современного стартового HTML-шаблона я задумался о расширении возможностей его использования. На тот момент варианты его применения ограничивались клонированием репозитория и скачиванием архива. Так появились HTML-снипп...

Развитие интернет-технологий в России предложено отдать под контроль государства Об этом пишет “КоммерсантЪ ” со ссылкой на источник, знакомый с текстом документа. Разработку документа подтвердил еще один собеседник на IT-рынке. В "дорожной карте" поясняется, что подобные технологии могут существенно влиять на экономическое развитие...

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

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

А что, если без Python? Julia для машинного обучения и вообще Мы всегда хотим писать код быстро, но за это приходится платить. На обычных высокоуровневых гибких языках можно быстро разрабатывать программы, но после запуска они работают медленно. Например, чудовищно медленно cчитать что-то тяжелое на чистом Python. Си-подобные языки раб...

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

Современный Web-UI для SVN в 2020 году cSvn — это web-интерфейс к Subversion репозиториям. Основу cSvn представляет CGI-скрипт написанный на языке С. В мае 2020 года был опубликован релиз очередной версии Apache Subversion 1.14.0. В свете этого события, был создан новый, современный web-интерфейс для просмотра S...

Новая серверная для ФГАНУ ЦИТиС от DataDome готова к эксплуатации DataDome завершил проект по реорганизации пространства и созданию серверной для ФГАНУ «Центр информационных технологий и систем органов исполнительной власти». Новая серверная необходима для развития научных проектов организации. В ноябре 2019 года интегратор инженерных сист...

[Перевод] Canary деплой с Jenkins-X, Istio и Flagger Доброго времени суток, читатель! Вот мы и подошли к заключительной части цикла статей о Канареечных релизах в Kubernetes и методах их реализации. Желаю приятного чтения и надеюсь, что данный цикл был для вас полезным. Использование решения Jenkins X для выполнения Canary де...

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

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

[Перевод] Провал ERP проекта (Liqui Moly, Отто и им подобным посвящается) Привет, Хабр! После того, как несколько моих коллег независимо друг от друга прислали линк к этой статье, мне подумалось, что, возможно, она будет полезна и для тех, кто не говорит по-немецки. Посему предлагаю Вашему вниманию перевод статьи из немецкой версии журнала CIO от...

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

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

Обзор и тестирование 27″ WQHD-монитора MSI Optix MAG271CQR Современные игровые мониторы, в своем большинстве, основаны на двух типа матриц: IPS и VA. Каждая из технологий имеет свои слабые и сильные стороны в сравнении с оппонентами. Так IPS отличаются более широкими углами...

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

[Из песочницы] 3 года программирования вслепую. Часть 1 Всем доброго времени суток! Хочу поделиться своим опытом из разряда «Войти в IT». Тем более, что он происходил в полностью невизуальном режиме. О незрячих людях в нашем обществе знают мало, а о незрячих программистах еще меньше. И эта статья предлагает проследить за тем, как...

[Перевод] Thanos — масштабируемый Prometheus Перевод статьи подготовлен специально для студентов курса «DevOps практики и инструменты». Фабиан Рейнарц (Fabian Reinartz) — разработчик программного обеспечения, фанат Go и любитель решать сложные задачи. Также он мэйнтейнер Prometheus и соучредитель Kubernetes SIG instr...

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

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

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

16 советов по разработке для андроид на языке Kotlin. Часть 2 Всем привет. В преддверии старта базового курса по Android-разработке, продолжаем делиться полезным материалом. Перед прочтением этих советов вам желательно ознакомиться с документацией Kotlin и самостоятельно изучить язык на сайте try.kotlinlang.org. Поскольку эти советы...

1. Group-IB. Комплексная защита сети. Архитектура TDS Добрый день, коллеги! Сегодня начинаем новый цикл статей, посвященный решениям информационной безопасности от компании Group-IB. Компания работает на рынке информационной безопасности уже более 17 лет, и за это время обросла весьма существенными компетенциями, выполняя про...

Книга «C++ для профи» Привет, Хаброжители! С++ — популярный язык для создания ПО. В руках увлеченного программиста С++ становится прекрасным инструментом для создания лаконичного, эффективного и читаемого кода, которым можно гордиться. «C++ для профи» адресован программистам среднего и продвину...

Microsoft полностью перепишет часть Windows на своем новом языке программирования Как пишет CNews со ссылкой на Zdnet, новый язык базируется на набирающем популярность Rust, развитием которого занимается компания Mozilla, разработчик известного браузера Firefox. Проект получил название Verona и, по данным издания, ключевое его отличие от Rust заключается ...

Курсы специалистов по управлению проектами от академии BELHARD в Минске Курсы Project Management — это реальная возможность освоить непростую специализацию руководителя IT-проектов, а также существенно улучшить свою квалификацию тем, кто уже работает в подобных направлениях. Академия BELHARD предлагает в...

[Перевод] Пол Грэм: «Краткость = сила» На HackerNews сегодня подняли обсуждение статьи Пола Грэма 2002 года и мы решили воскресить её перевод из небытия. «The quantity of meaning compressed into a small space by algebraic signs, is another circumstance that facilitates the reasonings we are accustomed to carry...

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

[Перевод] Понимание CSS Grid: Создание Grid-контейнера Перевод «Understanding CSS Grid: Creating A Grid Container» Рейчел Эндрю Хотя технология CSS Grid стала поддерживаться некоторыми браузерами еще в 2017 году, у многих разработчиков пока не было возможности использовать её в своих проектах. Технология CSS Grid привносит множ...

[Из песочницы] Все о проекте спутниковый интернет Starlink. Часть 1 Проект StarLink компании SpaceX американского миллиардера и энтузиаста космоса Илона Маска хотя и появился достаточно давно, но стал широко обсуждаться в СМИ полтора года назад. Тема спутниковой связи является весьма сложной, так как объединяет в себе не только технические...

Ошибки, которые погубят проект любой сложности. Опыт менеджеров Redmadrobot Мы, электрические, запускаем проекты с 2008 года, и за 11 лет сформировали сильную команду робоменеджеров. Прокачивать железных помогают боевые задачи и одна из самых сложных — управлять проектом. Ситуации, при которых появляется необходимость взять на себя обязанности PM ...

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

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

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

Правила своевременного приготовления вкусного программного обеспечения. Часть 1: границы возможностей Ранее в статье «JIRA как средство от бессонницы и нервных срывов» был предложен вариант применения JIRA для управления проектом по разработке программного обеспечения в интересах крупного государственного заказчика. Однако неосторожное обращение со средствами автоматизации у...

JavaScript Hiring Week: оффер и welcome-бонус за 24 часа До 19 марта отправь заявку на Hiring Week и получи оффер без резюме и тестового задания! Участвуют программисты из всех городов России - выбор между удаленкой и релокацией за тобой. Набираем команду frontend и backend разработчиков в проект по созданию медицинских веб-порт...

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

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

Creality 3D помогает индийской команде Anveshak ускорить производство исследовательской машины Mars      Недавно наши партнёры Creality 3D - крупнейшая в мире компания по производству 3D-принтеров - достигли дружественного соглашения с индийской командой Anveshak и помогли ей создать исследовательский планетоход Mars, предоставив команде инновационную техническую поддержку...

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

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

Проброс USB-портов из Windows 10 для удалённой работы Когда человек много лет рыл бункер и запасал там продукты, он должен испытывать глубокое моральное удовлетворение, если бункер понадобился. Он будет довольный заявлять: «А я говори-и-и-ил!» То же касается и того, кто делал запасы продуктов в кладовой, когда все закупались в ...

Опыт создания web-приложения с Pony ORM Привет, Хабр! Недавно передо мной встала задача написать на Python web-приложение для разделения счёта в ресторане между участниками трапезы. Так как нужна DB для хранения данных о заказах и пользователях, встал вопрос выбора ORM для работы с базой. Разработка велась на Flas...

[Перевод] Как корпоративные команды разработчиков используют GitLab и Mattermost ChatOps для ускорения разработки И снова здравствуйте! В феврале OTUS запускает новый курс «CI/CD на AWS, Azure и Gitlab». В преддверии старта курса подготовили перевод полезного материала. Полноценный набор DevOps инструментов, мессенджер с открытым исходным кодом и ChatOps – как тут не влюбиться? Нико...

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

Kotlin: язык программирования как продукт Язык программирования — это тоже продукт. Он помогает разработчикам выражать свои идеи так, чтобы их мог интерпретировать компьютер. Может показаться, что развивать язык — это брать последние достижения теории языков программирования, реализовывать их и из года в год выкатыв...

Новый год, новый браузер: Microsoft Edge вышел из стадии предварительной оценки и теперь доступен для загрузки Чуть более года назад мы объявили о намерении перестроить Microsoft Edge на основе проекта с открытым исходным кодом Chromium. Это было нужно для того, чтобы улучшить совместимость для всех пользователей, уменьшить фрагментацию для веб-разработчиков и установить партнерски...

Новая эра веб-разработки или «всё уже есть» Ты никогда не решишь проблему, если будешь думать так же, как те, кто ее создал. Альберт Эйнштейн В далеком 1989 году британский ученый Тим Бернерс-Ли создал системы обмена документами Enquire, которая и стала прототипом глобальной сети интернет. Где были им представлены ря...

[Перевод] Open Source Guides: Запуск проекта с открытым исходником Предисловие переводчика Пару месяцев назад на Гитхабе случайно наткнулся на ссылку «Open source guides» и не мог оторваться. Где-то за неделю я внимательно прочитал все 10 разделов. Конечно, я и раньше знал про open source: читал разные статьи (например, «Понять Open Sourc...

Современный код для выполнения HTTP запросов в Swift 5 с помощью Combine и применение их в SwiftUI. Часть 1 Выполнение HTTP запросов — это один из самых важных навыков, которые необходимо получить при разработке iOS приложений. В более ранних версиях Swift (до версии 5) вне зависимости от того, формировали ли вы эти запросы «с нуля» или с использование известного фреймворка Alam...

Видео лекций Computer Science клуба Computer Science клуб — это открытые лекции по компьютерным наукам в Санкт-Петербургском отделении Математического института РАН. Филиалы CS клуба действуют в Новосибирске и Казани. Основная цель клуба — рассказывать о современном положением дел и знакомить с открытыми зада...

[Перевод] Опенсорсные инструменты и пакеты для работы с HTTP API Мы продолжаем серию статей о создании HTTP API с помощью .NET 5. В предыдущей статье мы рассмотрели создание обнаруживаемых HTTP API с помощью ASP.NET Core 5 Web API. В этой статье мы рассмотрим пакеты и инструменты для работы с HTTP API с открытым исходным кодом. Ну что ж, ...

VPS на Linux с графическим интерфейсом: запускаем сервер X2Go на Ubuntu 18.04 Настройку VNC и RDP на виртуальном сервере мы уже освоили, осталось изучить еще один вариант подключения к виртуальному рабочему столу Linux. Возможности созданного компанией NoMachine протокола NX достаточно интересны, к тому же он хорошо работает через медленные каналы. Ф...

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

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

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

Ubisoft присвоила AAAA-статус четырём своим играм, включая Beyond Good & Evil 2 и Skull & Bones Пользователь Twitter под псевдонимом Timur222 обратил внимание, что в резюме некоторых сотрудников Ubisoft на сайте LinkedIn сразу четырём готовящимся играм издательства приписывается статус AAAA. Два проекта из AAAA-квартета французского издательства публике уже известны — ...

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

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

Amazon, Apple и Google занялись разработкой открытых стандартов для устройств умного дома Цель состоит в том, чтобы предоставить покупателям более широкий выбор, упростить разработку устройств для производителей оборудования, а также повысить совместимость аппаратов между собой, с мобильными приложениями, облачными сервисами и голосовыми помощниками Siri, Alexa и...

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

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

Создание Python-обвязки для библиотек, написанных на C/C++, с помощью SIP. Часть 1 Иногда во время работы над проектом на языке Python возникает желание использовать библиотеку, которая написана не на Python, а, например, на C или C++. Причины для этого могут быть разные Во-первых, Python — язык замечательный, но в некоторых ситуациях недостаточно быстрый....

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

[Перевод] Создание пайплайнов CI с помощью Tekton (внутри Kubernetes). Часть 1/2 В этой статье мы собираемся создать пайплайн непрерывной интеграции (CI) с Tekton, фреймворком с открытым исходным кодом для создания конвейеров CI / CD в Kubernetes. Мы собираемся подготовить локальный кластер Kubernetes через kind и установить на нем Tekton. После этого мы...

Самоучитель по WinCC OA. Часть 1. Создание проекта и модуль para Решил немного рассказать про систему визуализации от Siemens под названием WinCC OA. Эта SCADA на рынке России распространена гораздо меньше классических версий WinCC (и tia-портальных тоже), знаний по ней в открытом доступе достаточно мало, знаниями делятся неохотно. В ряде...

Топ 10 ошибок в проектах Java за 2019 год 2019 год подходит к концу, и команда PVS-Studio подводит итоги уходящего года. В начале 2019 года мы расширили возможности анализатора, поддержав язык Java. Поэтому список наших публикаций про проверку открытых проектов пополнился обзорами Java проектов. За год было найдено...

Знакомство с pg_probackup. Первая часть Привет, я Александр Никитин, главный системный администратор компании «БАРС Груп». В этой статье я хочу познакомить вас с инструментом pg_probackup. Pg_probackup — разработка компании Postgres Professional, которая помогает делать резервные копии СУБД PostgreSQL. В отличи...

Samsung Neon — когда «цифровой» человек неотличим от настоящего В конце прошлого года в Сети появилась информация о некоем интригующем проекте под названием Neon. Тогда предполагалось, что это новое детище Samsung, связанное с искусственным интеллектом. Пока Neon ещё не представили, но у нас есть возможность взглянуть на то,...

[Из песочницы] Создаем прогрессивный PWA интернет-магазин на Nuxt.js 2 пошаговое руководство Часть 1 Статья ориентированна на людей, которые уже имеют понимание работы Vue, на котором основан Nuxt, поэтому я буду заострять внимание только на специфических для Nuxt вещах. Но даже если вы не знакомы с ними, то статья даст общее представление как выглядит проект с PWA Nuxt. Вы...

Как вести технический блог? Я работаю в коммерческой разработке с 2011 года. С конца 2012 занимаюсь разработкой под iOS. Свою первую техническую статью я написал на Хабре в начале 2017 года про подход к локализации мобильных приложений. Потом выпустил ещё несколько статей по iOS-разработке на Хабре и...

JIRA: правила своевременного приготовления вкусного ПО. TLDR 2: управление требованиями Ранее в статье «JIRA: правила своевременного приготовления вкусного ПО. TLDR 1: границы возможностей» была  предпринята попытка унификации общих требований по применению JIRA в случае управления несколькими проектами по разработке заказного программного обеспечения в одном и...

[Из песочницы] Создание Discord-бота на Python. Часть 1 Версии, которые стоят у автора Версия Python: 3.8.2 Версия discord.py: 1.3.3 Приветствую, хабровчане и другие пользователи интернета. Сегодня я начну цикл статей, посвящённых созданию Discord-бота с помощь...

Фамильный вики-движок Bonsai: итоги 2019 года В начале прошлого года я рассказывал про проект Bonsai — движок для создания семейного вики и фотоальбома с открытым исходным кодом. С тех пор проект планомерно развивался. За год сделано несколько фич, благодаря которым движок теперь значительно проще попробовать в у себя и...

16 советов по разработке для андроид на языке Kotlin. Часть 3 И еще раз здравствуйте! В преддверии старта базового курса по Android-разработке, делимся заключительной частью статьи «16 советов по разработке для андроид на языке Kotlin». Читать первую часть Читать вторую часть LATEINIT Одной из ведущих особенностей Kotlin является е...

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

Сгореть и вернуться из пепла или люди-фениксы История о том как “сгорают” в распределенных командах. Мы, в ProtocoleOne, пишем разные проекты и почти все они Open Source. И так уж сложилось, что крутые специалисты живут в разных городах и даже странах и не только в столицах. Один из таких проектов — PaySuper. Проект дл...

[Из песочницы] Техническая документация в разработке ПО: кто, зачем, когда и как описывает проект Привет! Меня зовут Даша Григорьева, я технический писатель в компании 65apps. Мы занимаемся разработкой сложных мобильных решений, и моя задача — подготовка технической документации по проектам. Очень часто роль технического писателя бывает недооцененной в компании (не у ...

Mozilla запустила фонд для борьбы с COVID-19 Крупная компания Mozilla объявила о создании фонда, выделив по 50 тысяч долларов на технологичные проекты помогающих бороться с вирусом. Компания ищет технологичные проекты с открытым исходным кодом, борющихся с пандемией коронавируса COVID-19. На каждый проект Mozilla обе...

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

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

Xamarin.Forms. Личный опыт использования В статье речь пойдет о Xamarin.Forms на примере живого проекта. Кратко поговорим о том, что такое Xamarin.Forms, сравним с похожей технологией WPF, увидим, как достигается кроссплатформенность. Также разберём узкие места, с которыми мы столкнулись в процессе разработки, и до...

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

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

[Перевод] Что нового можно ожидать от Node.js в 2020 году? В 2019 году Node.js исполнилось 10 лет. Количество пакетов, доступных в реестре npm, пересекло отметку в 1 миллион. С каждым годом объём загрузок самой платформы Node.js увеличивается на 40%. Ещё одной важной вехой для Node.js стало то, что этот проект присоединился к OpenJS...

Вызов кода Go из Dart с использованием cgo и Dart FFI на простом примере Ключевой мотивацией для написания данной статьи является факт сильного недостатка информации (особенно в русскоязычном сообществе) по использованию cgo и Dart FFI для использования Go из языка Dart.Язык Dart, не смотря на свою возрастающую популярность, на данный момент до с...

[Перевод] Пишем приложение на Flutter в связке с Redux Привет всем! В этой статье я хотел бы показать вам, как создать Flutter приложение, используя Redux. Если вы не знаете, что такое Flutter, то это — SDK с открытым исходным кодом для создания мобильных приложений от компании Google. Он используется для разработки приложений...

Путь из COBOL в Java: пишем транспилятор за сутки Приветствую, Дорогие Друзья. Продолжаем цикл статей, освещающий деятельность (бурную) нашей некоммерческой организации. Как и обещал — переходим от простого (логирование) к более сложному: метапрограммирование. Читать дальше →

Precursor — собери сам свое open-source мобильное устройство с криптографической защитой На днях представлен проект открытой программной платформы для создания мобильных устройств. Он получил название Precursor. По словам автора, это Arduino или Raspberry Pi для мобильной отрасли. На базе платформы можно собрать любой мобильный девайс. В отличие от тех же о...

[Из песочницы] Российский SCRUM. Бессмысленный и беспощадный Доброе время суток, уважаемый Хабр! Я программист «старой школы», с опытом работы более 20 лет. Участвовал в разработке многих проектов, большая часть из которых довольно известные и успешные. В некоторых проектах занимал руководящие должности, достиг неплохого уровня зарпл...

Пишем прошивку под TI cc2530 на Z-Stack 3.0 для Zigbee реле Sonoff BASICZBR3 с датчиком ds18b20 Предполагается, что читатель уже имеет начальные знания языка C, что-то знает о Zigbee, чипе cc2530, методах его прошивания и использования, а также знаком с такими проектами, как zigbee2mqtt. Если нет — подготовьтесь или сходите почитать на https://myzigbee.ru и https://w...

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

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

[Перевод] Kotlin vs Java И снова здравствуйте. В преддверии старта нового курса «Backend-разработка на Kotlin», мы подготовили для вас перевод статьи, в которой рассказывается о том, чем же Kotlin отличается от Java. «Kotlin – новый язык программирования, который заставит вас отказаться от Java»...

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

Как наладить юридически значимый электронный документооборот контрагентов России и Казахстана? Работы по расширению трансграничного пространства доверия на базе использования Сервиса валидации электронной подписи (СВЭП) и услуг Доверенной третьей стороны (ДТС) активно продолжаются. На этот раз мы поговорим о пилотном проекте в рамках которого создан сервис по проверке...

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

Как настроить SSH-Jump Server Для работы с облачной инфраструктурой рекомендуется создавать SSH Jumpstation. Это позволяет повысить безопасность и удобство администрирования серверов. В этой статье мы расскажем, как настроить единую точку входа для подключений по ssh – SSH Jump Server. Для реализации выб...

Как сэкономить время и силы на внедрении стандартов безопасной разработки с помощью OWASP SAMM 5 марта 2020 года в офисе OZON прошёл очередной митап Московского отделения сообщества OWASP. Кажется, что получилось здорово, а краткий отчёт с материалами встречи был недавно опубликован на Хабре. В этом же посте представлен доклад oxdef. Продолжая серию экспресс-докладов...

[Перевод] Самодельный ноутбук ZedRipper на 16-и Z80 Статья с сайта безумного инженера-самодельщика Криса Фентона Встречайте ZedRipper – 16-ядерный зверюга, работающий на частоте 83 МГц на базе процессоров Z80 – настолько же портативный, насколько непрактичный. Это моя самая свежая на сегодня попытка собрать компьютер ради ...

Книга «Совершенный софт» Привет, Хаброжители! «Совершенный софт» — это проверенный, структурированный и высокотехнологичный подход к разработке программного обеспечения. Множество компаний уже используют идеи Лёве в сотнях систем, но раньше эти мысли нигде не публиковались. Методология Лёве объеди...

Власти предлагают создать в России аналог GitHub В Минэкономики подтвердили “Коммерсанту”, что идея российского аналога GitHub актуальна и является одним из "ключевых мероприятий для обеспечения условий для создания открытых библиотек ИИ" в рамках реализации национальной стратегии развития ИИ до 2030 ...

Прокачай свой CLI Сейчас многие фреймворки имеют в своем арсенале CLI (Command Line Interface) и ангуляр – не исключение. Впервые с CLI-утилитами я столкнулся, когда пробовал EmberJS и тогда мне это показалось очень удобным инструментом, который довольно сильно экономил мое время. Но, к сожал...

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

Виртуальная АТС. Часть 3: Переводим Asterisk на PjSIP без лишних телодвижений В первой и второй частях цикла статей мы разобрались с установкой IP-АТС (IP-PBX) на работающий под управлением Ubuntu VPS от RuVDS и настройкой основных функций с использованием канального драйвера chan_sip. Этот подход считается устаревшим, и в будущих версиях Asterisk п...

[Из песочницы] Golang + Phaser3 = MMORPG — Делаем базу для бесконечной генерации мира На русскоязычных ресурсах трудно найти подходящую информацию, возможно этот материал позволит вам понять некоторые основы для создания многопользовательских игр и не только. Я планирую сделать серию статей по созданию 2.5D MMORPG, то бишь в изометрии, наш мир будет разделе...

Пример реального проекта на F# В экосистеме Майкрософт F# занимает место экспериментального языка, удачные концепты из которого, впоследствии, переносятся в C#. Вместе с тем, во многом благодаря сообществу, фаршик стал реальной альтернативой для прикладных проектов.Пример такого проекта www.open-quiz.com ...

DeepPavlov: «Keras» для обработки естественного языка помогает отвечать на вопросы про COVID-2019 В такой области глубокого обучения, как обработка изображений, библиотека Keras играет ключевую роль, радикально упрощая обучение transfer learning и использование предварительно обученных моделей. В области обработки естественного языка (NLP) для решения достаточно сложных ...

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

[Перевод] Apache Spark 3.1: Spark on Kubernetes теперь общедоступен С выходом Apache Spark 3.1 в марте 2021-го проект Spark on Kubernetes официально перешел в статус общедоступного и готового к эксплуатации. Это стало результатом трехлетней работы быстрорастущего сообщества, участники которого помогали в разработке и внедрении (изначально п...

Господдержку проекта квантового компьютера Росатома урезать не будут Об этом сообщили РИА Новости в департаменте коммуникаций Росатома."Дорожная карта развития высокотехнологичной области "Квантовые вычисления" ранее прошла экспертные обсуждения и получила все необходимые согласования Минкомсвязи России и других ответственных ф...

Бывший глава CFTC возглавил проект по созданию цифрового доллара США на основе блокчейна Экс-председатель Комиссии по срочной биржевой торговле (CFTC) Кристофер Джанкарло планирует продвигать идею оцифровки доллара США при помощи технологии блокчейн, запустив с этой целью The Digital Dollar Project. В заявлении организации говорится, что запуск The Digital Dolla...

[Перевод] Юнит-тесты на Python: Быстрый старт Перевод статьи подготовлен специально для студентов курса «Python QA Engineer». Юнит-тестирование кода является неотъемлемой частью жизненного цикла разработки программного обеспечения. Юнит-тесты также формируют основу для проведения регрессионного тестирования, то есть о...

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

Вышел новый релиз «Python для браузеров», встречаем Brython 3.9 Разработчики проекта Brython Python выпустили новый релиз, Brython 3.9. Сам проект позиционируется, как «Python для браузера». Он основан на Python 3 и выполняется на стороне браузера, причем для разработки веб-скриптов вместо JavaScript используется Python. Код проекта ...

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

BlitzTeam о персональных исках со стороны кипрской группы Wargaming Компания Wargaming юридически преследует своих бывших сотрудников за работу над Open Source проектом (программным обеспечением с открытым исходным кодом), который она официально развивала до весны 2018 года. Wargaming подала персональные иски к своим бывшим сотрудникам, кото...

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

[Перевод] Почему нам нужен DevOps в сфере ML-данных Развертывание машинного обучения (machine learning, ML) в продакшн – задача нелегкая, а по факту, на порядок тяжелее развертывания обычного программного обеспечения. Как итог, большинство ML проектов так никогда и не увидят света — и продакшена — так как большинство органи...

[Перевод] REST API в Symfony (без FosRestBundle) с использованием JWT аутентификации. Часть 1 Перевод статьи подготовлен в преддверии старта курса «Symfony Framework». В первой части статьи мы рассмотрим самый простой способ реализации REST API в проекте Symfony без использования FosRestBundle. Во второй части, которую я опубликую следом, мы рассмотрим JWT аутентиф...

Что нового в TestMace часть 1. Облачная синхронизация, обновленный интерфейс и многое другое Всем привет! После долгого перерыва TestMace вновь вылезает из норы, чтобы поведать миру о новостях, связанных с проектом. Если кто забыл либо не читал статью о нас, TestMace — это IDE для работы с API. Наша тулза ставит целью покрыть весь спектр работ с существующим API, к...

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

[Перевод] Микросервисы со Spring Boot. Часть 4. Использование Ribbon для балансировки нагрузки Это часть 4 серии о микросервисных архитектурах, в которой мы сосредоточимся на использовании Ribbon для балансировки нагрузки. Это статья входит в серию статей «Микросервисы со Spring Boot»: Часть 1. Начало работы с архитектурой микросервисов Часть 2. Создание микросерви...

Минстрой разработал правила предоставления регионам субсидии на «Умный город» Речь идет о реализации ведомственного проекта Минстроя "Умный город" (национальный проект "Жильё и городская среда" и национальная программа "Цифровая экономика Российской Федерации").Проект, напомним, утверждён в ноябре 2018 года; из федерально...

[Перевод] Питонистический подход к циклам for: range() и enumerate() Автор заметки, перевод которой мы сегодня публикуем, хочет рассказать о некоторых особенностях использования циклов for в Python. Цикл for — это один из краеугольных камней программирования. С этими циклами будущие программисты знакомятся в самом начале учёбы и, после пер...

OpenToonz: снаружи и внутри Прошло уже почти четыре года с тех пор, как PVS-Studio поверял исходный код OpenToonz. Этот проект является очень мощным инструментом для создания двухмерной анимации. За время с последней проверки с его помощью были созданы такие мультипликационные произведения, как Мэри и...

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

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

Active Restore: С чего начать разработку в UEFI Всем привет. В рамках проекта от компании Acronis со студентами Университета Иннополис (подробнее о проекте мы уже описали это тут и тут) мы изучали последовательность загрузки операционной системы Windows. Появилась идея исполнять логику даже до загрузки самой ОС. Следовате...

[Перевод] Создание псевдотрёхмерной гоночной игры В детстве я редко ходил в залы аркадных автоматов, потому что особо в них не нуждался, ведь дома у меня были потрясающие игры для C64… но есть три аркадные игры, на которые у меня всегда находились деньги — Donkey Kong, Dragons Lair и Outrun… … и я очень любил Outrun — ско...

[Из песочницы] Что такое Flutter и почему вы должны изучать его в 2020 году Привет, Хабр! Представляю вашему вниманию перевод статьи: "What is Flutter and Why You Should Learn It in 2020" автора Gaël Thomas. Что такое Flutter? Flutter — бесплатный и открытый набор средств разработки мобильного пользовательского интерфейса, созданный компанией Google...

De-RISC создаст европейские процессоры RISC-V для космоса Космическая вычислительная техника сильно отличается от обычной: в таких аппаратах применяют микросхемы, хорошо защищённые от всевозможных излучений. По сложившейся традиции, в аэрокосмической сфере применяют, в основном, архитектуры PowerPC или SPARC. Но компании Cobham Gai...

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

Grafana+Zabbix: Визуализация работы производственной линии В этой статья я хочу поделиться опытом использования open source систем Zabbix и Grafana для визуализации работы производственных линий. Информация может быть полезна тем, кто ищет быстрый способ визуального отображения или аналитики собранных данных в проектах промышленной ...

Чеклисты заменяют регламенты? На работе мне приходилось внедрять проектное управление в одной большой и мягкой, в плане управления, компании. Я «ломал» старые и пытался запустить новые бизнес-процессы. Я писал регламенты, заводил людям оценки в мотивационные матрицы. Генеральный директор подписывал пр...

Разработчики FreeNAS и TureNAS собираются объединить оба продукта в общую систему FreeNAS - это бесплатная операционная система с открытым исходным кодом, предназначенная для сетевых устройств хранения (NAS). В течение большей части прошлого десятилетия проектом руководили сотрудники iXsystems, которая также выпустила корпоративную версию программного обе...

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

[Перевод] Swift Property Wrappers Если вы использовали SwiftUI, то наверняка обращали внимание на такие ключевые слова, как @ObservedObject, @EnvironmentObject, @FetchRequest и так далее. Property Wrappers (далее «обёртки свойств») — новая возможность языка Swift 5.1. Эта статья поможет вам понять, откуда же...

Архитектурный шаблон MVI в Kotlin Multiplatform, часть 2 Это вторая из трёх статей о применении архитектурного шаблона MVI в Kotlin Multiplatform. В первой статье мы вспомнили, что такое MVI, и применили его для написания общего для iOS и Android кода. Мы ввели простые абстракции, такие как Store и View, а также некоторые вспомо...

[Перевод] Что такое SDLC? Этапы, методология и процессы жизненного цикла программного обеспечения Цитируя автора книги Managing Information Technology Projects Джеймса Тейлора, «жизненный цикл проекта охватывает всю деятельность проекта». Задачей же разработки ПО является выполнение требований продукта. Если вы хотите научиться создавать и выпускать высококачественное ПО...

Представители Минцифры России и ФГБУ «ЦЭКИ» обсудили ход цифровизации госорганов Константин Гурзов рассказал, что Минцифры создает межведомственную рабочую группу, которая будет отслеживать проведение "облачного эксперимента". Эксперимент продлится до конца 2022 года. Участники рабочей группы сформулируют требования к облачной системе, определя...

Использование примесей (mixins) в Dart Несколько раз от коллег звучал вопрос о том, что не понятно, зачем вообще нужны mixin'ы (примеси) в языке Dart. Я решил посмотреть, что есть на просторах Интернета по этому вопросу. К великому огорчению в статьях, которые удалось найти в основном говорится о том, как использ...

[Из песочницы] Как не сдохнуть на проекте или 5 лайфхаков В моем опыте аналитика за почти 7 лет (хоть он и не очень большой на самом деле) было много разных интересных историй, но самый забавный момент — это когда я оказалась в патовом проекте, который нельзя было не сдать, но туда свалились все беды: и смена заказчика, и распредел...

Дополняя SQL. Часть 2. Оптимизация работы со строками и открытия файлов Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Что будет в этой статье? Это вторая статья в цикле о жизни разработчиков IDE для баз данных. Ее структура будет похожа на первую. Как и в первой я расскажу о проблемах с которыми мы сталкивались...

В России утверждены два первых ГОСТа по искусственному интеллекту Второй стандарт получил индекс ГОСТ Р 58777-2019. Он носит название "Воздушный транспорт. Аэропорты. Технические средства досмотра. Методика определения показателей качества распознавания незаконных вложений по теневым рентгеновским изображениям" и затрагивает проц...

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

Дефицит ИТ-специалистов ведет к замедлению развития Индустрии 4.0 Результаты указывают на повышение доступности индустриально интернета вещей. Этому способствует развитие коммуникационных технологий и повышение мощности краевых устройств. В ходе исследования “Accelerate Industrial” 83% компаний заявили о своих намерениях инв...

И снова про embedded: ищем баги в проекте Embox Embox – это кросс-платформенная мультизадачная операционная система реального времени для встраиваемых систем. Она рассчитана на работу в условиях невысоких вычислительных ресурсов и позволяет запускать Linux-приложения на микроконтроллерах без использования самого Linux. К...

[Из песочницы] Разбираемся с управлением памятью в современных языках программирования Привет, Хабр! Представляю вашему вниманию перевод статьи «Demystifying memory management in modern programming languages» за авторством Deepu K Sasidharan. В данной серии статей мне бы хотелось развеять завесу мистики над управлением памятью в программном обеспечении (далее...

Обновление процесса CI/CD: подготовка и планирование В 2020, наверняка, достаточно сложно найти проект в описании стека которого не было бы одного из следующих слов: IaC, микросервисы, kubernetes, docker, aws/azure/gcloud, блокчейн, ML, VR и так далее. И это здорово! Прогресс не стоит на месте. Мы растем, вместе с нами расту...

Масштабирование базы данных. Microsoft AlwaysOn Привет. Меня зовут Тигран Петросян, я ведущий инженер по технической поддержке Docsvision, и сегодня расскажу о применении технологии MS SQL AlwaysOn. Это вторая статья из мини-серии «Масштабируемость системы ECM на предприятии», в которой первая статья моего коллеги была по...

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

Российские разработчики ПО получат гранты РФРИТ Из средств субсидии на такую поддержку будет выделено 1,47 млрд рублей. Сумма гранта на проект составит от 10 млн рублей до 500 млн рублей при предоставлении софинансирования в объеме не менее 50% от общей сметы проекта.Грант является одним из элементов поддержки комплексной...

Создан самый быстрый искусственный объект на планете Специалисты из университета Пердью разработали уникальный способ создания самого быстрого объекта на планете Ученые установили рекорд самого быстровращающегося объекта, сделанного руками человека. Крошечное устройство способно делать более 300 миллиардов оборотов в минуту, д...

История создания домашнего облака. Часть 5. Актуализация 2019 – PHP 7.2, MariaDB 10.4 и Nextcloud 17 Два года назад я опубликовал цикл статей на тему создания веб-сервера на базе Debian 8 и запуске на нём сервиса Nextcloud 11. Через несколько месяцев появилось дополнение, содержащее «диффиренциальную» информацию по установке Nextcloud 13 на Debian 9. В конце 2018 года я про...

[Перевод] Конференция DEFCON 27. Взламываем полицию. Часть 1 Брифинг выступления: Билл Сверинджен (hevnsnt) уже несколько десятилетий является членом хакерского сообщества, что довольно странно, поскольку его профиль в Twitter указывает, что ему всего 23 года. По словам Билла, всю свою жизнь он посвятил пониманию того, как устроены в...

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

Binance добавила торговую пару рубль-USDT Популярная биткоин-биржа Binance добавила торговые пары с российским рублем и турецкой лирой. #Binance Adds ETH/TRY, XRP/TRY, USDT/TRY and USDT/RUB Trading Pairshttps://t.co/TlhaxBEOWs pic.twitter.com/al8syw2vc7 — Binance (@binance) December 25, 2019 Трейдинг в парах USDT/RU...

Open360: как мы начали с разработки модели премирования и сделали IT-систему для внутреннего HR TL;DR: рассказываю о задаче оценки вклада сотрудника в общий результат и новой open source системе проведения круговой оценки сотрудников, разработанной в нашей компании, на базе метода оценки 360 градусов. Здравствуйте, меня зовут Иван Кудрявцев — я технический директор и ...

Bitfinex названа наиболее ликвидной биржей на основании глубины книги ордеров Криптовалютная биржа Bitfinex предлагает наиболее ликвидные пары с биткоином и Ethereum, показал анализ глубины книги ордеров. С учетом XRP, наиболее глубокая ликвидность также отмечена на Coinbase, Kraken, Bitstamp и Binance, пишет аналитик The Block Ларри Чермак. Издание н...

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

Автоматизация задач администрирования API VMware vSphere с использованием Ansible В предыдущей статье мы рассмотрели взаимодействие с VMware с помощью Python. В этой же обсудим взаимодействие с VMware с помощью Ansible. Ansible — система управления конфигурациями, написанная на языке программирования Python с использованием декларативного языка разметки ...

Машинное обучение. Нейронные сети (часть 2): Моделирование OR; XOR с помощью TensorFlow.js Статья является продолжением цикла статей, посвященных машинному обучению с использованием библиотеки TensorFlow.JS, в предыдущей статье приведены общая теоретическая часть обучения простейшей нейронной сети, состоящей из одного нейрона: Машинное обучение. Нейронные сети (ча...

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

В Москве построят новый технопарк Частные инвесторы планируют открыть на территории более 40 производств и создать свыше трех тысяч новых рабочих мест. Об этом рассказал заместитель Мэра Москвы по вопросам экономической политики и имущественно-земельных отношений Владимир Ефимов. "Подобные проекты позво...

Открыта предрегистрация для MARVEL Future Revolution, что известно? MARVEL Future Revolution — это ролевая игра с открытым миром от Netmarble. Издатель занимается условно-бесплатными проектами с минимальным геймплеем и максимальным донатом. До середины мая об игре было мало информации, но всё поменялось — мы узнали, что Future Revolution вый...

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

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

Как справиться с декомпозицией задач и не перестараться Всем привет! Меня зовут Виктор, я системный аналитик в компании «Спортмастер». И сегодня я хотел бы поговорить о декомпозиции задач и передачи их в разработку. Любой объект состоит из частей, будь это автомобиль или программный продукт. И чтобы собрать любой из этих объекто...

Банк ДОМ.РФ внедрил CRM-систему Terrasoft Creatio Главной особенностью проекта стало использование минимальных ресурсов для его реализации: над внедрением системы работала команда из трех сотрудников банка.

[Из песочницы] Быстрая разработка Web приложения на Vaadin и Spring Boot Целью данной статьи является систематизация процесса разработки веб приложения на Vaadin 14 с использованием Spring Boot. Перед прочтением данной статьи, рекомендую прочитать следующий материал: Введение в Spring Boot Spring Data JPA Lombok возвращает величие Java Vaadin F...

Почему мобильным приложениям скоро придёт конец Android-приложениям скоро придёт конец? Мобильные приложения являются неотъемлемой частью как iOS, так и Android. И с чего мы это решили, что им придёт конец? Всё дело в PWA (Progressive Web Apps). Это веб-приложения, построенные на фронтенд-технологиях (HTML, CSS, JavaScrip...

Минкомсвязи даст гранты ЛИЦ Конкурсные отборы ЛИЦ и компаний-лидеров инициированы Министерством цифрового развития, связи и массовых коммуникаций России для реализации федерального проекта "Цифровые технологии" национальной программы "Цифровая экономика РФ". Всего на отборы поступило 82 заявки из 19 го...

Обучение универсальной модели NLU c BERT и Multitask Learning В современной компьютерной лингвистике понимание смысла написанного или сказанного достигается с помощью моделей естественного языка (NLU). С постепенным ростом аудитории виртуальных ассистентов Салют встает вопрос об оптимизации наших сервисов, работающих с естественным яз...

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

[Из песочницы] Императивный подход к реактивным данным на примере Jetbrains KTor и R2DBC Статья об использовании реактивного доступа к базам данных из корутин. Spring все упрощает, но это плохо сказывается на понимании реальных процессов работы приложения. Для демонстрации был выбран фреймворк KTor (просто потому, что мне нравится смотреть на то, что делает JetB...

[Из песочницы] Реактивная разработка Telegram бота Доброго времени суток, Habr'овчане. В поисках различной информации по разработке бота для чата Telegram в сети Интернет обнаружил, что все tutorial'ы хоть и достаточно полны различными механиками взаимодействия с библиотекой «telegram-bot-api», никто не пришёл к умозаключен...

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

Разработка приложений в VK mini apps Почему надо смотреть в сторону разработки приложений для работы в VK? У меня за спиной много лет фронтенд-разработки для массовых сервисов, и то, что сейчас предлагает разработчику социальная сеть «ВКонтакте» — быстрый и эффективный способ построить еще один канал коммуникац...

Гарнитура Google Glass Enterprise Edition 2 стала доступна для разработчиков Компания Google сделала гарнитуру дополненной реальности Google Glass Enterprise Edition 2 доступной для покупки разработчиками. Это произошло примерно через девять месяцев после того, как эта модель была представлена и стала доступна через партнеров Google, внедряющих ...

[Перевод] Знакомимся с NestJS Перевод статьи подготовлен в преддверии старта курса «Разработчик Node.js». У современных разработчиков есть много альтернатив, когда речь заходит о создании веб-сервисов и других серверных приложений. Node стал крайне популярным выбором, однако многие программисты предп...

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

[Перевод] Преобразование природы в украшения с помощью 3D-сканирования Изготовление ювелирных изделий с помощью 3D сканера EinScan Pro 2x На вопрос о том, в каких сферах применяется 3D-сканирование, большинство людей не задумываясь ответят, что подобная аппаратура чаще всего находит применение в промышленности — в метрологии и реверсивном инж...

Дополняя SQL. Часть 1. Сложности парсинга. Истории о доработке ANTLR напильником Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Что будет в этой статье? Более пяти лет работаю в компании, что занимается разработкой линейки IDE для работы с базами данных. Начиная работу над этой статьей я и не представлял как много интере...

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

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

TensorRT 6.x.x.x — высокопроизводительный инференс для моделей глубокого обучения (Object Detection и Segmentation) Больно только в первый раз! Всем привет! Дорогие друзья, в этой статье я хочу поделиться своим опытом использования TensorRT, RetinaNet на базе репозитория github.com/aidonchuk/retinanet-examples (это форк официальной репы от nvidia, который позволит начать использовать в ...

Oracle: разница между deterministic и result_cache От переводчика: свой путь на habr я решил начать не с попытки написать какой-то уникальный текст с нуля, а с перевода относительно свежей (от 17.08.2020) статьи классика PL/SQL-разработки Стивена Фойерштайна, в которой он достаточно подробно рассматривает разницу между двумя...

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

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

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

Инструменты Domain Driven Design Синий кит — отличный пример того, как проектирование сложного проекта пошло не по плану. Кит внешне похож на рыбу, но он млекопитающее: кормит детенышей молоком, у него есть шерсть, а в плавниках до сих пор сохранились кости предплечья и кистей с пальцами, как у сухопутных. ...

[Из песочницы] Создание микросервисной архитектуры с использованием single-spa (миграция существующего проекта) Это первая статья по в данной теме, всего их планируется 3: * Создание root application из вашего существующего проекта, добавление в него 3 микро-приложения (vue, react, angular) Общение между микро-приложениями Работа с git (deploy, обновления) Оглавление Общая час...

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

Знакомьтесь: чертежи для ядерного реактора с открытым исходным кодом Американская некоммерческая организация «Energy Impact Center» озвучила свое намерение выложить в открытый доступ чертежи, схемы и всю необходимую документацию для строительства персональных ядерных реакторов. Речь идет о мирном атоме, частных АЭС малой мощности. Большая час...

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

[Перевод] Лёгкий способ сделать крохотный USB-хаб для Raspberry Pi Перевод статьи с сайта самодельщика Retrocution Бывало у вас такое, что вам не хватает USB-портов при создании проекта на Raspberry Pi Zero? Притом внешние USB-хабы или HATS не подходили из-за ограничений по размеру? Если да, или если вы просто ищете себе интересный проек...

[Перевод] Создание CI/CD-цепочки и автоматизация работы с Docker Я написала мои первые сайты в конце 90-х. Тогда приводить их в рабочее состояние было очень просто. Был Apache-сервер на каком-нибудь общем хостинге, на этот сервер можно было войти по FTP, написав в браузерной строке нечто вроде ftp://ftp.example.com. Потом надо было ввести...

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

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

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

В Сочи создали Экспертный совет по математическому образованию В России будет работать созданный на днях Экспертный совет по математическому образованию. Об этом было объявлено в рамках заседания рабочей группы Кружкового движения НТИ* в Сочи. Задачей Совета станет предоставление главным проектам НТИ экспертной и методологической подде...

Внедрение зависимостей (Dependency Injection) с GetIt во Flutter Внедрение зависимостей - DI - Dependency injection - термин часто встречающийся на собеседованиях. Сам по себе концепт опирается на более объемный принцип инверсии зависимостей (буква D в SOLID), но намного проще и ближе к практике. Кратко можно сказать, что при внедрении за...

Разработан космический аппарат в виде морского ската, который сможет "плавать" в атмосфере Венеры Исследователи из университета Буффало разработали проект космического аппарата, имеющего форму морского ската, который, возможно, когда-нибудь отправится исследовать атмосферу Венеры. Данная разработка была выполнена в рамках проекта BREEZE (Bio-inspired Ray for Extreme Envi...

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

Продвинутая система авторизации действий с ресурсами в Laravel. Часть 3. Чтение/запись атрибутов, собственные модели Введение Здравствуйте, дорогие Хабровчане. Сегодня я представляю вашему вниманию заключающую часть цикла статей о продвинутой авторизации действий с ресурсами в Laravel. Чтобы лучше понимать о чем пойдет речь в этой статье — необходимо прочесть первую и вторую части. На э...

Вы больше не сможете помогать учёным искать инопланетян в рамках проекта SETI@home Более 20 лет назад, в мае 1999 года, стартовал уникальный на тот момент проект SETI@home, в рамках которого желающие посредством специального ПО могли предоставлять вычислительные мощности своих ПК для анализа данных с целью поиска следов внеземных цивилизаций. Если то...

[Из песочницы] Remote observer Если проект вышел за рамки локальной машины, скорее всего придётся интегрироваться с какими-нибудь сторонними системами. Хочу рассмотреть случай, когда упомянутая внешняя система хочет получать уведомления о каких-либо изменениях в нашей системе. Например, обновление каталог...

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

Проект Flash Forest намерен высадить миллиард деревьев при помощи дронов-артиллеристов Канадский стартап Flash Forest объявил о сборе средств для создания технической базы своего нового проекта – мультикоптеров и оборудования для подготовки семян. Своей целью авторы ставят быстро и дешево засеять регион Северной Америки лесами для противодействия выбросам в ат...

Open Source датасет SOVA: аудио для распознавания и синтеза речи Всем привет! Мы — команда компании «Наносемантика», и недавно мы запустили проект SOVA, где занимаемся сбором датасета для использования его в обучении нейронных сетей и создания виртуальных ассистентов на базе искусственного интеллекта.Мы подготовили большой датасет для обу...

[Перевод] Дружим ORDER BY с индексами Привет, Хабр! Я потихоньку перевожу статьи Маркуса Винанда из блога use the index luke. Первой статьей в цикле был манифест Маркуса о важности использования безофсетной пагинации на ключах. Мы рассмотрели всего один пример, как этот подход работает на практике. В этой и сле...

Oracle выпускает Java 14 Новейший комплект Java Development Kit (JDK) предлагает разработчикам новые функции, в том числе две новые долгожданные ознакомительные возможности (Preview Features) - Pattern Matching for instanceof (JEP 305) и Records (JEP 359), а также Text Blocks (JEP 368) для повторног...

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

[Из песочницы] Большое тестирование процессоров различных архитектур Предисловие Попытка сравнить производительность процессоров на разнородных архитектурах x86-64, e2k (Эльбрус), mips и arm. Все тесты написаны на языке C (взяты из исходных кодов, которые я не модифицировал и не оптимизировал) и компилируются под конкретную архитектуру с испо...

Уроки проектирования. Предметная область и ее математические модели “Многого можно добиться добрым словом. Но гораздо большего можно добиться добрым словом и пистолетом”( Аль Капоне). “Но иногда помогает только пистолет”( не Аль Капоне). Чтобы не быть обвиненным в пропаганде вооруженного бандитизма, сразу поясню, что под пистолетом здесь по...

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

Использование Intel Processor Trace для трассировки кода System Management Mode Эта статья посвящена тестированию возможности использования технологии Intel Processor Trace (Intel PT) для записи трассы в System Management Mode (SMM) режиме. Работа была выполнена в рамках Summer Of Hack 2019. Автор работы: @sysenter_eip. Большинство использованных инст...

Обзор k9s — продвинутого терминального интерфейса для Kubernetes K9s предоставляет пользовательский интерфейс терминала для взаимодействия с кластерами Kubernetes. Цель этого Open Source-проекта — облегчить удобную навигацию по приложениям в K8s, наблюдение за ними и управление ими. K9s постоянно следит за изменениями в Kubernetes и пре...

[Из песочницы] Ethercat для начинающих Некоторое время назад у нас появился объект, где в техническом задании стояло требование: «Протокол Ethercat». В процессе поиска информации я полез на хабр и с удивлением обнаружил, что там разбора этого протокола нет. Да и вообще информация о нем довольно фрагментирована (з...

FOSS News №10 — обзор новостей свободного и открытого ПО за 30 марта — 5 апреля 2020 года Всем привет! Продолжаем обзоры новостей свободного и открытого ПО и железа (и немного коронавируса). Всё самое главное про пингвинов и не только, в России и мире. Продолжаем освещать роль Open Source разработчиков в борьбе с COVID-19, трижды порадовала Huawei, появилось д...

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

[Из песочницы] Валидация XML с помощью XSD, JAXB и Spring Framework Обзор Здравствуйте! В этой статье я хочу описать программу валидации XML с помощью Spring Framework. Наиболее очевидная область применения такой валидации — это программирование web-сервисов. Валидация производится через преобразование XML-Java (unmarshalling) по соответству...

DIY Гусеничная платформа для роботов и развелечений Мы задумываемся о разработке робота-охранника периметра c использованием софта, который мы разработали для нашего робота для сбора мячей для гольфа. Когда мы определились с техническими требованиями начали искать что подобного есть интернете. Так мы нашли проект Золотоева А...

Креативное агентство Smetana запустило социальный проект #ГотовПомочь На фоне борьбы с пандемией нового коронавируса силами креативного агентства Smetana был осуществлен запуск социального проекта #ГотовПомочь. С информационной поддержкой ему помогает Комплекс экономической политики и имущественно-земельных отношений Правительства Москвы. Цель...

[Перевод] Реализация SOLID и слоистой архитектуры в Node.js с TypeScript и InversifyJS Привет, Хабр! Предлагаю вашему вниманию перевод статьи Implementing SOLID and the onion architecture in Node.js with TypeScript and InversifyJS автора Remo H. Jansen В этой статье мы рассмотрим архитектуру, известную как слоистая (onion). Слоистая архитектура — подход к пост...

Минобороны России строит «секретные» военные нейросети Подрядчик будет выбран по результатам закрытого конкурса, заявку на проведение которого ведомство разместило 27 марта 2020 г. Одно из требований, предъявляемых к будущему исполнителю - наличие действующей лицензии на проведение работ, связанных с использованием сведений, сос...

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

Медиасистема для Toyota Prius (часть 2) Продолжение проекта по замене медиасистемы Toyota Prius. В этой статье — PHY, Transport, и доставка пакетов до хост-девайса, которую наконец-то удалось проверить на реальной родной голове приуса. Быстро сказка сказывается, да не быстро дело делается. Сегодня продолжаю за...

IntelliJ IDEA: Structural Search & Replace Современные IDE — очень мощные инструменты, способные помогать разработчику в самых разных ситуациях. Но обратной стороной этой мощности является то, что большинство функций находится в тени — об их наличии мало кто подозревает. Простой пример одной...

Сервис на языке Dart: введение, инфраструктура бэкэнд Оглавление 1. Введение 2. Backend 2.1. Инфраструктура. 2.2. Доменное имя. SSL. 2.3. Серверное приложение на Dart. … 3. Web 3.1. Заглушка «Under construction» … 4. Mobile … Введение Меня, Flutter-разработч...

[Перевод] 6 рекомендаций по разработке безопасных Go-приложений В последние годы Golang распространяется всё шире и шире. Успешные проекты, вроде Docker, Kubernetes и Terraform, сделали огромные ставки на этот язык программирования. Go стал стандартом де-факто в области создания инструментов командной строки. А если говорить о безопаснос...

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

[Перевод] Полигоны Another World: Sega Genesis Перевод пятой статьи из серии от Fabien Sanglard, в этот раз про порт Another World на Sega Genesis. Разработка MegaDrive/Genesis началась сразу после того, как Sega выпустила свою Master System ​​в 1987 году. В то время целью Sega было создание чего-то, что превосходит PC E...

Применение Flowmon Networks для контроля производительности распределенных приложений и баз данных Статью подготовил Dmitriy Andrichenko | Sales Executive, Russia & CIS | Flowmon Networks Приветствуем Вас на странице нашей новой статьи, посвященной решению задач контроля производительности распределенных сетевых приложений и баз данных. Данная статья является продо...

Topaz Video Enhance AI увеличивает разрешение видео до 8K Компания Topaz недавно представила программу для повышения разрешения видеозаписей Video Enhance AI. Эта программа экстраполирует детали изображения, полагаясь на технологии глубокого обучения. За счет этого обеспечивается высокое качество и реалистичная детализация. Р...

Объединяем закрытый WhatsApp и открытый SIP – Часть 1 Предыдущая статья «Как избежать блокировки в WhatsApp», хотя и получила много минусов, но тем не менее в течении 2 суток была самой читаемой статьей на Хабре – набрала более 20 тыс просмотров. Поэтому я решил что нужно продолжать с хакингом монстров рассказывать о различны...

Руководство по Node.js для начинающих. Часть 4 Доброго времени суток, друзья! Продолжаю публиковать перевод этого руководства по Node.js. Другие части: Часть 1 Часть 2 Часть 3 Часть 4 Файл package-lock.json В пятой версии Node.js был представлен файл package-lock.json. Что это такое? Для чего он нужен, если есть ...

[Перевод] История обработки естественного языка, с тринадцатого века до наших дней Обработка естественного языка восходит к мистикам Каббалы Задолго до того, как обработка естественного языка стала модной темой в области искусственного интеллекта, люди придумывали правила и машины для манипулирования языком Мистик 13 века Авраам бен Самуэль Абулафия изобр...

В Санкт-Петербурге пройдет хакатон о главных вызовах десятилетия Приглашаем 15–16 февраля 2020 года принять участие в хакатоне «Прожектор2020» о главных вызовах и общественных проблемах десятилетия. Участники создадут приложения, сервисы, проведут исследования и расследования на основе данных и задач, предложенных некоммерческими организ...

Переносим Angular проект на ESLint, с Prettier, Husky и lint-staged Привет, Хабр! Меня зовут Богдан, я работаю в ПИК Digital Front-End тимлидом. Большую часть проектов мы разрабатываем на Angular и недавно я решил пересмотреть наши стайл гайды, а также добавить новые инструменты для более удобной работы. В качестве линтера я решил использов...

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

Как украсть Macbook У меня несколько раз воровали макбуки и ни разу антикражные средства Apple вроде Find My Mac не помогли мне вернуть компьютер. Действительно ли они бесполезны? Можно ли доверять встроенному шифрованию FileVault? Как повысить шансы вернуть компьютер? Эта статья результат мо...

NVIDIA показала как работает технология DLSS 2.0 NVIDIA анонсировала технологию улучшения изображений в конце марта. Технология DLSS 2.0 уже используется, в таких играх, как Control и MechWarrior 5: Mercenaries. Конечной целью новой технологии является увеличение производительности. Технология использует два вида ренде...

Лидер Huawei передумал уходить на пенсию из-за американских санкций На этой неделе основатель и генеральный директор Huawei Рен Чжэнфэй (Ren Zhengfei) дал новое интервью, в котором он рассказал о развертывании сетей 5G Латинской Америке, об операционной системе Huawei Hongmeng и о других моментах. Одним из самых интересных моментов ста...

Видео: сорвиголова с джетпаком летает над Дубаем Винс обычно занимается скайдайвингом, однако в этом проекте ему пришлось самому подниматься в небо, а не прыгать вниз с летательного аппарата. Целью мероприятия Mission: Human Flight («Миссия выполнима: человек в полете»), приуроченного к Всемирной выставке Экспо-2020 ...

Пустобрёх GPT-2: russian edition Погрузившись в тему DL NLP, набрел на просторах интернета на любопытный репозиторий. Это не много не мало — Русская GPT-2! Ну, т.е. русскоязычная. Причем не какая-нибудь мелкая 117М, а вполне себе 1650М, что уже довольно серьезно. Автор проделал немалую работу по адаптации ...

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

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

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

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

[Перевод] Новые бесплатные видео-курсы и гайды по C#, .NET, и ASP.NET для начинающих Если вы думали о том, чтобы начать изучать C#, то сейчас как раз самое время, чтобы начать! Наш коллега Скотт Хансельман работал над этим проектом несколько месяцев и рад представить страницу http://dot.net/videos  На ней вы найдете около сотни коротких видео (в ближайшее в...

[Из песочницы] Гибкие методологии: взгляд со стороны бизнеса (часть 1) Подавляющее большинство из нас прекрасно знакомы с гибкими методологиями разработки, читали agile-манифест, работали по scrum или kanban. Некоторые — успешно внедряют в своих отделах те или иные agile-практики, иные — пропагандируют отказ от них в пользу других методологий. ...

[Из песочницы] Расчет временных ограничений для ПЛИС простым языком Здравствуйте. Эта статья написана для самых-самых новичков в мире ПЛИС. В ней я попытаюсь максимально просто и понятно рассказать что такое временны́е ограничения (timing constraints), накладываемые на проекты под ПЛИС. Статья создана на основе собственного опыта попыт...

[Перевод] Установка и настройка AlienVault SIEM (OSSIM) Перевод статьи подготовлен специально для студентов курса «Безопасность Linux». OSSIM (Open Source Security Information Management) — это проект с открытым исходным кодом от Alienvault, который обеспечивает функционал SIEM (Security information and event management). Он обе...

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

"Газинформсервис" делает ставку на аналитику Создание платформы - совместный проект "Газинформсервис" и Лаборатории искусственного интеллекта и нейросетевых технологий Санкт‑Петербургского политехнического университета Петра Великого (СПбПУ). Платформа Ankey ASAP (Advanced Security Analytics Platform) – продукт класса...

TelegramBot инструкция по созданию базового функционала для бота. (Часть 1) Не так давно я предложил вам воспользоваться моим ботом для телеграмма. Telegram Bot — помощник в планировании мероприятий Получив много вопросов в личку, я понял, что вопрос создания ботов для Телеграм довольно популярен. У меня спрашивали исходный код бота, просили по...

[Из песочницы] Ваш C# уже «функциональный», просто позвольте ему это Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «Your C# is already functional, but only if you let it» автора Igal Tabachnik. Несколько дней назад я написал в Твиттере фрагмент кода C#, реализующий FizzBuzz, используя некоторые из новых «фичи» в C# 8....

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

[Перевод] BERT, ELMO и Ко в картинках (как в NLP пришло трансферное обучение) 2018 год стал переломной точкой для развития моделей машинного обучения, направленных на решение задач обработки текста (или, что более корректно, обработки естественного языка (Natural Language Processing, NLP)). Быстро растет концептуальное понимание того, как представлять...

[Перевод] Хорошо подумайте, прежде чем использовать Docker-in-Docker для CI или тестовой среды Docker-in-Docker представляет собой виртуализированную среду Docker-демон, запущенную в самом контейнере для сборки образов контейнера. Основной целью создания Docker-in-Docker была помощь в разработке самого Docker. Многие люди используют его для запуска Jenkins CI. Понач...

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

Open Collective. Прозрачный краудфандинг Слова «краудфандинг» и «краудсорсинг» уже давно вошли в обиход интернет-пользователей. Когда сообщество единомышленников помогает деньгами (на развитие проекта) или своим прямым участием в наполнении, например, карты (проставляя метки в нужных местах), то все делается быстр...

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

Maltego Часть 5. Твое лицо тебя сдало Здравствуйте, дорогие друзья. Сегодня поговорим о более тяжелой артиллерии в рамках OSINT, а именно, о применении технологии распознавания лиц от Social Links для Maltego. Если не читали предыдущие статьи цикла о Maltego, то сейчас — самое время: Часть 1 — Что такое Malt...

Опыт работы над проектом на базе Vue3 в 2021 году Около полугода пришлось поработать над миграцией неработающего проекта на базе Vue 2 на проект Vue v.3. Поскольку до сих пор работа с ним остаётся экзотикой, попробую описать состояние развития этого проекта в июле 2021 года, через 10 месяцев после релиза, и какие особеннос...

ESP32 development board с кастомным дизайном Наконец то у меня добрались руки до сборки минимального аналога Espressif Systems плат на ESP32 микроконтроллере. На плате расположен микрофон, усилитель для этого микрофона на одном транзисторе. Усилитель для динамика на трех транзисторах с выходным каскадом работающим в р...

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

Про Shadow DOM Всем привет! Продолжаю свой цикл публикаций о группе стандартов Web Components. Моя цель - сформировать реалистичные ожидания от данного набора технологий, а также, вместе с вами, прийти к более четкому пониманию того, где их не стоит применять, и где, напротив, ничего лучше...

[Из песочницы] Как быстро захватить мир или управление сетью windows компьютеров с помощью OPSI Disclaimer: Автор любит короткие и прямые костыли, а также нежно обожает свободный открытый софт за ту гибкость и масштабируемость, что тот дает. Целью данной статьи является желание попиариться, а также рассказать о незаслуженно неизвестной в русскоязычном интернете системе...

Компания «TITANMED» В рамках форума «InnoMed — 2018» на базе технопарка «Рамеев» 7 июня компания ООО «ТИТАНМЕД» запустила линию по производству имплантатов для травматологии и ортопедии. Технология производства и современное оборудование позволяет в кратчайшие сроки перенастраивать оборудование...

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

В Баку наградили Лауреатов Девятой Ежегодной Премии «Время инноваций-2019» Инновационная деятельность привела мировое сообщество к новой, более высокой ступени развития. Роль инноваций в современном мире трудно переоценить, они фокусируются на эффективности, а в бизнесе – на экономической рентабельности. Отличительным качеством новатора является в...

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

Mail.ru Group получила контракт на разработку государственного "облака" Соответствующий договор размещен на портале госзакупок 19 декабря 2019 года.Первая очередь ФГИС "Управление государственной единой облачной платформой" предназначена для апробации функций комплексной автоматизации, информационной и технологической поддержки процесс...

[Перевод] Сравнение производительности HTTP/3 и HTTP/2 Мы в Cloudflare объявили о поддержке HTTP/3 в сентябре прошлого года, когда отмечали девятый день рождения. Наша задача всегда состояла в улучшении интернета. Сотрудничество в области стандартов — важная часть процесса, и нам повезло участвовать в разработке HTTP/3. Хотя ...

[Перевод] Руководство по работе с OpenAL на C++. Часть 1: воспроизводим звук Вашей игре нужен звук! Наверно, вы уже использовали OpenGL для рисования на экране. Вы разобрались с его API, и поэтому обратились к OpenAL, потому что название кажется знакомым. Что же, хорошие новости — OpenAL тоже имеет очень знакомый API. Он изначально задумывался для и...

Эволюция методов mesh denoising: от простых фильтров до 3D глубокого обучения В этой обзорной статье вы узнаете, что такое mesh denoising, какие методы использовались и используются для устранения шума на полигональных сетках (от классических фильтров до передовых графовых нейронных сетей), и получите общее представление о развитии направления. С пом...

Открываются Android Dev Virtual Meetup Начиная с понедельника 23 марта, известные вам всем представители Android-разработки говорящие на русском языке (в том числе ведущие и гости Android Dev Подкаста) запускают новый открытый для любого желающего проект Android Dev Virtual Meetup.

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

Краткий обзор COBIT 2019 Люди в наши дни хотят иметь возможность быстро усваивать важную информацию. Если вы хотите узнать больше о том, что такое COBIT 2019, надеюсь, эта статья поможет вам усвоить все важные моменты как можно быстрее. Всё благодаря эффективности списков («буллетов»). ...

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

[Перевод] Руководство по Node.js для начинающих. Часть 1 Доброго времени суток, друзья! Представляю Вашему вниманию перевод этого руководства по Node.js. Введение в Node.js Node.js — это открытая и кроссплатформенная среда выполнения JavaScript. Это отличное решение почти для любого проекта. Node.js запускает «движок» Java...

Чего ожидать от искусственного интеллекта в 2020 году и в последующий период Термин «искусственный интеллект» был придуман в 1955 году Джоном Маккарти (John McCarthy). Эта технология существует уже давно. Однако в последние несколько лет мы наблюдаем резкий рост ее популярности и принятия. От автомобилей с автоматическим управлением до чат-ботов ...

[Перевод] Мой второй год в качестве независимого разработчика Иллюстрация Лорейн Йоу. Суслик-талисман языка Go адаптирован из работ Рене Френч Два года назад автор этой статьи Майкл Линч (Michael Lynch) уволился с должности инженера-программиста в Google, чтобы начать собственный бизнес (см. статью «Почему я ушёл из Google и начал ра...

Mail.ru Group создаст для «Сухого» цифровую платформу предиктивной аналитики Цифровая платформа даст возможность централизованно собирать, обрабатывать и анализировать данные как с производственного оборудования, так и информацию о производственных процессах из информационных систем на предприятиях ПАО "Компания “Сухой”". Накопл...

Robot Framework для автоматизации тестирования: ограничения и плюшки В автоматизации тестирования я уже более 11 лет. Скажу сразу, что являюсь поклонником старомодного тестирования на Java и очень настороженно отношусь к различным готовым фреймворкам. Если вы придерживаетесь такого же мнения или только задумываетесь об использовании Robot Fra...

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

[Перевод] Микросервисы со Spring Boot. Часть 5. Использование сервера имен Eureka В этой заключительной части нашей серии архитектур микросервисов мы научимся включать сервер имен Eureka и позволять микросервисам взаимодействовать с ним. Это статья входит в серию статей «Микросервисы со Spring Boot»: Часть 1. Начало работы с архитектурой микросервисов ...

Российские застройщики рассчитывают на BIM По данным PwC, BIM-технологии - наиболее привлекательный инструмент автоматизации среди девелоперов для сокращения временных и финансовых затрат. По информации Минстроя, сейчас в России использует BIM 5-7% компаний - в основном для крупных проектов в мегаполисах. "Объем (рос...

Криптобиржа Bitzlato добавляет новые пары с крипторублем и запускает программу маркет-мейкинга Криптовалютная биржа Bitzlato с 22 января расширяет линейку торговых пар с крипторублем (RUBM), а с 25 января запускает пилотную программу маркет-мейкинга. Об этом проект сообщил в официальном пресс-релизе. Bitzlato вводит торговые пары с крипторублем (RUBM): BCH/RUBM, LTC/R...

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

BlazingPizza: приложение на Blazor от начала и до конца. Часть 1. Настройка среды Всем привет! Если вы слышали о Blazor, но до сих пор не понимаете, что это такое. То вы по адресу. Это первая статья из цикла 12 статей, которая проведет вас через все круги ада весь процесс создания приложения на Blazor. В конце у нас будет готовый сайт небольшой пиццерии, ...

[Из песочницы] Взаимодействие с NIDD через SCEF с использованием утилиты Postman. Краткий экскурс в SCEF и его возможности Данная статья позволит тем, кто еще только начинает свою разработку или уже применяет технологию NB-IoT, составить представление о том, как можно удаленно взаимодействовать с NB-IoT устройством. Краткий обзор NB-IoT легко наступает на пятки 2G и зарекомендовал себя как эн...

Бессерверные вычисления на основе OpenWhisk, часть 4 Эта статья заканчивает цикл переводных заметок об OpenWhisk от автора Priti Desai. Сегодня рассмотрим процесс развертывания OpenWhisk поверх Kubernetes с исправленными командами для работоспособности с актуальными версиями приложений. Также будет описан процесс запуска функ...

Проект Lacmus: как компьютерное зрение помогает спасать потерявшихся людей Всем привет! Возможно, вы уже знаете про инициативу Machine Learning for Social Good (#ml4sg) сообщества Open Data Science. В её рамках энтузиасты на бесплатной основе применяют методы машинного обучения для решения социально-значимых проблем. Мы, команда проекта Lacmus (#p...

Принцип единственной ответственности: глубокое погружение Про принцип единственной ответственности (The Single Responsibility Principle, SRP) уже было написано множество статей. В большинстве из них даётся лишь поверхностное его описание мало чем отличающееся от информации в википедии. А те немногие статьи что затрагивают ключевые ...

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

[Перевод] Как устроен билд APK файла внутри Процесс создания APK и компиляции кода Рассматриваемые темы Архитектура процессоров и необходимость для виртуальной машины Понимание Java виртуальной машины Компиляция исходного кода Виртуальная машина Андроид Процесс компиляции в .dex файл ART против Dalvik Описание каждой...

FOSS News №2 — обзор новостей свободного и открытого ПО за 3-9 февраля 2020 года Всем привет! Продолжаю обзор новостей свободного и открытого ПО (и немного железа). В этот раз постарался брать не только российские источники, но и англоязычные, надеюсь получилось интереснее. Кроме того, кроме собственно новостей, добавлено немного ссылок на вышедшие за...

[recovery mode] PM2: подходим к вопросу процесс-менеджмента с умом Буквально пару часов назад у меня завязался спор на тему того, что Node.JS слишком медленная для крупных проектов и ей стоит предпочесть Golang, Rust, PHP, etc. Основным аргументом противоположной стороны в этом споре был факт однопоточности JavaScript. Якобы при разработке ...

[Из песочницы] О работе ПК на примере Windows 10 и клавиатуры ч. 1 Меня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Window...

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

[Из песочницы] Хакинг классического Sonic the Hedgehog для Sega В этой статье я хочу разобрать внутреннее устройство легендарной игры Sonic the Hedgehog для приставки Sega Mega Drive, а также способы ее модификации или, как еще говорят, хакинга. Эта игра насчитывает порядка сотни хаков, включающих как действительно достойные работы (таки...

Новый фронтенд Одноклассников: запуск React в Java. Часть I Многие слышали название GraalVM, но опробовать эту технологию в продакшене пока довелось не всем. Для Однокласснииков эта технология уже стала «священным Граалем», меняющим фронтенд. В этой статье я хочу рассказать о том, как нам удалось подружить Java и JavaScript, и нач...

МТС, «Элемент» и Сколтех будут сотрудничать в разработке российского 5G-оборудования В рамках соглашения МТС и "Элемент" намерены содействовать лидирующему исследовательскому центру Сколтеха в реализации проекта по разработке сквозного цифрового решения Open RAN для сетей 5G и последующей локализации производства в России разработанных решений с ис...

Social Idea: принимаются заявки на конкурс для социальных предпринимателей До 1 июня 2020 года принимаются заявки на международный конкурс социальных IT-проектов Social Idea, организованный компанией «МТС». Теплица социальных технологий выступает партнером конкурса. Принять участие можно в трех номинациях:  Social Mobile – мобильные т...

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

Между дизайн-системой и Server Driven UI Введение (как устроена разработка в ivi) Всем привет! Меня зовут Владимир Касаткин, и я работаю бэкенд-разработчиком в компании ivi.ru, в команде "UX". Цель этой статьи — показать, как мы уменьшили объём клиентской разработки, но при этом увеличили количество прово...

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

Как я, тимлид, оцениваю проекты Тимлиды часто оценивают проекты, и не все делают это хорошо. Тут многое зависит от личности самого тимлида, а также от его понимания команды. Есть много техник оценки проектов от метода “по аналогии” до PERT. Но сегодня я расскажу о том, как я применяю planning poker и други...

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

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

[Перевод] Стоит ли переходить с Python на Nim ради производительности? Nim — это сочетание синтаксиса Python и производительности C Несколько недель назад я бродил по GitHub и наткнулся на любопытный репозиторий: проект был полностью написан на языке Nim. До этого я с ним не сталкивался, и в этот раз решил разобраться, что это за зверь. Сна...

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

Унифицируй это: как Lamoda делает единообразными свои Go сервисы Мы широко используем микросервисную архитектуру, хоть и не считаем ее панацеей, и чуть больше 2 лет назад начали переходить на язык Go. Он сравнительно прост и, на мой взгляд, очень хорошо подходит для создания простых, небольших и быстрых микросервисов. Эта простота имеет и...

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

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

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

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

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

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

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

О конкурентном корутинизме (на примере реактивного программирования) 1. Введение Конкурентная борьба за умы, настроения и чаяния программистов является, как мне представляется, современным трендом развития программирования. Когда почти не предлагается ничего нового, хотя и под лозунгом борьбы за него. Распознать в толчее программных парадигм ...

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

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

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

Создание отказоустойчивой ИТ инфраструктуры. Часть 3. Организация маршрутизации на роутерах VyOS Основная цель статьи – показать процесс установки и настройки виртуальных маршрутизаторов VyOS на кластере oVirt, для организации связи на уровне L3 между внутренними и внешними сетями. Также в статье будут рассмотрены вопросы, связанные с особенностями настройки выхода в Ин...

LyX: Общие замечания. Часть 1 Скопировано с моего блога в целях создания еще одного русскоязычного источника информации по данной теме. Эта статья является продолжением следующих статей одного цикла: статья 1 статья 2 статья 3 статья 4 статья 5 Фух, даже не знаю, как писать этот пост. Я мог бы начать ...

Проект "ГосТех": в России может появиться единая технологическая платформа для госорганов Предложение о создании такой платформы содержится в совместной презентации "Сбербанка", Минкомсвязи и Аналитического центра при правительстве. Бюджет проекта планируют определить позднее, а для его реализации необходимо политическое решение.

Интеграция PVS-Studio в PlatformIO Недавно в среде разработки встраиваемых систем PlatformIO появилась поддержка PVS-Studio. В этой статье вы узнаете, как проверить свой код статическим анализатором на примере нескольких открытых проектов. Читать дальше →

Чего ждать от Java в 2020 году? 2020 уже в разгаре, давайте же обсудим, какие изменения в мире Java нас ожидают в этом году. В этой статье перечислю основные тренды Java и JDK. И буду рад дополнениям от читателей в комментариях. Сразу оговорюсь, что статья носит скорее ознакомительный характер. Детали по ...

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

Deep Anomaly Detection Детекция аномалий с помощью методов глубокого обученияВыявление аномалий (или выбросов) в данных - задача, интересующая ученых и инженеров из разных областей науки и технологий. Хотя выявлением аномалий (объектов, подозрительно не похожих на основной массив данных) занимаютс...

Maltego Часть 4. ВК, Instagram, LinkedIN и другие фантастические твари И снова здравствуйте, дорогие друзья. Мы опять готовимся окунуться в прекрасный мир OSINT. Статьи в нашем цикле прибавляются, поэтому пора уже вводить некое подобие оглавления, ведь дальше их будет только больше. Итак, что мы уже разобрали в Maltego: Часть 1 — Что такое ...

Автоматизация Для Самых Маленьких. Заметки. RESTful API Эта статья — одна из обещанных коротких заметок по ходу цикла статей Автоматизация Для Самых Маленьких. Поскольку основным способом взаимодействия с IPAM-системой будет RESTful API, я решил рассказать о нём отдельно. Воздаю хвалы архитекторам современного мира — у нас ест...

[Из песочницы] Игровая консоль stm32 Немного шутеров для stm32; как, зачем, что получилось. Предисловие Будучи поклонником «старой» школы шутеров с одной стороны и embedded-разработчиком с другой, я всегда испытывал интерес, как и почему авторам той эпохи удавалось воплощать новый жанр, требующий совершенно ...

Да, технология AMD FSR точно работает на PlayStation 5 и уже доступна на консоли в одной игре AMD FSR против Nvidia DLSS. Появились первые сравнения в рамках одной игры Технология AMD FidelityFX Super Resolution (FSR) доступна для PlayStation 5. И узнали мы об этом не самым обычным способом.  Напомним, AMD FSR является решением с открыт...

Древности: чем хуже, тем лучше или особенности Sound Blaster Pro 2 В предыдущей статье я постарался описать весь спектр звуковых карт эпохи MS-DOS, но не то, чтобы сильно в этом преуспел. С конца восьмидесятых до середины девяностых многие производители экспериментировали с технологиями синтеза звука, воспроизведения цифровых записей, ранни...

Xiaomi запускает проект разработки следующего поколения интерфейса MIUI 13 Xiaomi сама объявила о начале работ по дальнейшему совершенствованию пользовательского интерфейса смартфонов и подтвердила запуск проекта по созданию набора программных средств MIUI 13. Подробнее об этом читайте на THG.ru.

Song of Bloom — новый авторский проект разработчика see/saw, supertype и Bacon – The Game На каждую тысячу мобильных игр, созданных по проверенной схеме исключительно с целью заработка, приходится один авторский проект, разработчик которого думает исключительно о своей идее и не волнуется о том, как ее воспримут. Часто такие эксперименты приводят к куда большему,...

Nothing At Stake: компромиссы с совестью Очень коротко о себе. Как-то давно на Хабре обо мне писали в этой статье, однако часть аудитории, интересующаяся блокчейн технологиями, почти наверняка знакома с моей работой через проект Monero, у которого оригинальная кодовая база(CryptoNote) была разработана в основном м...

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

[Перевод] Тысячи забытых TODO в коде Kubernetes Фото Yancy Min на Unsplash Kubernetes — большой проект. Не только потому, что очень востребован, но и с точки зрения исходного кода. На момент написания этой статьи насчитывалось более 86 000 коммитов, более 2000 участников, более 2000 открытых тикетов, более 1000 открыты...

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

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

Modern Reverse Engineering: TTD Обратная разработка сегодня это достаточно трудоемкий процесс в первую очередь потому, что в период с 2000х по 2020 годы вышло в свет много языков программирования, которые ставили перед собой задачу стать интуитивными и простыми для изучения, безопасными и в то же время эфф...

[recovery mode] Опыт миграции на SAP HANA 2.0 в большом ритейле, проект автоматизированного тестирования для Сбербанка и другие кейсы Дорогие хабравчане, мы собрали новую порцию профессионального вдохновения для тех, кого интересуют передовые IT-решения для бизнеса. В один день. В онлайне. С подробным разбором технической части проектов от экспертов крупнейших российских и международных компаний. Читать ...

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

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

[Из песочницы] Code review — улучшаем процесс Представим команду, где не проводится Code review. Разработчики пишут код и без проверок вносят все изменения в основную ветку. Спустя время расширяется функционал или находятся баги, они возвращаются к исходному коду, а там все переменные названы одной буквой, нет следова...

Сканирующее окно по массивам NumPy CoLab блокнот с примерами Возможно сделать скользящее окно (rolling window, sliding window, moving window) по массивам NumPy на языке программирования Python без явных циклов. В данной статье рассматривается создание одно-, двух-, трех- и N-мерных скользящих окон по массивам...

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

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

[Перевод] Life in the Fast Lane Серия статей о GC Don’t Fear the Reaper Life in the Fast Lane Go Your Own Way. Часть первая: Стек Go Your Own Way. Часть первая: Куча В первой из серии статей о GC я представил сборщик мусора в языке D и...

Маркетинг для психологов, тетахилеров, коучей. Хочешь, чтобы твой аккаунт выглядел, как у топовых психологов? Мечтаешь запустить марафон или онлайн-школу? По цене нескольких консультаций научиться навыкам создания собственной стратегии и её реализации? ⠀ Программа курса — это не просто...

WSL эксперименты. Часть 2 Привет, Хабр. В преддверии старта курса «Administrator Linux. Professional» публикуем продолжение статьи про WSL эксперименты, которую написал наш эксперт — Александр Колесников. Настало время для продолжения экспериментов с подсистемой WSL; первую часть статьи можно посм...

Жизнь литий-ионных батарей постараются продлить Сотрудники НГТУ НЭТИ совместно с учёными Харбинского научно-технического университета (Китай) исследуют влияние резких перепадов тока на качество заряда литий-ионных батарей. Полученные данные планируется использовать при создании сети заправочных станций для электрокаров. Р...

Основы deep learning на примере дебага автоэнкодера, часть №1 Если почитать обучение по автоэнкодерам на сайте keras.io, то один из первых посылов там звучит примерно так: на практике автоэнкодеры почти никогда не используются, но про них часто рассказывают в обучалках и народу заходит, поэтому мы решили написать свою обучалку про них:...

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

[Перевод] Разработчик игры VVVVVV в честь её десятилетия сделал исходный код открытым Сегодня — десятилетняя годовщина релиза VVVVVV! Хотя, возможно, и завтра — строго говоря, впервые игра стала доступной 3 часа утра по GMT 11 января 2010 года, спустя очень долгий день устранения каждого найденного мной бага, создания сборок последней минуты и попыток медле...

Оптимизация рендера под Mobile Здравствуйте, дорогие читатели, любители и профессионалы программирования графики! Предлагаем вашему вниманию цикл статей, посвященных оптимизации рендера под мобильные устройства: телефоны и планшеты на базе iOS и Android. Цикл будет состоять из трех частей. В первой части ...

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

Как забраться на дерево Точнее, как с него спуститься. Но обо всем по порядку. Эта статья немного выбьется из привычного формата статей от PVS-Studio. Мы часто пишем о проверке других проектов, но почти никогда не приоткрываем дверь нашей внутренней кухни. Пришло время это исправить и рассказать о...

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

Локализация приложений: как мы подружили перевод и разработку Привет, Хабр! Я ведущий разработчик системы локализации в Badoo. Мы работаем с несколькими большими проектами: Badoo, Bumble, Lumen и Chappy. Сейчас в системе локализации у нас находятся 150 000 фраз и текстов, переведённых на 52 языка. При этом каждое из наших приложений и...

[Перевод] Использование современных графических форматов в веб-проектах Эдди Османи, в статье «Цена JavaScript в 2018 году», озвучил одну ценную мысль: время, необходимое на обработку скрипта размером 200 Кб, и на обработку изображения, имеющего такой же размер, серьёзно различается. Дело в том, что при обработке кода браузеру нужно проделать бо...

Infor ожидает повышения спроса на AI- и ML-решения Россия — 11 декабря, 2019 г. – Компания Infor, мировой лидер в области разработки облачных решений с глубокой отраслевой специализацией, ожидает, что спрос на отраслевые решения с использованием технологий искусственного интеллекта и машинного обучения в будущем году ...

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

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

Как я устал от JavaScript и создал свой собственный язык программирования За свою карьеру я успел поработать со множеством языков программирования. Писал flash-игры на ActionScript 3 и Android-игры на Java, сервера на Java, Scala и NodeJS (JavaScript), скрипты на Python, веб и мобильные приложения на React (JavaScript). И на каком бы языке я не пи...

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

[Из песочницы] GSM IoT-провайдер в ЖКХ (Часть 1) Прочитал статьи автора Interfer о трудностях в Iot и решил рассказать о своём опыте IoT-провайдера. Статья первая не рекламная, большая часть материала без моделей оборудования. Постараюсь написать детали в следующих статьях. Не вижу проблем применения GSM модемов для сбо...

[Из песочницы] Ускорение сборки проекта на CMake+GCC: предварительная компиляция заголовочных файлов Есть несколько причин, почему проект на С++ в среднем собирается дольше сравнимых по величине проектов на других языках, например на Java или C#. Соответственно, есть и несколько способов уменьшить время сборки. Одним из самых известных является использование предварительной...

В России на государственном уровне занялись цифровыми грузоперевозками Минтранс планомерно повышает прозрачность перевозок в стране. Так, в 2019 году ведомство рассказало о разработке суперсервиса "Безбумажные перевозки пассажиров и грузов", а в начале 2020 - го объявило о пилотном проекте по переходу на ЭТрН и ЭПЛ. По мнению представ...

Реактивное программирование на Java: как, зачем и стоит ли? Часть II Реактивное программирование — один из самых актуальных трендов современности. Обучение ему — сложный процесс, особенно если нет подходящих материалов. В качестве своеобразного дайджеста может выступить эта статья. На конференции РИТ++ 2020 эксперт и тренер Luxoft Training Вл...

Создание клона WhatsApp для Android на Kotlin Руководство по созданию клона WhatsApp для Android на Kotlin. Пока есть только первая часть с чатами, дальше предполагаются голосовые и видео звонки. Проект на GitHub: https://github.com/GetStream/WhatsApp-Clone-Android

Apple, Amazon и Google создадут новый стандарт для устройств умного дома Будущие устройства для умного дома могут работать независимо от мобильных платформ благодаря стандарту с открытым исходным кодом, который разрабатывают технологические гиганты. Amazon, Apple, Google и Zigbee Alliance объявили о создании новой рабочей группы Project Con...

Развертывание Java приложения в OpenShift Казалось бы что здесь такого? подключаем к проекту fabric8-maven-plugin и вперед: сборка, запуск приложения в OpenShift. Но когда изучал хотелось большего понимания этого процесса, а затем хотелось большего контроля и свободы над процессом сборки и развертывания приложения в...

Разработчики соцсети «Аура» решили закрыть проект С социальной сетью, основанной на технологиях искусственного интеллекта, в «Яндексе» начали экспериментировать весной 2019 года. Команда разработчиков социальной сети «Аура», 49% которой принадлежит «Яндексу», решила закрыть проект. «Последние полгода проект 'Аура&...

[Из песочницы] Создание Discord-бота, используя библиотеку discord.js | Часть №1 Введение В этой статье я подробно расскажу о том, как работать с библиотекой discord.js, создать своего Discord-бота, а также покажу несколько интересных и полезных команд. Сразу хочу отметить, что я планирую сделать ряд подобных статей, начиная с простых команд, заканчивая...

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

Google представил Pigweed — инструменты разработки для встроенных систем Pigweed - коллекция инструментов и библиотек с открытым исходным кодом, для разработки и запуска вашего собственного программного обеспечения на встроенных платформах.

Разработка «простого генератора напряжения» в соответствии с ГОСТ Р МЭК 61508 (IEC 61508) В данной статье будут рассмотрены необходимые шаги для создания устройства, отвечающего общим требованиям функциональной безопасности (ФБ). А также будет предложена архитектура простейшего «безопасного» (safety) генератора напряжения. Так как управляя напряжением, можно уп...

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

Создание полноценного Viberbot на Django 2 и Viber REST API. Часть первая — Webhook Установка Webhook для работы bot на viber и отправка первого POST запроса к backend мессенджера Опираясь на свой опыт разработки под Viber и множество неоднозначных мнений, публикую цикл статей по созданию и запуску viberbot. Для понимая полной картины в целом, будем работат...

Транскомпилируемые языки: проекты конвертации код-в-код Источник: Ward Cunningham Транспиляция — это конвертация кода одного языка в другой. С помощью специального транспилера (транскомпилятора) один язык программирования общего назначения можно перенести на любой другой язык программирования общего назначения. Если необходимо...

Воодушевляющее видео NASA о планах на 2020 год Национальное управление по аэронавтике и исследованию космического пространства США или просто NASA решило в последний день ушедшего года представить видеоролик, рассказывающий о планах ведомства на 2020 год. Запланировано много всего, о чём мы уже не раз писали на страницах...

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

Выбрана СЭД для российских госорганов Как выяснил CNews, "Хоулмонт" стала победителем тематического тендера подведомственного Минкомсвязи НИИ "Восход", который занимается созданием платформы юридически значимого электронного документооборота (ЮЗЭДО).Эти работы "Восход" ведет в рамка...

Всё о проекте «Спутниковый интернет Starlink». Часть 18. Starlink на рынке COTM? Предлагаю ознакомиться с ранее размещенными материалами по проекту Starlink (SL): Часть 1. Рождение проекта ‣ Часть 2. Сеть SL ‣ Часть 3. Наземный комплекс ‣ Часть 4. Абонентский терминал ‣ Часть 5. Состояние группировки SL и закрытое бета-тестирование ‣ Часть 6. Бета-те...

NASA предлагает выращивать лунные колонии из грибов В Исследовательском центре Эймса в Кремниевой долине NASA запускает новый проект из области мико-архитектуры (создания архитектурных объектов из грибного мицелия – прим. ред. Техкульт). Он уже получил щедрое финансирование по программе Innovative Advanced Concepts еще в 2018...

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

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

Алгоритм планирования задач на TypeScript. Теория графов наконец-то пригодилась В этой статье я хочу рассказать об алгоритме, который помогает ответить на извечный вопрос всех проектов: Когда проект будет закончен?Более формально проблема звучит так: "Проект состоит из задач, которые могут зависеть друг друга, а также могут иметь один и тех же испо...

Минкомсвязь России разъяснила порядок формирования программ цифровой трансформации госорганов Директор Департамента развития архитектуры и координации информатизации Минкомсвязи России Василий Слышкин напомнил о подготовке новых мер, которые повысят эффективность использования информационно-коммуникационных технологий в госорганах. По его словам, до 15 мая 2020 года ...

Опробовать Windows 11 можно, не устанавливая ОС: выпущена имитация Windows 11 in React Разработчик под ником Blue Edge с использованием ReactJS, SCSS, CSS создал имитацию операционной системы Windows 11 в браузере, назвав свой проект Windows 11 in React. Теперь любой желающий может увидеть, как выглядит графический интерфейс операционной системы Windows 1...

Running With Scissors анонсировала шутер POSTAL: Brain Damaged Что только не пережила серия POSTAL с момента релиза первой части, который состоялся в далёком 2003 году. С тех пор вторая часть стала самой узнаваемой игрой в серии и именно она задала вектор развития последующих частей, которые оказались не такими примечательными. На данны...

Основы линейной регрессии Здравствуй, Хабр! Цель этой статьи — рассказать о линейной регрессии, а именно собрать и показать формулировки и интерпретации задачи регрессии с точки зрения математического анализа, статистики, линейной алгебры и теории вероятностей. Хотя в учебниках эта тема изложена стр...

[Перевод] Портируем Quake на iPod Classic Запускаем Quake на iPod Classic (видео). TL;DR: мне удалось запустить Quake на MP3-плеере. В статье описывается, как это произошло. Часть прошлого лета я потратил на пару своих любимых вещей: Rockbox и игру Quake id Software. Мне даже предоставилась возможность объединить...

Куратор Реестра российского ПО перешел в Huawei На новом месте Рубанов был назначен на должность главного технического директора по разработке ПО и директора лаборатории операционных систем Huawei R&D в России.В разговоре с CNews Рубанов сообщил, что "Росплатформу" он покинул еще 31 декабря 2019 г. По его сл...

В сеть утёк исходный код Windows XP На этой неделе на анонимном форуме 4chan были распространены ссылки на архив с исходными кодами продуктов Microsoft, который включает в себя не только утёкшие в начале этого года исходники Windows NT 3.5 и системы оригинального Xbox, но и исходный код Windows XP SP1. The Wi...

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

[Перевод] Печатная плата с ракеты Сатурн-5 – обратная разработка с пояснениями Перевод статьи из блога Кена Ширрифа В лунных миссиях «Аполлон» ракетой Сатурн-5 управлял передовой бортовой компьютер, разработанный в IBM. Система собиралась из гибридных модулей, похожих на интегральные схемы, но содержавшие отдельные компоненты. Я провёл обратную разраб...

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