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

[Из песочницы] Странные они, статические переменные в PHP Дисклеймер: данная статья не явит вам какого то откровения и не откроет третий глаз, но позволит разобраться в не очень очевидном вопросе более детально. Мне по крайней мере при ее написании она в этом помогла. Если вы матерый волк в php то можете не читать, опытным человека...

[Из песочницы] Основы прозрачного проксирования с использованием 3proxy и iptables/netfilter или как «пустить всё через прокси» В данной статье хотелось бы раскрыть возможности прозрачного проксирования, которое позволяет абсолютно незаметно для клиентов перенаправлять весь либо часть трафика через внешние прокси-серверы. Когда я начинал решать данную задачу то столкнулся с тем, что её реализация ...

[Из песочницы] Реализация горячей перезагрузки С++ кода в Linux * Ссылка на библиотеку в конце статьи. В самой статье изложены механизмы, реализованные в библиотеке, со средней детализацией. Реализация для macOS еще не закончена, но она мало чем отличается от реализации для Linux. Здесь в основном рассматривается реализация для Linux. Г...

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

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

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

[Из песочницы] Опыт установки Apache Airflow на Windows 10 Преамбула: волею судьбы из мира академической науки (медицины) я попала в мир информационных технологий, где мне приходится использовать свои знания о методологии построения эксперимента и стратегиях анализа экспериментальных данных, однако, применять новый для меня стек тех...

Анонс Windows 10 Insider Preview Build 18860 (Skip Ahead) Кроме новой сборки Windows 10 19H1 под номером 18362, о которой вы можете прочитать в нашей предыдущей статье, компания Microsoft выпустила новую сборку Windows 10 20H1 под номером 18860 для инсайдеров на канале Skip Ahead. Сборка относится к обновлению с кодовым названием ...

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

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

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

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

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

[Перевод] Разновидности SIMD Во время разработки meshoptimizer частенько возникает вопрос: «А может этому алгоритму использовать SIMD?» Библиотека ориентирована на производительность, но SIMD не всегда обеспечивает значительные преимущества по скорости. К сожалению, SIMD может сделать код менее перено...

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

Основы статической маршрутизации в Mikrotik RouterOS Маршрутизация — процесс поиска оптимального пути для передачи пакетов в сетях TCP/IP. Любой устройство подключенное к сети IPv4 содержит процесс и таблицы маршрутизации. Данная статья не является HOWTO, она описывает на примерах статическую маршрутизацию в RouterOS, я намере...

[Перевод] Деревья квадрантов и распознавание коллизий Эта неделя была короткой, в понедельник и вторник я продолжал работать над системой 2D-освещения. Остальное время я потратил на реализацию деревьев квадрантов (quadtree). В этой статье я поделюсь своей реализацией и мыслями, возникшими в процессе её проектирования. Во-пер...

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

[Перевод] Вышла Preview-версия XAML Hot Reload для Xamarin.Forms На прошлой неделе на Xamarin Developer Summit мы анонсировали «Горячую перезагрузку (Hot Reload) XAML для Xamarin.Forms», которая позволяет вносить изменения в пользовательский интерфейс XAML и просматривать их в режиме реального времени, не требуя другой сборки и развертыва...

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

[Перевод] Полнофункциональная динамическая трассировка в Linux с использованием eBPF и bpftrace «В режиме трассировки программист видит последовательность выполнения команд и значения переменных на данном шаге выполнения программы, что позволяет легче обнаруживать ошибки» — сообщает нам Википедия. Сами будучи поклонниками Linux, мы регулярно сталкиваемся с вопросом, ...

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

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

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

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

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

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

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

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

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

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

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

Как настроить типы задач и не сойти с ума Вводная частьВ предыдущем посте я писал как организовать процесс “грумминга” задач в системе JIra так чтобы “Менеджеру продукта” было удобно осуществлять навигацию по всему Беклогу продукта. Продолжая продуктовую тему напишу о том как я долго шел к пониманию того — что такое...

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

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

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

Windows 10 Build 18323: Переменная частота кадров Сегодня состоялся релиз новой сборки Windows 10 под номером 18323 и некоторыми пользователями была замечена функция «Переменная частота кадров» (Variable refresh rate). Данная опция включает синхронизацию частоты выдаваемых кадров видеокарты c монитором. Но для этого необход...

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

Новый Microsoft Edge выйдет 15 января для Windows и MacOS Сегодня Microsoft объявила, что новая версия Edge на базе Chromium будет официально выпущена 15 января, а кандидат на выпуск доступен сегодня для тех, кто хочет протестировать стабильную версию нового браузера Edge перед общедоступным релизом. Разработка нового Microsoft Edg...

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

MPS 2019.2: перечисляемые типы данных, настройка сообщений об ошибках, переход на JDK 11 и многое другое В MPS 2019.2 мы подготовили для вас много новых функций в различных подсистемах и исправили ряд ошибок. Скачать MPS 2019.2 Перечисляемые типы данных Новый способ объявления перечисляемых типов данных позволяет определить список вариантов в компактной форме, указав для к...

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

[Из песочницы] Рассылка Push-уведомлений с SpringBoot сервера Предисловие Приветствую Вас. Недавно передо мной стала задача — настроить Push-уведомления на сайте. С этим я столкнулся впервые и во много разобраться мне помогла эта статья. В ней же уже есть описание серверной стороны, но, в процессе изучения данной темы я обнаружил более...

[Перевод] Как встроить С-библиотеку в Swift-фреймворк В 2014 году был представлен Swift, новый язык для разработки приложений экосистемы Apple. Новинка принесла не только новые возможности и функции, но и проблемы — тем, кто хотел пользоваться старыми добрыми C-библиотеками. В этой статье я рассмотрю одну из них — бандлинг C-...

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

Microsoft заблокировала установку Windows 10 на старых Mac Пользователи старых Mac вновь попали под раздачу: корпорация Microsoft запретила установку самого последнего обновления Windows 10 (1903) на устаревшие компьютеры Apple. В список «пострадавших» входят все Mac, выпущенные до 2012 года. По утверждениям представителей Microsof...

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

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

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

[Из песочницы] Поддельные DS18B20 waterproof: что делать? Доброго времени суток! В данной статье отражена проблема поддельных датчиков, ограничения существующих устройств, использующих эти датчики и решение данной проблемы. Источник: ali-trends.ru До меня о поддельных датчиках писалось еще и здесь. Характерные отличия поддельных...

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

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

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

Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 5 ← Часть 4. Программирование периферийных устройств и обработка прерываний Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 5. Проектирование многопоточных приложений В предыдущих частях статьи мы подробно останавливались на основах программирования с ...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 47. Устранение неполадок OSPF Сегодня мы продолжим тему предыдущего урока о протоколе OSPF, которому посвящен раздел 2.4 тематики ICND2, и рассмотрим устранение типичных проблем реализации этого протокола. Вернемся к примеру Packet Tracer, которым мы закончили последнее видео. Для начала я исправлю обозн...

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

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

ОБНОВЛЕНО: Приложение «Погода» сломалось на iOS 12.3. Как теперь быть? После обновления iOS до версии 12.3 многие владельцы iPhone столкнулись с проблемами при работе с приложением «Погода». Многие читатели сообщают о том, что смартфоны отказываются определять погоду по геолокации, перезагрузка при этом не помогает, но в обычном режиме погода ...

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

Как бороться пылью, попадающей в сопло экструдера 3d принтера Владельцы 3D принтеров зачастую сталкиваются с проблемой попадания частиц пыли и мусора в сопло экструдера. Накапливаясь, они начинают забивать сопло экструдера. Этот мусор может прилипать к внутренним стенкам экструдера, что, в конечном итоге, приводит к засорению сопла.Поп...

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

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

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

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

Запрос к API c React Hooks, HOC или Render Prop Рассмотрим реализацию запроса данных к API c помощью нового друга React Hooks и старых добрых товарищей Render Prop и HOC (Higher Order Component). Выясним, действительно ли новый друг лучше старых двух. Читать дальше →

Реализация пула соединений в WCF для .Net Core с использованием HttpClientFactory Наш продукт разрабатывается на платформе .Net Core 2.2 с использованием WCF 4.5 для взаимодействия с SOAP сервисом клиента. В процессе работы сервиса разработчики шины данных заметили высокую нагрузку на сервер. Далее стали появляться проблемы с доступом к сервису. В результ...

В новый Firefox добавлена блокировка криптомайнеров Разработчики Mozilla выпустили новую версию браузера Firefox для Windows, macOS, Linux и Android. В релизе 67.0 обозревателя исправлена 21 уязвимость, а также добавлена функция блокировки встроенных криптомайнеров и скриптов, скрытно отслеживающих пользователя по цифровым от...

Microsoft исследует проблему с завершением работы и перезагрузкой в Windows 10 Build 18999 Несколько дней назад Microsoft выпустила новую инсайдескую сборку Windows 10 20H1 под номером 18999 на канале «Ранний доступ», которая принесла с собой множество изменений и, как оказалось, одну весьма неприятную проблему. Как сообщают некоторые пользователи, после обновлен...

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

Основы формата GLTF и GLB, часть 2 Данная статья является продолжением рассмотра основ GLTF и GLB форматов. Вы можете найти первую часть статьи здесь. В первой части мы рассмотрели с вами зачем изначально планировался формат, а также такие артефакты и их атрибуты GLTF формата как Scene, Node, Buffer, BufferVi...

Опасность использования multi-character-констант Во время анализа кода, PVS-Studio выполняет анализ потока данных и оперирует значениями переменных. Значения берутся из констант или выводятся из условных выражений. Мы называем их виртуальными значениями. Недавно мы улучшали их для работы с multi-character-константами и эт...

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

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

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

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

Обработка системных вызовов посредством LD_PRELOAD с единой точкой входа Делая пере-реализацию QInst на LLVM, я столкнулся с такой проблемой: QEMU в режиме эмуляции одного процесса естественным образом перехватывает все «гостевые» системные вызовы. В итоге плагин инструментации имеет единую точку входа для их предобработки, где можно по номерам S...

СМЕЩЕНИЕ СЛОЕВ, Дефект 3D печати - принтер Creality3D Ender 3 Добрый  день.В процессе печати Вы можете столкнуться с проблемой  СМЕЩЕНИЯ или СДВИГА слоя детали. Сегодня я расскажу  основные причины  и методы устранения этой проблемы.Можете посмотреть ниже ВИДЕО-ИНСТРУКЦИЮ в конце поста.МЕХАНИКА:1) Проверить затянуты...

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

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

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

И все-таки, почему Posit являются достойной альтернативой IEEE 754 Месяц Posit объявлен на Хабре открытым, а значит я не могу пройти мимо и проигнорировать обрушившуюся на них критику. В предыдущих сериях: Новый подход может помочь нам избавиться от вычислений с плавающей запятой Posit-арифметика: победа над floating point на его собственн...

[Перевод] Что есть и чего нет в Go. Часть 2 Всем привет! Cегодня делимся заключительной частью перевода статьи «Что есть и чего нет в Go». Напоминаем, в первой части речь шла о элементах, которые есть в Go, сегодня же поговорим о том, чего в Go нет. Перевод данного материала подготовлен в преддверии старта нового пот...

[Из песочницы] Замечательная аннотация Version в JPA Введение Итак, начнем! Что же означает аннотация Version в JPA? Если коротко, то она отвечает за блокировки в JPA. Данная аннотация решает одну из проблем, которые могут возникнуть в результате параллельного выполнения транзакций. Какие же могут возникнуть проблемы? Пот...

Об open-source реализациях хэш-функции ГОСТ Р 34.11-2012 и их влиянии на электронную подпись ГОСТ Р 34.10-2012 В свое время реализация отечественных криптографических алгоритмов в библиотеке libgcrypt очень меня вдохновила. Стало возможным задействовать эти алгоритмы и в Kleopatra и в Kmail и в GnuPg в целом, рассматривать библиотеку libgcrypt как алтернативу openssl с ГОСТ-ым engine...

[Из песочницы] USB-звуковая карта на YM3812 Я люблю старые компьютерные игры. Люблю старое железо, но не настолько, чтобы коллекционировать его дома. Другое дело – поковырять какой-нибудь старый чип и попробовать самому что-нибудь воспроизвести, совместить старое с новым. В данной статье история о том, как я подключил...

Реализация целого типа в CPython На Хабре уже были статьи о подробностях реализации менеджера памяти CPython, Pandas, я написал статью про реализацию словаря. Казалось бы, что можно написать про обычный целочисленный тип? Однако тут не всё так просто и целочисленный тип не такой уж и очевидный. Если вам и...

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

Старые iPhone и iPad могут лишиться важных функций с 3 ноября Компания Apple выпустила на своём сайте поддержки документ с предупреждением для владельцев старых моделей iPhone и iPad.  Речь идёт о моделях, представленных в 2012 году и ранее — iPhone 5 и iPad 4 поколения, а также iPhone 4s, iPad mini первого поколения, ...

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

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

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

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

[Перевод] Механизм Heap only tuples в PostgreSQL Postgresql отличается от других СУБД тем, что в ней при операции UPDATE, изменений в существующей строке не происходит, а вместо этого делается копия строки, которая отличается от оригинала значениями колонок, затронутых апдейтом — в оригинале они старые, а в копии — изменён...

Анонс Windows 10 Insider Preview Build 18329 (Fast) Добрый день, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 19H1 под номером 18329 для участников программы Windows Insider, использующих канал Fast. Эта сборка не будет доступна для пользователей на следующих языках: Windows 10 Home: RO-RO, SK...

В системе безопасности Google Фото имеется серьезная уязвимость, о которой вы не знали Каким бы продвинутым и хорошо защищенным не был бы тот или иной сервис. Какие бы заявления о том, что пользоваться их продуктами максимально безопасно не делали разработчики. Как бы вы не доверяли той или иной компании. Любой цифровой продукт имеет недоработки и «дыры&...

[Из песочницы] Пользовательские параметры в Google Analytics, которые не раз нас спасали При настройке аналитики через Google Analytics (GA) нередко без внимания остаются Пользовательские параметры или CD (Custom Dimensions). Это происходит из-за сложности с пониманием их области применения: неясно, как именно CD могут помочь в сборе и анализе данных и каким обр...

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

Накопительное обновление KB4497935 для Windows 10 устанавливается несколько раз Последнее накопительное обновление, выпущенное Microsoft для Windows 10 May 2019 Update (версия 1903), устанавливается для некоторых пользователей дважды или даже трижды.Сообщения на Reddit показывают, что обновление KB4497935 неоднократно предлагается для некоторых устройст...

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

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

Все ближе к зеркальным камерам. Samsung Galaxy Note10 получит объектив с переменной диафрагмой Еще в декабре прошлого года был представлен смартфон-раскладушка Samsung W2018, камера которого может снимать с диафрагмой F/1,5 или F/2,4. Затем эта функция перешла в Samsung Galaxy S9. Но если у остальных смартфонов регулировка значения диафрагмы производилась програм...

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

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

[Перевод] Самодельный сборщик мусора для OpenJDK Это перевод статьи Алексея Шипилёва «Do It Yourself (OpenJDK) Garbage Collector», публикуется с согласия автора. О любых опечатках и других багах сообщайте в личку — мы их поправим.Процесс создания чего-нибудь в рантайме языка — весёлое упражнение. По крайней мере, создание ...

Уязвимость Slack позволяла красть данные из списка загрузок Исследователь Дэвид Уэллс (David Wells) из Tenable обнаружил в Slack 3.3.7 уязвимость, которая позволяла получить доступ к скачанным на устройство файлам. Проблема затронула десктопное приложение для Windows. Эксперт сообщил разработчикам о найденном баге, и они уже исправил...

Как исправить проблемы в работе функции Always On Display на Galaxy S10 Функция Always On Display еще со времен Galaxy S7 и Galaxy S7 Edge позволяет кастомизировать экран и выводить на него массу полезной информации, упрощая работу со смартфоном от Samsung. Недавно мы даже рассказывали вам о том, как правильно настроить эту фичу в Galaxy S10. К...

[Перевод] Вся правда об ОСРВ. Статья #29. Прерывания в Nucleus SE Все современные микропроцессоры и микроконтроллеры содержат какие-либо механизмы прерывания. Эти механизмы необходимы для обеспечения «отзывчивости», требуемой многими приложениями. Безусловно, отзывчивость и предсказуемость являются основной целью при использовании ОСРВ, но...

Инсайдерам на канале Slow стала доступна первая сборка Windows 10 19H1 После нескольких месяцев ожидания компания Microsoft наконец-то выпустила первую предварительную сборку Windows 10 19H1 для участников программы Windows Insider, использующих канал Slow. Через Windows Update них распространяется сборка с номером 18342.8. Напоминаем, что 19H...

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

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

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

GitHub Actions как CI/CD для сайта на статическом генераторе и GitHub Pages Немного прошерстив Habr удивился тому, что очень мало опубликовано статей на тему (beta-)фичи GitHub'а — Actions. Казалось бы, можно объяснить такую недосказанность тем, что функционал еще в тестировании, пусть и "beta". Но именно полезная особенность беты позволяет исполь...

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

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

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

Анонс Windows 10 Insider Preview Build 18841 (Skip Ahead) Добрый вечер, друзья! Этим вечером Microsoft выпустила сразу две новые инсайдерские сборки Windows 10. О сборке 18343 (19H1), которая стала доступна на канале Fast, мы уже рассказали в нашей предыдущей статье. Теперь же пришло время рассказать об изменениях в сборке 18841 (...

A Year of Rain вышла в ранний доступ в Steam Разработчики студии Daedalic Entertainment официально сообщили о том, что игра A Year of Rain вышла на ПК в Steam в формате раннего доступа. Проект представляет собой стратегию с упором на сюжет, повествование и кооператив, что является большой редкостью на современном рынке...

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

[Из песочницы] Whitespace Обфускатор для PHP Прочитав статью про обфускацию в JavaScript (а именно 3-ю часть статьи), я заинтересовался подобным обфускатором для PHP. Обфускатор, о котором шла речь в статье превращал JavaScript-код в невидимый (на первый взгляд), состоящий из табуляций и пробелов код. Суть заключаетс...

Пользователи не могут войти в почту Google после обновления до macOS 10.14.4 Вчера Apple выпустила macOS 10.14.4 для всех пользователей с такими функциями, как темный режим в Safari, Apple News + и другими. Но как отмечают пользователи, в обновлении также есть одна неприятная ошибка, связанная с аутентификацией учетных записей Gmail через стандартно...

Windows 10 Build 18362.325 – исправление Песочницы Windows Обновление Windows 10 May 2019 Update (версия 1903) предоставляет ряд новых функций, в том числе новая светлая тема, улучшение производительности и, возможно, наконец-то заработает Windows Sandbox.Функция безопасности Windows Sandbox доступна для пользователей с лицензией Wi...

Битва L2TP, RRAS vs SoftEther «Украденная с запада картинка для привлечения внимания» В прошлых наших статьях мы рассказали, как работать с VDS на Windows Server Core 2019 на нашем новом тарифе UltraLight за 99 рублей в месяц. Предлагаем еще один способ использования данного тарифа. На этот раз речь по...

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

[Перевод] Опыт кандидата при рекрутинге разработчиков программного обеспечения. Часть 1 День добрый, друзья. Сегодняшняя публикация будет не совсем типичной для нашего блога, потому как речь пойдет о рекрутинге разработчиков ПО, а точнее о практическом опыте кандидата. И приурочена данная статья к запуску нового потока по курсу «IT-Recruiter». Было доказано,...

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

Samsung Galaxy Note10 получит систему Smart ISO В Сети продолжают появляться новые сведения о флагманском планшетофоне Samsung Galaxy Note10, который должен быть представлен менее чем через две недели. Согласно новым данным, основная камера Samsung Galaxy Note10 получит новую функцию, которой нет у Galaxy S10. Как ст...

Reaktive — мультиплатформенная библиотека для реактивного Kotlin Многие сегодня любят реактивное программирование. В нём масса плюсов: и отсутствие так называемого "callback hell", и встроенный механизм обработки ошибок, и функциональный стиль программирования, который уменьшает вероятность багов. Значительно проще писать многопоточный ...

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

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

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

[Перевод] Стандартный браузерный API Payment Request Знаете ли вы о том, что во многих современных браузерах имеется встроенный API, который называется Payment Request? Этот API описан в стандарте W3C, который направлен на поддержку работы с платёжной и контактной информацией. Вот обзор стандарта на ресурсе developers.google.c...

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

Что делать при сбое оперативной памяти. Анамнез и методы лечения Оперативная память – такая деталь системы, которая реже всех выходит из строя. Но спонтанные перезагрузки системы с BSOD и без него, вылеты игр или программного обеспечения, некорректные результаты обработки заданий в тяжёлом софте – всё это и многое другое может быть симпто...

Книга «Как устроен JavaScript» Большинство языков программирования выросли из древней парадигмы, порожденной еще во времена Фортрана. Гуру JavaScript Дуглас Крокфорд выкорчевывает эти засохшие корни, позволяя нам задуматься над будущим программирования, перейдя на новый уровень понимания требований к Сле...

Новый способ переноса данных с iPhone на iPhone Вышедшее на днях обновление iOS 12.4, неожиданно принесло очень удобное и полезное нововведение, перенес данных со старого iPhone на новый iPad или iPhone, благодаря функции «Быстрое начало». Теперь нет необходимости использовать iCloud или iTunes, чтобы перенести ...

Расчёт каннибализации на основе классического A/B-теста и метод bootstrap’а В данной статье рассмотрен метод расчёта каннибализации для мобильного приложения на основе классического A/B-теста. В данном случае рассматриваются и оцениваются целевые действия в рамках процесса реаттрибуции с рекламного источника (Direct, Criteo, AdWords UAC и прочих) по...

Промышленные брандмауэры Cisco получили серию патчей Компания Cisco закрыла 19 уязвимостей в программном обеспечении для межсетевых экранов Adaptive Security Appliance (ASA) и Firepower. Все баги имеют высокую степень опасности и получили от 7,2 до 8,8 балла по шкале CVSS. Обновленные версии прошивок доступны клиентам компании...

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

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

Организуем ML-проект с помощью Ocean Вступление За годы разработки ML- и DL-проектов у нашей студии накопились и большая кодовая база, и много опыта, и интересные инсайты и выводы. При старте нового проекта эти полезные знания помогают увереннее начать исследование, переиспользовать полезные методы и получить ...

[Перевод] Новый алгоритм поиска пути в Factorio На прошлой неделе мы говорили в своём блоге об изменениях, которые позволят врагам (biters) не наталкиваться друг на друга, но это было не единственное обновление, связанное с biter-ами. Совпало так, что в обновления этой недели вошло то, над чем мы работали предыдущие неск...

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

Новейшие функции OnePlus 7 Pro уже могут опробовать владельцы старых моделей компании Новые смартфоны OnePlus могут предложить покупателям не только новые платформы и камеры, но и новые функции ПО. В частности, в новинках дебютировал режим Zen Mode и функция записи экрана Screen Recorder. Со вторым пунктом всё понятно — это весьма полезная в некото...

Nullable Reference типы в C# 8.0 и статический анализ Не секрет, что Microsoft достаточно давно работает над выпуском восьмой версии C#. В недавно состоявшемся релизе Visual Studio 2019 новая версия языка (C# 8.0) уже доступна, но пока ещё только в качестве beta релиза. В планах этой новой версии есть несколько возможностей, р...

GitLab Shell Runner. Конкурентный запуск тестируемых сервисов при помощи Docker Compose Данная статья будет интересна как тестировщикам, так и разработчикам, но рассчитана в большей степени на автоматизаторов, которые столкнулись с проблемой настройки GitLab CI/CD для проведения интеграционного тестирования в условиях недостаточности инфраструктурных ресурсов ...

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

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

[Перевод] А есть ли случайные числа в CSS? CSS позволяет создавать динамические макеты и интерфейсы в Интернете, но как язык разметки он является статическим — после установки значения его нельзя изменить. Идея случайности не обсуждается. Генерация случайных чисел во время выполнения — это территория JavaScript, а ...

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

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

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

[Перевод] Структура данных B-дерево Всем привет! Мы запустили новый набор на курс «Алгоритмы для разработчиков» и сегодня хотим поделиться интересным переводом, подготовленным для студентов данного курса. В деревьях поиска, таких как двоичное дерево поиска, AVL дерево, красно-чёрное дерево и т.п. каждый узе...

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

Apple выпустила watchOS 6.1 для старых и новых Apple Watch и macOS 10.15.1 Обновлениям операционных систем Apple не видно конца и края Наверное, все любят оказываться правыми и гордо объявлять во всеуслышание: «Ну я же говорил». Не так ли? Это сразу, хоть и ненадолго, поднимает самооценку и заставляет нас чувствовать себя по меньшей мере конкурента...

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

Hello, World! Глубокое погружение в Терминалы На написание данной статьи меня вдохновила статья об анализе Сишного printf. Однако, там был пропущен момент о том, какой путь проходят данные после того, как они попадают в терминальное устройство. В данной статье я хочу исправить этот недочет и проанализировать путь данны...

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

Apple настоятельно рекомендует владельцам старых iPhone и iPad обновить iOS Весной этого года стало известно об ошибке в GPS-навигаторах, которая получила название Y2K. Потенциально она могла приводить к искажению данных о местоположении. Крупные производители навигаторов уже подготовили программные заплатки для своих устройств. Однако подобная проб...

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

Краеугольные камни уничтожения медленного кода в Wolfram Language: ускоряем код в десятки, сотни и тысячи раз Скачать файл с кодом и данные можно в оригинале поста в моем блоге Картинка к вебинару и посту взята не просто так: в определенном смысле символьное ядро Wolfram Language можно сравнить с Таносом — если бы его мощь была бы направлена в правильное русло, он мог бы стать самы...

У некоторых пользователей не работает авторизация при помощи PIN-кода в Windows 10 версии 1903 Накопительное обновление для Windows 10 за сентябрь 2019 года быстро становится огромной проблемой для пользователей, поскольку по крайней мере одно из исправлений, выпущенных Microsoft в этом месяце, продолжает вызывать одну проблему за другой.На этот раз в отчете AskWoody ...

У Intel снова проблемы с 10-нанометровой продукцией В начале месяца компания Intel пообещала, что мобильные 10-нанометровые процессоры Ice Lake в составе готовых решений появятся к концу текущего года. Intel не указала названий моделей или их параметров, но рассказала много интересного и полезного об особенностях грядущи...

[Из песочницы] Транзакции и механизмы их контроля Транзакции Транзакцией называется последовательность операций над данными имеющая начало и конец Транзакция это последовательное выполнение операций чтения и записи. Окончанием транзакции может быть либо сохранение изменений (фиксация, commit) либо отмена изменений (откат, r...

Когда вредно хешировать ПредисловиеДанный текст будет являться одной из переписанных глав для учебного пособия по защите информации кафедры радиотехники и систем управления, а также, с этого учебного кода, кафедры защиты информации МФТИ (ГУ). Полностью учебник доступен на github (см. также draft re...

Доступно для скачивания Windows 10 Build 18362.418 Накопительные обновления Windows 10 за октябрь 2019 года теперь доступны для всех поддерживаемых версий ОС. Компьютеры с обновлением May 2019 Update получают Windows 10 Build 18362.418 с исправлением печати. Прямые ссылки для загрузки автономных установщиков Windows 10 KB451...

Запись видео со старого компьютера — методы от LGR LGR (Lazy Game Reviews) — один из крупнейших англоязычных каналов, посвященных старому компьютерному железу и не менее старым играм. В конце 2018 года он выпустил видео с рассказом о том, как он записывает видео со старых компьютеров — а я решил превратить это видео в неболь...

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

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

Новая версия Oxygen для OnePlus 5 и 5T исправила ошибки с кнопками и Wi-Fi Компания OnePlus официально сообщила о том, что смартфоны OnePlus 5 и 5T начали получать обновление программного обеспечения OxygenOS за версией 9.0.2. До этого пользователи OnePlus 5 и OnePlus 5T начали жаловаться на официальном форуме на то, что стабильность подключен...

В библиотеке jQuery устранена серьезная уязвимость В jQuery закрыта уязвимость, которая позволяет провести DoS-атаку или получить права администратора веб-приложения, использующего эту JavaScript-библиотеку на стороне клиента. Эксперт по кибербезопасности Лиран Тал (Liran Tal) из Snyk обнаружил брешь 26 марта; пропатченная в...

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

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

Как решить проблему с Bluetooth на Samsung Galaxy S10 Линейка устройств Samsung Galaxy S10, по некоторым данным, станет последней у южнокорейской компании, поддерживающей стандарт сопряжения устройств Bluetooth 5.0. В будущем Samsung перейдет на новый формат, однако сегодня спустя какое-то время после покупки некоторые пользов...

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

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

[Перевод] LLVM IR и Go В этой статье мы рассмотрим, как построить программу на Go, такую, как компилятор или статический анализатор, которая взаимодействует с фреймворком компиляции LLVM, используя язык ассемблера LLVM IR. TL;DR мы написали библиотеку для взаимодействия с LLVM IR на чистом Go, см...

«А вместо процессов у них там практики…» Такую фразу довольно часто можно услышать или прочитать в обсуждении новой версии ITIL® 4. Корректно ли это утверждение? Насколько «вместо»? Есть ли разница между процессами и практиками? Действительно, существенную часть объёма книги составляет раздел, в котором для тех, кт...

(Статический) Подбор оптимальных контейнеров в программах на C++ Здравствуйте. Сегодня хотелось бы поговорить снова про статический анализ. И снова про C++. Только в отличие от PVS-Studio мы будем искать не какие-то ошибки в наших программах (хотя они ищут не только ошибки), а места, которые написаны недостаточно оптимально. И одним из та...

[Перевод] Python как предельный случай C++. Часть 2/2 Продолжение. Начало в «Python как предельный случай C++. Часть 1/2». Переменные и типы данных Теперь, когда мы окончательно разобрались с математикой, давайте определимся, что в нашем языке должны означать переменные. В С++ у программиста есть выбор: использовать автоматичес...

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

Анонс Windows 10 Insider Preview Build 19023 (Ранний доступ) Доброй ночи, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19023 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Полный номер сборки: 19023.1.vb_release.191108-1432. Как можно заметить, сборка ...

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

[Из песочницы] Typescript и react Разработка на javascript иногда становится похожа на работу детектива. Как понять чужой код? Хорошо, если разработчик обладает тонким искусством называть переменные так, чтобы другие поняли суть. А как быть, если члены команды все таки не всегда способны понять замысел своег...

AirTest IDE и Image Recognition — автоматизация тестирования мобильных игр на основе распознавания изображений В предыдущей статье мы познакомились с AirTest IDE, но, на всякий случай, давайте повторим: AirTest IDE разработан компанией NetEase и предназначен для "hard-to-automate" приложений, таких как, например, игр. Собственно на них и делается основной упор разработчиками, хотя эт...

Практическое применение трансформации AST-деревьев на примере Putout Введение Каждый день при работе над кодом, на пути к реализации полезного для пользователя функционала, становятся вынужденные (неизбежные, либо же просто желательные) изменения кода. Это может быть рефакторинг, обновление библиотеки или фреймворка до новой мажорной версии, ...

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

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

Увеличилась ли скорость работы iPhone на iOS 12.3 В конце марта для загрузки стала доступна первая версия iOS 12.3. Это обновление сложно назвать масштабным: в системе появилось новое приложение для сервиса Apple TV+, однако на этом глобальные нововведения заканчиваются. Все остальные изменения направлены на исправление ош...

Как использовать сегментацию, таргетирование и позиционирование (STP) в разработке маркетинговой стратегии Добрый вечер, друзья! Сегодня поговорим о трафике, а именно STP. Данный материал приурочен к запуску курса «Трафик-менеджер», который стартует уже в конце февраля. Сегодня Сегментация, Таргетирование и Позиционирование (Segmentation, Targeting and Positioning, сокращенно ST...

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

Facebook планирует объединить Messenger, Instagram и WhatsApp Газета The New York Times поделилась планами Марка Цукерберга, которые касаются глубокой интеграции Facebook Messenger, WhatsApp и Instagram. Речь идёт о полном переписывании программного кода всех трёх мессенджеров с целью унификации бэкенда и использования end-to-end шифр...

Тесты или типы? — Rust version Пару дней назад 0xd34df00d опубликовал здесь перевод статьи, описывающей, что можно узнать о функции в разных языках, если рассматривать её как "чёрный ящик", не используя информацию о её реализации (но, разумеется, не мешая ей пользоваться компилятору). Разумеется, получаем...

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

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

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

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

Проблемы беспроводных наушников и их решение AirPods — мои любимые наушники. В основном, потому что описанные проблемы с ними происходят реже всего 2019 год уже уверенно можно назвать годом, когда беспроводные наушники доказали свою состоятельность на рынке. По данным компании «Связной-Евросеть», доля беспроводны...

Лексическое окружение (LexicalEnvironment) и Замыкание (Closures) в EcmaScript Привет, Хабр! Давно ничего не писал, большая загруженность на проекте крайние несколько недель, но сейчас появилось свободное время, поэтому решил представить вашему вниманию новую статью. Сегодня мы продолжим разбирать ключевые концепции EcmaScript, поговорим о Лексическо...

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

Пользователи столкнулись с проблемами после обновления до iOS 12.1.3 Во вторник, 22 января, Apple выпустила минорное обновление iOS под номером 12.1.3. Ожидалось, что данный апдейт наконец решит все проблемы связанные со слабым приемом сигнала сотовой связи и Wi-Fi. Однако этого не произошло. Напротив — по сообщениям пользователей порт...

Основы движков JavaScript: общие формы и Inline кэширование. Часть 1 Привет, друзья. В конце апреля мы запускаем новый курс «Безопасность информационных систем». И уже сейчас хотим поделиться с вами переводом статьи, которая непременно будет очень полезной для курса. В статье описаны ключевые основы, они являются общими для всех движков Jav...

Часть 5/2 корп. 1: Перекрёсток проспекта RocketChip и скользкой дорожки инструментации В предыдущих четырёх частях велась подготовка к экспериментам с RISC-V ядром RocketChip, а именно, портирование этого ядра на «нестандартную» для него плату с ПЛИС фирмы Altera (теперь уже Intel). Наконец, в прошлой части на этой плате получилось запустить Linux. Знаете, что...

В конце года Tesla начнёт обновлять старые автомобили, оснащая их новейшими процессорами FSD В апреле компания Tesla представила процессор FSD (full self-driving), который на тот момент уже фактически использовался в последних партиях автомобилей Model S и Model X. Tesla FSD — процессор собственной разработки компании, который заменил в машинах автогигант...

OpenSceneGraph: Обработка событий Введение Одной из особенностей языка C++, за которую его часто критикуют — отсутствие в стандарте механизма обработки событий. Между тем данных механизм это один из основных путей взаимодействия одних программных компонентов с другими программными компонентами и аппаратным ...

[Из песочницы] Работа с JSON RPC в Symfony 4 Всем привет, сегодня поговорим о том, как подружить Symfony 4, JSON RPC и OpenAPI 3. Данная статья рассчитана не на новичков, вы уже должны понимать как работать с Symfony, Depedency Injection и другими «страшными» вещами. Сегодня рассмотрим одну конкретную реализацию JSON ...

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

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

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

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

Нельзя разблокировать iPhone X – как решить проблему После выхода нового статусного iPhone X, многие владельцы приобрели возможность попробовать в работе новую и вполне безопасную технологию Face ID, которая позволяет быстро разблокировать устройство. Дабы система смогла сканировать владельца, нужно направить фронтальную камер...

Отставить панику! «Старые» смартфоны Samsung не потеряют функциональность Пару дней назад тематический ресурс SamMobile сообщил, что Samsung решила прекратить поддержку Bixby для старых версий Android. Если читать только кричащие заголовки, то звучит страшно, на самом деле ситуация оказалась не такой «угрожающей».  Sams...

Вебинар «Визуализация отчётов с помощью Data Studio и Power BI» Мы расскажем, как визуализировать данные с помощью Google Data Studio и Power BI, рассмотрим новые функции и интересные отчеты. Обговорим, чем отличаются эти два инструмента визуализации отчетов. Отдельно расскажем вам об интеграции Google BigQuery и Power BI и покажем их во...

В Google Photos появилась лента архивных снимков Memories и возможность заказать печатать фотографии, в планах – функции мессенджера В сервисе Google Photos появились новые функции, стимулирующие воспоминания. Одна из новых функций так и называется – Memories (Воспоминание). Она позволяет напомнить о старых фотографиях и видео во время их годовщин съёмки. Эта новая функция очень похожа на Stories из Insta...

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

Сборка, настройка, калибровка дельта принтера HE3D K280 или полобных Приветствую всех тех кто купил дельта принтер HE3D K280 или просто зашел суда.Сегодня я расскажу вам о там, как настраивать и собирать этот принтер. Пока я читал о нем в инете наткнулся на другой отзыв (https://clck.ru/F6y7v). В нем сказано что деталь, к которой крепятся диа...

Накопительное обновление KB4515384 не ломает меню Пуск Microsoft заявляет, что печально известное накопительное обновление KB4515384 для Windows 10 версии 1903 не является причиной проблем с меню «Пуск» и поиском.Программный гигант выпустил это накопительное обновление 10 сентября в рамках цикла Patch Tuesday. Вскоре после запус...

Черный экран был замечен в удаленном рабочем столе Windows 10 Windows 10 May 2019 Update (версия 1903) в настоящее время постепенно развертывается на совместимом оборудовании. По мере продвижения развертывания новые ошибки получают признание Microsoft. Новая проблема, которую Microsoft в настоящее время исследует, это черный экран в ок...

Anycubic Photon S А что же дальше? В начале я хочу поблагодарить магазин 3DSN за помощь в поиске проблемы и общении с технической поддержкой, а так же пользователя AndyBig за его статью с разборкой принтера Anycubic Photon S https://3dtoday.ru/blogs/andybig/disassembly-anycubic-photon-s-look-what-inside-new-p...

Microsoft выпустила новое накопительное обновление для Windows 10 October 2018 Update (17763.292) Компания Microsoft приступила к распространению нового накопительного обновления для Windows 10 October 2018 Update с кодовым названием KB4476976, которое изменит номер сборки системы на 17763.292. Как обычно, обновление не приносит с собой новых функций, а направлено на ис...

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

Поддержка интерфейса PCI Express 4.0 не даёт видеокартам Radeon RX 5700 преимущества в производительности Вчера в продажу поступили видеокарты Radeon RX 5700 и RX 5700 XT. На нашем сайте уже вышла первая часть обзора, кроме того, мы ознакомились с усреднёнными показателями других тематических ресурсов. Теперь же пришла пора узнать, имеет ли хоть какое-то значение для новых ...

[Из песочницы] Метод создания DRAG and DROP эффекта Придя впервые к технологии DRAG and DROP столкнулся с очень тяжелым её описанием (Это мое субъективное мнение. Прошу с ним не соглашаться, а перечитать все что только можно и посмотреть на этот вопрос с многих сторон). И решил написать пару статей, нацеленных на начинающих р...

Уточняем описание функций системы с помощью диаграммы Sequence Уточняем описание функций системы с помощью диаграммы Sequence (продолжение "Белки") В данной статье рассмотрим, как можно детализировать (уточнить) описание автоматизируемой функции с помощью UML Sequence Diagram — диаграммы последовательности. В данном примере я использую ...

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

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

Synet — фреймворк для запуска предварительно обученных нейронных сетей на CPU Введение Здравствуйте, уважаемые хабровчане! Последние два года моей работы в компании Synesis были тесно связаны с процессом создания и развития Synet — открытой библиотеки для запуска предварительно обученных сверточных нейронных сетей на CPU. В процессе этой работы мне...

Windows 10 Build 18343 доступна для загрузки Для быстрого круга тестирования вышла сборка Windows 10 Build 18343, хотя при этом недавно выходил билд 18342. Изменения в очередной раз касаются небольших исправлений в системе.В первую очередь была решена проблема с функцией Connected Standby, из-за которой на определенных...

Смартфоны Apple вернутся на 19,5 лет назад Речь идет о модели iPhone 5, наиболее новой iOS для которого является 10.3.4. Проблема связана с переносом времени GPS и затрагивает любые приложения, в работе которых важно точное время. Сброс счетчика недели (GPS week rollover) на спутниках глобальной навигационной с...

Рекомендательная система для Directum Club. Часть первая, коллаборативная Каждый день пользователи по всему миру получают большое количество различных рассылок — только через сервис MailChimp ежедневно рассылают миллиард писем. Из них открывают 20.81%. Ежемесячно пользователи наших сайтов получают рассылки с отобранными редактором материалами. Эти...

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

Пользователи столкнулись с проблемами после обновления до iOS 12.3.2 Не так давно Apple выпустила обновление для iOS 12.3.2. Апдейт предназначался только для одной модели — iPhone 8 Plus и содержал в себе исправления функции портретного режима. И, казалось бы, на этом тема с обновлением должна быть закрыта — но нет. Как выяснилос...

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

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

AMD лишает старые материнские платы поддержки PCI Express 4.0 Последнее обновление микрокода AGESA (AM4 1.0.0.3 ABB), которое компания AMD уже распространила среди производителей материнских плат, лишает поддержки интерфейса PCI Express 4.0 все платы c Socket AM4, построенные не на чипсете AMD X570. Многие производители материнских пла...

Новые функции камеры iPhone 11 Pro получат и старые модели Во время недавней презентации Apple показала интересные возможности камеры новых iPhone Pro. Смартфоны могут записывать видео одновременно со всех модулей основной камеры. Результат получается как минимум интересным. Теперь выяснилось, что эта «фишка» появится и у старых мод...

Windows 10 Build 18855 доступна для загрузки Состоялся релиз новой сборки Windows 10 под номером 18855. В этот раз у нас есть только исправления ошибок сборки. Приложение Блокнот отныне будет сохранять любую набранную информацию после перезагрузке ПК; добавлена поддержка микрофона в Windows Samdbox; решена проблема с с...

ML на Scala с улыбкой, для тех, кто не боится экспериментов Всем привет! Сегодня будем говорить о реализации машинного обучения на Scala. Начну с объяснения, как мы докатились до такой жизни. Итак, наша команда долгое время использовала все возможности машинного обучения на Python. Это удобно, есть много полезных библиотек для подг...

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

Cisco закрыла опасный баг в Unified Communications Manager Компания Cisco выпустила 17 обновлений безопасности для своих продуктов. Десять патчей устраняют уязвимости с высоким рейтингом опасности, в том числе проблемы неавторизованного доступа, отказа в обслуживании, эскалации привилегий и другие баги. Апдейты затрагивают системное...

Как установить обновление Microsoft Windows от 10 ноября 2019 На этой неделе Microsoft объявила о выпуске своего обновления для Windows 10 от 2019 года (версия 1909). Если вы относитесь к числу первых пользователей и хотите попробовать новейшую версию Microsoft, вы будете рады узнать, что загрузка и установка обновления очень проста, с...

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

#Конкурс! Как работать с видео в 4K на Mac без Final Cut Pro X За последние несколько лет компьютеры Mac у многих стали ассоциироваться как инструменты для работы с видео. Действительно, Apple сама не скрывает, что делает упор на тех, кто монтирует ролики (особенно в 4K), но кроме профессионального решения Final Cut Pro X ничего не пре...

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

Анонс Windows 10 Insider Preview Build 19008 (Fast и Skip Ahead) Доброй ночи, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19008 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Полный номер сборки: 19008.1.vb_release.191019-1715. Как можно заметить, сборка ...

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

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

[Из песочницы] Использование let объявлений переменных и особенности образуемых при этом замыканий в JavaScript Написать данную заметку меня сподвигло прочтение статьи на Хабре «Var, let или const? Проблемы областей видимости переменных и ES6» и комментариев к ней, а также соответствующей части книги Закаса Н. «Understanding of ECMAScript 6». Исходя из прочитанного я вынес, что не всё...

Как включить AirDrop между iPhone и старым компьютером Mac AirDrop работает не на всех компьютерах Mac В компьютерах Mac функция AirDrop появилась вместе с OS X 10.7 Lion. В мобильные устройства она пришла вместе с iOS 7, однако только с выходом OS X Yosemite и iOS 8 передача данных заработала между мобильными устройствами и компьют...

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

Apple предупреждает владельцев iPhone 5 о необходимости обновления ПО Компания Apple начала предупреждать владельцев смартфонов iPhone 5 с помощью полноэкранных предупреждений о том, что они потеряют ключевые онлайн-функции (включая электронную почту, просмотр веб-страниц, доступ к App Store и iCloud), если до 3 ноября не обновятся до iOS...

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

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

TabPy для работы с данными в ClickHouse из Tableau Выстраивание коммуникаций между брендами и людьми — то, чем мы в Dentsu Aegis Network занимаемся каждый день, и неотъемлемой частью этой работы является анализ данных. В ряде случаев этот процесс не требует data science (хотя и он у нас есть), тогда мы используем BI платформ...

Apple, Google и Facebook создают универсальный инструмент передачи данных. Зачем он нужен Перейти с одной операционной системы на другую сегодня достаточно просто. Благодаря обилию инструментов для миграции пользователи могут без особого труда перенести все свои данные со старого устройства на новое практически без потерь. Проблемы же возникают в основном при не...

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

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

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

Apple хотела превратить iPhone в рацию, но не смогла AirPods — самые лучшие беспроводные наушники В арсенале Apple много разных разработок, часть из которых кажется совсем уж невероятной. Взять хотя бы функцию Find My, позволяющую искать даже разряженные устройства путём установки связи с гаджетами проходящих мимо пользо...

[Перевод] Поиск на скорости 1 ТБ/с TL;DR: Четыре года назад я покинул Google с идеей нового инструмента для мониторинга серверов. Идея состояла в том, чтобы объединить в одну службу обычно изолированные функции сбора и анализа логов, сбора метрик, оповещений и панели мониторинга. Один из принципов — сервис до...

Анонс Windows 10 Insider Preview Build 18845 (Skip Ahead) Добрый вечер, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 18845 для участников программы Windows Insider, выбравших канал обновлений Skip Ahead. Сборка относится к обновлению с кодовым названием 20H1, а не 19H2, как можно бы...

Как легко перенести данные с айфона на айфон в iOS 12.4 Долгое время процесс первоначальной настройки iPhone требовал обязательного подключения к iTunes, выводя из себя многих из нас. Собственно, за это смартфоны Apple и не любили. Однако со временем влияние бюрократии сошло на нет и пользователям сначала разрешили активировать ...

Новая волна накопительных обновлений Windows 10 уже 8 октября Microsoft выпустит новую волну накопительных обновлений Windows 10 сегодня в рамках выпуска октябрьского исправления во вторник.Все версии Windows 10 получат новые накопительные обновления, хотя стоит отметить, что для SKU Home и Pro по-прежнему поддерживаются только версия ...

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

[Из песочницы] Создаем монорепозиторий с помощью lerna & yarn workspaces За последние несколько лет концепция монорепозиториев успешно зарекомендовала себя, так как позволяет значительно упростить процесс разработки модульных программных проектов, таких как инфраструктуры на основе микросервисов. Основные преимущества такого архитектурного подх...

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

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

Обновление Microsoft Edge Dev для Windows 10 вводит новые функции Каждую неделю Microsoft выпускает новую сборку браузера Edge Dev, и сегодня выходит новое обновление с некоторыми довольно значительными улучшениями. В Microsoft Edge Dev Build 77.0.189.3 представлена ​​функция Коллекции, интеграция с Windows 10 и многое другое.Microsoft Edg...

[Перевод] Особенности рендеринга в игре Metro: Exodus c raytracing Предисловие После выхода последней игры из серии «Метро» я потратил несколько часов на изучение её внутренней работы и решил поделиться тем, что может показаться интересным с технологической точки зрения. Я не буду проводить подробный анализ или изучать дизассемблированный ...

Microsoft закрывает сайт Health Dashboard и прекращает поддержку браслетов Band На сайте Microsoft опубликовано сообщение, адресованное пользователям носимых устройств Band и связанного с ними сервиса Health Dashboard. Этим сообщением Microsoft информирует об окончании работы Health Dashboard. 31 мая текущего года сайт Microsoft Health Dashboard бу...

Началось? Некоторые смартфоны Huawei неожиданно отключили от Google Play Huawei P30 — первый смартфон, который отключили от Google Play. Надолго ли? Когда США наложили на Huawei санкции, закрыв ей пути к сотрудничеству с американскими компаниями, самым большим ударом для неё и её пользователей стал запрет на использование сервисов Google. П...

Microsoft выпустила новое накопительное обновление для Windows 10 October 2018 Update (17763.316) Компания Microsoft выпустила новое накопительное обновление для Windows 10 October 2018 Update, которое распространяется под кодом KB4487044 и изменяет номер сборки системы на 17763.316. Как обычно, накопительное обновление не приносит с собой новых функций, а направлено на...

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

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

Анонс Windows 10 Insider Preview Build 19002 (Fast и Skip Ahead) Добрый вечер, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19002 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Полный номер сборки: 19002.1.vb_release.191010-1436. Как можно заметить, сборка...

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

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

[Перевод] Управление памятью в Python Задумывались ли вы когда-нибудь о том, как данные, с которыми вы работаете, выглядят в недрах Python? О том, как переменные создаются и хранятся в памяти? О том, как и когда они удаляются? Материал, перевод которого мы публикуем, посвящён исследованиям глубин Python, в ходе ...

Microsoft сообщает о новых игровых функциях в Windows 10 May 2019 Update Обновление Windows 10 May 2019 Update постепенно появляется в первой волне совместимых устройств. Среди различных функций, таких как Windows Sandbox и светлой темы, Windows 10 версии 1903 также представляет новую функцию для геймеров.Последнее обновление Windows 10 версии 19...

Adobe предупреждает пользователей старых приложений Creative Cloud о потенциальных претензиях по защите авторских прав Что произошло? Adobe разослала электронные письма, предупреждающие пользователей старых продуктов Adobe, что они могут нарушать авторские права, если они продолжат использовать более старые версии. Предупреждение может быть связано с иском Dolby, но неизвестно, как это повли...

Apple советует не затягивать с установкой iOS 9.3.6 и iOS 10.3.4 GPS начнёт неправильно работать на старых iPhone и iPad после 3 ноября 2019 года Apple всегда очень трепетно относилась к обновлениям своих устройств, рекомендуя пользователям не затягивать с установкой даже самых незначительных, на первый взгляд, апдейтов. Ведь чаще всего и...

Constructor Plus — ретро-стратегия в свежем исполнении Недавно мы побывали на закрытом показе игры Constructor Plus. Она представляет собой переиздание оригинальной стратегии Constructor, которая вышла в далеком 1997 году. В этой статье мы расскажем, чем так была популярна игра и что в ней изменилось спустя 22 года. Трейлер ...

Continuous delivery для вашей Kotlin Multiplatform библиотеки Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. В процессе работы мы столкнулись с тем, что в случае с Kotlin Multiplatform continuous integration и continuous del...

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

Внедрение Airflow для управления Spark-джобами в ivi: надежды и костыли Задача деплоя моделей машинного обучения в продакшн — это всегда боль и страдания, потому что очень некомфортно вылезать из уютного jupyter notebook в мир мониторинга и отказоустойчивости. Мы уже писали про первую итерацию рефакторинга рекомендательной системы онлайн-киноте...

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

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

Анонс Windows 10 Insider Preview Build 18317 (Fast) Добрый вечер, друзья! Компания Microsoft выпустила новую инсайдерскую сборку Windows 10 19H1 под номером 18317 на быстрый канал обновлений. Предлагаем вашему вниманию перечень изменений, которые приносит с собой новая сборка системы. Напоминаем, что разработка следующего фу...

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

Как работает функция облачной установки в Windows 10 Windows 10 20H1, которая является обновлением функций, которое выйдет в эксплуатацию весной 2020 года, представит новую опцию переустановки ОС из облака, которая позволит пользователям начать с нуля переустановкой ОС, используя только образ системы, хранящийся в облаке. Это ...

Владельцам старых iPhone и iPad рекомендуется срочно установить обновление iOS 10.3.4, чтобы избежать проблем в работе GPS, интернета, электронной почты и других функций Пользователям, которые всё ещё продолжают активно пользоваться смартфонами iPhone 5 и iPad четвёртого поколения (с поддержкой Wi-Fi и сотовой сетей), рекомендуется срочно обновить операционную систему до версии iOS 10.3.4 – до 3 ноября. Иначе они рискуют столкнуться с пробле...

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

Функции Android 10, которые мы так и не увидели Не все опции Android 10 нам доступны Бета-тестирование Android 10 обещало нам много разнообразных функций — от жестовой навигации до тонкой настройки уведомлений. Однако зачастую бывает так, что не все опции из тестовых сборок «доживают» до финальной стадии. ...

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

Книга «React быстро. Веб-приложения на React, JSX, Redux и GraphQL» Привет, Хаброжители! Оригинальное издание вышло осенью 2017 года, но до сих пор считается лучшей книгой для знакомства с React. Автор постоянно обновляет и дорабатывает код к книги в репозитории Github. Предлагаем в посте ознакомится с отрывком «Состояния и их роль в интер...

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

Windows 10 Build 18361 доступна для загрузки Состоялся релиз Windows 10 Build 18361. В данной сборке исправлены всего лишь 2 ошибки: исправлена проблема с виртуальными машинами, которая не позволяла их установить на инсайдерские сборки, и решена проблема с BitLocker, который не позволял зашифровать накопители. Хоть изм...

Новые ключевые слова в Java В ближайшем будущем в языке Java появятся новые фичи, над которыми сейчас идет работа в рамках проектов Valhalla, Panama и Loom. Расширение языка — дело непростое, тем более — языка, в котором акцент делается на обратную совместимость; поэтому для того, чтобы их интеграция в...

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

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

Apple выпустила iOS 12.1.3 с исправлениями ошибок для HomePod, iPad Pro, CarPlay и многого другого Apple выпустили iOS 12.1.3, пятое обновление операционной системы iOS 12 с момента ее запуска в сентябре. iOS 12.1.3 — это небольшое обновление, которое следует за iOS 12.1.2 (только для iPhone), выпущенной еще в декабре, и iOS 12.1.1, также выпущенной в декабре. Обно...

Android Q получит программную реализацию функции 3D Touch Достаточно внимательные любители технологий могли заметить в некоторых решениях Google, сделанных в последнее время, своего рода попытку стереть границы между Android и iOS или, по крайней мере, попытаться уменьшить различия между этими двумя операционными системами. Насколь...

Не все старые системные платы с разъёмом AM4 смогут работать с новыми семинанометровыми процессорами Ryzen Новейшие семинанометровые процессоры AMD Ryzen должны показать уже на Computex 2019, а в продаже они якобы появятся в июле. О данных CPU мы знаем не очень много. К примеру, ещё в начале года AMD говорила о 15-процентном увеличении количества исполняемых за такт инструкц...

Plasma Cash Chain как решение трилеммы масштабируемости в блокчейн Добрый день, уважаемые читатели! Данная статья посвящена Plasma Cash Chain и проливает свет на следующие темы: трилемма масштабируемости и способы ее решения; структуры данных чайлд чейна и их отображение в рутчейне; реализация ввода в рутчейн; реализация вывода из рутче...

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

[Перевод] PostgreSQL 11: Эволюция секционирования от Postgres 9.6 до Postgres 11 Отличной всем пятницы! Все меньше времени остается до запуска курса «Реляционные СУБД», поэтому сегодня делимся переводом еще одного полезного материала по теме. В процессе разработки PostgreSQL 11 была проделана впечатляющая работа по улучшению секционирования таблиц. Секц...

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

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

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

Apple начала задумываться о том, чтобы снизить свою зависимость от iPhone В конце прошлого года компания Apple столкнулась с серьезной проблемой – снижением объемов продаж iPhone. А если учесть, что для купертиновцев смартфоны являются основным источником дохода, производителю нужно быстро искать пути выхода из сложившейся ситуации. Кроме этого Ap...

Microsoft выпускает Office Insider Build 12030.20004: Surface Pen теперь будет лучше работать с Office Microsoft выпустила новую сборку Office Insider Preview для пользователей Windows. Если вы используете Surface Pen, вы по достоинству оцените новые функции в новом Office Insider Build 12030.20004, поскольку теперь он позволяет легко рисовать в Excel, PowerPoint и Word. Поми...

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

Не обновляйтесь до iOS 13 – подождите выхода iOS 13.1 Несмотря на месяцы бета-тестирования, новая версия iOS имеет некоторые проблемы. Журналисты Appleinsider рекомендуют подождать выхода обновления 13.1. Новая iOS 13 была официально выпущена 20 сентября, но сразу после релиза было обнаружено ряд ошибок. Даже несмотря на то, чт...

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

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

Что нового в SOLIDWORKS 2020 Более чем шести миллионам пользователей по всему миру SOLIDWORKS позволяет ускорить и усовершенствовать процесс разработки изделий – начиная со стадии концептуального дизайна до изготовления конечной продукции – и сгенерировать добавленную стоимость для их бизнеса. Рассмот...

[Перевод] Приключения неуловимой малвари, часть V: еще больше DDE и COM-скриплетов Эта статья является частью серии «Fileless Malware». Все остальные части серии: Приключения неуловимой малвари, часть I Приключения неуловимой малвари, часть II: скрытные VBA-скрипты Приключения неуловимой малвари, часть III: запутанные VBA-скрипты для смеха и прибыли ...

В библиотеке libssh2 для Linux закрыли девять брешей Разработчики Linux-библиотеки libssh2 залатали девять уязвимостей в очередной версии продукта — 1.8.1. Эксплуатация брешей позволяла злоумышленникам выполнить вредоносный код на пораженном устройстве или вызвать отказ в обслуживании. Баги обнаружил ИБ-специалист компании Can...

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

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

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

Монтируем iOS под OSX с помощью ifuse На днях столкнулся с задачей примонтировать в OSX 10.14 iPad в качестве внешнего диска, с возможностью осуществлять файловые операции из консоли. В интернете я нашел довольно много инструкций как это сделать с помощью файловой системы ifuse. К сожалению с iOS 12 ничего не вы...

[Из песочницы] Визуализация времени возрождения Рошана В данной статье рассматривается перехват функций графического API на примере DirectX 9 под x64 применительно к игре Dota 2. Будет подробно рассказано, как внедриться в процесс игры, как изменить поток выполнения, приведено краткое описание внедряемой логики. В конце поговор...

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

[Из песочницы] Объектно-ориентированное программирование в Java и Python: сходства и отличия Привет, Хабр! Представляю вашему вниманию перевод статьи “Object-Oriented Programming in Python vs Java” автора Джона Финчера. Реализация объектно-ориентированного программирования (ООП) в языках Java и Python отличается. Принцип работы с объектами, типами переменных и прочи...

AMD Radeon Software Adrenalin 2019 Edition 19.4.1 – исправление ошибок Компания AMD в начале месяца выпустила новую версию драйвера Radeon Software Adrenalin 2019 Edition версии 19.4.1. Данный драйвер не содержит каких-либо глобальных игровых оптимизаций, а просто является исправлением многих ошибок, которые были замечены в предыдущих версиях д...

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

Полезная help-ссылка для работы с данными Хабр, привет. Представляю вам главную help-ссылку для работы с данными. Материал в Гугл-доке подойдет как профессионалам, так и тем, кто только учится работать с данными. Пользуйтесь и прокачивайте скиллы сами + делитесь с коллегами. Дальнейшее описание поста — это содержан...

Новые подробности о режиме контроля сна новых Apple Watch Apple Watch Series 4 не превратятся в тыкву. И вот почему Уже на следующей неделе Apple представит новые Apple Watch. Новинка получит индекс «пять» в названии, а её ключевой особенностью, если верить слухам, станет функция слежения за качеством сна пользователя. Лично я дово...

Как перенести SMS-сообщения с одного Android-смартфона на другой Приобрести новый смартфон всегда приятно. Однако на вашем старом аппарате остается масса нужной информации. И если сегодня с переносом всех контактов, фотографий, видеороликов и даже настроек проблем не возникает, так как все привязано к вашему аккаунту Google, то вот SMS-с...

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

Реализация словаря в Python Всем привет, 30 апреля в ОТУС стартует курс «Алгоритмы для разработчиков», именно к этому приурочена публикация сегодняшнего материала. Начнём. В этой статье вы узнаете, как в Python реализованы словари. Словари индексируются с помощью ключей, и они могут рассматриваться ...

Анонс Windows 10 Insider Preview Build 19033 (Fast и Slow) Доброй ночи, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19033 для участников программы Windows Insider, использующих каналы «Ранний доступ» и «Поздний доступ». Полный номер сборки: 19033.1.vb_release.191123-1729. Как можно ...

Android 10 лишила пользователей Samsung Galaxy S10 доступа к смартфону Компания Samsung недавно запустила программу бета-тестирования фирменно оболочки One UI 2.0 на основе свежей операционной системы Android 10 для пользователей смартфонов серии Galaxy S10 в нескольких регионах. У многих из них тестовая версия прошивки привела к большой п...

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

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

ResNet50. Своя реализация Всем привет. Библиотека нейросети описана в моей прошлой статье. Здесь решил показать как можно использовать обученную сеть из TF (Tensorflow) в своем решении, и стоит ли. Под катом сравнение с оригинальной реализацией TF, демо приложение для распознавания картинок, ну и… в...

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

Edge на базе Chromium вскоре обзаведется новыми функциями Microsoft на Build 2019 представила новые изменения, которые скоро появятся в версии браузера Edge на Chromium. Новые функции включают новый режим Internet Explorer (IE) для предприятий, желающих получить доступ к веб-сайтам старой школы, которые по-прежнему зависят от IE, р...

Apple рассказала, что будет, если не обновить iPhone 5 до iOS 10.3.4 iPhone 5 грозит опасность, а вы и не знали В начале октября Apple неожиданно для всех выпустила iOS 9.3.6 и iOS 10.3.4. В описании обновлений говорилось, что они исправляют ошибку в работе GPS, а потому многие из тех, кто всё ещё пользуется совместимыми моделями iPhone и iPa...

[Перевод] ZIO & Cats Effect: удачный союз Cats Effect стал своего рода «Reactive Streams» для функционального Scala-мира, позволив объединить всю разнообразную экосистему библиотек вместе. Многие отличные библиотеки: http4s, fs2, doobie — реализуются только на базе тайп классов из Cats Effect. А библиотеки типа ZIO...

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

Функция Text Clippings на Mac: 5 полезных примеров по использованию Даже опытные владельцы Mac (что уж говорить о новичках) не всегда знают о существовании мегаудобной мини-функции под названием Text Clippings. Она позволяет одним движением копировать текст и изображения из интернета прямо на рабочий стол. ПО ТЕМЕ: Как пользоваться Режимом ч...

Can I haz? Рассматриваем ФП-паттерн Has Привет, Хабр. Сегодня мы рассмотрим такой ФП-паттерн, как Has-класс. Это довольно любопытная штука по нескольким причинам: во-первых, мы лишний раз убедимся, что паттерны в ФП таки есть. Во-вторых, оказывается, что реализацию этого паттерна можно поручить машине, что вылилос...

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

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

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

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

Добавляем аппаратные кнопки в Marlin. Так как моя предыдущая статья по поводу переделки стандартной функции HAS_KILL (https://3dtoday.ru/blogs/hellraider/hardware-pause-button-in-marlin/) вызвала определенную заинтересованность в плане добавления дополнительных кнопок управления п прошивку Marlin, то я решил нем...

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

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

Доступна для скачивания Windows 10 Build 18362.449 Корпорация Майкрософт выпустила дополнительное накопительное обновление для Windows 10 версии 1903 (обновление за май 2019 г.), чтобы исправить множество досадных проблем. Дополнительный патч поставляется через Центр обновления Windows, а также доступны прямые ссылки для заг...

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

iOS 13.1 добавит в iPhone XR и XS функцию торможения процессора На этой неделе компания Apple выпустила операционную систему iOS 13. Она будет изначально установлена на новых смартфонах iPhone 11, iPhone 11 Pro и iPhone 11 Pro Max, а старые модели смартфонов Apple получат ее как бесплатное обновление. Ожидается, что на следующей не...

Ещё раз об ImmutableList в Java В своей предыдущей статье "Рукоблудие вокруг ImmutableList в Java" я предложил вариант решения поднятой в статье "Неизменяемых коллекций в Java не будет – ни сейчас, ни когда-либо" проблемы отсутствия в Java неизменяемых списков. Решение тогда было проработано только на уров...

После мобильного интернета на iPhone начал «ломаться» Wi-Fi Появились новые данные о проблемах, с которым столкнулись пользователи смартфонов iPhone после установки обновления операционной системы iOS за версией 12.1.2. Теперь сообщается о том, что некоторые владельцы iPhone теперь испытывают проблемы не только с подключени...

Хитрости в Machine Learning — работа с несколькими моделями в Keras Это моя первая статья по теме Машинное обучение. С недавнего времени я профессионально занимаюсь машинным обучением и компьютерным зрением. В этой и будущих статьях я буду делиться наблюдениями и решениями специфических проблем при использовании TensorFlow и Keras. В этой ст...

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

«100 – это корабль»: Чем Toyota Land Cruiser 100 лучше TLC 150, рассказали в сети Автомобилисту, пожелавшему заменить свой TLC 100 на модель поновее, порекомендовали не заниматься ерундой, поскольку о своём выборе он может и пожалеть. Началось всё с того, что владелец Toyota Land Cruiser 100 попросил совета в сообществе «ВКонтакте», посвященном легендарн...

[Из песочницы] Замена Punto Switcher, раскладки Бирмана с помощью скрипта на autohotkey В данной статье я не предлагаю полностью заменить Punto Switcher (Спасибо Сергею Москалёву за данную программу), а только в очень ограниченном функционале. Довольно давно пользуюсь программой Punto Switcher, но не в целях автопереключения, а как переключатель по левому и пра...

В iOS 12.4 появился удобный способ передачи данных со старого iPhone на новый   В iOS 12.4 появилась функция «Быстрое начало» для переноса настроек и данных со старого iPhone на новый. Теперь для этого необязательно использовать iCloud или создавать резервную копию в iTunes. Чтобы использовать новую функцию, оба iPhone должны работать под у...

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

[Из песочницы] Пять проблем в процессах эксплуатации и поддержки Highload ИТ систем Привет, Хабр! Десять лет я поддерживаю Highload ИТ системы. Не буду писать в этой статье о проблемах настройки nginx для работы в режиме 1000+ RPS или другие технические вещи. Поделюсь наблюдениями о проблемах в процессах, которые возникают в поддержке и эксплуатации таких с...

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

[Из песочницы] Основные проблемы разработки современных интерфейсов Привет, Хабр! Представляю вашему вниманию перевод поста Дэна Абрамова «The Elements of UI Engineering» о современных проблемах и задачах, которые должны быть решены в хорошем интерфейсе. Автор разбирает фундаментальные проблемы при разработке интерфейсов, осмысление и решени...

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

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

[Перевод] Чего мне никогда не говорили о CSS Фото Джантин Дурнбос на Unsplash Это ни в коем случае не критика коллег, а всего лишь краткий список важных вещей, которые я самостоятельно узнала о CSS в последнее время. Не секрет, что многие разработчики, похоже, не думают о CSS. Это легко заметить по обсуждениям в инт...

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

Lerdge K и 3d touch автоуровень (от TriangleLab) на Ender 3 или любом другом принтере. Наконец-то выдалась минутка поделится своими 'мучениями'. Статья уже неск. мес. в черновиках.Речь пойдет о популярной нынче плате Лердж К и не менее популярном датчике, клоне bl touch, 3д таче.И не надо тут спорить, зачем и почему. Я так захотел, потому что у меня есть для э...

Microsoft исправляет проблемы с Центром обновления Windows в Windows 10 версии 1903 Microsoft выпускает обновление KB4508433 по крайней мере с тремя важными исправлениями для улучшения работы Центра обновления Windows. Windows 10 KB4508433 должна заменить KB4506933, которая также является обновлением стека обслуживания.Как объясняет Microsoft, KB4508433 улу...

Двойной klipper Доброго времени суток всем! Конечно, речь пойдёт не о гонках, как можно подумать из названия, а всего лишь об использовании klipper на 2-х машинах и одном orange pi pc. А картинка, так, улыбнуться.Хочу сказать отдельное спасибо товарищу unisys за помощь и, конечно, товарищам...

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

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

Как объединить внутреннюю и внешнюю память на Android-смартфоне Одной из главных проблем современных смартфонов остается недостаточное количество памяти (ну и время автономной работы). Многие решают ее покупкой карты microSD, однако для того, чтобы память устройства работала как единый организм, не лишним будет объединить внутренний и в...

Что нового в iOS 13.1 Beta 1 Вчера Apple выпустила неожиданную бета-версию iOS 13.1, которая является беспрецедентной, поскольку компания никогда ранее не выпускала точечного обновления для неизданного обновления программного обеспечения. Видео смотрите сегодня на youtube канале iApplenews. iOS 13.1, од...

[Перевод] Unreal Engine 4 — шейдер горения Это небольшой шейдер, который появился, когда я думал о различных методах применения flowmap. Существуют много эффектов перехода/растворения, но большинство из них выглядит довольно статично, так как они используют статические текстуры. Данный шейдер далек от совершенства, н...

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

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

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

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

Уязвимость библиотеки Windows грозит отказом в обслуживании Эксперт по безопасности компании Google Тэвис Орманди (Tavis Ormandy) опубликовал уязвимость криптографической библиотеки, входящей в ОС Windows 8 и старше. Баг позволяет злоумышленнику вызывать критические ошибки ПО, которые в отдельных случаях устраняются только перезагруз...

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

Численность активных пользователей iPhone достигла рекордного значения В показателях выручки объёмы продаж iPhone в минувшем квартале сократились на 12 %, и компания Apple впервые с 2012 года столкнулась с ситуацией, когда продажи смартфонов принесли ей менее половины совокупной выручки. На квартальной отчётной конференции руководство Apple пре...

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

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

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

Возможные причины отсутствия обновления Windows 10 May 2019 Update В прошлый вторник Microsoft выпустила обновление для Windows 10 May 2019 Update, но это обновление, по-видимому, не отображается на ПК с запущенными несовместимыми службами. Многие пользователи утверждают в Twitter и Reddit, что обновление не отображается в Центре обновления...

Быстрый старт: Go + Apache Kafka + Redis В последнее время я, в силу необходимости, просмотрел все объявления о вакансиях Go-разработчиков, и в половине из них (как минимум) упоминается платформа для обработки потоков сообщений Apache Kafka и NoSQL база данных Redis. Ну и все, конечно, хотят, чтобы кандидат знал Do...

Laravel: разбираем основные понятия. Часть третья: «Заключительная» Считанные дни остаются до старта нового курса от OTUS — «Framework Laravel». В преддверии старта курса делимся заключительной частью авторской публикации о основных понятиях в Laravel. Важно: данная серия публикаций не имеет отношения к образовательной программе курса и явля...

[Перевод] Есть ли в CSS случайные числа? CSS позволяет создавать динамические макеты страниц и интерфейсы веб-проектов. Но CSS — статический язык. После того, как задано некое значение, изменить его нельзя. Идея случайного изменения неких значений здесь не рассматривается. Генерирование случайных чисел — это тер...

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

Windows 10 Build 18305 – Windows Sandbox, Буфер обмена, Фрагмент экрана Перед Новым годом Microsoft выкатила новую сборку 18305 операционной системы Windows 10. Скорее всего, это последняя сборка в этом году, поэтому предлагаю закончить красиво. Точнее, как и всегда. Как ни странно, но изменений масса в последней сборке, и не только в последней....

Обзор процессора AMD Ryzen 5 3600. Потенциальный убийца Core i7? Знаете, что такое хороший сиквел? Это сиквел, который делает всё, что делал предшественник, но развивается в осмысленном направлении, расширяет аудиторию и тематику. И знаете, почему AMD Ryzen 5 3600 - хороший сиквел? В первую очередь потому, что если его предшественник, Ryz...

[Перевод] Кеширование в Laravel: основы плюс tips&tricks Техника кеширования позволяет создавать более масштабируемые приложения, запоминания результаты некоторых запросов в быстрое in-memory хранилище. Однако, некорректно реализованное кеширование может сильно ухудшить впечатление пользователя о вашем приложении. Эта статья содер...

CodeSide. Новая игра для знаменитого соревнования Russian AI Cup Сообщество участников чемпионатов и команда Mail.ru Group в сотрудничестве с Codeforces.com приглашают вас на самую настоящую бойню, от которой вы получите бессонные ночи и мозоли на руках, поскольку будете участвовать в одном из самых живых и интересных чемпионатов по про...

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

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 15. Медленная связь и функция Port Security Перед тем как приступить к уроку, хочу сказать, что на нашем сайте nwking.org вы сможете найти не только информацию по изучению курса CCNA, но и множество других тем, полезных для сетевого специалиста. Мы публикуем там интересные сведения о продукции других производителей и ...

5 крутых сервисов digital-маркетинга, о которых не слышали в России Привет, Хабр! Поделюсь своим опытом работы с сервисами, которыми практически не пользуются в России, но при этом они мега-популярны в Европе и США. Кратко распишу, что это за сервисы и для чего они нужны, их плюсы/минусы на личном опыте, и дам для сравнения аналоги популяр...

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

Что нового в iOS 12.2: поддержка HomeKit TV, переработанный пульт, обновления Safari и многое другое Вчера Apple выпустила первую бета-версию iOS 12.2 для разработчиков, и, хотя она не принесет столько новых изменений, сколько мы могли бы ожидать в обновлении 12.x, есть еще несколько незначительных изменений, о которых следует знать. Ниже мы перечислили все новые функции и ...

Pointer и Value семантика в определении получателя метода Создание новых типов данных — важная часть работы каждого программиста. В большинстве языков определение типа состоит из описания его полей и методов. В Golang помимо этого нужно решить, какую семантику получателя для методов нового типа использовать: значение (value) или ук...

[Перевод] Что есть и чего нет в Go. Часть 1 Всем привет, в преддверии старта нового потока по курсу «Разработчик Golang» хотим поделиться с вами переводом интересной статьи, в первой части которой разбираются элементы, которые есть в Go. Поехали. Go создавался с оглядкой назад, и его базовая комплектация действител...

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

Вышли iOS 13.2.2 с исправлением бага оперативной памяти и macOS 10.15.2 beta 1 iOS 13.2.1 ещё не было, а Apple уже выпускает iOS 13.2.2 Несмотря на то что большая часть багов, обнаруженных в iOS 13.2, была исправлена уже в первой бета-версии iOS 13.3, которая вышла на этой неделе, Apple решила, что ждать её релиза придётся слишком долго. Поэтому в комп...

Лучшие менеджеры паролей для Android Сохранить пароль и не дать к нему доступа злоумышленникам? Проще простого! Менеджеры паролей становятся все более популярными. Возможность хранить все ваши пароли в одном месте очень привлекательна. При этом вам не нужно держать их в голове. Кроме того, использование менедже...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 25. Углубленное изучение IPv6 Сегодня мы продолжим изучение протокола IPv6. Этот урок довольно длительный, поэтому не будем терять время и приступим к изучению 3-х тем: автоконфигурация IPv6, настройка и проблемы IPv6 и основы маршрутизации IPv6. Последнюю тему мы посвятим статической маршрутизации и роу...

Баг в WP Live Chat Support позволяет манипулировать чатами ИБ-исследователи из Alert Logic обнаружили уязвимость в WordPress-плагине WP Live Chat Support. Баг позволяет неавторизованным злоумышленникам получать историю переписки с клиентами и управлять текущими сессиями чатов. Под угрозой оказались более 50 тыс. веб-сайтов, на котор...

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

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

«Секретики» DPAPI. Взгляд на осла В дополнение к нашей прошлой статье про расшифровку DPAPI-блобов расскажем еще о двух случаях, с которыми нам пришлось столкнуться. Речь пойдет о сохраненных паролях в браузерах MS IE11 и Edge. Стратегия остается прежней – будем все расшифровывать в режиме offline. Для это...

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

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

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

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

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

Windows 10 Build 18894 доступна для загрузки Microsoft выпустила новую инсайдерскую сборку Windows 10 Build 18894. Изменения пока лишь касаются небольших правок в системе. К примеру, готовится обновленная версия поиска на основе Windows Search, который позволит искать файлы не только на ПК, но и в OneDrive прямо из стр...

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

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

[Из песочницы] Настройка VSCode для работы с Scala Статья рассчитана на новичков в программировании на Scala, каким я сам и являюсь, и просто на желающих начать писать программный код в VSCode. Так получилось, что единственным гайдом по теме работы со Scalой в Visial Studio Сode оказалось это видео на ютуб-канале DevInside...

Как получать Android-уведомления и отвечать на них на вашем ПК или ноутбуке Сегодня у нас есть масса сервисов и приложений для работы или общения. И было бы удобно держать все уведомления (и отвечать на них) в одном месте. Только вот синхронизация официально не поддерживается ни Microsoft, ни Google. Точнее, так было раньше. Но теперь софтверный ги...

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

Анонс Windows 10 Insider Preview Build 18348 (Fast) Добрый вечер, друзья! В этот пятничный вечер Microsoft решила порадовать участников программы Windows Insider, использующих канал Fast, новой сборкой Windows 10 19H1 под номером 18348. Предлагаем вашему вниманию список изменений, которые принесла с собой эта сборка. Новшест...

Обновление для Windows 10 KB4516067 делает неисправным Internet Explorer в Surface Последнее обновление Windows 10 вызывает ряд проблем у пользователей, и похоже, что Microsoft также поставила ошибочное обновление для старых компьютеров Surface. Обновление Windows KB451606 , поставляемое на такие устройства, как Surface 2 и Surface RT, содержит критическую...

iOS 13 добавляет жесты 3D Touch на все старые устройства Первая бета-версия iOS 13, установить которую было не так уж и просто установить, подтвердила слухи о том, что Apple решила отказаться от использования 3D Touch в пользу Haptic Touch. Однако тестирование обновления на старых устройствах подтвердило еще более радостную новос...

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

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

Можно покупать. Кошмарный период ноутбуков MacBook Pro ушёл в прошлое Специалисты по ремонту на известном тематическом ресурсе iFixit тщательно изучили клавиатуру в 16-дюймовом ноутбуке MacBook Pro, который компания Apple начала продавать на днях.  В iFixit сразу отметили, что затянувшийся «кошмар» с клавиатурами ноутбук...

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

Пользователи массово жалуются на проблемы iOS 13.1.2 iOS 13.1.2 — уже третий апдейт, вышедший после iOS 13, но проблем в нём хоть отбавляй Думаю, немногие могут похвастать тем, что ни разу не столкнулись с какими-либо проблемами после обновления до новых версий iOS. Разного рода недоработки даже стали своего рода фишкой ...

Перый взгляд: новая MIUI 10 на базе Android Q 10 для смартфона Xiaomi Mi 9 Как мы уже писали, компания Xiaomi выпустила первую тестовую версию прошивки MIUI на базе новой операционной системы Android Q 10  для смартфона Xiaomi Mi 9. Теперь ресурс XDA Developers опубликовал первый взгляд на неё с видео и скриншотами.  В первую очеред...

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

Вейвлет-анализ.Часть 3 Введение При проведении CWT анализа средствами библиотеки PyWavelets (бесплатное программное обеспечение с открытым исходным кодом, выпущенное по лицензии MIT) возникают проблемы с визуализацией результата. Предложенная разработчиками тестовая программа по визуализации прив...

Как установить macOS Catalina на неподдерживаемые Mac 3 июня Apple представила новую настольную операционную систему — macOS Catalina. В этом обновлении компания отказалась от тяжкого наследия в виде iTunes, анонсировала кроссплатформенный проект «Project Catalyst», улучшили совместную работу с iPad и Apple Pencil, а так...

MVCC-6. Очистка Мы начали с вопросов, связанных с изоляцией, сделали отступление про организацию данных на низком уровне, затем подробно поговорили о версиях строк и о том, как из версий получаются снимки данных. В прошлый раз мы поговорили о HOT-обновлениях и внутристраничной очистке, а с...

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

[Перевод] 5 продвинутых техник тестирования на Go Всем салют! До старта курса «Разработчик Golang» остается меньше недели и мы продолжаем делиться полезным материалом по теме. Поехали! Go имеет хорошую и надежную встроенную библиотеку для тестирования. Если вы пишите на Go, то вы уже это знаете. В этой статье мы поговори...

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

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

Состоялся релиз Edge Dev Build 78.0.249.1 На этой неделе появилось немало новостей о браузере Microsoft на основе Chromium. Была утечка из стабильного канала, а затем Microsoft объявила, что Edge Beta наконец-то стала доступна. Вы обнаружите, что новая функция «Коллекции» доступна в канале Canary, и теперь вы можете...

LuaVela: реализация Lua 5.1, основанная на LuaJIT 2.0 Некоторое время назад мы анонсировали публичный релиз и открыли под лицензией MIT исходный код LuaVela – реализации Lua 5.1, основанной на LuaJIT 2.0. Мы начали работать над ним в 2015 году, и к началу 2017 года его использовали в более чем 95% проектов компании. Сейчас хоче...

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

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

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

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

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

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

Samsung уже тестирует Android Q на смартфонах Galaxy S10 Как утверждает источник, компания Samsung уже тестирует Android Q на смартфонах линейки Galaxy S10. Учитывая, что до анонса данной версии ОС осталось совсем немного, в этом нет ничего удивительного. Впрочем, стоит отметить, что Samsung именно в этом году активно взялась...

Unity Package Manager Unity — платформа, которая существует довольно давно и постоянно развивается. Однако, работая в ней с несколькими проектами одновременно, все еще можно столкнуться со сложностями в использовании общих исходников (.cs), библиотек (.dll) и остальных ассетов (изображения, звуки...

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

Доступна для загрузки Windows 10 Build 19008 Состоялся релиз Windows 10 Build 19008. Данная сборка может лишь похвастаться исправлением багов, а именно:• было исправлено зависание системы при перезагрузке и завершении работы;• исправлено уведомление Windows Update;• исправлена сворачиваемость приложения «Параметры»;• С...

Доступна для загрузки Windows 10 Buiild 19008 Состоялся релиз Windows 10 Build 19008. Данная сборка может лишь похвастаться исправлением багов, а именно:• было исправлено зависание системы при перезагрузке и завершении работы;• исправлено уведомление Windows Update;• исправлена сворачиваемость приложения «Параметры»;• С...

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

Анонс Windows 10 Insider Preview Build 19018 (Ранний доступ) Доброй ночи, друзья! Компания Microsoft выпустила новую предварительную сборку Windows 10 20H1 под номером 19018 для участников программы Windows Insider, использующих каналы Fast и Skip Ahead. Полный номер сборки: 19018.1.vb_release.191101-1402. Как можно заметить, сборка ...

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

Лабораторная работа: настраиваем lvm, raid на linux Небольшое отступление: данная л\р является синтетической. Некоторые задания которые здесь описаны можно сделать гораздо проще, но поскольку задача л/р — познакомиться с функционалом raid, lvm то некоторые операции искусственно усложнены. Требования к инструментам для выполне...

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

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

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

Как мы делали облачный FaaS внутри Kubernetes и побеждали в Тинькофф-хакатоне Начиная с прошлого года у нас в компании начали организовывать хакатоны. Первое такое состязание прошло весьма успешно, о нем мы писали в статье. Второй хакатон прошел в феврале 2019 и был не менее успешным. О целях проведения последнего не так давно писал организатор. Уч...

Почему iPhone не может передать файлы через AirDrop Новый iPhone 11 отлично принимает файлы по AirDrop, но не может передавать их на те же устройства, с которых принимает. Как это исправить? Если смартфон принимает файлы, но не видит устройство при попытке передать, скорее всего, проблема именно во втором iPhone. Вот, ч...

Запускаем php скриптики через php-fpm без web сервера. Или свой FastCgi клиент (под капотом) Приветствую всех читателей "Хабра". Дисклеймер Статья получилась довольно длинная и тем кто не хочет читать предысторию, а хочет перейти сразу к сути прошу прямиком к главе "Решение" Вступление В данной статье хотелось бы рассказать о решении довольно нестандартной задачи, с...

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

Android 10 (Go Edition) поставляется с новыми функциями и новым шифрованием В 2017 году Google анонсировала Android Go — облегченную версию ОС Android для устройств с небольшим объемом оперативной памяти (1 ГБ и менее). Хотя Android Go по-прежнему является облегченной версией Android, в настоящее время уже существует устройство Android Go и с 2 ГБ о...

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

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

Взломщики эксплуатируют уязвимости в WordPress-плагине Злоумышленники используют бреши в плагине YellowPencil, установленном на более чем 30 тыс. сайтов на базе WordPress. Создатель расширения просит владельцев веб-ресурсов срочно установить обновление. По словам исследователей, за атаками стоят те же преступники, которые в тече...

[Из песочницы] Generic Recycler View или как не писать шаблонный код Все мы пишем приложения и у всех нас есть списки. И самое очевидное решение это RecyclerView. Сама по себе реализация не сложна и писать гайд по RecyclerView уже не актуально. Но есть одно но. Каждый раз когда нам нужен список мы создаем класс, в нем прописываем шаблонный ме...

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

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

Устойчивость обучения GAN (Копаем глубже) В предыдущей статье на примере игрушечных моделей я попытался проанализировать почему же, собственно, у нас получается достаточно эффективно обучать GAN’ы. Сейчас же мы попробуем обобщить некоторые результаты и, самое главное, попробуем проанализировать как влияет архитект...

Пользователи OnePlus 5 и OnePlus 5T получили новую прошивку Oxygen OS 9.0.1 Неделю назад компания OnePlus начала распространять финальную стабильную версию новой прошивки OxygenOS на базе Android 9.0 Pie среди пользователей смартфонов OnePlus 5 и OnePlus 5T. Теперь же на смену OxygenOS 9.0.0 уже пришла стабильная версия Oxygen OS 9.0.1, о чем с...

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

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

[Перевод] Полезные инструменты Python Друзья, добрый вечер! У нас отличные новости, открыт набор в новую группу по курсу «Разработчик Python». Группа стартует уже в начале июля, а прямо сейчас, по устоявшейся традиции, мы делимся полезным переводом подготовленным для студентов данного курса. Когда вы только н...

Архитектура нейронной сети для реализации алгоритма RL с возможностью задания одновременно выполняющихся действий Одна из классических схем нейронной сети для реализации алгоритма RL выглядит следующим образом: Где: inputs – входы в нейронную сеть; FC – (fully connected) архитектура скрытых слоев или CNN — FC – архитектура архитектура скрытых слоев (в зависимости о того, что подается ...

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

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

macOS Catalina выводит старые Mac из строя. Будьте осторожны macOS Catalina может сломать ваш Mac, если он старый В этом году у Apple как-то не заладилось с обновлениями. Сначала выяснилось, что в Купертино не могут сразу обновить до watchOS 6 все Apple Watch, а потому отложили релиз обновления для некоторых моделей на позднюю осень. ...

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

[Перевод] Почему вам следует использовать pathlib От переводчика: Привет, хабр! Представляю вашему вниманию перевод статьи Why you should be using pathlib и её продолжения, No really, pathlib is great. Много внимания нынче уделяется таким новым возможностям Python, как asyncio, оператору :=, и опциональной типизации. При э...

R пакет tidyr и его новые функции pivot_long и pivot_wide Пакет tidyr входит в ядро одной из наиболее популярных библиотек на языке R — tidyverse. Основное назначение пакета — приведение данных к аккуратному виду. На Хабре уже есть публикация посвящённая данному пакету, но датируюется она 2015 годом. А я хочу рассказать, о наиболее...

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

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

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

Wi-Fi 6 поколения уже здесь. Чем он так хорош? С постоянно растущим объемом информации возрастает и нужда в увеличении пропускной способности. Еще несколько лет назад передача потокового видео в разрешении 4К казалась очень сложной, да и подходящие для его воспроизведения телевизоры (не то что смартфоны) можно было по п...

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

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

Восхождение на Эльбрус — Разведка боем. Техническая Часть 1. Регистры, стеки и другие технические детали Как и обещали, продолжаем рассказывать про освоение процессоров Эльбрус. Данная статья является технической. Информация, приведенная в статье, не является официальной документацией, ведь получена она при исследовании Эльбруса во многом как черного ящика. Но будет безусловно ...

Пользователи Lenovo Z5s смогут копировать данные из аккаунтов iCloud и Xiaomi Смартфон Lenovo Z5s был представлен в декабре прошлого года, базовая версия предлагается по цене около 200 долларов, в связи с чем он стал довольно популярным, а вся стартовая партия была распродана за 60 секунд. Вице-президент Lenovo Group Чанг Ченг (Chang Cheng) офици...

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 22. Третья версия CCNA: продолжаем изучение RIP Я уже говорил, что буду обновлять свои видеоуроки до CCNA v3. Все, что вы выучили на предыдущих уроках, полностью соответствует новому курсу. Если возникнет необходимость, я буду включать дополнительные темы в новые уроки, так что можете не беспокоиться по поводу соответстви...

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

Знакомство с Neural ODE Neural Ordinary Differential Equations Значительная доля процессов описывается дифференциальными уравнениями, это могут быть эволюция физической системы во времени, медицинское состояние пациента, фундаментальные характеристики фондового рынка и т.д. Данные о таких процессах...

Новейшая платформа Qualcomm Snapdragon 215 производится по техпроцессу 2012 года Сегодня мы уже писали об однокристальной системе Snapdragon 215, предназначенной для очень дешёвых смартфонов. И вот теперь Qualcomm представила данное решение. Никакого пресс-релиза нет, просто новинка появилась в списке линейки Snapdragon 200. Итак, новая однокристаль...

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

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

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

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

Желание выжить может развить интеллект искусственного разума Может ли мыслить существо, созданное человеком? Что отличает человека от робота? Конечно же, помимо отличной от механической внутренней начинки, у человека имеется уникальная способность — он умеет чувствовать. Опираясь на подобное различие между живым и мертвым, миров...

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

Как распилить монолит на сервисы и сохранить производительность In-memory кэшей без потери консистентности Всем привет. Меня зовут Александр, я Java-разработчик в группе компаний Tinkoff. В данной статье хочу поделиться опытом решения проблем, связанных с синхронизацией состояния кэшей в распределенных системах. Мы столкнулись с ними, разбивая наше монолитное приложение на микр...

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