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

[Перевод] 7 полезных советов для тех, кто использует Room Room — это уровень абстракции поверх SQLite, который упрощает организацию хранения данных. Если вы ещё мало знакомы с Room, то посмотрите эту вводную статью: 7 шагов к использованию Room. Пошаговое руководство по миграции приложения на RoomА в этой статье я хотел бы поделит...

[Перевод] Деплоим ML проект, используя Flask как REST API, и делаем доступным через приложение на Flutter Введение Машинное обучение уже везде и, пожалуй, почти невозможно найти софт, не использующий его прямо или косвенно. Давайте создадим небольшое приложение, способное загружать изображения на сервер для последующего распознавания с помощью ML. А после сделаем их доступными ...

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

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

[Перевод] Как мы подняли производительность Tensorflow Serving на 70% Tensorflow стал стандартной платформой для машинного обучения (ML), популярной как в индустрии, так и в научных исследованиях. Создано множество свободных библиотек, инструментов и фреймворков для обучения и обслуживания моделей ML. Проект Tensorflow Serving помогает обслужи...

Использование DiagnosticSource в .NET Core: теория DiagnosticSource — это простой, но весьма полезный набор API (доступен в NuGet пакете System.Diagnostics.DiagnosticSource), который, с одной стороны, позволяет различным библиотекам отправлять именованные события о своей работе, а с другой — позволяет приложениям подписывать...

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

Основные понятия стандартной библиотеки С++ Данная статья определяет основные понятия стандартной библиотеки С++. Она приводится для того чтобы на неё ссылаться в дальнейшем. Наибольшей частью стандартной библиотеки С++ является библиотека STL (Standard Template Library – Стандартная Библиотека Шаблонов). Библиотека S...

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

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

[Из песочницы] Сложности работы с Redux и их решение Redux среди нас Это один из самых популярных state-manager`ов. Он прост в использовании, прозрачен и предсказуем. С его помощью можно организовать хранение и изменение данных. А если считать, что action`ы и reducer`ы являются частью redux`а, то можно без преувеличения утве...

[Перевод] Множественные запросы к API с помощью mergeMap и forkJoin вместо subscribe Руководство по использованию mergeMap и forkJoin вместо простых подписок для множественных запросов к API. В этой статье я покажу два подхода к обработке множественных запросов в Angular с использованием mergeMap и forkJoin. Читать дальше →

[Из песочницы] Создание REST API с Node.js и базой данных Oracle Привет, Хабр! представляю вашему вниманию перевод статьи «Creating a REST API: Web Server Basics». Часть 1. Создание REST API: основы веб-сервера Веб-сервер является одним из наиболее важных компонентов REST API. В этом посте вы начнете свой проект API REST, создав нескольк...

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

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

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

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

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

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

[Перевод] Логическая репликация между версиями PostgreSQL Есть разные подходы к обновлению PostgreSQL, но некоторые приводят к простою приложения. Если нужно избежать простоя, используйте для обновления репликацию — логическую или физическую (потоковую), в зависимости от сценария. В этой статье мы рассмотрим разницу между логическ...

Представляем InterSystems API Manager (+ вебинар) Недавно мы выпустили InterSystems API Manager (IAM) — новый компонент InterSystems IRIS Data Platform, обеспечивающий наблюдение, контроль и управление трафиком в/из web API в рамках IT-инфраструктуры. В этой статье я покажу как настраивать IAM и продемонстрирую некоторые из...

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

Облако для благотворительных фондов: руководство по миграции Не так давно Mail.Ru Cloud Solutions (MCS) и cервис Добро Mail.Ru запустили проект «Облако для благотворительных фондов», благодаря которому некоммерческие организации могут бесплатно получить ресурсы облачной платформы MCS. Благотворительный фонд «Арифметика добра» принял...

[Перевод] Какой здесь this? Внутренняя работа объектов JavaScript Фотография: "Любопытный" Liliana Saeb (CC BY 2.0) JavaScript – это мультипарадигмальный язык, который поддерживает объектно-ориентированное программирование и динамическое связывание. Динамическое связывание — это мощная концепция, которая позволяет изменять структуру JavaS...

Использование DiagnosticSource в .NET Core: практика В предыдущей статье я рассказал про механизм DiagnosticSource и на простом примере показал, как с его помощью можно перехватывать запросы в базу данных через классы SqlConnection и SqlCommand и измерять время их выполнения. В настоящее время DiagnosticSource уже используется...

[Перевод] Как вы избавляетесь от неиспользуемого CSS-кода? Часть 1 Автор статьи, первую часть перевода которой мы сегодня публикуем, хотел бы, чтобы читатели заранее знали о том, что избавление от ненужного CSS — это трудная задача. Если вы это читаете в надежде найти некий инструмент, запустив который, вы сможете узнать о том, какой именно...

[Перевод] Создание игры «Крестики-нолики» при помощи TypeScript, React и Mocha Представляем вам перевод статьи Josh Kuttler, опубликованной на blog.bitsrc.io. Узнайте, как создать приложение «Крестики-нолики», используя React и TypeScript. Простая игра в крестики-нолики создана по модульному принципу и загружена на сайт Bit. Вы можете изменять компо...

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

[Из песочницы] Создаем элементы интерфейса программно с помощью PureLayout Привет, Хабр! Представляю вашему вниманию перевод статьи Creating UIViews Constraints Programmatically Using PureLayout автора Aly Yaka. Сегодня я проведу вас через создание простого пользовательского интерфейса мобильного приложения кодом, без использования раскадровок и...

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

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

[Перевод - recovery mode ] Использование Union вместо OR Иногда медленные запросы можно исправить, немного изменив запрос. Один из таких примеров может быть проиллюстрирован, когда несколько значений сравниваются в предложении WHERE с помощью оператора OR или IN. Часто OR может вызывать сканирование индекса или таблицы, которая м...

FreePBX. Настройка Asterisk для e-mail уведомлений о пропущенных входящих вызовах в очереди IP ATC Asterisk — это мощный комбайн в области IP-телефонии. А web-интерфейс FreePBX, созданный для Asterisk, значительно упрощает настройку и снижает порог вхождения в систему. Если вы можете придумать какую-либо задачу, связанную с IP-телефонией, то почти наверняка это мо...

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

[Перевод] 5 распространенных ошибок при использовании архитектурных компонентов Android Даже если вы не делаете этих ошибок, стоит о них помнить, чтобы не столкнуться с некоторыми проблемами в будущем. Читать дальше →

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

Миграция Cassandra в Kubernetes: особенности и решения С базой данных Apache Cassandra и необходимостью её эксплуатации в рамках инфраструктуры на базе Kubernetes мы сталкиваемся регулярно. В этом материале поделимся своим видением необходимых шагов, критериев и существующих решений (включая обзор операторов) для миграции Cass...

Навигация для Android с использованием Navigation Architecture Component: пошаговое руководство Попробуем, пользуясь официальным руководством и примерами кода, построить работающую систему навигации для будущего многоэкранного приложения в соответствии со стандартами Navigation Architecture Component. Статья включает следующие разделы: Часть 1. Подготовительные работ...

[Перевод] WolframClientForPython | Новая клиентская библиотека Wolfram Language для Python Оригинал перевода в моём блоге Получение полного доступа к языку Wolfram Language из языка Python Язык Wolfram (Wolfram Language) дает программистам в руки уникальный язык с огромным множеством сложных алгоритмов, а также встроенных знаний об окружающем мире. На протяжении...

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

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

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

Универсальный способ настройки внешнего вида WinForms приложения (на примере FAQ.Net) Введение После размещения первой статьи о своем приложении FAQ.Net (программа заметок под Windows), появились первые пользователи, для которых хочется дальше развивать свою программу для заметок. Чтобы повысить интерес у пользователей, возникла идея повысить его привлекател...

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

Microsoft подтвердила, что подрядчики прослушивали записи с Xbox One На прошлой неделе Microsoft официально подтвердила, что подрядчики могут прослушивать аудиозаписи звонков Skype и запросов Cortana, что, наряду с автоматизированной обработкой, помогает улучшать качество сервисов. Теперь же стало известно, что подрядчики прослушивали и фраг...

[Перевод] Асинхронное программирование – производительность async: понять расходы на async и await Это статья достаточно древняя, но не потерявшая актуальности. Когда разговор заходит об async/await, как правило, появляется ссылка на неё. Перевода на русский найти не смог, решил помочь кто не fluent. Асинхронное программирование долгое время было царством самых опытных р...

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

[Из песочницы] Хранение настроек в памяти Базового устройства Привет! Если Вам посчастливилось подержать в руках микроконтроллер ESP32 (мне посчастливилось больше и у меня в руках M5Stack) от китайской компании ESPRESSIF, то этот пост, возможно, будет полезен. Бывает ситуация, когда необходимо сохранить какие-то параметры в энергонеза...

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

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

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

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

Построение микросервисной архитектуры на Golang и gRPC, часть 2 (docker) Пришло время заняться контейнерами Прежде всего, мы используем новейший образ Linux Alpine. Linux Alpine — это легкий дистрибутив Linux, разработанный и оптимизированный для запуска веб-приложений в Docker. Другими словами, Linux Alpine обладает достаточным количеством зави...

Поточная конвертация баз Firebird 2.5 в формат ODS12 (Firebird 3.0) У каждой версии Firebird есть собственная версия формата дисковых структур базы данных – O(n)D(isk)S(tructure). До версии 2.5 включительно, движок Firebird мог работать с ODS предыдущих версий, то есть базы от старых версий открывались новой версией и работали в режиме совме...

Операция “Миграция”: как происходит переезд в облако DataLine Лет 7 назад самые первые проекты переезжали в наше облако просто и незатейливо. Образы виртуальных машин загружались на FTP-сервер, или их привозили на жестких дисках. Затем через специальный импорт-сервер ВМ загружали в облако. Если для клиента не проблема выключить виртуа...

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

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

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

Сжимаем APK, стараясь сохранить его работоспособность / PxHere / PD Оптимизация веса APK — это нетривиальная, но очень актуальная во времена Instant App, задача. Включение proguard избавит вас от ненужного кода, если ваши зависимости можно определить на этапе компиляции, но в APK есть ещё несколько видов файлов, которые можно ...

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

[Из песочницы] 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 ...

[recovery mode] Вертикальное письмо в современном IT Привет, Хабр! Двунаправленным письмом в наше время никого не удивить. Оно поддерживается управляющими символами Уникода, для него создан HTML-тег <bdo>. Но горизонтальные письменности – не единственные существующие и применяемые для записи человеческой речи. Кроме обыч...

[Перевод] Полное руководство по useEffect Вы написали несколько компонентов с использованием хуков. Возможно — даже создали небольшое приложение. В целом результат вас вполне устраивает. Вы привыкли к API и в процессе работы обнаружили несколько неочевидных полезных приёмов. Вы даже создали несколько собственных хук...

[Перевод] Руководство для начинающих по серверной веб-разработке с Node.js Большую часть своей веб-карьеры я работал исключительно на стороне клиента. Проектирование адаптивных макетов, создание визуализаций из больших объемов данных, создание инструментальных панелей приложений и т. Д. Но мне никогда не приходилось иметь дело с маршрутизацией или ...

[Из песочницы] Xamarin.Forms — удобное использование иконочных шрифтов в приложении Постановка задачи Для отображения иконок в приложении Xamarin.Forms можно использовать изображения в различных форматах, например png, svg или шрифты ttf. Чаще всего для добавления стандартных иконок удобен шрифт с иконками, например google material icons. Шрифт с иконками ...

Что такое API Содержание Что такое API API — набор функций Как составляется набор функций При чем тут слово «интерфейс» Как вызывается API Вызов API напрямую Косвенный вызов API Что значит «Тестирование API» Резюме Слово «API» мелькает в вакансиях даже для начинающих тестировщико...

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

Делаем процесс разработки тяжеловесного программного обеспечения под микроконтроллеры более удобным (нет) Сейчас уже никого не удивить микроконтроллерами с энергонезависимой (чаще всего Flash) памятью объемом 512 килобайт и более. Их стоимость постепенно снижается, а доступность напротив, растет. Наличие такого объема энергонезависимой памяти дает возможность писать «тяжелые» по...

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

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

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

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

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

Приложение «Фотографии» для Windows 10 лишается синхронизации видеопроектов в OneDrive Видеоредактор в приложении «Фотографии» для Windows 10 лишится возможности синхронизации видеопроектов при помощи OneDrive. В настоящее время в облачное хранилище загружается информация о порядке клипов, музыке и тексте, благодаря чему видеопроекты выглядят одинаково на все...

Python из C В прошлом году появилась необходимость дополнить старый проект написанный на C функционалом на python3. Не смотря на то, что есть статьи на эту тему я помучился и в том году и сейчас когда писал программы для статьи. Поэтому приведу свои примеры по тому как работать с pytho...

[Перевод] Улучшите свой CSS с помощью этих 5 принципов Написание CSS — процесс достаточно простой и понятный, тогда почему для этого требуются еще какие-то принципы и best-practices? По мере увеличения масштабов проекта и количества людей, работающего над ним, всё более и более явно начинают проявляться новые сложности, котор...

Билайн запустил VoLTE в Москве и Санкт-Петербурге Новая технологиях позволяет совершать голосовые вызовы в изначально рассчитанной на передачу мобильных данных сети LTE, в несколько раз быстрее устанавливать соединение между абонентами и обеспечивать высокое качество голоса во время звонка. В 2015 году Билайн первым сре...

Работа с сервисом Managed Databases от Digital Ocean в .NET Core В том время, как у других облачных платформ уже давно есть свои решения для баз данных, Digital Ocean в этом сегменте до сегодняшнего дня ничего не предлагал. Но 14 февраля, в день всех влюбленных, компания решила сделать подарок своим клиентам и в режиме Limited Availabil...

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

Оптимизация конструкции методами теории автоматического управления В предыдущей статье "Скрещивание ужа и ежа.." мы проверяли применимость методов настройки систем автоматического управления к «реальным» моделям. В это статье попробуем оптимизировать не систему управления, а сам «физический» объект. Для настройки регуляторов существует бол...

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

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

[Из песочницы] novtable оптимизация Компилятор Microsoft позволяет добавить расширение «novtable» для атрибута «__declspec» при объявлении класса. Заявленная цель — значительно уменьшить размер генерируемого кода. На экспериментах с нашими компонентами уменьшение составило от 0,6 до 1,2 процента от размера D...

Ноутбуки и настольные ПК Apple получили большое обновление, без которого AirPods Pro не заработают Компания Apple выпустила большое обновление операционной системы macOS Catalina 10.15.1 для своих ноутбуков и настольных ПК.  Оно добавляет несколько новых функций, а также внушительный список исправлений проблем и недоработок как в самой системе, так и различных ...

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

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

Почему не приходят PUSH-уведомления в VoIP-клиенте 3CX для Android Возможно, вы уже попробовали наше новое приложение 3CX для Android Beta. Сейчас мы активно работаем над релизом, который будет включать, кроме прочего, поддержку видеосвязи! Если вы еще не видели новый клиент 3CX, вступайте в группу бета-тестировщиков! Однако мы обратили вн...

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

«Apple нас обманывает?», или Как навсегда удалить свои разговоры с Siri Прозрачность – основа политики, которую ведет Apple. Ну, по крайней мере, так утверждает руководство компании, давая понять, что ей нечего скрывать от своих клиентов, а все, что она делает, делает максимально открыто и явно. Чтобы подтвердить это, Apple регулярно публикует ...

[Перевод] Disposable ref structs в C# 8.0 Давайте посмотрим, что об этом сказано в блоге о предстоящих изменениях в С# 8.0 (версия Visual Studio 2019 Preview 2): «stack-only структуры появились в С# 7.2. Они чрезвычайно полезны, но при этом их использование тесно связано с ограничениями, например невозможностью реа...

[Перевод] Нейросети и глубокое обучение, глава 3, ч.2: почему регуляризация помогает уменьшать переобучение? Содержание Глава 1: использование нейросетей для распознавания рукописных цифр Глава 2: как работает алгоритм обратного распространения Глава 3: ч.1: улучшение способа обучения нейросетей Эмпирически мы увидели, что регуляризация помогает уменьшать переобучение. Это вдохн...

[Из песочницы] Записка frontend-архитектора #1. Нельзя просто так взять и использовать Redux Дисклеймер Уважаемый читатель! Если вы не имеете понятия, что такое React и Redux, читать дальше не имеет смысла, дальше технический бред. Я серьезно, понимание к чему эта записка, требует работы с указанными библиотеками — несмотря на то, что я постараюсь писать понятно, эт...

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

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

[Перевод] Создание динамических PDF-файлов с использованием React и Node.js Материал, перевод которого мы сегодня публикуем, посвящён созданию динамических PDF-файлов с использованием HTML-кода в качестве шаблона. А именно, речь пойдёт о том, как сформировать простой счёт на оплату неких товаров или услуг, динамические данные, включённые в который, ...

[Перевод] Создание современных облачных приложений с использованием Pulumi и .NET Core Мы рады объявить о поддержке .NET Core для Pulumi! Это объявление означает, что вы можете декларировать облачную инфраструктуру — включая все в Azure, например Kubernetes, Functions, AppService, Виртуальные машины, CosmosDB и другое, — используя ваш любимый язык .NET, включа...

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

[Перевод] Учебный курс по React, часть 11: динамическое формирование разметки и метод массивов map В сегодняшней части перевода учебного курса по React мы поговорим об использовании стандартного метода массивов map() для организации динамического формирования JSX-разметки, описывающей наборы однотипных элементов. → Часть 1: обзор курса, причины популярности React, Reac...

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

3D-печать домов постепенно набирает обороты Строительство домов с использованием методов 3D-печати может показаться футуристическим, но эта технология постепенно набирает обороты. В качестве примера источник приводит молодую компанию haus.me, которая недавно запустила производство в штате Невада. Этот производите...

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

VueJs + VueRouter + modal. Очередной велосипед Добрый день. В этой статье я разберу способ, который позволяет при смене адреса показывать модальное окно для наших нужд. Я знаю, что есть собственное решение для компонента «modal» на официальном сайте. Вдобавок к этому на Хабре есть много других статей, посвященных теме мо...

Microsoft SQL Server 2019 и флэш-массивы Dell EMC Unity XT Сегодня мы познакомим вас с особенностями использования SQL Server 2019 с системой хранения Unity XT, а также дадим рекомендации по виртуализации SQL Server с помощью технологии VMware, по настройке и управлению базовыми компонентами инфраструктуры Dell EMC. В 2017 году De...

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

[Перевод] Архитектура программного обеспечения переоценена, простой и понятный дизайн — недооценен Вашему вниманию предлагается перевод поста Гергелия Ороса, занимающего должность Engineering Manager в Uber. В нем он делится своим взглядом на проектирование крупномасштабных систем, основанном на собственном практическом опыте работы в Uber и Microsoft. В сочетании с ком...

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

OpenSceneGraph: Управление окнами и режимами отображения Введение Мы уже говорили о том, что класс osg::Camera управляет связанным с ним графическим контекстом OpenGL. Графический контекст инкапсулирует информацию о том, как и куда происходит отрисовка объектов и какие атрибуты состояния к ним применяются. Под контекстом понимают...

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

Как отключить входящие звонки на iPad и Mac, когда звонит iPhone Блестящая функция Continuity позволяет начать работу на одном устройстве и тут же продолжить на другом, а также, принимая вызов на iPhone, ответить на сопряжённых iPad или Mac. Но все радости могут померкнуть, если с учёткой Apple ID сопряжены несколько домашних устройств. П...

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

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

С сожалением об отсутствии в C++ полноценного static if или… … как наполнить шаблонный класс разным содержимым в зависимости от значений параметров шаблона? Когда-то, уже довольно давно, язык D начали делать как "правильный C++" с учетом накопившегося в C++ опыта. Со временем D стал не менее сложным и более выразительным языком, чем C...

[Перевод] Диаграмма Ганта vs Канбан доска Если коротко – диаграммы Ганта полезны, когда зависимости являются основным фактором формирования расписания, тогда как Канбан доски можно использовать для работ, которые не имеют зависимостей между собой. Кроме того, диаграммы Ганта подходят, когда существует предварительн...

[Перевод] Монада «Reader» через async/await в C# В моей предыдущей статье я описал, как реализовать паттерн "Монада Maybe" с помощью операторов async / await. В этот раз я расскажу, как реализовать другой популярный шаблон проектирования "Монада Reader", используя те же приемы. Этот шаблон позволяет неявно передать некий ...

[Перевод] Использование Typescript с React – руководство для новичков Друзья, в преддверии выходных хотим поделиться с вами еще одной интересной публикацией, которую хотим приурочить к запуску новой группы по курсу «Разработчик JavaScript». Потратив последние несколько месяцев на разработку приложений на React и библиотек с использованием T...

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

[Перевод] Интеграционные тесты баз данных с помощью Spring Boot и Testcontainers 1. Обзор С помощью Spring Data JPA можно легко создавать запросы к БД и тестировать их с помощью встроенной базы данных H2. Но иногда тестирование на реальной базе данных намного более полезно, особенно если мы используем запросы, привязанные к конкретной реализации БД. В эт...

[Перевод] .NET Core Workers как службы Windows В .NET Core 3.0 мы представляем новый тип шаблона приложения под названием Worker Service. Этот шаблон предназначен для того, чтобы дать вам отправную точку для написания долго-работающих сервисов в .NET Core. В этом пошаговом руководстве мы создадим worker и запустим его в ...

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

[Из песочницы] System.Console, Mono и NCurses Всем привет, в своей работе (а ранее и в учебе) я часто использую C# и этот язык стал мне, что называется, привычным. Решив немного потренироваться в программировании, я написал консольный текстовый редактор для Linux. Вкратце опишу полученный опыт. В Mono класс System.C...

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

В Google Play стало на 98% меньше приложений, которые хотят доступ к журналу вызовов и SMS Осенью прошлого года начала действовать новая политика магазина приложений Google Play, которая ограничила доступ Android-приложений к журналу вызовов и SMS. Разрешение на использование таких данных теперь могут приложения для совершения звонков и передачи сообщени...

F#3: Форматирование текста При работе с любым языком вам, скорее всего, нужно будет отформатировать текст, и F# ничем не отличается. Поскольку F# является языком .NET, мы всегда можем использовать Console.WriteLine (..) и String.Format (..), где мы можем использовать любой из обычных форматеров, кото...

React + IndexDb + автообновление = почти AsyncRedux В данной заметке по шагам расскажу как приготовить IndexDB (база данных, которая встроена в любой современный браузер) для использования в проектах, написанных на ReactJS. В результате Вы сможете использовать данные из IndexDB так же удобно, как если бы они находились в Redu...

DSC и напильник: часть 1. Настройка DSC Pull Server для работы с базой данных SQL PowerShell Desired State Configuration (DSC) сильно упрощает работу по развертыванию и конфигурированию операционной системы, ролей сервера и приложений, когда у вас сотни серверов. Но при использовании DSC on-premises, т.е. не в MS Azure, возникает пара нюансов. Они осо...

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

[Из песочницы] Управление состоянием и событиями между компонентами в GameObject Управление состоянием и событиями между компонентами в GameObject Ссылка на проект Как известно всем, более или менее знакомых с платформой Unity, каждый игровой объект GameObject состоит из компонентов (встроенных или пользовательских, который обычно называют «скрипт»). Ко...

[Из песочницы] Сообщения и оповещения на Android через JSON Для получения коротких сообщений, можно использовать электронную почту, SMS, push-уведомления или создать бота для мессенджера. Предлагаю рассмотреть еще один простой способ: 1. Создаем на стороне веб-сервиса источник данных в JSON. { "refl.me":true, ...

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

Примеры дичи из заказов «приходите спасать» (разбор десятка инцидентов с примерами) Иногда бывает так: — Приезжайте, у нас упало. Если сейчас не поднять — покажут по телевизору. И мы едем. Ночью. На другой край страны. Ситуация, когда не повезло: на графике показан резкий рост нагрузки на СУБД. Очень часто это первое, на что смотрят администраторы систем...

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

Новые карты CUBA Работа с геопространственными данными и отображение карт являются неотъемлемыми составляющими множества бизнес-приложений. Это могут быть городские и региональные информационные системы, приложения для нефтегазовой отрасли, системы управления транспортной инфраструктурой, а...

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

[Перевод] Руководство по ML.NET — первое приложение за 10 минут В прошлом году мы представили ML.NET, кросс-платформенную и открытую систему машинного обучения для разработчиков .NET. За это время она очень сильно развилась и прошла через множество версий. Сегодня делимся руководством по тому, как создать свое первое приложение на ml.net...

Американец с помощью приложения для доставки пиццы вызвал отряд полиции Американец использовал приложение Domino's Pizza, чтобы создать ложный вызов целого отряда полицейских.

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

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

Создаем несложный шахматный ИИ: 5 простых этапов Перевели для вас статью Лори Хартикка (Lauri Hartikka) о создании простейшего ИИ для шахмат. Она написана еще в 2017 году, но базовые принципы остались теми же. Все файлы, которые использовал Лори, тоже доступны. Простой искусственный интеллект, который умеет играть в ш...

Как очистить оперативную память на Android-смартфоне Освободив оперативную память, вы заставите смартфон работать быстрее Большинство устройств среднего и высокого ценового диапазона, выпущенные за последние пару лет, имеют в районе 4 гигабайт оперативной памяти. Если, конечно, мы не будем принимать во внимание флагманы вроде ...

[Из песочницы] Методы сжатия/хранения медиа данных в форматах WAVE и JPEG, часть 1 Здравствуйте! Моя первая серия статей будет направлена на изучение методов сжатия и хранения изображений/звука, таких как JPEG (изобр.) и WAVE (звук), также в них будут примеры программ с использованием этих форматов (.jpg, .wav) на практике. В этой части мы рассмотрим именн...

GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), я нередко получаю вопросы о том как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() ...

[Перевод] Взаимодействие между компонентами Angular с использованием RxJS Руководство о том, как использовать Subject RxJS и BehaviourSubject RxJS для связи между компонентами Angular. В этой статье я буду использовать RxJS, чтобы показать как компоненты взаимодействуют, когда они не знают друг друга или не имеют общих родительских / дочерних отн...

Прикручиваем ngx-translate в Angular приложение. Практическое пошаговое руководство Практическая пошаговая инструкция как прикрутить динамическую локализацию (возможность выбора языков) в веб приложении на Angular 4+ используя @ngx-translate/core. В принципе можно найти публикации на подобную тему, может быть достаточно самой документации этой библиотеки, н...

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

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

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

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

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

[Перевод] Продуманные запросы: стратегии кэширования в век PWA Давным-давно мы, в деле кэширования, всецело полагались на браузеры. Разработчики в те дни почти никак не могли на это повлиять. Но потом появились прогрессивные веб-приложения (Progressive Web App, PWA), сервис-воркеры, API Cache. Внезапно случилось так, что в руках програм...

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

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

[Перевод] Новости из мира OpenStreetMap № 468 (02.07.2019-08.07.2019) OSM на праздновании своего дня рождения в 2006 году в Лондоне – карта с правильной атрибуцией (на тот момент) 1 | Map data OpenStreetmap OdbL О нас ОШИБКА: В прошлом выпуске WeeklyOSM №467 мы писали: «Издание «Japan Times» сообщает, что не так давно появилась современна...

Работа Instagram для Windows 10 Mobile будет прекращена 30 апреля Если вы сегодня открыли приложение Instagram на Windows 10 Mobile, вы, возможно, заметили сообщение о том, что приложение будет закрыто 30 апреля. Как видно из изображения выше, в уведомлении предлагается войти в систему используя веб-браузер вместо самого приложения.Данное ...

arkit — архитектурные диаграммы для JavaScript, TypeScript и Flow (швед. arkitektur) Дамы и господа, представляю вашему вниманию arkit — инструмент, который анализирует файлы вашего проекта и генерирует диаграмму зависимостей между ними и внешними модулями. Наверное, проще показать на примере самого arkit: Читать дальше →

[Из песочницы] Как создать 2D игру с Python и аркадной библиотекой Привет, Хабр! представляю вашему вниманию перевод статьи How to create a 2D game with Python and the Arcade library автора Paul Vincent Craven Как создать 2D игру с Python и аркадной библиотекой Узнайте, как начать работу с Arcade, простой в использовании библиотеки Python д...

pudge встраиваемая база данных в 500 строк на golang pudge — встраиваемая key/value база данных, написанная на стандартной библиотеке Go. Остановлюсь на принципиальных отличиях от существующих решений. Stateless pudge.Set("../test/test", "Hello", "World") Пудж автоматически создаст базу данных test, включая вложенные дире...

Синхронизация клиентских запросов в Spring Сегодня предлагаю Вам разобрать одну практическую задачу о гонке клиентских запросов, с которой я столкнулся в МаксимаТелеком при разработке back-end для нашего мобильного приложения MT_FREE. При старте клиентское приложение асинхронно отправляет «пачку» запросов к API. При...

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

vCloud Director Extender: миграция В этой статье будет рассмотрена процедура расширения сети предприятия в облако провайдера посредством компонента VMware NSX® Edge™ Gateway Standalone. А также детально разобраны виды миграции виртуальных машин. Прежде чем приступать к миграциям и настройке сети...

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

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

Бесшовная (почти) миграция между мажорными релизами PostgreSQL с помощью логической репликации У нас в True Engineering на одном проекте назрела необходимость в смене версии PostgreSQL с 9.6 на 11.1. Зачем? База данных на проекте уже объемом 1,5 Tb и растет. Перформанс – одно из основных требований к системе. А сама структура данных эволюционирует: добавляются новые...

В Греции проведено испытание передачи данных с использованием тестового микроволнового канала Как сообщает ТАСС со ссылкой на издание "Нафтемборики", Cosmote, частично принадлежащая Греческой организации связи (ОТЕ), в сотрудничестве с германской Deutsche Telekom и шведской Ericsson провела испытание передачи данных с использованием тестового микроволнового...

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

Метод Pomodoro не так крут, как мог бы быть У метода pomodoro есть не совсем очевидные нюансы. И эти нюансы, если переформулировать Кличко, понимают не только лишь все, мало кто может это делать. Поэтому давайте разберемся, что это за метод, и что можно было бы улучшить. Читать дальше →

Steam Link Anywhere от Valve позволит играть в свои игры откуда угодно Valve объявила, что расширяет свою функцию потоковой трансляции игр Steam Link по крупному, превращая его в Steam Link Anywhere, новый сервис, который позволит транслировать игры Steam с вашего компьютера в любую точку мира с помощью оборудования или приложения Steam Link. ...

Чем отличается Haptic Touch от 3D Touch С выходом iPhone 11, 11 Pro и 11 Pro Max, Apple окончательно покончила с 3D Touch во всей линейке смартфонов, заменив эту функцию тактильным прикосновением Haptic Touch. MacRumors выпустили развернутое руководство по использованию Haptic Touch. В этом переводе мы рассмотрим ...

[Перевод] Асинхронные Stream в C# 8 Функционал Async/Await появился в C# 5, чтобы улучшить скорость отклика пользовательского интерфейса и веб-доступ к ресурсам. Другими словами, асинхронные методы помогают разработчикам выполнять асинхронные операции, которые не блокируют потоки и возвращают один скалярный ре...

Как включить вызовы по Wi-Fi на iPhone Когда живёшь в большом городе, то вызов по Wi-Fi абсолютно не нужен. В таких местах постоянно хорошее мобильное покрытие. Но чем сильнее удаляешься от города, тем больше начинают посещать мысли, как замечательно иметь возможность принимать телефонные звонки при помощи Wi-Fi....

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

[Перевод] Знакомство с SwiftUI: Создание простого приложения с использованием TableView Во время проведения WWDC 2019, одним из самым больших и захватывающих моментом был анонс релиза SwiftUI. SwiftUI — это совершенно новый фреймворк, который позволяет проектировать и разрабатывать пользовательские интерфейсы с написанием меньшего количества кода, декларативным...

Подключиться мобильным устройством к базе данных без написания серверного кода Привет, Хабр! Хочу поделиться своим опытом использования Форсайт мобильной платформы. Если у вас встанет задача удалённого хранения данных и при этом не писать собственный сервер, то первое, что придёт на ум это инструмент Firebase Realtime Database. Большинство читающих зн...

Как исследование блокчейна Namecoin позволило предсказывать кибератаки группировки RTM Блокчейн Namecoin был создан как защищенная от цензуры и принудительного изъятия доменов альтернатива традиционным регистраторам DNS. В последние несколько лет его начали использовать операторы таких ботнетов, как Dimnie, Shifu, RTM и Gandcrab, для управления адресами C&am...

Миграция на Zimbra без рисков для бизнеса с помощью общего домена Ранее мы уже рассказывали о том, как можно мигрировать c IBM Notes/Domino на Zimbra. Изложенный нами вариант идеально подойдет для небольших предприятий с небольшим количеством сотрудников. Но что же делать крупным предприятиям с сотнями сотрудников, где резкий переход на но...

Ученые выявляют телефонных мошенников методом Random forest Специалисты исследовательского центра Eurecom применили алгоритм Random forest для эффективного выявления схем телефонного мошенничества с использованием платных международных номеров. Метод, предложенный экспертами, основан на анализе криминальных тестовых порталов, при пом...

Как проверить доступность вводного предложения в iOS Если в вашем приложении с подписками вы используете вводные предложения (триал, оплата по мере использования или предоплата), то прежде чем показать цену на экране оплаты, вам нужно определить доступность вводного предложения для пользователя. Если пользователь до этого уже ...

[Перевод] Изюминка Zircon: vDSO (virtual Dynamic Shared Object) Zircon? Что это? В августе 2016 года, без каких-либо официальных объявлений со стороны Google, были обнаружены исходники новой операционной системы Fuchsia. Эта ОС основана на микроядре под названием Zircon, которое в свою очередь основано на LK (Little Kernel). Fuchsia is ...

Упрощенный доступ к данным внутренней FAT12 для STM32 В предыдущей статье был рассмотрен вариант использования микроконтроллера STM32F103C8T6 как flash накопителя с внутренней файловой системой FAT12. Теперь можно рассмотреть, каким образом получить данные из нашей внутренней файловой системы. К примеру нам необходимо хранить н...

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

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

PHP: изменение стуктуры БД в командной разработке В мире PHP хорошо известны инструменты миграций структуры БД — Doctrine, Phinx от CakePHP, от Laravel, от Yii — это то первое, что пришло в голову. Наверняка, есть еще с десяток. И большинство из них работают с миграциями — командами для внесения инкрементных изменений в с...

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

Создание React-ивного хука usePosition() для получения и отслеживания координат браузера Если вкратце В этой статье мы создадим React-ивный хук usePosition() для отслеживания геолокации браузера. Под капотом этот хук будет использовать методы getCurrentPosition() и watchPosition() нативного браузерного объекта navigator.geolocation. Финальную версию хука я опуб...

Google хочет, чтобы в Android-смартфонах появилось новое приложение Digital Wellbeing помогает пользователям бороться с зависимостью от смартфонов. Но не всем Вы считаете себя зависимым от своего смартфона? Думаю, большинство ответит на этот вопрос отрицательно. Чисто технически они будут правы, ведь притягивает к себе не устройство как тако...

Пишем telegram-бота на python с помощью библиотеки telebot часть 2 Всем привет! Это вторая часть статьи, в которой я посвящу время запросам и серверам telegram. Если кто-то еще не видел первую часть, то рекомендую её почитать. В третьей части скорее всего будет описана работа с базами данных. Ну и если у вас опять возникли вопросы, то пишит...

Как оценить рентабельность внедрения дорогостоящей системы и обосновать бюджет перед руководством — Надо бы корову купить… — Надо бы, да где денег взять? «Трое из Простоквашино» Чтобы ваш разговор c руководством о необходимости проекта внедрения не свелся к этому короткому диалогу из мультфильма, нужно подготовить аргументацию заранее. Мы много лет занимаемся внедр...

WebComponents как фреймворки, взаимодействие компонентов Когда разговор заходит о веб компонентах, часто говорят: «Ты что хочешь без фреймворков? Там же все готовое». На самом деле есть фреймворки созданные на основе реализаций стандартов входящих в группу веб компонентов. Есть даже относительно неплохие, такие как X-Tag. Но сегод...

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

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

Как добавить заметки в центр управления на iPhone и iPad Многим нравится, чтобы часто используемые вещи, такие как заметки, были легко доступны. Это позволяет с легкостью взглянуть на задачи. Это руководство о добавлении заметок в Центр управления на iPhone или iPad позволит вам облегчить жизнь. Как добавить функцию заметок в Цен...

[Перевод] Приключения с ptrace(2) На Хабре уже писали про перехват системных вызовов с помощью ptrace; Алекса написал про это намного более развёрнутый пост, который я решил перевести. С чего начать Общение между отлаживаемой программой и отладчиком происходит при помощи сигналов. Это существенно усложняет...

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

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

Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности Прелюдия Рассмотрим следующий код: //Any native COM object var comType = Type.GetTypeFromCLSID(new Guid("E13B6688-3F39-11D0-96F6-00A0C9191601")); while (true) { dynamic com = Activator.CreateInstance(comType); //do some work Marshal.FinalReleaseComObject(com...

Введение в Spring, или что делать, если по всему проекту @Autowired и @Component, а вы не понимаете, что это Приветствую тебя, Хабр! Эта статья будет полезна тем, кто уже начал изучать Java и даже успел добиться некоторых успехов в понимании Java Core, и вот услышал слово Spring. И, возможно, даже не один раз: знание Spring Framework, как минимум, фигурирует в описаниях множества ...

Беспростойная миграция MongoDB в Kubernetes Эта статья продолжает наш недавний материал про миграцию RabbitMQ и посвящена MongoDB. Поскольку мы обслуживаем множество кластеров Kubernetes и MongoDB, пришли к естественной необходимости мигрировать данные из одной инсталляции в другую и делать это без простоя. Основные...

PHP-модуль для работы с иерархическими данными в БД InterSystems IRIS PHP с начала своих времён славен (и критикуем) тем, что поддерживает интеграцию с массой библиотек, а также с практически со всеми БД существующими на рынке. Однако в силу каких-то странных причин в нём не было поддержки иерархических баз данных на глобалах. Глобалы — это ...

В Windows 10 v1903 замечен баг с красным оттенком при использовании Lenovo Vantage Некоторые пользователи сообщают, что накопительное обновление для Windows 10 KB4512941, являющееся дополнительным обновлением, которое было выпущено 17 августа, вызывает появление красного оттенка на некоторых ПК. Однако проблема, по-видимому, связана с приложением Lenovo Va...

[Перевод] Создание приложения с использованием Styled-Components в Vue.js Привет, Хабр! На днях наткнулся на одну очень интересную статью на португальском. К счастью, удалось найти её английскую версию. Предлагаю вашему вниманию перевод на русский. Другие мои переводы вы можете найти на мой странице на хабре. Ссылка на оригинал: португальский, ан...

В AWS заменили MongoDB своей базой данных В AWS запустили DocumentDB – новую базу данных, совместимую с MongoDB API. Компания описывает DocumentDB как «быструю, масштабируемую и постоянно доступную документную базу данных, совместимую с существующими приложениями и инструментами MongoDB». Другими словами, с помощью ...

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

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

[Перевод] Автоматизация библиотек на Typescript Хочу сразу оговориться: эта статья не дает готового к использованию рецепта. Это скорее моя история путешествия в мир Typescript и NodeJS, а также результаты моих экспериментов. Тем не менее, в конце статьи будет ссылка на GitLab репозиторий, который вы можете посмотреть, и ...

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

Промышленных роботов самостоятельно принимать решения в изменяющейся среде Доклад по этой теме был признан лучшим в своей секции на конференции ICCAD’19, которая проходила 2-4 июля в Гренобле, Франция.Учёные ДВФУ создали и реализовали на практике новый принцип интеллектуального управления промышленными роботами - управление программными сигна...

[Из песочницы] Token, refresh token и создание асинхронной обертки для REST-запроса В данном туториале мы кратко разберем, как реализовываются REST-запросы к API, требующие, чтобы пользователь был авторизован, и создадим асинхронную «обертку» для запроса, которая будет проверять авторизацию и своевременно ее обновлять. Читать дальше →

[Из песочницы] От идеи мобильного приложения до MVP, в который вложатся инвесторы Введение Как создать MVP приложения, в который вложатся инвесторы Шаг 1. Составить требования Шаг 2. Выбрать компанию-разработчика Шаг 3. Создать ТЗ и собрать прототип для фокус-групп Шаг 4. Разработать и протестировать приложение Шаг 5. Опубликовать приложение Как найти...

К чему привела миграция с ClickHouse без авторизации на ClickHouse с авторизацией Давайте начнем с небольшой предыстории. У нас в компании на обслуживании стоит проект, который до недавнего времени находился в стадии тестирования/разработки. На тот момент в нём использовался ClickHouse с 3 шардами по 2 реплики в каждом. Учитывая то, что инфраструктура это...

[Перевод] Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 1: не создавайте конфликтующие пропсы Пишем API для React компонентов, часть 2: давайте названия поведению, а не способам взаимодействия Пишем API для React компонентов, часть 3: порядок пропсов важенУ нас есть компонент переключатель...

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

Мобильная аналитика для роста продаж 9 августа в 15:00 пройдет бизнес-конференция по разработке и аналитике мобильных приложений. Спикеры – известные российские банки, ритейлеры и телеком. Неотъемлемой частью любого мобильного приложения являются трекеры событий аналитики, с помощью которых мы можем посмотре...

[Перевод] Visual Studio for Mac: 5 новых крутых функций За прошедший год команда Visual Studio for Mac обновила редакторы в среде IDE, чтобы они стали быстрее, плавнее и продуктивнее. Мы сделали это, создав нативный интерфейс редактора macOS на основе того же самого бэкенда редактора, что и Visual Studio в Windows. В версии 8.1 м...

Выпущен драйвер AMD Radeon 19.12.1 с поддержкой RX 5300M Компания AMD выпустила первый декабрьский драйвер Radeon Software Adrenalin 2019 Edition 19.12.1 для своих видеокарт. Обновлённая версия приносит с собой только добавление поддержки мобильного графического процессора Radeon RX 5300M, а также исправляет проблему с «заиканием...

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

Google рассказала, как создавать приложения на Android «Разработка Android-приложений на языке Kotlin» – это бесплатный онлайн-курс, который компания Google разработала совместно с образовательной организацией Udacity для того, чтобы любой желающий мог пройти самостоятельное обучение и постичь азы (и не только) программирования...

[Из песочницы] Прощай HTML, привет QML Как можно создать web приложение без использования HTML? Для этого нам понадобится: новый браузер, QML и back-end на Java. Читать дальше →

Work Chat 196.0.0 Work Chat — это приложение для обмена сообщениями между пользователями Facebook at Work. Сейчас Facebook at Work и Work Chat доступны только для некоторых компаний, и для их использования требуется рабочий аккаунт. Work Chat позволяет вам быстро отправлять сообщения люд...

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

WearMouse, аэромышь для часов Wear OS Здравствуй, Хабр! Хочу предложить вашему вниманию немного магии для часов на Wear OS. Некоторое время назад, незадолго до выпуска Android 9.0, был представлен новый публичный API, позволяющий использовать устройства на Android в качестве Bluetooth-устройств ввода (мышь, кл...

Первый взгляд на функцию телефонных звонков в приложении «Ваш телефон» для Windows 10 Приложение «Ваш телефон» уже умеет синхронизировать SMS-сообщения, уведомления и изображения между вашим смартфоном и ПК, а уже совсем скоро оно получит возможность совершать телефонные звонки. Разработку этой функции Microsoft подтвердила на конференции Galaxy Unpacked 201...

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

Переключатели функциональности (feature toggles): виды, преимущества и работа с ними в .NET Переключатель функциональности — это инструмент, позволяющий переключаться со старой функциональности на новую, не пересобирая приложение и не выпуская его заново. Реализуется добавлением в код условного оператора (if), который дает возможность управлять поведением программ...

Telegram X обновился по крупному, получив новые функции и заметно улучшив старые Telegram может быть не так популярен, как WhatsApp или iMessage, тем более у нас в стране он, вообще, условно заблокирован, но у него есть своя доля пользователей. У этого мессенджера лаконичный и интуитивно понятный интерфейс, он защищен, а также создает резервные копии ва...

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

Как Иван метрики DevOps делал. Объект влияния Прошла неделя с тех пор как Иван в первый раз задумался над метриками DevOps и понял, что управлять с их помощью надо временем поставки продукта (Time-To-Market). Даже на выходных он думал про метрики: «Ну и что, что я измерю время? Что оно мне даст?» Действительно, что да...

Google обновил инструмент проверки оптимизации для мобильных Google обновил свой инструмент для проверки оптимизации сайтов для мобильных устройств (Mobile Friendly Test), добавив возможность протестировать код. Теперь вебмастера смогут проверять свои ресурсы также перед запуском, а не после, как это было ранее. Если в коде будут обна...

Serverless Telegram бот в Яндекс.облаке, или 4.6 копейки за 1000 сообщений "Whenever you receive a webhook update, you have two options" Из Telegram Bot Api Faq Привет, Хабр! Долгое время концепция serverless (а если говорить точнее — её реализация в виде сервиса AWS Lambda) была для меня относительно понятной, но очень абстрактной идеей. Она ча...

[Из песочницы] Переносим проект с Swift 4.2 на Swift 5.0 Привет, Хабр! Представляю вашему вниманию перевод статьи «Swift 5.0: How to migrate your project and frameworks» автора Antoine Van Der Lee. Swift 5.0 был выпущен в марте 2019 года и является первым стабильным выпуском ABI Swift. Несмотря на то, что многие ресурсы освещают ...

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

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

[Перевод] Что нужно знать о массивах JavaScript Представляем вам перевод статьи автора Thomas Lombart, которая была опубликована на сайте medium.freecodecamp.org. Перевод публикуется с разрешения автора. Пример использования метода reduce для сокращения массива Позвольте мне сделать смелое заявление: циклы часто бывают...

Глобальное кеширование результатов Query в ASP.NET CORE Парадигма CQRS в том или ином виде предполагает, что вызовы Query не будут менять состояние приложения. То есть многократные вызовы одной и той же query, в рамках одного запроса, будут иметь один и тот же результат. Пусть все интерфейсы, использующиеся в рамках запроса будут...

[Перевод] Анонсирован Windows Vision Skills (Preview) Недавно была анонсирована превью-версия Windows Vision Skills, являющяяся частью набора пакетов NuGet, который облегчают разработчикам приложений решение целого комплекса проблем компьютерного зрения с помощью простого набора API. Рисунок 1 — Слева направо вы видите в дейс...

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

«Яндекс.Музыка» автоматически установилась на Windows 10 и заменила стандартное приложение для MP3 Приложение «Яндекс.Музыка» теперь устанавливается по умолчанию в операционной системе Windows 10, пишет «Коммерсантъ» со ссылкой на дискуссии в Microsoft Store. Там официальный представитель «Яндекса» объясняет, что приложение всё равно можно удалить с компьютера. Судя по...

[Перевод] Обмен данными между React-компонентами с использованием библиотеки RxJS Перед вами перевод статьи Chidume Nnamdi, опубликованной на blog.bitsrc.io. Перевод публикуется с разрешения автора. Появление библиотеки RxJS открыло массу новых возможностей в мире JS. Цель RxJS — достигать многого, используя небольшое количество кода. Прочитав эту стат...

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

Haptic Touch против 3D Touch: в чем разница? С iPhone 11, 11 Pro и 11 Pro Max Apple покончила с 3D Touch во всей линейке iPhone, заменив прежнюю функцию 3D Touch на Haptic Touch. В этом руководстве мы рассмотрим все, что вам нужно знать о Haptic Touch и о том, чем он отличается от функции 3D Touch, доступной со времен ...

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

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

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

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

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

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

Работа с Worker “как хочется“, а не “как можно” В этой статье будет использоваться ГРЯЗНЫЙ, небезопасный, "костыльный", страшный и т. д. метод eval. Слабонервным не читать! Сразу скажу, что некоторые проблемы удобства использования решить не удалось: в коде, который будет передан в worker, нельзя использовать замыкание. ...

Как вредоносы обходят песочницы с помощью Visual Basic Мы в JSOC CERT ежедневно сталкиваемся с событиями из разных песочниц, которые функционируют в составе AntiAPT-решений наших заказчиков и пропускают через себя тысячи файлов из web- и почтового трафика. Стоит отметить, что современные Sandbox-системы в своем развитии ушли нам...

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

Apple попросила разработчиков делать приложения для Watch App Store   Сегодня Apple попросила разработчиков приступить к созданию, тестированию и отправке программ watchOS 6 для автономного магазина Watch App Store. Начиная с этой операционки, разработчики могут создавать приложения исключительно для Apple Watch без необходимости ...

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

hh работа 5.2.1 HeadHunter — работа мечты в твоем кармане. Официальное приложение HeadHunter для поиска работы поможет вам: найти интересные и подходящие вашим запросам вакансии; войти в свой личный кабинет на hh.ru; добавить вакансии в избранное, чтобы поработать с ними позже; созд...

Samsung сделала приложение, которое будет работать только на Galaxy S10 5G Никто, я думаю, не станет спорить с тем, что AR (дополненная реальность) – тренд, которому производители в мире мобильной индустрии уделяют, пожалуй очень много внимания. К сожалению, в большинстве случаев это повышенное внимание приводит к созданию очередных «анимоджи», ис...

[Перевод] Пишем API на Python (с Flask и RapidAPI) Если вы читаете эту статью, вероятно, вы уже знакомы с возможностями, которые открываются при использовании API (Application Programming Interface). Добавив в свое приложение один из многих открытых API, вы можете расширить функциональность этого приложения либо же допол...

[Из песочницы] Под капотом у React. Пишем свою реализацию с нуля 


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

Основы реактивного программирования с использованием RxJS. Часть 3. Higher Order Observables В данной статье мы рассмотрим, как можно в одном потоке обрабатывать другой, для чего это нужно, и как нам в этом помогут операторы Higher Order Observables (дальше HOO). При работе с потоками часто возникает ситуация, когда необходимо в качестве значения одному потоку пе...

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

Как я разрабатываю и тестирую API со своим «велосипедом» PieceofScript PieceofScript — простой язык для написания сценариев автоматического тестирования HTTP JSON API. PieceofScript позволяет: описывать методы API в формате YAML, с названием метода на почти естественном языке, что удобно для чтения тестов достаточно гибко описывать модели в...

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

Социальная инженерия с помощью программ Universal Windows Platform (APPX) TL;DR: В APPX-файл Universal Windows Platform можно упаковать обычный exe-файл, который будет запускаться в Windows 10 (сборка 1607 и новее) примерно так же, как обычные exe-файлы. Это можно использовать для атак социальной инженерии, с помощью рассылки через email — почто...

Переход на Boost-1.65.1 и баги, которые всплыли В прошлом году(уже почти целый год прошел) мы все–таки перешли на новую версию Boost-1.65.1, и под капотом вы найдете тройку багов boost-а, с которыми мы столкнулись. Еще важно упомянуть, что до этого у нас в ПО использовался boost -1.62.1, поскольку какие-то баги появились ...

Повторное использование форм на React Привет! У нас в БКС есть админка и множество форм, но в React-сообществе нет общепринятого метода — как их проектировать для переиспользования. В официальном гайде Facebook’a нет подробной информации о том, как работать с формами в реальных условиях, где нужна валидация и п...

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

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

Mail.ru выпустила новый браузер Atom с акцентом на «безопасность и приватность» В июле 2018 года компания Mail.ru прекратила разработку браузера «Амиго», хорошо знакомого многим пользователям, которые пытались удалить его из системы. Однако крупнейшая интернет-компания России не могла остаться без своего браузера. Поэтому разработчиков просто перевел...

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

Карта Метро Москвы и всего мира для Android ГЛАВА 1. Амбиции Конец февраля 2018 Мы, как адепты идеологии свободного ПО и свободного рынка считаем, что монополия — это плохо. Огромному количеству людей требуется удобная и быстрая навигация в метро. Странно, что нет ни одного достойного конкурента приложения Яндекс...

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

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

Как перенести файлы из Android на iPhone Вы решили заменить свой телефон Android на iPhone? Естественно, первый шаг после того, как вы получите новое устройство в свои руки, — это его настройка. Но как перенести все свои данные: контакты, фотографии, файлы, которые хранятся на совершенно другой платформе? App...

[Перевод] 26 рекомендаций по использованию типа var в Java The Java Local Variable Type Inference (LVTI) или кратко — тип var (идентификатор var — это не ключевое слово, а зарезервированное имя типа) был добавлен в Java 10 с помощью JEP 286: Local-Variable Type Inference. Являясь 100% функцией компилятора, она не влияет на байт-код...

Установка Chrome-софтфона 3CX через Gsuite и миграция записей с Google Drive Централизованная установка расширения 3CX для Chrome через GSuite В 3CX V16 Update 4 Alpha появилось новое расширение для Chrome, позволяющее звонить без открытия веб-клиента. Вы можете работать с любым настольным приложением, но при поступлении входящего вызова в нижнем пра...

Следующая версия Windows 10 будет резервировать не менее 7 ГБ памяти для обновлений Начиная со следующего функционального обновления для Windows 10, ныне известного под кодовым названием 19H1, Microsoft представить функцию «Reserved Storage» (Зарезервированное хранилище). Эта функция будет выделять некоторое количества места в памяти устройства для хранени...

[Перевод] Создание карточек как Tinder на Swift Tinder — мы все знаем, что это приложение для знакомств, где вы можете просто отклонить или принять кого-то свайпом вправо или влево. Эта идея считывания карт теперь используется в тоннах приложений. Этот способ отображения данных для вас, если вы устали от использования т...

Caller Name Announcer Pro 4.70 Приложение «Caller Name Announcer Pro» озвучивает имя абонента, когда он вам звонит или отправляет сообщение. Эта программа, которая мгновенно определяет абонента, вы даже не успеете дотянуться до телефона и посмотреть на экран. Наше приложение также способно идентифицироват...

[Перевод] Введение в Hashicorp Consul’s Kubernetes Авторизацию Все верно, после релиза Hashicorp Consul 1.5.0 в начале мая 2019 года в Consul можно делать авторизацию приложений и служб, запущенных в Kubernetes, нативно. В этом руководстве мы шаг за шагом создадим POC (Проверка концепции (Proof of concept, PoC — доказательство [осущест...

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

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

Мнение: Как можно улучшить приложение «Телефон» На WWDC 2019 нам показали iOS 13. Операционная система обзавелась множеством улучшений и полезных изменений. Темный режим, менеджер загрузок, поддержка внешних накопителей, расширенные возможности файлового менеджера — это лишь краткий перечень новых функций ОС. Все б...

Лучшие менеджеры загрузок для Android Загружайте файлы быстро и правильно! Сегодня для многих пользователей смартфон практически полностью заменил стационарный компьютер. И подчас мы скачиваем на свои гаджеты огромное количество файлов, что можно сделать и стандартными средствами. Хотя это не всегда удобно. Спец...

[Перевод] Что такое Strict Aliasing и почему нас должно это волновать? Часть 2 (ИЛИ каламбур типизации, неопределенное поведение и выравнивание, о мой Бог!) Друзья, до запуска нового потока по курсу «Разработчик С++», остается совсем немного времени. Пришло время опубликовать перевод второй части материала, в которой рассказывается о том, что такое ка...

Что такое RFID и для чего она используется? Если вы купили визитницу, бумажник или кошелек, на бирке которого (или на нем самом) сказано, что здесь есть функция блокировки RFID, вы, вероятно, зададитесь вопросом, а что это, вообще, за RFID такой и будут ли ваши кредитные и дебетовые карты в безопасности рядом с этой ...

[Перевод] Учебный курс по React, часть 13: компоненты, основанные на классах Сегодня мы публикуем перевод очередного занятия учебного курса по React. Оно посвящено компонентам, основанным на классах. Такие компоненты создают с использованием ключевого слова class. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функци...

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

Необычные системные вызовы на Linux Что видит программист, начиная работать с языком C? Он видит fopen, printf, scanf и ещё много других функций. Видит он и всякие open и mmap — казалось бы, зачем их выделять? Но, в отличие от первой группы, эти две функции при выполнении на ядре Linux являются системными в...

Google работает над ARCVM, новым способом запуска Android-приложений в Chrome OS В течение последних нескольких лет на многих устройствах Chromebook можно было установить магазин Google Play и запускать приложения для Android. Это дало Chrome OS возможность стать чем-то большим, нежели просто не очень популярной операционной системой, основанной на попу...

Вышел финальный релиз TensorFlow 2.0 Вчера 30 сентября Google объявил о выходе финального релиза TensorFlow 2.0. «TensorFlow 2.0 является ПО с открытым исходным кодом и поддерживается сообществом, которое говорит, что им нужна простая в использовании платформа, гибкая и мощная, которая поддерживает развертыв...

Google Play уведомляет пользователей о неиспользуемых ... Скачать приложение из магазина Google Play невероятно просто - с этим без труда может справиться даже ребенок. Именно этот факт и является причиной тому, что пользователи часто устанавливают больше приложений, чем нужно. В итоге, некоторые из них не используются месяцами! &n...

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

[Перевод] Нейросети и глубокое обучение: онлайн-учебник, глава 6, ч.1: глубокое обучение Содержание Глава 1: использование нейросетей для распознавания рукописных цифр Глава 2: как работает алгоритм обратного распространения Глава 3: ч.1: улучшение способа обучения нейросетей ч.2: почему регуляризация помогает уменьшать переобучение? ч.3: как выбрать гиперпара...

[Перевод] Создаём процедурные глобусы планет Искажения, бесшовный шум и как с ними работать. Генерируем планету Один из простейших способов генерации планеты — использование шума. Если мы решим выбрать его, то у нас есть пара возможных вариантов. Давайте рассмотрим каждый и определим лучший: Шум Перлина (Perlin Noi...

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

[Из песочницы] Сериализация данных на уровне базы Привет, Хабр! Сидел я как-то и пытался отдать фронту JSON с объектами недвижимости, у которых была масса зависимостей. На бэке стояла Symfony 4, knp pagination и JMSSerializer, ну в принципе стандартные вещи, но проблема в том, что когда ты пытаешься отдать объект со всеми ...

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

Использование werf для выката комплексных Helm-чартов Статья посвящена разработке Helm-чартов для Kubernetes с использованием готовых решений из репозиториев чартов. При таком подходе пользователь применяет рецепты сообщества или свои собственные, обеспечивая своевременное обновление типовых компонентов всех своих проектов и ...

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

[Перевод] Dart 2. Асинхронное программирование: футуры Асинхронное программирование: футуры Содержание Введение Что такое футура? Async — await Обработка ошибок Последовательное выполнение Future API Обработка ошибок Вызов нескольких функций, возвращающих футуры Что еще почитать? Что важно: Код в Dart работает в одном тре...

Основы реактивного программирования с использованием RxJS. Часть 2. Операторы и пайпы В предыдущей статье мы рассмотрели, что такое потоки и с чем их едят. В новой части мы познакомимся с тем, какие методы RxJS предоставляет для создания потоков, что такое операторы, пайпы(pipes) и как с ними работать. RxJS обладает богатейшим API. В документации описано б...

Veon закрывает свой «революционный» мессенджер и увольняет разработчиков Об этом директор по развитию бизнеса на корпоративном рынке другой "дочки" Veon - "Киевстара" - Евгений Кражан сообщил в интервью украинскому изданию "Лига.нет".Голландская газета Telegraph ранее уже писала о закрытии платформы Veon. По данным и...

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

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

[Из песочницы] Создание минимального Docker-контейнера для Go-приложений Привет, Хабр! Предлагаю вашему вниманию перевод статьи основателя сервиса Meetspaceapp Nick Gauthier «Building Minimal Docker Containers for Go Applications». Время чтения: 6 минут Существует множество, как официальных, так и поддерживаемых сообществом контейнеров для разл...

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

[Перевод] AWS показал Open Source средний палец От переводчика: мне кажется, заголовок слегка неточный и на самом деле средний палец показали ребятам из MongoDB, которая теперь не очень то и Open Source. Сегодня, Amazon AWS запустил продукт DocumentDB — новую базу данных, совместимую с API MongoDB. Компания описывает Doc...

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

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

Huawei полностью избавилась от американских компонентов в Mate 30 Pro и своих базовых станциях 5G Как пишет источник, компания Huawei заменила все компоненты, связанные с американскими технологиями, в своих базовых станциях 5G и смартфоне Mate 30 Pro. Хотя до разлада США и Китая американские компоненты повсеместно использовались Huawei, и полный отказ от них дался н...

Как превратить Galaxy S10 в Google Pixel Хотя Galaxy S10 и красивый смартфон, его программное обеспечение приходится по нраву далеко не всем. One UI претерпел глобальные изменения за последнее время и старается всячески заставить своих пользователей стереть неприятные воспоминания о печально известном лончере Touc...

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

Microsoft улучшает поддержку датчиков для Chromium в Windows 10 Последняя идея Microsoft для Chromium может принести пользу Google Chrome и новому Edge, предлагая улучшенную «совместимость, производительность и использование батареи» для датчиков в браузере. Говорят, что группа разработчиков Microsoft Edge работает над улучшением поддерж...

[Перевод] SVG фильтры 101 Это первая статья в серии об SVG фильтрах. Это руководство поможет понять, что это такое, и покажет, как использовать их для создания собственных визуальных эффектов. CSS в настоящее время предоставляет нам способ применения цветовых эффектов к изображениям, таких как насыщ...

[Перевод] Пошаговое руководство по настройке DNS-сервера BIND в chroot среде для Red Hat (RHEL / CentOS) 7 Перевод статьи подготовлен для студентов курса «Безопасность Linux». Интересно развиваться в данном направлении? Смотрите запись трансляции мастер-класса Ивана Пискунова «Безопасность в Linux в сравнении с Windows и MacOS» В этой статье я расскажу о шагах по настройке DNS-с...

W3C и FIDO Alliance завершили разработку веб-стандарта для безопасного входа без пароля Консорциум World Wide Web (W3C) и FIDO Alliance объявили, что спецификация Web Authentication (WebAuthn) теперь является официальным веб-стандартом. Как сказано в совместном пресс-релизе, «это улучшение является важным шагом вперед в деле повышения безопасности и ...

Python и FPGA. Тестирование В продолжение к первой статье, хочу на примере показать вариант работы с FPGA (ПЛИС) на python. В данной статье затрону подробнее аспект тестирования. Если фреймворк MyHDL позволяет людям, работающим на python, используя знакомый синтаксис и экосистему, заглянуть в мир FPGA,...

[Перевод] Структуры данных для программистов игр: bulk data Любому программисту будет полезно понимание различных структур данных и способов анализа их производительности. Но на практике мне ни разу не пригождались АВЛ-деревья, красно-чёрные деревья, префиксные деревья, списки с пропусками, и т.д. Некоторые структуры данных я исполь...

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

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

Drag-&-Drop компоненты для слепых пользователей? Вы шутите? Что объединяет Trello, Gmail, Aviasales и Google Keep? В каждом из них есть Drag-&-Drop-компоненты, которые можно перетаскивать мышкой. Использование этих компонентов делает сайты по-настоящему удобными, потому что в реальной жизни мы часто используем этот паттерн. Перед...

Первое знакомство с Home Assistant Home Assistant – популярное приложение с открытым исходным кодом для организации умного дома. Первый опыт автора в работе с Home Assistant основывается на попытке интеграции в него ‘умной рисоварки‘. Автор постарается описать основные компоненты и возможности данного прило...

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

[Перевод] Топ-10 самых распространенных ошибок, которые мне встречались в Go-проектах Этот пост — мой топ самых распространенных ошибок, которые встречались мне в Go-проектах. Порядок не имеет значения. Неизвестное значение Enum Давайте взглянем на простой пример: type Status uint32 const ( StatusOpen Status = iota StatusClosed StatusUnknown ) Здесь м...

[Перевод] Учебный курс по React, часть 27: курсовой проект В этой части перевода учебного курса по React вам предлагается создать генератор мемов. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: функциональные компоненты → Часть 3: файлы компонентов, структура проектов → Часть 4: родительские и дочер...

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

Как с Урала будут вывозить 82 000 тонн ядерных запасов СССР Впервые на этом объекте я побывал более 10 лет назад в качестве младшего научного сотрудника Института промышленной экологии УрО РАН. Мало кто за пределами Урала знает, но вот уже более 60 лет в 200 км от Екатеринбурга хранятся тысячи тонн радиоактивного монацита — запасов С...

Анализ производительности запросов в ClickHouse. Доклад Яндекса Что делать, если ваш запрос к базе выполняется недостаточно быстро? Как узнать, оптимально ли запрос использует вычислительные ресурсы или его можно ускорить? На последней конференции HighLoad++ в Москве я рассказал об интроспекции производительности запросов — и о том, что ...

Nvidia и VMware объявили о сотрудничестве Компании создали сервисы, которые упрощают миграцию приложений на базе ПО для виртуализации серверов vSphere и программных контейнеров в облако VMware Cloud on AWS.

[Из песочницы] Генерация звука на микроконтроллерах AVR методом волновых таблиц с поддержкой полифонии Микроконтроллеры AVR довольно дешевы и широко распространены. Наверно, с них начинает почти любой embedded разработчик. А среди любителей правит балом Arduino, сердцем которого обычно является ATmega382p. Наверняка многие задумывались: как можно заставить их звучать? Если п...

Edge Screen S9 1.6.3.5 При помощи Edge Screen S9 вы сможете одним нажатием получить доступ к избранным контактам, инструментам, диктофону, музыке, диспетчеру файлов, календарю и т.д. Основные функции : — настройка дескриптора  Вы можете установить область образцов самостоятельно. Настраив...

[Перевод] Настройка НА-кластера Kubernetes на «голом железе», мониторинг, логи и примеры использования. Часть 3/3 Часть 1/3 тут. Часть 2/3 тут. Всем привет! А вот и третья часть руководства «Kubernetes на «голом железе»! Я уделю внимание мониторингу кластера и сбору логов, также мы запустим тестовое приложение для использования предварительно настроенных компонентов кластера. Затем про...

Apple удалила 181 приложение из App Store после того, как 42 человека умерли от вейпа Apple встала на защиту вашего здоровья Apple иногда устраивает волны «чисток» приложений в App Store, но как правило, попавшие в немилость программы являются либо клонами существующих продуктов, либо приложениями для рассылки спама. Иногда удаление связано с повторением функ...

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

[Перевод] Windows Notification Facility: cамая недокументированная поверхность атаки Под катом представлен перевод презентации "The Windows Notification Facility: The Most Undocumented Kernel Attack Surface Yet", представленной Alex Ionescu и Gabrielle Viala на конференции BlackHat 2018. О чем пойдет речь в публикации Что такое Windows Notification Facilit...

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

Объекты культурного наследия уходят в электронный архив Корпорация ЭЛАР завершила первый этап проекта по созданию информационной системы «Объекты культурного наследия Челябинской области». В рамках работ внедрен электронный архив на базе отечественной ECM-платформы «ЭЛАР Контекст», обеспечивающий автоматизацию учета сведений об о...

Всё, что нужно знать о Windows 10X Компания Microsoft представила новую версию Windows 10, которая была перестроена с нуля с использованием Windows 10 Core Technologies. Фактически это новая редакция Windows 10, основанная на Windows Core OS, модульной версии Windows 10, позволяющей создавать операционные си...

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

[Из песочницы] Мой подход к реализации делегатов в C++: вызов функции с неизвестными параметрами во время выполнения Предыстория Мне нравится язык C++. Я бы даже сказал, что это мой любимый язык. Кроме того, для своих разработок я использую технологии .NET, и многие идеи в нём, по моему мнению, просто восхитительны. Однажды мне пришла в голову идея – как реализовать некоторые средства рефл...

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

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

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

[recovery mode] VueJs + MVC минимум кода максимум функциональности Добрый день. Я много лет использовал WPF. Паттерн MVVC наверное один из наиболее удобных архитектурных паттернов. Я предполагал что MVC почти то же самое. Когда я на новом месте работы я увидел использование MVC на практике, то был удивлен запутанностью и одновременно отсут...

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

Matrix 1.0 — релиз протокола децентрализованного обмена сообщениями 11 июня 2019 разработчики Matrix.org Foundation объявили о релизе Matrix 1.0 — протокола для реализации федеративной сети, построенной на основе линейной истории событий (events) внутри ациклического графа (DAG). Самым распространённым способом использования протокола являет...

7 альтернатив Air Drop для Android Большинство из нас сегодня воспринимает некоторые технологии, которые еще 10-15 лет назад казались невероятными, как должное. Например, пользователи устройств от компании Apple вполне успешно передают данные при помощи Airdrop. Это быстро, удобно и безопасно. Однако же не в...

Emporia привезет на MWС 2019 четыре новинки По данным опроса, проведенного в прошлом году, 31% людей старше 65 лет и 50% — в возрасте от 65 до 70 лет имеют мобильный телефон с доступом в Интернет. В то же время 85% пользователей смартфонов старше 65 лет используют WhatsApp или другие службы обмена сообщения...

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

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

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

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

Вместо Android: Google запустила сайт об ОС Fuchsia Никто не знает, сколько тайных проектов в данный момент развивает Google, но даже если и узнает, нет никаких гарантий, что он представляет собой именно то, чем кажется. Именно так было в случае с проектом Fuchsia, которому прочили роль преемника Android, Wear OS и Chrome OS...

[Перевод] Конференция DEFCON 20. Захват за 60 секунд: от гостевой учётной записи до администратора домена Windows. Часть 1 Привет, я Зак Фейзел, я буду говорить быстро, если будет слишком быстро, можете меня притормозить. Днём я пентестер, ночью диджей и фотограф, меня можно найти в «Твиттере» по нику @zfazel. Люди всегда спрашивают меня насчёт дипломов. Я не из тех людей, которые перечисляют ку...

Криптографический АРМ на базе токенов PKCS#11. Электронная подпись. Часть 2 В первой части нашего повествования мы показали как, имея на руках криптографический токен с поддержкой российской криптографии, создать запрос на получение сертификата, получить и установить сертификат на токен, проверить электронную подпись сертификата и его валидность по ...

Из магазина Google Play удалят приложения, требующие доступ к журналу вызовов и сообщений Компания Google сообщила, что на этой неделе из фирменного магазина Google Play Store будут удалены некоторые приложения. ***

Нейросеть создает резюме по фотографии Прорывная технология в интернет-рекрутменте стала возможна после анализа свыше 25 миллионов фото из резюме, которые есть в базе Superjob. Так, с вероятностью 98% алгоритм Superjob может определить наличие или отсутствие у пользователя высшего образования, его пол, возраст и ...

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

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

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

Broadcom BCM56880 — коммутатор Ethernet, выпускаемый по нормам 7 нм и программируемый на языке высокого уровня Компания Broadcom на этой неделе представила микросхему StrataXGS Trident 4 BCM56880, в которой реализованы функции коммутатора Ethernet. К ее достоинствам производитель относит большую пропускную способность — от 2,0 до 12,8 Тбит/с, «высочайшую в отрасли ск...

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

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

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

Сокращение рисков downtime благодаря архитектуре Shared Nothing Тема отказоустойчивости в системах хранения данных всегда является актуальной, поскольку в наш век повсеместной виртуализации и консолидации ресурсов СХД является тем звеном, отказ которого приведет не просто к заурядной аварии, а к длительным простоям сервисов. Поэтому совр...

Как изменить тему на Samsung Galaxy Одной из вещей, которая нравится пользователям в платформе Android, является то, что она намного больше поддаётся всяческой настройке и кастомизации, чем другие ОС. Смартфоны Samsung, работающие под управлением One UI, фирменным ПО южнокорейского производителя, созданного н...

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

Некоторые аспекты мониторинга MS SQL Server. Рекомендации по настройке флагов трассировки Предисловие Довольно часто пользователи, разработчики и администраторы СУБД MS SQL Server сталкиваются с проблемами производительности БД или СУБД в целом, поэтому весьма актуальным является мониторинг MS SQL Server. Данная статья является дополнением к статье Использование ...

[Перевод] Топ-65 вопросов по SQL с собеседований, к которым вы должны подготовиться в 2019 году. Часть I Перевод статьи подготовлен для студентов курса «MS SQL Server разработчик» Реляционные базы данных являются одними из наиболее часто используемых баз данных по сей день, и поэтому навыки работы с SQL для большинства должностей являются обязательными. В этой статье с вопрос...

Microsoft убирает синхронизацию видеопроектов приложения «Фотографии» с OneDrive В приложении «Фотографии» в Windows 10 есть видеоредактор, который позволяет обрезать видео или создавать собственные видеопроекты или слайд-шоу. Видеоредактор немного похож на Windows Movie Maker и может также автоматически создавать слайд-шоу с вашими фотографиями.Видеоред...

Непрерывное профилирование в Go pprof — основной инструмент профилирования в Go. Профилировщик включен в стандартную библиотеку Go и про него, за годы, написано уже очень много. Чтобы подключить pprof в существующее приложение нужно просто добавить одну строчку кода: import _ “net/http/pprof” В HTTP-сервер...

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

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

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

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

Ростех создает инфраструктуру «Безопасного города» в Тверской области Национальный центр информатизации (входит в Ростех) завершил проект по развитию системы вызова экстренных оперативных служб по единому номеру «112» в Тверской области.

[Перевод - recovery mode ] Руководство по SQL: Как лучше писать запросы (Часть 2) Продолжение статьи Руководство по SQL: Как лучше писать запросы (Часть 1) От запроса к планам выполнения Зная, что антипаттерны не статичны и эволюционируют по мере того, как вы растете как разработчик SQL, и тот факт, что есть много, что нужно учитывать, когда вы задумыва...

Голосовой помощник Cortana удалят из умного термостата GLAS В прошлом умный термостат GLAS, созданный компанией Johnson Controls, рекламировался как единственный в мире термостат на базе Cortana. Но времена меняются, и теперь Johnson Controls готовит обновлённое программное обеспечение, которое полностью удалит Cortana с устройства....

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

[Из песочницы] Оформление PL/SQL кода и формирования PL/SQL документации (pldoc), аналогично JavaDoc Внутри команды нужно разработать свои стандарты и правила, а оформление документации — это одно из главных правил работы в команде. Ну, поехали… Ссылка на сам инструмент pldoc. По ссылки хорошо все расписано как работать и формировать документацию, но чтобы было проще приве...

Июльские патчи Oracle устранили более 300 угроз Корпорация Oracle выпустила очередной пакет обновлений безопасности (Critical Patch Update, CPU), закрыв в своих продуктах 319 уязвимостей. Свыше 50 багов получили высшую оценку угрозы, набрав 9,8 балла по шкале CVSS. Больше всего заплаток пришлось на приложения Oracle Finan...

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

Google Play начал советовать, какие приложения нужно удалить Вы когда-нибудь пытались сосчитать, сколько приложений установлено на вашем смартфоне? 10, 20, 30, а может быть, больше 50 – неважно, ведь среди них все равно найдутся те, которые вы запускаете не чаще одного раза в год, а то реже. Казалось бы, вполне логично удалить их и н...

[Перевод] Сложное модульное архитектурное окружение в UE4 Тайлер Анлауф подготовил подробный анализ модульного окружения ROME: Church of Sant’Ivo созданного им в UE4 и 3ds Max. В статье он рассказывает о предварительном черновом плане (blockout), модульной сборке, освещении, постобработке и многом другом. ROME: Church of Sant’Ivo...

В органах власти появятся ИТ-архитекторы, отвечающие за единообразие ГИС Это предусмотрено в постановлении правительства, проект которого опубликован на сайте regulation.gov.ru. Документ находится на стадии независимой антикоррупционной экспертизы, которая продлится до 20 августа.Как указано в пояснительной записке, на данный момент в российск...

Бета-версия iOS 12.2 предоставляет более детальный контроль времени использования смартфона Помимо намеков на новые модели iPad и iPod Touch, бета-версия iOS 12.2 также добавляет небольшую, но полезную функцию Screen Time Downtime. В iOS 12.2 пользователи могут устанавливать промежутки времени, в течение которых использование смартфона ограничено только базовыми во...

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

Новым iPhone и iPad — новые антенны Аналитик Минг-Чи Куо (Ming-Chi Kuo) утверждает, что в этом году Apple откажется от использования антенн, созданных на базе технологии LCP (жидкокристаллический полимер). Такой материал был использован для антенн iPhone XS, iPhone XS Max и iPhone XR. В новых смартфонах 2...

[Перевод] Как вы избавляетесь от неиспользуемого CSS-кода? Часть 2 Сегодня публикуем вторую часть перевода материала о борьбе с неиспользуемым CSS-кодом. → Первая часть Читать дальше →

Neutralinojs — что ты такое? Или UNIX way там, где не ждали Недавно я совершенно случайно наткнулся на простую рекламную заметочку "Neutralinojs — альтернатива Electron, потребляющая меньше памяти", рассказывающую о том, что есть такая крутая вещь как Neutralinojs. Заметочка, как и следует ей быть, совсем короткая и не несёт никакой ...

Архитектурный шаблон “Macro Shared Transactions for Microservices” Автор: Денис Цыплаков, Solution Architect, DataArt Постановка задачи Одной из проблем при построении микросервисных архитектур и особенно при миграции монолитной архитектуры на микросервисы часто становятся транзакции. Каждый микросервис отвечает за собственную группу фун...

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

[Из песочницы] Кросс-компиляция Scala в Gradle проекте Для Scala проектов довольно распространённым является предоставление бинарных артефактов скомпилированных под несколько версий Scala компилятора. Как правило для целей создания нескольких версий одного артефакта в сообществе принято использовать SBT, где эта возможность есть...

Zimbra Collaboration Suite и MS Exchange на одном домене Несмотря на то, что процесс миграции с MS Exchange на Zimbra при помощи ZCS Migration Wizard довольно прост и очень быстро выполняется, он подойдет далеко не каждому предприятию. Не каждая компания может позволить себе броситься в омут с головой, в одночасье сменив один из г...

Утекли скриншоты нового приложения Xbox для Windows 10 Компания Microsoft создаёт совершенно новое приложение Xbox для Windows 10, которое позволит пользователям загружать и устанавливать игры, являющиеся частью подписки Xbox Game Pass, а также общаться с друзьями в Xbox при помощи текстовых и голосовых сообщений. Сообщается, ч...

Лучшие приложения для дизайна и благоустройства дома на Андроид Благоустройство и дизайн дома – задача серьёзная, которая может потребовать от вас немало времени и средств. Ваш смартфон не может сделать всю работу за вас, но может помочь, облегчив процесс. Лучшие приложения для дизайна и благоустройства дома для Android-смартфонов: Buil...

Резервирование в Kubernetes: оно существует Меня зовут Сергей, я из компании ITSumma, и я хочу вам рассказать, как мы подходим к резервированию в Kubernetes. В последнее время я много занимаюсь консультативной работой по внедрению разнообразных devops-решений для различных команд, и, в частности, плотно работаю по про...

Простой способ создания голосового оповещения в системе Домашней автоматизации («Умный дом») Протестировав консольный SIP клиент Linphonec, увидел в нём возможность простого и быстрого способа реализации оповещения голосом на мобильный телефон, для домашней системы автоматизации. Думаю данный способ подойдёт для многих DIY систем автоматизации своего дома, приведу ...

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

У дизайнера новая идея? Что может быть проще Привет, хабровчанин! Дизайнеры люди идейные, а заказчики с их бизнес-требованиями, тем более. Представь, что ты сваял свой самый лучший UIkit на свете на самом крутом %вставить свое% JS фреймворке. Казалось бы, там есть все, что нужно проекту. Теперь-то ты сможешь пить коф...

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

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

Вышла новая ОС на базе Android без сервисов Google Разработчик операционной системы /e/ Когда Huawei на презентации флагманского Mate 30 объявила, что смартфон будет поставляться без сервисов Google, по всему было видно, что компании неприятно об этом говорить. Несмотря на то что китайцы подготовились к этому как могли, ни о...

APEX станет главным нововведением Android Q. Что это такое? Android Q покажут, как обычно, на Googe I/O. Уже сейчас известно, что в систему встроят полноценную темную тему, а все стандартные приложения компании к моменту выхода новой версии Android будут обновлены под данное нововведение. Однако тёмная тема — не главное в Andr...

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

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

[Перевод] Создание игры для SEGA Mega Drive/Genesis в 2019 году Даже сегодня люди по-прежнему продолжают создавать новые игры для старых консолей. Мы называем их «homebrew». Иногда это способ реализовать детскую мечту о создании игры для консоли, на которой играл ребёнком. Но кроме того это ещё и интересная задача для любого дизайнера и...

GraphQL Voyager как инструмент для поиска уязвимостей В настоящее время все больше компаний начинают использовать GraphQL. Это относительно новая технология (если быть более точным, то это язык запросов), которая призвана решить существующие проблемы REST. Если вы еще не знакомы с GraphQL, то рекомендую начать с ресурсов: ...

Яндекс.Директ: как настроить самостоятельно Пошаговое руководство по установке и использованию Яндекс.Директа. Обновление 25.01.2019

Синие киты мигрируют, больше полагаясь на память: исследование Исследование провела группа специалистов под руководством Бриан Абрамс (Briana Abrahms) из Юго-Западного центра изучения рыболовства Национального управления океанических и атмосферных исследований. Ученые проанализировали миграции синих китов, живущих в северной части Тихог...

[Перевод] Использование и защита legacy в современном мире Унаследованная инфраструктура до сих пор является важной частью предприятий во многих отраслях промышленности: в медицинских организациях, которые всё ещё используют систему «Windows XP», в базах данных «Oracle», которые работают на старых серверах операционной системы «So...

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

38 функций в WhatsApp, о которых вы не знали (Часть 3) Мессенджеры, согласно некоторым данным, являются одним из самых популярных видов коммуникации между владельцами смартфонов. Некоторым пользователям приложений для обмена сообщениями вполне достаточно для того, чтобы общаться, почти не прибегая к услугам сотовых операторов. ...

MOXA Nport — взгляд изнутри Серверы сбора данных по последовательным портам MOXA Nport и им подобные — в настоящее время являются стандартом де факто в области построения систем передающих или принимающих данные через интерфейсы RS-232,RS-485 и RS-422. Счетчики электроэнергии, управляемые вентили и зад...

Apache, ViewState&Deserialisation В данной статье рассмотрим уязвимость на основе подмены сериализованного Java-объекта ViewState и метод её эксплуатации на примере web-приложения виртуальной машины с HackTheBox, использующей технологию Apache MyFaces. Читать дальше →

[Перевод] Объёмный рендеринг в WebGL Рисунок 1. Пример объёмных рендеров, выполненных описанным в посте рендерером WebGL. Слева: симуляция пространственного распределения вероятностей электронов в высокопотенциальной молекуле белка. Справа: томограмма дерева бонсай. Оба набора данных взяты из репозитория Open ...

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

Apple призывает делать отдельные приложения для Apple Watch Apple Watch Series 4 с WatchOS 6 Apple начала рассылать разработчикам письма с предложением начать разрабатывать и публиковать приложения не в App Store, а отдельно в Apple Watch App Store. Таким образом компания стимулирует создателей программ разрабатывать приложения не то...

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

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

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

Huawei нашла способ вернуть сервисы Google в свои новые смартфоны Honor 9X — пример того, как можно обойти правила Google Кажется, уже все знают про то, что США наложили на Huawei санкции, запретив ей сотрудничать с американскими предприятиями. Из-за этого китайский производитель лишился возможности устанавливать на свои смартфоны се...

Memcached plugin от MySQL: инструкция по осторожному применению Здравствуйте! Меня зовут Максим Матюхин, я PHP-программист Badoo. В своей работе мы активно используем MySQL. Но иногда нам не хватает её производительности, поэтому мы постоянно ищем возможности ускорить её работу. В 2010 году Yoshinori Matsunobu представил NoSQL-плагин ...

Apple работает над «новым поколением медиа-приложений для Windows» По всей видимости, компания Apple разрабатывает набор мультимедийных приложений для Windows 10, которые могут заменить собой приложение iTunes на платформе. На это указывает открытая вакансия инженера-программиста, обнаруженная на портале LinkedIn. Приложение iTunes по-преж...

[Из песочницы] За что я ненавижу Eloquent ORM Всем привет. Хочу перед вами исповедаться и рассказать немного о том, что я чувствую, когда разрабатываю на Laravel. Нет, не подумайте, я обожаю этот фреймворк и безумно благодарен команде, которая его создала и поддерживает, они делают крайне крутое дело и, на мой взгляд, ...

Twitter для Mac теперь доступен в Mac App Store Когда Apple объявила о выпуске macOS Catalina на Всемирной конференции разработчиков и представила свою новую функцию Catalyst, которая позволит легко переносить приложения iPad на Mac, Twitter был одним из предстоящих приложений. «MacOS Catalina» была запущена в понедельник...

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

Анонсирована Space Grunts 2: пошаговый рогалик c карточными сражениями В начале 2016 года разработчик Orangepixel (Gunslugs: Rogue Tactics) выпустил пошаговый рогалик Space Grunts. Главной фишкой игры было то, что она создана для тех, кто не любит пошаговые рогалики. Автор оставил в механике пошаговость, но ускорил все остальное, сделав проект...

Разборка показала: бюджетные флагманы Google Pixel 3a и Pixel 3a XL чинятся легче, чем любые другие смартфоны Google только-только представила смартфоны Pixel 3a и Pixel 3a XL, а специалисты iFixit уже протестировали эти модели на ремонтопригодность. И пришли к очень позитивному выводу: починить смартфоны проще, чем любые другие современные модели. На деле Pixel 3a и Pixel 3a ...

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

Ещё один повод обновить смартфон Samsung до One UI на базе Android 9 Pie Оболочка One UI с Android 9 Pie в основе направлена на упрощение жизней пользователей. Например, разблокировать флагманский смартфон Samsung теперь можно без нажатий кнопок — достаточно поднять его с поверхности и показать свои глаза. Функция Lift to Wake автоматически разб...

7 способов прервать поток телефонного спама прямо сейчас Представьте картину: вам кто-то звонит, вы снимаете трубку, а с другого конца провода вы слышите голос: «Здравствуйте, вы имеете право на бесплатную /тут подставьте любую услугу по выбору/ пожалуйста, не вешайте трубку». Знакомая картина? И хорошо, если в такой ситуации вам...

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

this и ScopeChain в EcmaScript Привет, Хабр! В предыдущей статье мы рассматривали общую теории ООП в применении к EcmaScript и популярное заблуждение начинающих разработчиков относительно отличия ООП в JS и классических языках. Сегодня мы поговорим о двух других не менее важных концепциях EcmaScript, а...

Ускорение программы для синтезированного процессора комплекса Redd без оптимизации: замена тактового генератора До сих пор мы рассматривали тему, как повысить быстродействие системы, применяя какие-то интенсивные методы. Но на самом деле, есть методы и экстенсивные. Сейчас мы работаем на тактовой частоте 50 МГц, что связано с использованием компонента из набора для университетской про...

Миграция в облако на базе VMware Selectel, провайдер IT-инфраструктуры для бизнеса, рассказывает о процедуре расширения сети предприятия в облако провайдера посредством компонента VMware NSX® Edge™ Gateway Standalone, а также детально разобрал виды миграции виртуальных машин...

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

Квантовые вычисления в играх, или сходим с ума по-серьезному Если живешь среди сумасшедших, надо и самому научиться быть безумным Вы когда-нибудь пробовали «научиться быть безумным»? Нетривиальная задачка. Даже нормальной методики не найдешь, ибо каждый сходит с ума по-своему. Моя первая попытка: теория заговора. Теория не предполага...

Microsoft подтвердила информацию о прослушке части звонков Skype и запросов Cortana Компания Microsoft подтвердила, что сотрудники и подрядчики могут прослушивать аудиозаписи звонков Skype и запросов Cortana, а также обновила политику конфиденциальности, явно указав, что третьи лица могут прослушивать записи для улучшения услуг. Ранее в политике указывалос...

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

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

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

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

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

Удалённое управление эмулятором Fceux с помощью Python В статье я опишу, как сделать эмулятор NES управляемым удалённо, и сервер для удалённой отправки команд на него. Зачем это нужно? Некоторые эмуляторы различных игровых консолей, в том числе и Fceux, позволяют писать и запускать пользовательские скрипты на Lua. Но Lua – пл...

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

Как соцсети поглощают наше внимание: большое исследование про экранное время В конце июля я попросил подписчиков @PonchikNews прислать анонимно скриншот своего экрана Screen Time с информацией об использовании мобильных приложений за последние 7 дней. Проанализировав эти экраны, я пришел к любопытным гипотезам и выводам. Делюсь ими сразу же, в TL;DR...

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

[Перевод - recovery mode ] Тюнинг производительности запросов в PostgreSQL Настройка производительности базы данных — разработчики обычно либо любят это, либо ненавидят. Я получаю удовольствие от этого и хочу поделиться некоторыми методами, которые я использовал в последнее время для настройки плохо выполняющихся запросов в PostgreSQL. Мои методы ...

[Перевод] Заменяют ли Redux хуки React? С тех пор, как в React появились хуки, возникает много вопросов о том, способны ли они заменить Redux. Я полагаю, что хуки и Redux имеют мало общего между собой. Хуки не дают нам неких новых удивительных возможностей по работе с состоянием. Они, вместо этого, расширяют API,...

Unity 2019.1 - новые возможности для разработчиков Android-игр Unity - это самый популярный игровой движок, используемый разработчиками Android-игр. Он позволяет создавать 2D- и 3D-окружение, задействуя сложную игровую механику, а его последняя версия - Unity 2019.1 - стала ещё более мощной и адаптивной. Возможности Unity 2019.1 впервы...

Рост в опоре на Open Source «Ростелеком» и Arenadata.io поделились опытом использования открытого ПО распределенной обработки и анализа данных в корпоративной среде. &laquo;Ростелеком&raquo;, все больше переориентируясь с традиционного на цифровой бизнес, активно ведет исследования в области...

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

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

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

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

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

Делаем действительно умный поиск: пошаговый гайд Поиск в корпоративной информационной системе — уже от самой этой фразы вязнет во рту. Хорошо если он вообще есть, о положительном user experience можно даже не задумываться. Как перевернуть отношение пользователей, избалованных поисковыми системами, и создать быстрый, точный...

[Перевод] Серверный рендеринг в бессерверной среде Автор материала, перевод которого мы публикуем, является одним из основателей проекта Webiny — бессерверной CMS, основанной на React, GraphQL и Node.js. Он говорит, что поддержка многоарендной бессерверной облачной платформы — это дело, которому свойственны особенные задачи....

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

4 раздражающие проблемы Android и как с ними справиться Делаем Android лучше! Давайте будем честны с самими собой: идеальной мобильной операционной системы не существует. Можно сколь угодно долго спорить о том, что лучше — Android или iOS, но неоспоримый факт всегда будет лишь один — и там, и там, есть раздражающие мо...

Возможно ли без Redux? На сегодняшний день можно найти уйму позиций, где требуется react/redux. React прекрасен, вопросов нет. Вопрос к Redux — возможно ли без него. Если погуглить чуть-чуть, найдется добротная статья на хабре (https://habr.com/ru/post/350850/), где автор задается таким же вопросо...

[Перевод] Настройки аутентификации в Veeam Backup for Microsoft Office 365 v3 В недавно выпущенной версии 3.0 решения Veeam Backup for Microsoft Office 365, помимо прочих новинок, поддерживается современный способ аутентификации при работе с облачными данными. В нем задействованы аутентификация с использованием приложения Azure и сервисной учетной зап...

Криптографические токены PKCS#11. Графическая утилита «с функцией подписания и добавлением метки времени». Часть 1 В комментариях к статье «Использование механизмов криптографических токенов PKCS#11 в скриптовых языках» читатель kovserg написал: «С нетерпением ждём статью с функцией подписания документа и добавлением метки времени». Еще раньше другой участник хабра pas писал о том, что б...

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

Сбалансированные двоичные деревья поиска: реализация на Julia Иллюстрация из работы Г.М. Адельсон-Вельского и Е.М. Ландиса 1962 года Деревья поиска — это структуры данных для упорядоченного хранения и простого поиска элементов. Широко применяются двоичные деревья поиска, в которых у каждого узла есть только два потомка. В этой статье ...

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

Как установить Google Play и другие сервисы Google на смартфоны Huawei Huawei Mate 30 не останется без сервисов Google Когда США внесли Huawei в список угроз национальной безопасности страны, закрыв ей доступ к сервисам Google и другим американским разработкам, мало кто верил, что это всерьёз. Многие до последнего ждали, что правительство США с...

Как мы в IntelliJ IDEA ищем лямбда-выражения Важной возможностью любой IDE является поиск и навигация по коду. Один из часто используемых вариантов поиска на языке Java — поиск всех реализаций данного интерфейса. Часто такая функция называется иерархией типов (Type Hierarchy) и выглядит как на картинке справа. Перебира...

Поиск задач в JIRA (простым языком). Часть 2: Продвинутый поиск Структуру JQL-запросов без примеров сложно понять специалистам, не знакомым ранее с JIRA. Мы уже успели рассказать про быстрый и базовый поиск. Теперь же прейдем к самому мощному из трех методов — к продвинутому поиску. В этом режиме вы можете указывать критерии, которые ...

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

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

Фотополимерный 3D-принтер из бытового видеопроектора создает объекты без слоев Принципиально иной подход к фотополимерной 3D-печати, разработанный в Калифорнийском университете в Беркли, позволяет создавать 3D-принты за несколько минут и дополнять 3D-печатными деталями существующие объекты. Читать дальше →

5 функций Android 10, которые Google скопировала у iPhone Справедливости ради отметим, что и Apple иногда тоже «подсматривает» некоторые фишки у Android. Но не в этот раз С выхода Android 10 прошло совсем не так много времени и пользователи устройств, на которых уже доступно обновление, вовсю устанавливают себе новую верс...

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

Крейг Федериги пообещал, что экран вызова Siri будет изменен Несмотря на большое количество разных изменений, которые принесла с собой iOS 13, многие пользователи остались недовольны тем, что Apple не слишком сильно усовершенствовала интерфейс системы. К примеру, владельцы iPhone считают, что пришло время переработать стандартную звон...

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

Иструменты Node.js разработчика. Очереди заданий (job queue) При реализации бэка веб-приложений и мобильных приложений, даже самых простых, уже стало привычным использование таких инструментов как: базы данных, почтовый (smtp) сервер, redis-сервер. Набор используемых инструментов постоянно расширяется. Например, очереди сообщений, суд...

Как создавать мемы на Android Создавать мемы на смартфоне — легко! Знаете ли вы, что мемы, которые так популярны в социальных сетях, по одной из теорий, были созданы Гарри Фрисом в 1970-х годах? Он любил фотографировать своих кошек, а затем придумывал к фотографиям забавные надписи и создавал таким...

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

[Перевод] Использование Golang для создания микросервисов в The Economist: ретроспектива Всем привет! Уже 28 мая мы запускаем первую группу по крусу «Разработчик Golang». И сегодня делимся с вами первой публикацией приуроченной к запуску этого курсу. Поехали. Ключевые выдержки The Economist требовалось больше гибкости для распространения контента на все бол...

Мобильные сети 4G и 5G позволяют следить за пользователями Одна из тенденций в мире мобильной индустрии в текущем году, о которой мы последнее время нередко говорим, – сети нового поколения 5G. Любая технология, а особенно если она нова, подвержена рискам извне. Не избежали этой участи новые чипсеты для работы с 5G. Исследователи в...

Работа с камерой во Flutter Возможность задействовать камеру существует во многих приложениях, и мы все регулярно пользуемся ею. Во Flutter мы можем реализовать работу с камерой с помощью двух официальных плагинов: camera image-picker Между ними – заметная разница, и использовать их стоит по ситуации...

Microsoft и Warner Bros. записали фильм «Супермен» на кварцевом стекле Объём сохраняемых данных в «облаках» продолжает увеличиваться, и их долгосрочное хранение становится весьма серьёзной проблемой при использовании существующих технологий хранения. Чтобы избежать потери данных, их приходится многократно перезаписывать на новые носители. Имен...

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

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

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

Windows 10 20H1 улучшает «Режим разработчика» и добавляет поддержку MSIX Подобно другим платформам, таким как Android, Windows 10 также позволяет пользователям загружать приложения (APPX/MSIX) за пределы магазина Microsoft Store. Если вы включите «Неопубликованные приложения» в Windows 10, вы можете установить приложения, которые вы создали или з...

Как смотреть фильмы из Google Drive на своём Chromecast Медиаплеер Google Chromecast — это отличный способ удобного просмотра фильмов с различных устройств на большом экране телевизора. Но хранить видеофайлы на нескольких устройствах очень сложно — проще использовать в качестве собственной онлайн-фильмотеки Google Ди...

В России создадут приложение для оценки состояния двигателя по звуку НП «ГЛОНАСС», оператор системы вызова экстренных оперативных служб Эра-Глонасс, разрабатывает мобильное приложение, которое сможет проверить состояние мотора автомобиля по его звуку. 

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

noexcept-ctcheck или несколько простых макросов, чтобы компилятор помогал при написании noexcept кода При разработке на C++ время от времени приходится писать код, в котором исключения не должны возникать. Например, когда нам нужно написать не бросающий исключений swap для собственных типов или определить noexcept move-оператор для своего класса, или вручную реализовать нетр...

Вулканический поросенок, или SQL своими руками Сбор, хранение, преобразование и презентация данных — основные задачи, стоящие перед инженерами данных (англ. data engineer). Отдел Business Intelligence Badoo в сутки принимает и обрабатывает больше 20 млрд событий, отправляемых с пользовательских устройств, или 2 Тб входя...

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

Видео: учёные из MIT сделали автопилот более похожим на человека Создание автомобилей с автопилотом, способным к принятию решений подобно человеку, является давней задачей таких компаний, как Waymo, GM Cruise, Uber и других. Intel Mobileye предлагает математическую модель Responsibility-Sensitive Safety (RSS), она описывается компанией ка...

[recovery mode] Что такое Cordentity? [Перевод статьи] Cordentity — это приложение Corda (CorDapp) позволяющее использовать возможности технологии Self Sovereign Identity (SSI) другим CorDapps. Другими словами, Cordentity = Corda + Identity. Мы рады объявить, что теперь Cordentity является проектом Hyperledger Labs с открытым и...

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

Использование Liquibase для управления структурой БД в Spring Boot приложении. Часть 2 В предыдущей части мы разобрались с основными возможностями Liquibase и написали базовый пример Spring boot приложения, который использует Liquibase для инициализации БД. Полный код базового приложения можно увидеть тут. В этой статье мы поговорим про liquibase-maven-plugin ...

Как использовать функцию Motion Sense на Google Pixel 4 Google Pixel 4 имеет довольно интересные возможности по использованию Google в этом году действительно оказалась щедра на нововведения. Свеженький Google Pixel 4 буквально набит ими практически под завязку. Но самой, пожалуй, интересной является опция под названием Motion Se...

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

[Перевод] Как была устроена графика NES Выпущенная в 1983 году домашняя консоль Nintendo Entertainment System (NES) была дешёвой, но мощной машиной, достигшей феноменального успеха. При помощи блока обработки изображений (Picture Processing Unit, PPU) система могла создавать достаточно впечатляющую по тем времена...

В России создали мобильный дата-центр на базе суперкомпьютера Работа МЦОД строится на использовании компактных энергоэффективных суперкомпьютеров производства концерна "Вега" холдинга "Росэлектроника". При параметрах 1900х1350х1000 мм они позволяют достичь рекордной для таких размеров пиковой производительности в 2,...

СП Ростеха и ГЛОНАСС создаст автоматизированную систему оценки безопасности на дорогах России Она будет основана на цифровой обработке больших данных в режиме онлайн и призвана заменить существующие методы оценки дорожно-транспортной обстановки.

Экс-цензор App Store: Apple боится приложений, которые заменяют ее собственные Apple предъявляют много претензий. Одни ругают компанию за излишне высокие цены на фирменную продукцию. Другие высказывают недовольство политикой конфиденциальности. А третьи – как правило, это разработчики – готовы подавать на Apple в суд, чтобы доказать, что та ущемляет и...

4 способа спрятать приложения на вашем Android-смартфоне А вы знали, что на вашем Android-устройстве можно спрятать программы? Иногда было бы полезно спрятать некоторые приложения на вашем смартфоне или планшете от посторонних глаз. Например, убрать подальше жестокие игры, если ваш смартфон время от времени берут в руки дети. Или ...

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