Социальные сети Рунета
Четверг, 25 апреля 2024

PVS-Studio for Java отправляется в путь. Следующая остановка — Elasticsearch Далеко не первый год команда PVS-Studio ведет блог о проверках open-source проектов одноименным статическим анализатором кода. На сегодняшний момент проверено более 300 проектов, а в базу найденных ошибок выписано более 12000 случаев. Изначально анализатор был реализован дл...

Использование статического анализатора PVS-Studio при разработке для встраиваемых систем на C и C++ Из этой статьи вы узнаете, как запустить проверку embedded-проекта и как работать с отчетом анализатора. Анализатор PVS-Studio поддерживает ряд компиляторов для встраиваемых систем. В текущей версии возможна проверка проектов при сборке одним из следующих компиляторов под...

Анализ исходного кода RPC фреймворка Apache Dubbo статическим анализатором PVS-Studio Apache Dubbo — один из самых популярных Java проектов на GitHub. И это неудивительно. Он был создан 8 лет назад и широко применяется как высокопроизводительная RPC среда. Конечно, большинство ошибок в его коде давно исправлены и качество кода поддерживается на высоком уровн...

Находим баги в LLVM 8 с помощью анализатора PVS-Studio Прошло более двух лет с момента последней проверки кода проекта LLVM с помощью нашего анализатора PVS-Studio. Давайте убедимся, что анализатор PVS-Studio по-прежнему является лидирующим инструментом по выявлению ошибок и потенциальных уязвимостей. Для этого проверим и найдё...

Ищем и анализируем ошибки в коде Orchard CMS Эта статья – результат повторной проверки проекта Orchard с помощью статического анализатора PVS-Studio. Orchard это система управления контентом с открытым исходным кодом, которая является частью галереи ASP.NET-проектов некоммерческого фонда Outercurve Foundation. Проверк...

Причины внедрить в процесс разработки статический анализатор кода PVS-Studio PVS-Studio – это инструмент для поиска ошибок и потенциальных уязвимостей в исходном коде программ, написанных на языках C, C++, C# или Java. PVS-Studio относится к классу инструментов статического тестирования защищённости приложений (Static Application Security Testing, S...

Анализ кода CUBA Platform с помощью PVS-Studio Для Java программистов существуют полезные инструменты, помогающие писать качественный код, например, мощная среда разработки IntelliJ IDEA, бесплатные анализаторы SpotBugs, PMD и другие. Всё это уже используется в разработке проекта CUBA Platform, и в этом обзоре найденных...

PVS-Studio идёт в облака: CircleCI Мы продолжаем цикл статей по использованию статического анализатора PVS-Studio в облачных CI-системах. Сегодня рассматриваем очередной сервис — CircleCI. В качестве проекта для анализа в этот раз выступит медиаплеер Kodi, в исходном коде которого постараемся найти интересны...

Проверка исходного кода библиотек .NET Core статическим анализатором PVS-Studio Библиотеки .NET Core — один из самых популярных C# проектов на GitHub. Неудивительно, с учётом его широкой известности и используемости. Тем интереснее попробовать выяснить, какие тёмные уголки можно найти в исходном коде этих библиотек, что мы и попробуем сделать с помощью...

Azure PowerShell: «в основном безвреден» Привет всем. Сегодня у нас на тесте очередной проект Microsoft. По названию статьи можно догадаться, что в этот раз разработчики не смогли порадовать нас большим количеством ошибок. Надеемся, авторов проекта не обидит название. Ведь малое количество ошибок — это отлично, не...

Wireshark 3.x: анализ кода под macOS и обзор ошибок Wireshark Foundation выпустила финальную stable-версию популярного сетевого анализатора трафика — Wireshark 3.0.0. В новом релизе устранено несколько багов, реализована возможность анализа новых протоколов и заменен драйвер WinPcap на Npcap. Здесь заканчивается цитирование ...

Настройка Warnings Next Generation плагина для интеграции PVS-Studio Релиз PVS-Studio 7.04 совпал c релизом плагина Warnings Next Generation 6.0.0 для Jenkins. Как раз в этом релизе Warnings NG Plugin добавил поддержку статического анализатора PVS-Studio. Этот плагин визуализирует данные о предупреждениях компилятора или других инструментов ...

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

Проверка проекта CDK с помощью статического анализатора IntelliJ IDEA Я решил потестировать статический анализатор Java-кода IntelliJ IDEA и с его помощью проверил проект The Chemistry Development Kit. Здесь я приведу некоторые ошибки, которые я нашёл. Думаю, что часть из них характерна для Java-программ в целом, поэтому могут быть интересны. ...

По заказам Embedded-разработчиков: ищем ошибки в Amazon FreeRTOS Каждый, кто программирует микроконтроллеры, наверняка знает о FreeRTOS, или по крайней мере слышал об этой операционной системе. Ребята из Amazon решили расширить возможности этой операционной системы для работы с сервисами AWS Internet of Things – так появилась Amazon FreeR...

Simplify3d V4.1.2 Вышло обновление популярного  слайсера Simplify3d до версии 4.1.2Continued improvements for single outline corkscrew printing (vase mode)Increased reliability for single extrusion toolpath placementMore intuitive support structure placement while using the cross-section...

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

Для тех, кто хочет поиграть в детектива: найди ошибку в функции из Midnight Commander Приглашаем попробовать найти ошибку в очень простой функции из проекта GNU Midnight Commander. Зачем? Просто так. Это забавно и интересно. Хотя нет, мы соврали. Мы в очередной раз хотим продемонстрировать ошибку, которую с трудом находит человек в процессе code review, но л...

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

Знакомство со статическим анализатором PVS-Studio для Java На протяжении многих лет команда PVS-Studio развивает одноименный статический анализатор. На данный момент анализатор представляет собой сложное программное решение и предоставляет возможность анализа таких языков программирования, как C, C++, C# и Java на платформах Windows...

[Перевод] GitHub Sponsors: новый способ внести свой вклад в open source Мы очень рады объявить о начале бета-тестирования GitHub Sponsors ― нового способа финансовой поддержки разработчиков программного обеспечения с открытым исходным кодом, которое мы используем каждый день. Участники open source комьюнити создают инструменты для каждого из на...

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

PVS-Studio идёт в облака: Azure DevOps Это вторая статья про использование статического анализатора PVS-Studio в облачных CI-системах, и на этот раз мы рассмотрим платформу Azure DevOps – облачное CI\CD-решение от компании Microsoft. В качестве анализируемого проекта в этот раз рассмотрим ShareX. Читать дальше ...

Ищем ошибки в исходном коде Amazon Web Services SDK для .NET Приветствую всех любителей покритиковать чужой код. :) Сегодня в нашей лаборатории новый материал для исследования — исходный код проекта AWS SDK для .NET. В своё время мы писали статью о проверке AWS SDK для C++. Тогда не нашлось ничего особо интересного. Посмотрим, чем на...

История о том, как PVS-Studio нашёл ошибку в библиотеке, используемой в… PVS-Studio Это небольшая история о том, как с помощью PVS-Studio удалось найти ошибку в исходном коде библиотеки, используемой в PVS-Studio. Причём не теоретическую, а фактическую — ошибка проявлялась на практике при использовании библиотеки в анализаторе. Читать дальше →

PVS-Studio идёт в облака: GitLab CI/CD Эта статья является продолжением цикла публикаций об использовании PVS-Studio в облачных системах. На этот раз мы рассмотрим работу анализатора совместно с GitLab CI — продуктом от GitLab Inc. Интеграция статического анализатора в CI систему позволяет выявить баги сразу пос...

[Перевод] Анонс веб-интерфейса Kubernetes Web View (и краткий обзор других web UI для Kubernetes) Прим. перев.: Автор оригинального материала — Henning Jacobs из компании Zalando. Он создал новый веб-интерфейс для работы с Kubernetes, который позиционируется как «kubectl для веба». Почему новый Open Source-проект появился и каким критериям не удовлетворили уже существующ...

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

Tic Tac Toe, часть 1 В статье "Сравнение: Svelte и React" я попробовал повторить разработку игры Tic Tac Toe. Там я выполнил только первую часть исходного туториала для React'а без поддержки истории ходов. В этой статье мы начнем разработку этой игры с применением фреймворка Svelte с поддержкой ...

PVS-Studio ROI Время от времени нам задают вопрос, какую пользу в денежном эквиваленте получит компания от использования анализатора PVS-Studio. Мы решили оформить ответ в виде статьи и привести таблицы, которые покажут, насколько анализатор может быть полезен. Мы не можем в статье доказа...

Использование PVS-Studio при проверке Unreal Engine проектов на операционной системе Windows Данная статья посвящена особенностям проверки Unreal Engine проектов с помощью статического анализатора PVS-Studio на операционной системе Windows: как установить анализатор, как проверить проект, где и как посмотреть отчёт об ошибках. Читать дальше →

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

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

Мониторинг состояния SSD в массивах Qsan Использованием твердотельных накопителей в сфере хранения данных уже никого не удивишь. SSD прочно вошли в обиход IT оборудования от персональных компьютеров и ноутбуков до серверов и систем хранения данных. За это время сменилось несколько поколений SSD, каждое из которых о...

PVS-Studio и Bug Bounties on Free and Open Source Software Европейский союз стартовал в январе очередную большую охоту за ошибками в открытых программных проектах. Суммарный призовой фонд составляет около 850 тысяч евро. А теперь даём подсказу. Одним из способов поиска ошибок в исходном коде программ является использование статическ...

Зачем мы делаем Enterprise Service Mesh Service Mesh — известный архитектурный паттерн для интеграции микросервисов и перехода на облачную инфраструктуру. Сегодня в облачно-контейнерном мире обойтись без него довольно сложно. На рынке уже доступны несколько open-source реализаций service mesh, но их функциональнос...

WinForms: ошибки, Холмс Мы любим искать ошибки в проектах Microsoft. Почему? Всё просто: их проекты, как правило, легко проверить (работу можно вести сразу в среде Visual Studio, для которой у PVS-Studio есть удобный плагин) и они содержат мало ошибок. Поэтому обычный алгоритм работы такой: найти ...

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

Преимущества использования инструментов RAUTOOL от REHAU при монтаже труб из сшитого полиэтилена Для обустройства систем отопления и водоснабжения трубами из сшитого полиэтилена используется монтажный инструмент REHAU. Его применение обусловлено высокими требованиями к надёжности коммуникаций. Созданные с применением инновационных разработок инструменты для монтажа спос...

Статический анализатор кода PVS-Studio как защита от уязвимостей нулевого дня Угроза нулевого дня (англ. zero day) – это термин, обозначающий уязвимости, допущенные при разработке, которые еще не были обнаружены. Такие уязвимости могут использоваться злоумышленниками, что в итоге затронет и репутацию компании. Перед разработчиками стоит задача максим...

[Перевод] Roslyn Analyzers. Как писать код быстро и безошибочно Roslyn, платформа компилятора .NET, помогает обнаруживать ошибки еще до запуска кода. Одним из примеров является анализатор проверки орфографии Roslyn, который встроен в Visual Studio. Скажем, вы создаете статический метод и случайно написали слово static как statc. Вы сможе...

STL интерфейс Berkeley DB Привет, Хабр. Не так давно для одного моего проекта понадобилась встраиваемая база данных, которая бы хранила элементы в виде ключ-значение, обеспечивала поддержку транзакций, и, опционально, шифровала данные. После непродолжительных поисков, я наткнулся на проект Berkeley D...

Как выстрелить себе в ногу в C и C++. Сборник рецептов Haiku OS История встречи статического анализатора PVS-Studio с кодом операционной системы Haiku уходит в далёкий 2015-й год. Это был интереснейший эксперимент и полезный опыт для команд обоих проектов. Почему эксперимент? Анализатора для Linux тогда не было и не будет ещё полтора год...

Анализ коммитов и pull request'ов в Travis CI, Buddy и AppVeyor с помощью PVS-Studio В анализаторе PVS-Studio для языков С и C++ на Linux и macOS, начиная с версии 7.04, появилась тестовая возможность проверить список указанных файлов. С помощью нового режима можно настроить анализатор для проверки коммитов и pull request'ов. В этой статье будет рассказано,...

Apple, по слухам, добавит поддержку USB-мыши в iPad Pro В последнем выпуске подкаста Connected на Relay FM главный редактор MacStories Федерико Витиччи предположил, что поддержка USB-мыши в конечном итоге может появиться в iPad Pro в качестве функции универсального доступа. «То, что я слышал, без адаптеров, вы сможете использоват...

Проверяем инкапсуляцию с помощью Roslyn Что такое Roslyn? Roslyn – это набор компиляторов с открытым исходным кодом и API для анализа кода для языков C# и VisualBasic .NET от Microsoft. Анализатор Roslyn – мощный инструмент для анализа кода, нахождения ошибок и их исправления. Синтаксическое дерево и семантическая...

[Перевод] Тестирование фронтенда Эффективная стратегия автоматизированного тестирования кода чрезвычайно важна для обеспечения быстрой и качественной работы команд программистов, занимающихся поддержкой и развитием веб-проектов. Автор статьи говорит, что в компании StackPath, в которой он работает, с тестир...

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

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

Лучшие Copy-Paste алгоритмы для C и C++. Сборник рецептов Haiku OS Многочисленные опечатки и Copy-Paste код стали темой для дополнительной статьи о проверке кода Haiku анализатором PVS-Studio. Впрочем, будут ошибки, связанные не сколько с опечатками, а скорее с невнимательностью и неудачным рефакторингом. Найденные примеры ошибок демонстрир...

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

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

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

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

[Перевод] Как подписывать приложения для macOS Catalina 10.15 [Прим. пер.: переведя вызвавший широкое обсуждение на Хабре пост, я заинтересовался новыми правилами для разработчиков ПО, введёнными компанией Apple. В этой статье рассказывается о личном опыте освоения правил одним из разработчиков игр.] Введение В новой версии macOS App...

[Перевод] Использование AD Federation Service для авторизации пользователей на AWS с раздачей прав Вольный перевод статьи Jeff Wierer "Enabling Federation to AWS Using Windows Active Directory, ADFS, and SAML 2.0" с добавлениями и уточнениями. 1. Исходные данные 2. Подготовка 3. Конфигурирование AD 4. Установка ADFS 5. Конфигурирование ADFS 6. Конфигурирование AWS 7. ...

Как добавить проверки в NoVerify, не написав ни строчки Go-кода В статическом анализаторе NoVerify появилась киллер-фича: декларативный способ описания инспекций, который не требует программирования на Go и компиляции кода. Чтобы вас заинтриговать, покажу описание простой, но полезной инспекции: /** @warning duplicated sub-expressions in...

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

Знакомство со статическим анализатором PVS-Studio при разработке C++ программ в среде Linux PVS-Studio поддерживает анализ проектов на языках C, C++, C# и Java. Использовать анализатор можно под системами Windows, Linux и macOS. В этой заметке речь пойдет об анализе кода, написанного на C и C++ в среде Linux. Установка Установить PVS-Studio под Linux можно разными...

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

Кадровая алхимия: каков оптимальный состав команды центра ГосСОПКА? Эта статья пригодится тем, кто работает в компании, признанной субъектом критической информационной инфраструктуры (КИИ), а значит — обязанной выполнить требования №187-ФЗ и построить центр ГосСОПКА (Государственной системы обнаружения, предупреждения и ликвидации последст...

PVS-Studio для Java В седьмой версии статического анализатора PVS-Studio мы добавили поддержку языка Java. Пришло время немного рассказать, как мы начинали делать поддержку языка Java, что у нас получилось и какие дальнейшие планы. И, конечно, в статье будут приведены первые испытания анализат...

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

[Из песочницы] Что дает объединение ручного и автоматизированного тестирования: опыт Wrike Читая статьи на тему web-тестирования, вырисовываются условно две темы: 1) ручное тестирование вымирает, автотесты (здесь и далее под автотестами имеются в виду Selenium UI и REST-тесты) – наше все; 2) автоматическое тестирование – не панацея, без ручного тестирования не об...

Игра фреймворков: тренды JavaScript в 2019 TypeScript против ES6, React против Angular, Jest против Mocha… Не хуже нашумевшего сериала, эти «битвы» держат поклонников JavaScript в напряжении, заставляя их задумываться: «Что же учить дальше?» К тому же, армии пользователей каждой из технологий приводит настолько убеди...

Из риелтора в разработчика игр 2. «Операция: Андроид» Добрый день, Хабр. Две моих предыдущих статьи (раз, два) вы приняли очень тепло и даже выдвинули в топ, поэтому и продолжение не заставило себя ждать. Всего-то полгода, не такой уж и большой срок. Для тех, кто не в курсе – меня зовут Тим, мне 30 лет, я риелтор и сейчас пыта...

[Из песочницы] Выпуск Rust 1.34 Привет, Хабр! Представляю вашему вниманию перевод статьи "The Rust Release Team "Announcing Rust 1.34.0". Команда разработчиков Rust рада сообщить о выпуске новой версии Rust, 1.34.0. Rust — это язык программирования, который даёт возможность каждому создавать...

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

Улучшаем производительность ПО с инструментами Intel для разработчика. Численное моделирование астрофизических объектов Мы начинаем цикл статей, рассказывающих о различных ситуациях, в которых использование инструментов Intel для разработчиков позволило существенно повысить скорость работы программного обеспечения и улучшить его качество. Наша первая история произошла в Новосибирском Универ...

[Из песочницы] Google Camera — хайп или замена зеркалки? Все мы знаем про популярное приложение Google Camera (дальше GCam). О нем говорят везде: 4PDA, XDA, на всех официальных форумах о телефонах. Практически каждый владелец устройства пытается найти на свой девайс GCam, потому что их телефоны уже не имеют поддержку производителя...

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

Бенчмарки для Linux-серверов: 5 открытых инструментов Сегодня мы расскажем об открытых инструментах для оценки производительности процессоров, памяти, файловых систем и систем хранения данных. В список вошли утилиты, предлагаемые резидентами GitHub и участниками тематических тредов на Reddit, — Sysbench, UnixBench, Phoronix Te...

Металлообработка на станках с ЧПУ: как начать выпускать продукцию мирового уровня? Представляю вашему вниманию статью на тему цифровизации производства и выпуска продукции нового поколения. В материале пойдет речь о CAD-CAM-системе как важной составляющей конкурентоспособного производства. В качестве примера расскажу об одной из таких систем – Solid Edge+S...

Отображение и оптимизация вывода на терминал в вебе Не так давно я столкнулся с довольно простой и одновременно интересной задачей: реализация read-only терминала в веб приложении. Интереса задаче придавали три важных аспекта: поддержка основных ANSI Escape sequences поддержка минимум 50 000 строк данных отображение данных п...

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

CMake: тот случай, когда проекту непростительно качество его кода CMake — это кроссплатформенная система автоматизации сборки проектов. Эта система намного старше, чем статический анализатор кода PVS-Studio, при этом ещё никто не попробовал применить его к коду и сделать обзор ошибок. Ошибок, оказывается, много. Аудитория CMake огромна. Н...

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

Мультимедиа центр «Kodi» и Yocto Project Введение в Yocto Project Yocto Project — это совместный Open Source проект для упрощения разработки дистрибутивов для встраиваемых систем. Yocto содержит большое количество шаблонов, метаданных и инструментальных средств сборки. В Yocto Project вы можете подключить большо...

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

Байки разработчика 1C: эпикофейлические Все мы любим рассказывать о своих успехах и не очень любим распространяться о неудачах. Но опыт ошибок зачастую более ценен, чем профит от удачно завершенного дела. Поэтому как раз о таких случаях я и хотел бы рассказать сегодня. Итак, поехали… Читать дальше →

Измерение качества кода Android-приложения с помощью Sonarqube и Jacoco в 2019 году Привет, Хабр! Меня зовут Артём Добровинский, я работаю Android-разработчиком в компании FINCH. Однажды, за парой пинт с коллегой из компании, которая занимается размещением объявлений по продаже комиссованных МИГ'ов и комаров по имени Игорь, мы начали обсуждать статические ...

История о том, как мы иконку PVS-Studio меняли Релиз 7.0 ознаменовал новую веху в истории анализатора PVS-Studio – теперь доступен анализ не только кода, написанного на C, C++, C#, но также и Java. Кроме этого глобального нововведения продолжают улучшаться и дорабатываться существующие механизмы анализа, добавляются ди...

Из-за тёмной темы Thunderbird пришлось запускать анализатор кода «Приключение» с почтовым клиентом Mozilla Thunderbird началось с автоматического обновления на версию 68.0. Заметными особенностями этой версии было вот что: больше текста добавляется во всплывающие уведомления и тёмная тема по умолчанию. Повстречалась ошибка, которую захоте...

Textly.AI – сервис для улучшения письменного английского Всем привет! Сегодня хотел рассказать вам о своем новом проекте – онлайн-помощнике для исправления ошибок в англоязычных текстах Textly.ai. Это сервис для тех, кто использует английский язык в коммуникациях или хочет улучшить навыки письма. Как это работает: расширения для ...

Cataclysm Dark Days Ahead, статический анализ и рогалики Скорее всего, из названия статьи вы уже догадались, что в центре внимания ошибки в исходном коде. Но это вовсе не единственное, о чем пойдет речь в этой статье. Если кроме С++ и ошибок в чужом коде вас привлекают необычные игры и вам интересно узнать, что это такие за «рога...

Инженерный подход к разработке ПО. От теории к практике Как проверить идеи, архитектуру и алгоритмы без написания кода? Как сформулировать и проверить их свойства? Что такое model-checkers и model-finders? Что делать, когда возможностей тестов недостаточно? Привет. Меня зовут Васил Дядов, сейчас я работаю программистом в Яндекс.П...

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

Взгляд на обновления Android с точки зрения разработчика Кода без ошибок не бывает. Питер Нортон говорил: «Идеальному коду место в музее: там ценят всякие древности». А для исправления ошибок – существуют обновления. Хотелось бы поделиться своим взглядом на обновления с точки зрения разработчика рантайма Android. Часть нашей боль...

[Перевод] Почему вам стоит использовать язык Ада для программирования вашей системы Язык программирования Ада родился в середине 1970-х, когда министерство обороны США и министерство обороны Британии решили заменить сотни специализированных языков программирования для встроенных вычислительных систем, всё чаще использовавшихся в военных проектах. Язык Ада...

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

Библиотеки Electronic Arts почти хорошего качества Наше внимание привлёк репозиторий Electronic Arts на GitHub. Он очень маленький и из двадцати трёх проектов нас заинтересовали только несколько C++ библиотек: EASTL, EAStdC, EABase, EAThread, EATest, EAMain и EAAssert. Проекты оказались тоже очень маленькими (около 10 файлов...

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

Статический анализ IntelliJ IDEA против человеческого разума Не так давно я изучал вывод статического анализатора IntelliJ IDEA для Java-кода и наткнулся на интересный случай. Так как соответствующий фрагмент кода не является open source, я его анонимизировал и отвязал от внешних зависимостей. Будем считать, что он выглядел так: priva...

Allure-Android. Информативные отчеты для мобильной автоматизации Автоматизация мобильных приложений довольно молодая сфера: фреймворков много и многие проекты сталкиваются с проблемой выбора самого «быстрого, стабильного, простого в использовании». Также и мы около двух лет назад стояли перед выбором нового инструмента автоматизации тести...

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

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

Continuous Monitoring – автоматизация проверок качества ПО в CI/CD Pipeline Сейчас на хайпе тема DevOps. Конвейер непрерывной интеграции и доставки CI/CD внедряют все, кому не лень. Но большинство не всегда уделяют должное внимание обеспечению надежности работы информационных систем на различных этапах CI/CD Pipeline. В данной статье я хотел бы пого...

Шестая проверка Chromium, послесловие В начале 2018 года в нашем блоге появился цикл статей, посвящённый шестой проверке исходного кода проекта Chromium. Цикл включает в себя 8 статей, посвященных ошибкам и рекомендациям по их предотвращению. Две статьи вызвали бурное обсуждение, и до сих пор на почту мне изред...

[Из песочницы] Автосэмплер — жизнь после жизни Жил он долго и счастливо… а потом сломался. Пролог Году, кажется в 2009 для одного проекта был куплен прибор-анализатор воды. Ввиду того, что предполагалось его использовать для обеспечения работы технологического оборудования, прибор был куплен в комплектации с автосэмплер...

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

Модульные промышленные мониторы Advantech FPM-7002 Суровые условия производства накладывают дополнительные требования ко всем периферийным устройствам, в том числе и к мониторам. Промышленные мониторы серии FPM-7002 предназначены для установки во встраиваемые системы с повышенными требованиями надежности, имеют модульную с...

Доверяй, но проверяй! Как проверить свою модель с помощью облака IBM (Watson OpenScale) Проблема доверия предсказаниям, сделанных моделями машинного обучения, становится все более и более актуальна. Чем существеннее решение, принимаемое на основании этого предсказания, тем меньше доверия. Вызвано это в первую очередь тем, что далеко не всегда понятно, что же ...

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

[Из песочницы] Аппаратный bit banding CortexM3/M4(ARM), архитектура ядра, ассемблер, С/C++14 и капля мета программирования Введение Внимание, это не очередная «Hello world»статья о том как помигать светодиодом или попасть в свое первое прерывание на STM32. Однако, я постарался дать исчерпывающие объяснения по всем затрагиваемым вопросам, поэтому статья будет полезна не только многим профессионал...

Какие изменения нас ждут в macOS 10.15? Мы уже рассказывали, какие нововведения и изменения может получить iOS 13. Пришел черед рассказать об macOS 10.15. Как стало известно из источников в Bloomberg, ключевым нововведением новой настольной операционной системы Apple станут универсальные приложения. По данным изд...

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

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

[Перевод] Ускоряем JavaScript-код с использованием типа данных Set Автор материала, перевод которого мы сегодня публикуем, говорит, что уверен в том, что многие JavaScript-разработчики пользуются, в основном, такими типами данных, как Number, String, Object, Array и Boolean. В большинстве случаев этого вполне достаточно. Но если нужно сдела...

Процессоры сигналов изображения ARM Mali-C52 и Mali-C32 предназначены для беспилотных транспортных средств, роботов, домашних умных устройств и камер видеонаблюдения Компания ARM представила процессоры сигналов изображения (ISP) Mali-C52 и Mali-C32. По словам разработчика, они обеспечивают «лучшее в своем классе качество изображения». Для них доступен «полный пакет программного обеспечения и полный набор инструмент...

Промышленные неуправляемые коммутаторы EKI Серия EKI-2000/5000 — это неуправляемые промышленные коммутаторы, которые, при всей простоте, обладают рядом продвинутых функций. Коммутаторы легко интегрируются в любую SCADA-систему благодаря поддержке открытых протоколов Modbus TCP и SNMP, имеют защиту от неправильной ко...

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

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

CI\CD для стартапа: какие есть инструменты, и почему ими пользуются не только крупные и известные компании Разработчики CI\CD-инструментов часто указывают в качестве клиентов крупные компании — Microsoft, Oculus, Red Hat, даже Ferrari и NASA. Казалось бы, что такие бренды работают только с дорогими системами, которые не сможет позволить себе условный стартап из пары разработчиков...

Пишем под FPGA без HDL. Сравнение высокоуровневых средств разработки В последнее время производители FPGA и сторонние компании активно развивают методы разработки для FPGA, отличающиеся от привычных подходов использованием высокоуровневых средств разработки. Являясь FPGA-разработчиком, в качестве основного инструмента я использую язык описа...

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

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

[Перевод] Эффективное использование libdispatch Думаю, что большинство разработчиков использует libdispatch неэффективно из-за того как её представили сообществу, а также из-за запутанной документации и API. Я пришел к этой мысли после чтения обсуждения «concurrency» в рассылке посвященной развитию Swift (swift-evolution)...

PhpStorm 2019.3: поддержка PHP 7.4, PSR-12, WSL, MongoDB и многое другое Всем привет! Мы рады представить вам третий мажорный релиз PhpStorm в этом году! Обзор релиза можно посмотреть на странице “What’s new”. А под катом — подробный разбор всех заметных изменений и новых возможностей. Осторожно — очень много картинок. Скачать новую версию мож...

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

MPPT контроллер заряда на STM32F334C8T6 В комментариях под моими предыдущими статьями неоднократно возникал вполне резонный вопрос: "Зачем делать dc/dc преобразователи на микроконтроллере, когда есть готовые?" и я в качестве ответа постоянно упоминал, как наиболее яркий пример, контроллер заряда с алгоритмом MPPT....

IFA 2019: процессоры среднего уровня Qualcomm Snapdragon получат поддержку 5G Компания Qualcomm в ходе выставки IFA 2019, которая сейчас проходит в Берлине (Германия), поделилась планами по внедрению поддержки 5G в свои мобильные процессоры. Сейчас поддержка сотовых сетей пятого поколения в устройствах на базе флагманских чипов Snapdragon 855 и Snapdr...

[Перевод] Вышли обновления ML.NET и Model Builder: что нового Мы рады сообщить о выходе обновлений Model Builder и ML.NET. ML.NET — это кроссплатформенная среда машинного обучения с открытым исходным кодом (Windows, Linux, macOS) для разработчиков .NET. ML.NET предлагает Model Builder (простой инструмент пользовательского интерфейса)...

График развития диагностических возможностей в PVS-Studio С момента появления продукта PVS-Studio прошло более 8 лет, и всё это время мы реализовывали в нём новые диагностические правила. И прекращать не собираемся. Если вас заботят вопросы, не растеряли ли мы за эти годы бодрость, и не останавливается ли PVS-Studio в развитии, то...

В анализаторе все должно быть прекрасно: и функциональность, и интерфейс… Изучаем новый интерфейс Solar appScreener 3.1 Как говаривал Генри Форд, все можно сделать лучше, чем делалось до сих пор. Вот и мы так подумали, когда приступили к работе над версией 3.1 нашего анализатора защищенности приложений. Нам ОООЧЕНЬ хотелось сделать наш продукт не только самым крутым по функциональности: напри...

Использование камеры Fish eye на Raspberry Pi 3 с ROS — часть 2 Добрый день уважаемые читатели Хабра! Это вторая часть рассказа об использовании fish eye камеры на Raspberry Pi 3. Первую часть можно найти здесь. В этой статье я расскажу о калибровке fish eye камеры и применении камеры в детекции объектов с помощью пакета find_object_2d. ...

Анонс Windows 10 Insider Preview Build 18945 (Fast и Skip Ahead) Добрый вечер, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 18945 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Напоминаем, что разработка этого функционального обновления находится на ранней...

OnePlus 3 и 3T получили финальное обновление после прекращения поддержки В начале октября стало известно о том, что поддержка смартфонов OnePlus 3 и 3T, которые были выпущены более двух лет назад, официально прекращена. Однако месяц назад речь шла о том, что эти смартфоны не получат обновление до Android 10, а вот окончательное обновление си...

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

OpenCV на STM32F7-Discovery Я один из разработчиков операционной системы Embox, и в этой статье я расскажу про то, как у меня получилось запустить OpenCV на плате STM32746G. Если вбить в поисковик что-то вроде "OpenCV on STM32 board", можно найти довольно много тех, кто интересуется использованием это...

[Перевод] Стоит ли высокое качество ПО затрат на его разработку? Часто в процессе реализации проектов команды сталкиваются с вопросом: чему следует уделять больше внимания – выпуску новых фич или повышению качества кода? Обычно менеджеры делают выбор в пользу фич. Зачастую разработчики таким положением дел недовольны, считая, что им выде...

ASUS ZenFone 6 получает свежее корректирующее обновление Представленный в мае Asus ZenFone 6, получает свежее обновление, которое решает некоторые проблемы, возникшие в последние месяцы. Прошивка весит всего 122 МБ, поскольку это исключительно корректирующее обновление. Как указано в журнале изменений, были внесены исправлени...

[Перевод] 48 open source ресурсов для JavaScript (2019) Мы выбрали из 20 000 проектов и библиотек для JavaScript 48 самых лучших (по звёздам на GitHub) и сгруппировали в 5 категорий: Пользовательский интерфейс (1~9) Инструменты JavaScript (10~25) Machine Learning (26~33) Проекты (34~39) Инструменты разработчика (40~48) Чита...

Поддержка Visual Studio 2019 в PVS-Studio Поддержка Visual Studio 2019 в PVS-Studio затронула сразу несколько различных компонентов: сам плагин для IDE, command line приложение для анализа, ядра C++ и C# анализаторов, а также несколько утилит. О том, с какими проблемами мы столкнулись в ходе поддержки новой версии ...

Движок Unity получил поддержку DX12 на Xbox One и прибавку в скорости Компания Unity Technologies объявила, что теперь её движок, активно используемый во многих играх (особенно в небольших независимых проектах), поддерживает низкоуровневый графический API Microsoft DirectX 12 на Xbox One. Это позволяет разработчикам игр без особых уси...

ScrumBut в команде аналитиков: перед взлётом Привет, Хабр! Меня зовут Женя. Я системный аналитик компании «НОРБИТ» и начинающий Scrum-мастер. Я давно присматривалась к Scrum с целью изучить, попробовать и оценить его возможности в нашей команде аналитиков. И вот, после легкого пинка воодушевляющего разговора с РП я пон...

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

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

Техподдержка Миран: как все устроено Огонь, в котором вы сгораете, надо обслуживать. В.О.Пелевин, “Generation П” Привет, Хабр! Меня зовут Александр Соловьев, я руководитель технической поддержки дата-центров Миран. Скажите, вот вы пробовали писать учебники? Я — нет. Тем не менее, текст ниже — это своего рода...

[Из песочницы] Пять проблем в процессах эксплуатации и поддержки Highload ИТ систем Привет, Хабр! Десять лет я поддерживаю Highload ИТ системы. Не буду писать в этой статье о проблемах настройки nginx для работы в режиме 1000+ RPS или другие технические вещи. Поделюсь наблюдениями о проблемах в процессах, которые возникают в поддержке и эксплуатации таких с...

[Из песочницы] Настройка GitLab CI для загрузки java проекта в maven central Данная статья рассчитана на java разработчиков, у которых возникла потребность быстро публиковать свои продукты в репозиториях sonatype и/или maven central с использованием GitLab. В данной статье я расскажу про настройку gitlab-runner, gitlab-ci и maven-plugin для решения д...

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

4A Games: трассировку лучей можно выполнять силами любых GPU с поддержкой DirectX 12, а не только при наличии RT-ядер от NVIDIA Разработчики из компании 4A Games, которая буквально на днях выпустила игру Metro Exodus, в интервью среди прочего рассказали о возможности внедрения технологии трассировки лучей в игровых консолях следующего поколения. Отмечается, что с технической точки зрения это вполне р...

Разработка плагина для Grafana: история набитых шишек Всем привет! Несколько месяцев назад мы запустили в продакшн наш новый open-source проект — Grafana-плагин для мониторинга kubernetes, который назвали DevOpsProdigy KubeGraf. Исходный код плагина доступен в публичном репозитории на GitHub. А в этой статье мы хотим поделиться...

Проверка кода Telegram Open Network анализатором PVS-Studio Telegram Open Network (TON) — это платформа от создателей мессенджера Telegram, которая, помимо блокчейна, содержит в себе большой набор сервисов. Недавно разработчики опубликовали код платформы, написанный на C++, и разместили его на GitHub. Нам захотелось проверить проект...

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

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

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

Стандарт памяти LPDDR5 наконец утверждён. Смартфоны станут ещё быстрее Комитет инженерной стандартизации полупроводниковой продукции (JEDEC) обновила стандарт памяти LPDDR5, которая найдёт применение в мобильных устройствах, ноутбуках и автомобильных системах. Говоря о характеристиках, в первую очередь стоит отметить возросшую скорость пер...

Дизайн интерфейсов встраиваемых систем Осциллографы Встраиваемые и промышленные системы — моя любимая тема в разработке дизайна. Когда делаешь интерфейс ПО какого-нибудь лазера или яхты — это чистый кайф и творчество. На прошлой неделе я посетил выставки expoelectronica и embeddedday именно как UI разработчик. Ц...

Опыт использования flatten-maven-plugin для упрощения версионирования в maven-проектах О нас В 1С мы разрабатываем не только платформу 1С: Предприятие на С++ и JavaScript, но и приложения на Java – в частности новую среду разработки Enterprise Development Tools на базе Eclipse и сервер глубоко интегрированного с платформой мессенджера – Системы Взаимодействия....

[Перевод] Мой однострочный клиент Dropbox под Linux Хочу рассказать о своей попытке создать простой однострочный клиент Dropbox под Linux, используя только бесплатные компоненты с открытым исходным кодом, в том числе rclone, entr и systemd. Контекст Недавно проприетарный клиент Dropbox под Linux отказался от поддержки всех ф...

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

Новая прошивка для Lenovo Z6 Pro добавила технологию DC Dimming и ряд новых функций Не только Xiaomi Mi 9, Mi 8 и Mi Mix 3. Xiaomi добавит DC Dimming во все смартфоны с экранами OLED Смартфон Lenovo Z6 Pro получил новое обновление программного обеспечения за версией 11.0.457. Компания Lenovo добавила поддержку технологии DC Dimming, которая позволяет ...

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

Генерация многофазного ШИМ сигнала на TMS320F28027 Давным давно в далекой далекой галактике я написал небольшую статью о специализированных контроллера Piccolo от Texas Instruments, которые предназначены для управления силовыми преобразователями и электроприводом. Данные контроллеры являются очень мощным инструментов разрабо...

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

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

[Перевод] Анонс Github Security Lab: защита всего кода вместе Мы все несем коллективную ответственность за обеспечение безопасности программного обеспечения с открытым исходным кодом — никто из нас не может это делать в одиночку. Сегодня в Github Universe мы объявили Github Security Lab. Место где соберутся вместе исследователи безоп...

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

AMD представила встраиваемые процессоры Ryzen Embedded R1000 Advanced Micro Devices представила линейку однокристальных систем Ryzen Embedded R1000, рассчитанных на применение во встраиваемых устройствах. В неё вошли две 14-нм модели: Ryzen Embedded R1606G и R1505G. Новые APU сочетают два x86-ядра на...

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

[Из песочницы] Карта ДТП Расскажу вам о проекте “Карта ДТП” – интерактивной карте аварий в России. Карта упрощает анализ ДТП и помогает найти реальные причины происшествий. Как пришла идея, где брали данные и зачем открыли исходный код. За 2018 год в ДТП на дорогах России погибли 19088 человек Ч...

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

Специалисты Ubisoft совместно с Mozilla разрабатывают помощника программиста на основе ИИ Разработчики видеоигр Ubisoft совместно с компанией Mozilla разрабатывают помощника программиста на базе искусственного интеллекта. Проект получил название Clever-Commit. Как сообщается, задача обученного на «тоннах» кода с ошибками и исправлениями ИИ-ассистента за...

Микросервисы на php и swoole для конвертации телеграм каналов в RSS В предыдущем посте я рассказал про то, как настроить и использовать php телеграм клиент madelineProto для парсинга постов. Но при использовании библиотеки я столкнулся с несколькими недостатками: Долгая обработка запросов из-за авторизации телеграм клиента; Неудобная нас...

Реставрируем фотографии с помощью нейросетей Всем привет, я работаю программистом-исследователем в команде компьютерного зрения Mail.ru Group. Ко Дню Победы в этом году мы решили сделать проект по реставрации военных фотографий. Что такое реставрация фотографий? Она состоит из трех этапов: находим все дефекты изобр...

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

[Перевод] GitHub Package Registry будет поддерживать пакеты Swift 10 мая мы запустили ограниченный бета-тест GitHub Package Registry, службы управления пакетами, которая позволяет легко публиковать публичные или частные пакеты рядом с исходным кодом. В настоящее время сервис поддерживает знакомые инструменты управления пакетами: JavaScript...

Ловим кота с TLA+ Формальные методы считаются эффективным, но неоправданно сложным способом обеспечения надежности программного обеспечения. Используемые при этом инструменты существенно отличаются от привычных программисту. Эта статья написана с целью снизить порог вхождения в этот инструме...

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

Когерентные CFP WDM (100G/200G) и их применение в системах DWDM Первые пресс релизы о появлении когерентных CFP модулей (coherent CFP optical pluggable modules) стали появляться примерно 5-6 лет назад. Тогда их использование в системах оптического уплотнения было в новинку и являлось по сути нишевым решением. Сейчас, по прошествии шест...

[Перевод] Мониторинг .NET приложений .NET – управляемая среда выполнения. Это означает, что в ней представлены высокоуровневые функции, которые управляют вашей программой за вас (из Introduction to the Common Language Runtime (CLR), 2007 г.): Среда выполнения предусматривает множество функций, поэтому их удобно...

Завершено исследование типового решения по безопасности при обработке биометрических данных На основании отчета после проведения экспертизы будет выдано заключение о соответствии типового решения "Ростелекома" требованиям согласованного ранее с ФСБ России системного проекта программно-аппаратного комплекса для обеспечения информационной безопасности при о...

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

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

Liveprof покажет, когда и почему менялась производительность вашего PHP-приложения Привет, Хабр! Меня зовут Тимур Шагиахметов, я PHP-разработчик в Badoo. Производительность приложения — один из важнейших критериев качества работы программиста. В вопросах оптимизации PHP-приложений помощником является профайлер. Недавно мы рассказывали о том, какими и...

Страх, боль и ненависть технической поддержки Хабр — не жалобная книга. Эта статья о бесплатных инструментах компании Nirsoft для системного администратора Windows. Обращаясь в службу технической поддержки зачастую люди испытывают стресс. Кто-то переживает из-за того, что не сможет объяснить проблему и будет выглядить ...

Как диагностировать проблемы интеграции SDK. Опыт команды разработки Yandex Mobile Ads SDK Всем привет! Меня зовут Дмитрий Фисько, я разрабатываю Yandex Mobile Ads SDK. Наша библиотека предназначена для монетизации мобильных приложений на платформе Android и iOS. Сегодня я хочу рассказать вам о том, как мы упростили разбор сложных ошибок интеграции SDK в Android-п...

[Перевод] Новости из мира OpenStreetMap № 480 (24.09.2019-30.09.2019) CyclOSM is a brand new bike-oriented map 1 | Leaflet | CyclOSM v0.2 | Map data OpenStreetMap contributors О нас Уточнение: пользователь AndiTabinas не является участником программы стипендии SotM-2019 (об этом мы ошибочно написали в прошлом выпуске № 479). Информация (пос...

Microsoft выпустила PWABuilder 2.0 с набором дополнительных функций Компания Microsoft объявила о релизе PWABuilder 2.0. Этот инструмент позволяет легко превратить любое веб-приложение в Progressive Web App (PWA). Прежде всего, новая версия включает в себя обновлённый дизайн, который призван облегчить использование инструмента. Появилась ха...

Анализ кода ROOT — фреймворка для анализа данных научных исследований Пока в Стокгольме проходила 118-я Нобелевская неделя, в офисе разработки статического анализатора кода PVS-Studio готовился обзор кода проекта ROOT, используемого в научных исследованиях для обработки больших данных. Премию за такой код, конечно, не дашь, а вот подробный обз...

Microsoft подтверждает проблемы с установкой обновлений для Windows 10 Microsoft наконец-то подтвердила, что накопительное обновление Windows 10 за август 2019 года не удается установить на некоторые ПК с обновлением May 2019 Update. Это накопительное обновление KB4512508, которое было выпущено во вторник с рядом исправлений безопасности для ос...

Как мы сдружили EF 6 с MSSQL и PostgresSQL Жил-был проект на EF 6 с СУБД MSSQL. И появилась необходимость добавить возможность его работы с СУБД PostgreSQL. Проблем здесь мы не ожидали, ведь есть большое количество статей на эту тему, и на форумах можно найти обсуждение похожих задач. Однако, на деле не все оказало...

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

[Из песочницы] Анализ Minor Violations Java кода на платформе Duerank.com (часть 1) Введение Что мы знаем об ошибках в коде приложений, написанных на Java? Ну, мы наверняка знаем, что они там встречаются. А насколько часто встречаются? Как много делает разнообразных ошибок в своём коде разработчик? Под ошибками мы понимаем не только баги, но и наличие раз...

Проверка Telerik UI for UWP для знакомства с PVS-Studio Уже стало традицией, что программисты, пополняющие команду PVS-Studio, начинают свою деятельность с написания статьи про анализ проекта с открытым исходным кодом. В этот раз таким проверенным проектом станет Telerik UI for UWP. Читать дальше →

[Перевод] Грокаем DLR Предисловие переводчика Это скорее вольный пересказ, а не перевод. Я включил в эту статью только те части оригинала, которые имеют непосредственное отношение к внутренним механизмам работы DLR или объясняют важные идеи. Примечания будут заключены в квадратные скобки Многие...

В России создали ГОСТ для мобильных программ Теперь от разработчиков рекомендуется делать тестовые бесплатные версии для платных приложений. Кроме этого, имеется ещё 87 требований, утверждённых «Росстандартом». Основными пунктами при создании нового программного обеспечения являются: производительность, защита приватн...

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

[Перевод] Надёжность Flash–памяти: ожидаемое и неожиданное. Часть 1. XIV конференция ассоциации USENIX. Технологии хранения файлов Так как твердотельные накопители, основанные на технологии флэш-памяти, становятся основным средством постоянного хранения информации в дата-центрах, важно осознавать, насколько они надежны. На сегодня проведено большое количество лабораторных исследований чипов флэш-памяти ...

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

Citymobil — пособие для стартапов по увеличению стабильности на фоне роста. Часть 2. Какие бывают виды аварий? Это вторая статья из цикла про то, как мы в Citymobil увеличивали стабильность сервиса (первую можете почитать здесь). В этой статье я углублюсь в конкретику разбора аварий. Но перед этим я освещу один момент, о котором я должен был подумать заранее и осветить в первой ста...

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

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

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

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

Материнская плата MSI MPG X570 Gaming Pro Carbon WiFi на чипсете AMD X570: хороший набор функций при не совсем уж экстремальной цене Плата MSI MPG X570 Gaming Pro Carbon WiFi на момент подготовки обзора имела цену около 20 тысяч рублей. Понятно, что многим это покажется чрезмерно дорого, однако трудно ожидать низких цен на решения на топовом чипсете. При этом у платы очень неплохая функциональность: 16 по...

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

Smart IdReader SDK — встраиваем распознавание в проекты на Python и PHP Мы, Smart Engines, продолжаем цикл статей про то, как встроить наши технологии распознавания (паспортов, банковских карт и других) в ваши приложения. Ранее мы уже писали про встраивание на iOS и Android, показывали, как встроить распознавание в Телеграм-бота, а сегодня мы ра...

Как мы поддерживаем стабильность приложения Lamoda Всем привет! Меня зовут Виталий Бендик. Я тимлид команды разработки Android приложения в компании Lamoda. В 2018 году я выступал на Mosdroid Aluminium c докладом, расшифровкой которого хочу поделиться. Речь пойдет о том, как мы поддерживаем стабильность мобильного прило...

Tarantool стал основным хранилищем данных в WFM-решениях от компании «Базис ИТ» С точки зрения архитектуры, платформа BASIS.WFM от компании "Базис ИТ" - микросервисная, пиринговая, компонентная инструментальная среда, в которой можно достаточно быстро собрать специализированные Решения под конкретных Партнёров, ориентированные на планирование ...

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

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

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

OTUS. Наши любимые ошибки Два с половиной года назад мы запустили проект Otus.ru и я написал вот эту статью. Сказать, что я ошибся – это совсем ничего не сказать. Сегодня я хотел бы подвести промежуточный итог и немного рассказать о проекте, что у нас пока получилось, что у нас «под капотом». Начну я...

Xiaomi выпустила стабильное обновление для Mi Mix 2S и Mi Note 3 Xiaomi выпустила стабильное обновление прошивки MIUI 10.3.2.0 для смартфонов Mi Mix 2S и для Mi Note 3. Ключевым отличием среди прошивок, является версия ОС - Mi Mix 2S обновляется до Android 9.0 Pie, а Mi Note 3 по прежнему остается на Android 8.1 Oreo. Некоторые из осн...

[Перевод] Обновлена поддержка Razor в Visual Studio Code. Теперь с Blazor Совсем недавно мы анонсировали улучшенную поддержку инструментов Razor в Visual Studio Code с последним расширением C#. Этот выпуск включает в себя улучшенную диагностику Razor и поддержку для тег-хелперов и приложений Blazor. Читать дальше →

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

Как оценить производительность СХД на Linux: бенчмаркинг с помощью открытых инструментов В прошлый раз мы рассказывали об инструментах с отрытым исходным кодом для оценки производительности процессоров и памяти. Сегодня говорим о бенчмарках для файловых систем и систем хранения данных на Linux — Interbench, Fio, Hdparm, S и Bonnie. Читать дальше →

Concurrency и паттерны ошибок, скрытые в коде: Deadlock Наверняка, многие слышали, а кто-то встречал на практике, такие слова, как взаимные блокировки(deadlock) и гонки(race condition). Эти понятия относятся к разряду ошибок в использовании concurrency. Если я задам вам вопрос, что такое дедлок, вы с большой вероятностью без доли...

Какой язык программирования выбрать После того, как я написал статью «Почему не нужно учить Python первым языком», я на регулярной основе получаю много вопросов в личку, что лучше выбрать, как быть и так далее. Поэтому в этой статье я расскажу вам свои мысли на этот счет. И самое главное отвечу на «Священный Г...

[Перевод] Я получил от Кнута чек на 0x$3,00 Дональд Кнут — учёный в области информатики, который настолько заботится о правильности своих книг, что предлагает один шестнадцатеричный доллар ($2,56, 0x$1,00) за любую найденную «ошибку», где ошибкой считается всё, что «технически, исторически, типографически или политиче...

[Из песочницы] Получаем Spring Bean из сторонних Application Context правильно Добрый день, хабровчане! В данной статье предлагаю обсудить одну из проблем, с которой нередко сталкиваются в проектах, использующих фреймворк Spring ввиду неверно составленных spring-конфигураций. Не нужно стараться, чтобы такую ошибку допустить, и поэтому данная ошибка яв...

Rekko Challenge 2019: как это было Не так давно на платформе Boosters прошел контест рекомендательных систем от онлайн-кинотеатра Okko — Rekko Challenge 2019. Для меня это был первый опыт участия в соревновании с лидербордом (ранее пробовал силы только в хакатоне). Задача интересная и знакома мне из практик...

[Перевод] Как сделать SFINAE изящным и надежным И снова здравствуйте. Делимся с вами интересной статьёй, перевод которой подготовлен специально для студентов курса «Разработчик C++». Сегодня у нас гостевой пост Адама Балаша (Ádám Balázs). Адам является инженером-программистом в Verizon Smart Communities Hungary и зани...

Инструкция: как тестировать ansible-роли и узнавать о проблемах до продакшена Всем привет! Я работаю DevOps-инженером в сервисе бронирования отелей Ostrovok.ru. В этой статье я хочу рассказать о нашем опыте тестирования ansible-ролей. В Ostrovok.ru в качестве менеджера конфигураций мы используем ansible. Недавно мы пришли к необходимости тестирования ...

Функция мгновенного перевода с камеры в приложении Google Translate получила поддержку 60 новых языков Приложение Google Translate, которое давно уже перестало быть просто примитивным переводчиком, обзавелось поддержкой новых языков при работе с камерой. Если точнее, функция мгновенного перевода с камеры получила поддержку 60 новых языков, включая арабский, гречески...

Ошибка в Telegram позволяет прочитать удаленные сообщения Вчера на «Хабре» пользователь gurovofficial рассказал об ошибке в Telegram, которая позволяет читать удаленные сообщения. Пользователь уже отправил сообщение об ошибке службе поддержки мессенджера.

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

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

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

Отчёты по состоянию СХД с помощью R. Параллельные вычисления, графики, xlsx, email и всё вот это В статье приведён код по формированию регулярных отчётов по состоянию дисков СХД EMC VNX с альтернативными подходами и историей создания. Старался писать код с максимально подробными комментариями и одним файлом. Только пароли свои подставить. Формат исходных данных также ук...

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

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

Lumia с обновлением Windows 10 20H1 поддерживают сотовую связь Microsoft планирует прекратить поддержку Windows 10 Mobile в декабре, и большинство приложений перестанут работать в 2020 году. Мечта о Windows на телефоне до сих пор живет благодаря поддерживаемому сообществом проекту Windows 10 on ARM для Lumia 950 и 950 XL.Windows 10 on A...

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

Чипы Qualcomm получат поддержку индийской спутниковой навигационной системы NavIC Компания Qualcomm объявила о появлении поддержки в грядущих чипсетах индийской региональной навигационной системы IRNSS, получившей в дальнейшем название Navigation with Indian Constellation (NavIC), обеспечивающей предоставление точной информации о местоположении пользовате...

[Перевод] Создание изометрических 2D-уровней с помощью системы Tilemap В Unity 2018.3 появилась поддержка изометрических тайловых карт, очень напоминающая поддержку тайловых карт шестиугольников, которая была добавлена в версии 2018.2. Новые функции Tilemap позволяют быстро и эффективно создавать 2D-окружения на основе изометрических и шестиуг...

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

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

Buildbot: сказ с примерами еще об одной системе непрерывной интеграции (картинка с официального сайта) Buildbot, как несложно догадаться из названия, является инструментом для непрерывной интеграции (continuous integration system, ci). Про него уже было несколько статей на хабре, но, с моей точки зрения, из них не очень понятны преимущества с...

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

[Перевод] Представлен Polaris для поддержания кластеров Kubernetes в здоровом состоянии Прим. перев.: Оригинал этого текста написал Rob Scott — ведущий SRE-инженер компании ReactiveOps, которая и стоит за разработкой анонсируемого проекта. Нам очень близка идея централизованной валидации того, что деплоится в Kubernetes, поэтому мы с интересом следим за подобны...

[Перевод] Инструментарий для рефакторинга баз данных: Flyway vs. Liquibase В этой статье мы поговорим о Flyway и Liquibase — двух наиболее популярных инструментах на основе Java для рефакторинга баз данных. Цель статьи — сравнить эти инструменты и выяснить, какой из них в каких случаях лучше применять. Читать дальше →

[Перевод] Возможно, вам не нужен Kubernetes Девушка на скутере. Иллюстрация freepik, логотип Nomad от HashiCorp Kubernetes — это 300-килограммовая горилла для оркестровки контейнеров. Она работает в некоторых самых крупных контейнерных системах в мире, но дорого обходится. Особенно дорого для небольших команд, кото...

«То, что мы обсуждаем в России, актуально и на Западе»: интервью с Денисом Неклюдовым Денис Неклюдов интересен Android-разработчикам по целому ряду причин. Он занимается «Android Dev Подкастом», выступает на конференциях, посещает саммиты GDE — в общем, вовлечён в жизнь сообщества самыми разными способами. А поскольку сейчас живёт в США и работает в Lyft, м...

Mozilla выпустила первую предварительную сборку Firefox для Windows 10 ARM Открытый браузер Firefox теперь доступен для Windows 10 на ARM на канале Nightly (очень ранние и нестабильные сборки). Благодаря этому владельцы соответствующих планшетов и ноутбуков могут рассчитывать на более высокую производительность по сравнению с использование...

[Перевод] Разработка Adblock Radio tl;dr: Adblock Radio распознаёт аудиорекламу с помощью машинного обучения и Shazam-подобных техник. Основной движок с открытым исходным кодом: используйте его в своих продуктах! Можно объединить усилия для поддержки большего количества радиостанций и подкастов. Мало кому н...

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

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

[Перевод] Как Project Infer от Facebook помогает искать баги в мобильных приложениях перед деплоем Несколько дней назад команда инженеров Facebook отличилась — ее удостоили награды Most Influential POPL Paper Award. В среде специалистов по машинному обучению это весьма почетно. Награду вручили за работу Compositional Shape Analysis by Means of Bi-abduction, которая рас...

[Из песочницы] Логирование всех запросов к Базе данных в Asp.Net Boilerplate 4.3 .Net Core 2.1 Часто в проекте возникает непонятная ошибка для которой необходимо максимальное логирование всех запросов к Базе данных. Статья поможет тем, кто пишет (развертывает на сервере) один из своих первых проектов на Asp.Net Boilerplate. Читать дальше →

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

Google Ads запускает Ads API Doctor для исправления ошибок в API Программа доступна с открытым исходным кодом

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

У медиаплеера VLC уже около 3 млрд загрузок, а скоро появится поддержка AirPlay Разработчики свободного кроссплатформенного медиапроигрывателя VLC рассказали на выставке CES 2019 о достижении двух важных вех в развитии проекта. Сообщается, что приложение VLC приблизилось к отметке в 3 млрд загрузок пользователями на всех платформах. И это очень впечатля...

Как быстро посмотреть интересные предупреждения, которые выдает анализатор PVS-Studio для C и C++ кода? Время от времени программисты, которые начинают знакомиться с анализатором кода PVS-Studio, спрашивают: «Есть ли список предупреждений, которые точно указывают на ошибки?» Такого списка нет по той причине, что неинтересные (ложные) предупреждения в одном проекте, в другом о...

DevOops 2019 глазами разработчика 29-30 октября в Санкт-Петербурге прошла конференция DevOops. В этой статье я поделюсь впечатлениями и инсайтами, а также краткими заметками о прослушанных докладах. Небольшой disclaimer: поскольку я разработчик, то некоторые мысли и комментарии могут быть с уклоном в Dev, ...

NVIDIA GeForce Game Ready Driver 441.20 WHQL – поддержка Windows 10 November 2019 Update NVIDIA выпустила драйверы Game Ready версии 441.20 для видеокарт серии GeForce. Новая версия драйверов добавляет поддержку Windows 10 November 2019 Update, новых мониторов G-SYNC и игры Star Wars Jedi: Fallen Order.Список измененийновый драйвер содержит последние оптимизации...

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

Empire ERP. Занимательная бухгалтерия: главная книга, счета, баланс В данной статье мы осуществим попытку проникновения в самое сердце "кровавого энтерпрайза" — в бухгалтерию. Вначале мы проведем исследование главной книги, счетов и баланса, выявим присущие им свойства и алгоритмы. Используем Python и технологию Test Driven Development. Здес...

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

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

PVS-Studio идёт в облака – запуск анализа на Travis CI На данный момент облачные CI-системы — очень востребованный сервис. В этой статье мы расскажем, как, с помощью уже существующих средств, доступных в PVS-Studio, можно интегрировать анализ исходного кода с облачной CI платформой, на примере сервиса Travis CI. Читать дальше ...

В будущее с интеграцией сервисов Jenkins & Oracle APEX В процессе управления большими объемами данных и их визуализацией мы все чаще сталкиваемся с необходимостью внедрения единого инструмента доступа к управлению функционалом в хранилище. Причем этот инструмент должен быть одинаково удобен и понятен всем сотрудникам подразделен...

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

Как роботы Samsung проверяли на прочность смартфон Galaxy Fold Эксплуатационная надежность обычного мобильного устройства – понятие далеко не абстрактное, ведь мы ежедневно пользуемся им, как минимум, несколько десятков раз. С появлением гаджетов со складными экранами требования к надежности значительно расширились.

Lunix Foundation анонсировала open source платформу ELISA для разработки автоматизированных систем На прошлой неделе, 21 февраля, сообщество Linux Foundation анонсировало старт работ над платформой Enabling Linux in Safety Application (ELISA), цель которой — стандартизировать разработку и повысить надежность автоматизированных систем во всех основных промышленных областях...

Операционная система Haiku: портирование приложений и создание пакетов Осенью этого года, спустя 6 лет разработки, вышла первая бета-версия «R1/beta1» операционной системы Haiku. Я давно слежу за этим интересным проектом, который нацелен на воссоздание и последующее развитие существовавшей в 1994-2000 годах системы BeOS. Поэтому, как только на ...

Состоялся релиз программы GPU-Z 2.17.0 В новой версии популярной среди энтузиастов программы, как обычно, появилась поддержка свежих графических ускорителей, профильного ПО; также исправлены существующие ошибки и баги. Список ключевых нововведений: поддержка NVIDIA GTX 1660 Ti, Titan RTX, RTX 2080 Mobile, RTX 2...

Google прекратит поддержку сервиса «Инструменты переводчика» В последние годы динамика использования сервиса постоянно падает, рассказали в компании.

Математические неопределенности на примере Python Всем привет! Мы очень часто пользуемся привычными числами в наших любимых языках программирования. Привычные это 1, -1.5, pi или даже комплексные. А вот NaN, +Inf, -Inf используется нами гораздо реже. Примечание: В статье я использую элементарные функции Python версии 3.6....

В стабильной версии Chrome 74 появилось тёмное оформление и защита от обнаружения сайтами режима инкогнито Компания Google выпустила Chrome 74 для платформ Windows, Mac, Linux, Android и iOS, добавив в браузер множество новых функций. Среди них – расширенные возможности для режима PiP (картинка в картинке), уменьшение движения экрана при использовании эффекта параллакса, а также ...

[Из песочницы] Топ 20 ошибок при работе с многопоточностью на С++ и способы избежать их Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Top 20 C++ multithreading mistakes and how to avoid them» автора Deb Haldar. Сцена из фильма «Петля времени (2012) Многопоточность— одна из наиболее сложных областей в программировании, особенно в C++. За годы разраб...

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

Против Apple подан иск в связи с «дефектом звуковой микросхемы» в смартфоне iPhone В Иллинойсе подан групповой иск против компании Apple. Истцы утверждают, что производитель смартфонов iPhone скрывал «дефект звуковой микросхемы», из-за которого звуковые функции устройства становились недоступны, и оно не могло выполнять свое основное предн...

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

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

[Перевод] Элегантная обработка ошибок в JavaScript с помощью монады Either Давайте немного поговорим о том, как мы обрабатываем ошибки. В JavaScript у нас есть встроенная функция языка для работы с исключениями. Проблемный код мы заключаем в конструкцию try...catch. Это позволяет прописать нормальный путь выполнения в разделе try, а затем разобрать...

Oppo Reno получил быструю зарядку VOOC 3.0 Все больше смартфонов на рынке получают поддержку быстрой зарядки. Мало кто будет спорить, что это очень удобно. Ряд компаний разрабатывают свои технологии и достигли ощутимого прогресса в этом. Так, одной из лучших и быстрых на рынке является SuperVOOC от Oppo. Появится под...

SonarQube и IntelliJ IDEA: правильная интеграция SonarQube — отличный инструмент для внедрения статического анализа кода в процесс разработки ПО. Он поддерживает как используемую у нас в компании Java, так и большое количество других языков программирования. На данный момент этот инструмент плотно вошёл в нашу жизнь, сле...

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

[Из песочницы] Собственное исследование, что нам могут рассказать открытые источники? Вдохновившись статьей Group-IB о масштабной хакерской атаке на банки и предприятия от лица госучреждений решил разузнать про RTM немного больше. Цель – не только найти причастных к данной атаке, но и показать насколько доступно проведение такого расследования при наличии ...

Apple выпустила первую бета-версию macOS Mojave 10.14.6 для разработчиков Сегодня Apple выпустила первую бета-версию грядущего обновления macOS 10.14.6 для разработчиков в целях тестирования, всего через несколько дней после выпуска macOS 10.14.5, обновления, обеспечивающего поддержку AirPlay 2 для Mac. Новая бета-версия macOS Mojave 10.14.6 может...

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

Встраиваем Lua интерпретатор в проект для микроконтроллера (stm32) В достаточно крупных приложениях немалую часть проекта составляет бизнес-логика. Эту часть программы удобно отлаживать на компьютере, после чего встраивать в состав проекта для микроконтроллера, ожидая, что эта часть будет выполняться в точности так, как было задумано без ...

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

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

[Перевод] Опрос по инструментам фронтенда 2019 — результаты TL;DR. В большинстве категорий теперь выделяются явные лидеры — несколько лет назад такого не было. Это помогает накоплению знаний. Поэтому Навыки владения инструментами в среднем становятся глубже у разработчиков всех уровней. В этом году 3005 разработчиков ответили на 27...

[Из песочницы] Инструмент для управления проектами на базе Google Sheets Некоторое время назад передо мной встал выбор инструмента для управления небольшими проектами по SCRUM-методологии. У меня был довольно большой опыт использования различных инструментов включая Jira, Asana, Trello и проч., но ни один из них не подходил в полной мере для моег...

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

Мониторинг мёртв? — Да здравствует мониторинг Наша компания с 2008 года занимается преимущественно управлением инфраструктурами и круглосуточной технической поддержкой веб-проектов: у нас более 400 клиентов, это порядка 15% электронной коммерции России. Соответственно, на поддержке очень разнообразная архитектура. Ес...

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

Microsoft выпускает KB4516041 и KB4516048 для Windows 8.1 и Windows 7 В дополнение к дополнительным накопительным обновлениям для Windows 10, которые Microsoft выпустила на этой неделе, софтверный гигант программного обеспечения также выпустил новые ежемесячные предварительные версии накопительных обновлений для Windows 7 и Windows 8.1.Новые о...

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

Wear OS вскоре может получить поддержку датчика ЭКГ Одной из ключевых особенностей четвёртого поколения часов Apple Watch является датчик для снятия электрокардиограммы (ЭКГ), благодаря которому устройство может контролировать сердечный ритм пользователя и предупреждать его в случае серьёзных отклонений или каких-либо проблем...

Добавляем ZigBee устройства в Homebridge используя CC2531 На Хабре уже встречались статьи о том, как подружить ZigBee устройства различных производителей с системами управления умным домом, без использования фирменных хабов, вроде Xiaomi Gateway. Однако, инструкции для homebridge, я не нашел не только на Хабре, но и на других прост...

«Информзащита» завершила проект по оценке уровня соответствия СОИБ компании «ИНФИНИТУМ» требованиям ГОСТ по защите информации В АО «Специализированный депозитарий «ИНФИНИТУМ» успешно завершен проект по оценке соответствия системы обеспечения и управления информационной безопасностью (СОИБ) требованиям ГОСТ Р 57580.1-2017. Проект реализован экспертами ...

Windows 10 May 2019 Update приводит к зависанию Microsoft Visio Microsoft Visio, которая используется для создания простых или сложных диаграмм, может зависнуть в Windows 10 May 2019 Update (версия 1903).Microsoft Visio – это адаптируемая программа, в основном используемая почти всеми в бизнесе и организации для создания различных диагра...

Cloud Firestore + Android это просто Не так давно Google зарелизил Cloud Firestore. Cloud Firestore — это облачная NoSQL база данных, которую Google позиционирует как замену Realtime Database. В этой статье я хочу рассказать как начать ей пользоваться. Читать дальше →

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

Консольный платформер Monster Boy and the Cursed Kingdom может выйти на iPhone и iPad Monster Boy and the Cursed Kingdom – красивый платформер, уже вышедший на основных консолях и готовящийся к релизу на ПК этим летом. Это духовный наследник серии Wonder Boy, одну из частей которой в обновленном виде мы видели на мобильных совсем недавно. Monster Boy наследу...

В Call of Duty: Mobile стартовал новый режим, появились зомби-режим и поддержка геймпадов Call of Duty: Mobileи на старте привлекла десятки миллионов игроков по всему мире, а Activision только приступает к активной поддержке. В конце прошлой недели для обеих версий игры вышло обновление с массой нововведений: Представили 2 сезон. Это и новые геймплейные режимы, ...

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

[Перевод] 10 малоизвестных возможностей инструментов разработчика Chrome Автор заметки, перевод которой мы публикуем, пользуется инструментами разработчика Chrome почти каждый день. Здесь он хочет рассказать о малоизвестных возможностях этих инструментов. Он говорит, что если бы знал о них раньше, то ему они точно бы пригодились. Читать дальше ...

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

[Перевод] UDB. Что же это такое? Часть 3. Datapath FIFO Продолжаем делать перевод фирменной документации фирмы Cypress на блоки UDB. Тем более, что всё очень удачно совпадает. Для продолжения практической статьи по UDB понадобится использование FIFO, а в теоретической части мы подобрались как раз к их описанию. Поэтому начинаем...

[Из песочницы] Построение пакета RPM для Rosa Linux на практике Если Вы уже давно пользуетесь операционной системой Linux и хоть немного разбираетесь в программировании, рано или поздно Вам может понадобиться собрать программу из исходного кода. Может быть, нужной программы не окажется в репозиториях дистрибутива. Или в этих репозиториях...

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

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

Готовое решение markdown2pdf с исходным кодом для Linux Предисловие Markdown это прекрасный способ написать небольшую статью, а иногда и достаточно объемный текст, с несложным форматированием в виде курсива и толстого шрифта. Также Markdown неплох для написания статей с включением исходного кода. Но иногда хочется без потерь, тан...

Photoshop для iPad официально появился в App Store Photoshop для iPad уже вышел, но до настольной версии ему пока далеко Обещанного три года ждут. Обычно так говорят, когда хотят съехать с исполнения данного некогда обещания. Это выражение настолько прочно вошло в нашу жизнь, что многие из нас сами стали оправдывать им неисп...

[Перевод] 1.1 миллиард поездок на такси: 108-ядерный кластер ClickHouse Перевод статьи подготовлен специально для студентов курса «Data Engineer». ClickHouse — это колоночная база данных с открытым исходным кодом. Это великолепная среда, где сотни аналитиков могут быстро запрашивать развернутые данные, даже когда вводятся десятки миллиардов но...

«Секретики» DPAPI или DPAPI для пентестеров Вторая статья по итогам выступления нашей команды на OFFZONE-2018. На этот раз рассмотрим доклад с MainTrack “Windows DPAPI “Sekretiki” or DPAPI for pentesters”. Внимание! Очень много буков! При проведении RedTeam кампаний хочется давать меньше поводов для реакции BlueTeam...

QEMU.js: теперь по-серьёзному и с WASM Когда-то давно я смеха ради решил доказать обратимость процесса и научиться генерировать JavaScript (а точнее, Asm.js) из машинного кода. Для эксперимента был выбран QEMU, некоторое время спустя была написана статья на Хабр. В комментариях мне посоветовали переделать проект ...

Заворачиваем весь трафик ОС в Tor Все описанное в статье реализовано в виде инструмента Toroxy, доступного на GitHub В последнее время анонимность в сети является предметом горячих споров. Ни для кого не секрет, что данные о посещениях Интернет-ресурсов с локального устройства могут собираться на разных у...

[Перевод] Компилируем FFmpeg в WebAssembly (=ffmpeg.js): Часть 1 — Приготовления Из этой части вы узнаете: Зачем это всё нужно Как скомпилировать FFmpeg в Docker Зачем это всё нужно Главные задачи у серии публикаций такие: Создать туториал по использованию Emscripten для компиляции C/C++ библиотек в JavaScript (более детальный и полезный, чем написа...

Создатели GTA будут платить деньги за нахождение уязвимостей в своей новой игре Еще в апреле 2016 года студия Rockstar запустила программу “Bug bounty”, суть которой заключалась в поиске ошибок и уязвимостей в системе безопасности GTA Online. Тогда пользователи, сумевшие найти дефекты в игре, могли получить от разработчиков от 150 до 10 тыс долларов. Се...

[Перевод] 10 тенденций тестирования программного обеспечения, на которые стоит обратить внимание в 2019 году Всем привет! В преддверии запуска курса «QA-специалист», который стартует уже через 10 дней, хотим поделиться материалом, который расскажет о новых подходах в тестировании и будет полезен всем, кто следит за новыми тенденциями и остается в тонусе. С появлением технологий A...

Тюнинг Firebird и Linux для БД размером 691 Гб с 1000+ пользователей Firebird является очень популярной открытой СУБД в России, и, несмотря на отсутствие шумных маркетинговых акций, используется в большом количестве ответственных систем, особенно в медицинских и государственных системах автоматизации. Размер БД и количество активных пользова...

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

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

[Перевод] Дзен Эрланга [и Эликсира — прим. переводчика] Введение от переводчика В данной статье речь идёт об Erlang, но всё сказанное в равной степени применимо и к Elixir — функциональному языку, работающему поверх той же виртуальной машины BEAM. Он появился в 2012 году и сейчас активно развивается. Elixir получил более привычны...

Microsoft выпустило обновление для Windows 10 May 2019 Update (18362.116) На прошлой неделе Microsoft выпустила новое накопительное обновление для инсайдеров Windows в каналах Slow Ring и Release Preview, которые в настоящее время тестируют обновление Windows 10 May 2019 Update. Сегодня компания выпустило новое кумулятивное обновление.Новая сборка...

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

[recovery mode] REST страсти по 200 Давно я хотел написать эту статью. Все думал — с какой стороны зайти правильнее? Но, вдруг, недавно, на Хабре появилась подобная статья, которая вызвала бурю в стакане. Больше всего меня удивил тот простой факт, что статью начали вбивать в минуса, хотя она даже не декларир...

Нам нужен другой 1С-Битрикс, часть 2 После публикации первой статьи в деле борьбы за права причастных к 1С-Битриксу появились соподвижники Dekmabot и Sergik_DS со статьями «Почему Битрикс — Битрикс» и «За что, Битрикс? Или сказочный мир 1С», чему я несказанно рад. Как там пишут в руководствах по зачинанию старт...

[Перевод] Программный поиск общего кода с помощью oEmbed Всем доброго времени суток! Хочу поделиться переводом статьи ""Programmatically Discovering Sharing Code With oEmbed" автора Drew McLellan. Введение На многих сайтах размещены мультимедиа и контент, которыми можно поделиться в другой платформе с помощью некоторого HTML-кода...

Новый браузер Microsoft Edge может появиться на Linux В декабре компания Microsoft объявила, что переделает свой браузер на основе открытого движка Google Chrome. После этого он сможет работать не только в системе Windows 10, но и в других, вроде macOS, Windows 7, Windows 8.1.При желании можно будет запустить Edge и на Linux. Л...

Топ ошибок со стороны разработки при работе с PostgreSQL HighLoad++ существует давно, и про работу с PostgreSQL мы говорим регулярно. Но у разработчиков все равно из месяца в месяц, из года в год возникают одни и те же проблемы. Когда в маленьких компаниях без DBA в штате случаются ошибки в работе с базами данных, в этом нет ничег...

[Перевод] 56 проектов на Python с открытым исходным кодом 1. Flask Это микро-фреймворк, написанный на Python. Он не имеет валидаций для форм и уровня абстракции базы данных, но позволяет вам использовать сторонние библиотеки для общих функций. И именно поэтому это микро-фреймворк. Flask предназначен для простого и быстрого создан...

[Из песочницы] Использование SQLite в Unity (Unity + SQLite) Всем привет, данная публикация будет посвящена работе с встраиваемой реляционной базой данных SQLite в Unity. Данная статья написана новичком для новичков с целью показания работы с SQLite, предполагается, что вы знаете основы SQL. Так как в интернете нет ясного тутора для н...

[Перевод] Deno — новый Node.js? В нашем проекте, IDE для работы с API TestMace, в качестве основного языка используется TypeScript, поэтому мы активно интересуемся проектами, связанными с данным языком. Сегодня вашему вниманию представляется перевод статьи об инструменте Deno — runtime для TypeScript (но э...

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

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

Новый взгляд на изучение и документирование исходного кода TL;DR Привет. Меня зовут Богдан и я изучаю проблемы чтения кода. Я только что закочнил первую рабочую версию «codecrumbs» — визуального инструмента для изучения исходного кода с помощью «хлебных крошек». Гитхаб репозиторий можно посмотреть тут. Проблема Недавно я проводил...

Архитектура Armv8.1-M включает расширенные возможности машинного обучения и обработки сигналов для самых маленьких встраиваемых систем Компания Arm на этой неделе представила архитектуру Armv8.1-M. В ней используется технология Arm Helium, представляющая собой расширение M-Profile Vector Extension (MVE) для процессоров серии Arm Cortex-M. Как утверждается, Helium обеспечивает повышение производительнос...

Microsoft добавляет в Linux поддержку самой популярной файловой системы Этим шагом компания продолжила поддерживать сообщество разработчиков ПО с открытым исходным кодом.

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

Форматирование исходного кода в Linux средствами ClangFormat: проблемы и решение Согласитесь, приятно и полезно, когда в проекте исходный код выглядит красиво и единообразно. Это облегчает его понимание и поддержку. Покажем и расскажем, как реализовать форматирование исходного кода при помощи clang-format, git и sh. Читать дальше →

Разработчик научился конвертировать ПО для iOS в ПО для macOS до релиза Marzipan В прошлом году Apple впервые дала нам понять, что готовится к слиянию приложений для iOS и macOS. Эта инициатива, предназначенная для усиления связи между платформами, получила название Marzipan. Для ее реализации Apple должна выпустить специальный пакет инструментов, позво...

Apple выпустила iOS 12.1.3, macOS 10.14.3, watchOS 5.1.3 и tvOS 12.1.2 в качестве багфиксов Новая порция обновлений всех имеющих операционных систем от Apple в виде iOS 12.1.3, macOS 10.14.3, watchOS 5.1.3 и tvOS 12.1.2 несёт в себе исключительно исправления и дополнения, связанные со стабильностью работы и энергоэффективностью, поэтому даже скриншотов от сегодняш...

Браузер Tor запустил краудфандинговую кампанию при поддержке биткоин-процессинга BTCPay Server В знак солидарности с разработчиками решений с открытым исходным кодом популярный в биткоин-сообществе процессинговый сервис BTCPay Server поддержал кампанию по сбору средств для ориентированного на приватность пользователей браузера Tor, сообщает Bitcoin Magazine. Как говор...

Реализация пула соединений в WCF для .Net Core с использованием HttpClientFactory Наш продукт разрабатывается на платформе .Net Core 2.2 с использованием WCF 4.5 для взаимодействия с SOAP сервисом клиента. В процессе работы сервиса разработчики шины данных заметили высокую нагрузку на сервер. Далее стали появляться проблемы с доступом к сервису. В результ...

Sony PlayStation 5 получит процессор AMD с поддержкой трассировки лучей Как известно, новая игровая консоль Sony PlayStation 5 выйдет в 2020 году как раз в период праздников, поэтому многим посчастливится найти такой подарок под ёлкой. Новинка получит поддержку разрешения 8K, а в её основе будет лежать процессор, который окажется во много раз бо...

Производительность анимаций на сайтах При разработке сайтов, выходящих за рамки условного бутстрапа, рано или поздно возникают вопросы, связанные с производительностью анимаций. Особенно важными они являются в дизайнерских сайтах, вроде тех, что попадают в каталоги Awwwards, FWA, CSS Design Awards и.т.д. При эт...

Две стороны WebView: о быстром запуске проектов и краже персональных данных Привет, Хабр! Меня зовут Евгений, я Full Stack JS разработчик, текущий стек Node.js + React + React Native. В разработке я более 10 лет. В мобильной разработке пробовал разные инструменты от Cordova до React Native. Получив опыт работы с Cardova, я понял, что мне хотелось ...

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

Топ 10 ошибок в C++ проектах за 2018 год Вот уже три месяца, как 2018 год позади. Для многих он пролетел почти незаметно, но для нас, разработчиков PVS-Studio, он оказался весьма насыщенным. Мы трудились в поте лица, бесстрашно боролись за продвижение статического анализа в массы и искали новые ошибки в открытых пр...

Интерфейсы как абстрактные типы данных в Go Не так давно коллега ретвитнул отличный пост How to Use Go Interfaces. В нем рассматриваются некоторые ошибки при использовании интерфейсов в Go, а также даются некоторые рекомендации по поводу того, как их все-таки стоит использовать. В статье, упомянутой выше, автор приво...

Снижаем время простоя при обновлении Zimbra К таким преимуществам Zimbra Collaboration Suite Open-Source Edition, как надежность, высокое быстродействие, а также бесплатность решения, следует отнести еще и достаточно частое появление свежих версий Zimbra и регулярное добавление в них востребованных сообществом функций...

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

[Перевод] Шина PCIe 5.0 готова к вводу в строй Индустрия застряла с шиной PCIe 3.0 почти на семь лет, и хотя первая поддержка PCIe 4.0 для настольных компьютеров скоро появится в третьем поколении чипов Ryzen от AMD, а первые SSD с поддержкой PCIe 4.0 появились совсем недавно, производители уже готовятся к принятию PCIe ...

Вебинар «Как пережить комплаенс? Оптимальный подход к выполнению требований регуляторов» Не всегда аудит ИБ в компании ограничивается увлекательным пентестом: в ряде случаев требуется провести оценку соответствия разного рода нормативам и стандартам. Особенно активно пугают аббревиатурами 382-П, ОУД4, КИИ, 152-ФЗ, при этом о практических вещах не говорят: как ...

Выявляем процессы с дисковой активностью в Linux TL;DR: статья рассказывает об удобном, быстром и надежном способе определения Linux-программ, записывающих данные на диск, что помогает в выявлении большой или аномально частой нагрузки на дисковую подсистему, а также позволяет оценить накладные расходы файловой системы. Это...

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

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

[Перевод] 10 самых распространенных ошибок при работе с платформой Spring. Часть 1 Всем привет. Сегодня делимся первой частью статьи, перевод которой подготовлен специально для студентов курса «Разработчик на Spring Framework». Начнём! Spring — пожалуй, одна из самых популярных платформ разработки на языке Java. Это мощный, но довольно сложный в освоении...

Waves выпустила обновление ноды с поддержкой языка RIDE Блокчейн-экосистема Waves Platform выпустила обновление ноды версии 0.17, благодаря которому в тестовой сети стал доступен язык программирования RIDE для dApps. Об этом журналу ForkLog сообщили представители компании. Одной из характеристик языка является защита разработчико...

[Перевод] Свободные текстовые редакторы для совместной работы Много лет меня преследовал этот зуд — попытки найти «идеальный» текстовый редактор для совместной работы. Но не просто любой текстовый редактор, который поддерживает совместную работу, о нет, моя задача — найти (ну, по крайней мере, искать) открытые текстовые редакторы с г...

AMD Radeon Software Adrenalin 2019 Edition 19.6.1 – поддержка Xbox Game Pass AMD выпустила новое обновление драйверов Radeon Software Adrenalin 2019 Edition для систем Windows 10 и Windows 7. Драйвер AMD Radeon 19.6.1 не является большим выпуском и имеет небольшое количество изменений.AMD Radeon 19.6.1 добавляет поддержку Microsoft Xbox Game Pass для...

БД ClickHouse для людей, или Технологии инопланетян Алексей Лизунов, руководитель направления центра компетенций дистанционных каналов обслуживания дирекции информационных технологий МКБ В качестве альтернативы стеку ELK (ElasticSearch, Logstash, Kibana) мы проводим исследовательские работы по использованию БД ClickHouse в к...

Переход на macOS — есть ли жизнь без Windows? Windows прочно вошла в наши жизни и стала самой популярной ОС в мире. Но есть люди, которых она не устраивает. Или те, кто просто ищет нового, систему по другую сторону баррикад - macOS. Я решился на такой шаг и подробно рассказываю про свой личный переход. А еще выясняю, че...

Microsoft официально представила Xbox Live для Android и iOS Несколько недель назад на официальном сайте GDC 2019 появилась информация о мероприятии Microsoft, в ходе которого компания планировала представить Xbox Live SDK для Android, iOS и Nintendo Switch. Что же, официальный анонс комплекта разработки действительно состоялся, одна...

[Перевод] Простите, пользователи macOS, но Apple зашла слишком далеко Несколько лет назад, когда был выпущен первый релиз Cogmind, я без предрассудков относился к выпуску официальной версии под Mac. В конце концов, Cogmind — моя первая коммерческая игра, раньше я выпускал только хобби-проекты в статусе freeware и только под Windows, поэтому н...

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

Модифицируем Bluetooth-стек для улучшения звука на наушниках без кодеков AAC, aptX и LDAC Перед прочтением этой статьи рекомендуется ознакомиться с предыдущей статьёй: Аудио через Bluetooth: максимально подробно о профилях, кодеках и устройствах Некоторые пользователи беспроводных наушников отмечают низкое качество звука и недостаток высоких частот при использов...

Банкам с базовой лицензией поможет аутсорсинг Как рассказал “Коммерсату” глава комитета Госдумы по финансовому рынку Анатолий Аксаков, 18 февраля на встрече банкиров с главой ЦБ Эльвирой Набиуллиной обсуждалось, в том числе обслуживание банков с базовой лицензией (с небольшим капиталом, на данный момент - 14...

Укрощение Горыныча, или Декомпиляция eBPF в Ghidra Автор статьи Nalen98 Добрый день! Тема моего исследования в рамках летней стажировки «Summer of Hack 2019» в компании Digital Security была «Декомпиляция eBPF в Ghidra». Нужно было разработать на языке Sleigh систему трансляции байткода eBPF в PCode Ghidra для возможност...

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

«Битрикс24»: «Быстро поднятое не считается упавшим» На сегодняшний день у сервиса «Битрикс24» нет сотен гигабит трафика, нет огромного парка серверов (хотя и существующих, конечно, немало). Но для многих клиентов он является основным инструментом работы в компании, это настоящее business-critical приложение. Поэтому падать — ...

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

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

Учебные проекты на Godot — Pong (часть 1) Создание и настройка сцены игрового процесса Приветствую вас, хабровчане! Как и обещал в конце прошлой статьи, я обратил свой взгляд на игровой движок. Правда мне больше приглянулся Godot. Почему? Тема для отдельной статьи размышления, а я не умею долго думать и, тем более, размышлять. Несмотря на то, что Pong имеетс...

[Из песочницы] Parse & Android: рекомендации начинающим разработчикам Аннотация В данной статье я бы хотел поделиться общими впечатлениями от использования BaaS – решения под названием Parse для разработки бэкэнда Android-приложения, рассказать о всех «подводных камнях», с которыми мне пришлось столкнуться в период разработки. Впервые эту плат...

Windows 10 Mobile получает второе последнее накопительное обновление В Windows 10 Mobile Creators Update (версия 1703) уже давно завершилась основная поддержка, и ожидается, что Microsoft также завершит поддержку последней расширенной версии мобильной ОС в конце этого года.Согласно документации Microsoft, 10 декабря 2019 года Windows 10 Mobil...

Как съездить на стажировку в крупную IT-компанию Если вы давно хотели поехать на зарубежную стажировку, но совершенно не знаете, как к этому подступиться, то эта статья для вас. Фёдор Киташов (kitashov), студент 4 курса ФРКТ МФТИ, рассказал что нужно сделать, чтобы съездить на стажировку с полным покрытием, поработать на...

Основные аспекты организации непрерывности бизнеса Сегодня информационные технологии являются неотъемлемой частью любого бизнеса – независимо от его масштаба и отрасли. В связи с этим организация непрерывности бизнеса неразрывно связана с бесперебойным функционированием ИТ-ресурсов. Для этого необходимо создать собственную н...

Роскомнадзор заказал автоматизированную систему контроля за поисковиками и VPN 19 марта 2019 года на сайте госзакупок размещён тендер на разработку «автоматизированной системы контроля выполнения требований статьи 15.8 федерального закона от 27.07.2006 №149-ФЗ „Об информации, информационных технологиях и о защите информации”». Заказ разместило подвед...

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

[Из песочницы] 50 оттенков безопасности Друпала Для хеширования паролей используется модифицированная версия phpass, от которой на официальном сайте открестились. Но менять механизм не спешат [#1845004]. Не желают даже предоставить возможность выбора механизма хеширования [#2939888]. Число итераций для стойкости хеширова...

«Алиса, пойдём во фронтенд!» Голосовые помощники — не далёкое будущее, а реальная действительность. Alexa, Siri, Google Now, Алиса встроены в «умные» колонки, часы и телефоны. Они постепенно меняют наш способ взаимодействия с приложениями и устройствами. Через ассистента можно узнать прогноз погоды, куп...

[Из песочницы] Использование let объявлений переменных и особенности образуемых при этом замыканий в JavaScript Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё...

Запускаем systemd в контейнере Мы давно следим за темой использования systemd в контейнерах. Еще в 2014 году наш инженер по безопасности Дэниел Уолш (Daniel Walsh) написал статью Running systemd within a Docker Container, а еще через пару лет – другую, которая называлась Running systemd in a non-privilege...

Инструменты для запуска и разработки Java приложений, компиляция, выполнение на JVM Ни для кого не секрет, что на данный момент Java — один из самых популярных языков программирования в мире. Дата официального выпуска Java — 23 мая 1995 года. Эта статья посвящена основам основ: в ней изложены базовые особенности языка, которые придутся кстати начинающим “д...

Хрупкий кабель дисплея MacBook Pro: очередная ловушка, в которую загнали себя инженеры Apple Кабели, о которых идёт речь, свободно обёрнуты вокруг платы контроллера дисплея. Они туго натягиваются при открытии крышки экрана, что со временем приводит к надрыву Специалисты iFixit подробно разобрали очередную ошибку дизайна в ноутбуках Apple. Ошибки проектирования в ...

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

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

А не фигню ли я делаю? Зачем разработчики ходят в гембу Привет, Хабр. Я тестировщик и очень верю в то, что гемба – это отличный инструмент для понимания своего продукта. Там хорошо получается ответить себе на вопрос: «А не фигню ли я делаю?» Сегодня хочу рассказать подробнее про его преимущества, а также инсайты, которые мы получ...

AMD Radeon Software Adrenalin 2019 Edition 19.5.1 – добавлена поддержка Windows 10 May 2019 Update Ожидается, что Microsoft начнет выпускать обновление Windows 10 May 2019 Update для совместимых устройств через одну-две недели. Чтобы подготовить свои устройства к новому обновлению Microsoft, производители GPU и CPU выпускают новые совместимые драйверы.После Intel и NVIDIA...

Что нового в iOS 12.2 Beta 3: редизайн Apple TV Remote, настройка новостей Apple, исправление ошибок и многое другое Вчера Apple выпустила третью бета-версию iOS 12.2 для разработчиков, и, как и в большинстве ранних бета-версий, новое программное обеспечение вводит улучшения и изменения пользовательского интерфейса для различных функций. Существует несколько незначительных изменений, таких...

Qualcomm QCA4020 обеспечивает поддержку Alexa Компания Qualcomm Technologies, Inc. объявила о выпуске нового комплекта разработчика с поддержкой AWS IoT Core. Основа этого комплекта — мультимодальная система Qualcomm QCA4020. Она прошла все тестирования для работы с технологиями голосового управления Amazon Voic...

Apple выпустила watchOS 6.1 для старых и новых Apple Watch и macOS 10.15.1 Обновлениям операционных систем Apple не видно конца и края Наверное, все любят оказываться правыми и гордо объявлять во всеуслышание: «Ну я же говорил». Не так ли? Это сразу, хоть и ненадолго, поднимает самооценку и заставляет нас чувствовать себя по меньшей мере конкурента...

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

В Windows 10 найдена серьёзная уязвимость: Апрельское обновление перенесут из-за ошибки Сейчас Microsoft занимается активным исправлением багов в своей ОС. В Windows 10 найдена серьёзная уязвимость, из-за которой якобы перенесут апрельское обновление, сообщают западные СМИ. Ошибки в системе безопасности ОС могут сорвать планы по внедрению улучшений в программу...

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

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

Расширяем возможности UObject в Unreal Engine 4 Всем привет! Меня зовут Александр, я уже более 5 лет работаю с Unreal Engine, и почти все это время — с сетевыми проектами. Поскольку сетевые проекты отличаются своими требованиями к разработке и производительности, нередко необходимо работать с более простыми объектами, та...

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

[Перевод] Преимущества и недостатки HugePages Перевод статьи подготовлен для студентов курса «Администратор Linux». Ранее я рассказал о том, как проверить и включить использование Hugepages в Linux. Эта статья будет полезна, только если у вас действительно есть, где использовать Hugepages. Я встречал множество людей, ...

Камеру Sony Xperia 1, которая с треском провалила тест DxOMark, улучшили при помощи обновления Флагманский смартфон Sony Xperia 1 получил свежее обновление программного обеспечения, которое должно улучшить заметно улучшить возможности камеры этого устройства. Во-первых, был оптимизирован сам интерфейс камеры, во-вторых, улучшено качество получаемых снимков и рабо...

Приглашаем на второй Camunda BPM Meetup Raiffeisenbank Приглашаем вас на второй в России открытый митап Camunda BPM, который пройдет 30 мая 2019 года на площадке Райффайзенбанка в Нагатино. Как прошел первый митап сообщества Camunda BPM можно посмотреть в этом посте. Для нас очень важно формировать сообщества и делиться знания...

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

PVS-Studio хотел, но не смог найти баги в robots.txt На днях Google опубликовал исходники парсера robots.txt. Почему бы не прогнать уже проверенный всеми вдоль и поперек проект через PVS-Studio и, возможно, найти ошибку. Сказано — сделано. Жаль, что ничего значимого найти не удалось. Ну что ж, тогда пусть это будет просто пов...

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

[recovery mode] Как выбрать лучшее место для открытия филиала и визуализировать результаты на картах Выбор места для нового филиала — ответственное решение. Ошибка может стоить дорого, особенно в капиталоемких отраслях. Чаще всего такие решения принимаются менеджментом экспертно: на основе знания города, отрасли, предыдущего опыта. В статье я расскажу о том, как аналитика...

ASUS добавила поддержку Intel Cascade Lake-X платам на чипсете X299 ASUSTeK Computer сообщила о доступности новых прошивок UEFI для материнских плат с процессорным гнездом Intel LGA2066. Наряду с традиционными улучшениями производительности и стабильности системы в списке нововведений значится поддержка чипов Intel Core X...

Яндекс встраивает в свои сервисы приложение для самозанятых Яндекс продолжает встраивать в свои сервисы приложение для самозанятых. Об этом рассказал сооснователь и генеральный директор ГК «Яндекс» Аркадий Волож на Московском финансовом форуме. На данный момент приложение уже встроено в Дзен, следующие на очереди – сервисы Яндекс.Тол...

Fallout 76 до конца месяца получит два обновления В прошлом году Bethesda намекала на появление в Fallout 76 некоторых нововведений, и уже в этом месяце поклонникам игры стоит ждать как минимум два патча. Правда, нового контента в них пока что не будет. Первое обновление будет выпущено 14 января. Оно направлено н...

[Перевод] Профилирование кода Go-проекта и решение проблемы с выделением памяти Пожалуй, каждому программисту известны слова Кента Бека: «Make it work, make it right, make it fast». Сначала надо сделать так, чтобы программа работала, дальше — надо заставить её работать правильно, а уже потом можно переходить к оптимизации.  Автор статьи, перевод кото...

tvOS 13 получила новый домашний экран, поддержку нескольких пользователей и контроллеров Xbox One и PlayStation 4 Во время открытия конференции WWDC 2019 компания Apple рассказала о ряде изменений, которые в скором времени появятся в tvOS  после выхода версии 13 и станут доступными владельцам приставок Apple TV. В частности, Тим Кук рассказал о грядущем изменении домашнего экрана tvOS 1...

GitHub запускает свои щупальца в CI/CD и менеджмент артефактов В мае 2019 года GitHub анонсировала выход сервиса Package Registry. Вслед за этим, уже в августе, была анонсирована поддержка CI/CD в Actions. В статье я расскажу, что это за сервисы и как это можно использовать на примере небольшого пет-проекта на GitHub. Читать дальше →

[Из песочницы] Как я боролся с Shared Element Transition и написал свою первую opensource библиотeку Нет повести печальнее на свете, чем повесть о ViewPager’e и SET’e Хочется предупредить, что автор ‒ новичок андроид, поэтому статья содержит столько технических неточностей, что вас, скорее, нужно предупредить о том, что в статье могут встретиться технически достоверные...

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

D-Link выпустила M2M-маршрутизатор DWM-312 с поддержкой 3G/4G И VPN Компания D-Link представила новый M2M-маршрутизатор DWM-312 с поддержкой 3G/4G и VPN. Новинка ориентирована на использование в территориально распределенных системах IoT и проектах «Безопасный город». Подробнее об этом читайте на THG.ru.

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

Исследование Устойчивости Национальных Сегментов Интернета за 2019 Данное исследование объясняет, каким образом отказ одной автономной системы (AS) влияет на глобальную связность отдельного региона, особенно в том случае, когда речь идет о крупнейшем провайдере интернета (ISP) данной страны. Связность интернета на сетевом уровне обусловле...

[Перевод] Введение в Screen Capture API — Сканируем QR коды в браузере Введение В этой статье мы, как вы уже догадались, поговорим про Screen Capture API. Этот API появился на свет в 2014 году и новым его назвать сложно, однако поддержка браузерами все еще достаточно слабая. Тем не менее, его вполне можно использовать для персональных проектов ...

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

PHP для начинающих. Обработка ошибок Не совершает ошибок только тот, кто ничего не делает, и мы тому пример — сидим и трудимся не покладая рук, читаем Хабр :) В этой статье я поведу свой рассказа об ошибках в PHP, и о том как их обуздать. Читать дальше →

Смартфоны Huawei Mate 20 Pro и Mate 20 X начали получать стабильную прошивку EMUI 9.1 с множеством улучшений Компания Huawei начала распространять стабильное обновление прошивки EMUI 9.1 для смартфонов Huawei Mate 20 Pro  и Mate 20 X спустя неделю после начала бета-тестирования.  Обновление доступно для китайских версий смартфонов. Прошивка номером 9.1.0.116 имеет о...

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

Первый релиз открытыго инструмента для тестирования поиска по продуктам В нескольких недавних постах обсуждался многообещающий и достаточно простой способ оценки качества поиска по продуктам с использованием намерений. Спешим представить открытый автоматизированный инструмент для такого рода тестирования — Intent-based Search Quality. Идея своди...

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

Zero Bug Policy. Нет багов — нет проблем? Кто про что, а я про баги. В прошлом году я рассказывала вам про Багодельню — мероприятие, проводимое у нас в компании для чистки бэклога багов. Событие хорошее и полезное, но решающее проблему с багами разово. Мы провели уже шесть Багоделен, но количество участников постепе...

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

AWS Elasticsearch: фундаментально дефектный продукт Перевод статьи Nick Price В настоящее время я работаю над большим проектом логирования, который изначально был реализован с использованием AWS Elasticsearch. Поработав с крупномасштабными магистральными кластерами Elasticsearch в течение нескольких лет, я совершенно повер...

WhatsApp для iOS получил обновление с новыми функциями WhatsApp подвергают критике, а он по-прежнему обновляется и прекрасно себя чувствует Несмотря на то что WhatsApp в последнее время понёс репутационный ущерб из-за обвинений в намеренном внедрении бэкдоров, которые его создателям предъявил Павел Дуров, большая часть аудитории...

Как сделать два приложения из одного. Опыт Тинькофф Джуниор Привет, меня зовут Андрей и я занимаюсь приложениями Тинькофф и Тинькофф Джуниор для платформы Android. Хочу рассказать о том, как мы собираем два похожих приложения из одной кодовой базы. Тинькофф Джуниор — это мобильное банковское приложение, ориентированное на детей ...

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

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

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

[Перевод] 33+ инструмента для безопасности Kubernetes Прим. перев.: Если вы задаётесь вопросами безопасности в инфраструктуре, основанной на Kubernetes, этот замечательный обзор от компании Sysdig станет отличной отправной точкой для беглого знакомства с актуальными на сегодняшний день решениями. В него включены и комплексные с...

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

[Перевод] Как запустить несколько пайплайнов с помощью GitLab CI/CD Запуск и визуализация пайплайнов при настройке GitLab CI/CD для нескольких проектов. Непрерывная интеграция (CI) — это практика автоматизации сборки и тестирования кода до его слияния с основной веткой. Она позволяет разработчикам вливать код довольно часто и рано, снижая п...

Samsung выпустила обновление для Galaxy Watch Active 2 Некоторые пользователи часов Galaxy Watch Active 2, заметили, что когда они переключаются в режим Watch Always On, экран начинает мигать. Samsung уже удалось определить причину проблемы и даже предложить исправление в последнем обновлении. Это небольшое обновление весит 14 М...

Глобальная версия Asus ZenFone Max (M1) получила обновление до Android 9 Pie Asus начала распространять обновление до операционной системы Android 9 Pie для смартфона ZenFone Max Pro (M1) еще в апреле этого года, однако тогда его получили только владельцы индийских устройств с модельным номером ZB601KL. Теперь же тайваньская компания выпустила г...

pg_stat_statements + pg_stat_activity + loq_query = pg_ash? В качестве короткого дополнения к статье Попытка создать аналог ASH для PostgreSQL. Задача Необходимо связать историю представлений pg_stat_statemenets, pg_stat_activity. В результате, используя историю планов выполнения из сервисной таблицы log_query, можно получить очень ...

Chrome OS 75 получает полноценную поддержку USB устройств Компания Google всеми силами старается развивать свою собственную операционную систему Chrome OS, основанную на Linux. Изначально это был самый обычный браузер Google Chrome и больше ничего. Затем стали появляться первые нативные приложения для этой ОС. Чуть позже Google доб...

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

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

Activision тестирует поддержку контроллера для Call of Duty Mobile Call of Duty Mobile от Activision собрал более 100 миллионов загрузок всего за одну неделю, после релиза. Есть много улучшений качества жизни, которые игроки хотят видеть в игре, но наиболее востребованной является поддержка контроллера. В последнем обновлении сообщест...

IR интерфейс, Raspberry и LIRC Моя задача сечас — научиться отправлять команды кондиционерам и другим устройствам в доме. Исходно эти устройства имеют только IR remote control. Для решения этой задачи у меня есть Raspberry Pi и IR transceiver shield. В статье можно найти конфиги, команды, советы и немного...

Банк «Открытие» реализует проект целевых дата-центров совместно с КРОК Для повышения отказоустойчивости и обеспечения бесперебойной работы своих систем банк «Открытие» реализует проект целевых центров обработки данных (ЦОД). В собственном дата-центре компании будет расположена основная часть ИТ-инфраструктуры. Резервной площадкой станет ЦОД «Ко...

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

Выпущена первая Nightly-сборка Firefox для Windows 10 on ARM Mozilla выпустила первую Nightly-сборку Firefox для архитектуры ARM64, сделав его первым сторонним веб-браузером, который нативно работает на Windows 10 on ARM. Это предварительная версия Firefox, которая не предназначена для постоянного использования. Впрочем, если у вас е...

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

Asus Zenfone 6 получил поддержку 8-кратного зума и AR Core Для смартфона Asus Zenfone 6 вышло еще одно обновление программного обеспечения, уже третье по счету с момента поступления устройства в продажу в мае этого года. Обновление получило номер версии 16.1210.1906.156, а его размер составляет почти 400 МБ. Он включает в себя ...

Представлен автомобильный твердотельный накопитель Western Digital iNAND AT EM132 Компания Western Digital представила встраиваемый твердотельный накопитель iNAND AT EM132, предназначенный для автомобильной электроники. Как утверждается, это первый автомобильный накопитель e.MMC объемом 256 ГБ, в котором используется 64-слойная флеш-память 3D NAND TL...

[recovery mode] ShIoTiny: часы без пружины или реальное время и как с ним работать О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этот статье рассказано о часах реального времени в контроллере ShIoTiny, синхронизации времени и использовании узлов работы с часами. Сайт проекта ShIoTiny...

Управление инфраструктурой ЦОД: новости от EkkoSoft, HPE и Future Facilities Чтобы максимизировать эффективность и надежность своих центров обработки данных в 2019 году, владельцы и операторы ЦОД могут уже в течение следующих 12 месяцев упростить управление их инфраструктурой за счет внедрения того или иного современного DCIM-решения. Как пример тако...

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

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

Battlefield V и Metro Exodus получили поддержку Nvidia DLSS и трассировки лучей RTX Компания Nvidia объявила о появлении поддержки технологий трассировки лучей в реальном времени и Nvidia DLSS (Deep Learning Super-Sampling) в играх Battlefield V и Metro Exodus. Подробнее об этом читайте на THG.ru.

VR-технологии помогут в разработке российских двигателей Государственная корпорация Ростех рассказала о проекте по использованию технологий виртуальной реальности (VR) для ускорения процесса создания передовых российских двигателей. Фотографии Ростеха Речь идёт об использовании средств VR при работе с «цифровыми двойниками». Это в...

Смартфоны OnePlus 5 и OnePlus 5T получили OxygenOS 9.0.5 Смартфоны OnePlus 5 и OnePlus 5T получили свежее обновление программного обеспечения, которое включает в себя исправления системы безопасности, выпущенные в апреле 2019 года, и другие улучшения. Обновление стало доступно для участников программы бета-тестирования еще не...

Intel пришлось объяснять, что с долговечностью процессоров Apollo Lake степпинга B1 всё в порядке На прошлой неделе компания Intel распространила безобидное уведомление о том, что процессоры для встраиваемых систем Celeron N3350E, J3355E, J3455E и Pentium N4200E предстоит перевести на новый степпинг F1 с сопутствующим упразднением литеры «E» в обозначении моделей. Постав...

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

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения Приветствую, друзья! В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня? Каждый сервис должен работать на каком-то сервере, общаясь с желез...

10 PostCSS плагинов, которые сэкономят время вашему верстальщику У нас, у фронтендеров, есть такая категория инструментов, которые никак не решают стоящие перед нами задачи, а скорее влияют на сам процесс их решения. Изменяют его. Отношение к таким инструментам самое разное – начиная от мании в духе “давайте эту штуку пихать везде, это ж...

Современные устройства ввода-вывода быстрее, чем процессоры. Обзор статьи Хочу рассказать о статье "I/O Is Faster Than the CPU – Let’s Partition Resources and Eliminate (Most) OS Abstractions", опубликованной на личной странице одного из разработчиков ScyllaDB, Pekka Enberg. О ней узнал из видео. С докладом по этой статье авторы должны были высту...

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

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

DICE: режима «5 на 5» в Battlefield V не будет DICE отказалась от запланированного режима соревнования «5 на 5» в Battlefield V, решив, что это поможет им больше уделять внимание исправлениям критических ошибок и придерживаться намеченного плана. Как сказал старший продюсер проекта Райан Макартур (Ryan McArthur), у разра...

Инструменты Node.js разработчика. Удаленный вызов процедур на веб-сокетах О технологии websocket часто рассказывают страшилки, например что она не поддерживается веб-браузерами, или что провайдеры/админы глушат трафик websocket — поэтому ее нельзя использовать в приложениях. С другой стороны, разработчики не всегда заранее представляют подводные к...

«Энергомаш» опровергает наличие конструктивного дефекта в двигателях «Ангары» Сегодня стало известно о том, что научно-производственное объединение (НПО) «Энергомаш» опровергло публикации СМИ о дефекте в двигателях ракеты «Ангара» РД-191. Представители предприятия заявили, что сведения, появившиеся в печати, недостоверны. Информация о том, что в дв...

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

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

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

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

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

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

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

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

Samsung сдалась. Galaxy S11 получит функцию распознавания лиц В сети появились новые подробности о горячо ожидаемом флагманском смартфоне Samsung Galaxy S11, чей анонс должен состояться в начале 2020 года. О новых находках в появившейся прошивке рассказал один из основателей XDA Developers Макс Вейнбах (Max Weinbach) на своей стра...

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

Долгожданная MMORPG Lineage 2M вышла на iOS и Android, пока только в Южной Корее Издатель NCSoft объявил о релизе долгожданной MMORPG Lineage 2M. Пока что проект доступен только в Южной Корее, но в официальном релизном ролике показаны кадры со всего мира, что в очередной раз подтверждает планы по выпуску проекта и в других странах (там даже Россия есть)....

В реестр российского ПО внесен продукт для цифровой трансформации – Naumen Service Management Platform Продукт отечественного вендора NAUMEN, предназначенный для интеллектуальной автоматизации, роботизации сервисных и бизнес-процессов – Naumen Service Management Platform (Naumen SMP), – вошел в число новых продуктов, добавленных в этом году в единый реестр российского ПО. ...

Wireshark 3.0.0: обзор нововведений Wireshark Foundation выпустила финальную stable-версию популярного сетевого анализатора трафика — Wireshark 3.0.0. В новом релизе устранено несколько багов, реализована возможность анализа новых протоколов и заменен драйвер WinPcap на Npcap. Wireshark — самый популярный в...

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

Осторожно — ГАЗ! или Как мы делали негазированные смарт-контракты Блокчейн и смарт-контракты все еще остаются горячей темой среди разработчиков и технических специалистов, много исследований и рассуждений об их будущем и о том, куда это все движется и приведет нас. У нас в Waves Platform свой взгляд на то, какими должны быть смарт-контрак...

Как настроить PVS-Studio в Travis CI на примере эмулятора игровой приставки PSP Travis CI — распределённый веб-сервис для сборки и тестирования программного обеспечения, использующий GitHub в качестве хостинга исходного кода. Помимо указанных выше сценариев работы, можно добавить собственные, благодаря обширным возможностям для конфигурации. В данной с...

Проект Intel Athena поможет появлению нового класса ноутбуков с 5G и ИИ Intel на CES 2019 объявила о новой программе, призванной побудить производителей ПК к выпуску нового класса продвинутых ноутбуков. В рамках проекта Athena компания собирается продвигать на рынок мобильные ПК с поддержкой 5G и искусственного интеллекта. Intel создаёт...

[Из песочницы] Миграция данных с mongoDB и Spring Boot Каждый разработчик рано или поздно встречается с необходимостью миграции данных в базе данных. На нашем проекте мы используем mongoDB в качестве базы данных. Мы подходили к миграции данных разными способами: писали js скрипты и запускали непосредственно в базе данных исполь...

Google научила Android 10 хранить данные приложений даже после удаления Android 10 позволяет приложениям хранить свои данные на устройстве даже после удаления Исторически так сложилось, что пользователи Android, в отличие от пользователей iOS, довольно спокойно относятся к созданию резервных копий. То ли из-за отсутствия понятного механизма резе...

[recovery mode] «Так я понял, что теперь я дата инженер, и по-другому можно себя спозиционировать на рынке» Хабр, привет! Еще одно интервью с нашим выпускником – Николай Рекубратский, тимлид команды разработчиков в компании XING. Николай рассказал о жизни в Германии, о ресурсе, на котором он нашел работу, чем европейские специалисты отличаются от российских в подходе к работе, о в...

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

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

Дефект 3D печати - СМЕЩЕНИЕ СЛОЕВ, принтер Creality3D Ender 3 В процессе печати Вы можете столкнуться  с таким  дефектом печтаи, как  СМЕЩЕНИЕ  или СДВИГ слоев. Сегодня я расскажу  о причинах его возникновения и способах решения.    .   В вашем браузере отключен JavaScript BX.ready(functi...

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

[Из песочницы] Функциональные компоненты с React Hooks. Чем они лучше? Относительно недавно вышла версия React.js 16.8, с которой нам стали доступны хуки. Концепция хуков позволяет писать полноценные функциональные компоненты, используя все возможности React, и позволяет делать это во многом более удобно, чем мы это делали с помощью классов. М...

10 материалов о необычных музыкальных инструментах и нетипичных способах извлечения звука В качестве чтения на выходные мы хотели бы предложить вам наиболее популярные материалы нашего «Мира Hi-Fi». Сегодняшний топ-10 посвящен необычным музыкальным инструментам. Здесь есть исторические разборы и статьи о технологиях, предвосхитивших современные семплеры, нейронн...

Исследователь нашел в сети исходный код Boeing 787 и выявил в нем ряд проблем Сотрудник компании IOActive рассказал на конференции Black Hat, что ему удалось обнаружить в сети исходные коды Boeing 787 Dreamliner и найти в них ряд уязвимостей.

«Диасофт» поддерживает требования ИБ в решении для работы с ЕБС Компания «Диасофт» реализует комплекс мер для подтверждения соответствия специализированного решения по взаимодействию с Единой биометрической системой –FLEXTERA«Взаимодействие с ЕБС» – требованиям информационной безопасности. В ближайший...

Как выбрать СХД, не выстрелив себе в ногу Введение Пришла пора покупать СХД. Какую взять, кого слушать? Вендор А рассказывает про вендора B, а еще есть интегратор C, который рассказывает обратное и советует вендора D. В такой ситуации и у опытного архитектора по системам хранения голова пойдет кругом, особенно со в...

Перенос веб-сервиса на Яндекс.Облако с AWS Всем привет! Меня зовут Виталий Давыдов, я основатель компании Poteha Labs. В конце прошлого года Яндекс запустил новый продукт для разработчиков — Яндекс.Облако, который предоставляет вычислительные мощности и сопутствующие сервисы для обработки и хранения данных. В этой с...

[Из песочницы] Windows service. Поиск системных ошибок и отображение их в WinForm C# В этой статье мы разберем как с нуля создать приложение, которое будет работать со службами windows и отображать системные ошибки в WinForm (C#). План этой статьи: Создание службы Event Viewer Код службы Проверка работы службы(Запуск службы вручную) Отображение WinForm ...

Хит продаж Redmi Note 8 Pro получил Google Camera Смартфон Redmi Note 8 Pro был представлен еще в августе этого года, он получил четырехмодульную камеру, одну из лучших в своей ценовой категории. Энтузиастам потребовалось несколько месяцев, чтобы выпустить полноценную стабильную версию популярного приложения Google Cam...

Kubernetes tips & tricks: персонализированные страницы ошибок в NGINX Ingress В данной статье я хочу рассказать про две возможности NGINX Ingress, связанные с отображением персонализированных страниц с ошибками, а также о существующих в них ограничениях и способах их обойти. Читать дальше →

REST Assured: что мы узнали за пять лет использования инструмента REST Assured — DSL для тестирования REST-сервисов, который встраивается в тесты на Java. Это решение появилось более девяти лет назад и стало популярным из-за своей простоты и удобного функционала. В DINS мы написали с ним более 17 тысяч тестов и за пять лет использования ст...

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

Региональные проекты в сфере цифровых технологий получат до 1 млрд рублей Предприятия в регионах могут получить грант на доработку и внедрение проектов на базе "сквозных" цифровых технологий. К ним относят квантовые технологии, компоненты робототехники и сенсорику, нейротехнологии и искусственный интеллект, новые производственные техноло...

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

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

Chrome Audit на 500: Часть 1. Лендинг В инструментах разработчика браузера хром есть вкладка «Audit». На ней расположился инструмент который называется Lighthouse, служит он для анализа насколько хорошо сделано веб приложение. Недавно я решил протестировать одно приложение и ужаснулся результатам. Сразу по нес...

Лошадь сдохла – слезь: переход с tslint на eslint До недавнего времени во всех проектах фронта разработчики Dodo Pizza Engineering использовали tslint – полезный инструмент, который подсказывает, когда ты накосячил в коде допустил неточность, помогает поддерживать код в одном стиле и сам исправляет многие замечания. Но тут ...

Как работают поисковые системы Мы разбирали старые письма и наткнулись на статью, которую писал Илья Сегалович iseg для журнала «Мир Internet» в далёком 2002 году. В ней он сравнивает интернет и поисковые системы с чудесами света, размышляет о поисковых технологиях и вспоминает их историю. Несмотря на заг...

Почему мы используем GraphQL в 8base Друзья, всем привет! Эта статья в первую очередь будет интересна фронтенд-разработчикам, особенно тем кому актуальна тема GraphQL, но в то же время я надеюсь, что она будет полезна и бэкенд-разработчикам и поможет им понять преимущества GraphQL глазами фронтендера. Читать...

ТОП-10 скрытых новых функций iOS 13 [актуально и для iPad OS] Меньше месяца назад состоялся официальный выход новой версии мобильной ОС от Apple. В iOS 13 разработчики проделали большую работу, ведь в системе насчитывается около 200 нововведений. Однако большинство изменений не показали на презентации, а некоторые из них вовсе никак не...

Эволюция H2 — оконные функции, CTE, JSON/XML во встраиваемой базе данных Есть open source проекты которые стали коммерчески успешным мейнстримом, как например PostgreSQL/Elasticsearch. Другие, к примеру RethinkDB, проиграли на рынке и остановили разработку. А проект H2 database встраиваемой базы данных, написанной на языке java, развивается и здр...

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