Социальные сети Рунета
Воскресенье, 28 апреля 2024

[Перевод] Параллельные запросы в PostgreSQL В современных ЦП очень много ядер. Годами приложения посылали запросы в базы данных параллельно. Если это отчетный запрос ко множеству строк в таблице, он выполняется быстрее, когда задействует несколько ЦП, и в PostgreSQL это возможно, начиная с версии 9.6. Понадобилось 3 ...

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

[Перевод] Основы PowerShell: определение конца строки с определенным символом Знаете ли вы, что можно определить, заканчивается ли строка определенным символом или начинается с него в PowerShell? Томас Рейнер (Thomas Rayner) ранее поделился на CANITPRO.NET, как это легко сделать с помощью регулярных выражений (regular expressions) или, проще говоря, R...

Нужно ли чистить строки в JavaScript? Что? Строки могут быть «грязными»? Да, могут. //.....Какой-то код console.log(typeof str); // string console.log(str.length); // 15 console.log(str); // zzzzzzzzzzzzzzz Вы думаете, в этом примере строка занимает 30 байт? А вот и нет! Она занимает 30 мегабайт! Читать дальше...

Работа с API КОМПАС-3D → Урок 16 → Управляющие символы Продолжаем цикл статей по работе с API САПР КОМПАС-3D. Управляющие символы уже несколько раз встречались нам на предыдущих уроках цикла. Тогда каждый раз говорилось, что выводимые строки не должны их содержать, так как КОМПАС обрабатывает их особым образом. Теперь пришло вре...

Работа с API КОМПАС-3D → Урок 15 → Составные строки на основе параграфа В уроке 12 мы познакомились с составными строками и рассмотрели недокументированный способ их создания. В уроке 13 были представлены параграфы. Сегодня мы рассмотрим, как их использовать для создания составных строк. Для начала возьмем строки, включающие в свой состав отклон...

[Из песочницы] F-strings или как сделать код чуть более быстрым и читаемым В Python есть 3 способа форматировать строки, и один из них лучше других. Но не будем забегать наперед — о каком именно форматировании вообще речь? Каждый раз когда мы хотим поприветствовать пользователя по имени нам нужно вставить строку с именем в строку-шаблон. Большинс...

Google тестирует кнопку воспроизведения в Chrome Англоязычные пользователи заметили, что Google тестирует кнопку воспроизведения на панели инструментов в браузере Chrome. С её помощью можно проигрывать или приостанавливать видео и музыку на вкладках. Новая функция получила название «Global Media Controls». В настоящее врем...

Подборка @pythonetc, июнь 2019 Это одиннадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Символ \ в обычной строке имеет особое значение. \t — это символ табуляции, \r — разрыв строки, и так далее. Чтобы отключить такое поведение, вы ...

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

Я у мамы не инженер Я уже сбился со счёта часов, которые я потратил на то, чтобы сделать “небольшую коробочку” и вдруг я поймал себя на мысли, что я очень зауважал инженеров — людей, который умеют и могут проектировать и создавать новые вещи. В голове сразу нахлынули воспоминания об устройств...

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

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

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

По слухам, конкурент Apple может предложить ARKit На WWDC 2019 Apple объявила офлайн поиск, под кодовым названием Blue Avengers, как одну из новых функций iOS 13 и macOS Catalina. Это позволяет пользователям находить свои устройства, даже если их потерянные устройства не подключены к Интернету. Фоновый процесс, который наз...

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

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

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

[Перевод] Разбираем Async/Await в JavaScript на примерах Автор статьи разбирает на примерах Async/Await в JavaScript. В целом, Async/Await — удобный способ написания асинхронного кода. До появления этой возможности подобный код писали с использованием коллбэков и промисов. Автор оригинальной статьи раскрывает преимущества Async...

Как увеличивать (масштабировать) экран на Mac (macOS): 3 способа Существует достаточно много вариантов, когда может понадобиться функция масштабирования в среде macOS. Ей могут пользоваться как люди с плохим зрением, так и дизайнеры, которым нужно быстро увеличить какой-нибудь участок картинки при помощи горячих клавиш. В этом материале м...

Вычисляем символьные выражения с нечеткими треугольными числами в python Привет, Хабр! Сегодня миниатюрный туториал о том, как сделать разбор строки с математическим выражением и вычислить его используя нечеткие треугольные числа. При соответствующих изменениях кода туториал сгодится для работы и с другими «кастомными» переменными. Требования: ...

HolyJS 2019: Разбор задач от компании SEMrush (Часть 1) На прошедшей 24-25 мая в Санкт-Петербурге очередной конференции для JavaScript-разработчиков HolyJS стенд нашей компании предлагал всем желающим новые задачки. В этот раз их было 3 штуки! Задачи выдавались по очереди, а за решение каждой последующей полагался знак отличия ...

[Перевод] Функциональный JavaScript: что такое функции высшего порядка и зачем они нужны? «Функции высшего порядка» — это одна из тех фраз, которыми часто разбрасываются. Но редко кто может остановиться и объяснить, что это такое. Возможно, вы уже знаете, что называют функциями высшего порядка. Но как мы используем их в реальных проектах? Когда и почему они быва...

Microsoft выпускает обновление для исправления функции SFC в Windows 10 В июле у ряда пользователей Windows 10 возникли проблемы при исправлении поврежденных файлов с помощью функции sfc /snannow, и Microsoft сообщила, что виновником является обновление для Защитника Windows.Функция командной строки Windows 10 sfc /snannow не работает со следующ...

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

QVD-файлы — что внутри, часть 2 В первой статье о структуре QVD файла я описал общую структуру и достаточно подробно остановился на метаданных. В этой статье я опишу формат хранения информации о колонках, поделюсь своим опытом трактовки этих данных. Итак (вспоминаем) QVD файл соответствует реляционной табл...

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

В Edge Canary тестируется встроенный переводчик сайтов на базе Microsoft Translator Многие пользователи социальной сети Reddit неожиданно обнаружили новую функцию в предварительной версии Edge на Chromium из ветки Canary, которая позволяет автоматически переводить сайты на другие языки при помощи сервиса Microsoft Translator. Соответствующая иконка появляе...

[Перевод] Интервью — 10 вопросов про Swift. Часть 2 До запуска курса «iOS-разработчик» остается все меньше времени, поэтому сегодня мы продолжаем публиковать материал из серии «10 вопросов про Swift». Первую часть которого можно прочитать тут. Объясните дженерики в Swift? Дженерики (универсальные шаблоны) позволяют вам пис...

[Из песочницы] Пишем telegram бота на python с помощью библиотеки telebot Лирическое отступление Боты сегодня — это многофункциональный инструмент, как для бизнеса, так и для развлечений. Лично я считаю, что за ними будущее. Конечно, прочитав эту статью, вы не сможете создавать большие проекты, но заинтересоваться и начать — вполне. Установка и н...

[Перевод] Рассказ о том, почему я до сих пор использую jQuery Многие, когда речь заходит о jQuery, говорят так: «Просто пользуйтесь обычным JavaScript. Библиотека jQuery вам не нужна». Что тут сказать? Я не нуждаюсь во многих вещах, но, несмотря на это, хорошо, когда они есть. Так и jQuery. Я в этой библиотеке не нуждаюсь, но её, опред...

Полный привод в матрицах 4×4 Само умножение нехитрое, элементы строк умножаются на столбцы поэлементно и складываются. Как корректно умножать можно посмотреть здесь Языковая часть написана на Delphi, а для оптимизации код выполнен с применением встроенного 64-х битного ассемблера. Рассматриваются 4 прак...

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

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

[Перевод] Используйте __main__.py Зачем нужен __init__.py знает, наверное, любой питонист, но что насчёт __main__.py? Я видел немало проектов либо рабочих, либо на Github, которые не используют это магический файл, хотя могли бы сделать свою жизнь проще. На мой взгляд, __main__.py это лучший способ для взаим...

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

Блокировки в PostgreSQL: 2. Блокировки строк В прошлый раз мы говорили о блокировках на уровне объектов, в частности — о блокировках отношений. Сегодня посмотрим, как в PostgreSQL устроены блокировки строк и как они используются вместе с блокировками объектов, поговорим про очереди ожидания и про тех, кто лезет без оче...

Значки в строке состояния — что они значат? Батарея, самолет, интернет, NFC и другие иконки и значки в строке состояния Android. В смартфонах и планшетах есть различные функции и приложения,...

Как получить доступ к скрытому меню Android Знаете ли вы, что ваш смартфон под управлением Android имеет секретное скрытое меню для настройки системного пользовательского интерфейса вашего телефона? Оно называется System UI Tuner и его можно использовать для самых разных целей. От диагностики до настройки некоторых в...

MVCC-3. Версии строк Итак, мы рассмотрели вопросы, связанные с изоляцией, и сделали отступление об организации данных на низком уровне. И наконец добрались до самого интересного — до версий строк. Заголовок Как мы уже говорили, каждая строка может одновременно присутствовать в базе данных в не...

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

[Перевод] JDK 9/JEP 280: конкатенация строк никогда больше не будет прежней И снова здравствуйте. Как мы уже писали, на следующей неделе стартует новая группа обучения по курсу «Разработчик Java», по устоявшейся традиции делимся с вами переводом интересного материала по теме. Начиная с JDK 9 конкатенация строк претерпела значительные изменения. JE...

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

[Из песочницы] Уроки по SDL 2: Урок 1 — привет, SDL 2 Всем привет! Решил, вот, посмотреть на SDL 2, но на русском ничего толкового не нашел. Решил написать свое, питаясь вдохновением отсюда. Установку SDL 2 я пропущу, а начну сразу с написания программ, итак: Ваше первое окно начнем с подключения SDL 2. #include <SDL2/SD...

Как понять, использует iPhone 11 функцию Deep Fusion или нет   Ещё в прошлом месяце с релизом iOS 13.2 в iPhone 11 появилась функция съемки сверхчетких детализированных фотографий Deep Fusion. Однако периодически сложно определить, какой именно снимок получился с активированной функцией. В этом случае спасает условно-беспла...

Состоялось обновление Microsoft Launcher Компания Microsoft представила все основные новые функции бета-версии Microsoft Launcher 5.1 в основной версии приложения.Этот выпуск 5.1.0.47682 поставляется с несколькими новыми функциями, такими как интеграция Sticky Notes в карты Notes, интеграцию Microsoft To-Do в карту...

Почему Google меняет стандартный интерфейс URL в браузере В сентябре прошлого года разработчики Chrome выдвинули радикальное предложение: изменить отображение URL в браузере. В некоторых изданиях сразу появились статьи с паническими заголовками «Google хочет убить URL» Теоретически, Google выгодно, чтобы пользователи заходили на в...

5 неочевидных функций Chrome для Android, которые сделают его удобнее Какие скрытые функции есть в Google Chrome Удобный, функциональный, понятный — всё это про Chrome. Несмотря на все его недостатки, Google удалось создать такой браузер, которым пользуются два миллиарда пользователей и в ус не дуют. Большинству из них нет никакого дела ...

[Из песочницы] Простейшая командная строка на NASM и QEMU Итак, сразу к делу. Писать будем под Linux, на NASM и с использованием QEMU. Установить это легко, так что пропустим этот шаг. Подразумевается, что читатель знаком с синтаксисом NASM хотя бы на базовом уровне (впрочем, ничего особо сложного здесь не будет) и понимает, что т...

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

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

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

[Перевод] Печальная судьба спецификаторов формата функции printf для символов Юникода в Visual C++ Поддержка Юникода в Windows появилась раньше, чем в большинстве остальных операционных систем. Из-за этого многие проблемы, связанные с представлением символов, в Windows решались не так, как в других системах, разработчики которых отложили внедрение нового стандарта до лучш...

Wayback Machine покажет, как менялось содержимое URL с течением времени Сервис Wayback Machine добавил новую функцию «Changes», с помощью которой пользователи смогут увидеть, как менялось содержимое конкретного URL с течением времени. Инструмент выделит добавленный и удалённый контент жёлтым и синим цветом соответственно. Чтобы воспользоваться н...

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

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

MVCC-5. Внутристраничная очистка и HOT Напомню, что мы рассмотрели вопросы, связанные с изоляцией, сделали отступление про организацию данных на низком уровне, а затем подробно поговорили о версиях строк и о том, как из версий получаются снимки данных. Сегодня займемся двумя довольно тесно связанными вопросами: ...

AMD может возродить выпуск двухпроцессорных видеокарт Компания AMD на рынке видеокарт в своё время достаточно долго придерживалась стратегии выпуска относительно небольших GPU для среднебюджетых адаптеров. А для создания топовых 3D-карт использовались два таких GPU. И хотя такие решения имели ограничения, они позволяли бе...

[Из песочницы] 2 минуты с Webpack tree-shaking и re-export Вступление Позвольте мне начать. У нас был монолитный фронтэнд с большим наследием. Сервисы жили в одних файлах с компонентами. Всё было вперемешку и с лозунгом на фасаде: “Пусть всё будет под рукой – так легче найти, что надо". И не важно, что длина файла 200+, 300+, 5...

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

[recovery mode] Gradle + LLVM Этот небольшой пост может оказаться полезен тем, кто хотел бы быстро начать работать с LLVM, не заморачиваясь с закачкой исходников и просторойкой фреймворка. Кто не хотел бы ковыряться в малопонятных скриптах CMake-а чтобы добиться ожидаемого результата, ну и наконец, прост...

Чем проще задача, тем чаще я ошибаюсь Эта тривиальная задача возникла в один из пятничных дней и должна была занять 2-3 минуты времени. В общем, как всегда. Коллега попросил поправить скрипт у него на сервере. Сделал, сдал ему и обронил ненароком: «Время спешит на 5 минут». Сервер его, пусть сам и разбирается с...

В приложении Яндекс.Диск для Android появились новые функции Например, можно просматривать фото как из облака, так и из памяти смартфона, искать объекты, просто задав в строке поиска их название.

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

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

Как активировать новое меню расширений в Google Chrome Как скрыть расширения в Google Chrome Расширения являются ключевой функцией Google Chrome, которая помогла ему обрести популярность. Благодаря расширениям он, по сути, превратился из просто удобного браузера в подобие операционной системы с собственным ПО и диспетчером задач...

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

[Перевод] IBM Watson Visual Recognition: функция распознавания объектов теперь доступна в IBM Cloud До недавних пор IBM Watson Visual Recognition в основном использовался для распознавания изображения, как единого целого. Однако работа с картинкой, как с единым целым — далеко не самый правильный подход. Теперь, благодаря новой функции распознавания объектов, пользователи...

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

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

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

Xiaomi "украдет" свежую фишку iPhone 11 Как стало известно, Xiaomi занимается внедрением абсолютно новой функции в собственную оболочку — MIUI. Об этом говорят строки кода, найденные участниками сообщества с интернет-портала XDA Developers.

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

ФАС оштрафовала Google за рекламу услуг по написанию дипломов Комиссия ведомства установила, что при наборе в строке поиска Google словосочетания "дипломная работа заказать" под строкой поиска отображались объявления о соответствующих услугах с пометкой "реклама". Штраф за это нарушение составил 100 тыс. рублей.

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

[Перевод] 5 уроков, которые мы усвоили, написав более 300 000 строк инфраструктурного кода Краткий мастер-класс по разработке инфраструктурного кода В октябре этого года я выступил с докладом на конференции HashiConf 2018, где рассказал о 5 ключевых уроках, которые я и мои коллеги из Gruntwork усвоили в процессе создания и поддержки библиотеки из более чем 300 00...

[Перевод] Почему ['1', '7', '11'].map(parseInt) возвращает [1, NaN, 3] в Javascript? Javascript — странный. Не верите? Ну попробуйте тогда преобразовать массив строк в целые числа с помощью map и parseInt. Запустите консоль (F12 на Chrome), вставьте код ниже и нажмите Enter ['1', '7', '11'].map(parseInt); Вместо ожидаемого массива целых чисел [1, 7, 11] мы ...

Нельзя так просто взять и написать SELECT, если вендор не разрешает… но мы таки напишем TL;DR: GitHub://PastorGL/AQLSelectEx. Однажды, ещё не в студёную, но уже зимнюю пору, а конкретно пару месяцев назад, для проекта, над которым я работаю (нечто Geospatial на основе Big Data), потребовалось быстрое NoSQL / Key-Value хранилище. Терабайты исходников мы вполне ...

Использование DbTool для засеивания (seeding) баз данных в приложениях .NET (Core) Представляем вашему вниманию DbTool — утилиту командной строки для экспорта данных БД в различные форматы и open-source библиотеку Korzh.DbUtils, использование которых может значительно упростить первоначальное "засевание" базы данных в вашем .NET (Core) приложении. С помощь...

Microsoft осквернила командную строку: в ней появились вкладки, темы и… эмидзи Шло время, менялись операционные системы и их пользователи, но святая святых Windows – приложение командной строки – оставалось практически неизменным. И вот сегодня традиционный миропорядок рухнул – Microsoft на мероприятии Build 2019, которое в эти д...

Как создать Python wrapper и не сойти с ума Недавно на Хабре прочитал статью про очень полезный инструмент, и так как я уже давно искал какой-то проект, чтобы начать контрибьютить, решил посмотреть, что там есть на гитхабе и чем можно помочь. Одно из issue было на счет создания обертки (дальше буду использовать wrappe...

Использование кастомных функций потери и метрики качества обучения в Keras При обучении нейронной сети на обучающей выборке на выходе нейросети вычисляются два ключевых параметра эффективности обучения — ошибка и точность предсказания. Для этого используются функция потери (loss) и метрика точности. Эти метрики различаются в зависимости от поставле...

Повышение привелегий в PostgreSQL — разбор CVE-2018-10915 Не секрет, что стейт-машины среди нас. Они буквально повсюду, от UI до сетевого стека. Иногда сложные, иногда простые. Иногда security-related, иногда не очень. Но, зачастую, довольно увлекательны для изучения :) Сегодня я хочу рассказать об одном забавном случае с PostgreS...

[Перевод] composer и автодополнение командной строки Так как я все больше и больше добавляю свои скрипты в файлы composer.json, было бы полезно иметь автозаполнение для команды composer в bash. Мой вопрос в Твиттере не дал немедленного решения, и, поскольку я уже делал нечто подобное для Phing, я закатал рукава и написал своё ...

Luxoft и автомобили: 100 млн. строк кода, «гаджет на колесах», и… причем здесь Mercedes? Сегодня автомобиль создают не только инженеры и маркетологи, но также и разработчики ПО. Ведь количество различные вспомогательных систем может исчисляться десятками: от них напрямую зависит не только комфорт использования автомобиля, но и безопасность поездки. Что сейчас пр...

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

Lambda-функции в SQL… дайте подумать О чем будет статья, и так понятно из названия. Кроме того, автор объяснит, зачем с его точки зрения это нужно, а также расскажет, что SUBJ не просто модная технология, но и «дело вдвойне нужное — как приятное, так и полезное». Читать дальше →

Получение статистики по всем клиентам из API Яндекс Директ в разрезе дней с помощью Python В работе часто использую короткую статистику в разрезе дней чтобы отслеживать отклонения трафика. Более подробно о написании запросов написал в статье « Получение рекламных кампаний Яндекс Директ с помощью API в DataFrame (Python)». В данной статье я в большей степени рас...

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

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

Valve запустила открытый бета-тест Steam Remote Play Together. Это функция для удаленной игры в локальный кооператив и мультиплеер Как и было запланировано, 21 октября в Steam стартовало открытое бета-тестирование анонсированной в начале месяце функции Remote Play Together для удаленной игры в локальный кооператив и мультиплеер. Как мы отмечали в анонсе Remote Play Together, функциональность работает по...

Выделение активной строки таблицы на чистом CSS Несколько дней назад мой друг попросил помочь с решением задачи, которая была на его собеседовании. Интервьюер дал ему следующий фрагмент кода: tbody:hover tr { opacity: 0.24; } Также добавил: “Сейчас, при наведении на таблицу, все строки становятся блеклыми. А требуется ...

Подборка @pythonetc, июль 2019 Это двенадцатая подборка советов про Python и программирование из моего авторского канала @pythonetc. ← Предыдущие подборки Нельзя изменять переменные замыканий с помощью простого присваивания. Python расценивает присваивание как определение внутри тела функции и вообще ...

В macOS Catalina можно подписывать документы с помощью iPhone и iPad Подпись цифровых документов — дело достаточно муторное. Как правило, чтобы подписать PDF-файл, его нужно сначала распечатать, а уже потом, подписанный, отсканировать. Apple заметно упростила эту процедуру на Mac, но раньше для подписи документов в «Просмотре» был нуже...

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

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

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

Особенности Samsung Galaxy Note10 пришли на обычные смартфоны Galaxy Компания Samsung обновила приложение Samsung Notes и теперь некоторые функции флагманского смартфона Samsung Galaxy Note10 стали доступны другим представителям линейки Galaxy Note и устройствам Galaxy вообще. Об этом сообщил ресурс SamMobile.  По данным источника,...

Flare-On 2019 write-up -0x01 — Intro Данная статья посвящена разбору всех заданий Flare-On 2019 — ежегодного соревнования по реверс-инжинирингу от FireEye. В данных соревнованиях я принимаю участие уже второй раз. В предыдущем году мне удалось попасть на 11-ое место по времени сдачи, решив все з...

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

Meizu выпустит Flyme 8 на следующей неделе Компания Meizu объявила дату выхода долгожданной прошивки Meizu Flyme 8. Он состоится в следующий вторник, 13 августа. Flyme 8 выйдет на три месяца позже, чем Flyme 7, которая была запущена в апреле прошлого года. Тестирование новой прошивки началось ещё в первом квартале эт...

Криптографический АРМ на базе стандартов с открытым ключом. Функции разбора и просмотра ASN1-структуры Основной работой при создании утилиты cryptoarmpkcs было не разработка кода или графического интерфейса, а работа с ASN1-структурами. Именно в этих структурах хранятся сертификаты x509v3, электронные подписи документов (PKCS#7, CMS), запросы на сертификаты (PKCS#10, CSR), от...

Полезная функция Safari из iOS 12.2, которую вы могли не заметить iOS 12.2, чей релиз состоялся 25 марта, стала одним из самых полезных обновлений iOS за последнее время. Несмотря на минимум новых функций, актуальная версия операционной системы получила ряд значимых нововведений, способных изменить опыт ее использования к лучшему. И речь ...

Microsoft представила Windows Terminal – новую командную строку для Windows В рамках стартовавшей вчера конференции для разработчиков Build 2019 компания Microsoft представила новое приложение для Windows 10 под названием Windows Terminal, которое объединит в едином интерфейсе командные строки PowerShell и CMD, а также подсистему Windows Subsystem f...

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

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

[Из песочницы] DevPRO'19: вид со стенда Wrike Я стою перед стендом Wrike на DevPRO'19 и смотрю, как проходит очередная сессия Code Battle. — А они жёсткие, раз сидят и код пишут, — говорит мне школьник, на вид девятиклассник. — Ну да, есть среди них жёсткие ребята. Сам не хочешь попробовать? — отвечаю ему. — Не, я не у...

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

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

Задачи с собеседований: является ли строка палиндромом Еще одна популярная задача с собеседований разработчика – нужно определить является ли строка палиндромом. Палиндромом называется строка, которая пишется одинаково слева направо и справа налево (в том числе пустая). При определении “палиндромности” строки д...

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

[Из песочницы] Как я обучал нейросеть для реализации функции оценки положения на Russian AI Cup CodeBall 2018 Имея возможность качественно оценить положение в игре в какой-то момент времени и возможность симулировать игровой мир, при создании бота, для одного из решений, остается лишь стремиться совершать такие действия, которые приводят к улучшению этой оценки в ближайшем будущем. ...

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

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

Стратегия маскировки: разбор игры про закрытую информацию Давайте расскажу, как мы разбираем механики игр. Есть вот такая карточка: 2-6 игроков знают, какое слово с неё загадано, а один не знает. Нужно назвать по одной ассоциации так, чтобы все остальные поняли, что вы среди тех, кто знает слово. Потом, когда каждый назовёт по...

[Перевод] Проблема со связанными переменными: как превратить оптимизатор из врага в друга Автор статьи – Виктор Варламов, OCP. Оригинал статьи опубликован 07.07.2017. Отдельное спасибо автору перевода — brutaltag. В нашей системе подготовки отчетности обычно выполняются сотни длительных запросов, которые вызываются различными событиями. Параметрами запросов с...

NoVerify: линтер для PHP от Команды ВКонтакте теперь в открытом доступе Расскажу, как нам удалось написать линтер, который получился достаточно быстрым, чтобы проверять изменения во время каждого git push и делать это за 5−10 секунд при кодовой базе в 5 миллионов строк на PHP. Мы назвали его NoVerify. NoVerify поддерживает базовые вещи вроде ...

Слух: Microsoft отменила функцию Sets для Windows 10 Некоторое время компания Microsoft занималась разработкой функции Sets, которая должна была добавить поддержку вкладок в «Проводник» и другие приложения операционной системы. Ранние версии Sets появлялись в предварительных сборках для Windows Insider, однако в июне 2018 год...

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

Топ-5 скрытых функций Chrome для Android, о которых вы не знали Google Chrome – даже мобильный – полон огромного количества незаявленных функций. Речь, конечно же, идет о так называемых флагах, которые скрыты от рядового пользователя и, по сути, представляют собой экспериментальные нововведения, чья реализация все еще находится под вопр...

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

Обфускация Mimikatz Дешево и сердито обходим Windows Defender Всем привет. Сегодня рассмотрим вариант запуска mimikatz на Windows 10. Mimikatz — инструмент, реализующий функционал Windows Credentials Editor и позволяющий извлечь аутентификационные данные залогинившегося в системе пользователя ...

Windows Terminal – среда, которая объединяет CMD, PowerShell и WSL Сегодня Microsoft анонсировала новое приложение для пользователей командной строки под названием «Терминал Windows», новый обновленный инструмент командной строки для Windows 10, который предлагает большую вариацию пользовательского интерфейса, позволяющую пользователям наст...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 10. Режимы работы портов свитча Сегодня мы рассмотрим режимы портов свитча и функции свитча. Свитч имеет два режима работы: Access, или статический доступ, и Trunk – режим туннельной магистрали. Первый режим используется, когда вы подсоединяете к порту свитча какое-либо конечное устройство. Если вы подсоед...

КриптоАРМ на базе контейнера PKCS#12. Создание электронной подписи CadES-X Long Type 1. Часть 3 Прошло время и утилита, начатая как просмотрщик сертификатов, дополненная функциями работы с криптографическими токенами PKCS#11 и создания запросов (PKCS#10) на квалифицированный сертификат, пополнилась, как и было заявлено, функциями работы с контейнерами PKCS#12. Итак,...

Как управлять React Data Grid через Redux Это продолжение предыдущей статьи: Зачем писать свой React Data Grid в 2019 Для чего нужен Redux? Ответов много. Например, чтобы работать с общими данными в разных React-компонентах. Но можно воспринимать Redux еще как способ манипулирования компонентой. Сам взгляд интересны...

Новая версия MIUI 10 изменила строку состояния Xiaomi Mi 9 и исправила ошибки Флагманский смартфон Xiaomi Mi 9 получил новую прошивку MIUI V10.2.16.0.PFACNXM, которая добавляет несколько новых функций. Во-первых, обновление вносит изменения в отображение информации в районе каплевидного выреза экрана, в котором находится селфи-камера. В описании ...

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

Экономим время при работе с командной строкой Инструменты для автоматизации работы с операторами и повышения читабельности кода. Читать дальше →

Chrome 73 с тёмным режимом доступен на Windows, Mac и Linux Компания Google выпустила стабильную версию обновления Chrome 73. В новой версии браузера упрощены настройки синхронизации, автоматически работает режим «картинка в картинке» для прогрессивных веб-приложений, поддерживаются аппаратные медиа-клавиши, а также появился адаптивн...

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

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

[Перевод] Создаем бота для несложной отчетности при помощи Python и Google BigQuery Есть ли у вас задачи, которые повторяются изо дня в день, из недели в неделю? Например, написание отчетов. Вы запрашиваете данные, проводите анализ, визуализируете (делаете графики, диаграммы), а затем отправляете начальнику. Но что, если все это автоматизировать? В это...

Google тестирует обновлённый омнибокс в Chrome на Android Сотрудники 9to5Google заметили, что Google тестирует обновлённый интерфейс и новые функции для «умной» адресной строки (омнибокса) в Chrome на Android. Новые функции были обнаружены в последнем обновлении Chrome Canary и Chrome dev. В их числе – кнопки для копирования и шери...

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

Marlin и быстрое+грязное решение проблемы печати по USB с ошибкой Line Number is not Last Line Number+1 В моем случае, изначально, после сброса контроллера, возникает рассинхронизация номеров строк, куда-то девается первая строка, передаваемая с компа на контроллер. Перепосылку строк софт на компе не умеет, поэтому единственным быстрым решением было оторвать проверку номеров. ...

[Перевод] Большой 7-сегментный дисплей c неоновым свечением на ESP8266 Мне нужно было сделать для работы электронный дисплей большого размера с функцией секундомера и неоновым свечением. Для управления был выбран чип ESP8266, в котором реализованы и функция часов, и секундомер. Чтобы получить неоновое свечение я применил цилиндры термоклея...

В WordPress Core могут встроить функцию создания файлов XML Sitemap Сотрудник Google Паскаль Бирчлер (Pascal Birchler) анонсировал новый проект, в котором говорится об интеграции функции создания базовых файлов XML Sitemap в WordPress Core, а также запуске XML Sitemaps API. Это предложение было разработано при участии Google, Yoast и других ...

Google работает над нативной поддержкой Face ID для Android 10 Q Android-смартфоны поддерживали сканеры отпечатков пальцев задолго до появления Touch ID в iPhone 5s. Ситуация изменилась с точностью до наоборот, когда Apple представила сканер лица Face ID в iPhone X, объединяющий инфракрасную камеру TrueDepth, точечный лазерный проектор и ...

[Перевод] Kubernetes tips and tricks: как повысить продуктивность Kubectl — это эффективный инструмент командной строки Kubernetes и для Kubernetes, пользуемся мы им ежедневно. У него много функций, и с ним можно развертывать систему Kubernetes или его базовые фичи. Вот вам полезные советы, как быстрее кодить и деплоить в Kubernetes. Чита...

[Перевод] Типы для HTTP-API, написанных на Python: опыт Instagram Сегодня мы публикуем второй материал из цикла, посвящённого использованию Python в Instagram. В прошлый раз речь шла проверке типов серверного кода Instagram. Сервер представляет собой монолит, написанный на Python. Он состоит из нескольких миллионов строк кода и имеет неско...

Подсветка принтера средствами Marlin и SKR v1.3 Доброго дня. Сам не профи но устанавливая апгрейд для своего Ender 3, плату SKR 1.3 и тихие драйвера 2130 ковырял с нуля марлин, готовые сборки это хорошо но как говорится лучше самому. Наткнулся на кусок кода отвечающего за подсветку. Тоесть средствами самого Марлина и наше...

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

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

[Перевод] 30.000$ за решение задач о Правиле 30 для клеточных автоматов — конкурс от Стивена Вольфрама Оригинал перевода в моём личном блоге Прямая трансляция Стивена Вольфрама о конкурсе (на английском) Поясним для читателей, что означает «Правило 30» — это элементарный клеточный автомат (см. Wiki), состояние которого (правило построения нового уровня ячеек на основе старо...

[Перевод] IBM, память на линиях задержки и история дисплея 80×24 символа У терминала DEC VT100, проданного в количестве более миллиона штук, был дисплей 80×24 символа Чем объяснить популярность терминалов 80×24 и 80×25 символов? Недавняя запись в другом блоге подвигла меня на небольшое исследование. Источником строк длиной в 80 символов очевидн...

[Перевод] Пространственные манипуляции в 2D с помощью Signed Distance Fields При работе с полигональными ассетами можно отрисовывать только по одному объекту за раз (если не учитывать такие приёмы, как batching и instancing), но если использовать поля расстояний со знаком (signed distance fields, SDF), то мы не этим не ограничены. Если две позиции им...

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

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

Firefox начнёт блокировать автозапуск видео со звуком Mozilla объявила о том, что её браузер Firefox в скором времени начнёт блокировать автоматическое воспроизведение видео со звуком. Функция появится в версии Firefox 66 для компьютеров и Android-устройств, релиз которой запланирован на 19 марта. В блоге компании подробно...

Microsoft тестирует новые кнопки в Windows 10 Компания Microsoft выпустила для участников программы тестирования Windows Insider очередное обновление Windows 10 20H1. Эта версия операционной системы будет выпущена весной 2020 года.  Апдейт приносит общие улучшения, исправление ошибок, а также кнопки быстрого ...

Software Defined Radio — как это работает? Часть 5 Привет Хабр. В предыдущей части был рассмотрен прием сигналов с помощью GNU Radio. Сейчас мы рассмотрим обратную задачу — передачу сигналов различного вида модуляции. Как и в случае приема, с помощью GNU Radio можно создать сложную программную систему для передачи сигнал...

[Перевод] Inception bar: новый метод фишинга Доброго времени суток, Хабр! На просторах Интернета мне попалась статья на английском «The inception bar: a new phishing method» автора Jim Fisher. В ней описывается занимательный способ фишинга, механизм которого заключён в использовании экранного пространства строки отобра...

[Перевод] Воссоздание шрифтов с экрана ЭЛТ Изучение глифов на терминалах DEC VT100 и VT220 Недавно я немного увлёкся эмуляцией аналоговых медиа: хотелось воссоздать растровую графику ЭЛТ, как на «стеклянных терминалах» прошлого, таких как культовая серия VT от Digital Equipment Corporation (DEC). В процессе возник ...

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

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

[Перевод] Настало ли время для URL, содержащих эмодзи? Домены с эмодзи существуют уже много лет, но до сих пор не обрели популярность [К сожалению, редактор Хабра не позволяет вставлять в текст эмодзи. Эмодзи-ссылки можно найти в оригинальном тексте статьи (копия статьи на сайта Archive) / прим. перев.] Если вы введёте в адре...

Cron в Linux: история, использование и устройство Классик писал, что счастливые часов не наблюдают. В те дикие времена ещё не было ни программистов, ни Unix, но в наши дни программисты знают твёрдо: вместо них за временем проследит cron. Утилиты командной строки для меня одновременно слабость и рутина. sed, awk, wc, cut и ...

Функции Note10 теперь доступны на Galaxy S10 Компания Samsung Electronics анонсировала новое обновление ПО для Galaxy S10e, S10 и S10+, которое позволяет пользоваться рядом функций на других смартфонах флагманской линейки. Пользователи этих устройств смогут получить доступ к абсолютно новым возможностям мультимедиа и ...

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

[Из песочницы] Новичку only: 10 вещей, которые вы должны знать как веб-разработчик Привет, Хабр! Представляю вашему вниманию перевод статьи «10 Things You Should Know As a Web Developer» автора Anuupadhyay. Написание тысячи строк кода и превращение в веб-сайт — одна из творческих и сложных вещей для веб-разработчиков. Если вы в этом деле новичок, увидели ...

[Из песочницы] CSS-переход свойства height от 0px до auto Здравствуй, Хабр! Хочу поделиться ещё одним способом создания css-перехода (transition) свойства height от 0px до auto. Столкнулся с данной проблемой при разработке веб-компонентов TreeView и DataGrid. В TreeView решил сделать плавное развёртывание/свёртывание узлов, а в ...

[Перевод] Стильный водопад из RiME в игровом движке: делаем водяной поток Это вторая (и последняя) часть гайда по созданию водопада в Unity или UE4 после вдохновения игрой RiME. В первой разобрались с инструментами, выбрали среду разработки и создали шейдер кругов на воде. Почему начали именно с этого? Все просто: там используется большинство мето...

2 лайфхака: альтернативы классическому поиску в Microsoft SQL Server Привет, Хабр! Наши друзья из Softpoint подготовили интересную статью про Microsoft SQL Server. В ней разбирается два практических примера использования полнотекстового поиска: Поиск по «бесконечным» строкам (напр., Комментарии) в противовес обычному поиску через LIKE; Пои...

[Перевод] 3D-фотографии Facebook изнутри: шейдеры параллакса В последние несколько месяцев Facebook заполонили 3D-фотографии. Если вам не довелось их увидеть, то объясню: 3D-фотографии — это изображения внутри поста, которые плавно меняют перспективу при скроллинге страницы или когда перемещаешь по ним мышь. За несколько месяцев до ...

Умные алгоритмы обработки строк в ClickHouse В ClickHouse постоянно возникают задачи, связанные с обработкой строк. Например, поиск, вычисление свойств UTF-8 строк или что-то более экзотическое, будь то поиск типа учёта регистра или поиск по сжатым данным. Всё началось с того, что руководитель разработки ClickHouse Лёш...

[Перевод] «Тетрис» в роли принтера Поворачивая, переставляя и опуская вниз заранее заданную последовательность фигур, Tetris Printer Algorithm использует механику «Тетриса» для генерации произвольных битовых изображений. Описание алгоритма Алгоритм построчно преобразует пиксели исходного изображения в квадр...

Тест навигатора TomTom Go Premium: совсем не дешевые премиум-функции Некоторой особенностью в данном навигаторе является IFTTT-интеграция, с помощью которой вы получаете возможность управлять своей домашней автоматикой. Например, вы можете отрегулировать термостаты, чтобы ко времени вашего прибытия домой температура стала оптимальной. IFTTT ...

Не заменимый помощник в Microsoft Office Word Большинство пользователей ПК сталкиваются с проблемами во время работы в программе Ворд, так как в разных её версиях алгоритмы работы могут быть различны. Наиболее часто пользователи сталкиваются с такой проблемой, как включить линейку в Ворде. Порой изучить все правила поль...

Ответы на поисковые запросы будут показываться в адресной строке Всего месяц назад мы писали о влиянии функции zero-click, благодаря которой пользователи получили возможность получать ответы прямо на странице поисковой системы, не кликая по ссылкам. Но, как оказалось, можно пойти ещё дальше.В ближайшем обновлении Google Chrome появится фу...

[Перевод] Путь к проверке типов 4 миллионов строк Python-кода. Часть 3 Представляем вашему вниманию третью часть перевода материала о пути, который прошла компания Dropbox, внедряя у себя систему проверки типов Python-кода. → Предыдущие части: первая и вторая Читать дальше →

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

Google: учитесь читать между строк Поисковик рассказывает нам далеко не все.

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

Книга «Kafka Streams в действии. Приложения и микросервисы для работы в реальном времени» Привет, Хаброжители! Эта книга подойдет для любого разработчика, который хочет разобраться в потоковой обработке. Понимание распределенного программирования поможет лучше изучить Kafka и Kafka Streams. Было бы неплохо знать и сам фреймворк Kafka, но это не обязательно: я ра...

Почта Gmail для Android и iOS получила полностью новый дизайн Компания Google анонсировала крупное обновление дизайна почтового сервиса Gmail для мобильных устройств. В ближайшее время официальное приложение Gmail для операционных систем Android и iOS, а также мобильная веб-версия для работы в браузере получат новый интерфейс в стиле M...

Как узнать параметры Wi-Fi (скорость, канал и т.д.) в macOS за один клик Строка меню (элемент macOS, где находятся дата и время, быстрый доступ к функциям вроде Bluetooth и Wi-Fi и тд) обладает большими возможностями, чем кажется на первый взгляд. Нажатием всего одной кнопки можно получить дополнительную – и подчас весьма важную – информацию. ПО ...

Баг в Safari позволяет создавать заголовки фейковых новостей Война, которую поисковики и социальные сети объявили fake news, обучая программные алгоритмы поиску фальшивых материалов, может разбиться о банальный баг, который обнаружили в Safari журналисты MacRumors. С его помощью каждый пользователь может в считанные секунды выдать за...

[Перевод] Когда «Zoë» !== «Zoë», или почему нужно нормализовывать Unicode-строки Никогда не слышали о нормализации Unicode? Вы не одиноки. Но об этом надо знать всем. Нормализация способна избавить вас от множества проблем. Рано или поздно нечто подобное тому, что показано на следующем рисунке, случается с любым разработчиком. «Zoë» — это не «Zoë» Читать...

[Из песочницы] Уведомления о входах на сервер (SSH/TERMINAL) дешево и сердито Приветствую сообщество. Это первая публикация, далеко не профи-администратора, но просто захотелось поделиться короткой и простой наработкой, которая может оказаться полезной для такого же новичка как я сам. Сложилось так, что потребовалось контролировать около 30 VDS-ок на...

Метапрограммирование в JavaScript и TypeScript Пролог Хочу представить на Ваш суд ряд мини статеек, в которых будут описаны приемы и основы метапрограммирования. В основном я буду писать об использовании тех или иных техник в JavaScript либо в TypeScript Эта первая (и надеюсь не последняя) статья из серии. Так что же так...

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

Функция «Автодоступ к точке» на iPhone, iPad и Mac: что это и почему ее лучше выключить? Настройка, появившаяся с выходом iOS 13, iPadOS 13 и macOS Catalina, позволяет контролировать автоматическое подключение к iPhone или iPad, работающим в Режиме модема, при условии недоступности сети Wi-Fi. Чтобы узнать, как управлять этой функцией и предотвратить нежелательн...

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

В PHP 7.4 войдут стрелочные функции (сокращенная запись анонимных функций) Голосование по сокращенному синтаксису для функций завершено (51 "за", 8 "против"). Было: $result = array_filter($paths, function ($v) use ($names) { return in_array($v, $names); }); Стало: $result = array_filter($paths, fn($v) => in_array($v, $names)); Подробности...

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

ИТ-игра «Что? Где? Когда?». Разбор вопросов 29 августа в офисе ManyChat прошел интеллектуальный ИТ-вечер «Что? Где? Когда?». За звание лучших знатоков боролось сразу 10 команд. Мы рады поделиться с вами записью с мероприятия, разбором вопросов, а также некоторыми секретами о следующих встречах. Все подробности скрываю...

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

Новая пасхалка от Google — Танос и Перчатка бесконечности против поисковых результатов Гугл Если написать в строке поиска Google слова: «Танос», «Thanos», «Перчатка бесконечности», то откроется страничка с необычной поисковой пасхалкой. Читать дальше →

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

[Из песочницы] Тестируем JaCarta WebClient или храните токены в сейфе "Когда на мгновение чёрный покров отнесло в сторону, Маргарита на скаку обернулась и увидела, что сзади нет не только разноцветных башен с разворачиващимся над ними аэропланом, но нет уже давно и самого города, который ушёл в землю и оставил по себе только туман." ...

[Из песочницы] Константные указатели на указатели на указа… Введение Недавно ко мне подошли с вопросом, «что это и как этим пользоваться?», показав следующий код: extern "C" { void byteMaskDowngrade(byte***const byteMask, const byte *const *const && source) { // какой-то код. } // некоторые фукции. } Эт...

Какой код нужно показывать на собеседовании Сегодня с утра был очень интересный пост о том, какой код нужно писать на собеседовании и какие навыки при этом демонстрировать. Тестовая задача была такая. Написать на TypeScript функцию, которая для заданного массива чисел выводит текстовую строку диапазонов: getRanges([...

Adobe представила инструмент, определяющий было ли изменено изображение Разработчик популярного приложения Photoshop компания Adobe предложила свой метод борьбы с фейковыми изображениями. Программа About Face, может сказать вам, какие части лица на изображении были изменены, а также может показать исходное изображение. Функция может сделать это,...

Android Q сможет спасти вам жизнь, но только если вы владелец смартфона Pixel На Google I/O в этом году компания, ответственная за Android, показала много новых и интересных вещей, появления которых нам стоит ожидать уже в следующей итерации самой популярной в мире мобильной ОС. К ним относятся поддержка системой по умолчанию складных устройств, нако...

Первые подробности о MIUI 11: «глобальный» режим Dark Mode, функция жесткого энергосбережения, новые иконки и уведомления Господин Лю Мин, возглавляющий подразделение Xiaomi по разработке MIUI, провел с пользователями социальной сети своеобразную пресс-конференцию, на которой поделился подробностями о MIUI 11. Благодаря этому приоткрылась завеса тайны над новой версией фирменной оболочки с...

[Из песочницы] Чётные числа Фибоначчи Навеяно комментарием под постом Фибоначчи на собеседовании. Пользователь pavellyzhin упомянул следующую задачу на собеседовании (комментарий): Больше года назад откликнулся на вакансию «php-программист», прислали ТЗ и там было задание с Фибоначчи: выбрать все четные числа Фи...

Расчет нулевой гипотезы, на примере анализа зарплат украинских программистов Решил поделиться, да бы и самому не забывать, как можно использовать простые статистические инструменты для анализа данных. В качестве примера использовался анонимный опрос относительно зарплат, стажа и позиций украинских программистов за 2014 и 2019 год. (1) Этапы анализа...

Полиция Москвы получит очки с распознаванием лиц Фото: Светлана Холявчук / Интерпресс / ТАСС Мэрия Москвы, а именно Департамент информационных технологий планирует заказать разработку очков дополненной реальности с функцией распознавания лиц. Устройства такого типа закажут для полицейских столицы, чтобы правоохранители ...

Жирный шрифт на Айфоне: как сделать Когда в 2013 году Apple выпустила iOS 7, главным трендом дизайна мобильных операционных систем на последующие годы стала простота, плоскость изображений и тонкость линий. С последним согласны далеко не все пользователи, например, не обладающие идеальным зрением.  ПО ТЕМЕ: Ка...

Конгресс США выступил против новой функции безопасности в iOS 13 Не всегда забота Apple о пользователях соответствует закону Apple никогда не боялась идти против системы, если на кону стояли интересы её пользователей. Одним из наиболее показательных примеров можно считать блокировку отслеживания в Safari, которая появилась с выходом iOS 1...

Cмарт-папки и смарт-альбомы в Фото, Контактах и Mail на Mac (macOS): что это и как пользоваться Эти инструменты macOS очень просты в освоении — и очень здорово упрощают нашу повседневную жизнь. Что именно они «умеют», и как настроить полезную функцию правильно? Давайте разберемся!   Смарт-альбомы для фотографий на Mac Вы можете легко создавать смарт-альбомы прямо ...

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

Bluetooth LE не так уж и страшен, или Как улучшить пользовательский опыт без особых усилий Недавно мы в команде придумали и реализовали функцию передачи денег по воздуху с помощью технологии Bluetooth LE. Я хочу рассказать вам, как мы это сделали и что Apple предоставляет нам из инструментов. Многие разработчики думают что Bluetooth — это сложно, ведь это достаточ...

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

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

Какие экспериментальные функции Apple добавила в Safari на iOS 13 Разбираем новые экспериментальные функции Safari в iOS 13.

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

Еще раз о passport.js Недавно мне передали на поддержку проект на express.js. При изучении кода проекта я обнаружил немного запутанную работу с аутентификацией/авторизацией которая базировалась, как и 99,999% случаев, на библиотеке passport.js. Этот код работал и следуя принципу «работет — не тро...

Google Chrome получит функцию «Режим чтения» без отвлечения внимания Современные веб-сайты более загружены, чем когда-либо. Разделы с комментариями, рекламные баннеры, приглашения для подписки на новостные рассылки и многое другое заполняют большинство сайтов в Интернете. Мы стараемся придерживаться разумных соображений здесь, в ITbukva.com, ...

О новых стандартах C++ Сегодня у меня довольно короткий пост. Я бы его и не писал, наверное, но на Хабре в комментах довольно часто можно встретить мнение, что плюсы становятся хуже, комитет делает непонятно что непонятно зачем, и вообще верните мне мой 2007-й. А тут такой наглядный пример вдруг п...

Первые сведения о нововведениях Android Q beta 5 Недавний отчет разработчиков с форума XDA Developers показывает, что новая бета-версия десятого Android (Android Q beta 5) будет поставляться с новыми навигационными жестами. Согласно последним сведениям, эта бета-версия от Google включает функцию бокового возврата...

Google добавила ИИ-функцию Smart Compose в Google Docs, но пока только для корпоративных клиентов Компания Google решила добавить функцию Smart Compose в Google Docs. Таким образом, теперь при создании документов пользователям будут доступны предположения по вводу текста, созданные посредством искусственного интеллекта. Функция Smart Compose была представлена в прошлом г...

Ломаем простую «крякми» при помощи Ghidra — Часть 2 В первой части статьи мы при помощи Ghidra провели автоматический анализ простой программы-крякми (которую мы скачали с сайта crackmes.one). Мы разобрались с тем, как переименовывать «непонятные» функции прямо в листинге декомпилятора, а также поняли алгоритм программы «верх...

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

[Перевод] Time Travel Debugging в Visual Studio Enterprise 2019 Превью-версия Time Travel Debugging (TTD) в Visual Studio Enterprise 2019 позволяет записывать выполнение веб-приложения, запущенного на виртуальной машине Azure, а затем точно восстанавливать и воспроизводить алгоритм. TTD интегрируется с нашим предложением Snapshot Debugge...

40 миллионов HTTP запросов/мин на голом Си Введение I/O реактор (однопоточный цикл событий) — это паттерн для написания высоконагруженного ПО, используемый во многих популярных решениях: Node.js Tor Transmission Chromium Memcached ... В данной статье мы рассмотрим подноготную I/O реактора и принцип его работы, нап...

С новым годом, с новым MQTT/UDP Привет. Как я уже писал недавно (Первая краткая статья о MQTT/UDP), MQTT/UDP — протокол на базе MQTT, но: Ходит поверх UDP broadcast (не нужен брокер, почти не нужна конфигурация) До неприличия простой в реализации (10 строк на си + UDP/IP стек — и вы отправляете данные с...

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

CSS переменные и цветовая тема для сайта в несколько строк Один из способов использовать CSS переменные уже сегодня Создадим сайт который динамически поддерживает светлую, тёмную и цветовые темы. Интерактивное демо Создаём базовый цвет который будет меняться. Привязываем его к data-theme на html. html[data-theme='green'] { --...

Что я узнал, протестировав 200 000 строк инфраструктурного кода Подход IaC (Infrastructure as Code) состоит не только из кода, который хранится в репозитории, но еще людей и процессов, которые этот код окружают. Можно ли переиспользовать подходы из разработки ПО в управление и описание инфраструктуры? Будет не лишним держать в голове эт...

Препарируем PHP. Как устроены while, foreach, array_walk и некоторые другие страшные слова Дело было вечером, делать было нечего. Самое время устроить небольшой разбор того, чем изнутри отличаются некоторые способы перебора массивов в PHP. Исходники от master ветки (это сейчас 7.4 с вкраплениями 8) Генератор опкодов от php 7.3.0. Замеры производились на 7.3.6. ...

Почему мне не нравится приложение «Таймер» на iPhone Таймер на Apple Watch и на iPhone Не знаю, как вы, а я постоянно пользуюсь функцией «Таймер» на Apple Watch: когда хочется знать, сколько времени осталось до посадки самолета, сколько еще нужно запекать мясо, ну или проснуться утром в электричке до своей остановки (да, знаю,...

Как записать видео с экрана компьютера в GIF (гиф) на Windows и Mac: 6 бесплатных программ Запись с экрана компьютера – весьма полезная штука, которая может пригодиться в различных ситуациях, например, для оформления материалов, наглядного пояснения, как работает та или иная функция/программа или просто, чтобы превратить фрагмент из забавного видео в GIF-файл. Сущ...

[Перевод] Значит, хотите запустить Windows 10 на калькуляторе? Ну ладно HP Prime G2 под операционной системой Windows 10 IoT О запуске Windows на стандартном калькуляторе можно было только мечтать до появления HP Prime G2. Ещё никогда на рынок не выходил калькулятор на таком мощном железе. И что ещё более важно, HP выбрала процессор ARMv7-A! В...

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

Gigabyte представила модули памяти с функцией автоматического разгона Gigabyte представила функцию автоматического разгона Memory Boost. Эта функция используется в новых наборах 16GB второго поколения Aorus RGB Series. Владельцы материнских плат Aorus Z390 и Aorus X570 смогут повысить частоту памяти с помощью функции автоматически до 3733 МГц....

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

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

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

Google Pixel 4 получит камеру с оптическим зумом и инфракрасную камеру для идентификации владельца В исходном коде приложения Google Camera появились указания на кое-какие особенности смартфона Pixel 4. В частности, строки со словом «Telephoto» явно указывают на то, что в смартфоне будет объектив, обеспечивающий оптический зум. Само собой, он войдет в сос...

[Из песочницы] Система генерации ландшафта лабиринта с улучшенным визуальным реализмом [перевод статьи Jinmo Kim] Привет, Хабр! В этой публикации я расскажу о статье автора Jinmo Kim: "Maze Terrain Authoring System in Immersive Virtual Reality for New Visual Realism". Она была опубликована 4.04.2019. Полный текст статьи можно посмотреть здесь. Краткое описание системы В стать...

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

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

Как настроить панель инструментов в Finder на Mac (macOS) Интерфейс многих приложений для Mac предусматривает наличие панели инструментов – полоски серого цвета в верхней части экрана с различными кнопками и строкой поиска. Подобная панель есть в Safari, «Почте», приложениях iWork (Pages, Numbers, Keynote) и в системном файловом ме...

Вышла новая версия Firefox с включенной по умолчанию защитой от отслеживания Mozilla выпустила новую версию своего браузера Firefox Fдля ПК и Android c включенной по умолчанию блокировкой сторонних cookie-файлов и криптомайнеров.  В обновленном Firefox функция Enhanced Tracking Protection является стандартной настройкой. Ее наличие обозначается ...

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

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

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

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

Регулировка скорости отрыва на Photon 1 Многие люди сталкивались с большой скоростью отрыва слоя на первой серии Фотон. Регулировка изменением G кода возможна и известна многим. Все было нормально до того момента, как пользователи обновились до версии  бета 17 прошивки фотона. Я понимаю, что кто-то уже догада...

Adam-3600 — многофункциональный промышленный контроллер Контроллер Adam-3600 — универсальное устройство для дистанционного управления промышленными объектами, сбора данных, мониторинга и автоматизации процессов. Одновременно может выступать как устройство связи с объектом (УСО), устройство сбора и передачи данных (УСПД) и прогр...

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

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

[Из песочницы] Имплементация кэша на Verilog В данной статье разбор простейшей реализации RAM на языке Verilog. Перед тем, как перейти к разбору кода, рекомендуется изучить базовый синтаксис языка Verilog. Здесь вы можете найти обучающие материалы. Читать дальше →

Как переключить текущий звонок с iPhone на iPad или Mac Если ваши iPhone, iPad и Mac соответствуют системным требованиям для использования функции «Непрерывность» («Continuity») и подключены к одной сети Wi-Fi, вы можете с легкостью переключать текущие сотовые вызовы с одного устройства на другое. Возникает вопрос, зачем может по...

Как включить новый интерфейс автозаполнения в Chrome на Android Google Chrome получил новый интерфейс автозаполнения. Но, чтобы включить его, нужно постараться Автозаполнение данных является относительно новой функцией для браузеров. Её появление было обусловлено многократным увеличением числа веб-сайтов и сервисов, которые мы используем...

О сравнении форматов хранения в Hadoop: начнем с ORC В Hadoop входят продукты, которые могут работать с файлами разных форматов. Я неоднократно искал, читал и думал над тем — какой же формат лучше. Относительно случайно столкнувшись с форматом ORC, заинтересовался, почитал (и даже чуть покодил) и вот что понял — сравнивать фор...

Разработка монолитной Unix подобной OS — Библиотека С В предыдущей статье мы научились запускать Hello World ядро и написали пару функций для работы со строками. Теперь пришло время расширить библиотеку С чтобы можно было реализовать kprintf и другие необходимые функции. Поехали! Читать дальше →

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

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

Создание бота для участия в Russian AI Cup 2018 CodeBall Сложилась традиция, что после соревнований по спортивному программированию победитель или просто игрок выкладывает на Хабре статью, чтобы рассказать как здорово было участвовать в соревновании и как вариант победить в нем. Из его статьи конечно же многое можно почерпнуть дл...

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

HolyJS 2019: Разбор задач от компании SEMrush (Часть 2) Это вторая часть разбора задач от нашего стенда на конференции HolyJS, прошедшей в Санкт-Петербурге 24-25 мая. Для большего контекста рекомендуется сначала ознакомиться с первой частью настоящего материала. А если Countdown Expression уже пройден, то добро пожаловать на сл...

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

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

Со смартфонов теперь можно гуглить голосом Компания Google добавила в мобильную версию своего веб-поисковика google.com голосовой ввод — отныне пользователи могут проговаривать свой запрос, а не вводить его с клавиатуры. На данный момент нововведение работает только в браузере Chrome для Android и недоступно пользова...

Кастомизация Repetier: добавляем физические кнопки для управления принтером Нравится мне repetier за относительно простую кастомизацию прошивки. Но почему-то сложилось так, что на repetier тяжелее найти какую-либо информацию из-за не слишком большой популярности. В основном все предпочитают пользоваться Марлином. Да и сообщества у Marlin побольше бу...

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

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

Для Chrome в MacOS появилась темная тема Переговоры о внедрении темного режима в Google Chrome на macOS начались в сентябре прошлого года, когда разработчики обсуждали план Chromium Gerrit. Теперь крайне востребованная функция наконец-то появилась для пользователей Mac с официальным выпуском Chrome 73. Читать да...

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

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

Должны ли строки в Python быть итерируемы? И сотворил Гвидо строки по образу C, по образу массивов символов сотворил их. И увидел Гвидо, что это хорошо. Или нет? Представьте, что вы пишете совершенно идиоматичный код по обходу неких данных с вложенностью. Beautiful is better than ugly, simple is better than complex,...

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

RxDart для самых маленьких… проектов Вчера мой хороший товарищ сказал что-то типа "я же пишу простяцкое оффлайн приложение, мне ни к чему все эти стримы и потоки". Я даже растерялся, а потом подумал, что это заблуждение могут разделять и другие кодеры. Ниже буквально в 50 строк я на известном примере покажу, ч...

[Перевод] Разбор задачи с собеседования в Google: синонимичные запросы Это новая статья из разбора задач с собеседований в Google. Когда я там работал, то предлагал кандидатам такие задачи. Потом произошла утечка, и их запретили. Но у медали есть обратная сторона: теперь я могу свободно объяснить решение. Читать дальше →

[Перевод] Ускорение разведочного анализа данных с использованием библиотеки pandas-profiling Первым делом, приступая к работе с новым набором данных, нужно понять его. Для того чтобы это сделать, нужно, например, выяснить диапазоны значений, принимаемых переменными, их типы, а также узнать о количестве пропущенных значений. Библиотека pandas предоставляет нам множе...

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

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

В Instagram добавили аналог TikTok Instagram тестирует новый набор инструментов для редактирования видео в разделе Stories под названием Reels. Этот инструмент используется для создания 15-секундных видеоклипов с выбранной звуковой дорожкой, которую легко найти по хэштегам. Или можно использовать звук из...

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

Google представила сервис потоковой передачи игр Stadia Как и предполагалось, на конференции GDC 2019 компания Google представила миру игровую платформу Stadia, призванную объединить разработчиков, создателей контента и геймеров. Служба будет использовать дата-центы Google, что сделает игры доступными для всех желающих. Напомним...

Google Photos: находит фотографии по тексту, размещенному ... Буквально на этой неделе сервис Google Photos опубликовал в своем Twitter-е объявление, что начиная с августа месяца пользователи смогут искать (и находить) фотографии по тексту, который находится на самом снимке. Например, если у вас есть фотография с изображением дорожного...

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

Вышли iOS 13 beta 2 для всех и обновленная сборка iOS 13 beta 3 Программа бета-тестирования – это, пожалуй, самая интересная инициатива, реализованная Apple. Редкая неделя проходит без того, чтобы компания не выпустила очередную тестовую сборку своих операционных систем, участие в испытаниях которых давно стало нормой даже для рядовых п...

Nokia тизерит смартфон Nokia 6.2: акцент на функцию Face Unlock Всего за день до анонса HMD Global поделилась тизером, который раскрывает одну из главных функций будущей новинки. В частности, речь идет о функции разблокировки по лицу. Ожидается, что на завтрашнем мероприятии компания представит смартфон Nokia 6.2 и, вероятно, Nokia 5.2. ...

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

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

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

Xiaomi представила лучшее устройство для суровой зимы, причём с ценой всего 20 долларов Ассортимент Xiaomi пополнило весьма необычное устройство, которое как раз подойдёт для грядущей зимы. На фото ниже представлен портативный аккумулятор. Но не простой, а с функцией обогрева рук! Да, устройство умеет нагревать собственный корпус, чтобы можно было согреть...

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

[Из песочницы] Oracle VM Server for SPARC для чайников (How-to) Небольшой How-to для начинающих работать с ОС Solaris и платформой виртуализации Oracle VM Server for SPARC, ранее известной как Sun Logical Domains. Oracle VM представляет из себя гипервизор XEN, установленный на ОС Solaris. Управлять гипервизором возможно из командной ...

[Из песочницы] MicroPyServer простой HTTP сервер для ESP8266 и ESP32 Всем привет! Хочу рассказать о библиотеке MicroPyServer написанной на Python, которая позволяет взаимодействовать с устройствами ESP8266 и ESP32 посредством простого HTTP сервера. Что такое MicroPyServer? MicroPyServer это простой HTTP сервер предназначенный для проектов на...

В Android Q добавят возможность останавливать приложения прямо в лончере Функция под названием Digital Wellbeing впервые дебютировала в Android Pie и уже сразу была тепло принята пользователями мобильной операционки за свою высокую функциональность и полезность. С помощью Digital Wellbeing пользователи получали доступ к информации, связанной с и...

Как настроить общий буфер обмена на Android и Mac Удобство и продвинутость экосистемы Apple признают не только фанаты бренда, но и руководство компаний-конкурентов. Одним из тех, кто заявил о ее превосходстве, оказался основатель и генеральный директор Huawei Рен Чжэньфэй, который не постеснялся признать, что предпочитает ...

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

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

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

8-разрядный код Морзе По просьбе одного из любителей применения Щ-кодов в электронных поделках возникла необходимость написать функцию (подпрограмму, процедуру), которая будет издавать трель из последовательности точек и тире. В коде Морзе длина символа может быть от 1 знака (буквы Е и Т) до 9 зн...

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

CPU-функции RDRAND и RDSEED стали доступнее Всем привет! Сам я криптографией не занимаюсь, но кому то вполне может пригодится мое небольшое исследование. Решил разобраться со встроенными в процессор функциями RDRAND и RDSEED. Компилятор Delphi сказал Undeclared identifier. Хмм. Уже давно существует BMI, BMI2, AVX, AV...

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

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

Телега для датасайентиста How to deploy Python Telegram bot using Webhooks on Google Cloud Platform Вместо предисловия — Напиши телеграм-бота. Сейчас даже школьники пишут, — сказала она. — А почему бы и нет, — подумал я тогда ( — Ну, ну, — сказал бы я сейчас). Мы сидели в Бине и за чашкой кофе обсуж...

Накопительное обновление KB4505903 для Windows 10 нарушает работу Bluetooth-устройств Обновление KB4505903, выпущенное 26 июля для ПК с Windows 10 May 2019 Update, делает нерабочими аудиоустройства, которые подключаются через Bluetooth. KB4505903 является необязательным обновлением. Это означает, что оно не будет установлено, если пользователь не нажмет кнопк...

[Перевод] Стрелочные функции в PHP 7.4 Стрелочные функции, также называемые короткими замыканиями (short closures), станут хорошим способом писать чистый код в PHP. Такая форма записи будет полезной при передаче замыканий в такие функции как array_map или array_filter. Пример: // Коллекция объектов Post $posts =...

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

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

[Перевод] [в закладки] Bash для начинающих: 21 полезная команда Материал, перевод которого мы публикуем сегодня, предназначен для тех, кто хочет освоить командную строку Linux. Умение эффективно пользоваться этим инструментом позволяет экономить немало времени. В частности, речь здесь пойдёт о командной оболочке Bash и о 21 полезной кома...

Не купили DLC: функцию, которая спасла бы упавшие 737, «Боинг» продавал как опцию В то время как пилоты обречённых самолётов Boeing в Эфиопии и Индонезии пытались вернуть себе управление, у них не было двух важных функций безопасности, которые Boeing продавал за дополнительную плату, пишет NY Times. Как и другие авиапроизводители, Boeing получает прибы...

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

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

HongMeng OS не для телефонов Huawei HongMeng или Oak OS в последние месяцы, китайский производитель утверждает, что внутренняя платформа не для смартфонов. По сообщению государственной торговой точки Xinhua, старший вице-президент Huawei Кэтрин Чен заявила, что ОС HongMeng предназначена для промышленн...

Huawei предлагает испытать альтернативу Google и выиграть Huawei P30 Pro Компания Huawei представила свой аналог приложения Google для смартфонов на основе Android несколько месяцев назад. Теперь приложение Huawei Assistant стало доступно для загрузки самым смелым и отважным.  Это ранняя тестовая версия и Huawei предлагает пользователя...

Функция отслеживания сна появится на следующих Apple Watch Apple начала тестировать функцию монитора сна для будущей модели Apple Watch. Говорят, что тестирование длилось несколько месяцев, и эта функция может появиться к 2020 году. Ранее Apple купили финский стартап Beddit, целью которого является разработка устройств для мониторин...

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

Повышаем информативность ошибок в Go – github.com/ztrue/tracerr После многолетнего опыта работы с php и js, я привык иметь в ошибках стектрейс и смотреть на место, где произошла ошибка прямо из эррор-репорта. Пересев на Go пару лет назад, я был несколько удивлен, что в Go другие правила и нужно угадывать стектрейс по какой-нибудь строке ...

Пишем краулер на раз-два 1.0 Веб-краулер (или веб-паук) — это важная составная часть поисковых систем для обхода веб-страниц с целью занесения информации о них в базы данных, в основном, для их дальнейшей индексации. Такая штука есть у поисковиков (Google, Yandex, Bing), а также у SEO-продуктов (SEMrush...

[Из песочницы] Конспект по «Машинному обучению». Математический анализ. Градиентный спуск Вспомним математический анализ Непрерывность функции и производная Пусть $inline$E \subseteq \mathbb{R}$inline$, $inline$a$inline$ — предельная точка множества $inline$E$inline$ (т.е. $inline$a \in E, \forall \varepsilon > 0 \space\space |(a - \varepsilon, a + \varepsil...

Julia: функции и структуры-как-функции Несмотря на то, что в языке Julia по замыслу отсутствует «классическое» объектно-ориентированное программирование с классами и методами, язык предоставляет средства абстрагирования, ключевую роль в которых играет система типов и элементы функционального программирования. Рас...

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

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

Обеспечение безопасности в беспроводных протоколах на примере LoRaWAN Привет, Хабр. Мне хотелось бы в очередной раз поговорить о том, как обеспечивается базовый (читай: минимально необходимый) уровень безопасности данных в беспроводных сетях, используемых в IoT-устройствах, на примере LoRaWAN. Почему именно LoRaWAN? Во-первых, потому, что эт...

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

Elasticsearch сделала бесплатными проблемные security-функции, ранее выведенные в open source На днях в блоге Elastic появилась запись, в которой сообщается о том, что основные security-функции Elasticsearch, выведенные в open source-пространство более года назад, теперь являются бесплатными для пользователей. В официальной блогозаписи содержатся «правильные» слова ...

Swift 5.0. Что нового? Swift 5 — долгожданный релиз, включающий в себя несколько десятков улучшений и исправлений. Но самой главной целью релиза Swift 5.0 было достижение ABI стабильности. В этой статье вы узнаете, что такое ABI и что стабильный ABI даст iOS/macOS разработчикам. А также проведём р...

Электромобиль Tesla Model X попал в аварию — водитель не смог отключить автопилот В воскресенье вечером произошло ДТП с участием автомобиля Tesla Model X, который врезался в «несколько знаков на дороге» в Нью-Джерси. Водитель утверждает, что машина была на автопилоте, и он не смог отключить систему помощи водителю, чтобы взять управление на себя. Водитель...

Chrome может уменьшить использование ОЗУ на Windows и других платформах Google Chrome – одно из наиболее ресурсоемких приложений в Windows, которое потребляет больше оперативной памяти, если у Вас установлены расширения или открыто слишком много вкладок. Google нужно поработать над управлением ресурсами для Google Chrome, и новая версия проходит...

[Перевод] Плата расширения ОЗУ для Apple IIgs Предлагаемая плата расширения ОЗУ для компьютера Apple IIgs выполнена на микросхемах NEC uPD424400-70 от нескольких 1-мегабайтных SIMM-модулей. Каждая из таких микросхем хранит 1 М полубайт и размещена в 26-выводном корпусе типа SOJ. Компьютер Apple IIgs выполнен на процес...

Скрытые и нестандартные возможности камеры смартфона Переводчик, макросъемка, «рыбий глаз» и другие нестандартные функции камеры в смартфоне. Кроме стандартных функций по созданию снимков и...

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

Skype лишится функции SMS Connect Функция SMS Connect, появившаяся в Skype для Android около года  назад, позволяла пользователям получать и отправлять SMS-сообщения через приложение Skype на ПК или Mac. Однако из-за выхода приложения «Ваш телефон» она довольно быстро потеряла свою актуальность, так что реш...

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

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

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

Что нового в iOS 13 beta 3 Вчера для всех зарегистрированных разработчиков стала доступна iOS 13 beta 3. Новое обновление уже можно установить как по «воздуху» (через специальный профиль), так и через iTunes — скачав соответствующий файл официальном сайте компании. Представляем вашему вниманию ...

В Apple Watch может появиться функция отслеживания сна Было много слухов об отслеживании сна в Apple Watch, особенно после того, как Apple приобрела Beddit, производителя продукта Beddit Sleep Monitor и сопутствующего приложения. 9to5Mac узнал из внутренних источников в Apple, что компания работает над отслеживанием сна для Appl...

Изменения ы iOS 13 и iPadOS уже внесены. Apple лишит все новые iPhone одной из функций Очередная порция подробностей относительно линейки смартфонов iPhone 2019 года от азиатских источников. Информацией поделился тайваньский ресурс DigiTimes со ссылкой на цепочку производственных поставок.  По данным источника, Apple может лишить новые смартфон...

[Перевод] Рассказ о том, как Linux привели в Windows Всё то время, которое я работаю в Microsoft, я занимаюсь созданием инструментов для Linux-разработчиков. Я приступила к работе в августе 2016 года, после выпуска из Виргинского университета, где изучала информатику и менеджмент. Во время учёбы я программировала, в основном, ...

Mozilla назвала «вредным» предложение Google о распространении веб-пакетов с цифровой подписью Механизм Signed HTTP Exchanges (SXG) Месяц назад на конференции для разработчиков компания Google предложила технологию «порталов», которая призвана обеспечить новый способ загрузки и навигации по веб-страницам. По сути, <portal> — это более продвинутая и современная...

Функция измерения давления на Samsung Galaxy Watch Active Когда Samsung представила свои последние умные часы, Galaxy Watch Active, несколько дней назад много говорилось о его способности контролировать артериальное давление пользователя. Это было бы функцией здоровья, которой нет у Apple Watch. Похоже, что Samsung собирается...

Microsoft выпустила PowerToys 0.12 с функцией массового переименования файлов Компания Microsoft выпустила новую предварительную версию утилиты PowerToys, которая принесла с собой новую функцию под названием Smart Rename. С помощью этой функции вы сможете осуществлять массовое переименование файлов, используя простую технику поиска и замены, использу...

[Перевод] Ответственный подход к JavaScript-разработке, часть 1 Цифры говорят нам о том, что рост объёмов JavaScript-кода плохо влияет на производительность веб-проектов. Если так будет продолжаться и дальше, то уже очень скоро при загрузке средней страницы будет передаваться как минимум 400 Кб JS-кода. И это — всего лишь объём передавае...

Особенности работы Auto Tiering в СХД Qsan XCubeSAN Продолжая рассматривать технологии ускорения операций ввода/вывода в применении к СХД, начатые в предыдущей статье, нельзя не остановиться на такой весьма популярной опции, как тиринг (Auto Tiering). Хотя идеология работы данной функции весьма близка у различных производител...

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

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

Новые функции безопасность на автомобилях Volvo Volvo добавляет новые функции Slippery Road Alert и Hazard Light Alert в свои автомобили. Они будут оснащены в автомобилях начиная с модельного ряда 2016 года. Это дорожное оповещение основано на информации, полученной от автомобилей Volvo впереди, чтобы предупредить вас...

[Перевод] Разбираемся с передачей видео в разрешении 4К на 60 Гц через хаб USB-C USB-C предлагает новые потрясающие возможности, включая подключение внешних мониторов по USB-порту. Распространены недорогие конвертеры USB-C на DisplayPort и HDMI. Также часто встречаются хабы USB-C с поддержкой внешних мониторов, однако попытки разобраться в их возможнос...

Ассистент Google добавили новую функцию Google добавит в свой помощник новую функцию, которая позволит отправлять напоминания другим людям. Эта функция предназначена для семей, друзей или соседей по комнате. С её помощью можно записать напоминание, изменить время отправки, настроить повтор напоминаний и проверить...

SciPy, оптимизация с условиями SciPy (произносится как сай пай) — это основанный на numpy математический пакет, включающий в себя также библиотеки на C и Fortran. С SciPy интерактивный сеанс Python превращается в такую же полноценную среду обработки данных, как MATLAB, IDL, Octave, R или SciLab. В это...

[Перевод] Использование UIViewPropertyAnimator для создание пользовательских анимаций Создание анимаций это здорово. Они являются важной частью iOS Human Interface Guidelines. Анимации помогают привлечь внимание пользователя к важным вещам или попросту делают приложение не таким скучным. Существует несколько способов реализовать анимацию в iOS. Вероятно, са...

Что такое Wi-Fi Direct и как его использовать на смартфоне под управлением Android Список функций наших Android-смартфонов довольно обширен, и некоторые из них могут запросто остаться незамеченными. Между тем они могут оказаться весьма и весьма полезными. Например, на практически каждом смартфоне имеется функция Wi-Fi Direct. Пару лет назад она наделала н...

MIRO — открытая платформа indoor-робота. Часть 3 — Программная составляющая: ESP8266 Начинаем разбирать программную составляющую платформы MIRO. Посмотрим, как правильно «готовить» ARDUINO UNO с помощью ESP8266 для прошивки и взаимодействия без проводов. Читать дальше →

[Перевод] Как я создал фильтр, не портящий изображение даже после миллиона прогонов Завершив создание веб-архитектуры для нашего нового веб-комикса Meow the Infinite, я решил, что самое время написать несколько давно назревших технических статей. Данная статья будет посвящена фильтру, разработанному мной несколько лет назад. Он никогда не обсуждался в облас...

Youtube Premium позволит скачивать видео в формате 1080p YouTube Premium скоро позволит загружать видео в формате 1080p. YouTube Premium - это платная услуга, позволяющая работать без рекламы на YouTube. Также воспроизведение видео в фоновом режиме и возможность загрузки роликов на локальное устройство для последующего просмотра б...

FFmpeg практика аппаратного декодирования DXVA2 Привет! Эта статья продолжение моей статьи FFmpeg начало работы Visual Studio. Здесь мы приступим к аппаратному декодированию RTSP-потока FULL HD. Заранее скажу, что с данной задачей легко справится даже Intel ATOM Z8350. Задача: аппаратное декодирование и запись до 4-х кад...

Google помогает полиции определять устройства вблизи мест преступления, используя данные о местоположении Не секрет, что Google отслеживает вас повсюду, даже если вы отключили функцию истории местоположений Google. Как показало исследование Associated Press в 2018 году, приложения Google, такие как Карты или Погода на Android, позволяют компании непрерывно собирать вашу геолока...

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

Как решить старую задачу с помощью ML на Python и .Net Бывает, что некоторые задачи преследуют тебя много лет. Для меня такой задачей стала склейка предложений текстов, в которых жестко забит переход на новую строку, а часто еще и перенос слов. На практике, это извлеченный из PDF или с помощью OCR текст. Часто можно было встрет...

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

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

Функциональное программирование с точки зрения EcmaScript. Чистые функции, лямбды, имутабельность Привет, Хабр! Сегодня мы начнём говорить на очень важную тему — функциональное программирование. Значение ФП в современной веб-разработке трудно переоценить. Архитектура любого крупного современного проекта включает в себя пользовательские библиотеки функций и на собеседов...

Google отложила релиз одного из нововведений Android Q Одним из нововведений Android Q должна была стать функция Scoped Storage. Она создавала индивидуальное пространство на диске для каждого приложения в отдельности, позволяя им использовать доступную память, не посягая на отделы, которые принадлежат другому ПО. Таким образом ...

В Android Q стало намного проще делиться постами из Twitter и фото из Instagram Если вы когда-нибудь пытались отправить человеку или нескольким людям пост из Instagram, видео из YouTube, изображение из галереи смартфона или пост из Twitter, то должны прекрасно понимать, что я имею ввиду, когда говорю, что придумать что-то менее логичное, чем меню шерин...

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

[recovery mode] Инкрементальный бекап в дюжину строк Что самое важное для бекапов? Правильно, воспроизводимость. Поэтому давайте сделаем велосипед на коленке и на опции --link-dest у rsync. У нашего велосипеда не будет сложной структуры данных в стиле git как у restic, ни кучи бекендов как у duplicity. Но мы сможем восстановит...

И ещё о сортировках И ещё о сортировках Рискну опять поднять эту тему. Начну со ссылки на статью Михаила Опанасенко (oms7), очень впечатляющую по объёмам проделанной работы, а также по количеству приведёных ссылок. Свой материал начал готовить, не зная об этой публикации, что впоследствии, посл...

[Перевод] Как я добавил функции автомобилю по шине CAN, не умея программировать Цель этой статьи — рассказать о моём опыте модификации автомобиля, экспериментируя с шиной CAN. С чего всё началось Сначала я решил добавить фронтальную камеру в свой 2017 Chevrolet Cruze. Поскольку у автомобиля уже есть заводская камера заднего вида, то на высоком уровне...

Вице-президент Xiaomi: Redmi K30 окажется лучше Honor V30 В Сети появилась новая порция подробностей о Redmi K30, и по доброй традиции ее представил глава бренда Redmi и вице-президент Xiaomi Лю Вейбинг (Lu Weibing). В новом своем сообщении в Weibo он поразмышлял на тему бенчмарка – своеобразного стандарта индустрии, на ...

Как советские научные книги стали артефактом у физиков и инженеров в Индии В 2012 году на северо-востоке Москвы начался пожар. Загорелось старое здание с деревянными перекрытиями, огонь быстро перекинулся на соседние дома. Пожарные расчеты не могли подобраться к месту — все парковки вокруг были заставлены машинами. Огонь охватил полторы тысячи кв...

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

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

В Exim пропатчили критическую уязвимость Разработчики почтового агента Exim выпустили экстренный патч к критической уязвимости своего продукта. Как уточняется в описании, злоумышленники могли атаковать системы версий 4.80–4.92.1 с включенным TLS, чтобы выполнить на сервере сторонний код с root-привилегиями. Описани...

Какой следующий член…? — Ищем формулу для n-го члена последовательности, производящие функции и Z-преобразование Скачать файл с кодом и данные можно в оригинале поста в моем блоге В языке Wolfram Language есть четыре совершенно потрясающие функции: FindSequenceFunction, RSolve, DifferenceRootReduce и FindFormula. В этой статье мы обсудим их возможности и поговорим о функциях, тесно с ...

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

Неопределённое поведение с устаревшими объявлениями функций в ANSI C Стандарт ANSI C определяет понятие прототипа функции, представляющее собой подмножество объявления функции, которое указывает типы входных параметров. Прототипы были введены с целью устранить недостатки, которыми обладают обычные объявления функций. Таким образом, указание ...

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

В Windows появится командная строка со смайлами и ядром Linux Приложение Windows Terminal появится в общем доступе летом и станет единым интерфейсом для взаимодействия пользователя со средами CMD (классическая командная строка), PowerShell (средство автоматизации, включающее в себя командную строку и язык сценариев) и Windows Subsystem...

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

Трагичная история знакомства с poppler …Или как мы писали пилот приложения для ОС Sailfish с использованием poppler. Год начался с занятной задачи — нашей команде нужно было за короткий срок собрать пилот приложения «Мобильное рабочее место руководителя» на ОС Sailfish. По сути, это мобильный клиент СЭД, т.е. о...

[Перевод] Proposal: try — встроенная функция проверки ошибок Краткое содержание Предлагается новая конструкция try, созданная специально для устранения if-выражений, обычно связанных с обработкой ошибок в Go. Это единственное изменение языка. Авторы поддерживают использование defer и стандартных библиотечных функций для обогащения или...

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

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

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

Google запускает грамматические подсказки для всех клиентов G Suite Google анонсировал запуск функции Grammar Suggestions, работающей на базе ИИ, для всех клиентов G Suite. Grammar Suggestions – это инструмент, который распознаёт грамматические, стилистические и орфографические ошибки и предлагает исправления. Начиная с 5 марта эта функция с...

Мечта офисного работника. Microsoft возродила свой культовый продукт Как и ожидалось, компания Microsoft одновременно с большим анонсом серии Surface представила ряд аксессуаров. В том числе, она возродила свою культовую серию клавиатур и мышей Ergonomic.  В далёких 2000-х клавиатура Microsoft Ergonomic Keyboard стала первой ласточ...

Linear Advance + SKR 1.3 + TMC2208 (2130) Совсем маленькое дополнение к статье о Linear Advance (далее LA), т.к., на сколько я понял, многие, как и я, перейдя на SKR 1.3 и тихие драйвера TMC2208 (с 2130 та же проблема и решение), столкнулись с проблемой - при активации LA ШД экструдера не подает признаков жизни.Для ...

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

Бэкап для Linux не пишет писем Всем привет! Сегодня хочу поведать о том, как управлять Veeam Agent for Linux с помощью командной строки, и о том, какие возможности она открывает в умелых руках программиста. На написание статьи меня подтолкнул комментарий к предыдущей статье. Перефразирую удивление поль...

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

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

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

Apache Tomcat получил важное обновление защиты Разработчики Apache Software Foundation (ASF) обновили сервер приложений Tomcat, чтобы устранить обнаруженный ранее RCE-баг. Брешь CVE-2019-0232 позволяла взломщикам выполнять сторонний код в уязвимых системах и брать их под контроль. В начале марта о проблеме сообщили специ...

Как проехать в Лланвайр-Пуллгвингилл? С «Картами» Google стало гораздо удобнее путешествовать Компания Google объявила о запуске новой функции для фирменных «Карт» (Google Maps), объединив их с «Переводчиком» (Google Translate). Теперь мобильное приложение сможет озвучивать названия мест и адреса на нужном языке.  В результате, поль...

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

Бессерверный REST API «на коленке за 5 минут» Привет, Хабр! Сегодня продолжим разговор о возможностях, которые предоставляет нам Amazon Web Services и о том, как эти возможности использовать в решении прикладных задач. На простом примере рассмотрим создание буквально за несколько минут собственного бессерверного автом...

Опубликованы снимки орбитального прототипа космического корабля SpaceX Основатель компании SpaceX Илон Маск (Elon Musk) опубликовал снимки, позволяющие получить представление об орбитальном прототипе космического корабля SpaceX. Сейчас он находится в стадии постройки. Внешний вид аппарата не удивляет — как и было запланирован...

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

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

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

[Перевод] Вышел Windows Terminal Preview 0.7 Представляем новый релиз Windows Terminal preview! Это выпуск v0.7. Как и всегда вы можете скачать Terminal из Microsoft Store или со страницы релиза на GitHub. А вот и новинки: Обновления Windows Terminal Панели (panes) Теперь вы можете разделить окно терминала на нескольк...

[Из песочницы] Помогаем Queryable Provider разобраться с интерполированными строками Тонкости Queryable Provider Queryable Provider не справляется вот с этим: var result = _context.Humans .Select(x => $"Name: {x.Name} Age: {x.Age}") .Where(x => x != "") .ToList(); О...

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

Как Microsoft Excel работает с высотами рядов Иногда мне бывает скучно и я, вооружившись отладчиком, начинаю копаться в разных программах. В этот раз мой выбор пал на Excel и было желание разобраться как он оперирует высотами рядов, в чём хранит, как считает высоту диапазона ячеек и т.д. Разбирал я Excel 2010 (excel.exe...

Обновления Windows 10 могут не установиться, но есть обходной путь Если вы столкнулись с проблемами во время установки накопительных обновлений Windows 10, то вы не одиноки. За последние несколько месяцев несколько пользователей сообщали на форумах, что не удается установить обновления Windows 10, включая важные выпуски Patch Tuesday и необ...

[Перевод] Представляем шрифт Cascadia Code Cascadia Code наконец-то здесь! Вы можете установить его непосредственно со страницы релизов в нашем репозитории на GitHub или автоматически получить его в следующем обновлении Windows Terminal. Постойте, что за «Cascadia Code»? Cascadia Code был представлен в мае этого г...

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

На выставке WasteExpo 2019 показан электрический мусоровоз Mack Мусоровозы очищают город от отбросов, но в обмен приходится мириться с их выхлопными газами и шумом. Ситуацию может изменить переход на электрическую тягу. Компания Mack (дочернее предприятие Volvo) показала на недавней выставке WasteExpo 2019, посвященной вопросам убор...

[Перевод] Функция Data Saver для Chrome на Android теперь доступна и для HTTPS Google помогает пользователям Android быстрее работать в Chrome с улучшенным режимом Data Saver, который, как утверждается, может сократить использование данных до 90% и сократить время загрузки веб-страниц даже в медленных сетях. Однако до сих пор он работал только с HTTP-с...

Прошивка версии 2.00 наделяет камеру Sony a6400 функцией Animal Eye AF Компания Sony выпустила встроенное программное обеспечение версии 2.00 для беззеркальной камеры a6400. Обновление включает функцию системы автоматической фокусировки Animal Eye AF. В апреле этого года функция Animal Eye AF была добавлена обновлением прошивки в камеры a...

Badoo Jira API Client: магия в Jira на PHP Если в строке поиска на Хабре ввести “Jira Badoo”, результаты займут не одну страницу: мы упоминаем её почти везде, потому что она играет важную роль в наших процессах. Причём каждый из нас хочет от нее немножко разного. Разработчик, которому пришла задача на ревью, ожида...

Samsung начала массовое производство оперативной памяти LPDDR5 на 12 ГБ Компания Samsung начала массовое производство первой мобильной оперативной памяти DRD 12 Гбит LPDDR5, которая оптимизирована для функций 5G и AI в будущих смартфонах. LPDDR5 12 Гбит в 1,3 раза быстрее, чем предыдущая мобильная память LPDDR4X, 4266 Мбит/с, со скоростью ...

Список изменений в Microsoft Edge Dev 77.0.230.1 Компания Microsoft выпустила новую сборку Microsoft Edge на базе Chromium под номером 77.0.230.1 для канала Dev, которая принесла с собой несколько исправлений и улучшений. Предлагаем ознакомиться со списком изменений: Новые функции и изменения в поведении: Добавлена возмож...

Подключение энкодера к экранам OLED 0.96' (SSD1306) и OLED 1.3' - SH1106 в прошивках MARLIN Добрый день всем! Получаю достаточно много вопросов в личную почту по подключению энкодеров и экранов OLED 0.96'  (SSD1306) и OLED 1.3' - (SH1106) в прошивках MARLIN, поэтому решил написать эту маленькую статью по подключению данных экранов, энкодера и карты памяти. Экр...

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

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

Vivo Nex Dual Display Edition и его функции Над задним экраном находится целая россыпь сенсоров и других элементов. Центральное место занимает тройная камера, представленная основным 12-мегапиксельным модулем с оптической стабилизацией и диафрагмой f/1.79, 2-мегапиксельным сенсором со светосилой f/1.8 для анализа глуб...

Google заменит голосовой поиск Ассистентом Известная иконка с микрофоном и строкой поиска Google в скором времени может исчезнуть со смартфонов. Таковы свежие слухи из Сети.

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

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

Ssh-chat, часть 2 Привет, Хабр. Это 2 статья из цикла ssh-chat. Что мы сделаем: Добавим возможность создания своих функций оформления Добавим поддержку markdown Добавим поддержку ботов Увеличим безопасность паролей(хеш и соль) Читать дальше →

[Перевод] Настройка PHP-FPM: используем pm static для максимальной производительности Я в двух словах расскажу, как лучше всего настроить PHP-FPM, чтобы увеличить пропускную способность, снизить задержку и более стабильно использовать процессорные ресурсы и память. По умолчанию строка PM (process manager, менеджер процессов) в PHP-FPM имеет значение dynamic,...

[Из песочницы] Openshift — красношляпые поделки OpenShift Развертка Openshift. Конфигурация после установки. Создание и подключение PV. Создание и разворачивание проекта Red Hat Decision Manager (enterprise аналог kie-workbench). Создание и разворачивание проектов AMQ (red hat active mq) и postgressql c использованием п...

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

Функция «Замена неба» дебютирует в Xiaomi Mi CC9 Исполнительный директор компании Xiaomi Лей Цзунь (Lei Jun) официально подтвердил, что Xiaomi Mi CC9 станет первым смартфоном компании, в котором будет представлена новая функции редактирования фотографий. Речь идет о возможности заменить фоновое изображение неба на ваш...

Как изменить цвет значков в строке состояния iPhone с помощью джейлбрейка и твика Dapple Одна из самых интересных возможностей устройств с джейлбрейком — возможность выделиться из толпы с помощью кастомизации.

REG.RU против Beget: разбор полетов Чуть менее года назад началась увлекательная история, когда REG.RU в одностороннем порядке расторг партнерский договор с Beget. Мне стало интересно, как обстоят дела с данным вопросом, и я решил поинтересоваться ходом разбирательств у непосредственных участников, так как зая...

Intel Optane DC Persistent Memory, год спустя Летом прошлого года мы анонсировали в блоге Optane DC Persistent Memory — память Optane на базе модулей 3D XPoint в формате DIMM. Как и было тогда заявлено, поставки планок Optane начались во втором квартале 2019 года, к этому моменту о них накопилось достаточно информации...

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

[Перевод] Эффекты фильтров SVG: контурный текст при помощи feMorphology Во второй части серии об SVG-фильтрах Sara Soueidan знакомит нас с фильтром feMorphology и приводит несколько примеров его использования для создания интересных эффектов. Читать дальше →

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

Как использовать функцию Digital Touch в iMessage Digital Touch — возможность отправки своего рисунка, прикосновения или пульса при помощи приложения «Сообщения». Это была одна из дебютных функций Apple Watch. ***

Создание stateful навыка для Алисы на serverless функциях Яндекс.Облака и Питоне Начнём с новостей. Вчера Яндекс.Облако анонсировало запуск сервиса бессерверных вычислений Yandex Cloud Functions. Это значит: ты пишешь только код своего сервиса (например, веб-приложения или чатбота), а Облако само создаёт и обслуживает виртуальные машины, где он запускает...

Что нового в настройках конфиденциальности iOS 13 Apple не просто рекламирует конфиденциальность, как функцию в своих продуктах. У нее есть специальная страница, на которой в деталях объясняют как именно работают функции конфиденциальности. Компания обновляет ее уже четвертый год подряд. В этом году, Apple сделала акцент на...

Microsoft рассказала о новых функциях в API DirectX 12 Один из руководителей графической команды Microsoft опубликовал запись в официальном блоге, раскрывающую ряд новых функций в API DirectX 12. Они сейчас доступны в сборках Windows 10 Insider Preview (20H1) через программу тестирования Windows...

Разбор задач с конференции Hydra — балансировка нагрузки и in-memory хранилища Несколько дней назад случилась конференция Hydra. Ребята из JUG.ru Group пригласили спикеров мечты (Лесли Лэмпорт! Клифф Клик! Мартин Клеппманн!) и посвятили два дня распределённым системам и вычислениям. Контур был одним из трёх партнёров конференции. Мы общались на стенде,...

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

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

ADB vs Spy Cam Как проверить, ведет ли какое-нибудь приложение на Android-смартфоне фото- или видеорепортаж, хотя ему это ни разу ни к чему? Нижепредлагаемый вариант совсем не идеален, но не требует «рута» или кастомной прошивки. Что требуется установить: ADB (например, в составе Android ...

Как включить новый раздел «Обзор» в Chrome на Android? Google настолько часто обновляет свои мобильные браузеры Chrome и Chrome Canary для Android, что порой кажется, уследить за всеми нововведениями просто невозможно. Любопытные разработчики и обычные пользователи с выходом каждой новой бета-версии начинают перелопачивать весь...

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

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

Windows 10 20H1 получила улучшения аппаратного набора клавиатуры В Windows 10 April 2018 Update (версия 1803) была добавлена ​​функция, позволяющая получать текстовые подсказки при использовании аппаратной клавиатуры. В Windows 10 20H1 Microsoft планирует улучшить функцию подсказок аппаратной клавиатуры, предоставляя прогнозы на основе ис...

Consumer Reports считает функцию Tesla Smart Summon «глючной» Функция вызова припаркованного электромобиля Smart Summon, которую компания Tesla недавно добавила в программное обеспечение своих электромобилей, является «глючной». Такого мнения придерживается влиятельный американский журнал Consumer Reports. Функция Sma...

Google расширила сферу применения функция раздачи интернета с Android-смартфонов на Chromebook на десятки сторонних устройств Циркулировавшие ранее слухи о намерении Google расширить действие функции Internet Tethering на сторонние устройства получили официальное подтверждение. Напомним, эта функция позволяет использовать смартфон для передачи интернет-доступа на другое устройство. Теперь воспользо...

Скриншоты в Android Q учитывают наличие вырезов в экранах и скруглённые углы Тематические ресурсы и энтузиасты по всему миру продолжают исследовать операционную систему Android Q. Мы уже рассказывали, что в ней обнаружили настольный режим и функцию Screen Recording. Теперь же в системе нашли достаточно забавную особенность. Речь о получении скри...

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

[Перевод] Создание собственных синтаксических конструкций для JavaScript с использованием Babel. Часть 1 Сегодня мы публикуем первую часть перевода материала, который посвящён созданию собственных синтаксических конструкций для JavaScript с использованием Babel. Читать дальше →

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

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

ATtiny13 против ПЛК, или как получить 14 I/O от контроллера с 8 ногами Прежде чем приступить, хотел бы предупредить рьяного читателя. То, что я описываю, делать нельзя по многим причинам, эти причины вам радостно укажут в комментариях, и я ни коим образом не призываю так делать. И ни в коем случае я не утверждаю, что описанным ниже устройст...

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

[Перевод] Что я узнал, создавая Dribbble В прошлом месяце я выступал с 30-минутным докладом на конференции Awwwards в Сан-Франциско. Раньше я довольно часто выступал с докладами, в основном по CSS и веб-дизайну, но этот спич немного отличался. Я решил поделиться 20 вещами, которые я узнал за последние 10 лет, как ...

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

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

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

[Из песочницы] Проблема перехода на зимнее и летнее время для отдельно взятой скайп школы 28 марта на Хабрасеминаре Иван Звягин, главред в Habr, посоветовал написать статью о буднях нашей лингвистической скайп школы. «Людям будет сто пудов интересно, — пообещал он,-сейчас многие создают онлайн школы, и было бы любопытно узнать эту кухню изнутри». Семь лет сущест...

Apple объявляет о поддержке меток NFC, запускающих Apple Pay На конференции TRANSACT в Лас-Вегасе в начале мая вице-президент Apple по Apple Pay Дженнифер Бэйли рассказала о некоторых новых функциях Apple Pay, которые Apple представит в будущем. Бэйли рассказала о поддержке новых наклеек или меток NFC, которые будут запускать Apple Pa...

[Из песочницы] Создание слайдера диапазона значений для фильтра без использования Jquery Очень часто на сайтах интернет-магазинов, и не только, можно фильтры со слайдером выбора диапазона значений. В одном из проектов мне тоже понадобилось сделать такой слайдер. Первое, что приходит в голову — найти уже готовый и вставить себе на сайт. Тут то я и столкнулся с п...

Как установить Android SDK на Windows, Mac и Linux 22 октября 2008 года в Android появился магазин приложений Play Market. С тех пор прошло больше 10 лет и сегодня Google Play насчитывает почти 3 миллиона приложений в их числе Telegram с каналом AndroidInsider. Как же разработчикам со всего мира удается создавать качественн...

Как отсканировать и создать PDF-документ при помощи Android-смартфона Создать PDF-документ при помощи Android-смартфона можно в два счета! Что нужно было сделать всего каких-то лет 10 назад для того, чтобы отправить документ по электронной почте? Воспользоваться огромным сканером, который, ясное дело, не так-то просто носить с собой, после чег...

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

Представлена камера Leica SL2, которую производитель называет «новой иконой легендарного бренда» Компания Leica представила камеру Leica SL2, которую производитель нескромно называет «новой иконой легендарного бренда и очередным шагом к созданию идеальной универсальной камеры». От модели SL, открывшей новую фотосистему в 2015 году, новинка отличается б...

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

[Перевод] Рассказ о решении проблемы с производительностью Moment.js Moment.js — это одна из самых популярных JavaScript-библиотек для разбора и форматирования дат. В компании WhereTo используют Node.js, поэтому для них применение этой библиотеки было совершенно естественным ходом. Проблем с серверным использованием Moment.js не ожидалось. В ...

Илон Маск: электромобили Tesla скоро получат «режим часового» Владельцы Tesla вскоре получат возможность наблюдать повреждения (и записывать их), которые происходят с их транспортом, когда он остается без присмотра. Tesla представляет Tesla Sentry Mode — «режим часового Tesla» — для всех автомобилей с усовершенствованным автопилотом (...

[Перевод] GCP: Разбор вычислительного стека Google Cloud Platform Перевод статьи подготовлен специально для студентов курса «Облачные сервисы». Интересно развиваться в данном направлении? Смотрите запись профессионального мастер-класса «AWS EC2 сервис», который провёл Егор Зуев — TeamLead в компании InBit и автор образовательной программы...

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

ИК-пульт на stm32 Описание библиотеки для считывания, декодирования и последующей отправки инфракрасных сигналов от различных бытовых пультов, с помощью микроконтроллера stm32. За основу взята билиотека IRremote для ардуино, и адаптирована под stm32. Читать дальше →

Как защитить WhatsApp на Android отпечатком пальца Безопасность сложно назвать коньком WhatsApp. Не проходит и месяца, чтобы в мессенджере не нашли очередную уязвимость, которая либо позволяет шпионить за его пользователями, либо – что еще хуже – вмешиваться в переписку и вносить в неё изменения. Но разработчики, будто не з...

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

В MIT научились передавать звук с помощью лазера Группа исследователей из MIT представила новый метод передачи направленного звука при помощи лазера. Под катом, рассказываем, на чем построена эта технология. Читать дальше →

[Из песочницы] Сказ о том, как чайник Autoplay Media Studio 8.5.3.0 ломал Как не трудно догадаться, то чайник — это я. Захотелось мне на днях в исходник одной утилитки заглянуть, очевидно сделанной средствами AMS (.cdd файл рядом с .exe и пара lua*.dll). Пару лет назад разбирал детально одну программу сделанную аналогичными средствами и предста...

[Из песочницы] Арифметика fixed-point на C++ Сегодня расскажу Вам что такое fixed-point, зачем он нужен и как его можно использовать. Существует такая проблема когда производительность приложения может заметно ухудшиться из-за особенностей вычисления на числах с плавающей точкой. Как правило CPU заточен под целочислен...

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

[Перевод] Модульные спрайтовые персонажи и их анимация Эта запись девлога целиком посвящена моей системе анимации персонажей, она наполнена полезными советами и фрагментами кода. За последние два месяца я создал целых 9 новых действий игрока (такие забавные вещи как блокировка щитом, уворачивание в прыжке и оружие), 17 новых но...

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

Как часто вы используете свой смартфон для видеозвонков? Вы не задумывались над тем, что мы используем свои смартфоны довольно странным образом? Современные телефоны имеют массу функций. Это настоящие мультимедиа-комбайны, способные дать фору даже некоторым лэптопам. За последнее время смартфоны предоставили нам массу возможносте...

Microsoft готовится к тестированию функции Console Streaming на Xbox One Компания Microsoft объявила о выпуске новых предварительных сборок операционной системы для Xbox One для участников программы Xbox Insider на каналах Alpha и Alpha Skip-Ahead (версии 1911 и 2004 соответственно). Обновление начнёт распространяться в полночь по московскому вр...

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

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

Смартфоны Motorola G7 получили поддержку функций Google Call Screen, Digital Wellbeing и фирменное ПО Moto Experiences Только вчера мы говорили о том, что функция Google Call Screen вскоре может появиться на смартфонах Motorola и Nokia, как уже сегодня первая компания опубликовала соответствующий пресс-релиз. Поддержку Call Screen получили смартфоны линейки Moto G7 и Motorola One. Они р...

[Перевод] Создание пиксельной туманности при помощи шума и Median Cut Я хотел, чтобы в моей игре The Last Boundary была туманность. Они потрясающе выглядят и космос без них не космос, а просто разбросанные по фону белые пиксели. Но так как игру я делаю в стиле «пиксель-арт», то мне нужно было как-то заставить мою библиотеку шума генерировать п...

Ранняя сборка Android Q имеет общесистемную темную тему, настольный режим работы и многое другое Задолго до «часа X» команде XDA-Developers (популярного сайта для разработчиков Android) удалось заполучить одну из ранних тестовых сборок будущей операционной системы Google, которая фигурирует сейчас в обсуждениях под названием Android Q, на Google Pixel 3 XL. Понятно, что...

[Из песочницы] Создание библиотеки в стиле Spring Data Repository своими руками при помощи Dynamic Proxy и Spring IoC А что если бы можно было создать интерфейс, например, такой: @Service public interface GoogleSearchApi { /** * @return http status code for Google main page */ @Uri("https://www.google.com") int mainPageStatus(); } А затем просто внедрять его ...

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

В современном автомобиле строк кода больше чем… Количество строк кода в современном автомобиле в 200 раз больше чем в Шаттле, в 60 раз больше, чем в истребителе F-22 Raptor, в 50 раз больше, чем в телескопе Хаббл, в 20 раз больше чем в марсоходе Curiosity, в 4 раза больше чем в истребителях пятого поколения, в 2 раза бо...

Google обновила Android Auto – более интуитивный интерфейс и темная тема по умолчанию Сегодня в США стартует конференция Google I/O, на которой компания представит массу новинок, как аппаратных, так и программных. Но как минимум одну новинку Google не стала утаивать до последнего – речь об обновленном интерфейсе автомобильной информационно-развлека...

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

Microsoft выпускает Office Insider Build 12026.20000 Microsoft выпустила новую версию Office для инсайдеров. Новая сборка 12026.20000 не содержит новых функций в приложениях Office, но содержит множество исправлений ошибок и улучшений производительности. Вы можете прочитать официальный список изменений ниже.Что новогоPowerPoin...

[Перевод] RxDart: магические трансформации потоков Добро пожаловать — это третья часть моей серии статей об архитектуре Flutter. Введение Основы Dart Streams RxDart: магические трансформации потоков (этот пост) Основы RxVMS: RxCommand и GetIt RxVMS: Службы и Менеджеры RxVMS: самодостаточные виджеты Аутентификация пользова...

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

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

ModLook — сканер регистров ModBus. Отмечаем 20-летие программы Сегодня я бы хотел рассказать о программе, с помощью которой я начинал изучать протокол ModBus и ПЛК. Я ей пользуюсь до сих пор, и лично видел её в использовании у нескольких наладчиков. Если кому-то интересна история её создания или исходники прошу под кат. Читать дальше →

TP-Link Deco M4 и его функции Функция родительского контроля позволяет отслеживать активность пользователей и время, проведенное в сети. Для детей разных возрастов можно создавать отдельные профили с различными типами ограничений. Ежемесячные отчеты по активности могут автоматически отправляться на смарт...

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

Настройка LaTeX в Sublime Text Ниже представлено руководство по установке текстового редактора Sublime Text, с последующим добавлением в него возможности использования системы компьютерной вёрстки LaTeX. В качестве бонуса научим его понимать язык Julia. Читать дальше →

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

Как сделать BTC-транзакцию без сдачи из мелких монет Многие кошельки биткоина при выборе монет для отправки предпочитают использовать крупную монету, баланс которой больше отправляемой суммы. После каждой такой транзакции образуется монета-сдача. Через какое-то время весь кошелёк зарастает такими монетами порядка 0.001 (~10 д...

Книга «Командная строка Linux. Полное руководство. 2-е межд. изд.» Привет, Хаброжители! Международный бестселлер «Командная строка Linux» поможет преодолеть путь от первых робких щелчков по клавишам до уверенного создания полноценных программ для последней версии bash — наиболее популярной командной оболочки Linux. Второе издание рассказыв...

Эксклюзив: ранняя сборка Android Q имеет общесистемную темную тему, обновления разрешений, настольный режим работы и многое другое Задолго до «часа X» команде XDA-Developers (популярного сайта для разработчиков Android) удалось заполучить одну из ранних тестовых сборок будущей операционной системы Google, которая фигурирует сейчас в обсуждениях под названием Android Q, на Google Pixel 3 XL. Понятно, что...

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

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

[Перевод] Вся правда об ОСРВ. Статья #26. Каналы: вспомогательные службы и структуры данных В данной статье мы продолжим рассматривать каналы передачи данных. Вспомогательные службы каналов Nucleus RTOS имеет четыре вызова API, которые предоставляют вспомогательные функции, связанные с каналами: сброс канала, получение информации о канале, получение количества к...

Google сделала Chrome для Android по-настоящему удобным. Наконец-то Компания Google испытывает обновленный интерфейс адресной строки в Chrome для устройств под управлением Android, узнали журналисты 9To5Google, изучив нововведения бета-версии мобильного веб-браузера. В основном все изменения, которые должен привнести будущий апдейт, сосредо...

Platform Developers Conf by Miro: онлайн-трансляция Привет! Если вам не хватило мест на Platform Developers Conference, которая пройдёт в субботу, 9 ноября, не расстраивайтесь: мы организовали веб-трансляцию. Конференция посвящена созданию платформ для разработчиков. В качестве спикеров — техлиды и ведущие инженеры из Stripe...

Названо кардинальное отличие Galaxy Note11 от флагманов Samsung 2019 года Флагманский смартфон Samsung Galaxy Note10 дебютировал около трёх месяцев назад, а компания Samsung Electronics уже работает над его наследником. Первыми подробностями поделился тайваньский ресурс DigiTimes, известный своими связями с производственной цепочкой поставок....

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

[recovery mode] Что мне не нравится в Python Привет, Хабр! Я подумал о том чего мне не хватает в Python, и что мне не нравится. Дисклеймер: это мое субъективное мнение, оно может не совпадать с Вашим. Я с удовольствием программирую на Python, но у любой технологии (языка программирования в частности) есть свои недос...

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