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

RESTinio — это асинхронный HTTP-сервер. Простой пример из практики: отдача большого объема данных в ответ Недавно мне довелось поработать над приложением, которое должно было контролировать скорость своих исходящих подключений. Например, подключаясь к одному URL приложение должно было ограничить себя, скажем, 200KiB/sec. А подключаясь к другому URL — всего 30KiB/sec. Самым инте...

RESTinio — это асинхронный HTTP-сервер. Асинхронный Пару лет назад мы опубликовали RESTinio — свой небольшой OpenSource C++фреймворк для встраивания HTTP-сервера в C++ приложения. Мегапопулярным за это время RESTinio не стал, но и не потерялся. Кто-то выбирает его за "родную" поддержку Windows, кто-то за какие-то отдельные фи...

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

[Перевод] Монада «Maybe» через async/await в C# (без Task-oв!) Обобщенные асинхронные типы возвращаемых значений — это новая возможность появившаяся в C# 7, которая позволяет использовать не только Task в качестве возвращаемого типа асинхронных (async/await) методов, но также и любые другие типы (классы или структуры), удовлетворяющие ...

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

[Из песочницы] Немного о порождающих шаблонах проектирования Тема шаблонов проектирования достаточно популярна. По ней снято много роликов и написано статей. Объединяет все эти материалы «анти-паттерн» Ненужная сложность (Accidental complexity). В результате примеры заумные, описание запутанное, как применять не понятно. Да и главная ...

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

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

[Из песочницы] Опыт применения Coroutines и Retrofit2 Что это? Кто еще не читал документацию — настоятельно рекомендую к ознакомлению. Что пишет джетбрейнс: Сопрограммы упрощают асинхронное программирование, оставив все осложнения внутри библиотек. Логика программы может быть выражена последовательно в сопрограммах, а базовая б...

[recovery mode] Асинхронная библиотека для работы с API Mikrotik Категорически приветствую. Недавно мне понадобилось поработать с Mikrotik через его API. Вроде бы ничего примечательного, есть официальная библиотека , есть еще на гитхабе обёртка, но вот беда — мне надо было работать асинхронно через asyncio и использованием плюшек async/aw...

Архитектурный шаблон «Строитель» во вселенной «Swift» и «iOS»/«macOS» В этот раз я бы хотел немного поговорить о еще одном порождающем шаблоне проектирования из арсенала «Банды четырех» – «Строителе» («Builder»). Так вышло, что в ходе получения своего (пусть и не слишком обширного) опыта, я довольно часто видел, чтобы паттерн использовался в «...

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

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

[Перевод - recovery mode ] Django 3.0 будет асинхронным Andrew Godwin опубликовал DEP 0009: Async-capable Django 9 мая, а 21 июля он был принят техническим советом Django, так что можно надеяться, что к выходу Django 3.0 успеют сделать что-нибудь интересное. Он уже упоминался где-то в комментариях Хабра, но я решил донести эту но...

[Перевод] io_submit: альтернатива epoll, о которой вы никогда не слышали Недавно внимание автора привлекла статья на LWN о новом интерфейсе ядра для опроса (polling). В ней обсуждается новый механизм опроса в Linux AIO API (интерфейс для асинхронной работы с файлами), который добавили в ядро версии 4.18. Идея довольно интересная: автор патча пр...

[Перевод] Реализация шаблона проектирования Command в Unity Вы задавались когда-нибудь вопросом, как в играх наподобие Super Meat Boy реализована функция реплея? Один из способов её реализации — выполнять ввод точно так же, как это делал игрок, что, в свою очередь, означает, что ввод нужно как-то хранить. Для этого и многого другого...

Асинхронное программирование (полный курс) Асинхронное программирование за последнее время стало не менее развитым направлением, чем классическое параллельное программирование, а в мире JavaSript, как в браузерах, так и в Node.js, понимание его приемов заняло одно из центральных мест в формировании мировоззрения раз...

[Перевод] Python и быстрые HTTP-клиенты В наши дни, если вы пишете некое Python-приложение, то вам, скорее всего, придётся оснащать его функционалом HTTP-клиента, который способен общаться с HTTP-серверами. Повсеместное распространение REST API сделало HTTP-инструменты уважаемыми жителями бесчисленного множества п...

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

Три парадигмы асинхронного программирования в Vertx Я хочу показать три парадигмы асинхронного программирования — callbacks, futures, coroutines на примере простого веб приложения на фрейморке Vertx. Код будем писать на Котлине. Допустим у нас есть приложение, которое получает некую строку в HTTP запросе, по ней ищет URL в б...

[Перевод] Почему, зачем и когда нужно использовать ValueTask Этот перевод появился благодаря хорошему комментарию 0x1000000. В .NET Framework 4 появилось пространство System.Threading.Tasks, а с ним и класс Task. Этот тип и порождённый от него Task<TResult> долго дожидались, пока их признают стандартами в .NET в роли ключевых а...

[Перевод] Асинхронное программирование в Python: краткий обзор Когда говорят о выполнении программ, то под «асинхронным выполнением» понимают такую ситуацию, когда программа не ждёт завершения некоего процесса, а продолжает работу независимо от него. В качестве примера асинхронного программирования можно привести утилиту, которая, работ...

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

[Перевод] Потоки Redis как чистая структура данных Новая структура данных Redis 5 под названием «потоки» (streams) вызвала живой интерес в сообществе. Как-нибудь я поговорю с теми, кто использует потоки в продакшне, и напишу об этом. Но сейчас хочу рассмотреть немного другую тему. Мне начинает казаться, что многие представля...

Неожиданный взгляд на асинхронные схемы, независящие от скорости В асинхронной науке центральное место занимает свойство схем, называемое независимостью от скорости, по английски speed independent (далее SI). Считается, что это свойство является аналогом независимости асинхронных схем от задержек логических элементов. Неудивительно, что т...

Близкие контакты ADL-ной степени Как навсегда вписать своё имя в историю? Первыми слетать на Луну? Первым встретиться с инопланетным разумом? У нас есть способ проще — можно вписать себя в стандарт языка C++. Хороший пример показывает Эрик Ниблер — автор C++ Ranges. «Запомните это. 19 февраля 2019 года — д...

[Из песочницы] Первое, что нужно сделать запуская проект на Django Приветствую сообщество, встала передо мной задача написать социальную сеть. А коль скоро язык программирования, которым я более-менее владею — это Python, я выбрал фреймворк Django для реализации проекта. Чтобы не тратить время на написание HTML шаблонов и CSS стилей, эти фа...

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

[Перевод] Асинхронное общение — вот настоящая причина, почему удалённая работа более эффективна Теперь асинхронную связь внедряют не только на удалёнке Иллюстрация: Yin Weihung Исследование за исследованием вновь доказывают, что удалённые работники более продуктивны, чем их коллеги в офисе. Только не совсем понятно, почему. Да, люди сохраняют время (и рассудок), из...

Рецепты Nginx: асинхронные уведомления из PostgreSQL в websocket Для приготовления асинхронных уведомлений из PostgreSQL в websocket нам понадобится сам nginx и его плагины postgres, push-stream, set-misc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозитории. Можно такж...

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

[Перевод] Как работать с async/await в циклах JavaScript Как запустить асинхронные циклы по порядку или параллельно в JavaScript? Перед тем, как делать асинхронную магию, я хочу напомнить как выглядят классические синхронные циклы. Читать дальше →

[Из песочницы] Асинхронный рассинхрон: антипаттерны в работе с async/await в .NET Кто из нас не косячит? Я регулярно встречаюсь с ошибками в асинхронном коде и делаю их сам. Чтобы прекратить это колесо Сансары делюсь с вами самыми типичными косяками из тех, которые иногда довольно сложно отловить и починить. Читать дальше →

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

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

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

Архитектурный шаблон «Итератор» («Iterator») во вселенной «Swift» «Итератор» – один из шаблонов проектирования, которые программисты чаще всего не замечают, потому что его реализация, как правило, встроена непосредственно в стандартные средства языка программирования. Тем не менее, это тоже один из поведенческих шаблонов, описанных в книге...

[Перевод] Тестирование многопоточного и асинхронного кода Привет! На неделе встала задача написать интеграционный тест для Spring Boot приложения, использующего асинхронное взаимодействие с внешними системами. Освежил много материала про отладку многопоточного кода. Привлекла внимание статья «Testing Multi-Threaded and Asynchronous...

Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис. Часть 2 (Реализация API на стороне 1С) 1. Выбор способа обмена. Описание API. 2. Реализация API на стороне 1С. 3. Приложение на ТСД и связь с 1С: Предприятие 8.3 через HTTP-Сервис. Часть 3(BroadcastReceiver. Получаем данные) Пособий как создать HTTP-сервис в интернете предостаточно. Поэтому сразу опишу реализац...

Telegram опять раздаёт деньги за разработку простых шаблонов CSS Павел Дуров объявил о втором конкурсе Template Competition 2.0, всем участникам которого платят по $100 за каждый шаблон HTML/CSS для предпросмотра сайта СМИ в мессенджере. А также $2 за каждую ошибку, найденную в чудом шаблоне (сумма вычитается из гонорара автора). Сделат...

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

Ещё раз о хирургических шаблонах Приветствую всех!В очередной раз внедряю в производство хирургические шаблоны. На этот раз, прокачали производство и хирургов, приобрели в клинику набор хирургического инструмента MiS Mguide surgical kit https://www.misimplants.com/kits/mguide-set-for-seven-implant-procedure...

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

Управляем android устройством Это уже третья попытка подружить умный дом с android, напомню, что первая попытка контролировать android устройства посредством HTTP, была с помощью приложения Paw Server. Данное приложение позволяло с помощью языка BeanShell встраивать свой код в xhtml страницу и взаимоде...

Выпущена новая бета-версия MSI Afterburner, а с нею — и RivaTuner Statistics Server Немного раньше запланированного срока завершилась работа над реализацией асинхронного управления кулерами в MSI Afterburner, и официальный релиз совсем близок.

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

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

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

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

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

[Перевод] Собственный сервер Commento с Docker Compose Примечание: это перевод моего поста (англ.), описывающий реализацию сервера комментариев, используемую на том же сайте, где находится оригинал. TL;DR-версия: я разработал конфигурацию Commento-сервера, которая легко и просто развёртывается в полуавтоматическом режиме. Скопир...

[Перевод] Создание шаблонов с тегами в Visual Studio для эффективного поиска и группировки пользователей Шаблоны проектов Visual Studio позволяют разработчикам более эффективно создавать несколько схожих проектов, определяя общий набор начальных файлов. Шаблоны проектов могут быть полностью кастомизированы в соответствии с потребностями команды разработчиков или группы и могут ...

Как настроить Linux для входа в домен с использованием алгоритмов ГОСТ Введение Протокол Kerberos 5 сейчас активно используется для аутентификации. Особенностью данного протокола является то, что он осуществляет аутентификацию, базируясь на трех китах: Симметричное шифрование Хеширование ЭЦП Третья доверенная сторона Начиная с пятой версии п...

[Перевод] Зачем приложению пульта Д/У знать моё местоположение? Вот интересный шаблон недружественного поведения приложения, которого можно было бы легко избежать, если бы программисты и бизнесмены рассуждали как обычные люди. У меня есть звуковая система Pioneer/Onkyo. Это неплохая техника, которая поставляется с (не слишком дерьмовым)...

Thymeleaf: диалект Layout + Spring Boot 2 Диалект Layout — это диалект Thymeleaf, который позволяет пользователям создавать макеты и шаблоны для повторного использования HTML кода. Он имеет иерархический подход и использует шаблон декоратора для «декорирования» файлов макета. Layout Dialect является отдельным проект...

[Из песочницы] Небольшой бэкдор на Flask или как управлять компьютером в локальной сети Привет, Хабр! Недавно я посмотрел скачанную версию стрима по программированию «Как создать свое веб-приложение на Flask». И решил закрепить свои знания в каком-нибудь проекте. Долго не знал, что написать и мне пришла идея: «А почему бы не сделать мини-бэкдор на Flask?». В ...

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

Лучшие доклады с HighLoad++ 2018 Друзья, мы договорились с компанией Онтико, что будем публиковать лучшие доклады с их конференций на своём Youtube-канале и делиться ими с вами. Так мы хотим не только распространять знания, но и помогать нашим читателям и зрителям профессионально развиваться. Ловите подборк...

Toyota начала наконец встраивать поддержку Android Auto Toyota потребовалось неестественно много времени, чтобы наконец добавить поддержку платформы Android Auto в свои автомобили или хотя бы некоторые модели. Автопроизводитель объявил об этом на автосалоне в Чикаго (штат Иллинойс), где представил новую версию внедорожника Toyota...

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

Встраиваемые комбинированные холодильники Candy Krio Suite Компания Candy представила свою новую серию встраиваемых комбинированных холодильников Candy Krio Suite. Новинки обладают высококлассной эргономикой, технологичностью, большим объёмом, небольшим энергопотреблением и лёгким обслуживанием. Также в новой линейке можно х...

В Google Tag Manager появились пользовательские шаблоны Google представил пользовательские шаблоны (Custom Templates) в Tag Manager и Tag Manager 360. Теперь специалисты смогут использовать встроенный редактор для разработки собственных определений тегов и переменных, которые затем можно будет использовать в контейнере. Custom Te...

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

Google создал галерею пользовательских шаблонов для Tag Manager Google сообщил о запуске галереи пользовательских шаблонов для Диспетчера тегов (Tag Manager) – Community Template Gallery. Новая галерея – это открытая платформа, где партнёры могут делиться своими шаблонами с другими участниками сообщества. Компании затем могут использоват...

[Конспект админа] Как подружиться с DHCP и не бояться APIPA Сервис, выдающий IP-адреса устройствам в локальной сети, кажется одним из самых простых и всем знакомых. Тем не менее у моих младших коллег до сих пор временами всплывают вопросы вроде «компьютер что-то получает какой-то странный адрес», а появление второго DHCP-сервера в о...

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

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

[Из песочницы] Angular schematics, или как я писал свой шаблон для angular cli Здравствуйте, меня зовут Максим. Уже несколько лет я занимаюсь front-end разработкой. Мне часто приходится иметь дело с версткой различных html шаблонов. В своей повседневной работе я обычно пользуюсь сборщиком webpack c настроенным шаблонизатором pug, а также использую мето...

Пишем свой язык программирования, часть 4: Представление структур и классов, генерация аллокаторов Доброго времени суток тем, кто решил ознакомиться с моей очередной статьёй. Первым делом выкладываю ссылки на предыдущие части: Часть 1: пишем языковую ВМ Часть 2: промежуточное представление программ Часть 3: Архитектура транслятора. Разбор языковых структур и математиче...

Простая реализация небольших CAM на ПЛИС Введение Как-то раз мне потребовалось по работе реализовать небольшой блок ассоциативной памяти. Почитав, как это делается у Xilinx на BlockRAM (BRAM) или на SRL16, я несколько опечалился, так как их реализации занимали довольно много места. Решил попробовать сделать его сам...

Toshiba представляет встраиваемые накопители, соответствующие спецификации eMMC 5.1 Компания Toshiba Memory America, являющаяся дочерним предприятием Toshiba Memory Corporation, сегодня объявила о выпуске встраиваемых твердотельных накопителей, соответствующие спецификации JEDEC eMMC 5.1. Их ознакомительные образцы станут доступны в следующем месяце, а...

Автопилот Tesla: стратегия реализации В январе 2016 года Элон Маск предсказал, что автомобили Tesla смогут самостоятельно проехать от восточного побережья США до западного «примерно через 2 года», но этого не произошло. Недавно страница автопилота Tesla была наконец обновлена, и по мнению её автора она сможет ...

Как мы поженили две банковские CRM-системы Всем привет! Я – Николай Аксенов, начальник отдела поддержки и развития CRM-систем «Росбанк Дом» (ипотечный филиал Росбанка). Исторически так сложилось, что у нас в ипотечном банке «ДельтаКредит» (летом мы присоединились к Росбанку и теперь называемся «Росбанк Дом») было дв...

[Перевод] Юнит-тестирование шаблонов C++ и Mock Injection с помощью трейтов (Traits) Еще раз здравствуйте! До старта занятий в группе по курсу «Разработчик С++» остается меньше недели. В связи с этим мы продолжаем делиться полезным материалом переведенным специально для студентов данного курса. Юнит-тестирование вашего кода с шаблонами время от времени на...

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

[Из песочницы] Что нужно знать перед переходом на Akka toolkit для реализации Event Sourcing и CQRS Здравствуйте, уважаемые читатели Хабра. Меня зовут Рустем и я главный разработчик в казахстанской ИТ-компании DAR. В этой статье я расскажу, что нужно знать перед тем, как переходить на шаблоны Event Sourcing и CQRS с помощью Akka toolkit. Примерно с 2015 года мы начали прое...

[Перевод] Вся правда об ОСРВ. Статья #30. Инициализация и процедуры запуска Nucleus SE У любой операционной системы есть определенный механизм запуска. Принцип работы этого механизма у каждой системы свой. Обычно говорят, что система загружается (англ. boot), это сокращение от «bootstrap», которое отсылает к выражению «pull oneself over a fence by one’s boot...

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

Практический опыт обновления MySQL 5.7 до версии 8.0 Недавно мы обновили свои сервера с MySQL 5.7 на 8.0. Оставим за рамками этой статьи зачем и какие новые плюшки появились в MySQL 8.0, а вместо этого расскажем о том, с какими сложностями мы столкнулись в процессе обновления. Читать дальше →

[Перевод] Dart 2. Асинхронное программирование: потоки данных Асинхронное программирование: потоки данных Содержание Получение событий потока События с ошибкой Работа с потоками Типы потоков Потоки-подписки Широковещательные потоки Методы, обрабатывающие поток Методы, изменяющие поток Функция transform() Чтение и декодирование файл...

Toshiba Memory выпускает встраиваемые накопители 3.0 Компания Toshiba начала опытное производство новых встраиваемых накопителей в соответствии с третьей версией стандарта Universal Flash Storage (UFS).

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

В плагине «Лейка» изменились шорткоды и шаблон «Стар» Теплица социальных технологий обновила плагин «Онлайн-лейка» до версии 3.6. В новой версии были переработаны шорткоды, а также изменен шаблон «Стар», оптимизированный специально под рекуррентные платежи.  Разработчики сделали новые шорткоды максимально гибкими в нас...

[Из песочницы] Уязвимости GeekBrains: Зачем платить деньги за курсы если их можно просто скачать? Небольшой сказ о маленькой погрешности, с помощью которой был получен доступ ко всем платным курсам и домашним заданиям на ресурсах. А так же немного о других найденных уязвимостях. Читать дальше →

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

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

JVM TI: как сделать плагин для виртуальной машины Хотели бы вы добавить в JVM какую-нибудь полезную фичу? Теоретически каждый разработчик может внести свой вклад в OpenJDK, однако на практике любые нетривиальные изменения в HotSpot принимают со стороны не очень-то охотно, и даже с текущим укороченным релизным циклом могут...

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

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

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

FYI: шаблоны документов FYI – платформа управления документами для компаний. Она предлагает набор из 612 шаблонов документов почти для всех направлений работы и развития.

Как обновлённая Google Camera для Android снимает звёздное небо Фото ночного неба на Google Camera Google Camera может по праву считаться лучшим приложением для фотосъёмки на Android. Несмотря на то что Google отказывается выпустить общедоступную версию, разработчики умудряются портировать каждую новую сборку приложения для самого широко...

PhpStorm 2019.1: Отладка шаблонов Twig и Blade, поиск мертвого кода, улучшенное автодополнение, и многое другое Мы рады представить вам первый мажорный релиз PhpStorm в этом году! Обзор релиза можно посмотреть на странице “What’s new”. А под катом дополненный перевод этой страницы с демонстрацией наиболее интересных новых возможностей. Читать дальше →

Шаблоны в управлении Всем привет. Это очередной выпуск про управление клиентским опытом. (Р) — Роман Нохрин — Задает вопросы, (А) — Арсен Даллакян, управляющий партнер консалтинговой компании Russian Behavioral Unit — отвечает. (Р) Последние годы самые популярные слова — agile, CJM, фреймворк. ...

Найдена самая древняя шахматная фигура Небольшой прямоугольный камень, найденный на иорданском торговом форпосте Хумаймы, является самой древней из известных шахматных фигур. Это ладья или тура, которой около 1300 лет. Шахматная фигура из песчаника размером с ладонь была найдена в 1991 году на одном из древних то...

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

Для настольной игры Through the Ages выйдет крупное расширение New Leaders & Wonders В 2017 году на мобильных появилась цифровая версия одной из лучших стратегических настольных игр, Through the Ages. Она полностью воссоздает физическую копию, а также включает функцию асинхронного онлайн-мультиплеера. Теперь разработчики анонсировали крупное обновление, кот...

Конструирующий XPath? Алгоритмический XPath? Ничего, кроме XPath Здравствуйте, уважаемые читатели. В этой публикации речь пойдет о немного нестандартных применениях такого хорошо известного формализма как XPath. Все знают, что он очень удобен для извлечения информации из XML- или HTML- или еще каких-нибудь *ML-документов (как простых текс...

В российской лаборатории Samsung оживили Мону Лизу Речь идет об очередном "фотошопе" для видео. Новая технология во многом схожа с печально известным инструментом deepfake - эта техника широко применяется в последнее время для создания фальшивых видеороликов. Она основывается на том, что искусственный интеллект изу...

Google Ads обновил шаблон для объявлений только с номером телефона Google Ads изменил шаблон для объявлений только с номером телефона (call-only ads). Обновление призвано улучшить пользовательский опыт и помочь компаниям получить более качественные звонки. В новом шаблоне название компании и заголовок объявления расположены прямо под номеро...

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

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

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

ABBYY Mobile Web Capture: Качественные фотографии документов прямо в браузере смартфона Наши клиенты часто используют мобильный телефон, чтобы сфотографировать документ и отправить его в каршеринговую компанию, визовый центр, оператору связи, финансовым и другим компаниям. Фото документа достаточно, чтобы получить машину в аренду, активировать SIM-карту, офор...

[Из песочницы] События на базе LiveData Android LiveData – это отличный инструмент для связывания состояния ваших данных и объектов с жизненным циклом (LifecycleOwner, обычно это Fragment или Activity). Обычно LiveData помещаются во ViewModel и используются для обновления состояния вашего UI. Часто ViewModel может пережи...

Асинхронное программирование в JavaScript (Callback, Promise, RxJs ) Всем привет. На связи Омельницкий Сергей. Не так давно я вел стрим по реактивному программированию, где рассказывал про асинхронность в JavaScript. Сегодня я бы хотел законспектировать этот материал. Но перед тем как начать основной материал нам нужно сделать вводную. Итак...

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

Файлы по рельсам. Как читать любые файлы с сервера через Ruby on Rails Для подписчиковТы наверняка в курсе, что такое Ruby on Rails, если когда-нибудь сталкивался с веб-девом. Этот фреймворк в свое время захватил умы разработчиков и успешно применяется до сих пор. Любая уязвимость в нем означает огромное количество потенциальных целей. В этот р...

Компилятор Ангуляр в 200 строчек кода Привет. Меня зовут Роман, и я не изобретатель велосипедов. Мне нравится фреймворк Angular и экосистема вокруг него, и я разрабатываю с его помощью свои веб-приложения. С моей точки зрения, основное преимущество Angular в долгосрочной перспективе базируется на разделении кода...

Новый пакет валидаций для React на Mobx @quantumart/mobx-form-validation-kit Добрый день. Сегодня я хочу рассказать о новом пакете для асинхронных валидаций в проектах использующих в своей основе React, Mobx и написанных на Typescript. Современная Frontend разработка предполагает большое количество логики при заполнении страниц с документами, анкет ...

Santorini — новое кодовое имя Microsoft Windows Lite Облегчённая версия системы Microsoft больше не называется Windows Lite, если верить близкому к компании источнику.В конце прошлого года появилась информация относительно новой операционной системы Windows Lite. Она разрабатывается на основе Windows Core OS и призвана оказать...

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

Архитектура EBA aka реактивность на всю катушку Я пришел в Tinkoff пару лет назад, на новый проект Клиенты и проекты, который тогда только запускался. Сейчас уже не помню своих ощущений от новой тогда для меня архитектуры. Но точно помню: было непривычно, что Rx используется еще где-то, за пределами обычных походов в сеть...

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

Дайджест новостей из мира PostgreSQL. Выпуск №17 Мы продолжаем знакомить вас с самыми интересными новостями по PostgreSQL. Главные новости Релиз-кандидат PostgreSQL 12 В релизе-кандидате вся функциональность идентична грядущему официальному релизу. Если вновь выявленные и недоисправленные баги будут закрыты в срок, то ...

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

[Перевод] Собственная реализация библиотеки ECS На этой неделе я начал работать над своим движком для игры Vagabond и приступил к реализации шаблона entity-component-system. В этой статье я хочу рассказать о своей реализации, которая свободно доступна на GitHub. Но вместо простого комментирования кода я хочу объяснить, ...

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

Apple выпускает пятые бета-версии iOS 13 и iPadOS для разработчиков Сегодня Apple выпустила пятые бета-версии iOS 13 и iPadOS для разработчиков, спустя почти две недели после выпуска четвертых бета-версий и более чем через месяц после представления новой операционной системы на Всемирной конференции разработчиков. Зарегистрированные разработ...

[Из песочницы] Сделать номинанта на лучшее приложение в Google Play за год: как хотя бы начать (часть 1) 3 декабря 2018 было понедельником. Но для нас 3 часа ночи этого понедельника все еще воспринимались как бесконечное затянутое воскресенье. Мы с моей девушкой — а она еще успеет поучаствовать в этой истории — сидели за ноутбуками, чтобы не переносить дату релиза в третий раз....

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

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

Open Rack v3: что ждать от нового стандарта архитектуры серверных стоек Он найдет применение в гипермасштабируемых ЦОД. / фото Not4rthur CC BY-SA Зачем обновили спецификацию Инженеры из Open Compute Project (ОСР) представили первую версию стандарта еще в 2013 году. Он описывал модульную и открытую конструкцию стоек для ЦОД шириной в 21 дюйм. Т...

Сeph — от «на коленке» до «production» часть 2 (первая часть тут: https://habr.com/ru/post/456446/) CEPH Введение Поскольку сеть является одним из ключевых элементов Ceph, а она в нашей компании немного специфична — расскажем сначала немного о ней. Тут будет сильно меньше описаний самого Ceph, в основном сетевая инфрастр...

Обучение локализации в Вашингтонском университете В этой статье Sub Lead Localization Manager компании Plarium Krasnodar Эльвира Шарипова рассказывает о том, как она проходила онлайн-обучение по программе Localization: Customizing Software for the World. Зачем матерому локализатору становиться студентом? Какие сложности ожи...

[Из песочницы] Segmented Control своими руками, как в iOS 13.0 и выше В iOS 13 обновили Segmented Control, но для тех кто не может обновить Xcode, он просто не доступен. Вот я и решил написать, как можно быстро сделать самому такой же Segmented Control. Поехали! Первым делом переходим в Storyboard. Размещаем на нашем ViewController элемент Vi...

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

Утро админа: добавляем место на десятках серверов за кофе Каждый день мне приходится добавлять место на одном, двух, трех, пяти, а бывает – и десяти database серверах. Почему? Потому что для них характерен естественный рост баз. Серверов сотни, все они виртуалки с дисками на thin provisioning. Если им заранее выдать много места, то...

[Из песочницы] Переменные окружения для Python проектов Переменные окружения для Python проектов При разработки web-приложения или бота мы часто имеем дело с какой-либо секретной информацией, различными токенами и паролями (API-ключами, секретами веб-форм). "Хардкодить" эту информацию, а тем более сохранять в публично доступной с...

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

В ADFOX появился асинхронный API Статистики для доступа к отчетам В ADFOX появился новый инструмент — асинхронный API Статистики для доступа к отчетам. Теперь работать с данными в ADFOX стало удобнее: можно выгружать их прямо из интерфейса, интегрировать новый API со своей CRM-системой, а также ...

Dynaudio Р4-C65, Р4-C80, Р4-W80 - встраиваемые в потолок акустические системы Новая Серия Custom Performance от Dynaudio представляет собой начальный уровень...

[Перевод] Зачем ЯОП? Зачем Racket? Это продолжение статьи «Зачем Racket? Зачем Lisp?», которую я написал примерно через год после того, как открыл для себя Racket. Будучи новичком, я не мог понять дифирамбов, которые со всех сторон сыпались в адрес Lisp. Я не знал, что и думать. Как понимать, что Lisp в конце...

Большое интервью с создателем Jenkins, Kohsuke Kawaguchi Пользуетесь ли вы Jenkins? Скорей всего да, потому что это самый популярный на сегодняшний день проект этого класса. Мне всегда интересно было пообщаться с кем-нибудь из разработчиков и задать пару жестких вопросов. Здесь же у нас не просто разработчик, а сам создатель Jenki...

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

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

Реализация Push-уведомлений в Android В каждом современном приложении есть Push-уведомления, но так как встраивать их приходится нечасто, то каждый раз как в первый раз!

Как Pegasus и Centaurus вписываются в видение Windows Lite За последнее время в сети появилось достаточно много новой информации о разрабатываемой операционной системе «Windows Lite», которая может быть представлена в рамках конференции разработчиков Build 2019 уже в мае этого года. Как известно, эта версия системы создаётся на баз...

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

Линус Торвальдс не верит, что серверы на ARM-архитектуре заменят x86. «Продавать 64-битную модель — идиотизм» На прошлой неделе компания ARM Holdings объявила, что разрабатывает новую микро-архитектуру для серверных процессоров. Вычислительное ядро, которое будет в ней использоваться, носит кодовое имя Ares, и по обещаниям должно дать 60% прирост по сравнению с текущей платформой....

Eclipse выпускает GlassFish 5.1 для Java EE 8 Оригинал новости Двигаясь вперед в развитии корпоративной Java, Eclipse Foundation представляет собственную версию сервера приложений GlassFish, которая традиционно служила эталонной реализацией платформы Java EE (Java Enterprise Edition). Читать дальше →

Google сделала эксклюзивную функцию Gmail для Pixel доступной всем Вслед за масштабным редизайном Gmail в стиле Material Design 2.0 Google представила очередное обновление для фирменного почтового клиента. На этот раз приложение получило поддержку интеллектуальной функции Smart Compose, способной дополнять за вас недописанные предложения. ...

SpaceX запускает очередные 60 спутников Starlink: впервые с повторно использующимся обтекателем и в четвёртый раз использующейся ракетой Falcon 9 Сегодня, 11 ноября, в 16:56 по киевскому времени компания SpaceX намерена запустить очередную группу из 60 спутников Starlink. Пуск ракеты будет осуществлён с комплекса Space Launch Complex 40 (SLC-40) на станции ВВС Кейп-Канаверал, Флорида. Следить за пуском можно в режиме ...

Строительные блоки распределенных приложений. Первое приближение В прошлой статье мы разобрали теоретические основы реактивной архитектуры. Пришло время поговорить о потоках данных, путях реализации реактивных Erlang/Elixir систем и шаблонах обмена сообщениями в них: Request-response Request-Chunked Response Response with Request Publis...

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

Принципы построения REST JSON API Эта памятка писалась для внутренних нужд (открыть глаза менее опытным в вебе коллегам). Но, т.к. я насмотрелся велосипедов от довольно уважаемых, казалось бы, контор, — выкладываю на хабр. Мне кажется, многим будет полезно. Зачем Надеюсь, читающий уже понимает, зачем ему во...

Dynaudio Р4-W65 - встраиваемая в стены акустическая система Новая Серия Custom Performance от Dynaudio представляет собой начальный уровень

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

Фото: первый флагманский магазин Microsoft в Европе 11 июля в Лондоне открылся трехэтажный магазин компании — c демо-зонами всех продуктов, корпоративной площадкой в стиле кампуса и переоборудованным автомобилем McLaren Senna для игры в Forza Motorsport. ...

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

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

Поднимаем сервер 1с с публикацией базы и веб сервисов на Linux Сегодня я бы хотел рассказать, как поднять сервер 1с на linux debian 9 с публикацией web-сервисов. Что такое web-сервисы 1с? Web-сервисы — это один из механизмов платформы, используемых для интеграции с другими информационными системами. Он является средством поддержки...

Установка CentOS 8 на VDS 256 CentOS 8 наконец-то увидела свет и, хотим мы этого или нет но, в ближайшей перспективе адептам корпоративной операционной системы от коммьюнити придется с ней подружиться. Решив испытать восьмерку в «дикой природе», я обнаружил, что мои хостинг провайдеры не спешат с изгото...

Tornado vs Aiohttp: путешествие в дебри асинхронных фреймворков Привет! Я Дима, и я довольно давно и плотно сижу на Python. Сегодня хочу показать вам отличия двух асинхронных фреймворков — Tornado и Aiohttp. Расскажу историю выбора между фреймворками в нашем проекте, чем отличаются корутины в Tornado и в AsyncIO, покажу бенчмарки и дам н...

[Из песочницы] Еще одно мнение о разнице между bin, sbin, usr/bin, usr/sbin Недавно я обнаружил вот такую статью: Разница между bin, sbin, usr/bin, usr/sbin. Хотелось бы поделиться своим взглядом на стандарт. /bin Содержит команды, которые могут использоваться как системным администратором, так и пользователями, но которые необходимы, когда не смон...

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

Amazon добавила возможность компаниям создавать голосовые команды Amazon запустила Alexa for Business, и теперь позволяет бизнес компаниям создавать голосовые команды для использования их в офисе. Участники могут использовать один из десятков шаблонов для создания своих собственных голосовых команд в Alexa без необходимости писать код....

[Из песочницы] Swagger – умная документация вашего RESTful web-API — обзор Junior back-end developer-а для новичков Предисловие Команда, в которой я сделала свои первые шаги на поприще написания промышленного кода, занималась разработкой удобного API к функциональности программного продукта на C# (для удобства назовем его, скажем, буквой E), существовавшего уже много лет и зарекомендов...

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

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

[Перевод] Комбинирование Signed Distance Fields в 2D В предыдущем туториале мы научились создавать и перемещать простые фигуры с помощью функций расстояний со знаком. В этой статье мы научимся комбинировать несколько фигур для создания более сложных полей расстояний. Большинству описанных здесь техник я научился из библиотеки ...

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

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

[Из песочницы] Идея, как можно предоставлять сотрудникам временный доступ к ресурсам клиента, не светя лишний раз пароли Небольшая предыстория После лекции на HighLoad++ 2017. Я посмотрел этот доклад, “Как мы админа увольняли”, в записи. Докладчик сказал, что все web компании испытывает проблемы с паролями, и у меня появилась идея как это решить. Скорее всего кто-то уже сделал, но, если честно...

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

«Пятиминутка PHP» о ReactPHP и анонс митапа, плавно переходящего в дринкап Привет, в августе мы проведем в Москве митап с докладчиками из других городов, встречей BeerPHP и трансляцией официальной части для всех, кто не сможет присоединиться. Сегодня начинаем представлять докладчиков. Сергей Жук приедет на митап из Брянска — в его городе нет тусо...

[Перевод] GitOps: сравнение методов Pull и Push Прим. перев.: В сообществе Kubernetes явную популярность набирает тренд под названием GitOps, в чём мы лично убедились, посетив KubeCon Europe 2019. Этот термин был относительно недавно придуман главой компании Weaveworks — Alexis Richardson — и означает применение привычных...

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

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

Apple обновляет приложения iWork Как и было обещано ранее в марте, Apple представила основные обновления для всех своих приложений iWork для iOS, включая Pages, Keynote и Numbers. Сегодняшнее обновление принесло расширенную функциональность Apple Pencil, совпавшую с добавлением поддержки Apple Pencil на нов...

[Из песочницы] Direct routing и балансировка с помощью NFT vs Nginx При разработке высоконагруженых сетевых приложений возникает необходимость в балансировке нагрузки. Популярным инструментом L7 балансировки является Nginx. Он позволяет кешировать ответы, выбирать различные стратегии и даже скриптить на LUA.  Несмотря на все прелести Ngin...

Состоялся официальный релиз Visual Studio 2019 для Windows и Mac Начиная с сегодняшнего дня разработчикам программного обеспечения стала доступна релизная версия среды разработки Visual Studio 2019 для Windows и Mac, которая принесла с собой большое количество улучшений. В Visual Studio 2019 появились новые настройки пользовательского ин...

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

Асинхронные пользовательские сценарии на чистом Rust без фреймворков и SMS Привет, Хабр! Иногда при разработке сетевых сервисов и пользовательских интерфейсов приходится сталкиваться с достаточно сложными сценариями взаимодействия, содержащими ветвления и циклы. Такие сценарии не укладываются в простую стейт-машину — недостаточно хранить все данны...

Готовим полнотекстовый поиск в Postgres. Часть 1 Эта статья — первая из небольшой серии статей о том, как оптимально настроить полнотекстовый поиск в PostgreSQL. Мне пришлось недавно решать подобную задачу на работе — и я был очень удивлен отсутствию хоть сколько-нибудь вменяемых материалов по этому поводу. Мой опыт борьбы...

Больше удобств адептам JSON-RPC Привет! Однажды, на одном проекте, где мне довелось работать только фронтом, мне пришлось столкнуться не с вездесущим REST, и не с хайповым GraphQL, а со старичком RPC, а именно — его вариантом JSON-RPC 2.0. И знаете, с тех пор (когда делаю и бэк) я использую почти всегда ...

«Я бы открыл на юге России особую зону ИТ» — 10 вопросов программисту #11. Новый сезон Прошлым летом мы запустили рубрику «10 вопросов программисту», и на протяжении 10 выпусков в ней было довольно весело. Хорошие люди, у которых не всегда есть доступ к огромной аудитории, смогли высказаться. Кто-то нашел понимание, кто-то наткнулся на критику. Перед 11 вы...

Apple рассказала об ограничениях приложения для поиска выключенных устройств Find My Одной из самых захватывающих новинок, представленных Apple на WWDC’19, стало приложение Find My. Это продвинутый аналог утилиты «Найти iPhone», который включает в себя еще и «Найти друзей». Но его уникальная особенность состоит вовсе не в комплексности, а в способности нахо...

Ну, Android, а ты OMA CP… Недавно мы «порадовали» пользователей iPhone проблемами безопасности BLEee, но вряд ли мы сторонники какого-либо из фронтов в извечном споре Apple vs. Android, и готовы рассказать «отличную» новость про Android, если, конечно, в вашей душе есть место для злорадства. Исследо...

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

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

У плагина для сбора пожертвований«Лейка» обновился сайт и тарифы платной поддержки Теплица социальных технологий обновила сайт плагина для сбора пожертвований «Онлайн Лейка». Дизайн был изменен на легкий и современный, также добавился раздел о платной поддержке. Задача плагина «Лейка» – упростить и усовершенствовать сбор пожертвований на сайтах НКО и о...

[Перевод] Ленивая инициализация в Spring Boot 2.2 От переводчика: поскольку Spring Framework является одним из основных фреймворков, на которых мы строим CUBA, то новости о новых возможностях Spring не проходят незаметно для нас. Ленивая инициализация — один из способов уменьшить время первой загрузки приложения, что в наш...

Ricoh добавляет новый режим фотосъемки «HDR с рук» в камеры Theta V и Z1 Компания Ricoh выпустила обновленные версии приложения Ricoh Theta, которое добавляет новый режим в панорамные камеры Theta V и Theta Z1. Он называется Handheld HDR, что можно перевести как «HDR с рук». Кроме того, обновление приложения Ricoh Theta (версия ...

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

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

Google I/O 2019: где, когда и чего ожидать? Google I/O это ежегодная конференция разработчиков, проводимая компанией Google, на которой традиционно анонсируются новое программное обеспечение, обновления для различных сервисов и приложений от Google и очередные гаджеты. В этом году мероприятие состоится 7 мая в городке...

Браузер Google Chrome. Скачать или узнать? В сентябре 2008 года Google Chrome был выпущен на Windows XP в статусе беты, спустя 3 месяца компания опубликовала первую публичную версию браузера 11 декабря этого же года. В 2010 году Chrome был выпущен на MacOS и Linux, а в 2012-ом на мобильных платформах iOS и Android. ...

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

Создан альянс, продвигающий конкурента архитектуры x86 Эти и другие компании, присоединившиеся к организации, будут поддерживать открытую спецификацию архитектуры набора команд RISC-V, основанного на принципах сокращенного набора инструкций (RISC, Reduced Instruction Set Computer).Атака на Intel. RISC-V конкурирует с архитектуро...

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

Ящик для хранения данных в go-приложениях Небольшая заметка о встраиваемой key-value БД под названием Coffer, написанной на Golang. Если совсем коротко: в остановленном состоянии БД данные лежат на диске, при запуске данные копируются в память. Чтение происходит из памяти. При записи изменяются данные памяти, а изме...

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

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

Метод бисекционного деления в тестировании Содержание Описание метода Применение тестировщиками Строка данных Файл Применение разработчиками Резюме Иногда баги сами нас находят. Вот мы впихали большую строку данных — и система подвисла. Это она из-за 1 млн символов упала? Или ей какой-то конкретный не понравилс...

Облачный контроллер сети TP-Link Omada OC200 Время от времени у нас появляются обзоры роутеров, но в этот раз мы посмотрим на облачный контроллер точек доступа — TP-Link Omada OC200. Рядовой пользователь вряд ли столкнется с подобным устройством, но посмотреть на работу этой технологии было интересно и нам самим, поэто...

Amazon Echo Buds — полностью беспроводные арматурные наушники с шумоподавлением и портом Micro-USB Компания Amazon продолжает расширять семейство устройств Echo. И сегодня к нему добавились первые полностью беспроводные наушники Amazon — Echo Buds. Начать стоит с того, что новинка представляет собой наушники с активным шумоподавлением. В этом сегменте подобные ...

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

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

Autodesk Maya: полезные базовые функции для работы с 3Д моделями Недавно я столкнулся лицом к лицу с таким зверем как Autodesk Maya. За плечами у меня не было опыта в работе с 3Д моделированием и пришлось в экстренном порядке прокачиваться, начиная с основ, а также ознакомится с функциональностью данного ПО, чтобы проверить работу плагина...

[Перевод] Как работает Flutter Как Flutter работает на самом деле? Что такое Widgets, Elements, BuildContext, RenderOject, Bindings?.. Сложность: Новичок Вступление В прошлом году (прим: в 2018), когда я начал свое путешествие в сказочный мир Flutter, в Интернете было очень мало информации по сравнению с...

Основы шаблонов С++: шаблоны функций Дисклаймер: статья была начата еще в феврале, но, по зависящим от меня причинам, закончена не была. Тема очень обширна, поэтому публикуется в урезаном виде. Что не поместилось, будет рассмотренно позже. Невозможно разбираться в современном С++, не зная, что такое шаблоны п...

Paint и WordPad теперь являются дополнительными функциями для Windows 10 Как известно, Microsoft отказалась от планов по удалению классической версии Paint из состава Windows 10, однако некоторые изменения компания всё же произошли. Как заметили пользователи в инсайдерской сборке Windows 10 20H1 под номером 18963, которая недавно стала доступна ...

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

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

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

Apple выпускает четвертую бета-версию iOS 12.3 с новым телевизионным приложением Вчера Apple выпустила четвертую бета-версию грядущего обновления iOS 12.3 для разработчиков и публичных бета-тестеров, через неделю после выпуска третьей бета-версии и через месяц после запуска iOS 12.2, обновление, которое представило Apple News +, новый Animoji и многое др...

Microsoft выпустила Windows Terminal Preview 1910 Компания Microsoft анонсировала выход новой предварительной версии Windows Terminal  с номером версии 1910, которая включает в себя несколько новых функций. Прежде всего, в новой версии приложения теперь используется новая версия библиотеки Windows UI Library, так что вы см...

Новые функции PowerPoint на основе искусственного интеллекта Искусственный интеллект в PowerPoint поможет сотрудникам:Быстрее находить идеи для оформления. Теперь после добавления ключевых слов на пустой шаблон презентации, "Конструктор" в Power Point будет предлагать подборку высококачественных фотографий, отражающих смысл ...

Строительные блоки распределенных приложений. Второе приближение Анонс Коллеги, в середине лета я планирую выпустить еще один цикл статей по проектированию систем массового обслуживания: “Эксперимент VTrade” — попытка написать фреймворк для торговых систем. В цикле будет разобрана теория и практика построения биржи, аукциона и магазина. В...

Самые нестрашные яды И снова привет, %username%! Спасибо всем, кто оценил мой опус «Самые страшные яды». Было очень интересно почитать комментарии, какими бы они не были, было очень интересно отвечать. Я рад, что «хит-парад» понравился. Если он не понравился — ну что ж, я сделал всё, что мо...

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

Поваренная книга разработчика: DDD-рецепты (4-я часть, Структуры) Введение Итак, мы уже определились с областью применения, методологией и архитектурой. Перейдем от теории к практике, к написанию кода. Хотелось бы начать с шаблонов проектирования, которые описывают бизнес логику — Service и Interactor. Но прежде чем приступить к ним, изучи...

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

Лучшие программы для создания сторис в Instagram Если вы используете Instagram не первый день, то наверняка в курсе существования такой функции, как «истории». Это небольшие фото или видеоролики, которые хранятся 24 часа и доступны в специальном разделе. Однако если вы подписаны на топовых блогеров, то наверняка...

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

Скриншоты: как выглядит тёмная тема на смартфонах Xiaomi с MIUI 10 Зарубежное издание FoneArena заполучило предназначенную для разработчиков альфа-сборку глобальной версии MIUI 10 (оболочки для Android от Xiaomi), в которой обнаружило появившуюся тёмную тему интерфейса — естественно, редакторы портала сделали скриншоты обновлённой оболочки ...

[Из песочницы] Переносим проект с 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. Несмотря на то, что многие ресурсы освещают ...

Peephole микрооптимизации в С++ и C# компиляторах В школе, когда мы решали уравнения или считали формулы, мы пытались их сперва сократить несколько раз, к примеру Z = X - (Y + X) сокращается в Z = -Y. В современных компиляторах это подмножество так называемых peephole-оптимизаций, в которых мы по, грубо говоря, набору шабло...

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

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

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

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

Новая панель управления хостингом от ISPsystem: как посмотреть Сегодня мы публично анонсировали Vepp — новую панель управления сервером и сайтом. Скоро провайдеры начнут её продавать, а пока можно попробовать бесплатно. Оцените интерфейс, создайте сайт и покопайтесь в настройках. Нам интересно ваше мнение! Читать дальше →

Clean Decomposition Об использовании чистой архитектуры в Android сказано предостаточно. На GitHub можно найти десятки шаблонов на разные вкусы: на Java или Kotlin, с Dagger2 или Koin, с Rx или с Coroutines. Но никто не говорит о том, как разбить определенный функционал при использовании «чисто...

24-ядерный ARM-сервер на Banana Pi работает под управлением Ubuntu 18.04 Материснкая плата SynQuacer E-Series для 24-ядерного ARM-сервера Серверные процессоры на базе ARM давно угрожают позициям Intel в дата-центрах, но пока это лишь теоретическая угроза. До сих пор она не слишком реализовалась, если посмотреть на реальные случаи крупномасштаб...

Многолетние попытки Blocks выпустить модульные умные часы закончились банкротством В июне 2015 года компания Blocks Wearables представила на выставке Computex проект модульных умных часов. Особенностью устройства с круглым экраном, построенного на платформе Qualcomm, должны были стать модули, встраиваемые в звенья браслета. В октябре того же года нач...

Скоро смартфоны будет обладать хранилищем на 1 ТБ Samsung анонсировала первый в мире встраиваемый модуль флеш-памяти Embedded Universal Flash Storage (eUFS) 2.1 вместимостью 1 Тбайт. Он предназначен для использования в смартфонах и мобильных приложениях следующего поколения. eUFS 2.1 имеет размеры 11,5 × 13,0 мм. Он выполне...

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

Камбеки, топ-10 докладов JPoint 2019 Взгляды камрадов обращены в будущее. Новая, с пылу с жару версия джавы — Java/JDK 13, о которой недавно писал olegchir в хабрапосте, манит смотреть в завтрашний день. Коварно верну в прошлое — не такое далёкое, как хотелось бы, но достаточно ламповое, чтобы потратить десят...

Датская компания продемонстрировала 3D-принтер для печати многоэтажных зданий Датская компания COBOD продемонстрировала «самый большой строительный 3D-принтер в мире», теоретически способный печатать трехэтажные здания. В ближайшее время система отправится в Саудовскую Аравию, где будет испытываться в рамках программы развития Saudi Vision 2030.Подроб...

Apple выпустила публичные версии macOS 10.15 beta 2 и tvOS 13 beta 2 Прямо сейчас Apple проводит бета-тестирование сразу пяти обновлений своих операционных систем, а потому нет ничего необычного в том, что компания выпускает новые сборки не день в день, а с небольшим отставанием друг от друга. Видимо, сказывается обилие нововведений, которые...

REST сервер на Прологе, как это выглядит? В качестве небольшого экскурса для непосвященных в логическое программирование в этом тексте будет проведен сеанс магии с разоблачением приведен подход к созданию REST-сервера и замерены его параметры. В чем подвох? А все просто — будем делать на Прологе (в реализации SWI-...

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

Рецепты PostgreSQL: планировщик асинхронных задач Для приготовления планировщика асинхронных задач нам понадобится сам postgres и его расширение pg_task. (Я дал ссылки на свой форк postgres, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальный репозиторий. Можно также воспользоваться готовым обр...

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

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

[Перевод] Проект «Прометей»: поиск пожаров с помощью ИИ Перевод Project Prometheus — An AI-powered fire finding solution Мы с коллегами работаем в проекте Prometheus («Прометей») — это решение для раннего обнаружения пожаров, в котором объединены ИИ, компьютерное зрение, автоматические дроны и сервисы прогноза погоды. Этот ком...

Оригинальный HoloLens больше не будет получать крупные обновления системы Компания Microsoft подтвердила, что первое поколение HoloLens больше не будет получать крупные функциональные обновления операционной системы, а значит Windows 10 October 2018 Update будет последней версией, доступной для устройства. Теперь оригинальный HoloLens находится в...

Ноутбук Honor Magicbook Pro получит неожиданную конструкцию выдвижной камеры По последней информации, компания Huawei работает над новым ноутбуком, который получил название Honor Magicbook Pro. Согласно опубликованным эскизам, которые выложил инсайдер Эван Бласс (Evan Blass), ноутбук получит несколько очень интересных конструкторских решений. П...

Blazor + MVVM = Silverlight наносит ответный удар, потому что древнее зло непобедимо Привет Хабр! Таки да, скоро выходит net core 3.0 и там будет шаблон проекта с Blazor как один из дефолтных. Название у фреймворка, по-моему, похоже на название какого-нибудь покемона. Блазор вступает в бой! Решил я значит глянуть что за зверь такой и с чем его едят поэтому с...

Простые рецепты хороших юнит-тестов. Лекция Яндекса Если освоить небольшой список типичных ошибок, возникающих при написании юнит-тестов, можно полюбить писать их и стать гуру в своей команде. Руководитель санкт-петербургской группы разработки Яндекс.Браузера для Android Константин Заикин kzaikin рассказывает о подобных ошибк...

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

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

[Из песочницы] Основы реактивного программирования с использованием RxJS Часть 1. Реактивность и потоки Данная серия статей посвящена реактивности и ее применению в JS с использованием такой замечательной библиотеки как RxJS. Для кого эта статья: в основном, здесь я буду объяснять основы, поэтому в первую очередь статья рассчитана на новичков в ...

Графика Kaby Lake – поколение “девять с половиной” Встраиваемую графику в процессорах поколения “оптимизации”, хотя в ней и не было ни одного радикального изменения, и на самостоятельное десятое поколение она не тянула, в Intel назвали продвинутой. И, как оказалось, вполне заслужено. Встраиваемая графика от Intel – самая ра...

Флагманский смартфон Sony Xperia XZ4 Со своим сверхширокоформатным экраном позирует на новом рендере Особенностью смартфона Sony Xperia XZ4 станет сверхширокоформатный экран – с соотношением сторон 21:9. Скажем, это не первое применение такого дисплея в индустрии, еще в 2009 году вышел LG New Chocolate BL40 с сенсорным экраном и таким же соотношение сторон, но, т...

Хабрастатистика: как живет Хабр без geektimes Привет, Хабр. Данная статья является логическим продолжением рейтинга Лучших статей Хабра за 2018 год. И хотя год еще не закончился, но как известно, летом произошли изменения в правилах, соответственно, стало интересно посмотреть, повлияло ли это на что-нибудь. Кроме со...

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

Глобальный топ самых мощных смартфонов по версии AnTuTu: почти без изменений На прошлой неделе мы увидели, что лидерами китайского сентябрьского топа AnTuTu стали Vivo NEX 3, Vivo iQOO Pro и ASUS ROG Phone 2. Глобальный рейтинг традиционно менее интересен, да и изменений по сравнению с прошлым месяцем в нет совсем немного. Так, первые 3 позиции вооб...

[Перевод] PEG парсеры Несколько лет назад меня кто-то спросил имеет ли смысл превести Python на PEG-парсер (или на грамматику PEG; я не помню точно кто и когда это было). Тогда я немного посмотрел на него, но так и не пришёл к какому-либо выводу, а потому и отбросил эту тему. Недавно я узнал боль...

[Перевод] Расшифровка трассировщика лучей размером с открытку «Он снова это сделал!», — вот, что первое пришло мне в голову, когда я посмотрел на оборотную сторону флаера Pixar [1], полностью заполненную кодом. Скопление конструкций и выражений была подписана в правом нижнем углу не кем иным, как Эндрю Кенслером. Для тех, кто его не з...

Перечитывая Лу Гринзоу «Философия программирования Windows 95/NT» Небольшая рецензия по книге двадцатилетней выдержки была написана еще в 2016, публикую с микроправками. В оригинале исповедь автора называется «Дзен программирования в Windows 95» (Zen of Windows 95 Programming). Пусть вас не пугает цифра «95», ключевым сюжетом является име...

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

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

Системные требования Windows 10 версии 1909 Ожидается, что обновление Windows 10 November 2019 Update начнет свое развертывание для пользователей 12 ноября, и Microsoft обновила свои требования к процессору, чтобы отразить грядущие изменения. На сайте Microsoft Windows 10 версии 1909 представлена как совместимая опера...

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

Почти все настройки, необходимые для нормальной печати Cura 3.6. Часть 3 Я решил сменить формат на представление и описания различных "примочек" для улучшения качества или получения иного результата. Я считаю что ролик Дмитрия рассказывает о всём, что может понадобится на первых парах.Сегодня мы рассмотрим настройку Разглаживание.  Эта настр...

Новые серверы Fujitsu… и жидкостное охлаждение Компания Fujitsu представила в Москве новое поколение своих серверов PRIMERGY и PRIMEQUEST, которые построены на базе процессоров Intel Xeon Scalable, поддерживающих до 56 ядер. По словам Евгения Тарелкина, менеджера по развитию серверного бизнеса Fujitsu, главной особенност...

«Я бы сжёг половину своих картин»: В Москве горела трехэтажная квартира Никаса Сафронова после скандального заявления В центре столицы в жилом доме на Никитском бульваре случился пожар. Огнем оказался охвачен так называемый «звездный дом», в котором находятся квартиры актрисы Ингеборги Дапкунайте, певицы Любови Казарновской и художника Никаса Сафронова. Первые сообщения о возгорании поступ...

[Перевод] Работа над PEG на Core Developer Sprint В этой статье я не буду рассказывать о новых фичах генератора парсера — я достаточно описал его в предыдущих частях. Вместо этого хочу рассказать что я делал на Core Developer Sprint на прошлой неделе, прежде чем всё сотрётся из моей памяти. Хотя большая часть материала так ...

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

[Из песочницы] Поймут даже дети: простое объяснение async/await и промисов в JavaScript Привет, Хабр! Представляю вашему вниманию перевод статьи «JavaScript Async/Await and Promises: Explained like you’re five years old» автора Jack Pordi. Каждый, кто считает себя JavaScript-разработчиком, в какой-то момент должен был столкнуться с callback-функциями, промисам...

Линейная регрессия и методы её восстановления Источник: xkcd Линейная регрессия является одним из базовых алгоритмов для многих областей, связанных с анализом данных. Причина этому очевидна. Это очень простой и понятный алгоритм, что способствует его широкому применению уже многие десятки, если не сотни, лет. Идея зак...

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

Apple обновит клавиатуру в iOS 13 Оригинальный iPhone был революционным во всех отношениях — Apple сумела разработать не только передовой сенсорный интерфейс, но сделать его по-настоящему удобным в использовании. Чего только стоит программная клавиатура, в которой на момент выхода применялись интеллек...

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

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

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

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

Microsoft анонсировала новое приложение Office для Android и iOS Компания Microsoft представила новое приложение Office для пользователей Android и iOS, объединяющее в себе Word, Excel и PowerPoint, а значит больше нет необходимости устанавливать отдельные приложения для каждого из сервисов. С помощью приложения вы сможете создавать и ре...

Toshiba представила встраиваемую флеш-память стандарта UFS 3.0 Компания Toshiba Memory Europe GmbH (TME) начала поставки ознакомительных образцов устройств встраиваемой флеш-памяти …

[Перевод] Основы Signed Distance Field в 2D Хотя меши являются простейшим и наиболее универсальным способом рендеринга, существуют и другие варианты представления фигур в 2d и 3d. Одним из часто используемых способов являются поля расстояний со знаком (signed distance fields, SDF). Поля расстояний со знаком обеспечива...

Тесты подтвердили наличие улучшенной платформы у обновлённой приставки Nintendo Switch Как известно, обновлённая игровая приставка Nintendo Switch выделяется в первую очередь существенно улучшенной автономностью. Для новой модификации производитель заявляет о 4,5-9 часах автономной работы против 2,5-6,5 часа у старой версии. Также ранее в Сети появлялись ...

Разработчики рассказали о новых функциях MIUI 10, они появятся и в MIUI 11 Xiaomi непрерывно дорабатывает оболочку MIUI и часто информирует о функциях, которые будут внедрены в интерфейсе в ближайшее время. Вот и на этот раз разработчики рассказали о нововведениях, которые появятся в MIUI 10 в ближайшее время, а потом перейдут и в MIUI 11. Так...

Apple выпустила полностью обновленную веб-версию Apple Music Apple сегодня сделала большое обновление, выпустив в публичную “Бету” свое веб-приложение потоковой музыки Apple Music. Благодаря браузерному интерфейсу подписчики Apple Music могут пользоваться сервисом из любого места без привязки к операционной системе или устройству. App...

TikTok создает свой музыкальный сервис и хочет конкурировать с Apple Music А вы бы стали пользоваться музыкальным сервисом от TikTok? Если вам не знакомо название китайской компании ByteDance, то вы наверняка слышали о приложении TikTok (а, скорее всего, оно у вас и установлено). Так вот, это не просто очередная IT-корпорация, а непосредственный вл...

Как запустить ML-прототип за один день. Доклад Яндекс.Такси Машинное обучение применяется на всём цикле заказа автомобиля в Яндекс.Такси, и число компонентов сервиса, работающих благодаря ML, постоянно растёт. Чтобы строить их единообразно, нам потребовался обособленный процесс. Руководитель службы машинного обучения и анализа данных...

[Перевод] Два в одном: Intel Optane Memory H10 (часть 2) Часть 1 >> Часть 2 Тест накопителей AnandTech — The Destroyer The Destroyer — это чрезвычайно долгий тест, который реплицирует шаблоны доступа приложений с большим объемом ввода-вывода. Как при использовании в реальных условиях, накопители получают время от времени не...

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

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

SObjectizer-5.6.0: режем по живому, чтобы расти дальше Третьего дня стала доступна новая версия SObjectizer-а: 5.6.0. Ее главная особенность — это отказ от совместимости с предыдущей стабильной веткой 5.5, поступательно развивавшейся на протяжении четырех с половиной лет. Основные принципы работы SObjectizer-5 остались прежними...

Пароли в iOS 13 под угрозой, утечка данных Apple и радужный логотип: что произошло на этой неделе Можно бесконечно смотреть на три вещи: как Джони Айв вещает из белой комнаты, рассказывая о новых устройствах Apple (эх, уже не будет), как Тим Кук говорит «Amazing» и как устанавливается очередная бета-версия iOS 13 на iPhone. Да, на этой неделе Apple все же выпустила нову...

Число DDoS-атак в 2018 году снизилось, при этом они стали сложнее Низкая стоимость DDoS как услуги делает такие атаки одним из самых доступных видов кибероружия. По данным "Лаборатории Касперского", всё больше организаций внедряют решения для защиты от простых видов DDoS-атак, и в 2019 году злоумышленники, скорее всего, улучшат с...

Если хочется светильник, но не хочется как у всех. Добрый деньИзначально идея со светильником я подсмотрел скорее всего у Xiaomi, есть у них лампа Xiaomi Mi Home. Уж больно мне концепция понравилась, настольная/прикроватная лампа с мягким теплым свечением, плюс беспроводное управление.Так выглядит Xiaomi mi home, а вот так в...

HMD Global планирует к лету обновить до Android 9 Pie все свои смартфоны Nokia По части своевременного выпуска обновлений программного обеспечения HMD Global можно только похвалить. Компания уже обновила до Android 9 Pie такие модели смартфонов, как Nokia 8 и 8 Sirocco, Nokia 7.1 и 7 Plus, Nokia 6.1 и 6.1 Plus, Nokia 5.1 Plus. Более того, HMD Global за...

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

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

ASRock 4X4 BOX-R1000: неттопы со встраиваемым процессором AMD Компания ASRock анонсировала компьютеры небольшого форм-фактора 4X4 BOX-R1000, габариты которых составляют всего 110,0 × 118,5 × 67,3 мм. В семейство вошли модели 4X4 BOX-R1000M и 4X4 BOX-R1000V. В первом случае применяется процессор AMD Ryzen Embedded R1606G (2,6–3,5 ГГц),...

Ирландская история продления жизни Сейчас мы вам расскажем про одну свежую работу, сделанную при участии компании Inflazome (http://inflazome.com/). Эта компания зарегистрирована в Ирландии, штаб-квартира в Дублине. Inflazome разрабатывает лекарства, специализируясь на воспалительных заболеваниях. Финансирова...

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

Таких проблем, как с iOS 13, больше не будет. Apple меняет подход к тестированию ПО Релиз мобильной операционной системы iOS 13 оказался откровенно неудачным — в этой версии обнаружилось немало ошибок и проблем, некоторые из которых мигрировали в iOS 13.1 и 13.2. В Apple понимают, что с iOS 13 все получилось нехорошо, поэтому компания решила изме...

CES 2019: Зачем IBM хочет объединить все смартфоны мира в единую сеть Корпорация IBM разработала технологию, которая позволит использовать данные со смартфонов пользователей со всего мира для формирования максимально точных прогнозов погоды. Ее презентация состоялась на выставке CES 2019 в Лас-Вегасе. Благодаря новейшей разработке планируется...

[recovery mode] Добавляем функциональность Razor Pages в стандартный .NET Razor Pages — новая фича, появившаяся в Core.Net 2.0. Razor Page — это страница, состоящая из стандартной разметки (View) и бэкенд класса. В каком то смысле напоминает Web Forms только без поддержки сохранения состояния. Преимущество такого решения очевидно — мы избавляемся ...

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

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

На чем разрабатывать Oracle разработчику в 2019-м году (и после) Некоторое время назад я в очередной раз сменил место работы. Новый работодатель был настолько любезен, что разрешил мне выбрать любую IDE, которая понравится, и оплатить лицензию (но в разумных пределах). Также (в кои-то веки) у меня были права администратора на рабочем комп...

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

[Перевод] Зачем нам столько мессенджеров? Slack, Signal, Hangouts, Wire, iMessage, Telegram, Facebook Messenger… Зачем нам так много приложений для выполнения одной задачи? Десятилетия назад научные фантасты представляли себе летающие машины, автоматически готовящие еду кухни и возможность позвонить кому угодно на...

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

PHP Xdebug proxy: когда стандартных возможностей Xdebug не хватает Для отладки PHP-программ часто используют Xdebug. Однако стандартных возможностей IDE и Xdebug не всегда достаточно. Часть проблем можно решить с помощью Xdebug proxy — pydbgpproxy, но всё же не все. Поэтому я реализовал PHP Xdebug proxy на базе асинхронного фреймворка amph...

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

Перевод «Подготовьте ваши приложения к 64-бит требованиям» Перевод статьи Get your apps ready for the 64-bit requirement блога «Android Developers Blog». Современные 64-бит процессоры увеличивают скорость и обогащают опыт ваших пользователей. Добавление 64-бит версии приложения даёт улучшение производительности, открывает пути для...

В Corel обновили CorelDRAW Graphics Suite Компания Corel обновила CorelDRAW Graphics Suite, почти ничего не прибавив, но улучшив уже существующие функции. Компания также доработала свой пакет графических приложений для macOS, постаравшись учесть особенные потребностей пользователей компьютеров Mac. При разработк...

Галерея дня: Galaxy Note10 сравнили с отменённым смартфоном Samsung и Huawei Mate 30 Хорошо известный и зарекомендовавший себя китайский информатор под ником Ice Universe на своей страничке в социальной сети Twitter опубликовал два интересных рендера со смартфоном Samsung Galaxy Note10.  На одном из них Galaxy Note10 сравнивается с Project R6. Ист...

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

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

Морти, мы в UltraHD! Как посмотреть любой фильм в 4K, дорисовав его через малоизвестную нейросеть Наверное, вы слышали про технологию Яндекса DeepHD, с помощью которой они как-то раз улучшили качество советских мультфильмов. Увы, в публичном доступе ее еще нет, а у нас, рядовых программистов, вряд ли найдутся силы написать свое решение. Но лично мне, как обладателю Retin...

[Из песочницы] Fish Redux — новая Redux библиотека для Flutter В конце 2018 года Google, не без помощи Open-Source сообщества, сделал большой подарок для мобильных разработчиков, выпустив первую стабильную версию кросс-платформенного фреймворка для мобильной разработки Flutter. Однако, при разработке крупных приложений, немного больших,...

Лазерная коррекция зрения — так ли эффективен метод Smile на самом деле? Мои исходные данные: небольшая близорукость, -1 диоптрия, но всего лишь 20% остроты — видел только две строчки. Очки или линзы мне были неудобны, поэтому я решил сделать операцию. Выбор сводился всего к двум типам — Femto lasik или Smile. Фемто — проверенный и надежный мет...

[Перевод] Строители против синтаксиса Java Шаблон проектирования «строитель» — один из самых популярных в Java. Он простой, он помогает делать объекты неизменяемыми, и его можно генерировать инструментами вроде @Builder в Project Lombok или Immutables. Но так ли удобен этот паттерн в Java? Читать дальше →

Дебютировала Thin Mini-ITX плата ASRock A320TM-ITX ASRock обнародовала фото и характеристики материнской платы A320TM-ITX, выполненной в форм-факторе Thin Mini-ITX. Устройство поддерживает гибридные процессоры в конструктиве AMD AM4 и найдёт применение в различных мини-компьютерах, встраиваемых системах и моноблоках. В основ...

ANdroid Camera2 API от чайника Не так давно я возился со своей роботележкой, пытаясь водрузить на нее ANDROID смартфон. Моей, то есть его задачей, было сделать тележку эволюционно продвинутой. Чтобы она, так сказать, чувствовала мир его сенсорами, смотрела его глазом (камерой), слышала микрофоном и руга...

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

Просто и на C++. Основы Userver — фреймворка для написания асинхронных микросервисов В Яндекс.Такси придерживаются микросервисной архитектуры. С ростом количества микросервисов мы заметили, что разработчики много времени тратят на boilerplate и типичные проблемы, при этом решения не всегда получаются оптимальные. Мы решили сделать свой фреймворк, с C++17 и ...

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

iPhone OS 3.0 и поле искажения реальности… В третьей версии дебютировало столько функций, ставших основой iOS и до сих пор используемых в ней, что назвать её “пустоватой” или “недостаточно серьезной”, казалось бы, совершенно невозможно. Но в трех из четырех публикаций утверждалось именно это. 17 марта 2009 года сост...

Альтернативный оркестратор nomad на десктопе В настоящее время оркестрация контейнеров ассоциируется в первую очередь с kubernetes. Но это не единственный возможный выбор. Есть и альтернативные средства оркестрации, например nomad, разработчик HashiCorp (хорошо известный как разработчик средства виртуализации Vagrant)....

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

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

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

Хирургический шаблон из фотополимера Harz labs Dental yellow на Form2. Приветствую всех. Делал сегодня хирургические шаблоны, и наконец-то решил опробовать совет от коллег из Harz labs. Шаблоны обычные, ничего сверхъестественного, два имплантата на верхнюю челюсть, и один на нижнюю  Смысл совета в том, что обычный полимер dental yellow печатает...

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

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

Apple перейдёт на экраны совершенно нового типа в следующем году Аналитик Мин-Чи Куо (Ming-Chi Kuo) опубликовал сегодня очередную заметку, в которой описал прогноз относительно перехода Apple на экраны Mini-LED. Согласно мнению автора, купертинский гигант выпустит первые устройства с такими дисплеями в следующем году. Это будут новы...

Dynaudio Р4-LCR50 - встраиваемая в стены акустическая система Новая Серия Custom Performance от Dynaudio представляет собой...

Как создать UI kit, который продается. Этапы разработки коммерческой дизайн-системы Сегодня у любого дизайнера есть возможность заработать на собственном дизайн-продукте. Иконки, иллюстрации, шаблоны сайтов и приложений можно превратить в цифровой продукт и продавать по всему миру. Кому-то ваша поделка поможет ускорить работу и человек за нее заплатит. Др...

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

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

Из жизни с Kubernetes: Как HTTP-сервер испанцев не жаловал Представитель нашего клиента, стек приложений которого обитает в облаке от Microsoft (Azure), обратился с проблемой: с недавнего времени часть запросов некоторых клиентов из Европы стала завершаться ошибкой 400 (Bad Request). Все приложения написаны на .NET, развёрнуты в K...

Магазин приложений AppGallery от Huawei стал похож на Google Play Ещё немного и AppGallery станет похож на альтернативу Google Play Запрет на использование сервисов Google в новых смартфонах Huawei вынудил китайского производителя искать им альтернативу. Однако недолгие поиски привели к тому, что Huawei решила не полагаться на сторонние ко...

[Из песочницы] Локальный запуск юнит-тестов в STM32CubeIDE под Windows Введение Всем известна польза юнит-тестирования. Прежде всего, написание тестов одновременно с кодом позволяет раньше выявлять ошибки и не тратить впоследствии время на трудоемкую комплексную отладку. В случае embedded-разработки у юнит-тестирования есть особенности, связан...

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

Кому нужны хромбуки? Дисклеймер: В плане должностных обязанностей я не отношусь к людям, которые разрабатывают, рекламируют и продают Chrome OS, устройства на ее основе и продукт G Suite. В последнее время в отечественное медиапространство все чаще проникают хромбуки, а я, в свою очередь, все ч...

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

WWDC 2011: iCloud, по другую сторону экрана Для пользователей iCloud – магия. Заколдованные этой магией данные достаточно ввести на одном из устройств, и они моментально появляются на всех устройствах пользователя. С точки зрения разработчика, решившего “заколдовать” свои приложения, освоение iCloud не было непреодол...

Встречайте официальное приложение Community для Windows 10! Привет, дорогие друзья! Мы с радостью спешим сообщить вам, что выпускаем своё универсальное приложение для Windows 10. Будем честны, достаточно длительное время мы обдумывали, решали и пытались реализовать эту идею, однако существенно продвинуться в этом направлении не полу...

Google Assistant сможет распознавать пользователей не только по голосу, но и по лицам В свежей бета-версии мобильного приложения Google обнаружились доказательства того, что в скором времени персональный помощник Google Assistant может научиться распознавать пользователей не только по голосу, но и по лицам. Данная функциональность будет называться Face M...

Greenliant представила серию SSD ArmourDrive на основе SLC-памяти Американская фирма Greenliant Systems анонсировала серию выносливых и высоконадежных твердотельных накопителей ArmourDrive EX на основе SLC NAND флэш-памяти. В первую очередь они рассчитаны на использование во встраиваемых системах, серверах и датацентрах. Номенклатура проду...

iPhone 11 получит продвинутую технологию для работы с видео Камера iPhone 11 порадует передовыми опциями Меньше двух недель остаётся до презентации iPhone, а мы знаем о новинках почти всё. Утекли не только спецификации, но и будущий дизайн смартфонов. А это значит, что iPhone 11 не станет для поклонников Apple откровением — тем...

Samsung уже работает над Galaxy Note 10 Lite По всей видимости, Samsung готовит нам сюрприз Совсем недавно состоялся релиз горячо ожидаемого многими любителями Android смартфона от Samsung в лице Galaxy Note 10. Причем, что интересно, если каждый год до этого южнокорейский технологический гигант представлял нам по одно...

Опыт использования iOS 13. Стоит ли устанавливать бету? 24 июня Apple выпустила первую публичную бета-версию iOS 13. Я специально дождался и не стал устанавливать версию для разработчиков, которая была доступна уже после презентации в рамках WWDC 2019, поскольку на своем опыте знаю, какие риски могут за этим последовать. Но от п...

Почему нельзя экономить на кабелях Lightning. Личный опыт Несмотря на то что наушники, зарядные кабели и переходники, как правило, считаются расходным материалом, который не жалко в случае поломки и выбросить, применительно к аксессуарам для устройств Apple все обстоит несколько иначе. Хотя бы потому, что в большинстве своем всево...

В самом «сердце» Лондона. 11 июля Microsoft откроет свой первый фирменный магазин в Европе (трехэтажный, площадью 2040 кв. м) Компания Microsoft готовится к открытию своего первого розничного магазин в Европе. Он расположится в самом сердце Лондона — на пересечении улиц Риджент-стрит и Оксфорд-стрит, где находятся многие из самых популярных розничных магазинов в мире. Microsoft арендует для своего ...

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

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

На Android появился неудаляемый троян xHelper. Что с ним делать Заразились трояном? Наверняка это было проще, чем избавиться от него Несмотря на то что в понимании большинство пользователей вирус и троян – это одно и то же, на самом деле между ними огромная разница. Троян, в отличие от вирусов, которые действуют в автоматическом режиме, ...

MVCC-7. Автоочистка Напомню, что мы начали с вопросов, связанных с изоляцией, сделали отступление про организацию данных на низком уровне, подробно поговорили о версиях строк и о том, как из версий получаются снимки данных. Затем мы рассмотрели внутристраничную очистку (и HOT-обновления), обыч...

[Перевод] Государственный университет Адамс. Как взламывать веб-сайты. Часть 2 Государственный университет Адамс. Как взламывать веб-сайты. Часть 1 Давайте поговорим о нашей следующей атаке. Расскажу, как серверы вас идентифицируют. Для этого между браузером и сервером используется протокол HTTP без сохранения состояния, когда общение с сервером проис...

[Перевод] Как в 1995 году писали игры для Sega Saturn Это документ, написанный мной в 1995 году, когда я работал над первой игрой студии Neversoft: Skeleton Warriors. Это была первая игра, в которой я не использовал язык ассемблера 68K. Фото сделано примерно в то время. Комплект разработчика (dev kit) («Small Box» и ICE) стоит...

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

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

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

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

Настраиваем официальный шаблон PostgreSQL на Zabbix 4.4 Всем привет. В Zabbix появился официальный Template DB PostgreSQL. В этой статье настроим его в Zabbix 4.4. ПРИМЕЧАНИЕ Если у вас все хорошо с английским, то рекомендую установить шаблон по официальному мануалу github.com/zabbix/zabbix/tree/master/templates/db/postgresq...

Xiaomi Mi 9T Pro выйдет 20 августа Длительное время пользователи ждали релиза нового смартфона Xiaomi Mi 9T Pro, который является глобальной версией китайского флагмана K20 Pro. Однако, у китайской версии есть некоторые ограничения и заказывать смартфон из Китая не очень хотелось. Теперь же появилась информац...

[Перевод] Полное руководство по Flexbox Полное руководство по CSS flexbox. Это полное руководство объясняет все о flexbox, сосредотачиваясь на всех возможных свойствах для родительского элемента (контейнер flex) и дочерних элементов (элементы flex). Оно также включает в себя историю, демонстрации, шаблоны и таблиц...

Около трети компьютеров, хранящих биометрические данные, подвергались риску заражения вредоносным ПО Как выяснили эксперты Kaspersky ICS CERT, 37% компьютеров и серверов в мире, использующихся для хранения и обработки биометрических данных (таких как отпечатки пальцев, геометрия кисти руки, шаблоны лица, голоса и радужной оболочки глаза), как минимум ...

Microsoft расширяет возможности приложения «Ваш телефон» Недавно мы писали о новой важной функции, появившейся в приложении Microsoft «Your Phone». Эта новая функция называется «Экран телефона», которая перенесет экран вашего телефона в приложение «Ваш телефон», и позволяет вам контролировать все ваши мобильные приложения с вашего...

Первым автомобилем с ОС Android Automotive станет Polestar 2 — мощный электрический фастбек Ещё в мае позапрошлого года стало известно, что компании Volvo и Audi решили использовать для своих будущих информационно-развлекательных автомобильных систем полноценную ОС Android. И вот, спустя полтора года, появились подробности о первом автомобиле Volvo с такой опе...

Уменьшение размера docker образа с spring boot приложением Добрый день. Недавно передо мной встала задача запуска spring boot 2 приложения в kubernetes кластере используя docker образ. Эта проблема не является новой, достаточно быстро я нашел примеры в гугле и запаковал свое приложение. Я был очень удивлен не найдя alpine образ для ...

Подробнее о дате выпуска Windows 10 версии 1909 Windows 10 версии 1909 (под кодовым названием 19H2) должна была появиться 2 октября, но теперь кажется, что обновление будет завершено только лишь в конце этого месяца.Windows 10 версии 1909, которая является небольшим обновлением функций для Windows 10 версии 1903, может бы...

Звук с помощью вибрации дисплея: новые слухи о LG G8 Смартфон LG G8 должен стать первым флагманом компании в новом году и судя по многочисленным слухам, устройство выйдет поистине революционным. Сегодня новой информацией о смартфоне поделился “мастер сливов” OnLeaks. Согласно первоисточнику, новинка получит функцию...

Еще немного о печати шириной меньше диаметра сопла Некоторое время назад здесь:Была дискуссия с элементами срача по этому поводу.http://3dtoday.ru/blogs/artemkuchin/test-resolution/И далее здесь:http://3dtoday.ru/questions/a-zachem-sopla-raznykh-diametrov/Был срач с элементами дискуссии.Еще был задан вопрос здесь:https://rep...

Apple выпустила iOS 13 beta 6, macOS 10.15 beta 6 и tvOS 13 beta 6 Сегодня, 7 августа, Apple выпустила шестую бета-версию iOS 13 для разработчиков. Несмотря на то что обычно в Купертино предпочитают выпускать тестовые версии обновлений в понедельник или вторник, в последнее время компания все реже соблюдает сложившееся правило, отталкиваяс...

Психология Звукового Зрения. Светлана Лебедева рассказала, как учат людей новому способу восприятия «Темнота тоже бывает красивой – когда в ней прячется свет» (с) Сергей Лукьяненко «Мальчик и Тьма» Выучить незнакомый язык под силу каждому, будь то иностранный, жестовый или какой-нибудь язык программирования. Кто-то будет осваивать его несколько месяцев, кому-то потребует...

[Перевод] Деплоим на PythonAnywhere из GitHub Каждый может сделать так: локальный проект → github С (платным) ssh доступом вы сможете сделать так: локальный проект → PythonAnywhere В статье показано как (бесплатно) сделать так: локальный проект → github → PythonAnywhere Сначала я перечислю, зачем вам это может быть ну...

Модульные встраиваемые компьютеры серии UNO-1000/2000 UNO 1000/2000 — это полноценные X86-компьютеры для встраиваемых систем, в форм-факторе готовых модулей, с возможностью установки на DIN-рейку. Платформу легко использовать для любых специфических задач, благодаря широкому выбору фирменных модулей расширения iDoor, позволяю...

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

Мнение: Почему Galaxy Fold — провал похуже Galaxy Note 7 Самовоспламеняющиеся Galaxy Note 7, чьи продажи Samsung остановила в первый месяц продаж, стали хрестоматийным примером неудачи, с которым только могла столкнуться компания. Казалось, корейцы уже никогда не смогут отмыться от того позора. Но своевременные извинения вкупе со...

Apple выпустила первые бета-версии iOS 12.4, macOS 10.14.6, watchOS 5.3 и tvOS 12.4 Сегодня, 15 мая, Apple выпустила первые бета-версии iOS 12.4, macOS 10.14.6, watchOS 5.3 и tvOS 12.4. Обновления уже доступны для загрузки всем зарегистрированным разработчикам. Установить апдейты можно как по «воздуху», установив специальный профиль, так и с официального с...

Мультимедийную систему "Яндекс.Авто" установят в 2 млн автомобилей LADA, Renault и Nissan "Мы получим возможность встроить "Яндекс.Авто" в более 2 млн автомобилей Renault, Nissan и LADA в течение ближайших пяти лет", - говорится в сообщении компании, а которое ссылается ТАСС.Отмечается, что мультимедийную систему будут встраивать в машины на...

Список приложений для шуток 1 апреля День дурака не за горами и на этот случай мы прошерстили Google Play и отобрали для вас список из нескольких приложений, которые помогут вам разыграть своих друзей и знакомых, а также посмеяться самому. В этом списке не учитывается рейтинг и поэтому приложения в нем идут пр...

В Jira Service Desk нашли критические уязвимости и Jira Service Desk Data Center, устранив угрозу раскрытия информации. Злоумышленники могли воспользоваться двумя багами, чтобы получить важные данные о корпоративной инфраструктуре и выполнить сторонний код. Уязвимости CVE-2019-14994 и CVE-2019-15001 позволяли проводить ата...

Все еще используете iPhone 5? Обновитесь до iOS 10.3.4, чтобы телефон работал Возможно, вы помните, что еще в июле Apple выпустила незначительное обновление для исправления ошибок в более старых версиях операционной системы. Это было необходимо, чтобы помочь сохранить функциональность GPS в старых iPhone и iPad после потери сети. Однако проблема оказа...

[Перевод] Применение автоматического машинного обучения к нейросетям с архитектурой «трансформер» Из блога Google AI С момента обнародования информации о них в 2017 году, нейросети архитектуры типа "трансформер" применялись к задачам различного толка, от генерирования текстов в стиле фэнтези до написания музыкальных гармоний. Что важно, высокое качество работы «трансфор...

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

[Перевод] Любопытные извращения из мира ИТ — 3 Сайт The Daily WTF уже 14 лет собирает курьёзные, дикие и/или печальные истории из мира ИТ. Я перевёл несколько рассказов, показавшихся мне интересными. Все имена и названия компаний изменены. Предыдущие выпуски можно найти по метке "любопытные извращения". История первая:...

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

Mac Pro марта 2009 года: раздвоение личности… 3 марта 2009, весеннее обновление всех настольных линеек Mac’ов на фоне одного из самых тяжелых экономических кризисов нового тысячелетия. “Кризис – лучшее время для перемен” – сказал Стив Джобс в 1997. Через 12 лет ответом на кризис стала новая модель Mac Pro. Только эта н...

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

Windows 10 19H1 и 19H2 В 2019 году нас ждёт два крупных обновления системы Windows 10 на компьютерах и полностью новая версия Windows для устройств с невысокой производительностью. Вот и наступил 2019 год, что означает множество интересных событий в жизни операционной системы Windows 10. Известно,...

[recovery mode] ReactJS + MobX — опыт использования DI Мне кажется, настало время поделится подходом для написания ReactJS App, я не претендую на уникальность. Первый абзац можно пропустить. Я занимаюсь web разработкой уже давно, но последние четыре года я плотно сижу на ReactJS и меня все устраивает, в моей жизни был redux, но...

[Перевод] Почему в основе каждого нового веб-приложения в PayPal лежит TypeScript? Недавно мы опубликовали материал, в котором Эрик Эллиот критиковал TypeScript. Сегодня мы представляем вашему вниманию перевод статьи Кента Доддса. Тут он рассказывает о том, почему в PayPal перешли с Flow на TypeScript. Читать дальше →

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

[Перевод] Я ненавижу почти всё ПО Прим. переводчика: Недавно создатель NodeJS Райн Дал открывал конференцию HolyJS в питере. И я вспомнил, что у меня есть неопубликованный перевод с его блога и решил его опубликовать. Местами перевод довольно откровенный. Надеюсь, вам будет интересно. Дата выхода статьи — Ок...

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

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

Apache Kafka + Spring Boot: Hello, microservices Привет, Хабр! В этом посте мы напишем приложение на Spring Boot 2 с использованием Apache Kafka под Linux, от установки JRE до работающего микросервисного приложения. Коллеги из отдела фронтэнд-разработки, увидевшие статью, сетуют на то, что я не объясняю, что такое Apache ...

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

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

Security Week 26: спам в сервисах Google Чаще всего в наших еженедельных дайджестах мы обсуждаем какие-то новые факты или события, связанные с информационной безопасностью. В некоторых случаях такие открытия представляют чисто теоретический интерес: например, уязвимости типа Spectre в современных процессорах вряд л...

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

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

Спасти содержимое vCenter Content Library Начиная с шестой версии, в VMware vSphere есть удобная фича, позволяющая следить за актуальностью виртуальной инфраструктуры на удалённых площадках и филиалах, насаждая огнём и мечом стандарты виртуальной инфраструктуры главного офиса. Называется она Content Library и занима...

Опыт разработки сервиса Refund Tool с асинхронным API на Kafka Что может заставить такую большую компанию как Lamoda с отлаженным процессом и десятками взаимосвязанных сервисов существенно менять подход? Мотивация может быть совершенно разная: от законодательной до присущего всем программистам желания экспериментировать. Но это вовсе н...

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

ЗИЛ 131 в масштабе 1/16 Продолжая мучать китайскую машинку от WPL решил сделать для нее очередную кабину в масштабе 1/16. На этот раз выбор пал на ЗИЛ 131, ибо он и по размеру больше соответствует грузовику М35, и люди интересовались, да и модель уже почти готовая имелась.Немного подогнав размер и ...

Синглтон размещающий объекты в ROM и статические переменные(С++ на примере микроконтроллера Cortex M4) В предыдущей статье Где хранятся ваши константы на микроконтроллере CortexM (на примере С++ IAR компилятора), был разобран вопрос о том, как расположить константные объекты в ROM. Теперь же я хочу рассказать, как можно использовать порождающий шаблон одиночка для создания ...

Какую пасхалку Google спрятала в Android Q Google очень любит пасхалки. Так, например, компания, приурочивая это к различным праздникам и крупным (или даже мелким) событиям, регулярно встраивает в свой поисковик как для десктопных, так и для мобильных платформ различные игры или скрытые послания. Еще одна такая, ста...

[Перевод] Установка IPS-дисплея в Thinkpad T430S Если у вас ноутбук ThinkPad T420/T420S/T430/T430S, у меня есть отличная новость: вы можете заменить экран на что-нибудь достойное! Для ноутбука потребуется небольшая хирургическая операция, но это выполнимо! Если у вас ThinkPad другой серии, вам повезло… у T430S один из худ...

Глупость Redmi. Смартфон Redmi 8 действительно медленнее Redmi 7 Некоторое время назад бренд Redmi представил смартфоны Redmi 8A и Redmi 8, которые получили SoC Snapdragon 439. И всё бы ничего, только вот, если Redmi 7A тоже был основан на этой же платформе, то Redmi 7 располагает более производительной SoC Snapdragon 632, и было сов...

WWDC 2015: Никаких сенсаций Разрыва шаблонов и крушения стереотипов на этот раз не было. Разумно и предсказуемо, почти скучно. Прилично до неприличия. Последняя часть мероприятия удивила. Она была неуклюжей и неинтересной, наверное это был худший “One More Thing” за всю их историю. То что презентовали...

[Перевод] Отличия LabelEncoder и OneHotEncoder в SciKit Learn Если вы недавно начали свой путь в машинном обучении, вы можете запутаться между LabelEncoder и OneHotEncoder. Оба кодировщика — часть библиотеки SciKit Learn в Python и оба используются для преобразования категориальных или текстовых данных в числа, которые наши предсказате...

Теперь в Windows 10 можно посмотреть заряд и дублировать обои с Android-смартфона Microsoft в очередной раз обновила фирменное приложение Your Phone для Windows 10. В новой версии приложения стала доступна демонстрация уровня заряда батареи подключенного к компьютеру смартфона, а также синхронизация обоев Windows с мобильным устройством.

Мифы и легенды системного анализа или чем занимается аналитик в банке Привет! Меня зовут Настя, я аналитик мобильного приложения Альфа-Бизнес. Иногда меня спрашивают о том, чем я занимаюсь на работе. Друзья, родные и, как это ни странно, разработчики. Каждый раз я отвечают по-разному, пытаясь привести наиболее близкие собеседнику примеры. «С...

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

Режим «Картинка в картинке» в Android-версии YouTube становится доступным во всем мире В 2017 году компания Google представила режим «Картинка в картинке» (PiP) для приложения YouTube в Android, однако функциональность была доступна только пользователям платных подписок RED/Premium. В июне 2018 стало известно, что все пользователи приложения Y...

AMD нашла главного по Zen 2 и Navi AMD сегодня объявила о нескольких перестановках в команде ключевых руководителей, отвечающих за процессорные и графические решения. Суть изменений сводится к тому, что компания хочет сделать свою стратегию в отношении CPU и GPU подчинённой единым принципам и достичь таким об...

Gorp.NET – новая библиотека для создания реверсивных шаблонов с целью извлечения данных из структурированного текста Gorp.NET – новая библиотека для создания реверсивных шаблонов с целью извлечения данных из структурированного текста, основанная на имеющейся кодовой базе Salesforce Gorp. Читать дальше →

Google Translate станет системной функцией в Android Q Google предустанавливает на Android почти все свои приложения и сервисы, а те, которыми пренебрегает, позволяет совершенно беспрепятственно скачать из Google Play. Большинство из них, если говорить по правде, не представляют для пользователей особого интереса. Это связано с...

Подножка для мозга: платформа распределенного реестра Hedera Hashgraph Алгоритм консенсуса, асинхронная толерантность к необъяснимым ошибкам, ориентированный ациклический граф, распределенный реестр — о том, что объединяет эти понятия, и как не вывихнуть себе мозг — в статье о Hedera Hashgraph. Читать дальше →

[Перевод] Cтажировка в Haxe Foundation Представляю вам перевод еще одного доклада с HaxeUp Sessions 2019 Linz, считаю что он хорошо дополняет предыдущий, т.к. продолжает тему изменений в Haxe, произошедших в 2019 году, а также немного рассказывает о его будущем. Немного об авторе доклада: Аурел Били познакомился ...

IOTA демонстрирует рост на фоне объявленного партнерства с Jaguar Land Rover Крупнейший британский автопроизводитель Jaguar Land Rover приступил к тестированию смарт-контрактов на базе блокчейна IOTA. Как сообщает Reuters, разрабатываемая программа представляет собой встраиваемый в автомобили умный кошелек. Новый сервис позволит участникам получать т...

[Из песочницы] Перенос данных бэкапа новой версии MS SQL Server на более старую версию Предыстория Как-то раз для воспроизведения бага мне потребовался бэкап production-базы. К моему удивлению я столкнулся со следующими ограничениями: Бэкап базы был сделан на версии SQL Server 2016 и не был совместим с моей SQL Server 2014. На моем рабочем компьютере в кач...

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

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

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

Samsung анонсировала встраиваемый флэш-накопитель UFS 2.1 объемом 1 ТБ для смартфонов нового поколения Мы уже не раз слышали из разных китайских и корейских источников, что продвинутая версия смартфона Samsung Galaxy S10+ в максимальной конфигурации будет иметь 12 ГБ оперативной памяти и 1 ТБ флэш-памяти. И вот сегодня южнокорейский гигант Samsung заявил о том, что он приступ...

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

Опасные 3rd-party драйверы в вашей системе или LOLDrivers А вы знали, что вполне легитимный драйвер может дать злоумышленнику возможность прописаться в вашей системе надолго, оставаясь внутри даже после ее переустановки? Или превратить ваш компьютер в кирпич? Например, некоторые безобидные на вид доверенные (подписанные) драйверы ...

Туалет для Мейн-Кунов В прошлой статье, по результатам её обсуждений, я дописал, что займусь туалетом для Мейн-Кунов. Именно держатели этих котиков проявили повышенный интерес к теме. Этим туалетом я занялся и открыл специальный раздел на своем сайте, который так и называется — «Туалет для Мейн-К...

Возможности камер нового Huawei P30 Pro взорвали интернет Новейшая модель Huawei P30 Pro, возможно, и не набрала наивысшего балла за возможности видеосъемки на DxOMark, но смартфон все еще считается лучшим камерофоном на рынке в данный момент. P30 Pro поставляется с основной камерой, состоящей из четырех сенсоров, и один из этих с...

Что станет с Apple Watch в 2019 году Рынок умных часов — один из самых интересных в настоящее время. Если еще несколько лет назад о нем слышали только продвинутые пользователи и гики, то сейчас Apple Watch носят кинозвезды, политики — в общем, те, кто далеки от мира современных технологий. Неудивит...

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

Samsung выпустила отдельное обновление для камер Galaxy Note10 и Galaxy Note10+ Компания Samsung выпустила обновление для приложения камеры на новых флагманских смартфонах Galaxy Note 10 и Note 10+. Оно распространяется через  Galaxy Store. Обычно обновления для камеры приходят в общем апдейте прошивки, так что отдельный релиз застал многих в...

Samsung получила разрешение на продажи Galaxy S10 Lite Galaxy S10 Lite — это и есть Galaxy A91, о котором в последнее время все только и говорят Бюрократия наряду с халатностью является одной из причин, провоцирующих утечки информации о предстоящих новинках, которые их производители наверняка хотели бы сохранить втайне до ...

Вышла macOS 10.15.1 beta 2 с функцией удаления разговоров с Siri macOS 10.15.1 beta 2 уже здесь, но пока доступна только разработчикам Кто о чём, а лысый о расчёске. Наверное, этой фразой можно охарактеризовать то, что делает Apple в последние полтора месяца. Во всяком случае, уже которую неделю подряд компания выпускает минимум по одному...

Intel рассказал о своих видеокартах: 3 линейки, GPU с тысячами исполнительных блоков, память HBM, Rambo Cache и объемная компоновка Foveros Компания Intel продолжает раскрывать подробности о своих перспективных дискретных 3D-картах Xe. Новые данные о них сообщил главный архитектор Intel и старший вице-президент по архитектуре, программному обеспечению и графике Раджа Кодури (Raja Koduri) на м...

Мнение: Samsung на ровном месте увеличила цену Galaxy Fold, хотя могла этого не делать Galaxy Fold должен был и мог оказаться дешевле заявленных 2000 долларов, если бы Samsung не была так ослеплена ожиданием успеха. Еще бы, первый коммерческий по-настоящему складной смартфон – как тут не расплыться в предвкушении. Но чтобы снизить цену Galaxy Fold, корейцам н...

Первые приложения Xbox Project xCloud появились в Microsoft Store Как известно, публичное тестирование сервиса потоковой передачи игры Project xCloud начнётся в октябре этого года, а пока же Microsoft активно готовится к этому событию, устанавливая блейд-серверы xCloud в дата-центрах Azure и проводя очень ограниченное закрытое тестировани...

Apple выпустила iOS 13.1 beta 1 для всех Где взять публичную версию iOS 13.1 У Apple что ни день, то очередное обновление. Если вчера компания представила первую бета-версию iOS 13.1 для разработчиков, то уже сегодня выпустила её публичную версию. Она уже доступна для загрузки пользователям, которые прошли регистра...

От Galaxy S6 до S10: как менялось качество фото на камеру смартфонов Samsung Вследствие того, что производительность давно перестала играть определяющую роль при выборе нового смартфона для большинства потребителей, производители, будто сговорившись, переключились на их камеры. Год от года вендоры совершенствуют фотографические возможности своих апп...

Под капотом Screeps — виртуализация в MMO-песочнице для программистов В этой статье я расскажу про одну малоизвестную технологию, которая нашла ключевое применение в нашей онлайн-игре для программистов. Чтобы долго не тянуть резину, сразу спойлер: кажется, что такого шаманства в нативном коде Node.js, к которому мы пришли после нескольких лет ...

С Kingston в постели: необычные девайсы с чипами Kingston Слава программируемым микроконтроллерам! Их массовость и дешевизна породили целый вал «умной» электроники — и крупные бренды, и стартапы бросились цифровизировать всё, что раньше было аналоговым или вообще не было электроникой. Иной раз посмотришь на робота-пылесоса или како...

Что там с Lenovo Z6 Pro и его Супер ночным режимом Недавно вице-президент Lenovo Group Чанг Ченгфа (Chang Chengfa) объявил, что предстоящий флагманский смартфон компании, Lenovo Z6 Pro, будет анонсирован уже в апреле этого года. Ранее компания дразнила разговорами об анонсе смартфона во время MWC 2019, которая проходила в п...

[Перевод] Как сделать ваш HTML отзывчивым, добавив одну строку кода на CSS Привет, Хабр! представляю вашему вниманию перевод статьи «How to make your HTML responsive by adding a single line of CSS» автора Per Harald Borgen. В этой статье я научу вас, как использовать CSS Grid для создания крутой сетки изображений, которая изменяет количество сто...

Как Браузер для iOS А/Б-тестирование улучшал. Доклад Яндекса Не так давно мы посмотрели, как устроены A/Б-эксперименты в Поиске. Руководитель бригады разработки iOS-версии Яндекс.Браузера Андрей Сикерин sav42 на последней встрече CocoaHeads Russia тоже рассказывал про инфраструктуру А/Б-тестирования, только уже в своем проекте. — П...

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

3-way merge в werf: деплой в Kubernetes с Helm «на стероидах» Случилось то, чего мы (и не только мы) долго ждали: werf, наша Open Source-утилита для сборки приложений и их доставки в Kubernetes, теперь поддерживает применение изменений с помощью 3-way-merge-патчей! В дополнение к этому, появилась возможность adoption’а существующих K8s...

Современное состояние науки о сознании Чтобы немного отвлечься от физики, временно сменим тему. Мне понадобится концепция “философского зомби” — ее бы, вероятно, пришлось бы долго объяснять, но на помощь пришел сериал “Мир Дикого Запада”: Читать дальше →

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

Ультракомпактный набор шахматных фигур Я сделал этот набор по мотивам шахмат Lanier Graham (на фото ниже), а он сам, в свою очередь, вдохновлялся минималистичными шахматами Йозефа Хартвига, где форма фигур связана с геометрией хода. Но, в отличие от этих проектов, здесь шахматные фигуры помещаются одна внутри дру...

Когда почта доставляет: боремся с потерями push-уведомлений в iOS Со стороны пользователя почтовый клиент — приложение нехитрое. Разработчики Яндекс.Почты даже шутят, что в приложении всего три экрана: список писем; отправка письма; экран about. Но очень много интересного происходит под капотом. Как многие мобильные приложения, Почта испо...

Apple TV+: новый сервис с шоу и сериалами производства Apple Apple показала новый сервис Apple TV+ потокового вещания видео по подписке. В нем будет представлен эксклюзивный контент собственного производства компании. Сервис представил со сцены сам Стивен Спилберг, а также актрисы Риз Уизерспун и Дженнифер Энистон. Спилберг не толь...

Как установить публичную версию iOS 13 beta 1 без профиля разработчика Вчера, 24 июня, Apple выпустила iOS 13 beta 1 для публичного тестирования. Обновление вышло как минимум на неделю раньше ожидаемого, поскольку еще на WWDC’2019 было объявлено, что оно станет доступно лишь в июле. Однако, видимо, тестовая сборка для разработчиков показала се...

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

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

Бредогенератор: создаем тексты на любом языке с помощью нейронной сети Привет Хабр. Эта статья будет в немного «пятничном» формате, сегодня мы займемся NLP. Не тем NLP, про который продают книжки в подземных переходах, а тем, который Natural Language Processing — обработка естественных языков. В качестве примера такой обработки будет использов...

[Перевод] Каскадная инвалидация кэша. Часть 1 Вот уже несколько лет, как почти каждая статья о передовых подходах к кэшированию рекомендует пользоваться в продакшне следующими методиками: Добавление в имена файлов информации о версии содержащихся в них данных (обычно — в виде хэша данных, находящихся в файлах). Устано...

Мы не оптимизируем камеры своих смартфонов под шаблоны DxOMark: глава мобильного подразделения Sony ответил на провал камеры Xperia 1 в популярном рейтинге Флагманский смартфон Sony Xperia 1 дебютировал в феврале текущего года, но до специалистов DxOMark добрался только спустя полгода. Добрался, и провалился: в популярном рейтинге он набрал всего 91 балл и занял лишь 33 место. Как так могло получиться? Журналисты использов...

Почему некоторые газы называются «благородными»? Благородных газов в природе всего 6: Неон, Криптон, Аргон, Ксенон, Гелий и Радон Даже если вы очень далеки от химии, скорее всего, вы хотя бы раз в своей жизни могли услышать выражение «благородные газы». К ним относятся всем известные неон, криптон, аргон, ксенон, гелий и р...

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

Остановите планету, я сойду: состоялся релиз смартфона для TikTok Смартфон для использования TikTok. Что дальше? Суперпопулярное приложение и социальная сеть в одном лице TikTok довольно быстро завоевала известность во всем мире, составив достойную конкуренцию таким гигантам, как Facebook и Instagram. Однако только лишь на совершенствовани...

Async/await в C#: концепция, внутреннее устройство, полезные приемы Доброго времени суток. В этот раз поговорим на тему, в которой начинал разбираться каждый уважающий себя адепт языка C# — асинхронное программирование с использованием Task или, в простонародье, async/await. Microsoft проделали хорошую работу — ведь для того, чтобы использов...

AMD представляет новый Ryzen Embedded R1000 В ходе выставки Taiwan Embedded Forum компания AMD объявила о расширении семейства встраиваемых продуктов Ryzen и представила новый процессор AMD Ryzen Embedded R1000 SoC.

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

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

Автомобили Tesla Model S и Model X получат новые двигатели, чтобы привлечь покупателей Финансовый отчет компании Tesla за первый квартал 2019 года показал, что ее автомобили начали хуже продаваться. В частности, речь идет об электрокарах Model S и Model X — вероятно, люди начали предпочитать версию Tesla Model 3, тем более после снижения ее стоимости. К тому ...

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

[Перевод] Оценка влияния искусственного интеллекта на оффшорную нефть и газ Перевод статьи подготовлен специально для студентов базового и продвинутого курсов «Математика для Data Science». Интересно развиваться в данном направлении? Смотрите записи мастер-классов «Линейная алгебра: матрицы и их практическое применение» и «Математика для Data Scienc...

Samsung Galaxy S11 сможет снимать видео в 8К Буквально недавно, при помощи кода третьей бета-версии прошивки One UI 2.0 для Samsung Galaxy S10, были найдены детали нового Samsung Galaxy S11. В частности, подтвердилось наличие 108 Мп камеры. Однако еще более интересные особенности грядущего флагмана были найдены в четве...

Третья уязвимость Steam Windows Client, но не 0day В предыдущих сериях Не так давно я рассказал о двух уязвимостях Стима: CVE-2019-14743 и CVE-2019-15316. Там была целая история о том, как я пытался зарепортить их, у меня не получалось, меня забанили, и только после публичного раскрытия и помощи сообщества удалось достичь ре...

Как работает распознавание речи в iOS 13.2 В iOS 13.2 появилась функция офлайн-перевода речи в текст Несмотря на простоту и логичность iOS, иногда мы можем даже не подозревать о существовании в ней тех или иных функций, пока случайно на них не наткнёмся. В таких ситуациях мы чаще всего верим, что открыли Америку, не ...

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

«Иволга 2.0» — поезд, на котором вы поедете по МЦД Сегодня запуск первых двух маршрутов МЦД. По МЦД пойдут не просто поезда, а «Иволги». За пару месяцев до открытия МЦД на Тверском вагоностроительном. К релизу МЦД вышел и новый релиз «Иволги», теперь у неё версия 2.0. Давайте покажу, как собирается этот поезд, и что в нё...

На практике в 80-90% случаев веб-приложение тормозит из-за фронтенда: интервью с Иваном Акуловым Иван Акулов — Google Developer Expert в веб-технологиях и основатель перформанс-компании PerfPerfPerf. Уже совсем скоро на HolyJS 2019 Moscow он проведет воркшоп, посвященный, как ни странно, перформансу — поиску проблем в React, дебагу медленных приложений и другим рантайм...

Уничтожить монополию Америки в EDA. Иннополис делает первый шаг Еще с 1990-х годов меня поражало, что проектирование всей мировой цифровой микроэлектроники контролируется двумя конторами в Калифорнии, которые находятся в 10 минутах езды друг от друга — Synopsys и Cadence. В те времена четверть мирового проектирования делалось в Японии ...

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

Где послушать про Apache Ignite и GridGain в октябре Сделали канал для анонсов офлайн и онлайн мероприятий русскоязычного сообщества Apache Ignite в телеграме. Присоединяйтесь к @apacheigniteRus. Кстати, если вы давно хотите, чтобы разработчики Apache Ignite и GridGain про что-нибудь рассказали, а они всё не рассказывают, дайт...

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

Вы все еще можете обновить компьютер с Windows 10, если на нем менее 32 Гб памяти Еще в апреле Microsoft обновила свои минимальные системные требования к оборудованию для Windows 10, которые считаются крайне устаревшим списком минимальных спецификаций для ОС. Все, что добавила компания, заключалось в том, что для версии 1903 минимальный объем хранилища дл...

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

Samsung Galaxy A90 должен получить аккумулятор на 3610 мАч Samsung установила для себя новые горизонты на рынке смартфонов и в этом году нас ждет интересный модельный ряд. Компания всеми силами пытается сделать свои новинки серии Galaxy A выигрышными на фоне конкурентов, прежде всего, из Китая и 10 апреля мы узнаем, что же такого пр...

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

Redmi Note 8 будет смартфоном с водяным охлаждением Сегодня было официально подтверждено, что на 29 августа назначена премьера Redmi Note 8, Redmi Note 8 Pro и Redmi TV. После объявления даты анонса новых смартфонов, глава Redmi Лю Вейбинг опубликовал очередной тизер, который указывает на ряд характеристик новинок. В частнос...

AMD выпустит встраиваемые процессоры RX-8125, RX-8120 и новый A9-9820 Следующее поколение процессоров AMD Ryzen окажется далеко не единственными новинками AMD в этом году. И недавно в базе данных 3DMark нашлось упоминание о новых процессорах AMD RX-8125, RX-8120 и A9-9820. Подробнее об этом читайте на THG.ru.

Эксперты рассказали о Linux-варианте трояна Winnti Исследователи из компании Chronicle провели детальный анализ Linux-версии трояна Winnti, ранее ускользавшей от внимания ИБ-специалистов. По их мнению, функции этого штамма во многом совпадают с возможностями вредоносной программы, подробно описанной экспертами «Лаборато...

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

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

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

Около трети компьютеров, хранящих биометрические данные, подвергались атакам злоумышленников Как выяснили эксперты Kaspersky ICS CERT, 37% компьютеров и серверов в мире, использующихся для хранения и обработки биометрических данных (таких как отпечатки пальцев, геометрия кисти руки, шаблоны лица, голоса и радужной оболочки ...

Как быстро попробовать CQRS/ES в Laravel или пишем банк на PHP Недавно в подкасте "Цинковый прод" мы с товарищами обсуждали паттерн CQRS/ES и некоторые особенности её реализации в Elixir. Т.к. я в работе использую Laravel, грех было не покопаться в интернетах и не найти как же можно потягать этот подход в экосистеме данного фреймворка....

Sharp показала экран диагональю 31,5 дюйма разрешением 8К с кадровой частотой 120 Гц Еще в 2016 году Sharp показала экран диагональю 27 дюймов разрешением 8К, для подключения которого использовалось восемь кабелей DisplayPort 1.2. А сейчас компания представила новый экран разрешением 8К (7680 x 4320 пикселей) – диагональю 31,5 дюйма. Но особенност...

Стали известны некоторые характеристики Google Pixel 3 Lite XL Хотя на первый взгляд это звучало довольно неправдоподобно, все более вероятно, что у Google есть два дополнительных варианта Pixel 3 в процессе разработки. Pixel 3 Lite и Pixel 3 Lite XL (названия должны быть подтверждены) могут вернуть воспоминания о времени (не так давно)...

Команда Йозефа Пруши выпустила слайсер PrusaSlicer 2.0 Компания Prusa Research предлагает новую версию собственной адаптации приложения Slic3r. От оригинального программного обеспечения в ней уже почти ничего не осталось, так что настало время сменить и название.PrusaSlicer 2.0, как он теперь называется (ранее «Slic3r Prusa Edit...

5 лайфхаков оптимизации SQL-запросов в Greenplum Любые процессы, связанные с базой, рано или поздно сталкиваются с проблемами производительности запросов к этой базе. Хранилище данных Ростелекома построено на Greenplum, большая часть вычислений (transform) производится sql-запросами, которые запускает (либо генерирует и...

Настройка сервера для развертывания Rails приложения при помощи Ansible Не так давно мне было необходимо написать несколько ansible playbooks для подготовки сервера к деплою rails приложения. И, на удивление, я не нашел простого пошагового мануала. Копировать чужой плейбук без понимая происходящего я не хотел и в итоге пришлось читать документац...

Lenovo украла фанатское видео, чтобы рекламировать складной Motorola RAZR Уже давно не секрет, что Motorola работает над собственным складным смартфоном. Мы уже даже видели изображения этого смартфона, но ранее это были лишь слухи, а теперь стало известно, что Lenovo, чьей «дочкой» является Motorola, поделилась со СМИ видео, на котором показан но...

Apple вернёт разъем MagSafe? В 2016 году Apple представила новое поколение MacBook Pro. Ноутбуки получились откровенно спорными: мы лишились привычных портов USB Type A, клавиатуры стали менее надёжными, а спустя пару лет ещё и выяснилось, что каждый MacBook Pro имеет неприятный конструктивный дефект. ...

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

Как сделать частичную копию iPhone и создать рингтон в одном приложении С этого года Apple прекратит поддержку iTunes в привычном для нас виде — в компании считают, что в эпоху беспроводных технологий и «облаков» полноценный инструмент для трансфера данных с iPhone на компьютер (и наоборот) по проводу просто не нужен. Доля правды, конечно...

Тесты на Си без SMS и регистрации Недавно zerocost написал интересную статью «Тесты на C++ без макросов и динамической памяти», в которой рассматривается минималистический фреймворк для тестирования Си++ кода. Автору (почти) удалось избежать использования макросов для регистрации тестов, однако вместо них в ...

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

Что мы хотим увидеть в новом MacBook Pro Если верить информации авторитетного аналитика Минг Чи-Куо, Apple работает над новым поколением MacBook Pro с обновленным дизайном. Пока сложно сказать, какие именно изменения получит профессиональные ноутбуки компании, однако наверняка у каждого пользователя есть свой спис...

5 способов сделать Python-сервер на Raspberry Pi. Часть 2 Привет Хабр. Сегодня мы продолжим изучать сетевые возможности Raspberry Pi, а точнее их реализацию на языке Python. В первой части мы рассмотрели базовые функции простейшего веб-сервера, работающего на Raspberry Pi. Сейчас мы пойдем дальше, и рассмотрим несколько способов, ...

Tarantool Kubernetes Operator Kubernetes в значительной мере упрощает эксплуатацию приложений. Он забирает на себя ответственность за развертывание, масштабирование и отработку отказов, а декларативная природа описания ресурсов упрощает управление сложными приложениями. Тarantool может выполнять роль ...

Математика в Gamedev по-простому. Триангуляции и Triangle.Net в Unity Всем привет! Меня зовут Гриша, и я основатель CGDevs. Математика – очень крутой инструмент при разработке игр. Но если скажем без понимания векторов и матриц обойтись в принципе сложно, то алгоритмы триангуляций не столь обязательная вещь, но с помощью них решается достаточн...

Как украсить местечковый Комикон с помощью прутка для 3d принтера от BestFilament часть 1 Здравствуйте всем! Хотелось бы поделится с вами опытом изготовления крупногабаритных вещей на 3d принтере. В рамках подготовки местного фестиваля, нашей команде предстояло выполнить большой объем работ за короткий промежуток времени. Примерно за 3 месяца нами было израсходов...

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

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