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

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

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

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

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

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

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

[Из песочницы] Пример реализации Continuous Integration с помощью BuildBot (Image by Computerizer from Pixabay) Привет! Меня зовут Евгений Черкин, я программист команды разработчиков в горнодобывающей компании Polymetal. Приступая к любому крупному проекту начинаешь задумываться: «Какой же софт лучше использовать для его обслуживания?». IT-пр...

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

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

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

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

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

Запускаем инспекции IntelliJ IDEA на Jenkins IntelliJ IDEA на сегодня обладает наиболее продвинутым статическим анализатором кода Java, по своим возможностям оставившим далеко позади таких «ветеранов», как Checkstyle и Spotbugs. Её многочисленные «инспекции» проверяют код в различных аспектах, от стиля кодирования до х...

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

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

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

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

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

IntelliJ IDEA, ReSharper, SonarLint и SonarQube находят те же ошибки, что и PVS-Studio — ну и зачем нам PVS-Studio? Иногда люди задают вопрос, который, на первый взгляд, про одно, а на самом деле про другое. Как говорится, грамотно поставленный вопрос содержит половину ответа. На днях я вернулся с конференции JPoint, на которой впервые был представлен наш новый анализатор PVS-Studio для ...

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

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

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

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

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

Проверка FreeRDP с помощью анализатора PVS-Studio FreeRDP – свободная реализация клиента Remote Desktop Protocol (RDP), протокола, реализующего удаленное управление компьютером, разработанного компанией Microsoft. Проект поддерживает множество платформ, среди которых Windows, Linux, macOS и даже iOS с Android. Этот проект ...

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

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

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

[Из песочницы] Статический анализатор Detekt для Kotlin Пора полюбить статические анализаторы! Встречайте Detekt на Kotlin Если Вы уже знаете о чем пойдет речь и Вас интересут только внедрение в проект, переходите сразу к пункту установки. Что-же это такое? Анализ программного обеспечения, производимый (в отличие от динамическ...

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

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

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

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

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

Делаем современное веб-приложение с нуля Итак, вы решили сделать новый проект. И проект этот — веб-приложение. Сколько времени уйдёт на создание базового прототипа? Насколько это сложно? Что должен уже со старта уметь современный веб-сайт? В этой статье мы попробуем набросать boilerplate простейшего веб-приложения...

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

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

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

[Из песочницы] Обзор возможностей Qt Creator 4.10 и QBS 1.14 для программирования микроконтроллеров Здравствуйте, товарищи программисты «железячники» и все кто им сочувствует. Я хотел бы представить небольшой обзор возможностей IDE Qt Creator в связке с системой сборки QBS в части программирования микроконтроллеров. Кому эта тема интересна, добро пожатовать по кат. Читат...

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

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

Беспощадная автоматизация. Director's Cut Я хочу рассказать о своем опыте ускорения автоматизации в команде программистов, и о том, какие приемы мы применили на практике, и что из этого получилось. Начальные условия Наш эксперимент по ускорению работы программистов мы проводили в следующих условиях: это было террит...

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

Статически безопасная динамическая типизация à la Python Привет, Хабр. На днях в одном моём хобби-проекте возникла задача написания хранилища метрик. Задача сама по себе решается очень просто, но моя проблема с хаскелем (особенно в проектах для собственного развлечения) в том, что невозможно просто взять и решить задачу. Необходим...

Гайд по автоматическому аудиту смарт-контрактов. Часть 2: Slither Анализатор: Slither Описание: Open-source static analysis framework for Solidity githib: https://github.com/trailofbits/slither Это статический анализатор кода, написанный на python. Он умеет следить за переменными, вызовами, и детектирует вот такой список уязвимостей. У каж...

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

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

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

[Перевод] Конференция DEFCON 19. Три поколения DoS-атак (с участием аудитории в качестве жертв). Часть 2 Конференция DEFCON 19. Три поколения DoS-атак (с участием аудитории в качестве жертв). Часть 1 Но что еще хуже… Я попытался разработать проект для своих студентов, и получалось забавно, но проблема заключалась в том, что нельзя было посмотреть «убиваемые» адреса, так как эт...

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

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

Deno: время Node.JS уходит? Прошло примерно 18 месяцев с внутреннего релиза Deno, вышел preview release, появилось несколько статей на Хабре, и Райан ездит по конференциям и рассказывает о нём. Однако я нигде так и не видел сколько-нибудь вдумчивого разбора этого проекта — почему-то все ограничиваются...

Настраиваем удобную сборку проектов в Visual Studio Эта статья является руководством по настройке сборки C++ проектов Visual Studio. Частично она сводилась из материалов разрозненных статей на эту тему, частично является результатом реверс-инжениринга стандартных конфигурационных файлов Студии. Я написал ее в основном потому ...

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

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

[Из песочницы] Ломаем простую «крякми» при помощи Ghidra — Часть 1 О том, что это за зверь такой — Ghidra («Гидра») — и с чем его едят она ест программки, многие уже, наверняка, знают не понаслышке, хотя в открытый доступ сей инструмент попал совсем недавно — в марте этого года. Не буду докучать читателям описанием Гидры, ее функциональност...

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

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

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 1 Серверный код в Instagram пишут исключительно на Python. Ну, в основном это именно так. Мы используем немного Cython, а в состав зависимостей входит немало C++-кода, с которым можно работать из Python как с C-расширениями. Наше серверное приложение — это монолит, представ...

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

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

Обзор Polysphere. Лучшая игра уходящего года Меня постоянно интересуют новые интересные мобильные игры, которые могут хотя бы удивить. В последнее время таких проектов практически не осталось, так как разработчики не хотят рисковать. Зачем выпускать мобильную игру, разработка которой обойдется в тысяч 100 долларов, есл...

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

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

Сборка Android-проекта в Docker-контейнере Разрабатывая проект под платформу Android, даже самый небольшой, рано или поздно приходится сталкиваться с окружением для разработки. Кроме Android SDK, необходимо чтобы была последняя версия Kotlin, Gradle, platform-tools, build-tools. И если на машине разработчика все эти ...

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

Как проходил набор в Школу системного анализа Альфа-Банка Крупные IT-компании довольно давно проводят школы для студентов и выпускников инженерных и математических специальностей. Кто не слышал о Школе анализа данных Яндекса или Школе программистов HeadHunter? Возраст этих проектов уже измеряется десятилетием. Не отстают от них и ...

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

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

[Из песочницы] Матрёшка Си. Слойная система языка программы Попробуем представить химию без Периодической системы Менделеева (1869). Сколько же элементов надо было держать в голове, причём в произвольном порядке… (Тогда — 60.) Для этого достаточно подумать об одном или нескольких сразу языках программирования. Те же чувства, тот же...

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

OMEGA — Автоматизация подсчета времени на спортивных мероприятиях Всем привет, меня зовут Сергей. Я руководитель образовательного проекта "SERVODROID". Мой проект занимается разработкой простых в повторении роботов для детей и взрослых. Сам я преподаю робототехнику в Санкт-Петербурге. Но также я спортсмен, и, одно из моих любимых спортив...

Делфийская история успеха программиста из Улан-Удэ Мир суровый, но маленький и возможности его изменить есть у каждого. В 1996 году начиная изучать только что появившийся Delphi, я не мог себе представить, какая будет судьба у этого языка, который сильно повлиял на Java и C#, а также какая судьба будет у самой компании Borla...

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

Что делать, если для постройки робота не хватает кубиков? Моя предыдущая статья была написана, в первую очередь, для менеджеров проектов и руководителей направления RPA. Эту статью я хотел бы адресовать, в первую очередь, программистам и тем, кому приходится с роботизацией сталкиваться face-to-face. Первые несколько процессов, кот...

Повышение эффективности ручного тестирования на VueJS Сегодня я предлагаю затронуть вопрос ручного тестирования проектов на VueJS. Независимо от уровня автоматизации процессов тестирования, практически всегда остается “живое общение” тестировщика с будущим релизом. Естественно, что оно должно быть комфортным и эффективным. ...

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

Статическое распределение объектов FreeRTOS По умолчанию все объекты в системе FreeRTOS распределяются динамически — очереди, семафоры, таймеры, задачи (потоки), и мьютексы. Программист видит только «кучу» — область где динамически выделяется память по запросу программы или системы, а что там творится внутри – не ясно...

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

[Из песочницы] Генератор мемов на Ruby для привлечения интереса к языку По моему мнению язык Ruby перестал быть популярным как в 2012 — 2014 году и поэтому у меня возникло желание пока про язык совсем не забыли, попробовать его снова донести в массы, ведь Ruby по моему мнению самый удобный и практичный язык для веб разработки. Я с неделю назад ...

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

[Из песочницы] 12 странных вещей, которые могут произойти после установки npm пакета Пару месяцев назад я начал заниматься проектом под названием malicious-packages (ака "вредоносные пакеты"). Он следит за обновлениями в npm репозитории, скачивает все новые модули, а затем проверяет их на вшивость — ищет сетевую активность, подозрительные операции ...

Russian Railway Simulator (RRS): первый публичный релиз Наступил тот долгожданный мной день, когда я наконец могу представить эту разработку. Проект был начат ровно год назад, 1 сентября 2018 года, по крайней мере в репозитории RRS на Gtihub первый коммит имеет именно такую дату. Пассажирский поезд на станции Ростов Главный (кли...

Трансляция проектов и библиотек из Altium Designer в PADS Professional Часто у инженеров возникает необходимость транслировать проекты из одной САПР в другую. На предприятиях не редко бывает такая ситуация, когда разные отделы проектируют в разных САПРах. Также трансляция проектов может потребоваться, когда ваша система проектирования уже не с...

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

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

Buildbot в примерах Потребовалось мне настроить процесс сборки и доставки на сайт пакетов программ из Git-репозитария. И увидев, ни так давно, тут на Хабре статью по buildbot (ссылка в конце) решил для этого попробовать его и применить. Так как buildbot — это распределённая система, то будет ло...

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

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

[Из песочницы] Интеграция AppCenter и GitLab Трям, здравствуйте! Хочу рассказать о своём опыте настройки интергации GitLab и AppCenter через BitBucket. Необходимость такой интеграции возникла в ходе настройки автоматического запуска UI тестов для кроссплатформенного проекта на Xamarin. Подробный туториал под катом! Чи...

Сборка и деплой однотипных микросервисов с werf и GitLab CI Два года назад мы публиковали статью «Сборка проектов с GitLab CI: один .gitlab-ci.yml для сотни приложений», а теперь расскажем о решении схожей задачи сегодня. Новый материал — о том, как можно построить CI/CD-процессы для большого количества однотипных приложений с появ...

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

[Из песочницы] Феерический screensaver для Kodi Назначение хранителя экрана для «Kodi» Проект предназначен для создания «Феерического» хранителя экрана с минимальным количеством исходного кода на языке Python. Проект является простейшим плагином для мультимедиа центра Kodi. Проект показывает как можно создать очень кра...

Система управления проектами Agilean Система управления проектами Agilean Применение: Данная система отлично подходит для любых проектов по внедрению новых подходов и методологий, R&D проектов, проектов Lean-трансформации, культурной трансформации и в общем любых проектов, связанных с изменениями в орган...

Обзор Professional Fishing (2018). В лучших традициях Иногда симуляторы от небольших студий действительно могут понравиться аудитории и сделать ее максимально привлекательной для фанатов того или иного жанра. А иногда разработчики просто хотят заработать на тех, кто без всякого сомнения покупает их проекты и радуется даже ужасн...

MOSDROID Meetup: подключайтесь к трансляции Уже завтра, 16 ноября, митап MOSDROID в офисе Райффайзенбанка: узнаём все тонкости кроссплатформенной разработки с использованием Flutter и GoMobile, поделимся друг с другом опытом модульной архитектуры проекта и ещё много интересных тем. Смотрите программу и подключайтесь ...

Сколько стоит «суверенный» Рунет? Трудно посчитать, сколько копий было сломано в спорах об одном из самых грандиозных сетевых проектов российских властей: суверенном интернете. Свои «за» и «против» высказывали популярные спортсмены, политики, руководители интернет-компаний. Как бы то ни было, закон подписа...

Обзор Skaffold для разработки под Kubernetes Полтора года назад, 5 марта 2018, компания Google выпустила первую альфа-версию своего Open Source-проекта для CI/CD под названием Skaffold, целью которого стало создание «простой и воспроизводимой разработки под Kubernetes», чтобы разработчики могли сфокусироваться именно...

[Перевод] Руководство по Discovery.js: быстрое начало Это и последующие руководства проведут вас через процесс создания решения на основе проекта Discovery.js. Наша цель — создать инспектор NPM-зависимостей, то есть интерфейс для исследования структуры node_modules. Примечание: Discovery.js находится на ранней стадии разработки...

[Перевод] Самые быстрые Python веб-фреймворки в 2019 В 2018 году Python укрепил свои позиции популярности среди программистов и вошел в Top 3 самых популярных языков на github. Все больше и больше людей переходит на светлую сторону…то есть Python. Появилось еще большее количество разработчиков, которые интересуются данным яз...

ЕКА запускает проект «Перехватчик комет» Европейское космическое агентство одобрило подготовку к проекту по перехвату «неизвестных комет» – будущих, еще необнаруженных целей. Это новый уровень в изучении комет, потому что все самые интересные объекты, которые в разные годы приближались к Земле, уже не могут дать уч...

[Из песочницы] Haiku β1 — сделаем /b/ OS великой снова Совсем недавно (почти 4 месяца назад) вышла новая Haiku (далее — просто BeOS, ибо проект гораздо удачнее ReactOS — настолько, что разница между Haiku и BeOS уже пренебрежимо мала). Конечно же, мне давно уже надоели все эти Windows и *nix; хотелось попробовать чего-то новое,...

Как тестируют в Автотеке: MindMap’s, статический анализ кода и MockServer Привет! Хочу рассказать вам, как устроено тестирование в проекте Автотека, сервисе проверки автомобилей по VIN. Под катом — о том, какие инструменты мы используем для тестирования требований, планирования спринта, как устроен процесс тестирования в нашем проекте. Читать д...

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

Как проектировать продукт, если вы решили выйти на зарубежный рынок Привет! Меня зовут Наташа, я UX-исследователь в компании, которая занимается проектированием, дизайном и исследованиями. Кроме участия в русскоязычных проектах (Рокетбанк, Точка и многое другое), мы пытаемся выходить и на зарубежный рынок. В этой статье я расскажу, на что с...

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

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

Gitpab. Приятно познакомиться Здравствуй. Я Gitpab. Рад знакомству. Меня сделали для того, чтобы легче было надзирать за программистами. Я беру часы, которые разработчики отметили в Gitlab, и подсчитываю, кто сколько затратил времени на работы по задачам. И по проекту в целом. Поговаривают, что большие н...

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

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

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

Делаем крутой sticky-эффект для слайдера на React Есть много разных библиотек для реализации слайдера со всеми возможными эффектами. Для React одни из лучших это: ReactSlick и Swiper. Но когда для моего проекта потребовался горизонтальный sticky-эффект, то ничего подходящего не нашлось. В этой статье мы попробуем поэтапно...

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

[Из песочницы] Обзор и доработка устройств от DreamSourseLab Всех приветствую. По следам предыдущих статей по логическим анализаторам на Хабре решил таки закончить свой "фундаментальный" труд. Читать дальше →

[Перевод] Как отлаживать и профилировать любой EXE-файл с помощью Visual Studio Вам когда-нибудь нужно было отлаживать или профилировать исполняемый файл (файл .exe), для которого у вас нет исходного кода или вы не можете его собрать? Тогда наименее известный тип проекта Visual Studio, проект EXE, для вас! В Visual Studio вы можете открыть любой EXE-фа...

Реализация паттерна Page Object на Python + pytest Когда я начинал изучать автоматизацию тестирования, не мог понять — “что такое Page Object и как его реализовать на Python + pytest?”. Штудируя интернет, нашел реализацию на других языках и фреймворках: обучающие статьи, которые были непонятны для меня. Поэтому решил написат...

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

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

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

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

Челобитная в Apple Шок и трепет: В мае сего года мне позвонил ведущий программист проекта DO-RA, ранее работавший в крупных международных компаниях и оперирующий с мобильной платформой iOS. Его через Apple connect любезно предупредили, что: в действиях, программах, отчётах и, по-видимому, в...

Статистика и мониторинг PHP скриптов в реальном времени. ClickHouse и Grafana идут на помощь к Pinba В этой статье я расскажу как использовать pinba совместно с clickhouse и grafana вместо pinba_engine и pinboard. На php-проекте pinba — пожалуй единственный надёжный способ понять, что происходит с производительностью. Правда обычно pinba внедряется только тогда, когда уже н...

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

Не Falcon'ом единым — принципиально иные многоразовые проекты ЕКА и ULA Полеты многоразовых первых ступеней ракеты-носителя Falcon от SpaceX вызвали всплеск интереса к многоразовым ракетам. И если, например, китайская компания LinkSpace демонстрирует рендеры похожей системы с посадкой на двигателях на раскладные опоры, то другие конструкторы пре...

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

Несколько штрихов о работе с идентификаторами bigint в R Каждый раз, когда начинается разговор об использовании различных БД в качестве источника данных, появляется тема идентификаторов записей, объектов или чего-либо иного. Иногда согласование протокола обмена может рассматриваться участниками несколько месяцев. int-bigint-guid, ...

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

Почему для нового проекта я взял Robot Framework Недавно я сменил проект — пришел в новую разработку, где до меня не было никакого тестирования, ни ручного, ни автоматического. Условий на инструментарий (за исключением того, что это Python) заказчик не накладывал, так что я сделал собственный выбор. В этой статье я расскаж...

[Перевод] Сравнение одинакового проекта в Rust, Haskell, C++, Python, Scala и OCaml В последнем семестре университета я выбрал курс компиляторов CS444. Там каждая группа из 1-3 человек должна была написать компилятор из существенного подмножества Java в x86. Язык на выбор группы. Это была редкая возможность сравнить реализации больших программ одинаковой фу...

[Из песочницы] Современное программирование: взгляд после 25 лет перерыва или как я писал бота для Телеграм Задача кажется простой, когда ничего про нее не знаешь и когда решил. В один “прекрасный” день, я понял, что мне не интересно сидеть на многочисленных форумах, а хочется создать свой канал и делиться “мудростью”. Мне нравится Телеграм заложенными в него возможностями в то...

Автоматизация End-2-End тестирования комплексной информационной системы. Часть 1. Организационная Этой статьей мы открываем серию публикаций о том, как автоматизировали в одном из крупных проектов компании ЛАНИТ процесс ручного тестирования большой информационной системы и что у нас из этого вышло. Первая часть – организационно-управленческая – должна быть полезна в пер...

[Из песочницы] Telegram в качестве хранилища данных для IT проектов Добрый день, сегодня я хотел бы поделится с Вами проблемами и их необычными решениями, которые встретились при написании небольших IT проектов. Сразу скажу, что статья для тех, кто хоть немного разбирается в разработке телеграмм ботов, баз данных, SQL и в языке программирова...

[Перевод] Отец создал бионический протез руки для сына с помощью 3D-принтера и X-Box Сол Смит-Райан в студии ITV News. Статья ITV News переведена для вас Top 3D Shop. Отец ребёнка, руку которого пришлось ампутировать, сделал решительный шаг и создал бионическую конечность для сына, применив с помощью консоли XBox и 3D-принтера. Когда родился Сол Смит-Райа...

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

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

Из Groovy ушёл Cédric Champeau‏ В проекте Apache Groovy перестаёт участвовать один из ключевых участников сообщества, само имя которого у многих ассоциировалось с этим языком. Уходит Седрик Шампо, известный в первую очередь как автор статического компилятора Groovy. Если рассмотреть причины ухода в том ...

Microsoft расширит кроссплатформенную поддержку Xbox Live на Android, iOS, Switch Microsoft готовится расширить свою кроссплатформенную поддержку Xbox Live, предоставив больше возможностей пользователям Android, iOS и Switch. Эта новость была раскрыта в заметках для сессии на предстоящей конференции разработчиков игр (GDC). Сессию, впервые замеченную Авер...

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

Tesli внедряет bpm’online с помощью Норбит Компания Норбит (входит в группу компаний Ланит) начала проект по интеграции CRM-системы на базе платформы bpm’online от "Террасофт" в компании Tesli. Основным видом деятельности компании Tesli является продажа, автоматизация и производство электрооборудования. В р...

Внедряем OSGI на платформе Karaf OSGI это не сложно Я много раз встречал мнение, что OSGI это сложно. И более того, у самого когда-то такое мнение было. Году в 2009, если быть точным. На тот момент мы собирали проекты при помощи Maven Tycho, и деплоили их в Equinox. И это действительно было сложнее, чем раз...

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

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

Летний форум СЭД ТЕЗИС: акцент на проектах заказчиков 16-17 августа мы провели Летний форум для заказчиков СЭД ТЕЗИС. Традиционно, это мероприятие, где можно обсудить с командой продукта технологии автоматизации бизнеса, развитие сотрудничества и другие интересующие вопросы. В этом году было много нового: мы сделали упор...

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

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

[Перевод] Как посчитать ROI от автоматизации тестирования с Selenium? Перевод статьи подготовлен специально для студентов курса «Python QA Engineer» Кроссбраузерное тестирование – это именно тот тип тестирования, который требует большого количества сил и времени. Тестирование веб-приложения в различных браузерах, на различных операционных си...

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

Сравнение систем космической связи Друзья, как вы уже знаете, мы на всех парах готовим новый гик-проект — «Сервер в облаках 2.0», или «Космический ЦОД». В двух словах: 12 апреля мы запустим самопальный сервачок на стратостате на высоту около 30 км, будем передавать на него данные через систему космической свя...

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

Борьба за качество решений на Erlang/Elixir @jcutrer Сегодня мы будем говорить про журналы событий, количественные метрики и наблюдение за всем этим с целью увеличения скорости реакции команды на инциденты и уменьшения времени простоя целевой системы. Erlang/OTP как фреймворк и идеология построения распределенных сис...

Проверка rdesktop и xrdp с помощью анализатора PVS-Studio Это второй обзор из цикла статей о проверке открытых программ для работы с протоколом RDP. В ней мы рассмотрим клиент rdesktop и сервер xrdp. Читать дальше →

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

[Из песочницы] Асинхронный PHP и история одного велосипеда После выхода PHP7 появилась возможность сравнительно небольшой ценой писать долгоживущие приложения. Для программистов стали доступны такие проекты, как prooph, broadway, tactician, messenger, авторы которых берут на себя решение наиболее частых проблем. Но что если сделать ...

Flutter. Плюсы и минусы В первую очередь расскажем немного о том, что же такое Flutter. Это фреймворк для создания мобильных приложений от компании Google. Он является кроссплатформенным и позволяет компилировать созданный проект под 3 операционные системы: Android iOS Fuchsia Причем для послед...

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

[Перевод] Конференция DEFCON 18. Практический шпионаж с помощью мобильного телефона. Часть 2 Конференция DEFCON 18. Практический шпионаж с помощью мобильного телефона. Часть1 Мы хотим применить определённые методы, чтобы ускорить захват телефонов фальшивой сетью. На данный момент у нас есть простой перехватчик IMSI, вы можете попробовать позвонить и услышать запи...

Реальный вопрос: «Сколько стоит сделать свой Booking?» Lodoss Team: «Один из самых частых вопросов, которые задают потенциальные клиенты, звучит примерно так: „Сколько стоит сделать проект как Facebook, Booking, Twitch?“»

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

Распределенная компиляция C/C++ проектов с помощью ICECC … Работаете вы, например, над очень большим проектом. Проект реально очень большой, написан на C или C++, и его билд «с нуля» может занять несколько часов, да и сборка после каких-то фиксов или патчей тоже требует немало времени, особенно если изменения коснулись чего-то фу...

Коллаборация и автоматизация во фронтенде. Чему мы научились за 13 школ Всем привет. Коллеги недавно писали в этом блоге, что открылась регистрация в следующую Школу разработки интерфейсов в Москве. Я очень рад новому набору, ведь я был одним из тех, кто придумал Школу в 2012 году, и с тех пор постоянно ей занимаюсь. Она эволюционировала. Из неё...

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

[Из песочницы] Сбербанк или туда и обратно ГЛАВА 1. Нежданные гости Все началось в то злополучное утро, когда Project Manager сообщил, что сроки реализации проекта должны быть быстро и решительно сокращены на месяц. Точнее говоря проект должен быть готов через 4 дня. Нет, наш PO не зверь, и ничуть не похож на сову ...

Когда из интернета будут делать «чебурнет»: обзор проекта Как вы помните, в начале мая 2019 года президент подписал закон «О суверенном интернете», который вступит в силу 1 ноября. Закон номинально призван обеспечить стабильную работу российского сегмента интернета при отключении от всемирной сети или скоординированных атак. А чт...

Когда стандарта HTTP мало. Коммитим в Micronaut Всем привет, меня зовут Дмитрий, и сегодня я расскажу о том, как производственная необходимость заставила меня стать контрибутором для фреймворка Micronaut. Наверняка многие о нём слышали. Если вкратце, то это легковесная альтернатива Spring Boot, где основной упор сделан не...

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

Как адаптировать UX/UI под permissions Во многих проектах существует процессы аутентификации (в той или иной степени). Написано много “бест практис” во всех известных технологиях и т.д. и т.п. Но вот пользователь сделал логин и? Ведь он далеко не всё может сделать. Как определить что он может видеть, а что нет. ...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 1 Сегодня мы предлагаем вашему вниманию первую часть перевода материала о том, как в Dropbox занимаются контролем типов Python-кода. В Dropbox много пишут на Python. Это — язык, который мы используем чрезвычайно широко — как для бэкенд-сервисов, так и для настольных клиентс...

Windows 10 May 2019 Update теперь скрывает классический Microsoft Edge Совершенно новый Microsoft Edge, основанный на проекте Chromium с открытым исходным кодом, дебютировал в апреле 2019 года. В настоящее время новый Edge работает параллельно с текущим браузером Edge и его можно обновлять или удалять в любое время. В будущей версии Windows 10 ...

[Перевод] Rust в Microsoft (или cоздание Security Daemon Azure IoT Edge) Примечание от переводчика: Rust относительно молодой язык программирования, и на этом этапе развития всегда интересные опыты практического применения. Известно, что Intel, DropBox, Amazon, Facebook и другие используют Rust для своих проектах. Про применение Rust в проекте ...

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

BlessRNG или проверяем ГСЧ на честность В геймдеве часто нужно что-нибудь завязать на рандоме: у Unity для этого есть свой Random, а параллельно с ним существует System.Random. Когда-то давно на одном из проектов сложилось впечатление, что оба могут работать по-разному (хотя должны иметь равномерное распределени...

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

Программист сделал игру Sid Meier’s Civilization в… Microsoft Excel Находчивый фанат классической «Цивилизации» перенёс первую часть стратегии Sid Meier’s Civilization 1991 года выпуска в Microsoft Excel. Проект под названием [CELL]IVIZATION был создан всего за неделю пользователем с ником s0lly в рамках конкурса среди программистов OLC Code...

Применяем github actions для CI и автоматическая публикация на npm Привет, Хабр. Это статья о том как автоматизировать ваш проект с помощью github actions. Автоматизация будет делиться на: CI — над каждым коммитом будут проведены тесты Publish — при релизе публикуем версию в npm Читать дальше →

[Из песочницы] Управление зависимостями в многомодульном проекте на градл Вступление Статья пишется с прицелом на нативные андроид проекты, но, так как градл универсальная система сборки, в принципе, подойдет и для других проектов, которые может собрать градл. Идея не моя, я ее подчерпнул из гитхаб проекта у Jake Wharton SdkSearch — набор програм...

3D-печать и airsoft: как я печатал «привод» Всем привет! Я попробую немного рассказать о том, как я пытался сделать страйкбольный привод при помощи 3D-принтера, что из этого получилось и с какими сложностями пришлось столкнуться. Статья может оказаться интересной для тех, кто любит airsoft, DIY или 3D-печать. Для те...

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

[Перевод] Статический анализ больших объёмов Python-кода: опыт Instagram. Часть 2 Сегодня публикуем вторую часть перевода материала, посвящённого статическому анализу больших объёмов серверного Python-кода в Instagram. → Первая часть Читать дальше →

[Перевод] Переносим 30 000 строк кода с Flow на TypeScript Недавно мы перенесли 30 тысяч строк кода JavaScript нашей системы MemSQL Studio с Flow на TypeScript. В этой статье я расскажу, почему мы портировали кодовую базу, как это происходило и что получилось. Дисклеймер: моя цель — вовсе не критика Flow. Я восхищаюсь проектом и ду...

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

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

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

Huawei Cloud: в PVS-Studio сегодня облачно В нынешний век каждый уже слышал об облачных сервисах. Многие компании освоили этот сегмент рынка и создали свои облачные сервисы самых различных направлений. Наша команда также в последнее время интересуется этими сервисами с точки зрения интеграции с ними анализатора кода...

Проектируем спринклерную систему пожаротушения Эта статья из цикла материалов, посвященных вертикальным решениям nanoCAD ВК и nanoCAD Отопление, несколько отличается от написанных ранее – здесь будет больше информации о том, как делался проект и какими способами решались те или иные задачи. А заинтересует представленна...

Обзор вентиляторов Arctic P12 PWM PST и Arctic P14 PWM PST В конце прошлого года мы проводили тестирование пары вентиляторов Arctic Cooling BioniX P140 и Arctic Cooling BioniX P120. Сегодня героями обзора будут Arctic P12 PWM PST и Arctic P14 PWM PST, они были представлены в это же время. Ориентированы они на высокое статическое дав...

[Перевод] Garden v0.10.0: Вашему ноутбуку не нужен Kubernetes Прим. перев.: С Kubernetes-энтузиастами из проекта Garden мы познакомились на недавнем мероприятии KubeCon Europe 2019, где они произвели на нас приятное впечатление. Этот их материал, написанный на актуальную техническую тему и с заметным чувством юмора, — наглядное тому по...

Proof of Concept: целесообразность внутреннего ML проекта Недавно в уютном чатике дата сатанистов подняли вопрос, как правильно "продавать" внутренние проекты по машинному обучению. Оказалось, что многие из нас весьма брезгливо относятся к экономическому обоснованию своей деятельности. Меж тем, чтобы провести минимальную оценку рен...

opencv4arts: Нарисуй мой город, Винсент OpenCV — библиотека с историей непрерывной разработки в 20 лет. Возраст, когда начинаешь копаться в себе, искать предназначение. Есть ли проекты на ее основе, которые сделали чью-то жизнь лучше, кого-то счастливее? А можешь ли ты сделать это сам? В поисках ответов и желании ...

[Перевод] Повышаем производительность разработки на примере Vue — часть 2 Если вы не читали Часть 1, вы можете исправить сиё недоразумение здесь. Переиспользование конфигураций Новая библиотека vue-cli-3 избавила от необходимости поддерживать сложные шаблоны сборки и конфигураций. Вместо этого она позволяет разработчику сосредоточиться на создании...

NetherRealm Studios рассматривает возможность кроссплатформенной игры в Mortal Kombat 11 Геймдизайнер Дерек Киртзик (Derek Kirtzic) из NetherRealm Studios подтвердил, что разработчики внимательно изучают возможность реализации кроссплатформенной игры в Mortal Kombat 11. В основе проекта лежит Unreal Engine 4, и на этот год разработчики из Epic Games з...

[Из песочницы] AudioSwitcher — автоматизация того, что казалось бы не нужно автоматизировать Предисловие У меня дома есть пара комплектов хороших советских акустических систем. Но техника эта довольная старая и просто не может включаться с пульта или автоматически, а постоянно подходить к усилителю звука и включать/выключать его просто лень. Это проблему я и решил ...

Зрелая исполняемая среда для контейнеров: containerd стал «выпускником» CNCF За проектом containerd мы следим с самого его начала. Посему не можем обойти вниманием значимое событие: минувшей ночью организация CNCF, стоящая за Kubernetes и другими выдающимися Open Source-решениями для мира cloud native, объявила containerd своим «выпускником». Этот пр...

[Из песочницы] Как я сделал удобной разработку на Vue.js с server-side рендерингом Всем привет! Начну с небольшой предыстории. Свой новый проект я решил попробовать сделать на Vue.js. Мне нужен был серверный рендеринг (SSR), CSS модули, code-splitting и прочие прелести. Разумеется, для повышения производительности разработки нужна была горячая перезагр...

Разворачиваем автоматизацию за пару часов: TypeScript, Protractor, Jasmine Привет, Хабр! Меня зовут Виталий Котов, я довольно много занимаюсь автоматизацией тестирования и мне это нравится. Недавно я участвовал в проекте по настройке автоматизации «с нуля» на стеке TypeScript + Protractor + Jasmine. Для меня этот стек был новым и необходимую инфор...

[Из песочницы] Навигация в кроссплатформенных приложениях: почему NavController победил angular/router в Ionic 4 Всем привет! Меня зовут Никита Жигамовский, программист в KitApp и я хочу рассказать о своем опыте построения навигации в Ionic 4: проблеме, с которой столкнулся, и ее решении. Я занимаюсь разработкой кросс-платформенных решений для мобильных приложений с 2018 года. Рань...

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

Глеб Ницман: «Я застал самый конец эпохи, когда люди еще не гонялись за золотом, содержащимся в радиоэлементах» Глеб Ницман работает в DataArt более 20 лет и последние годы занимается в основном автоматизацией внутренних бизнес-процессов компании. Он также остается главным вдохновителем и идеологом Музея DataArt. Еще учась в девятом классе, он решил собрать свой первый компьютер. Та...

Google App Script, Mikrotik, Telegram и VPNBook затеяли сыграть квартет Сегодня в программе: Куда еще можно применить Google Apps Script, если закончились нормальные идеи. Автоматизация работы с VPNBook через цепочку скриптов на разных языках, которые я не знаю. Недо-cURL от Mikrotik. Telegram через одно место, чтобы не оказаться в другом, самко...

Несколько подводных камней статической типизации в Python Думаю, мы все потихоньку уже привыкаем, что у Python есть аннотации типов: их завезли два релиза назад (3.5) в аннотации функций и методов (PEP 484), и в прошлом релизе (3.6) к переменным (PEP 526). Так как оба этих PEP были вдохновлены MyPy, расскажу, какие житейские радос...

Как я создавал Recycle! VR В предыдущей статье мы попробовали создать базовую сцену в A-Frame, чтобы опробовать основные концепции фреймворка на практике. В этой статье я хотел бы поделится своим опытом создания игры на A-Frame — Recycle! VR. Репозиторий проекта доступен по следующей ссылке. Перера...

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

Десяток Книг по Agile, Которые Точно Понадобятся Менеджеру Проекта в 2020 Году Профессиональная литература с термином «Agile» в названиях стала появляться на полках IT-экспертов после 2001 года, когда термин был использован во время представления Манифеста Agile. Agile описывает методологию разработки программного обеспечения, которая характеризуется...

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

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

.NET Core на Linux, DevOps на коне Мы развивали DevOps как могли. Нас было 8 человек, и Вася был самым крутым по Windows. Внезапно Вася ушел, а у меня появилась задача вывести новый проект, который поставляет Windows-разработка. Когда я высыпал на стол весь стек Windows-разработки, то понял, что ситуация — бо...

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

Как и зачем работать медленнее? Метод Сергея Королёва Будущий «отец» советской космонавтики Сергей Королёв — по центру. Страсть к авиации у него зародилась в юности, когда он записался в планерный кружок. На его долю ещё выпадут тяжёлые испытания, но юношеский запал у него останется на всю жизнь. Примечание: фотография раскраш...

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

Как я наводил порядок в проекте, где лес прямых рук (настройки tslint, prettier, etc) И снова здравствуйте. На связи Омельницкий Сергей. Сегодня я поделюсь с Вами одной из своих головных болей, а именно — что делать, когда проект пишут много разноуровневых программистов на примере angular приложения. Так повелось, что я долгое время работал только со своей к...

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

Как живут фрилансеры: дизайн книжных обложек, собственное производство рюкзаков и работа в путешествиях Героиня нового выпуска интервью с Фрилансим — Наташа Байдужа, дизайнер и человек-пароход. За годы фриланса успела пожить в Москве, Одессе, Черногории, придумать свою марку рюкзаков (сшить и продать первую партию), написать детскую книгу, сделать бесчисленное множество иллюст...

[Перевод] Кто несет ответственность за качество тестирования приложения? 10 причин попадания ошибки в продакшен Подготовили для вас перевод статьи Дмитрия Ярыгина, QA Engineer с опытом работы в крупных проектах мира более 8 лет, преподавателя курса «Mobile QA Engineer» в OTUS. Интересно развиваться в данном направлении? Приглашаем пройти бесплатный двухдневный интенсив «Введение в авт...

Новый Windows Terminal уже доступен в Microsoft Store Новый Windows Terminal, который компания Microsoft анонсировала на MS Build 2019, уже доступен в для скачивания в сторе, сообщается в официальном блоге. Для интересующихся — репозиторий проекта на GitHub. Terminal — это новое приложение Windows для централизованного доступ...

3D игра на three.js, nw.js Я решил выпустить новую версию своей старой браузерной игры, которая на протяжении пары лет пользовалась успехом в качестве приложения в социальных сетях. На этот раз я задался целью оформить ее также и в виде приложения под Windows (7-8-10) и разместить в различных магазина...

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

Проект клубов по робототехнике «GoROBO» — его делает стартап из акселератора Университета ИТМО Один из совладельцев «GoROBO» — выпускник кафедры мехатроники Университета ИТМО. Двое сотрудников проекта — в настоящий момент проходят обучение в нашей магистратуре. Расскажем, почему основатели стартапа заинтересовались образовательной сферой, как они развивают проект, ко...

Квест с iobroker для игр “Квесты в реальности” Всем привет, на хабре уже есть несколько статей про автоматизацию игр типа «квесты в реальности» (раз, два, три, четыре, пять...), я хотел бы тоже поделиться своим опытом участия в подобном проекте. В далеком 2015 году мои друзья решили организовать квест типа escape-room ...

X-Com масштабировала информационную систему института ГИТИС Компания Х-Com завершила проект развития ИТ-инфраструктуры Российского института театрального искусства – ГИТИС. В рамках проекта компьютеризированы учебные аудитории и рабочие места администрации, внедрено современное копировально-печатное оборудование, а также масштабирова...

[Перевод] Почему программисты продолжают использовать многословный Java, хотя есть лаконичный Python Java и Python — одинаково популярные языки программирования. Однако Python более продуктивен: в нем меньше объем кода, нужного для решения задачи. Почему же программисты до сих пор работают с Java там, где можно применить Python? Давайте разбираться. Читать дальше →

Как благодаря Kubernetes и автоматизации мигрировать в облако за два часа Компания «УРУС» попробовала Kubernetes в разных видах: самостоятельный деплоймент на bare metal, в Google Cloud, а затем перенесла свою платформу в облако Mail.ru Cloud Solutions (MCS). Как выбирали нового облачного провайдера и как удалось мигрировать к нему за рекордные ...

Habr Weekly #4 / Computex, как нам беты Apple, Дуров голодает, BadComedian котик, зачем нейросеть искала порноактеров Вышел четвертый выпуск подкаста Habr Weekly. Обсудили поездку Коли в Тайвань на Computex, бета-версии софта от Эппл, диету Дурова, конфликт BadComedian и Kinodanz и то, как китайский программист отказался от проекта по идентификации порноактеров. Читать дальше →

Rocket League теперь поддерживает кроссплатформенный мультиплеер между Xbox One и PS4 Сегодня компания Psyonix объявила, что Rocket League теперь полностью поддерживает кроссплатформенный мультиплеер, поскольку Sony включила игру в программу PlayStation Cross-Play Beta. Ранее кроссплатформенная игра поддерживалась только между Xbox One, Nintendo Switch и ПК....

Сколько стоят все комплектующие и сборка iPhone 11 Pro Max, который Apple продает за 100 000 рублей В официальном магазине Apple стоимость флагмана iPhone 11 Pro Max начинается от 100 000 рублей. Однако себестоимость компонентов этого высококлассного смартфона вместе с их сборкой составляют менее половины предлагаемой пользователям цены. ♥ ПО ТЕМЕ: Сравнение камер iPhone 1...

[Из песочницы] Разработка VPN-плагина «Континент-АП» для ОС Sailfish Введение Я работаю программистом в отделе разработки и тестирования средств защиты мобильных платформ компании «Код безопасности». Перед командой мобильной разработки была поставлена задача портировать кроссплатформенную библиотеку абонентского пункта «Континент-АП», которая...

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

Методология как конструктор: инструкция по сборке Из современного конструктора LEGO можно собрать только одну модель игрушки, например, самолет. Кастомизировать? Можете поменять местами кресла пилотов — вот и вся кастомизация. Лет 30 назад из конструктора можно было собрать примерно все, от самолета до грузовика, при том же...

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

Создаем краудсорсинговые карты помощи на WordPress + shMapper TL;DR мы сделали бесплатный опен-сорсный плагин shMapper, который позволяет создавать карты помощи, а также другие краудсорсинговые карты (с подложкой на Я.К и OSM) на WordPress. Завязка Девять лет назад горела вся центральная Россия. Я написал хабрапост, в котором призвал...

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

Обзор Arizona Derby. Шикарная гонка Сегодня мы поговорим о довольно интересной игре, которая длительное время оставалась незамеченной. Разработчики данного проекта показали, что можно создавать классные проекты даже без громадного набора разработчиков, приличного бюджета и так далее. Гонка получилась шикарной ...

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

Обзор Sea of Thieves. Лучший пиратский боевик Нужно понимать, что Sea of Thieves вышла в конце марта 2018 года, а мы делаем обзор на нее только сейчас, спустя год после релиза. Нет, дело не в том, что автор ленивый и никак не мог добраться до написания данной статьи, а в том, что на релизе игра показалась немного сырой....

Почему два крупнейших производителя электроники объединили силы в новом GPU-проекте Samsung и AMD начали совместный проект в области архитектур GPU. Разберемся, какие есть предпосылки для этого партнерства и обсудим другие компании, работающие в этой сфере. Читать дальше →

[Из песочницы] Тестирование и экономика проекта В своей работе я постоянно использую unit-тесты. А вы? По моему опыту, большинство программистов – очень редко. Проводя собеседование с кандидатами на вакансии в моей команде, я всегда задаю вопрос: «Есть ли у вас опыт тестирования?». И чаще всего слышу в ответ: «Нет». А есл...

TR-069 в Mikrotik. Испытываем Freeacs в качестве сервера автоконфигурации для RouterOS В данной статье, я попробую пошагово описать процесс установки тестового сервера прекрасного проекта Freeacs до полностью работоспособного состояния, и показать практические приемы для работы с mikrotik: конфигурацию через параметры, выполнение скриптов, обновление, установк...

Читаем даташиты 2: SPI на STM32; ШИМ, таймеры и прерывания на STM8 В первой части я попробовал рассказать хобби-электронщикам, выросшим из штанишек Ардуино, как и зачем им стоит читать даташиты и прочую документацию к микроконтроллерам. Текст получился большой, поэтому я пообещал практические примеры показать в отдельной статье. Ну что же,...

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

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

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

Теперь уведомления с вашего Android-смартфона приходят и на ПК Microsoft выполнила одно из самых больших своих обещаний, связанных с программным обеспечением проекта Your Phone. Компания выпустила сборку Windows Insider Preview, в которой заработала новая функция – отображение уведомлений Android на вашем ПК. Если дадите приложениям ра...

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

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

«Фабричный метод» и «Абстрактная фабрика» во вселенной «Swift» и «iOS» Слово «фабрика» – безусловно одно из самых часто употребляемых программистами при обсуждении своих (или чужих) программ. Но смысл в него вкладываемый бывает очень разным: это может быть и класс, порождающий объекты (полиморфно или нет); и метод, создающий экземпляры какого-л...

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

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

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

[Из песочницы] Как сойти за хорошего программиста Привет, Хабр! Представляю вашему вниманию перевод статьи «How To Fake Being a Good Programmer» автора Stan Sootla. Программисты – это, своего рода, волшебники: слегка потрепанные персонажи-бедняки, которые умеют превращать кофе в строчки кода. Я не владею магией, я всего ...

Выход из зоны комфорта: с nodejs на dlang В 2017м году я начал писать проект на nodejs — реализацию протокола ObjectServer от Weinzierl для доступа к значениям KNX. В процессе написания было изучено: работа с бинарными протоколами, представление данных, работа с сокетами(unix sockets в частности), работа с redis баз...

WebRTC,stereopi: telepresense по-домашнему Для начала ролик с youtube для вдохновения: Предупреждение: проект на видео — лишь образец, который можно сделать по туториалу в статье в части стереозрения и «поворотов головой». Танки с пультами xbox не прилагаются. Не смотря на наглядность, скудный рассказ самого авт...

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

Автоматизация импортов в Python До После import math import os.path import requests # 100500 other imports print(math.pi) print(os.path.join('my', 'path')) print(requests.get) import smart_imports smart_imports.all() print(math.pi) print(os_path.join('my', 'path')) print(requests.get) Так получи...

МТС запустила проект по автоматизации вывоза мусора До конца года МТС намерена запустить проекты по цифровизации вывоза ТКО в нескольких регионах России.

Как 3D-принтер помог подростку пострадавшему от бомбардировки получить новую руку Перевод статьи из The Guardian сделан для вас Top 3D Shop. Когда Мик Эбелинг прочёл о южносуданском мальчике потерявшем обе руки, он вооружился 3D-принтерами и отправился в путешествие, чтобы изготовить для подростка новые конечности. Теперь этот проект дарит надежду ещё ...

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

Проект Owl поможет быстро развернуть Wi-Fi сеть в зоне любого стихийного бедствия Компания Weather, принадлежащая IBM, предсказывает, что в 2019 году на США обрушится до семи крупных ураганов, которые могут спровоцировать природные катастрофы. В таких условиях неоценимую помощь пострадавшим и спасателям может оказать технология аварийной Wi-Fi связи DuckL...

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

Опыт участия в GSoC: как двое (трое) студентов реально улучшили код CRIU Ежегодно Google проводит мероприятие Google Summer of Code, на котором ведущие OpenSource проекты находят себе новых талантливых разработчиков среди студентов. В 2019 нашему проекту CRIU удалось не только пройти отборочный тур, но также привлечь сразу несколько молодых разра...

Коктейль для здорового питания — его делает стартап из акселератора Университета ИТМО На рынке функционального питания появляется все больше производителей. Проект Foyt, основанный в акселераторе Университета ИТМО Future Technologies, попробует стать полноправным игроком в этой нише. Читать дальше →

Как снизить вес компонента самолета на треть S-образный кронштейн – компонент исполнительного механизма системы увеличения подъемной силы самолета Проект оптимизации и аддитивного производства структурного авиационного компонента, осуществленный компаниями ASCO Industries и SLM Solutions, в очередной раз доказал эффе...

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

GeekUniversity открывает набор на факультет дизайна В нашем онлайн-университете GeekUniversity открылся новый факультет дизайна. За 14 месяцев студенты смогут создать портфолио из шести проектов для компаний: Ситимобил, Delivery Club, MAPS.ME и других проектов, и применить полученные навыки на практике. Обучение на факультет...

Э — Эксперимент. Или как наука помогает проектировать интерфейсы Читая различные книги и статьи по психологии, сохранила себе в копилку некоторое количество интересных экспериментов, которые могут натолкнуть на мысли и решения при проектировании интерфейса, дизайна, подаче материала (товара и пр.). Описанные эксперименты не новы, но их...

Структуры против Классов С самого начала, когда я начинал заниматься программированием, вставал вопрос, что использовать для улучшения быстродействия: структуру или класс; какие массивы лучше использовать и как. По поводу структур, Apple приветствует их использование, объясняя это тем, что они лучше...

Rollup: уже можно собирать приложения Rollup — это сборщик javascript приложений и библиотек нового поколения. Многим он давно знаком как перспективный сборщик, который хорошо подходит для сборки библиотек, но плохо подходит для сборки приложений. Однако время идет, продукт активно развивается. Я впервые попроб...

[Из песочницы] Как я делился местоположением через ВК API Недавно решил попробовать реализовать идею о том, как можно делиться местоположением через API ВКонтакте с друзьями в режиме, приближенном к реальному времени. На выходе получилось кроссплатформенное Qt-приложение для iOS/Android, веб-приложение для ВКонтакте и парочка pull ...

ConfigureAwait, кто виноват и что делать? В своей практике я часто встречаю, в различном окружении, код вроде того, что приведен ниже: [1] var x = FooWithResultAsync(/*...*/).Result; //или [2] FooAsync(/*...*/).Wait(); //или [3] FooAsync(/*...*/).GetAwaiter().GetResult(); //или [4] FooAsync(/*...*/) .Configur...

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

Спорим, не угадаете? Какой компонент iPhone 11 Pro Max оказался самым дорогим Запомните раз и навсегда: стоимость компонентов — это не то же самое, что себестоимость Apple часто обвиняют в накрутке цен на свои смартфоны. Большинству кажется невозможным, что хоть и крутой, но вполне обычный с виду телефон действительно может стоить тысячу долларо...

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

Xiaomi Aqara Switch переделываем с ZigBee на Z-Wave Решил попробовать интегрировать в свою домашнюю Z-Wave автоматизацию ZigBee выключатели. Для экспериментов приобрел недорогой ZigBee выключатель на батарейках Xiaomi Aqara Smart Switch. Выглядит красиво, пластик высочайшего качества, очень приятный, клавиша выключателя с п...

Портирование Qt на STM32 Добрый день! Мы в проекте Embox запустили Qt на STM32F7-Discovery и хотели бы об этом рассказать. Ранее, мы уже рассказывали как нам удалось запустить OpenCV. Qt — это кроссплатформенный фреймворк, который включает в себя не только графические компоненты, но и такие вещи ка...

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

Автоматизация аппаратного тестирования Embedded Систем Продолжим цикл статей об автоматизации тестирования Embedded систем. В этой статье будет рассказано как можно быстро и относительно просто интегрировать возможность управления питанием тестируемого устройства из тестового скрипта а так же получить возможность имитировать наж...

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

Ubisoft и Mozilla разрабатывают ИИ для помощи программистам Ubisoft совместно с Mozilla разрабатывает помощника программиста на базе искусственного интеллекта. Проект называется Clever Commit. Об этом заявил глава отдела исследований и разработок Ubisoft Ив Жакье в рамках саммита DICE 2019.

Программист устроил управляемое реалити-шоу в интернете для своего растения Американский программист уже три года ведёт проект Takecareofmyplant. Это своего рода интерактивное шоу, в котором интернет-пользователи голосованием решают, когда нужно поливать растение, чтобы оно не погибло. Полив осуществляется автоматически при помощи Raspberry Pi. Кто ...

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

[recovery mode] Расширение (плагин) SketchUp для проектирования мебели программистом При расчете стоимости новой кухни цена оказалась такой большой, что я решил сделать её сам так как это обойдется в два раза дешевле. Для тренировки решил сделать для себя рабочий стол. Достаточно быстро пришло понимание: чтобы сделать хорошую вещь нужно сделать 3D модель. Эт...

Управление ожиданиями или Как говорить «нет» Преподаватель Финансового университета Тигран Басеян рассказал Нетологии о своем опыте работы в корпоративном стартапе Боржоми и управлении ожиданиями. Сколько раз после неудачного проекта я думал: «Теперь все пойдет иначе, я набрался опыта. Такие вещи я больше не буду дела...

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

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

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

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

Автоматизация квартиры с HomePod, Raspberry Pi и Node.js Перевели для вас статью Криса Хокинса, в которой он рассказывает о превращении своей квартиры в умный дом. В качестве базы используется HomePod от Apple, но, конечно, можно применять и другие системы. У меня дома работает Apple HomePod, который помогает контролировать о...

OWASP API Security Top 10 RC Этот проект предназначен для постоянно растущего числа организаций, которые внедряют потенциально чувствительные API в рамках своих программных решений. API используются для внутренних задач и для взаимодействия со сторонними сервисами. К сожалению, многие API не проходят т...

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

[Перевод] Миниатюрный функциональный аналог декатрона для реплики Harwell Dekatron Computer и не только Разрабатывая этот функциональный аналог декатрона, автор преследовал две цели: поучаствовать всё в том же конкурсе конструкций на платах площадью в один квадратный дюйм, а также применить множество таких модулей в проекте WITCH-E по воссозданию Harwell Dekatron Computer, т...

[Перевод] 19 концепций, которые нужно изучить для того, чтобы стать эффективным Angular-разработчиком TODO-приложение во фронтенд-разработке — это то же самое, что «Hello world» в обычном программировании. При создании TODO-приложений можно изучить выполнение CRUD-операций средствами того или иного фреймворка. Но часто подобные проекты лишь весьма поверхностно касаются того,...

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

Ubisoft и Mozilla создают ИИ-помощника для программистов Издатель видеоигр Ubisoft совместно с Mozilla разрабатывает помощника программиста на базе искусственного интеллекта. Проект называется Clever-Commit. Об этом заявил глава отдела исследований и разработок Ubisoft Ив Жакье (Yves Jacquier) в рамках саммита DICE 2019. ...

Как планировать на год. Кейс IT-компании 120 человек и две практики для небольших команд Хабр, привет! Меня зовут Антон, я руководитель YouGile (система управления проектами). Самое полезное, что я делаю в компании — это общаюсь с клиентами на тему того, как вести проекты и как связывать отделы в системе управления. Тема сколько-нибудь долгосрочного планирован...

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

React + Mobx: в чём смысл? Сегодня я хочу рассказать вам о том, как на нашем проекте состоялся переход на Mobx, какие преимущества это даёт. Также будет показан типовой проект и даны пояснения по основным вопросам. Но сначала вводные. Читать дальше →

Автоматизация склада производственно-торговой компании Компания ЕМЕ объявляет о завершении проекта автоматизации склада производственно-торговой компании «Мир газа».

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

[Перевод] Новости из мира 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). Информация (пос...

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

Превращая FunC в FunCtional: как Serokell победили в Telegram Blockchain Competition Вы наверняка слышали о том, что Telegram собирается запустить блокчейн-платформу Ton. Но вы могли пропустить новость, что не так давно Telegram объявил конкурс на реализацию одного или нескольких смарт-контрактов для этой платформы. Команда Serokell с богатым опытом разрабо...

[Перевод] KeeBee. Изготовление с нуля собственной USB-клавиатуры Несколько месяцев назад завершился мой проект по изготовлению USB-клавиатуры. Среди прочего, я выполнил дизайн электронных схем, спроектировал печатную плат, запрограммировал прошивку, сделал макет в CAD и произвёл сборку устройства. В результате получилась удобная клавиатур...

Tic Tac Toe, часть 6: Flask и Celery/RabbitMQ Tic Tac Toe: содержание цикла статейПопробуем подключить Celery/RabbitMQ к нашему проекту. В качестве основы возьмем проект с Flask'ом. Celery займется вычислением случайного числа. Читать дальше →

5 способов сделать Python-сервер на Raspberry Pi. Часть 1 Привет, Хабр. Сегодня в большом числе проектов домашней (и не только) автоматизации используется Raspberry Pi. При этом достаточно удобно иметь не только прямой доступ к устройству, но и использовать браузер — это позволяет выполнять необходимые действия и с компьютера, и с...

[Из песочницы] Фантазии на тему метаклассов в C# Программистам вроде меня, которые пришли в C# с большим опытом работы в Delphi, часто не хватает того, что в Delphi принято называть ссылками на класс (class reference), а в теоретических работах – метаклассами. Я несколько раз натыкался в разных форумах на обсуждение, прохо...

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

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

[Перевод] Консенсус на репутации ноды. Нужен ли? Знаю-знаю. Криптопроектов тьма, есть куча консенсусов: на основе труда и владения, золота, нефти, выпеченных пирожков (есть и такой, да-да). Что нам ещё от одного? Это и предлагаю обсудить после прочтения перевода "облегченной" технической документации проекта *Созвездие (Co...

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

Боевые стрельбы в ночи, или Почему нагружать прод — не страшно «А если ты не выстрелишь, то испорчусь я» Ещё недавно считалось, сервис должен просто работать. Нарисовали, заверстали, написали скрипты — вроде всё ок, можно катить на прод. Но конкуренты не дремлют, поэтому начинается гонка не только за новыми функциями, но и за скоростью...

Rails + Postgres + bindings Привет друзья. Ни для кого не секрет, что работая на крупных проектах со сложной логикой, Active Record становится не помощником, а обузой. Представьте, что вам необходимо сделать очень сложный запрос для PostgreSQL нативным образом (на чистом SQL), где должно присутствова...

Банк Агророс завершил автоматизацию финансового мониторинга на платформе ELMA BPM В декабре 2018 года был завершен проект по автоматизации отдела финансового мониторинга банка Агророс. В рамках внедрения была проведена интеграция …

[Перевод] Встречайте Open Source License Compliance Handbook Большой зоопарк опенсорсных лицензий неизбежно приводит к тому, что приходится нередко задаваться вопросами касательно их совместимости, тех или иных применимых лицензионных условий в зависимости от соответствующего сценария использования. Замечательно, конечно, что существу...

Как мы со Стасом завод за 2 месяца автоматизировали Случалось ли вам видеть автоматизацию производственного предприятия, выполненную за 2 месяца? Или, может быть, доводилось делать такую автоматизацию? Я уверен, таких примеров много. У меня тоже есть – кидаю в копилку. Сразу скажу, чтобы у вас не было предвзятости при прочте...

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

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

Chrome Canary получил поддержку Windows Mixed Reality Стало известно, что актуальные сборки браузера Chrome Canary (версия 74) обзавелись поддержкой Windows Mixed Reality. Но важно отметить, что для тестирования вам необходимо вступить в программу Windows Insider и установить сборку Windows 10 под номером 18329 или новее, поск...

Автоматизация: как работать с обновлениями Привет, Хабр! Я довольно давно и много занимаюсь автоматизацией тестирования. И не понаслышке знаю, какую боль иногда доставляют новые версии чего угодно. Обновили XCode, вышла новая Selenium, придумали новый браузер (особое спасибо Microsoft за Edge и его драйвер), зачем-т...

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

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

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

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

Разработка ТамТам-бота на Python Привет, Хабр! Позвольте представиться: меня зовут Сергей Агальцов, и я "программист по жизни". Это значит, что я давно уже IT-менеджер, а вовсе не программист по профессии, но программирование использую постоянно, как в своей основной деятельности, так и как хобби. Как част...

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

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

Техносфера. Курс лекций «Управление IT-проектами и продуктом» Недавно наш образовательный проект Техносфера выложил последние лекции из курса «Управление IT-проектами и продуктом». Вы получите знания в области управления продуктами и проектами на примере Mail.ru Group, поймёте роль менеджера продукта и проекта, узнаете о перспективах...

История сборки «деревенского суперкомпьютера» из запчастей с eBay, Aliexpress и компьютерного магазина. Часть 3 Доброго дня, хабровчане! Продолжу свою историю сборку «суперкомпьютера в деревне». Ссылка на 1 часть истории: habr.com/ru/post/454282 Ссылка на 2 часть истории: habr.com/ru/post/454448 Третью часть я начну с выражения искренней благодарности своим друзьям, которые подде...

Новая версия «ЭСКАДО»: работайте с проектами в СЭД быстрее Компания «Интерпроком» объявляет о выходе новой версии системы комплексной автоматизации документооборота «ЭСКАДО 7.6».

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его ...

Многообразный мир embedded systems и место Embox в нем Проекту Embox уже исполнилось 9 лет, но многие не понимают, что это такое и с чем его едят зачем он нужен. Некоторые из тех, кто слышал о проекте и знают, что это операционная система, считают, что Embox — это “отечественная ОС”. Действительно, задумывался Embox как попытка ...

Roomba i7+ — обзор робота-пылесоса от iRobot Роботы-пылесосы сделали нашу жизнь проще благодаря автоматизации важного и трудоемкого процесса уборки. Нельзя переоценить то, сколько времени экономит такое устройство. Но робот, как и любой пылесос, тоже нуждается в обслуживании. Американская компания iRobot попыталась авт...

Новая версия «ЭСКАДО»: работайте с проектами в СЭД быстрее и нагляднее Компания «Интерпроком» объявляет о выходе новой версии системы комплексной автоматизации документооборота «ЭСКАДО 7.6».

[Перевод] Open source не приносит денег, потому что не создан для этого Лучший способ что-то сделать — хотя бы попробовать Все знают, что на open source невозможно заработать, верно? Я сейчас размышляю на эту тему, потому что Mozilla хочет в ближайшие несколько лет диверсифицировать доходы, но у нас одно ограничение — все разработки обязатель...

Антон Беличков: «Самый простой способ понять мощь OpenStreetMap — начать самому править карту» Антон Беличков (az09) — программист из Магнитогорска, который, как почти все герои моих интервью про мир OSM, пришел в этот проект 10 лет назад. Он — теплая мудрость и твердый дух сообщества RU-OSM. Почему так важен институт наставничества, как нам догнать Америку и чего хо...

[Из песочницы] Смок-тестирование релиз-кандидата автотестами за 15 минут Меня зовут Лилия, я QA Lead в одном из проектов финансовой группы БКС (сервис по подбору выгодных для клиента предложений из ряда кредитных продуктов), и сегодня я расскажу, как мы автоматизировали смок-тестирование, с какими проблемами столкнулись и какой стек технологий ис...

Виктор Вяличкин: «Свобода, равенство, братство есть только в OpenStreetMap, где все всегда на виду» Виктор Вяличкин (Rainbow Fox) — инженер-программист из Тулы, который любит прогулки за городом и научно-популярную литературу. Он присоединился к проекту OpenStreetMap всего полгода назад, но уже успел стать первым картографом своего родного города. Почему он мапит каждый ...

Обзор обновления Veeam Backup & Replication 9.5 Update 4 В конце января вышло обновление Update 4 для Veeam Availability Suite 9.5, насыщенное фичами как иной полноправный major release. Сегодня я вкратце расскажу об основных новинках, реализованных в Veeam Backup & Replication, а про Veeam ONE обещаю написать в ближайшем буду...

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

Facebook готовит к выпуску цифровые монеты, привязанные к корзине валют и обеспеченные капиталом компании Когда Telegram выпустит свою криптовалюту, то будет не единственным мессенджером с возможностью финансовых расчётов, пишет NY Times. Аналогичные планы есть у Facebook (монеты для мессенджера WhatsApp) и Signal, и не только у них. Информацию о разработке такого проекта подтв...

Lockheed Martin представила модуль будущей лунной базы Проект NASA «Gateway» предполагает создание космической станции вдали от Земли, которая станет базой для полетов в дальний космос. Это совершенно иной уровень требований к надежности и возможностям оборудования, поэтому работа начинается с многочисленных тестов и исследовани...

[Перевод] Blazor перешел из стадии эксперимента в Preview С этим новым релизом мы рады сообщить, что Blazor теперь в стадии превью! Blazor больше не является экспериментальным, и мы обязуемся предоставлять его в качестве поддерживаемого фреймворка веб-интерфейса, включая поддержку запуска на стороне клиента в браузере на WebAssembl...

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

Технологии, аутсорс и менталитет: как мы внедряли Microsoft Dynamics 365 в немецком офисе Lamoda Объединение учетных систем удаленного филиала и их интеграция с головной структурой — задача достаточно непростая даже в пределах России. А когда заказчик находится за рубежом, весь проект может усложнить отсутствие экспертизы в местном налоговом законодательстве и конфликт ...

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

Применение компьютерного зрения в морских исследованиях или 12 человек на сундук мертвеца Горячо приветствую, уважаемые коллеги. В сообществе OpenDataScience успешно развивается инициатива ML4SG — Machine Learning for Social Good. В её рамках стартовал целый ряд интересных проектов, которые в самых разных областях улучшают нашу с вами жизнь. Мы хотели бы расска...

История типизации на примере одного большого проекта Всем привет! Сегодня я расскажу вам историю развития типизации на примере одного из проектов в Ostrovok.ru. Эта история началась задолго до хайпа о typing в python3.5, более того, она началась внутри проекта, написанного еще на python2.7. 2013 год: совсем недавно был рел...

[Перевод] Добавление экшенов в грамматику PEG Грамматика становится ещё лучше, если вы можете добавить (некоторую) семантику в соответствии с правилами. В частности, для анализатора Python, который я разрабатываю, мне нужно возвращать узел AST из каждой альтернативы, поскольку я хочу придерживаться текущей реализации AS...

Как сэкономить на психотерапевте используя test-driven development У вас когда-нибудь было такое состояние? Хочу показать вам, как TDD может улучшить качество кода на конкретном примере. Потому что всё то, что я встречал при изучении вопроса, было довольно-таки теоретическим. Так получилось, что мне довелось написать два практически иден...

[Перевод] Почему провалилась соцсеть Google+ Я присоединился к команде разработчиков Google Plus вскоре после появления этого проекта в 2010 году, перейдя из команды Blogger. Я участвовал в проекте три года, сначала поработав в команде разработки профилей, затем перейдя в отдел развития и привлечения пользователей (Gr...

Flutter: рисуем текст вдоль окружности Понадобилось мне тут на днях в одном мини-проекте (проект, можно сказать, экспериментальный, сделан на Flutter Web) реализовать такого вида штуку: Читать дальше →

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

Coding the Art: как мы генерируем графику и анимацию в дизайн-проектах В JetBrains мы любим экспериментировать. Результаты наших экспериментов не всегда становятся достоянием широкой публики, но кое-чем мы готовы поделиться с вами прямо сейчас. Наш новый проект начался со стремления к автоматизации дизайнерских процессов. К каждому релизу прод...

[Перевод] API IntersectionObserver и ленивая загрузка изображений Использование ленивой загрузки изображений для улучшения производительности веб-проектов — востребованная техника оптимизации. Всё дело в том, что изображения — это «тяжёлые» ресурсы, которыми переполнены современные веб-сайты. Мы уже кое-что об этом публиковали. Здесь можно...

Приложение для iOS и Android на Kotlin + Flutter UI Вступление Всем привет. Какое-то время назад, я решил делать свой проект для Android и iOS одновременно. Естественно, встал вопрос о выборе технологий. Пару недель присматривался к популярным стекам и выбрал Kotlin/Native. Поскольку я являюсь Android-разработчиком, то с Ko...

Независимый обзор PVS-Studio (Linux, C++) Увидел публикацию о том, что PVS таки научился анализировать под Линуксами, и решил попробовать на своих проектах. И вот что из этого получилось. Читать дальше →

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

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

Современный PHP — прекрасен и продуктивен Почти 8 месяцев тому назад я пересел с проектов python/java на проект на php (мне предложили условия от которых было бы глупо отказываться), и я внезапно не ощутил боли и отчаяния, о которых проповедуют бывшие разработчики на ПХП. И вот что я думаю по этому поводу. Читать ...

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

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

[Перевод] Каково быть мейнтейнером свободного ПО 2013 год. Я узнаю об альфе нового проекта под названием GNOME Calendar. Интересно. Я люблю календари. «Круто, буду следить за ним», — сказал я по молодости. В ветке ui-rework шла бурная разработка. Каждый день несколько новых коммитов. Скачать, собрать, протестировать. И в...

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

Deep Learning vs common sense: разрабатываем чат-бота Чем больше пользователей у вашего сервиса, тем выше вероятность, что им понадобится помощь. Чат с техподдержкой — очевидное, но довольно дорогое решение. Но если применить технологии машинного обучения, можно неплохо сэкономить. Отвечать на простые вопросы сейчас может и бо...

Шестерни в Box2D Добрый день, дорогой читатель! Это уже четвертая статья по Box2D. И здесь я предложу готовое решение для программистов. Мне самому нужны были шестерни для моего проекта, и я сделал 4-х, 6-и, 12-и и 24-х зубчатые колеса. Код занял 2115 строк, 4 дня работы. И я хочу поделиться...

Дайджест IT событий марта (часть первая) С весной приходит и новый пик активности программистов в нерабочее время — нам снова приходится разбить мартовский обзор на две части. Основу светской жизни в этом месяце составляют небольшие встречи по интересам — языки (Pythpn, Lua, Elixir), веб-рзработка, тестирование. ...

Сети Cisco на основе намерений начали использоваться для цифровой трансформации S7 Group Решения Cisco в области сетей на основе намерений были применены при построении корпоративной ИТ-инфраструктуры в новом офисе S7 Group в Новосибирске. В рамках проекта впервые в России была применена архитектура Cisco DNA (Digital Network Architecture ...

Запускаем инструментальные тесты в Firebase Test Lab. Часть 1: iOS проект Меня зовут Дмитрий, я работаю тестировщиком в компании MEL Science. Совсем недавно я закончил разбираться со сравнительно свежей фичей от Firebase Test Lab — а именно, с инструментальным тестированием iOS приложений с использованием нативного фреймворка тестирования XCUITe...

[Из песочницы] Клиент: — Сколько стоит копия Facebook? «Сколько стоит сделать копию Facebook (Avito, Яндекс.Такси, fl.ru...)?» — один из самых популярных вопросов клиентов, на который мы сегодня дадим развернутый ответ и расскажем, как это выглядит со стороны людей, которым предстоит это делать. Читать дальше →

Blameless environment: никто не должен писать качественный код На РИТ++ Никита Соболев (sobolevn) выступил, как он сам назвал это, с проповедью на тему качества кода и процессов в компании. Особо впечатлительных просим налить себе ромашкового чаю, но отойти от экранов не предлагаем. Вы можете не соглашаться ни с одним из тезисов, настаи...

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

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

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

«Теория Большого взрыва» и практика применения Python Вступление В последнее время активно изучаю язык программирования Python. Особенно меня заинтересовало использование Python в распознавании и классификации лиц. В статье я попробую применить распознавание лиц для сериала «Теория Большого взрыва». Читать дальше →

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

BudgetTracker — ещё один open-source инструмент для личного учета финансов Почему? Несколько лет назад я заинтересовался получением пассивного дохода и решил попробовать инвестировать с помощью p2b-площадок. Через некоторое время стало заметно, что денежные средства оказались очень сильно фрагментированы по площадкам, банкам, долгам, и это затрудня...

DARPA занялось созданием искусственного интеллекта нового поколения Источник: Коммерсант Агенство Defense Advanced Research Projects Agency (DARPA), о проектах которого не раз писали на Хабре, недавно взялось за проект создания искусственного интеллекта следующего поколения Artificial Intelligence Next (AI Next). Идеологи и создатели увере...

[Из песочницы] Статический анализ «BIOS/UEFI» или как получить Dependency Graph «Я вчера закончил ковку, Я два плана залудил…» … V.S. Vysotsky song... Уже почти 3 года назад (в начале 2016) в issue проекта UEFITool на GitHub появилось пожелание пользователей: построить «Dependency Graph» для исполняемых модулей, входящих в BIOS/UEFI. Завязалось да...

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

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

Издатель Netmarble анонсировал новую TERA Origin, за разработку ответственна студия, создавшая TERA M Издатель Netmarble анонсировал новую MMORPG TERA Origin, которая станет частью серии многопользовательских ролевых игр TERA. Разработкой займется студия Squall – внутренняя команда Krafton, ранее известной как Bluehole. В первую очередь, новая игра выйдет на японском рынке ...

MPS 2018.3: планы генерации, улучшения в языке сборки и упаковки и в языке редактора, обновленный интерфейс Привет, Хабр! Недавно мы выпустили [MPS 2018.3](https://www.jetbrains.com/mps/download/). В этой версии много новых функций, с которыми работа над проектами станет еще эффективнее. Мы улучшили планы генерации и язык описания редактора, добавили новые конструкции в язык сборк...

Intel One API Project: архитектур много, API один На проходившем в июне Intel Software Technology Day ведущие инженеры компании рассказали о софтверном проекте под названием «Intel One API» — унифицированной модели программирования для облегчения разработки ПО под разнообразные вычислительные архитектуры, включающей в себ...

Исповедь рекламного агентства из глубинки: взлёты, падения и внедрение CRM «Я CIO, CTO, швец, жнец и на дуде игрец в небольшом рекламном агентстве в топ-85 регионе России. На первый взгляд, все эти полиграфии, концепции и нанесения страшно далеки от Хабра. Однако это не так. Сложные станки, автоматизация бизнеса, CRM, склад — неполный список ИТ-инф...

Тестирование аннотаций @NonNull/@Nullable Вместо «Посвящается ...» Описанная ниже задача не была новаторской или чертовски полезной, компания в которой я работаю не получит за нее прибыль, а я премию. Но эта задача была, а значит ее пришлось решить. Intro В статье вы часто будете встречать слово Lombok, прошу хей...

В России разрабатывают «конструктор» для создания систем управления АЭС Новый комплекс "Урал-Атом" позволяет создавать распределенные системы управления технологическим объектом, в которых за работу каждого вида оборудования отвечает отдельный модуль. Данные системы отличаются от централизованных большей надежностью и снижением вероятн...

Visa запустила пилотный проект по снятию наличных на кассе магазина Международная платежная система Visa сделала объявление о запуске пилотного проекта по снятию наличных денег на кассе магазинов.

Качество кода Качество кода — тема, которая родилась вместе с программированием. Для оценки и контроля качества менеджмента предприятий применяется ISO 9000, для продуктов — ГОСТ и тот же ISO, а вот для оценки качества кода ГОСТа нет. Точного определения и стандарта для качества кода тоже...

Камера, мотор, Big Data: как киностудии ищут новые фильмы с помощью ИИ Успех новых продуктов у аудитории можно предсказать с помощью машинного обучения. Такой метод прогноза в последние годы стали использовать и в кинобизнесе. О том, как узнать с помощью ИИ, стоит ли выпускать новый фильм и как его рекламировать, — в обзоре Binary District. ...

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

Компания ABC Consulting завершила проект по автоматизации управления персоналом в компании «Полюс» ABC Consulting завершило проект по автоматизации системы управления подбором и развитием персонала на базе SAP SuccessFactors в компании «Полюс». Этот проект является первым внедрением облачного решения в компании ...

[Из песочницы] Разработка с Docker на Windows Subsystem for Linux (WSL) Для полноценной работы с проектом на docker'е в WSL необходима установка WSL 2. На момент написания заметки ее использование возможно только в рамках участия в программе предварительной оценки Windows (WSL 2 доступна в сборках 18932 и выше). Так же отдельно стоит упомянут...

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

Что делают в офисе инженеры в Apple и Intel: профориентационный онлайн-курс современной микроэлектроники для школьников Недавно вышел бесплатный онлайн-курс в трех частях под названием «Как работают создатели умных наночипов» (1, 2, 3). Он предназначен для профориентации школьников и отличается максимальной конкретностью: вот так выглядит распределение работы в команде проектирования микросхе...

Криптовалютный океан: обзор топ-50 проектов с CoinMarketCap Когда смотришь на бесконечный список криптовалют на CoinMarketCap, первый вопрос который приходит в голову: а чем все они отличаются? И зачем их столько? Первый же ответ из зала — это все хайп и маркетинг! Но осознанные люди не поддаются очарованию простых ответов. Чтобы от...

[recovery mode] CRM – стоимость успеха, стоимость ошибки, стоимость владения Обсуждая CRM, прежде всего остального, следует замечать, что автоматизация CRM – это НЕ регламентируемый рынок. В отличие, к примеру, от рынка автоматизации бухгалтерского учёта. У бухгалтера есть ПБУ и еще куча нормативных документов, регламентирующих учёт, в CRM этого нет ...

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

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

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

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

Настройка Unit-тестов в смешанных проектах Swift + ObjectiveC Данная статья будет маленькой, расскажу, какие проблемы возникли при создании таргета для тестирования в смешанном и достаточно старом проекте ObjectiveC + Swift, и как удалось их решить. Читать дальше →

У некоторых инсайдеров Microsoft Edge на Chromium появился в Windows Sandbox Компания Microsoft по-прежнему не запустила публичное тестирование новой версии браузера Edge, построенной на базе Chromium, однако это может произойти уже в самое ближайшее время. Если же вы не хотите ждать, то можете установить одну из утёкших сборок браузера, ссылки на к...

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

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

Книга «Linux в действии» Привет, Хаброжители! В книге Дэвид Клинтон описывает 12 реальных проектов, в том числе автоматизация системы резервного копирования и восстановления, настройка личного файлового облака в стиле Dropbox и создание собственного сервера MediaWiki. На интересных примерах вы изуч...

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

Введение в программирование: простой 3Д шутер с нуля за выходные, часть 1 Этот текст предназначен для тех, кто только осваивает программирование. Основная идея в том, чтобы показать этап за этапом, как можно самостоятельно сделать игру à la Wolfenstein 3D. Внимание, я совершенно не собираюсь соревноваться с Кармаком, он гений и его код прекрасен. ...

Стартапы недели: производитель БАД 8greens, автоматизатор рабочих мест Rippling, российский kwork и другие проекты А также обзор проектов из прошлогодних выпусков.

Расти большой: топ-10 докладов Mobius 2018 Moscow В 2018-м App Store и Google Play исполнилось 10 лет. За это десятилетие некоторые приложения, начинавшиеся как маленькие стартапы, разрослись в гигантские проекты — а по пути преодолели множество трансформаций, набили множество шишек и извлекли множество уроков. Мы откры...

[Перевод] Я выставил счёт $18 000 за статичную веб-страничку… и мне это сошло с рук Не так давно я работал контрактником, перескакивая с одного проекта на другой. С некоторыми краткосрочными проектами справлялся за неделю. Другие длились пару месяцев. Они приносили достаточно денег, чтобы взять отпуск. Но я предпочитал короткие, потому что там можно было ус...

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

Роскосмос готовит посадочную платформу «ЭкзоМарс» к финальной сборке и испытаниям ЭкзоМарс» — совместный проект Роскосмоса и Европейского космического агенства EKA по поиску жизни на Красной планете. Она состоит из двух этапов, первый из которых успешно завершился в 2016 году — орбитальный модуль «Трейс Гас Орбитер» благополучно вышел на орбиту планеты и...

Мнение: Почему Apple следует вернуть скевоморфизм в iOS 13 В 2013 году Apple кардинально изменила внешний вид своей мобильной операционной системы, сделав большую ставку на минимализм. До ключевого момента перехода на новый стиль, компания использовала скевоморфизм — принцип, который подразумевает имитацию реальных объектов. ...

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

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

[Перевод] Дизайн видеоигр: нужно понимать, что наследуешь В прошлом году я сделал короткий доклад на GDC о важности понимания того, на каком наследии прошлого основана ваша игра. Видео доклада опубликовано здесь (моя часть начинается с 28:50): Ссылка Три страйка — и ты выбываешь. Эта фраза настолько популярна, что практически ста...

[Из песочницы] Etherblade.net — opensource проект по созданию инкапсулятора ethernet-трафика на FPGA (часть первая) Сразу хочу оговориться, что эта статья не только подразумевает пассивное чтение, но и приглашает всех желающих присоединяться к разработке. Системные программисты, разработчики железа, сетевые и DevOps инженеры — добро пожаловать. Поскольку проект идет на стыке сетевых те...

Стартапы недели: сервис для проведения хакатонов Agorize, виртуальная сеть гостиниц OYO Rooms и другие проекты А также обзор проектов из прошлогодних выпусков.

Стартапы недели: игровая энциклопедия RAWG, маркетплейс брендов Spring, база данных MariaDB и другие проекты А также обзор проектов из прошлогодних выпусков.

Стартапы недели: сервис для онлайн-вечеринок с покупками Dote, фермерский маркетплейс GrubMarket и другие проекты А также обзор проектов из прошлогодних выпусков.

[Из песочницы] CQRS: принцип «разделяй и властвуй» на службе у программиста Слоеная архитектура – это спасение в мире корпоративной разработки. С ее помощью можно разгрузить железо, распараллелить процессы и навести порядок в коде. Мы попробовали использовать паттерн CQRS при разработке корпоративного проекта. Всё стало логичнее и … сложнее. Недавно...

От UI-kit до дизайн-системы Опыт онлайн-кинотеатра Иви Когда в начале 2017 года мы впервые задумались о создании собственной системы доставки дизайна в код, об этом уже многие говорили и кто-то даже делал. Однако, об опыте построения кроссплатформенных дизайн-систем и по сей день мало что известно, а ...

Ride Out Heroes — новая королевская битва от NetEase в режиме пробного запуска Последняя королевская битва от NetEase выходила аж в июле этого года. Это была Eclipse Isle, которая запустилась в режиме пробного запуска. Но 3 месяца без новых проектов — непростительно долго для этого издателя, поэтому встречайте Ride Out Heroes. Главная фишка игры — пер...

Веб-разработчики пишут небезопасный код по умолчанию «Если хотите, я могу зашифровать пароли» Некоторые разработчики, которым дали прямое указание применить криптографию, использовали шифрование парольной базы с помощью Base64 Когда в СМИ появляется информация об очередной утечке данных, всегда вызывает недоумение, почему ко...

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

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

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

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

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

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

Самодокументируемый REST сервер (Node.JS, TypeScript, Koa, Joi, Swagger) Про преимущества и недостатки REST написано уже довольно много статей (и еще больше в комментариях к ним) ). И если уж так вышло, что вам предстоит разработать сервис, в котором должна быть применена именно эта архитектура, то вы обязательно столкнетесь с ее документировани...

[Из песочницы] Наша с девушкой первая видео игра. Разработка на Unity. Часть 1 Ну как первая… Если не считать релизы только под Android и с десяток заброшенных проектов у финиша, то да, это первая наша игра с замахом больше чем одну платформу. Как же всё начиналось? А всё просто, работали мы значит над другим проектом, назовем его «проект А», работали ...

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

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

Обзор Ace Combat 7: Skies Unknown. Лучший авиасимулятор Мне всегда нравились японские разработчики своей любовью к деталям и мелочам, на которые обычно все закрывают глаза. Именно по этой причине я очень заинтересовался игрой Ace Combat 7: Skies Unknown, которая является чем-то совершенно уникальным и неповторимым. На рынке видео...

Эмулятор ЭВМ из 80-х в браузере PCjs Machines — эмулятор вычислительных систем 1970–1990 годов. Он работает в обычном браузере. Рассказываем, чем примечателен проект и какие машины есть в его библиотеке. Читать дальше →

Linux Foundation займется open source чипами Linux Foundation открыли новое направление — CHIPS Alliance. В рамках этого проекта организация будет развивать свободную систему команд RISC-V и технологии для создания процессоров на её основе. Расскажем подробнее, что происходит в этой сфере. Читать дальше →

[Перевод] Как специалист по DevOps стал жертвой автоматизации Прим. перев.: Достойной внимания оказалась самая популярная публикация сабреддита /r/DevOps за последний месяц: «Автоматизация официально заменила меня на работе — ловушка для DevOps'ов». Её автор (из США) поведал свою историю, которая воплотила в жизнь популярную присказку ...

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

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

Обзор Thermaltake Water 3.0 120 ARGB Sync (CL-W232-PL12SW-A). Водяное охлаждение для компактных сборок Если речь заходит про системы жидкостного охлаждения, очень часто подразумеваются классические сборки с материнскими платами форм-фактора ATX или E-ATX. Выбираются в пару к корпусам, располагающим достаточным объемом свободного места. Но эти системы хороши и в пару к micro-I...

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

WebAssembly в продакшне и «минное поле» Smart TV: интервью с Андреем Нагих Интерес к WebAssembly велик, но пока что нечасто встретишь людей, использующих эту технологию в рабочем проекте. Разработка приложений под Smart TV — тоже «нетипичный JavaScript», когда все слышали о чём-то, но немногие лично пробовали. А у Андрея andreynagih Нагих есть о...

Три в ряд: топ-10 докладов Mobius 2019 Piter В День программиста делимся с мобильными разработчиками подборкой отличных докладов! В мае в Петербурге прошла конференция Mobius, а теперь мы опубликовали её видеозаписи — и для Хабра сделали подборку из десяти лучших (по зрительским оценкам). Темы очень разные — от масш...

[Из песочницы] О целесообразности Selenium WebDriverWait Чем ближе я знакомлюсь с Selenium WebDriver, тем больше у меня возникает вопросов, почему тот или иной функционал выполнен так, а не иначе. В своем выступлении «Заморочки в Selenium WebDriver» Алексей Баранцев проливает свет на тонкости реализации этого инструмента автоматиз...

Проект Металлоинвеста и JSA Group получил награду SAP Value Award Компания «Металлоинвест» получила награду SAP Value Award в номинации «Люди — самый ценный капитал» за проект по автоматизации функционального направления «Управление персоналом», реализованный совместно с консалтинговой ...

Автоматизируем переход на React Hooks React 16.18 — первый стабильный релиз с поддержкой react hooks. Теперь хуки можно использовать не опасаясь, что API изменится кардинальным образом. И хотя команда разработчиков react советует использовать новую технологию лишь для новых компонентов, многим, в том числе и мне...

[Перевод] Мертв ли Hadoop? Часть 2 Перевод статьи подготовлен специально для студентов курса «Data Engineer». Читать первую часть Никому не нужна Big Data Когда вы услышите «Никому не нужна Big Data», посмотрите на резюме докладчика. Африканский телекоммуникационный оператор, переживающий удивительные уро...

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

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

14-15 октября: Bootcamp глобального блокчейн-проекта Hyperledger впервые в Москве Нет лучшего места для первых шагов в блокчейне, чем буткемп глобального блокчейн-проекта Hyperledger, который пройдет в Москве 14 и 15 октября. Это первое подобное мероприятие в России и хорошая возможность не только своими глазами увидеть, как работает платформа, но и поп...

Работа «не в стол»: какие проекты по-настоящему зажглись после преакселерации? 22 ноября в Мастерской управления «Сенеж» жюри и эксперты вынесли окончательный вердикт командам, которые на протяжении двух месяцев прокачивали проекты в рамках преакселерационной программы. Спали мало, работали много — но так бывает всегда, когда В этом посте мы подведем...

Haxe и PHP: статическая типизация, стрелочные функции, метапрограммирование и многое другое Привет, Хабр! Предлагаю вашему вниманию перевод доклада Александра Кузьменко с прошедшей недавно (14-15 июня) конференции Hong Kong Open Source Conference 2019. До того, как присоединиться к Haxe Foundation в качестве разработчика компилятора Haxe, Александр около 10 лет пр...

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

[Из песочницы] Ускоряем сборку веб-приложения с webpack По мере того как ваше приложение развивается и растёт, увеличивается и время его сборки — от нескольких минут при пересборке в development-режиме до десятков минут при «холодной» production-сборке. Это совершенно неприемлемо. Мы, разработчики, не любим переключать контекст в...

Бесконечный UIScrollView Во многих приложениях вы можете столкнуться с прокруткой, которая никогда не переносится в противоположном направлении в конце контента. Эта техника стандартна уже в течение многих лет, на многих платформах. С другой стороны, есть много сторонних библиотек, чтобы получить ...

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

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

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

ИТ проекты и внедрение ИТ систем. 13 главных причин неудач и как их избежать? По данным The Standish Group в США и Европе за 2015 год: 31,1% от всех ИТ-проектов остановлены и не завершены; 52,7% от всех ИТ-проектов завершены со срывом сроков, значительным увеличением первоначально запланированного бюджета или кардинальным изменением изначально запла...

Обзор беспроводных колонок Tronsmart Element Force и Force+ Сегодня я расскажу про две новые колонки от Tronsmart — Element Force и Element Force+. Это пара мощных колонок на 40 Вт, с NFC, зарядкой по Type-C, подключением AUX и слотами для карты памяти. При этом, они могут играть музыку 15 часов, а их корпуса хорошо защищены от влаги...

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

Как создать open source проект Уже на этой неделе в Санкт-Петербурге пройдет IT-фестиваль TechTrain. Одним из спикеров будет Ричард Столлман. Embox тоже участвует в фестивале, и конечно мы не могли обойти вниманием тему СПО. Поэтому один из наших докладов называется “От студенческой поделки до opensource...

PyDERASN: как я написал ASN.1 библиотеку с slots and blobs ASN.1 это стандарт (ISO, ITU-T, ГОСТ) языка описывающего структурированную информацию, а также правил кодирования этой информации. Для меня как программиста это просто ещё один формат сериализации и представления данных, наравне с JSON, XML, XDR и другими. Он крайне распрост...

Visa, eBay и Mastercard вышли из Libra. Uber и Lyft остаются в проекте от Facebook Платежные компании Mercado Pago, Visa, Stripe, Mastercard и площадка онлайн-торговли eBay вышли из проекта цифровой валюты Libra крупнейшей социальной сети Facebook, сообщает Financial Times. «Мы уважаем видение ассоциации Libra. Однако eBay приняла решение не продвигаться д...

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

Проект ИТЭР в 2018 году Проект Прошедший год для Международного Экспериментального Термоядерного Реактора ИТЭР (о проекте) стал, для внешнего наблюдателя, наверное, одним из самых спокойных за все годы строительства (с 2009 года). Для меня же лично этот год был отмечен посещением площадки ИТЭР в с...

3 декабря в EGS выйдет Phoenix Point — пошаговая стратегия от автора серии X-COM Независимая студия Snapshot Games опубликовала сюжетный и релизный трейлеры тактической стратегии Phoenix Point, которая выйдет в Epic Games Store уже 3 декабря. Разработкой проекта руководил британский геймдизайнер и программист Джулиан Голлоп, принимавший непосредственное ...

Обзор Techwars Deathmatch. Война роботов Тема роботов многим близка и уже множество разработчиков попробовали реализовать свои проекты в этом сеттинге. У кого-то получилось, у кого-то вышло не очень уникально и интересно. Сегодня мы посмотрим на то, что получилось у разработчиков Techwars Deathmatch, которые решили...

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

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

Зачем Mozilla, Coil и Creative Commons выделяют для open source проектов 100 млн долларов Расскажем, как компании планируют разделить сумму гранта, и поговорим о других ситуациях, когда open source разработчики получили существенную финансовую и материальную поддержку. Читать дальше →

Не лечите меня, доктор Когда собирали доклады на голосование для участия в одной специализированной конференции, я хотел рассказать такую тему – как подсидеть директора по качеству. Это был бы конъюнктурный доклад про карьерный рост для программиста или ИТ-директора. С одной стороны, рост в сторо...

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

ObjectRepository — .NET in-memory repository pattern для ваших домашних проектов Зачем хранить все данные в памяти? Для хранения данных сайта или бекэнда первым желанием большинства здравомыслящих людей выберет SQL базу данных.  Но иногда в голову приходит мысль что модель данных не подходит для SQL: например, при построении поиска или социального графа ...

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

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

This content is not available in your country: новости, которые вы не сможете узнать из России Один из самых простых способов заблокировать ту или иную информацию (читай — тот или иной ресурс) — это запрет доступа к нему по географическому признаку. Сама блокировка может быть связана с самыми разными причинами — если это медиасервис, то чаще всего это вопросы с ли...

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

Недорогая сборка на LGA1156 На волне постов со сборками пришла мысль: "А что у меня за компьютер? Сколько он стоит сейчас? На что он способен?" Я опишу первые два пункта, подробные тесты сборки будут в следующей статье.

Republic в Kubernetes: переезд десятилетия Скандальные, важные и просто очень крутые материалы выходят в СМИ не каждый день, да и со 100% точностью спрогнозировать успешность той или иной статьи не возьмётся ни один редактор. Максимум, чем располагает коллектив — на уровне чутья сказать, «крепкий» материал или же «...

[Из песочницы] Хороший, плохой, злой — тестирование в проекте новичков Предисловие: в университете было получено задание — собрать scrum команду, выбрать проект и работать над ним в течении семестра. Наша команда выбрала разработку веб-приложения (react + flask). В этой статье я постараюсь рассказать, какими тесты должны были быть, и проанализи...

Help Desk за 3 часа. Автоматизация несложных бизнес-процессов в PowerApps, Flow и Teams Всем привет! Мой коллега написал статью по опыту использования различных инструментов О365 для автоматизации небольших бизнес-процессов. Мы взяли за основу кейс по автоматизации HelpDesk на технологиях PowerApps, MS Flow и MS Teams. Подробности под катом. Надеюсь, статья бу...

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

В «УРАЛСИБ Жизнь» интегрирована система «Синтегро ОСБУ» Новая учётная система, внедрённая специалистами ООО «Синтегро консалтинг», стала базой для автоматизации управления денежными потоками, бюджетирования и формирования бухгалтерской отчётности в формате XBRL. Проект стартовал в ноябре ...

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

Active Restore: может ли аварийное восстановление происходить быстрее? Намного быстрее? Резервное копирование важных данных – это хорошо. Но что если работу нужно продолжить сразу, и на счету каждая минута? Мы в Acronis решили проверить, насколько возможно решить задачу максимально быстрого запуска системы. И это первый пост из серии Active Restore, в котором я...

DevOps LEGO: как мы пайплайн на кубики раскладывали Поставили мы как-то заказчику на один объект систему электронного документооборота. А потом на другой объект. И еще на один. И на четвертый, и на пятый. Увлеклись настолько, что дошли до 10 распределенных объектов. Мощно получилось… особенно когда мы дошли до поставки измене...

Спутниковая система «Эфир» исключена из проекта «Цифровая экономика» «Эфир» мог бы стать конкурентом в сфере реализации широкополосного соединения таким системам как OneWeb и SpaseX, однако из-за недостатка инвестиций, этого не произойдёт. Предложение вывели из нацпроекта «Цифровая экономика» и планируют реализовать идею в качестве одной из ч...

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

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

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

[Из песочницы] Cookie-баннеры: как быстро проверить соблюдение GDPR Недавно был опубликован обзор опенсорсной утилиты, которая помогает проверить cookies сайта на соответствие GDPR. Прочитав и в который раз озадачившись необходимостью установки на своих проектах cookie-баннера для европейских посетителей, взялся изучить вопрос cookies и GDP...

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

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

Даёшь букридер в каждый карман! Обзор свежих новинок от ONYX BOOX Привет, Хабр! В арсенале компании ONYX BOOX есть большое количество электронных книг под любые задачи — здорово, когда есть выбор, но если он очень большой, то легко запутаться. Чтобы этого не происходило, мы старались делать максимально подробные обзоры у нас в блоге, из ...

Apple продлила часть шоу из Apple TV+ на второй сезон Контента в Apple TV+ станет больше Сервис Apple TV+ был запущен всего неделю назад, но Apple уже объявила о продлении некоторых телешоу, первые сезоны которых доступны в сервисе. Если обычно создатели сериалов ждут, когда сезон закончится, или делают объявление о продлении п...

Сертификация ISTQB: преимущества и особенности Успех IT-проекта во многом зависит от того, насколько грамотно организована система тестирования и обеспечения качества (Quality Assurance, QA) на всех этапах его жизненного цикла. Для специалиста по QA один из самых надежных способов подтвердить свои профессиональные каче...

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

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

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

Основы компьютерных сетей. Тема №9. Маршрутизация: статическая и динамическая на примере RIP, OSPF и EIGRP Всем привет! Спустя продолжительное время возвращаемся к циклу статей. Долгое время мы разбирали мир коммутации и узнали о нем много интересного. Теперь пришло время подняться чуть повыше и взглянуть на сторону маршрутизации. В данной статье поговорим о том, зачем нужна ма...

Apple выпустила macOS 10.15 beta 5 В последнее время Apple начала выпускать новые бета-версии своих операционных систем с небольшим «разбросом» в днях. Так, пятые тестовые сборки iOS 13, iPadOS и tvOS 13 стали доступны пользователям в начале недели, а сегодня ночью купертиновцы выпустила macOS 10.15 beta 5. К...

[Перевод] Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие В некоторых сферах программирования нормально хотеть написать такую структуру данных или алгоритм, которые могут работать с элементами разных типов. Например, список дженериков или алгоритм сортировки, которому нужна только функция сравнения. В разных языках предложены всев...

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