Социальные сети Рунета
Пятница, 29 марта 2024

[Перевод] Создание калькулятора чаевых на Kotlin: как это работает? Рассказываем, как создать простое приложение для расчета чаевых на языке Kotlin. Если точнее, то Kotlin 1.3.21, Android 4, Android Studio 3. Статья будет интересной, в первую очередь, для тех, кто начинает свой путь в разработке Android-приложений. Она позволяет понять, ч...

[Из песочницы] Введение в MS Dynamics CRM Привет Хабр! В этой статье хотелось бы рассказать о некоторых стандартных возможностях Dynamics CRM (для понимания что это вообще такое), её основных бизнес процессах и средствах расширения функционала прямо из коробки. Читать дальше →

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

[Из песочницы] Невидимый деплой монолитного приложения в продакшн на AWS. Личный опыт Я – Lead DevOps Engineer в международной SaaS-компании. Мы разрабатываем платформу для совместной работы кроссфункциональных команд. В статье поделюсь тем, как наша DevOps-команда решила проблему ежедневных серверных релизов монолитного stateful-приложения и сделала их автом...

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

JMeter — швейцарский нож тестировщика (Часть 2) Сегодня расскажу, как мы с помощью JMeter’а наладили процесс кэширования продуктовых страниц, проверили работу мобильного приложения без самого приложения и создали 2000 юзеров в системе без доступа к базе данных. Кто не в курсе, что здесь происходит, читайте первую часть ...

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

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

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

[Перевод] Разработка приложения на SwiftUI. Часть 1: поток данных и Redux После участия в сессии State of the Union на WWDC 2019 я решил детально изучить SwiftUI. Я потратил много времени на работу с ним и теперь приступил к разработке реального приложения, которое может оказаться полезным широкому кругу пользователей. Его я назвал MovieSwift...

Коротко о работе с RabbitMQ из Python Так повелось, что в процессе работы в МегаФоне, приходится сталкиваться с однотипными задачами при работе с RabbitMQ. Закономерно возникает вопрос: «Как упростить и автоматизировать выполнение таких задач?» Первое решение, которое приходит в голову, использовать интерфейс ...

Доменные имена с валидным SSL для локальных Docker-контейнеров Использование Docker в процессе разработки стало уже стандартом де-факто. Запускать приложение со всеми его зависимостями, используя всего одну команду — становится всё более и более привычным действием. Если приложение предоставляет доступ используя web-интерфейс или какое...

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

[Из песочницы] Подводные камни разработки Google Play Instant Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь Android-разработкой в PROFI.RU. Недавно я написал приложение с мгновенным запуском для наших клиентов. Если вы ещё не знакомы с технологией, приглашаю вас сначала посетить Android Developers. С презентации Instant Apps (G...

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

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

[Из песочницы] Настройка NextCloud + ONLYOFFICE на одном сервере с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Setting up NextCloud and ONLYOFFICE on a single server with Docker». Сложно недооценивать пользу онлайновых пакетов офисных приложений наподобие Google Docs и облачных хранилищ в жизни технически ориентированных люде...

Как я делал desktop-приложение на Flutter (+ bonus) Недавно попалась на глаза новость, что вышел очередной релиз Flutter (1.9), который обещает разные вкусности и, в том числе, раннюю поддержку веб-приложений. На работе я занимаюсь разработкой мобильных приложений на React Native, но с любопытством поглядываю на Flutter. Для...

Публикация приложения в Microsoft Store: некоторые изменения за год Вот уже год прошел с момента выхода статьи об особенностях публикации в MS Store. За прошедший год произошло много событий – GDPR, выход VS 2019 и прочие изменения. В сегодняшней небольшой статье мне бы хотелось немного рассказать о том, какие изменения произошли в особенно...

Транспилятор PAS2JS из Паскаля в JavaScript: несовместимости с Delphi и пути обхода В наше время в кармане обычного человека лежит мощный персональный компьютер, о котором 10-20 лет назад можно было только мечтать. И если у вас километры отлаженного Windows-кода и отлично работающие приложения и утилиты, написанные на Delphi, вы наверняка хотели бы задейств...

Разработка гибридных PHP/Go приложений с использованием RoadRunner Классическое PHP-приложение — однопоточность, тяжелая загрузка (если вы конечно не пишите на микрофреймворках) и неизбежная смерть процесса после каждого запроса… Такое приложение тяжелое и медленное, но мы можем дать ему вторую жизнь гибридизацией. Чтобы ускорить — демонизи...

[Перевод] Реализуем UI в iOS: улучшаем, ускоряем, масштабируем Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. При создании мобильных приложений большая часть времени уходит на разработку UI, и оптимизация этого процесса всегда является актуальной темой в среде разработчиков. Мой коллега А...

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

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

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

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

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

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

Не очередной язык программирования. Часть 3: Физика Третья и заключительная часть серии статей о языке lsFusion (ссылки на первую и вторую части) В ней речь пойдет о физической модели: всем том, что не связано с функционалом системы, а связано с ее разработкой и оптимизацией производительности, когда данных становится слиш...

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

Как изменения в Google Play повлияют на ASO В середине марта прошла конференция Game Developers Conference (GDC 2019), на которой Google представила обновления своего Google Play Store. Обновление нацелено на совершенствование процесса разработки приложений и игр под Android и поддержку общего роста рынка мобильных иг...

Эволюция кластерного взаимодействия. Как мы внедряли ActiveMQ и Hazelcast В течение последних 7 лет я вместе с командой занимаюсь поддержкой и развитием ядра продукта RealtimeBoard: клиент-серверным и кластерным взаимодействием, работой с базой данных. У нас Java с разными библиотеками на борту. Запускается всё вне контейнера, через Maven-плагин....

Инструменты информирования или как мы рассказываем о своих сервисах и процессах Хабр, привет! Все, кто работал хотя бы в одной крупной территориально распределенной компании с сетью филиалов по всей стране, сталкивался с проблемой: «Как проинформировать заинтересованные лица об услугах и сервисах, которые вы предоставляете в рамках своего подразделения...

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

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

Askozia. Как работает Autoprovisioning Plug & Play При разработке АТС Askozia мы столкнулись с задачей по автоматической настройке телефонов и решили ее по-своему. Autoprovisioning Plug & Play (PnP), эту технологию поддерживают многие производители — Yealink, Snom, Fanvil. Основные достоинства автоматической настройки ...

Разработка Kubernetes оператора с Operator Framework Как уже говорилось в статье Радар технологий, Lamoda активно двигается в направлении микросервисной архитектуры. Большинство наших сервисов упаковываются с помощью Helm и деплоятся в Kubernetes. Данный подход полностью удовлетворяет наши потребности в 99% случаев. Остается ...

[Из песочницы] Мифы про удалённых сотрудников, которые мы разрушили сами Привет, Хабр. Я редактор в компании Ratio, мы делаем веб-разработку на заказ и с начала 2018 года все наши сотрудники работают удалённо. От Таллина до Комсомольска-на-Амуре, семь часовых поясов. Наши разработчики всегда трудились из дома, но также был офис в Москве, в кот...

Преимущества следования styleguide’ам при разработке Angular-приложений В конце 2018-го года в Самаре состоялся Panda-Meetup #9 Frontend. На этом мероприятии я попробовал себя в новой роли и выступил с докладом. Меня зовут Евгений Холмов. В программирование я пришёл более 10 лет назад, будучи студентом. Последние 5 лет я занимаюсь разработкой си...

[Перевод] Разработка приложения для потокового вещания с помощью Node.js и React Автор материала, перевод которого мы сегодня публикуем, говорит, что работает над приложением, которое позволяет организовывать потоковое вещание (стриминг) того, что происходит на рабочем столе пользователя. Приложение принимает от стримера поток в формате RTMP и преобра...

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

[Перевод] Эффективное и надежное управление кластерами в любом масштабе с Tupperware Сегодня на конференции Systems @Scale мы представили Tupperware — нашу систему управления кластерами, которая оркестрирует контейнеры на миллионах серверов, где работают почти все наши сервисы. Впервые мы развернули Tupperware в 2011 г., и с тех пор наша инфраструктура разр...

Android-приложение в памяти. Доклад об оптимизации для Яндекс.Лончера В облегченной системе Android Go действуют повышенные требования к предустановленным приложениям — размеру и используемой памяти. Перед нами встала задача в эти требования уложиться. Мы провели ряд оптимизаций и решили серьезно поменять архитектуру нашей графической оболочки...

Принципы документирования и локализации, или как получить хорошую локализацию минимальными затратами Всем привет! Меня зовут Денисов Александр. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC). В этой статье расскажу о тех проблемах, с которыми мы сталкивались при локализации NCC на английский и нем...

[Из песочницы] Путь от хирургии к геймдеву или первый опыт мобильной разработки на Unity Зачем, кому и от кого Всем привет! Меня зовут Анатолий. Я хочу рассказать историю о наших первых шагах в геймдеве, чтобы поделиться пусть и небольшим, но всё же опытом. Зачем? Потому что всего 6 месяцев назад сам искал подобные публикации, перечитывал и выписывал советы. Над...

Автоматизируем тестирование redux селекторов в приложении В этой статье я хотел бы поделиться своими идеями того, как можно автоматизировать написание unit-тестов в react/redux приложениях. Идеи эти родились в одной из дискуссий с коллегами, в процессе написания тестов, и, как мне кажется, предложенное решение имеет право на жизнь....

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

Лучшее из опыта создания чистых и быстрых Angular приложений На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular &...

[Перевод] RxVMS — практичная архитектура для Flutter-приложений Это первый пост из серии публикаций, в которых объясняется мое понимание архитектуры приложений для Flutter. Предупреждаю — это будет весьма самоуверенным. Пока запланированы: Введение (этот пост) Основы Dart Streams RxDart: магические трансформации потоков Основы RxVMS: Rx...

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

Архитектура и возможности Tarantool Data Grid В 2017 году мы выиграли конкурс на разработку транзакционного ядра инвестиционного бизнеса Альфа-Банка и приступили к работе (на HighLoad++ 2018 с докладом о ядре инвестиционного бизнеса выступал Владимир Дрынкин, руководитель направления транзакционного ядра инвестиционно...

Рецепты TeamCity. Доклад Яндекс.Такси Меня зовут Эдуард Мацуков, я делаю Таксометр — приложение для водителей Яндекс.Такси. Занимаюсь инфраструктурой и всем, что с ней связано. Какое-то время назад я выступил с докладом — рассказал об опыте дружбы TeamCity с нашим проектом и с разработчиками в целом. Отдельная ч...

[Перевод] Руководство по React Native для начинающих Android-разработчиков (с примером приложения) Представляем вам перевод статьи Nikhil Sachdeva, опубликованной на hackernoon.com. Автор делится опытом разработки мобильных приложений с помощью React Native и предлагает создать свое приложение, используя этот фреймворк. Я был Android-разработчиком и довольно длительное...

Дискретная математика для WMS: алгоритм сжатия товаров в ячейках (часть 2) В статье мы расскажем, как разрабатывали алгоритм оптимального сжатия остатков товаров в ячейках. Расскажем как выбирали нужную метаэвристику среду «зоопарка» фреймворков: табу-поиск, генетический алгоритм, муравьиная колония и др. Проведем вычислительный эксперимент по ...

[Из песочницы] Пишем «Hello, world!» приложение для web на Haskell (Spock) Мне стало скучно писать на Python, захотелось чего-нибудь необычного. Решил попробовать Haskell. Языка я не знаю, однако просто писать консольные учебные программы, типа вычисления факториала, не хотелось. После изучения довольно большого числа постов про Haskell и его приме...

Логи не нужны? Разработка сильно изменилась за последние годы. Вместо монолитных приложений пришли микросервисы и функции. Базы данных из универсальных промышленных монстров переродились в узконаправленные. Docker изменил взгляд на деплой. Но изменилось ли наше представление о логах? Одна...

Microsoft Azure Developer Camp Россия 23 мая | 9:30 – 19:00 Офис Microsoft, БП Крылатские Холмы, ул. Крылатская 17к1, Переговорные комнаты Уран, Юпитер, Сатурн Москва, Россия Распространение облачных технологий постепенно изменяет методы разработки приложений, и перед программистами возникают новые сложные зад...

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

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

PG12: Дюжина патчей от Postgres Professional Приятно видеть знакомые фамилии в списке Acknowledgments официального релиза PostgreSQL 12. Мы решили свести вместе попавшие в релиз новшества и некоторые багфиксы, над которыми трудились наши разработчики. 1. Поддержка JSONPath (В Release Notes это звучит как Add support f...

Как живет Альфа-Банк в период изменений и что нам удалось сделать при объединении IT-разработки и Альфа-Лаборатории Привет! Меня зовут Даша Русланова, я директор Департамента цифровых решений в Альфа-Банке. Сегодня я расскажу вам, как мы живем во время довольно значимых изменений, каких результатов в процессе этого переформатирования смогли достигнуть за год в плане скорости, и зачем нам...

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

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

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

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

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

[Из песочницы] Make it True — Разработка логической игры на Unity Хочу поделиться процессом разработки простой мобильной игры силами двух разработчиков и художника. Данная статья в большей мере состоит описания технической реализации. Осторожно, много текста! Статья не являются руководством или уроком, хотя надеюсь что читатели смогут в...

Почему соревноваться лучше, чем зубрить: наш опыт геймификации обучения Сегодня я хотел рассказать о том, что мы завершили одиночные тренировки в приложении English Wоrd Mania (мобильное приложение для расширения английского лексического запаса), как одну из доработок, высказанных комьюнити хабра. Однако тестирование новой функции затянулось, по...

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

[Перевод] Вся правда об ОСРВ. Статья #32. Миграция Nucleus SE: Нереализованные функции и совместимость Основным требованием при разработке Nucleus SE была высокая степень совместимости с главным ОСРВ-продуктом Mentor – Nucleus RTOS. Nucleus SE поддерживает определенную часть функционала Nucleus RTOS, о чем много раз говорилось в предыдущих статьях, однако в этой статье я пост...

[Перевод] Современное окружение для React Native приложений В этой статье мы рассмотрим настройку React Native окружения с использованием expo-cli, Typescript, и Jest. Typescript поможет нам избежать ошибок при разработке и написать более эффективное мобильное приложение. Современные разработки позволяют интегрировать Typescript в ...

Расширен список устройств, поддерживающих трансляцию экрана смартфона через Your Phone Некоторое время назад приложение «Ваш телефон» (Your Phone) обзавелось новой функцией, позволяющей транслировать экран с Android-смартфона на ПК с Windows 10 и взаимодействовать с приложениями на смартфоне при помощи клавиатуры и мыши. Однако на первом этапе функция работал...

[Из песочницы] Антипаттерны в React или вредные советы новичкам Привет, Хабр. Ровно год прошел с момента, как я начал изучать React. За это время я успел выпустить несколько небольших мобильных приложений, написанных на React Native, и поучаствовать в разработке web-приложения с использованием ReactJS. Подводя итог и оглядываясь назад н...

Netramesh – легковесное service mesh решение В процессе перехода от монолитного приложения к микросервисной архитектуре мы сталкиваемся с новыми проблемами. В монолитном приложении обычно достаточно просто определить, в какой части системы произошла ошибка. Скорее всего, проблема в коде самого монолита, либо в базе дан...

От веба до приложения за один DeepLink Android-приложения являются отражением сайта или сервиса и зачастую представляют собой сходный функционал в удобной оболочке. Из-за этого становится насущным вопрос навигации между страничкой в вебе и установленным клиентом. Для решения этой проблемы были изобретены диплин...

Что в Smart TV тебе моем? Или что можно запихнуть в телевизор? Вместо предисловия Добрый день, коллеги! Меня зовут Алексей и я занимаюсь телевизорами, а именно, разработкой Smart TV приложений («давайте похлопаем Алексею»). Но что такое Smart TV? Какое оно, сферическое Smart TV приложение в вакууме? Не буду томить вас ожиданием: в осн...

[Перевод] Улучшенный sandboxing для Groovy скриптов От переводчика: При разработке CUBA Platform мы заложили в этот фреймворк возможность исполнения пользовательских скриптов для более гибкой настройки бизнес-логики приложений. О том, хороша или плоха эта возможность (и мы говорим не только о CUBA), ведутся долгие споры, но ...

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

Microsoft прекратит поддержку книг ePub в Edge Сначала они закрыли книжный магазин, потом они пришли за книгами. В апреле 2019 года Microsoft прекратила продавать книги через Microsoft Store, а несколько дней назад Microsoft разместила на странице поддержки пост, на которой говорится, что Edge больше не будет поддерживат...

Персонализация товарных рекомендаций на больших данных с помощью Vowpal Wabbit Привет! Меня зовут Никита Учителев. Я представляю отдел Research & Development компании Lamoda. Нас 20+ человек, и мы работаем над различными рекомендациями на сайте и в приложениях, разрабатываем поиск, определяем сортировку товаров в каталогах, обеспечиваем возможность...

[Из песочницы] Разработка приложений на Elixir/Phoenix с помощью Docker Под катом небольшое и простое руководство, в котором показано, как использовать Docker Compose для настройки и запуска приложения Elixir/Phoenix + PostgreSQL. Читать дальше →

Смотрю и слушаю где хочу. Интегрируем Chromecast в Android-приложение На улице я часто слушаю аудиокниги и подкасты со смартфона. Когда прихожу домой, мне хочется продолжить слушать их на Android TV или Google Home. Но далеко не все приложения поддерживают Chromecast. А было бы удобно. По статистике Google за последние 3 года, количество дева...

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

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

In-App Updates: ускоряем процесс обновления приложения на Android Среди многообразия инструментов, анонсированных на Android Dev Summit, особое внимание хочется уделить механизму обновления приложения In-App Updates (IAUs), который помогает разработчикам ускорить добавление новых фич, баг-фиксов и улучшений производительности. Поскольку ...

Рекламируя свои новые умные часы, компания Samsung умолчала об одной важной особенности Во время анонса умных часов Galaxy Watch Active 2 компания Samsung делала отдельный акцент на трёх новых приложениях: YouTube, Twitter и Google Translate. Сложно сказать, зачем нужен YouTube на умных часах, но приложение есть и кому-то оно может пригодиться. Интересно ...

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

Виртуальную реальность адаптировали для слабовидящих людей С помощью SeeingVR можно, к примеру, добавлять описание объектов, а также выделять направляющие контуры и менять цвет предметов. При этом девять инструментов могут работать с любыми типами шлемов виртуальной реальности, а другие пять необходимо интегрировать в VR-приложение ...

Блокчейн уходит от трейдинга В 2018 году рынок децентрализованных приложений (DApps) вырос почти втрое, сообщает "КоммерсантЪ" со ссылкой на данные годовой статистики портала State of the DApps. Если в конце 2017 года в реестре State of the DApps было 829 таких приложений, то к концу 2018-го -...

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

Качество — ответственность команды. Наш QA опыт Я работаю QA-инженером в Miro. Расскажу о нашем эксперименте по передаче разработчикам части задач по тестированию и трансформации роли тестера в роль QA (Quality assurance). Сначала коротко о нашем процессе разработки. У нас ежедневные клиентские релизы и от 3 до 5 серверн...

Модульная разработка или путь туда, а не обратно Как мы пришли к новому подходу работы с модулями в iOS приложении RaiffeisenBank. Проблема В приложениях Райффайзенбанка каждый экран состоит из нескольких, максимально независимых друг от друга модулей. «Модулем» мы называем визуальный компонент, имеющий своё представлени...

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

[Из песочницы] Как мы выбирали себе ServiceDesk. Часть 1 Введение Начитавшись разных статей на тему автоматизации сервисной компании, мы приняли решение, что нам тоже пора обзавестись волшебной кнопкой, которая «вжик» и увеличит эффективность всех текущих процессов сервисного обслуживания наших клиентов. Стоит сразу отметить, чт...

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

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

[Из песочницы] Jenkins для Android сборки, с помощью Docker Всем привет! Я работаю андроид разработчиком, и не так давно мы столкнулись с некоторыми рутинными задачами на своем проекте, которые хотелось бы автоматизировать. Например у нас 5 разных flavor, для каждого из которых требуется загружать свой билд на fabric, иногда для раз...

Работаем с USB Custom HID на Android В современных Android — приложениях для взаимодействия с другими устройствами чаще всего используются беспроводные протоколы передачи данных, как например Bluetooth. В годы, когда часть устройств имеют беспроводную зарядку, сложно представить себе связку Android устройства ...

Как мы внедряли навигацию из Jetpack в боевое приложение. Доклад Яндекс.Еды В мобильных приложениях всё чаще используются deep links. Это ссылки, которые позволяют не просто перейти в приложение извне, а попасть на конкретный экран. Android-разработчик из Яндекс.Еды Владислав Кожушко объяснил, почему мы для реализации deep links внедрили навигацию и...

IBM System i (aka AS/400) — Как мы делали автотесты приложений зеленого экрана Привет! Меня зовут Антон Воробьев, я отвечаю в Альфа-Банке за разработку приложений для централизованной банковской системы. В этом посте я расскажу вам о том, что такое приложения зеленого экрана, зачем они нужны и как мы делали для них автотесты, написав для этого собстве...

Расширяемый Postgres На прошедшем PGConf.Russia был доклад про расширение MobilityDB, а Андрей Бородин предложил идею расширять методы индексов под задачу. Продолжу тему с расширением Postgres под решаемую задачу на примере расширения сделанного в рамках HighLoad Cup 2018, код доступен на GithH...

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

Автоматизация тестирования платных сервисов на iOS Для тех, кто интересуется темой автоматизации на iOS, у меня две новости — хорошая и плохая. Хорошая: в iOS-приложении для платных сервисов используется только одна точка интеграции — in-app purchases (встроенные в приложение покупки). Плохая: Apple не предоставляет никаких ...

[Из песочницы] Как хакеры используют Microsoft Excel против самого себя Привет, Хабр! представляю вашему вниманию перевод статьи «How Hackers Turn Microsoft Excel's Own Features Against It» автора Лили Хэй Ньюман. Elena Lacey, getty images Наверняка для многих из нас Microsoft Excel – программа скучная. Она много чего умеет, но всё-таки это н...

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

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

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

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

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

Практика использования библиотеки lottie в мобильном приложении банка Привет, Хабр! В свое время Product Owner попросил подумать нас о создании эффективного процесса по внедрению анимации в наше приложение на android/ios. В то время мы делали задачу по предзаполнению заявки личными данными на кредитный продукт, и на ответ от сервера требовало...

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

[Из песочницы] Работаем с коботом Dobot M1 Год назад на Хабре выходил обзор настольного робота Dobot Magician. В этой статье я предлагаю оценить его старшего брата Dobot M1 в действии. Также я попытаюсь объяснить, почему для своего проекта выбрал именно данную модель, опишу процесс разработки демки в Qt/c++, а также ...

Инфраструктура как код, выигрываем на масштабе (Кирилл Ветчинкин, TYME) Модель «Инфраструктура как код (IaC)», которую иногда называют «программируемой инфраструктурой», — это модель, по которой процесс настройки инфраструктуры аналогичен процессу программирования ПО. По сути, она положила начало устранению границ между написанием приложений и с...

Деливерим фичи быстрее. Опыт Android-разработки в Badoo Всем привет! Меня зовут Анатолий Варивончик. Я работаю в Badoo уже больше года, а мой общий стаж Android-разработки — более пяти лет. В своей практике я и мои коллеги часто сталкиваемся с необходимостью тестировать идеи максимально быстро и просто. Мы не хотим тратить много...

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

[Перевод] Как Shopify организовала совместную работу более 1000 разработчиков Сложно организовать совместную работу большой команды, тем более над общей кодовой базой, такой как Shopify. Наш монолит меняется по 40 раз на дню. Мы отслеживаем разработку в trunk-based рабочем процессе и ежедневно вливаем в мастер по 400 коммитов. У нас три правила безо...

Meeting Room L̶i̶t̶t̶l̶e̶ Helper v 2 Данная статья подробно описывает этапы разработки мобильного приложения Meeting Room Helper: от зарождения идеи до релиза. Приложение написано на Kotlin и построено по упрощённой MVVM архитектуре, без использования data binding. Обновление UI-части происходит с помощью LiveD...

Visiology выпустило новое мобильное приложение с искусственным интеллектом В рамках нового релиза Аналитической платформы компания Visiology выпустилаодно из первых в России мобильных приложений с полноценным функционалом BIи искусственным интеллектом — голосовым ассистентом ViTalk.

[Из песочницы] Три относительно честных способа создания Flutter проекта Итак, с презентацией Google первой стабильной версии Flutter, которая случилась 4 декабря 2018 г. начался процесс изменения ландшафта на полях мобильного программирования. Появился новый игрок, способный изменить правила самой игры. Теперь из одной базы кода можно создават...

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

[Перевод] Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации Представляем вам перевод статьи Sm0ke, опубликованной на сайте dev.to. Автор рассказывает о своем опыте генерации веб-приложений и способе автоматизации процесса их создания. Привет, кодеры! Я — разработчик-фрилансер, и я сгенерировал более 100 приложений на различных язык...

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

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

[Перевод] .NET Core 3 для Windows Desktop В сентябре мы выпустили поддержку .NET Core для создания настольных приложений Windows, включая WPF и Windows Forms. С тех пор мы были рады видеть, что многие разработчики делятся своими историями о переносе настольных приложений в .NET Core. Мы постоянно слышим от .NET-разр...

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

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

[Из песочницы] Руководство по организации архитектуры Android приложения Привет, Хабр! Представляю вашему вниманию вольный перевод «Руководство по архитектуре приложения (Guide to app architecture)» из JetPack. Все замечания по переводу прошу оставлять в комментариях, и они будут исправлены. Так же для всех будут полезны комментарии от тех кто ис...

2. Анализ логов Check Point: SmartEvent Здравствуйте, коллеги. В прошлый раз, в статье «1. Анализ логов Check Point: официальное приложение Check Point для Splunk» мы обсуждали разбор логов шлюза безопасности на основе официального приложения в системе логирования Splunk. В заключении пришли к выводу что хоть пр...

Веб-приложения, наконец, стали более родными в Windows 10 Microsoft делает большие ставки на Progressive Web Apps (PWA), которые представляют собой веб-приложения на стероидах, разработанные так, чтобы они выглядели и работали как собственные приложения на Windows 10 и других платформах, включая Android.Прогрессивные веб-приложения...

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

Видео дня: как 8 ГБ оперативной памяти помогли смартфону Samsung Galaxy S10+ обойти по производительности iPhone XS Max Блогер PhoneBuff, который автоматизировал процесс сравнения быстродействия смартфонов, решил сопоставить возможности актуальных флагманов Apple и Samsung. Если точнее, моделей Galaxy S10+ и iPhone XS Max. Смартфоны очень разные как по аппаратной, так и по программной ч...

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

[Из песочницы] Пишем первый микросервис на Node.js с общением через RabbitMQ Со временем, каждый проект растет и реализовывать новый функционал в существующий монолит становится все сложнее, дольше и дороже для бизнеса. Один из вариантов решения данной проблемы — использование микросервисной архитектуры. Для новичков или для тех, кто впервые сталкива...

Angulareact У меня есть проблема. Приложение написано на Angular, а библиотека компонентов на React. Делать клон библиотеки слишком дорого. Значит, нужно использовать React-компоненты в Angular-приложении с минимальными затратами. Разбираемся как это делать. Читать дальше →

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

PHP-библиотеки для e-commerce: работа с АТОЛ и Payture, парсинг кодов GS1 и другие задачи Привет, меня зовут Павел Савельев, я руководитель отдела автоматизации бизнес-процессов в Lamoda. Мы работаем с очень разными задачами, и стараемся подобрать для каждой наиболее удобный инструментарий. Соответственно, мы используем разные языки — в наших системах можно встре...

40% стартапов, специализирующихся на ИИ, на самом деле не используют его К таким выводам пришла британская инвестиционная фирма MMC Ventures, проанализировав информацию, находящуюся в публичном доступе, проведя интервью с руководителями и др. Данные опубликованы в докладе, посвященном распространению технологий искусственного интеллекта и его при...

Разгоняем Magento Rest API c помощью RoadRunner PHP создан умирать. И все было бы хорошо, но в последнее время это сделать ему не дают. Год назад на хабре состоялся анонс инструмента RoadRunner, заставляющего PHP процесс выйти из бесконечного круга гибели и воскрешения. Принцип работы RoadRunner заключается в удержании з...

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

Львиная доля приложений и расширений для браузера Chrome не имеет политики конфиденциальности Исследование Duo Security показало, что огромная часть приложений и расширений для браузера Chrome имеют проблемы с безопасностью.  Источник проанализировал более 120 000 приложений и расширений в онлайн-магазине Google из 180 000 имеющихся и пришёл к выв...

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

Небольшая история о том, как удобство иногда стреляет в колено Артем Азарьев, руководитель направления центра компетенций дистанционных каналов обслуживания дирекции информационных технологий МКБ Привет, Хабр! Меня зовут Артем Азарьев, я тимлид Android-команды Московского кредитного банка, и сегодня хочу поговорить о безопасности при...

Как мы делали свой движок Workflow Мы в компании DIRECTUM занимаемся разработкой ECM-системы DirectumRX. Основным элементом модуля Workflow для ECM-системы является движок. Он отвечает за изменение состояния экземпляра процесса (инстанса) по ходу жизненного цикла. Перед тем, как начать разрабатывать модуль Wo...

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

Кастомизация резолвинга зависимостей в Spring Привет! Меня зовут Андрей Неведомский и я главный инженер в СберТехе. Я работаю в команде, которая занимается разработкой одного из системных сервисов ЕФС (Единой Фронтальной Системы). В своей работе мы активно используем Spring Framework, в частности его DI, и время от врем...

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

[Перевод] Подготовка приложения к Android Q. Часть 1 Перевод статьи подготовлен специально для студентов курса «Android-разработчик. Базовый курс». Также напоминаем о том, что мы продолжаем набор на расширенный курс «Специализация Android-разработчик» Мы находимся на 10-м году разработки Android (Android Q должен быть верс...

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

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

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

В автомобилях Tesla появится аналог Google Play с играми и приложениями Компания Tesla уже давно заинтересована в том, чтобы создать аналог Google Play и App Store для своих автомобилей. В этом нет ничего удивительного, потому что игры и приложения напрашиваются в электрокары Tesla сами по себе — автомобили оснащены огромными дисплеями, имеют д...

Google Drive как хранилище для веб-приложения Предисловие Мое веб-приложение хранит данные в localStorage. Это было удобно, пока не захотелось, чтобы пользователь, заходя на сайт с разных устройств, видел одно и то же. То есть, понадобилось удаленное хранилище. Но приложение «хостится» на GitHub Pages и не имеет сервер...

Airtest IDE — новый путь в автоматизации тестирования мобильных игр? Сегодня я хочу вам рассказать о достаточно новом open-source инструменте для автоматизированного тестирования под названием Airtest. В дальнейшем я сделаю ещё несколько статей с подробным рассказом об отдельных элементах данного инструментария и как с ними работать, а сейчас...

Российские власти подали в суд на Apple Началось дело с того, что “Лаборатория Касперского” заявила в Федеральную Антимонопольную Службу о о необоснованном отклонении в публикации новой версии приложения Kaspersky Safe Kids. По словам компании, в то же самое время Apple презентовала iOS 12, в котором появилась соб...

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

Учимся писать Waves смарт-контракты на RIDE и RIDE4DAPPS. Часть 1 (Многопользовательский кошелек) Всем привет! Совсем недавно Waves Labs анонсировал конкурс для разработчиков приуроченный к релизу в тестовую сеть расширения языка смарт-контрактов RIDE для децентрализованных приложений Ride4Dapps! Мы выбрали кейс DAO, так как Ventuary планирует заниматься разработкой dAp...

Как объединить несколько файлов PDF на Mac Automator можно по праву назвать одним из самых недооцененных приложений на macOS. Увы, но многие пользователи не догадываются о скрытых возможностях данной утилиты. Тем не менее потенциал заложенный в программу действительно огромен. Сегодня мы расскажем об скрипте, которы...

[Перевод] Анонсировано расширение Azure IoT Edge Tools (Preview) Мы рады объявить о доступности preview-версии нового расширения для Visual Studio 2019 — Azure IoT Edge Tools. Расширение предоставляет богатый набор функций для поддержки разработки решений IoT Edge с использованием Visual Studio 2019: Читать дальше →

Понимаем UICollectionViewLayout на примере Photos App Здравствуй, Хабр! Меня зовут Никита, я работаю над мобильными SDK в компании ABBYY и в том числе занимаюсь UI-компонентом для сканирования и удобного просмотра многостраничных документов на смартфоне. Этот компонент сокращает время на разработку приложений на базе технологии...

IBM MQ и JMeter: Первый контакт Привет, Хабр! Это приквел моей предыдущей публикации и в то же время ремейк статьи Автоматизированное тестирование сервисов, использующих протокол MQ с помощью JMeter. На этот раз расскажу о своем опыте примирения JMeter и IBM MQ для счастливого тестирования приложений на ...

Что в черном ящике. Обзор методов тестирования биллинга Проверка платных сервисов — один из ключевых инженерных вопросов в тестировании Badoo. Наше приложение интегрировано с 70 платёжными провайдерами в 250 странах мира, и баг хотя бы в одном из них может привести к непредсказуемым последствиям.  В этой статье я расскажу о мето...

[Перевод] Sketch + Node.js: генерируем иконки для множества платформ и брендов Нет ничего проще, чем добавить иконку в проект: нужно всего лишь написать дизайнеру, он экспортирует её из Sketch и пришлет вам нужный вариант, а вы используете ее у себя в коде. Если же у вас с десяток проектов, несколько платформ и множество А/Б-тестов на дизайн, то дост...

Типичные ошибки при работе с PostgreSQL. Часть 2 Мы продолжаем публиковать видео и расшифровки лучших докладов с конференции PGConf.Russia 2019. В первой части доклада Ивана Фролкова речь шла о непоследовательном именовании, о constraints, о том, где лучше сосредоточить логику — в базе или в приложении. В этой части вас жд...

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

VShard — горизонтальное масштабирование в Tarantool Меня зовут Владислав, я участвую в разработке Tarantool — СУБД и сервера приложений в одном флаконе. И сегодня расскажу вам, как мы реализовали горизонтальное масштабирование в Tarantool при помощи модуля VShard. Читать дальше →

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

Windows 10 Build 18317 доступна для загрузки Microsoft решила нас на этой неделе порадовать и выпустила очередную инсайдерскую сборку Windows 10 под номером 18317. Так как сейчас уже идет завершающий этап разработки обновления Windows 10 19H1, то и изменений кардинальных ждать не стоит, но, тем не менее, незначительные...

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

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

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

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

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

[Перевод] Electron: разработка настольных приложений с использованием HTML, CSS и JavaScript Можно ли, используя HTML, CSS и JavaScript, создавать настольные приложения? Автор статьи, перевод которой мы сегодня публикуем, даёт утвердительный ответ на этот вопрос. Здесь он расскажет о том, как, применяя веб-технологии и пользуясь возможностями фреймворка Electron, со...

[Из песочницы] Бизнес-логика в базе данных при помощи SchemaKeeper Цель данной статьи — на примере библиотеки schema-keeper показать инструменты, которые позволяют существенно облегчить процесс разработки баз данных в рамках PHP-проектов, использующих СУБД PostgreSQL. Информация из этой статьи, в первую очередь, будет полезна разработ...

[Перевод] Понимание разницы между СI и СD: «если что-то вызывает боль, делайте это почаще» Disclaimer. Костис Капелонис — Developer advocate (человек, защищающий и отстаивающий принципы программной разработки) Codefresh, первой платформы CI/CD для Kubernetes и контейнеров. Миссия Codefresh «Автоматизировать и упрости всё, от кода до облака». Как инженер-программис...

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

Интересные материалы: 17.04 Весь день мы собираем лучшие материалы о разработке и маркетинге технологий, стартапов, мобильных приложений и игр для iOS и Android из самых разных источников: Модульная разработка или путь туда, а не обратно AppCode 2019.1: Swift 5, улучшенная работа подсветки, навигации и...

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

Разработка Unix подобной OS — Оболочка. Заключение (9) Пришло время написать первую отдельную программу для нашего ядра — оболочку. Она будет храниться отдельным .elf файлом и запускаться init процессом при старте ядра. Это последняя статья из цикла по разработке своей операционной системы. Читать дальше →

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

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

Chrome OS от Google станет еще удобнее Многие не считают Chrome OS достойным конкурентом Linux, Windows и Mac OS. Да, возможно, пока система не очень популярна и не так развита, но у неё есть все шансы стать полноценным игроком рынка. По крайней мере, Google предпринимает шаги по улучшению ситуации. Об одном так...

Разработка сайта на WebAssembly с помощью NetCore 3 и Blazor Мое мнение, что WebAssembly будущее интернета. Данная технология на текущий момент уже интегрирована в большинство современных браузерах (а точнее в их движках) на ПК и мобильных устройствах. В таких браузерах как Chrome, Edge, Firefox, и WebKit. В данной статье я опишу как ...

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

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

Мой первый опыт восстановления базы данных Postgres после сбоя (invalid page in block 4123007 of relatton base/16490) Хочу поделиться с вами моим первым успешным опытом восстановления полной работоспособности базы данных Postgres. С СУБД Postgres я познакомился пол года назад, до этого опыта администрирования баз данных у меня не было совсем. Я работаю полу-DevOps инженером в крупной IT-к...

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

Скрипты Google Ads теперь поддерживают расширение «Цены» Google добавил поддержку расширений с ценой в скрипты Google Ads. Об этом сообщается в блоге компании для разработчиков. Расширение «Цены», запущенное на всех устройствах в 2017 году, позволяет рекламодателям подробнее рассказать потенциальным клиентам о своём ассортименте и...

Wargaming Platform: Hello World WTF is Platform? В Wargaming есть отдельное подразделение, которое занимается… занимается разработкой некой «платформы» для издания игр. Объяснить, что такое Платформа, чем она является и не является, весьма сложно — но я попробую. Почему появилась статья Привет! Меня зовут ...

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

Google удалила браузер Kiwi из магазина приложений Play В прошлом месяце браузер Kiwi на движке Chromium привлек много внимания за счет поддержки десктопных расширений Chrome. Недавно приложение было удалено из магазина Google Play.

Умеренный Hardening для Firefox Современный веб состоит из множества разных технологий, которые предоставляют самые разные возможности… но ещё и создают немалое количество угроз. Современные браузеры давно стали самыми сложными приложениями на компе, обогнав по сложности даже ядро ОС (в Firefox в нескольк...

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

Xcode 10.2, macOS Mojave 10.14.4, iOS 12.1 и другие бета-версии Вышли новые беты Xcode, macOS Mojave и iOS — и вот основные моменты, которые я усвоил. Swift 5 для Xcode 10.2 beta Swift Прежде всего, последняя бета-версия Xcode идет в комплекте с новой версией Swift: Apple Swift 5.0 (swiftlang-1001.0.45.7 clang-1001.0.37.7) Target: x8...

Как собрать когорты пользователей в виде графиков в Grafana [+docker-образ с примером] Как мы решили задачу визуализации когорт пользователей в сервисе Promopult c помощью Grafana. Promopult — мощный сервис с большим числом пользователей. За 10 лет работы число регистраций в системе перевалило за миллион. Те, кто сталкивался с подобными сервисами, знают, что ...

Patch’ти — не считается: сказ о патч-менеджменте в лицах и красках Наверно, все SOC-аналитики спят и видят, как их детектирующие правила отлавливают модные техники проправительственных APT-группировок, а расследования приводят к обнаружению эксплойтов для zero-day уязвимостей. К сожалению (или к счастью), большая часть инцидентов, с которым...

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

Опыт использования BDD в тестировании CUBA Platform Около семи лет назад Dan North в своей статье описал практическое применение BDD подхода, который позволяет сделать процесс разработки более понятным и управляемым путем налаживания внутренних коммуникаций. Индустрия с каждым днем проявляет всё больший интерес к этой методол...

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

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

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

Ускорение рутинных HR-процессов с помощью RPA и BluePrism В IT-компаниях и банках множество разных процессов. И если разработку софта и создание дизайна еще можно успешно оптимизировать с помощью гибких методологий (если их правильно внедрить и использовать), то некоторые вещи Agile так же быстро ускорить не может. Например, HR-про...

Сколько стоит приложение Сколько стоит приложение? В одной из предыдущих статей мы приводили результаты опроса более 55 компаний – разработчиков мобильных приложений из 15 стран – о стоимости разработки типовых приложений. Вот они: То есть создать усредненное мобильное приложение стоит о...

Автоматизация замены дисков с помощью Ansible Всем привет. Я работаю ведущим системным администратором в ОК и отвечаю за стабильную работу портала. Хочу рассказать о том, как мы выстроили процесс автоматической замены дисков, а затем, как исключили из этого процесса администратора и заменили его ботом. Эта статья явл...

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

[Из песочницы] Как я сходил на встречу в School 21 Привет Не так давно в рекламе узнал я о чудо-школе School 21. Первое впечатление от всего прочитанного сложилось замечательное. Никто тебя не трогает, дают задания, ты спокойно всё делаешь. Тут и работа в коллективе, и интересные знакомства, и 2 практики в крупнейших it комп...

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

tZERO запустит собственное приложение для торговли биткоином Платформа security-токенов tZERO сообщила о планах по запуску мобильного приложения для покупки и продажи биткоина. В перспективе приложение может также начать поддерживать эфир, пишет CoinDesk. Как заявил CEO tZERO Саум Нурсалехи, приложения для устройств на IOS и Android д...

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

7 Chrome-расширений для изучения английского Я увлекаюсь изучением английского языка, а также являюсь активным пользователем Google Chrome. Поэтому решила собрать в одном материале расширения для этого браузера, которые использую или использовала в процессе обучения. Эти сервисы позволяют улучшить навыки письма, во...

Fuchsia OS сможет запускать Android-приложения Пройдёт несколько лет, прежде чем операционная система Fuchsia, которую называют преемницей Android, появится на мобильных устройствах. Тем не менее, Google делает всё возможное, чтобы процесс перехода был бесшовным. По последним данным, Fuchsia получит поддержку Android-при...

3CX v16 Update 1, приложение 3CX для iOS Beta и новая версия 3CX Call Flow Designer Представляем обзор новинок 3CX за последнее время. Будет много интересного — не переключайтесь! 3CX v16 Update 1 Недавно мы выпустили очередное обновление 3CX v16 Update 1. Обновление включает новые возможности чата и обновленный коммуникационный виджет для вашего сайта 3CX...

Установка openmeetings 5.0.0-M1. WEB-конференции без Flash Добрый день, Уважаемые Хабравчане и Гости портала! Не так давно у меня возникла необходимость поднять небольшой сервер для ВКС. Рассматривалось не так много вариантов — BBB и Openmeetings, т.к. только они по функционалу отвечали: Бесплатно Демонстрация рабочего стола, д...

[recovery mode] Расширения Google Chrome для программиста Работа программиста настолько сложна и разнообразна, что в ней просто не обойтись без помощи различных инструментов. Подготовил для вас список полезных расширений для Google Chrome, которые облегчат вашу жизнь и сэкономят время. 1. Code Cola Плагин, который предлагает ши...

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

Что ты такое? Как мы spoof от human отличали — да еще и победили Недавно прошел ID R&D Voice Antispoofing Challenge, главной задачей которого было создать алгоритм, способный отличить человеческий голос (human) от синтезированной записи (spoof). Я — ML Researcher в Dasha AI и много работаю над распознаванием речи, поэтому и решил поуч...

Создаем отдел джунов в помощь основным командам, используя лишь Slack, Jira и синюю изоленту Почти вся команда разработки Skyeng, состоящая из более чем 100 человек, работает удаленно и требования к специалистам всегда были высоки: мы искали синьоров, fullstack-девелоперов и мидлов. Но в начале 2019 года мы впервые наняли трех джуниоров. Сделано это было по нескол...

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

[Перевод] Измените свой образ мышления, работая с SwiftUI На прошлой неделе я увидел, что сообщество пытается перенести наработаные шаблоны разработки c UIKit в SwiftUI. Но я уверен, что лучший способ написать эффективный код используя SwiftUI — это забыть все об UIKit и полностью изменить свое мышление с точки зрения разработки ...

Как мы мигрировали базу данных из Redis и Riak KV в PostgreSQL. Часть 1: процесс Это первая часть статьи, в которой я расскажу о том, как мы построили процесс работы над большим проектом по миграции БД: про безопасные эксперименты, командное планирование и кросс-командное взаимодействие. В следующих статьях подробней расскажу про технические проблемы, ко...

Blitz Engine & Battle Prime: ECS и сетевой код Вступление Battle Prime — первый проект нашей студии. Несмотря на то, что многие члены команды имеют приличный опыт в разработке игр, мы, естественно, сталкивались с разными сложностями во время работы над ним. Они возникали как в процессе работы над движком, так и в процес...

[Из песочницы] Улучшение UX при работе с клавишей «Tab» При разработке приложений «фронтендеры» редко обращают внимание на то, как пользователь будет использовать предоставляемые браузером функции клавиш. Я не являюсь исключением, но в один день мне была дана задача касаемо UX и переходов с помощью нажатия «Tab» и «Shift + Tab». ...

Что такое Project Treble и с чем его едят В Android-смартфонах для меня всегда была лишь одна проблема — это долгие обновления В 2017 году, компания Google, вместе с выпуском операционной системы Android 8.0 Oreo показала новую технологию Project Treble, которая поможет производителям ускорить выпуск обновлений на с...

[Перевод] Python в Visual Studio Code: сентябрьское обновление расширения Мы рады сообщить, что сентябрьское обновление расширения Python для Visual Studio Code уже доступно. Вы можете загрузить расширение Python из Marketplace или установить его прямо из галереи расширений в Visual Studio Code. Если у вас уже установлено расширение Python, вы так...

[Из песочницы] Выбор между XML и SQL для накатывания скриптов LiquiBase на примере Java/Spring/H2 В процессе работы над очередным проектом в команде возникли споры по поводу использования формата XML или SQL в Liquibase. Естественно про Liquibase уже написано много статей, но как всегда хочется добавить свои наблюдения. В статье будет представлен маленький туториал по со...

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

Облако точек. Как мы развиваем цифровые технологии в строительстве Возможно, вы в курсе, а может быть и нет, но мы плотно занимаемся разработкой технологий Индустрии 4.0. IoT, машинное обучение на реальном производстве, цифровые двойники предприятий – со всеми этими вещами мы знакомы не понаслышке. Другими словами, мы знаем, как подружить «...

[Из песочницы] React Native — серебряная пуля для всех проблем? Как мы выбирали кросс-платформенный инструмент для Profi.ru Всем привет, меня зовут Геворг. Я Head of Mobile в Profi.ru. Хочу поделиться с вами историей нашего эксперимента с React Native. Расскажу, как мы оценивали плюсы и минусы разработки на React Native — в теории и на практике. Статья будет полезна тем, кто интересуется кросс-пл...

Игра AirAttack! — наш первый опыт разработки в VR Продолжаем серию публикаций о лучших мобильных приложениях выпускников «IT ШКОЛЫ SAMSUNG». Сегодня – слово молодым разработчикам из Новосибирска, победителям конкурса VR-приложений «ШКОЛА VR 360» в 2018 году, когда они были студентами-первокурсниками. Этим конкурсом заверша...

Как быстро переключаться между последними приложениями с помощью тачпада в Windows 10 Улучшаем функционал жестов тачпада на Windows 10.

Apple изменит процесс разработки iOS, чтобы избежать неудачных релизов В iOS 13 было много проблем, но iOS 14 должна быть более качественной.

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

В Android Q появится полноценная тёмная тема Впервые серьезно о темной теме заговорили с выходом Android P. В обновлении компания должна была реализовать полноценную system-wide темную тему, однако из-за недопонимания с командой AOSP реализовать задумку не удалось. В настоящее время Android поддерживает темную тему то...

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

Помощник Google теперь будет читать сообщения WhatsApp и Telegram Чтобы воспользоваться этим навыком ассистента ему необходимо разрешить доступ к уведомлениям. После команды «прочти [мои] сообщения», помощник поочередно зачитает вслух последние уведомления, указав из какого приложения они поступили. Все сообщения отражаются в виде карточки...

[Перевод] Настраиваем Out-Of-Memory Killer в Linux для PostgreSQL Когда в Linux сервер базы данных непредвиденно завершает работу, нужно найти причину. Причин может быть несколько. Например, SIGSEGV — сбой из-за бага в бэкенд-сервере. Но это редкость. Чаще всего просто заканчивается пространство на диске или память. Если закончилось прост...

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

[Перевод] Когда стоит проверять гипотезу о не меньшей эффективности? Статья от команды Stitch Fix предлагает использовать подход клинических исследований не меньшей эффективности (non-inferiority trials) в маркетинговых и продуктовых A/B тестах. Такой подход действительно применим, когда мы тестируем новое решение, имеющее преимущества, неиз...

Отладка Angular CLI приложения в VSCode с помощью Browser Preview Привет, Хабр! В Iponweb мы не только творим магию с помощью Kubernetes, но и создаем сложные пользовательские интерфейсы. Основной фреймворк, который мы используем, — Angular (а также AngularJs для legacy частей), поэтому удобство разработки для нас — не пустой звук. Мы реши...

Расширяем функционал штатной аудиосистемы Всем привет. Являюсь обладателем десятилетнего японца, в котором меня все устраивало, за исключением штатной аудиосистемы — в ней отсутствовал Bluetooth. Способов решения этой проблемы целых три: 1. Купить затычку в прикуриватель и не выпендриваться. Минусы: Качество звук...

Бывший сотрудник Microsoft объяснил, почему в Windows 10 так много ошибок Бывший сотрудник Microsoft Джерри Берг, который проработал в компании более 15 лет и отвечал за разработку инструментов и процессов для автоматизации тестирования операционных систем Windows, опубликовал видео на своём канале YouTube, в котором объяснил, почему в обновления...

Pirogi#1 Приложение пироги №1 Писали с нуля зацените напишите кто что думает интересно ваше мнение. Сайт приложение https://piroginomerodin.ru/ Ссылка на само приложение в itunes https://itunes.apple.com/ru/app/id1154091792 Приложение на стадии доработки, хотим внедрит...

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

[Перевод] Пишем чистый и масштабируемый JavaScript-код: 12 советов Язык JavaScript родом из раннего веба. Сначала на нём писали простые скрипты, которые «оживляли» страницы сайтов. Теперь же JS превратился в полноценный язык программирования, который можно использовать даже для разработки серверных проектов. Современные веб-приложения силь...

Алиса в стране Битрикс Приветствую вас (лично вас, а не всех кто это читает)! Сегодня мы: Создадим приложение (навык) Алисы с использованием нового (октябрь 2019) сервиса Yandex Cloud Functions. Настроим наше приложение так, чтобы оно отправляло заказы клиентов (т.н. лиды) в CRM Битрикс24. ...

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

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

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

Новые микроволновые печи COOK-inAPP от Candy Компания Candy представила расширение микроволновых печей линейки COOK-inAPP. В России стали доступны модели объемом 25 и 30 литров. Специальное приложение Candy simpli-Fi делает микроволновые печи уникальными, ведь оно открывает весь широкий функционал новинок R...

Интеграция 3CX с Office 365 через Azure API АТС 3CX v16 редакции Pro и Enterprise предлагает полную интеграцию с приложениями Office 365. В частности, реализована: Синхронизация пользователей Office 365 и добавочных номеров (пользователей) 3CX. Синхронизация персональных контактов пользователей Office и персонально...

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

[Перевод] Стратегии деплоя в Kubernetes: rolling, recreate, blue/green, canary, dark (A/B-тестирование) Прим. перев.: Этот обзорный материал от Weaveworks знакомит с наиболее популярными стратегиями выката приложений и рассказывает о возможности реализации наиболее продвинутых из них с помощью Kubernetes-оператора Flagger. Он написан простым языком и содержит наглядные схемы, ...

Как дискомфорт помогает нам совершенствовать процесс разработки Я тимлид и моя задача — обеспечить продуктивную работу команды. Это непросто, поскольку готового рецепта успеха не существует. Конечно, есть признанные методологии: Agile, Lean, Value Stream Mapping. Они дают общие ориентиры и ценности, что уже неплохо, но это лишь ориенти...

Особенности настройки Palo Alto: SSL VPN Несмотря на все преимущества межсетевых экранов Palo Alto, в рунете не так много материалов по настройке этих устройств, а также текстов, описывающих опыт их внедрения. Мы решили обобщить материалы, накопленные у нас за время работы с оборудованием этого вендора и рассказа...

[Из песочницы] Open Session In View в Spring Boot: Скрытая угроза Все здесь правы, каждый по-своему, и, следовательно, все здесь не правы. "Сказка о Тройке" (А. и Б. Стругацкие)Если вы используете Spring Data JPA, то после обновления на Spring Boot 2 при старте приложения можете заметить в логе новое предупреждение: spring.jpa.op...

[Перевод] Python в Visual Studio Code. Апрельский выпуск Мы рады сообщить, что в апреле 2019 вышло обновление расширения Python для Visual Studio Code. Вы можете загрузить расширение Python из Marketplace или установить его прямо из галереи расширений в Visual Studio Code. Вы можете узнать больше о поддержке Python в Visual Studio...

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

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

Intel выпустила приложение «Центр управления графикой» в Microsoft Store Компания Intel выпустила новое приложение в Microsoft Store для Windows 10, предназначенное для тонкой настройки графики в играх, домашнего кинотеатра и многого другого. Приложение получило название «Центр управления графикой Intel» (Intel Graphics Command Center) и являетс...

Безопасность приложений, или Как внедрить security в заказную разработку. Личный опыт AGIMA Digital-агентства все больше внимания уделяют безопасности инфраструктуры, в которой ведется разработка, а также начинают смотреть в сторону обеспечения безопасности приложений. Вы наверняка читали про разновидность и критичность уязвимостей, инструменты и методы обеспечения...

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

Новое VoIP-приложение 3CX для Android и CFD v16 И снова хорошие новости от 3CX! На прошлой неделе выпущены два важных обновления: новое VoIP-приложение 3CX для Android и новая версия среды разработки голосовых приложений 3CX Call Flow Designer (CFD) для 3CX v16. Новое VoIP-приложение 3CX для Android Новая версия приложен...

[Из песочницы] Восстание машин началось. Google Play Небоскребы, небоскребы, стены, лифты, этажи, расскажу я вам, ребята, про восстание машин… Сцена из КВН Я — самый настоящий инди-разработчик и это моя страсть. Начал свой путь 4.5 года назад, опубликовав свое первое приложение в Google Play. Мной была сделана вся работа по ...

Как подружить PLUTO и HDSDR Не так давно импульсивно купил симпатичный SDR трансивер для детей и юношества – ADALM PLUTO. К моему сожалению он работает с кучей софта под LINUX, а вот мой любимый HDSDR его не поддерживает. Недолго думая стал разбираться с этой проблемой и вот что из этого получилось:...

Apple полностью переработает 4 приложения под macOS к релизу Catalina Проект Catalyst, предполагающий унификацию приложений для Mac и iPad, должен существенно облегчить жизнь как разработчикам, так и рядовым пользователям. Однако, прежде чем это станет реальностью, Apple предстояло проделать большую работу по созданию специального инструмента...

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

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

[Из песочницы] Первое рабочее место или как начать разработку API на Node.js Введение В данной статье хотел бы поделиться своими эмоциями и приобретенными навыками в разработке первого REST API на Node.js с использованием TypeScript, как говорится, с нуля. История достаточно банальная: «Закончил университет, получил диплом. Куда же пойти работать?» К...

21 ноября, Product Engineering MeetUp: Кто такой продуктовый инженер? Продуктовая компания — понятие, которое набирает все большую популярность в ИТ-сообществе. На митапах обсуждают, как правильно построить процессы и наладить взаимодействие, чтобы команда показывала крутые результаты, спикеры на конференциях рассказывают про улучшение способ...

Рекомендовать нельзя спрятать Привет, Хабр! Меня зовут Николай, и я занимаюсь построением и внедрением моделей машинного обучения в Сбербанке. Сегодня расскажу о разработке рекомендательной системы для платежей и переводов в приложении на ваших смартфонах. У нас было 2 сотни тысяч возможных вариантов пл...

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

Security Week 25: уязвимость в Evernote и сотни взломанных интернет-магазинов Специалисты компании Guardio обнаружили (новость, исследование) интересную уязвимость в Evernote. Точнее, не в самом приложении для хранения заметок, а в расширении для браузера Google Chrome. Evernote Web Clipper позволяет сохранять веб-страницы, причем как целиком, так и ч...

[Из песочницы] Процедура нотаризации Electron приложения для macOS 10.14.5 С выходом macOS 10.14.5, Apple добавила обязательную процедуру нотаризации (Notarization process) приложений перед их распространением. Что это и какие сложности возникли с этим обновлением при разработке на Electron.js я и хотел бы рассказать. Читать дальше →

Управление договоренностями Давайте поговорим про управление договоренностями. Почему это вдруг? Да потому что, мы на TeamLead Conf любим обсуждать боли и проблемы, но и не забываем про решения. Наверняка у всех бывают проблемы, связанные с договоренностями по работе. «Договоренности не выполняются»,...

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

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

[Перевод] Профессиональная контейнеризация Node.js-приложений с помощью Docker Автор материала, перевод которого мы публикуем сегодня, работает DevOps-инженером. Он говорит, что ему приходится пользоваться Docker. В частности, эта платформа для управления контейнерами применяется на разных этапах жизненного цикла Node.js-приложений. Использование Docke...

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

Application Security Manager. Разработчик или безопасник? Большинство успешных атак организации реализуется через уязвимости и закладки в софте. К счастью, сканер уязвимостей ПО уже рассматривается компаниями не как что-то экзотическое, а как необходимый элемент инфраструктуры защиты. Если при небольших объемах разработки можно исп...

Win32-приложения будут работать в Windows Core OS Компания Microsoft много лет работает над следующим поколением операционной системы Windows, которая называется Windows Core OS. Это будет ядро, которое станет основой многочисленных оболочек для устройств следующего поколения, таких как Surface Hub, HoloLens 2, может даже S...

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

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

Moto. Мокаем AWS Тестирование — это неотъемлемая часть процесса разработки. И иногда разработчикам требуется запустить тесты локально, до того момента коммита изменений. Если приложение использует Amazon Web Services, python библиотека moto идеально для этого подходит. Читать дальше →

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

[Из песочницы] Создание Dataflow шаблона для стриминга данных из Pub/Sub в BigQuery на базе GCP с помощью Apache Beam SDK и Python В данный момент занимаюсь задачей стриминга (и преобразования) данных. В некоторых кругах такой процесс известен как ETL, т.е. извлечение, преобразование и загрузка информации. Весь процесс включает в себя участие следующих сервисов Google Cloud Platform: Pub/Sub — сервис...

[Перевод] Гибкие таблицы на CSS Grid Просмотр списка лидов («холодных» контактов) Поскольку мы уже запустились, я, наконец, могу рассказать о секретном проекте, над которым работал последние два года. Одна из интересных функций Teamwork CRM — просмотр списка (list view). Это мощный компонент, который встреч...

[Перевод] Интервью — 10 вопросов про Swift. Часть 3 Профессиональная программа «iOS Разработчик» — 5 месяцев Best Practice по разработке мобильных приложений с помощью Swift 5. Лучших выпускников ждут на собеседованиях 12 компаний-партнёров OTUS, поэтому публикуем перевод заключительной статьи из серии «iOS Interview Question...

Недорогой смартфон Neffos C7 Lite на Android Go с широкими возможностями Компания TP-Link представила свой новый смартфон Neffos C7 Lite на базе облегченной Android Go, который стоит всего $ 99. Его основные приложения занимают меньше места для хранения, так что большее количество приложений и файлов может храниться во встроенном хранилище Neffos...

[Перевод] 5 чрезвычайно простых способов ощутимо повысить скорость вашего VueJS-приложения Здравствуйте. Перевод данной статьи подготовлен специально для студентов курса «Разработчик JavaScript», который стартует уже на следующей неделе. Голос Чуи Немного обо мне — меня зовут Вайбхав, я из Five2One. Я вовлечен во VueJS уже целых 2 года (с момента выхода 1.0) и...

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

Локализация приложения и поддержка RTL. Доклад Яндекс.Такси При локализации сервиса важно внимательно отнестись к согласованию переводов между собой. Руководитель группы клиентской Android-разработки Яндекс.Такси Александр Бонель рассказал, какие практики и инструменты упрощают локализацию. Во второй части доклада Саша поделился опыт...

Мой путь от Python к Go — делюсь советами и ресурсами Мне нравится Python. Этот язык был моим фаворитом последние пять лет. Он дружелюбный, эффективный, и его легко выучить. Используется практически для всего: от создания простых скриптов и веб-разработки до визуализации данных и машинного обучения Постепенное «созревание»...

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

Kubernetes кластер за $20 в месяц TL; DR Поднимаем кластер для обслуживания веб-приложений без записи состояния (stateless web applications) вместе с ingress, letsencrypt, не используя средства автоматизации вроде kubespray, kubeadm и любых других. Время на чтение: ~45-60 минут, на воспроизведение действий: ...

Реверс хрома и установка расширений Доброго времени суток, дорогой читатель! Хром обновляется, но новых статей про то, как программно установить расширение в хром нет, помимо --load-extension — но это не наш вариант, ведь мы не ищем легких путей. Сегодня расскажу как действительно можно одним exe-шником полу...

Создаём голосовое приложение на примере Google Assistant Каждый пятый житель США владеет умной колонкой, а это 47 000 000 человек. Помощник может создать напоминание, список дел, будильник, таймер, прочитать новости, включить музыку, подкаст, заказать доставку, купить билеты в кино и вызвать такси. Все это «навыки» или «skills» по...

Подключение Micrometer для веб-приложения на Java Micrometer используется для сбора метрик приложения JVM и позволяет экспортировать данные в различные системы мониторинга. В этой статье я расскажу, как подключить Micrometer для spring web приложения и экспортировать данные в Prometheus (хороший пост о нем). Так как мое при...

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

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

Как получить быстрый доступ к веб-приложениям iCloud из Chrome За что многие пользователи так любят Google Chrome, что готовы ради него отказываться от не в пример более экономичного и быстрого Safari? Конечно, за расширения, которым Google даже посвятила отдельный магазин. Благодаря расширениям можно существенно расширить функциональн...

Junior-разработчики — почему мы их нанимаем и как мы с ними работаем Всем привет! Меня зовут Катя Юдина, и я IT-рекрутмент менеджер в Авито. В этой статье расскажу, почему мы не боимся нанимать джуниоров, как мы к этому пришли и какую пользу мы с ними приносим друг другу. Статья будет полезна компаниям, которые хотят нанимать джуниоров, но по...

[Перевод] Миграция с Nginx на Envoy Proxy Привет, Хабр! Предлагаю вашему вниманию перевод поста: Миграция с Nginx на Envoy Proxy. Envoy — это высокопроизводительный распределенный прокси-сервер (написанный на C++), предназначенный для отдельных сервисов и приложений, также это коммуникационная шина и «universal data...

[Перевод] Пишем Android-приложение на ассемблере Эта рассказ о нестандартном подходе к разработке Android-приложений. Одно дело — установка Android Studio и написание «Hello, World» на Java или Kotlin. Но я покажу, как эту же задачу можно выполнить иначе. Читать дальше →

macOS Catalina станет ещё безопаснее Не секрет, что Apple уделяет особое внимание безопасности своих операционных систем. Каждый год в iOS и macOS внедряются новые механизмы защиты — всё для того, чтобы максимально оградить пользователей от вирусов, утечек персональных данных и других проблем связанных с...

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

Microsoft ML Spark: расширение Spark, делающее SparkML человечнее, и LightGBM как бонус Многие, кто работал с Spark ML, знают, что некоторые вещи там сделаны "не совсем удачно" или не сделаны вообще. Позиция разработчиков Spark в том, что SparkML — это базовая платформа, а все расширения должны быть отдельными пакетами. Но это не всегда удобно, ведь Data Scient...

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

ThingJS v1.0-alpha Последние два года я разрабатывал собственную IoT платформу и сегодня готов показать ее альфа версию. Вместе с партнером мы создаем и поддерживаем IoT устройства. Мы разобрали не один сарай с граблями в процессе этой деятельности. ThingJS родилась не столько из желания, ско...

Массовый взлом ВКонтакте [XSS-червь]   В функционале социальной сети Вконтакте обнаружен и успешно эксплуатировался опасный баг — хранимая XSS с функционалом сетевого червя. В данный момент уязвимость устранена. Читать дальше →

Даб-даб 2019: новинки WWDC и мои впечатления Привет! Меня зовут Азат Зулькарняев, я занимаюсь разработкой iOS-приложений в компании Badoo. Традиционно мы каждый год с коллегами проводим неделю на WWDC. В статье я делюсь своими впечатлениями с конференции: под катом не только важные обновления и обзор сессий, но и немно...

ИИ помогает покупать билеты в приложении «Аэроэкспресс» В обновленной версии приложения «Аэроэкспресс» используется модуль автоматического распознавания документов Smart IDReader, который делает процесс покупки билетов быстрым и безопасным. Разработчик внедренной технологии искусственного интеллекта - российская компания S...

[Из песочницы] Опыт разработки ассета Unity для поиска пути в 3D пространстве Вас приветствует команда «Graceful Algorithms»! В качестве эксперимента нами было принято решение вести «дневники» разработчиков, в которых мы будем делиться опытом и освещать некоторые интересные результаты проводимых нами экспериментов. Это наша дебютная статья по проект...

Новый Проводник в Windows 10 Давно ходят слухи, что Microsoft разрабатывает новый универсальный Проводник для Windows 10. Для Windows 10 Mobile и Xbox One есть довольно неплохой Проводник, но он очень ограничен в своем функционале.Даже больше скажу, этот проводник есть и в десктопной версии Windows 10, ...

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

[Из песочницы] Преобразование черно-белых изображений в ASCII-графику при помощи неотрицательного матричного разложения В общем случае преобразование изображения в ASCII-графику представляет собой довольно трудоемкую задачу, однако существуют алгоритмы, позволяющие автоматизировать данный процесс. В данной статье рассматривается подход, предложенный исследователями Paul D. O’Grady и Scott T....

Создание бэкенд приложения для онлайн чата Apollo, Node.js Некоторое время назад я работал над мобильным приложением, функционал которого включал в себя удобный онлайн-чат. И теперь я решил написать статью с краткой инструкцией, как создать чат, используя apollo server и node.js на бэкенде, а так же react native и apollo client на к...

Разработка чат-бота (laravel+botman) Welcome! Я, как junior full stack разработчик, при попытке написать бота с использованием laravel и botman’а столкнулся с многими проблемами. Во-первых, я плохо знаю английский, а на русском статей очень мало на эту тему, а те, что есть не помогли мне решить мои проблемы. В ...

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

Как мы собирали данные по рекламным кампаниям с интернет-площадок (тернистый путь к продукту) Кажется, что сфера интернет-рекламы должна быть максимально технологичной и автоматизированной. Ещё бы, ведь там работают такие гиганты и эксперты в своём деле, как Яндекс, Mail.Ru, Google и Facebook. Но, как оказалось, нет предела совершенству и всегда есть что автоматизиро...

Специальным приложением Zoon.Business могут воспользоваться предприниматели Зун запустил приложение для предпринимателей Zoon.Business на iOS и Android. Оно позволяет управлять страницей организации на рекомендательном сервисе с помощью смартфона. Владельцы бизнеса, которым важно поддерживать информацию о компании актуальной, могут с помощью приложе...

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

[Перевод] Фаззинг в стиле 2000 года на современных приложениях Windows 10 Рис. 1. Ушиблен, но не сломлен. Калькулятор Windows, чей код недавно опубликован на Github, оказался одним из двух протестированных приложений, которые не зависли и не упали в противостоянии с фаззером оконных сообщений разработки 2000 года. Размер окна специально увеличен,...

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

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

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

[Из песочницы] Быстрая интеграция с 1С: Предприятие В данной статье я расскажу о наиболее простом, на мой взгляд, способе интеграции сторонних приложений с конфигурациями 1С. Статья будет интересна в первую очередь разработчикам, пишущим на .Net Core, PHP и Python. Способов интеграции с 1С известно много, этому даже посвящен...

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

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

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

[Перевод] От Witcher 3 до Cyberpunk: эволюция дизайна квестов CD Projekt The Witcher 3 известен своим превосходным дизайном квестов, но разработчик игры CD Projekt Red обещает в своём новом проекте Cyberpunk 2077 развить и улучшить проверенный подход. На E3 2019 директор отдела квестов Матеуш Томашкевич рассказал нам, чему он научился, управляя...

[Перевод] Асинхронный PHP. Зачем? Асинхронное программирование сегодня востребовано, особенно в веб-разработке, где отзывчивость приложения особенно важна. Никому не хочется ждать, пока приложение «отвиснет», пусть даже в это время оно выполняет запрос к базе данных, отправляет электронное письмо или работ...

Интеграционное тестирование микросервисов на Scala Unit-тестирование — это замечательно, но его одного бывает недостаточно. Часто хочется дополнительно убедиться, что запущенное приложение будет работать. На помощь приходит интеграционное тестирование. Оно все чаще применяется для тестирования сервисов, а Docker позволяет уд...

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

Candy COOK-inAPP: микроволновая печь с большим функционалом Компания Candy представила линейку новых микроволновых печей Candy COOK-inAPPс большим функционалом и стильным дизайном. Новинки оснащены специальной системой SORROUND, которая равномерно разогревает продукты, а также совместимы с приложением Candy simply-Fi. Оно под...

Mkcert: валидные HTTPS-сертификаты для localhost В наше время использование HTTPS становится обязательным для всех сайтов и веб-приложений. Но в процессе разработки возникает проблема корректного тестирования. Естественно, Let’s Encrypt и другие CA не выдают сертификаты для localhost. Традиционно есть два решения. Читат...

ОK, а мне точно нужен Kubernetes? В большой компании часто очень тяжело согласовывать выделение ресурсов под рабочие задачи. Весь Agile с хрустом разбивается о стену трёхнедельного согласования с ИБ новой инфраструктуры. Поэтому к нам часто приходят запросы на перевод инфраструктуры на контейнеры, чтобы вы...

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

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

Интересные доклады на HighLoad++ Siberia 2019 по версии Plesk Всем привет! В июне в Новосибирске прошла конференция по разработке высоконагруженных приложений HighLoad++ Siberia 2019. Ранее в статьях на Хабре мы упоминали, что мы в компании Plesk проводим ретроспективу конференций и докладов, которые посещаем, чтобы не потерять получен...

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

Magento 2: импорт продуктов прямо в базу В предыдущей статье я описал процесс импорта продуктов в Magento 2 обычным способом — через модели и репозитории. Обычный способ отличается весьма низкой скоростью обработки данных. На моём ноутбуке выходило примерно один продукт в секунду. В данном продолжении я рассматрива...

ReactiveX Redux Все, кто работает с Redux, рано или поздно сталкиваются с проблемой асинхронных действий. Но современное приложение разработать без них невозможно. Это и http-запросы к бэкенду, и всевозможные таймеры/задержки. Сами создатели Redux говорят однозначно — по умолчанию поддержив...

Новая функция Android 10 — находка для шпиона Что нового в Android 10? Да ничего хорошего Каждый год Google выпускает новую версию Android, которая включает в себя те функции, которых не было раньше. Их принято называть нововведениями. Чаще всего, они расширяют возможности операционной системы и делают её только удобнее...

Обзор Candy GVS4 H7A1TCEX-07. Узкая сушильная машина GrandO Vita Smart с приложением Какой бы мощной ни была ваша стиральная машина, даже после отжима при 1600 об/мин белье остается сильно влажным. Ее, как обычно придется, развешивать на сушилку, занимая полкомнаты. Да и к тому же от этого метода сушки повышается влажность в помещении, что влечет за собой ув...

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

МКБ представил новый функционал мобильного банка (реклама) Теперь клиенты mkb private banking с картами премиального уровня смогут работать в приложении с особым оформлением. Изменения коснулись, в первую очередь, главного экрана и иконки приложения. Также обновлен функционал "МКБ Онлайн" для всех пользователей.

Xiaomi пообещала сделать оболочку MIUI «самой крутой» Xiaomi — одна из немногих компаний, которые ритмично обновляют свои оболочки для смартфонов, и не менее ритмично обновляют старые модели до новых версий интерфейса. На вчерашнем мероприятии Xiaomi Developers Conference 2019 речь зашла и о MIUI. Цяо Чжунлян (Qiao ...

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

[Из песочницы] Windows Phone 8.1: ностальгии разработки пост. История одного приложения Приветствую, Хабр! Пост навеян новостью о прекращении поддержки Windows 10 mobile. Являясь одно время обладателем Nokia Lumia 925, расскажу про одну из моих поделок на поприще мобильной разработки под Windows Phone 8.1. Читать дальше →

Мост между Android и HarmonyOS. Компилятор Huawei Ark с открытым исходным кодом доступен для загрузки Компания Huawei представила официальный сайт компилятора Ark, который был запущен для популяризации операционной системы собственной разработки HarmonyOS. Huawei изначально заявила о своем жалении делитьcя и развивать компилятор вместе с разработчиками. Это, по мнению к...

Паттерны и анти-паттерны CI/CD. Часть 2 Всех с пятницей, друзья. Сегодня делимся с вами переводом второй части статьи «Паттерны и анти-паттерны CI/CD», первую часть которой можно прочитать здесь. Напомним, даная серия публикаций приурочена к запуску нового потока по курсу «DevOps практики и инструменты». 1.3 Патт...

[Перевод] Представляем «CLI Builder»‎-ы В этой статье мы рассмотрим новый API Angular CLI, который позволит вам расширять существующие возможности CLI и добавлять новые. Мы обсудим, как работать с этим API, и какие существуют точки его расширения, позволяющие добавлять новый функционал в CLI. Читать дальше →

The Walking Zombie 2 1.6 The Walking Zombie 2 — по сюжету главный герой рождается от заражённой вирусом зомби матери. Ему удается выжить благодаря защите других людей, и в дальнейшем он вырастает и начинает бороться с ходячими мертвецами. В процессе прохождения игрок вместе с персонажем выполнит мно...

[Из песочницы] WWDC19: Приступим к работе с Test Plan для XCTest Привет, Хабр! Представляю вашему вниманию перевод статьи «WWDC19: Getting Started with Test Plan for XCTest» автора Shashikant Jagtap. На прошедшей конференции WWDC компания Apple показала новые классные фичи для разработчиков. В Xcode 11 так же добавлено несколько потряс...

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

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

Как оседлать радугу: история создания тёмной темы В сентябре мы выпустили тёмную тему официального приложения ВКонтакте для iOS, а неделю назад релиз состоялся и на Android. За этим запуском стоит большой совместный труд разработчиков и дизайнеров. Вместе мы не просто перевели VK на тёмную сторону, но и серьёзно изменили п...

iOS 13.2.2 вышла два дня назад, а на неё уже жалуются iOS 13.2.2 исправила один старый баг, а добавила два новых Это даже не смешно. Если я правильно подсчитал, то за последние полтора месяца Apple выпустила семь обновлений iOS. Большая часть из них была направлена на исправление уязвимостей и исправление системных сбоев, приво...

Как продвигать мобильное приложение в 2019 году: 4 практических способа + полезные инструменты Конкуренция на рынке мобильных приложений растет быстрыми темпами. Сегодня уже трудно рассчитывать на успех, освоив подходы ASO, необходимо более глубокое погружение и разработка нестандартных рекламных и маркетинговых шагов. Сегодня мы поговорим о способах продвижения м...

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

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

Использование Liquibase для управления структурой БД в Spring Boot приложении. Часть 1 В этой статье я разберу использование утилиты Liquibase в Spring Boot приложениях для версионирования структуры реляционной БД и миграции этой структуры с одной версии на другую. В первой части разберем базовый пример, а во второй поговорим об использовании liquibase-mave-pl...

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

Microsoft To-Do для Windows 10 получил новую панель, появляющуюся при создании задач Участники программы Windows Insider, использующие канал «Ранний доступ» (Fast Ring), получили новую предварительную версию приложения Microsoft To-Do для Windows 10, которая принесла с собой улучшения в процессе создания задач. Теперь при вводе текста задачи рядом будет поя...

[Из песочницы] Мой опыт разработки на Playcanvas Существуют ли среди читателей люди, которые хотя бы краем уха слышали, что есть некий 3D движок для разработки WebGL приложений с редактором, похожим на Unity, только в браузере? Тема крайне непопулярная, но я стал одним из таких людей почти 2 года назад. И теперь мне захоте...

Как мы нашли крутой способ связать бизнес и DevOps Философией DevOps, когда разработка соединяется с обслуживанием ПО, уже никого не удивишь. Набирает силу новый тренд — DevOps 2.0 или BizDevOps. В нем в единое целое сливаются уже три компонента: бизнес, разработка и поддержка. И как в DevOps’e инженерные практики ложатся в ...

[Перевод] Бесплатная библиотека Wolfram Engine для разработчиков программного обеспечения Оригинал перевода в моём блоге Пара видео о Wolfram Language Почему вы до сих пор не используете технологии Wolfram? Что ж, такое случается, и довольно часто. В процессе общения с разработчиками программного обеспечения, они достаточно лестно отзываются о наших технология...

[Из песочницы] Тернистый путь в программирование Привет, Хабр. Данная статья ориентирована на школьников 8-10 класса и студентов 1-2 курсов, которые мечтают посвятить жизнь IT, хотя, возможно более «старые» личности найдут ее не менее занимательной. Итак, сейчас я поведаю свою историю и попытаюсь на своем примере предосте...

Apple как работает приложение Find My для поиска потерянных гаджетов Вместе с релизом iOS 13 и macOS 10.15 компания Apple объединила приложения «Найти друзей» и «Найти мой телефон» в одну утилиту. Последняя превращает все яблочные гаджеты в своеобразные Bluetooth-маяки, позволяя найти потерянное или украденное устройство даже если оно не подк...

[Из песочницы] Хранение и автоматическая сортировка фото и других файлов. Работа с файлохранилищем на базе NAS Synology Давно хотел написать про то как я храню свои файлы, как делаю бэкапы, но все никак не доходили руки. Недавно тут появилась статья, в чем-то похожую на мою но с другим подходом. Сама статья. Я уже много лет пытаюсь найти идеальный для себя метод для хранения файлов. Думаю я ...

Новые голосовые приложения на C# в 3CX v16 3CX v16 уже на подходе, и у нас есть отличные новости о нашем приложении для разработчиков Call Flow Designer. В новом релизе CFD использует новый скриптовый «движок», интегрированный в ядро сервера 3CX. Благодаря выполнению скриптов в ядре АТС, производительность голосовых ...

[Перевод] Что раздувает память в Ruby? У нас в Phusion работает простой многопоточный HTTP-прокси на Ruby (раздаёт пакеты DEB и RPM). Я видел на нём потребление памяти 1,3 ГБ. Но это безумие для stateless-процесса… Вопрос: Что это? Ответ: Использование памяти процессом Ruby с течением времени! Оказывается, я н...

Test Maturity Model: как тестировщику оценить проект и спланировать процессы Привет! Меня зовут Миша, и я Senior QА с коммерческим опытом более 6 лет. Сейчас я работаю в Provectus, но начинал я свой путь тестировщика еще в студенческие годы с участия в альфа- и бета-тестах различных игр. В какой-то момент подумал: «Почему бы не начать заниматься этим...

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

Три небольшие функции, которые Microsoft должна добавить в Microsoft Store Многие утверждают, что Microsoft Store в Windows 10 – пустая трата ресурсов для Microsoft и разработчиков, поскольку только очень небольшое количество пользователей видит его в качестве основного магазина приложений. Хотя я не большой поклонник Microsoft Store, я иногда испо...

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

[Перевод] The Foobar challenge: секретный тест Google для разработчиков Вы просто сидите за своим столом, занимаясь своими делами, пытаясь выполнить какую-то работу. Затем, как это неизбежно происходит, вы сталкиваетесь с незначительным препятствием: ваш код выдает загадочное сообщение об ошибке. «Нет проблем», как вы думаете. Это не ваше пер...

Как это устроено: выбор частот для 5G 5G может совершить реальный переворот в качестве жизни, поэтому интерес к новой технологии намного выше, чем когда-то к 4G. Так, количество компаний, запускающих устройства в первоначальном развертывании, изменилось с четырех для 4G LTE до 20 для 5G. Тестовые запуски и разра...

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

Google Calendar получил тёмный интерфейс На днях мы писали, что Google тестировала режим Dark Mode в приложении Google Keep, а сейчас его анонсировали для Google Calendar. Компания посвятила этому целый пост, в котором также сообщила, что Dark Mode начали распространять в Google Keep. Как и в других приложениях ...

Как быстро написать веб-сайт или веб-приложение и не увязнуть в сборщиках Это маленькое руководство описывает создание реактивного веб-приложения используя отрисовку на стороне сервера (Server-Side Rendering, SSR). Клиентская часть являет собой полноценное Vue-приложение, в моём случае используя шаблон MVVM. Серверное приложение работает на микроф...

В Google Play вышло поддельное приложение для обновления смартфонов Samsung Обновления – довольно противоречивое явление. С одной стороны, апдейты содержат в себе нововведения, которые расширяют функциональные возможности гаджета. А, с другой, их появление практически всегда увеличивает нагрузку на «железо» уже ненового аппарата, снижая его быстрод...

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

Как мы используем цепи Маркова в оценке решений и поиске багов. Со скриптом на Python Нам важно понимать, что с происходит с нашими студентами во время обучения, и как эти события влияют на результат, поэтому мы выстраиваем Customer Journey Map — карту клиентского опыта. Ведь процесс обучения — не нечто непрерывное и цельное, это цепочка взаимосвязанных событ...

Calm получил $27 млн на расширение Приложение для медитации Calm нашло большую возможность для роста во сне. Функция Calm Sleep Stories, запущенная в прошлом году, стала в приложении настоящим хитом - более 2 миллионов платных подписчиков прослушали более 150 миллионов “ночных” историй от Мэтью МакКонахи и Ст...

Геймплейный ролик головоломки Photographs с GDC 2019 Пока Google на GDC делилась планами по революции в игровой индустрии, обычные разработчики традиционно показывали свои игры. Редакторы портала Touch Arcade сыграли в головоломку Photographs от автора 10000000 и You Must Build a Boat, которая выйдет уже 3 апреля. Несмотря на...

Физические безумства Добрый день, уважаемый читатель! Я, начинающий Java-программист, долгое время не мог освоиться с библиотекой Box2D. Во-первых, из-за того, что она написана для C++, и по ней нет документации, а синтаксис Си я не знаю. Во-вторых, из-за того, что подробные уроки по этой библио...

[Перевод] Метрики производительности для исследования невероятно быстрых веб-приложений Есть одно высказывание: «Что ты не можешь измерить, то ты не можешь улучшить». Автор статьи, перевод которой мы сегодня публикуем, работает в компании Superhuman. Он говорит, что эта компания занимается разработкой самого быстрого в мире почтового клиента. Здесь речь пойдёт ...

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

[Из песочницы] Vuex — чрезмерное использование геттеров в приложении. Разбор ошибки В этой статье пойдет речь об распространенной ошибке, которую делают большинство начинающих при разработке приложения на Vue + Vuex. Мы поговорим о геттерах (getters) и как их правильно использовать. Также мы рассмотрим вспомогательные функции mapState и mapGetters. Примеча...

Лучшие Android-приложения для занятия фитнесом Привести себя в порядок при помощи смартфона? Легко! Наши смартфоны могут помочь нам во множестве повседневных задач. На просторах Google Play Store есть программы на любой вкус: от приложений отслеживания сна и прослушивания музыки до готовки и тренировок. Когда-то мы уже п...

Как изменилось приложение «Напоминания» в iOS 13 iOS 13 можно по праву назвать одним из самых знаменательным релизов за последние несколько лет. Компания наконец прислушалась к пользователям и добавила множество востребованных и давно назревших функций. Среди них можно выделить менеджер загрузок, клавиатуру с поддержкой ж...

Лучшие PDF-редакторы для Android PDF — один из самых распространенных форматов, используемых для важных документов и других подобных файлов. Однако редактировать их не так уж и просто. И зачастую приходится использовать монстрогрузные редакторы для настольных ПК. Но знали ли вы, что вы можете с легко...

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

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

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

Для watchOS 5 выйдет джейлбрейк. Но зачем? В ближайшее время для watchOS 5 может выйти полноценный джейлбрейк. Разработкой инструмента для взлома часов занимается хакер скрывающимся под псевдонимом ethanpepro. Есть большие сомнения в целесообразности данной затеи: какие дополнительные возможности сможет привнести ин...

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

Kubernetes tips & tricks: о локальной разработке и Telepresence Нас все чаще спрашивают про разработку микросервисов в Kubernetes. Разработчики, особенно интерпретируемых языков, хотят быстро поправить код в любимой IDE и без ожидания сборки/деплоя увидеть результат — по простому нажатию на F5. И когда речь шла про монолитное приложени...

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

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

Как не слить 10 миллионов бюджета вашего заказчика, играясь с Agile В этом посте я расскажу о тех проблемах с которыми в течении года сталкивалась наша Scrum Front End команда при работе над приличным проектом. Мы начинали разрабатывать проект с нуля используя стек технологий React + Typescript. Оглядываясь назад я вижу многие миллионы выбро...

SwiftUI и авто-возобновляемые подписки Привет! На связи Денис из Apphud – сервиса по аналитике возобновляемых подписок для iOS-приложений. Как вы знаете, на WWDC 2019 Apple анонсировали свой новый декларативный фреймворк SwiftUI. В этой статье я попробую рассказать как с помощью SwiftUI сделать экраны оплаты и р...

Написание системы попарно взаимодействующих частиц на C++ с использованием DirectX 11 На хабре уже есть много статей про использование вычислительных шейдеров с Unity, однако статью о использовании вычислительного шейдера на "чистом" Win32 API + DirectX 11 затруднительно. Однако эта задача ненамного сложнее, подробнее — под катом. Для этого будем использоват...

Как стать Java разработчиком за 1,5 года Меня зовут Сергей, мне 40 лет и сейчас я работаю Java разработчиком в немецкой компании. Мы занимаемся разработкой программного обеспечения для пивоварен оценки финансовых и кредитных рисков. Это моя первая работа в качестве разработчика. До этого я работал в сфере IT-поддер...

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

SMARTtech: 5 правил при разработке приложений на Android в 2019 году Разработка программы, игры или сервиса в виде приложения на Android требует от команды исполнителей знание новых технологий, опыта и понимания запроса от клиента. Так считают в студии Brights, которая реализует запросы бизнеса под веб и мобильные технологии.

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

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

[Из песочницы] 9 Принципов для создания качественных iOS приложений Принципы основаны на известной методологии от heroku, адаптированы под реалии айос разработки (Отсутствие контейнеров, ревью которые занимают несколько дней и тормозят развертывания, работа Xcode только на маке). Эта статья является коротким введением, полную серию можете на...

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

Инструменты Node.js разработчика. Работа с веб-сокетами по протоколу mqtt Технология веб-сокет позволяет в веб-приложении или в мобильном приложении реализовать отправку сообщений с сервера на клиент, что невозможно сделать средствами REST-API. Для работы с веб-сокетами часто используют библиотеку socket.io, или же разработчики работают с нативным...

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

Удаляем лишние фичи и продукты, чтобы улучшить бизнес Юрий Андрейкович, Senior Product Manager в Wrike, рассказал на конференции ProductSense в Минске, когда и зачем надо удалять фичи из продукта. Я работаю в Wrike — это сервис для совместной работы и управления проектами. В Wrike более миллиона пользователей, но наши прямые...

Обучение детей программированию Здравствуйте. Меня зовут Михаил Капелько. Занимаюсь профессиональной разработкой ПО более 10 лет. Из них последние годы связаны с iOS. В свободное время разрабатываю игры и средства для их создания. Обзор Сегодня хочу рассказать о своём опыте обучения детей программированию,...

[Из песочницы] Deploy Symfony + React приложения на AWS посредством CI Добрый день, в данной статье я покажу как развернуть Symfony 4 приложение на AWS. В официальной документации есть пример подобного процесса, однако мой вариант не столь тривиален, как загрузка zip архива с приложением. На дворе 2019, в моде docker, микросервисная архитектура...

Google начнет рассылать обновления для Android через Play Store Начиная с Android Q, Google начнет выпускать некоторые обновления, в том числе и патчи безопасности через магазин приложений Play Store. Как сообщает The Verge, Google назвала этот процесс «Project Mainline».

Безопасность контейнеров в CI/CD На дворе наступила осень, во всю бушует техноутопия. Технологии стремительно рвутся вперед. Мы носим в кармане компьютер, вычислительная мощность которого в сотни миллионов раз больше мощности компьютеров, управляющих полетами на Луну. С помощью Youtube VR мы можем плавать в...

Основы архитектуры приложений на Flutter: Vanilla, Scoped Model, BLoC (оригинал статьи на английском языке опубликован на Medium) Flutter предоставляет современный реактивный фреймворк, большой набор виджетов и тулов. Но, к сожалению, в документации нет ничего похожего на руководство по рекомендуемой архитектуре приложения для Android. Не сущ...

Старт предзаказов на HUAWEI WATCH GT 2 с диагональю 42 мм Компания HUAWEI анонсировала старт предзаказов на умные часы HUAWEI WATCH GT 2 с диаметром корпуса 42 мм на черном силиконовом и песочно-бежевом кожаном ремешках по цене 13 990 и 14 990 рублей соответственно. Новинки построены на базе процессора собственной разработки Hua...

.Net Meetup в Райффайзенбанке 28/11 Приглашаем на .Net Community Meetup 28 ноября. На митапе поговорим о проектировании desktop-приложений и рассмотрим вызовы, с которыми сталкивается любая компания на пути к микросервисам. Ждём вас в офисе Райффайзенбанка в Нагатино! Читать дальше →

Retrica представила обновление универсального фоторедактора Season 2 Компания Retrica (генеральный директор – Парк Сангвон (Sangwon Park)) 10 июля представила полное обновление своего универсального фоторедактора. Это популярное приложение позволяет пользователям комбинировать разнообразные цвета и оттенки. Обновленная версия программы,...

Словарь рекламных метрик.  CTR, CPI, CPM, CPC, CR Для того, чтобы оценить качество рекламных компаний существует большое количество различных метрик. Все они давольно таки простые для понимания, но чтобы было проще ориентироваться, в данном посте будут описаны основные из них. Разберем один из стандартных процессов попа...

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

Logitech выпускает дополнительный набор G Kit для Xbox Adaptive Controller Компания Logitech представила довольно интересный набор для расширения функционала контроллера под названием G Adaptive Gaming Kit.

[Перевод] Механизмы расширяемых расширений в JavaScript Здравствуйте, коллеги! Напоминаем, что не так давно у нас вышло 3-е издание легендарной книги «Выразительный JavaScript» (Eloquent JavaScript) — на русском языке напечатано впервые, хотя качественные переводы предыдущих изданий встречались в Интернете. Тем не менее, ни J...

Fluent Design System становится кроссплатформенным Microsoft обновила веб-сайт Fluent Design System, добавив информацию о расширении языка дизайна на другие платформы, такие как Android, iOS и Web. Таким образом, компания намерена использовать язык дизайна во всех своих продуктах и услугах, включая приложения для платформ, ...

Java Native Image: проверка возможности использования Не так давно Oracle выпустил первый релиз проекта GraalVM (https://www.graalvm.org/). Релизу был сразу присвоен номер 19.0.0, видимо, для того чтобы убедить, что проект зрелый и готов к использованию в серьезных приложениях. Одна из частей этого проекта: Substrate VM — фре...

Два расширения для блокировки рекламы в Chrome манипулировали файлами cookie Специалисты Google исключили из каталога расширений для Chrome два блокировщика рекламы, которые занимались мошенничеством с помощью cookie stuffing.

Делаем облачное видеонаблюдение своими руками: новые возможности Web SDK Ivideon У нас есть несколько интеграционных компонентов, позволяющих любому партнеру создавать собственные продукты: Open API для разработки любой альтернативы личного кабинета пользователя Ivideon, Mobile SDK, с помощью которого можно разработать полноценное решение, эквивалентно...

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

Доступна новая бета-версия Microsoft To-Do для Android Компания Microsoft выпустила новую бета-версию приложения To-Do (1.49.7632) для операционной системы Android, которая принесла с собой возможность прикреплять файлы к задачам в личных списках. Поддержка этой функции также присутствует в приложении для Windows 10 с номером в...

[Из песочницы] Продвинутый Debug Debug Area — полезная функция в работе iOS разработчика в Xcode. Как только мы начинаем осваивать разработку под iOS, и пытаемся отойти от привычного и любимого print метода, и найти более быстрые и удобные методы понимания состояния системы в определенный период мы начинаем...

Длинная история путеводителя — как я 5 лет писал сервис для умных пешеходных маршрутов У многих есть один или несколько своих домашних проектов. Это бывают небольшие утилиты, экспериментальные штуки, пробы новых технологий, “убийцы” фейсбуков и много что ещё. Заметно реже такими проектами занимаются долгое время. В статье я поделюсь своим опытом и расскажу ка...

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

Code review: вредные советы для контрибьютера и ревьювера Привет! Меня зовут Николай Ижиков. В этом посте я хочу рассказать об одном важном элементе взаимодействия, с которым мы сталкиваемся в процессе разработки ПО, особенно в open source. Это прохождение и проведение code review. Я дам вредные советы, как сделать свою фичу и до...

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

Как переместить приложения на SD-карту? Учимся сохранять приложения на карте памяти на Android Сегодня приложения для смартфонов становятся все более объемными. Но для пользователей Android это не является проблемой, ведь программы можно устанавливать на карту памяти. Это не сложно. Но вот что делать, если вам нуж...

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

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

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

Любителям Microsoft придётся выбирать: или WhatsApp, или мобильный Windows Если вы преданный поклонник мобильной платформы Microsoft и при это интенсивно используете популярный мессенджер WhatsApp, то вскоре вам предстоит принять решение, как быть дальше. Дело в том, что поддержка WhatsApp на Windows Phone и Windows Mobile прекратится с 31 дек...

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

TDD приложений на Spring Boot: тонкая настройка тестов и работа с контекстом Третья статья в цикле и небольшое ответвление от основной серии — в этот раз я покажу как устроена и как работает библиотека интеграционного тестирования Spring, что происходит при запуске теста и как можно тонко настраивать приложение и его окружения для теста. Читать дальш...

Xamarin.Forms — простой пример Host-based Card Emulation В этой статье будем реализовывать так называемую Host-based Card Emulation (HCE, Эмуляция банковской карты на телефоне). В сети много подробных описаний этой технологии, здесь я сделал акцент именно на получении работающих приложений эмулятора и ридера и решении ряда практич...

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

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

Триггерные email-рассылки — как вовлечь аудиторию Начнем сначала, что такое триггерные email-рассылки? Если объяснить просто, то это реакция на ваши действия после знакомства: зашли в кафе, поздоровались, ознакомились с меню и официант предлагает вам блюда в зависимости от ваших предпочтений. Триггер можно настроить на разн...

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

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

Модуль подводного ультразвукового дальномера. Часть вторая В первой части мы описали процесс разработки тестового варианта модуля подводного дальномера. Пришло время поделиться информацией о второй версии модуля, поскольку заявленные в первой статье предполагаемые изменения мы реализовали. Читать дальше →

«Лавочку прикрыли»: обходной путь для установки приложений Google на Huawei Mate 30 больше не работает Плохая новость для владельцев смартфонов Huawei Mate 30: лазейка, которая позволяла пользователям устанавливать Google Play и другие приложения и сервисы Google в обход запрета, была закрыта. Предназначенная для этого утилита LZ Play, как и сайт, где можно было её скачать, б...

Визуальный редактор логики для Unity3d. Часть 1 Введение Здравствуйте уважаемые читатели, в сегодняшней статье я хотел бы остановиться на таком феномене в разработке приложений на Unity3d, как визуальная разработка или если бы точнее, разработка с применением визуального представления кода и логики. И, прежде чем продолжи...

Microsoft открыла код Калькулятора Windows Несколько дней назад корпорация Microsoft приняла решение открыть исходный код известной всем программы — «Калькулятора» из ОС Windows. Это приложение входило во все дистрибутивы ОС от Microsoft начиная с 1985 года, когда свет увидела Windows 1.0. Microsoft использует ли...

Удаленка в IT: личный опыт Сейчас все больше компаний готовы к найму удаленных сотрудников. Для работодателей это расширяет возможность выбора высококвалифицированных специалистов. В Surf найм удаленных сотрудников практикуется уже давно, на данный момент 40% работают дистанционно — разработчики и мен...

Приложения для электронных книг на операционной системе Android (часть 3) В этой (третьей) части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены следующие две группы приложений: 1. Альтернативные словари 2. Заметки, дневники, планировщики Краткое содержание предыдущих двух частей статьи: В 1-ой част...

DynamicData: Изменяющиеся коллекции, шаблон проектирования MVVM и реактивные расширения В феврале 2019 года состоялся релиз ReactiveUI 9  —  кроссплатформенного фреймворка для построения приложений с графическим пользовательским интерфейсом на платформе Microsoft .NET. ReactiveUI  — это инструмент для тесной интеграции реактивных расширений с шаблоном проектиро...

[Из песочницы] Как создать свое первое веб-приложение с помощью Go Привет, Хабр! Представляю вашему вниманию статьи "How to build your first web application with Go" автора Ayooluwa Isaiah. Это руководство к вашему первому веб-приложению на Go. Мы создадим новостное приложение, которое использует News API для получения новостных с...

Как сканировать документы в приложении «Файлы» в iOS 13 Сканировать документы можно не только с помощью приложения «Заметки» Многие знают, что встроенное приложение «Заметки» обладает очень полезной возможностью — сканировать документы или любую другую информацию с бумажных носителей. Данная функция появилась еще ...

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

[Перевод] Python в Visual Studio Code – октябрьское обновление Мы рады сообщить о доступности октябрьского обновления расширения Python для Visual Studio Code. Вы можете загрузить расширение Python из Marketplace или установить его прямо из галереи расширений в Visual Studio Code. Если у вас уже установлено расширение Python, вы также...

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

Анонсирован Microsoft Web Template Studio Компания Microsoft объявила о выпуске ранней версии кросс-платформенного расширения для Visual Studio Core под названием Microsoft Web Template Studio, которое призвано упростить и ускорить процесс создания полнофункциональных веб-приложений. Web Template Studio использует ...

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

Как создать ссылку на сайт в виде QR-кода на iOS iOS, несмотря на более ранний релиз, развивалась далеко не так стремительно, как Android. К примеру, долгое время в iPhone не было встроенного сканера QR-кодов и пользователям приходилось прибегать к помощи сторонних приложений, которые умели с ними работать. Однако по мере...

[Из песочницы] Первая игра на unity или на что у меня ушло полгода Привет, Хабр. Я разработчик игр на Unity (как-то низко прозвучало) и хотел бы рассказать об этапах разработки моей первой игры. История берёт начало 2 года назад, когда я решил попробовать делать игры. Начинал с гайдов на ютубе. После, создав пару примеров, приложений и мини...

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

[Перевод] Редактирование текста тоже вас ненавидит Опубликованная месяц назад статья Алексис Бингесснер «Рендеринг текста вас ненавидит» очень мне близка. В далёком 2017 году я разрабатывал интерактивный текстовый редактор в браузере. Неудовлетворённый существующими библиотеками на ContentEditable, я подумал: «Эй, да просто...

Google Play Store скоро позволит одновременную загрузку приложений Google в последнее время не слишком много внимания уделяла магазину приложений Play Store. Каких-то значимых обновлений клиента мы не видели давно, если не считать материальный дизайн нового поколения. Теперь же журналисты AndroidAuthority сообщают, что скоро появится фишк...

Методы распознавания 3D-объектов для беспилотных автомобилей. Доклад Яндекса Беспилотному авто не обойтись без понимания, что находится вокруг и где именно. В декабре прошлого года разработчик Виктор Отлига выступил на «Дата-елке» с докладом о детекции 3D-объектов. Виктор работает в направлении беспилотных автомобилей Яндекса, в группе обработки доро...

Скрипты Google Ads начали поддерживать расширения с ценой

Как Tinkoff.ru автоматизирует аналитику с Zeppelin Tinkoff.ru разрабатывает множество сервисов на рынке финансовых услуг. У нас решают свои повседневные задачи аналитики, разработчики, технологи, менеджеры. Все мы ежедневно генерим идеи, анализируем, разрабатываем и делаем все, чтобы создавать лучший продукт на рынке. Я раб...

Apple уменьшила «вес» своих приложений в поиске App Store После ряда жалоб от сторонних разработчиков, компания Apple решила изменить алгоритмы ранжирования приложений в App Store. Теперь фирменные яблочные приложения не должны появляться в поиске слишком часто. Об этом в интервью The New York Times рассказали Фил Шиллер и Эдди Кью...

Microsoft откажется от живых плиток? По информации Зака Боудена с Windows Central стало известно, что Microsoft пересматривает свое отношение к Пуску и к плиткам в целом. Изначально, живые плитки пришли на платформу Windows Phone 7 в 2010 году и представляли из себя кладь полезной информации, так как благодаря ...

Mobile Shell для Windows 10 on ARM делает значительные успехи Microsoft больше официально не выпускает операционную систему для смартфонов, и Windows 10 Mobile прекратит получать обновления безопасности в следующем году. Пока Windows 10 Mobile потихоньку уходит от нас, группа преданных разработчиков перенесла Windows 10 on ARM (полноце...

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

От пул-реквеста до релиза. Доклад Яндекс.Такси В релизном цикле сервиса есть критически важный период — с момента, когда новая версия подготовлена, до момента, когда она становится доступна пользователям. Действия команды между этими двумя контрольными точками должны быть единообразны от релиза к релизу и, по возможности...

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

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

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

[Перевод] От идеи к производству — Разработка IoT проекта Сегодня мы пошагово разберем взлеты и падения разработки IoT. Только примеры из настоящей жизни, никаких теоретических "наверное" и много опыта. А еще ссылки на связанные статьи как бонус. Читать дальше →

[Перевод] 13 приёмов работы с npm, которые помогают экономить время Каждый день миллионы разработчиков, создавая свои JavaScript-приложения, обращаются к npm (или к Yarn). Выполнение команд наподобие npm init или npx create-react-app стало привычным способом начала работы над практически любым JavaScript-проектом. Это может быть сервер, клие...

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

Поиски «идеального» GUI. Путь новичка Изучая первый язык я хотел видеть кнопочки, а не только текст в консоли. Я сделал на Python3+tkinter калькулятор. Это заняло 585 строк. Применив к коду магию py2app, я получил bundle размером 45MB. Мне не понравилась работать с py2app. Иногда все переставало работать, если и...

[Из песочницы] Проблемы и нюансы при разработке под SmartTV с использованием React.js Хочу поделиться опытом разработки приложения с просмотром видео контента для SmartTV (Tizen и WebOS) и с какими проблемами мы столкнулись. На современных телевизорах, как мы знаем, можно устанавливать разные приложения, для облегчения работы с какими-то ресурсами и контенто...

Apple подтвердила существование приложения Sleep для Apple Watch Apple Watch Series 5 должны были получить функцию трекинга сна, но не получили Главной особенностью Apple Watch Series 5, которые Apple представила на презентации вместе с iPhone 11, должна была стать функция контроля сна пользователя. Не то чтобы Apple сама обещала её появл...

Эффективное управление подключениями SignalR Здравствуй, Хабрахабр. В настоящий момент я работаю над созданием движка чата в основе которого лежит библиотека SignalR. Помимо увлекательного процесса погружения в мир real-time приложений пришлось столкнуться и с рядом вызовов технического характера. Об одном из них я и х...

Broadcom приобретает корпоративный бизнес Symantec После этой сделки в составе известного производителя средств компьютерной безопасности останется только ориентированное на массовый рынок подразделение Norton LifeLock Компания Broadcom сообщила о покупке за 10,7 млрд долл. корпоративного подразделения Symantec. После это...

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

В биткоин-приложение Abra добавлена возможность инвестирования в акции и ETF Провайдер криптовалютного приложения Abra объявил о расширении функциональных возможностей продукта, добавив опцию инвестирования в традиционные финансовые инструменты, такие как акции компаний и торгуемые на бирже фонды (ETF). Как говорится в сообщении компании, приложение ...

Алиса приобретает навык В этой статье речь пойдёт о голосовых интерфейсах (Voice User Interface — VUI), а также будет показано, как на Node.js можно создать приложение (навык — в терминологии платформы Яндекс.Диалоги) для голосового помощника Алисы. С помощью стороннего API наше приложение будет ...

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

bobaoskit — аксессуары, dnssd и WebSocket Таким образом я описал строение системы управляемых программных аксессуаров. Упрощенная модель включает в себя главный процесс(bobaoskit.worker) и скрипты аксессуаров(использующие объекты bobaoskit.sdk и bobaoskit.accessory). От главного процесса идет запрос к аксессуару дл...

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

Умный сервис кэша на базе ZeroMQ и Tarantool Руслан Ароматов, главный разработчик, МКБ Привет, Хабр! Я работаю бэкенд-разработчиком в Московском кредитном банке, и за время работы у меня накопился некоторый опыт, которым я хотел бы поделиться с сообществом. Сегодня я расскажу, как мы писали свой собственный сервис к...

Приложение «Ваш телефон» будет предустанавливаться на смартфоны Samsung Приложение «Ваш телефон» от Microsoft внесло существенный вклад в улучшение взаимодействия между ПК и смартфонами на Android. По информации портала ZDNet, для расширения круга пользователей Microsoft заключила договор с Samsung о том, что грядущий Galaxy Note 10 будет поста...

Разработчик рассказал об опасности шорткатов для iOS Скрипты для приложения Shortcuts, русскоязычным пользователям более известного под названием «Команды», могут содержать в себе вредоносные компоненты. Об этом сообщил разработчик сервиса Codea – twolivesleft. Ему удалось выяснить, что один такой скрипт, якобы предназначенны...

Мастхэв для мобильной аналитики. Что нужно, чтобы вскрывать приложения для Android на Android Для подписчиковЕсли ты занимаешься аналитикой мобильных приложений или разрабатываешь их, то знаешь о таких десктопных инструментах, как IDA, apktool или Jadx. Но бывает, что компьютера под рукой нет, а тебе срочно нужно проанализировать приложение. В этой статье я приведу п...

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

Прикоснись к Большому взрыву: Google и ЦЕРН выпустили обучающее приложение Big Bang AR Европейский Центр ядерных исследований (ЦЕРН) совместно с Google выпустил приложение под названием Big Bang AR. Это приложение позволит поближе познакомиться с Большим взрывом — космологической моделью, описывающей процесс создания нашей Вселенной, согласно соотве...

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