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

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

[Перевод] Учебный курс по React, часть 24: второе занятие по работе с формами Сегодня мы продолжим разговор об использовании форм в React. В прошлый раз мы рассматривали особенности взаимодействия компонентов и текстовых полей. Здесь же мы обсудим работу с другими элементами форм. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX →...

Разновидности координат используемые в GUI Unity3d Почему разновидности и сколько их? Часто сталкиваюсь с тем, что люди просто не понимают как подвинуть объект в UI на какое то значение, и удивляются что результат зачастую непредсказуем. Или допустим как получить правильные координаты объекта в UI. Если мы через дебагер выве...

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

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

DeepPavlov для разработчиков: #1 инструменты NLP и создания чат-ботов Всем привет! Мы открываем цикл статей, посвященных решению практических задач, связанных с обработкой естественного языка (Natural Language Processing или просто NLP) и созданием диалоговых агентов (чат-ботов) с помощью open-source библиотеки DeepPavlov, которую разрабатывае...

[Перевод] Не в момент выполнения, а в момент проектирования Давным-давно мудрый старый разработчик дал мне совет, который до недавнего времени я не очень ценил. Во время код ревью мы рассматривали некоторую функцию, которая требовала, чтобы программа выводила список букв A-Z (например, список контактов с набором кнопок, которые по...

Как взять сетевую инфраструктуру под свой контроль. Глава четвертая. Автоматизация. Темплейты Эта статья является шестой в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь. Оставив несколько тем позади, я решил все же начать новую главу. К безопасности вернусь чуть позже. Здесь я хочу обсудит...

PVS-Studio идёт в облака: CircleCI Мы продолжаем цикл статей по использованию статического анализатора PVS-Studio в облачных CI-системах. Сегодня рассматриваем очередной сервис — CircleCI. В качестве проекта для анализа в этот раз выступит медиаплеер Kodi, в исходном коде которого постараемся найти интересны...

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

Резервное копирование, часть 3: Обзор и тестирование duplicity, duplicaty, deja dup В данной заметке рассмотрены средства резервного копирования, которые выполняют резервное копирование путем создания архивов на резервном сервере. Из тех, которые удовлетворяют требованиям — duplicity (к которому есть приятный интерфейс в виде deja dup) и duplicati. Еще одн...

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

[Перевод] Подготовка к Spring Professional Certification. Часть 1: «Контейнер, IoC, бины» Доброго времени суток, Хабр. Сегодня я решил представить вам перевод цикла статей для подготовки к Spring Professional Certification. Это перевод только первой статьи, если он зайдет аудитории, я продолжу выпуск переводов.   Зачем я это делаю, ведь уже есть куча профильных...

[Из песочницы] UICollectionView всему голова: Изменение представления на лету Привет, Хабр! Представляю вашему вниманию перевод статьи "UICollectionView Tutorial: Changing presentation on the fly". В данной статье мы рассмотрим использование различный способов отображение элементов, а также их переиспользование и динамическое изменение. Зде...

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

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


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

[Перевод] Использование Fastify и Preact для быстрого прототипирования веб-приложений Автор материала, перевод которого мы сегодня публикуем, хочет поделиться рассказом о том, какими технологиями он пользуется для быстрой разработки прототипов веб-приложений. В число этих технологий входят библиотеки Fastify и Preact. Он, кроме того, пользуется библиотекой ht...

[Перевод] Функциональный JavaScript: пять способов нахождения среднего арифметического элементов массива и метод .reduce() Методы итерирования массивов похожи на «стартовые наркотики» (это, конечно, не наркотики; и я не говорю, что наркотики — это хорошо; это — просто фигура речи). Из-за них многие «подсаживаются» на функциональное программирование. Всё дело в том, что они невероятно удобны. Кро...

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

Безопасность IoT. Выпуск 1. Умные часы, фитнес-трекеры и весы В своей прошлой статье я рассказывал, как съездил на DefCamp. Сегодняшняя статья — первая часть публикации о моих исследованиях в области безопасности интернета вещей, которые легли в основу выступления на конференции. IoT быстро развивается: сейчас насчитывается более 260...

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

[Из песочницы] Размеры Java-объектов разного типа Введение Содержит ли Java-объект: поля, объявленные в суперклассе? private поля, объявленные в суперклассе? методы? элементы массива? длину массива? другой объект (в себе)? hash-код? тип (свой)? имя (своё)? Ответы на эти (и другие) вопросы можно получить с помощью библиот...

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

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

Сеть компании и MitM. Часть 2 Перехватить конфиденциальную информацию? Получить несанкционированный доступ к различным приложениям и системам? Нарушить нормальный режим работы? Все это и многое другое выполняют атаки типа Man in the Middle. Сегодня мы продолжаем цикл статей, посвященный атакам «челове...

MVCC-1. Изоляция Привет, Хабр! Этой статьей я начинаю серию циклов (или цикл серий? в общем, задумка грандиозная) о внутреннем устройстве PostgreSQL. Материал будет основан на учебных курсах по администрированию, которые делаем мы с Павлом pluzanov. Смотреть видео не все любят (я точно не л...

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 1 Это цикл переводных заметок автора Priti Desai. Поскольку сами заметки довольно короткие, то в одной публикации будет собрано сразу несколько. Будут рассмотрены детали развертывания приложений для OpenWhisk с примерами, а в конце цикла — приведена архитектура и код приложен...

PVS-Studio идёт в облака: GitLab CI/CD Эта статья является продолжением цикла публикаций об использовании PVS-Studio в облачных системах. На этот раз мы рассмотрим работу анализатора совместно с GitLab CI — продуктом от GitLab Inc. Интеграция статического анализатора в CI систему позволяет выявить баги сразу пос...

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

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

[recovery mode] «Быть Insight-Driven»: продвинутая аналитика и управление жизненным циклом моделей машинного обучения Сегодня мы хотим поговорить о концепции Insight-Driven и о том, как ее реализовать на практике c помощью DataOps и ModelOps. Insight-Driven подход — это комплексная тема, про которую мы подробно рассказываем в нашей недавно созданной библиотеке полезных материалов про управл...

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

[Из песочницы] Когда стоит сохранять длину массива в локальную переменную в C# Читая Хабр, я наткнулся на статью "Стоит ли сохранять длину массива в локальную переменную в C#?" (которая была в разделе «лучшее»). Мне кажется глупый вопрос, не совсем корректные измерения (почему нет измерений для вложенных циклов?) и странный вывод. Длину масс...

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

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

Собирать Docker-образы в werf теперь можно и по обычному Dockerfile Лучше поздно, чем никогда. Или как мы чуть не допустили серьёзную ошибку, не имея поддержки обычных Dockerfiles для сборки образов приложения. Речь пойдёт про werf — GitOps-утилиту, которая интегрируется с любой CI/CD-системой и обеспечивает управление всем жизненным цикл...

Сеть компании и MitM. Часть 1 Перехватить конфиденциальную информацию? Получить несанкционированный доступ к различным приложениям и системам? Нарушить нормальный режим работы? Все это и многое другое выполняют атаки типа Man in the Middle. Сегодня мы начинаем цикл статей, посвященный атакам «человек п...

[Перевод] Senior Engineer в поисках работы. О задачах на технических собеседованиях и теоретических вопросах Продолжаем говорить о технических собеседованиях (если вы не читали — просмотрите предыдущие статьи из цикла — о собеседованиях с HR и технических). В этот раз будет больше субъективного опыта, минимум советов, а также немножко про тестовые задания и теоретические вопросы. П...

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

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

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

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

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

[Из песочницы] Инстансы по информационной безопасности на платформе attackdefense.com … Мы живем в эпоху больших событий и маленьких людей … Уинстон Черчилль Сегодня вашему вниманию представляем первую статью из цикла о разборе и прохождении лабораторных работ с ресурса attackdefense.com с поддержкой известного организатор конференций (Black Hat и Pentes...

Книга «Vue.js в действии» Привет, Хаброжители! Цель этой книги — дать вам знания, с помощью которых вы без колебаний присоединитесь к любому проекту, использующему эту библиотеку. Книга предназначена для всех, кто заинтересован в изучении Vue.js и имеет опыт работы с JavaScript, HTML и CSS. От вас не...

Выбор стратегии жизненного цикла программного обеспечения при наличии нескольких зависимых фронтэндов Жизненный цикл программного обеспечения известен большинству современных программистов. Даже школьник, написав свою первую программу <?php echo "Hello, Хабр! На пхп" ?> или fprintf( 'Привет Хабр на Матлабе!\n'); понимает технологический процесс. Думает над зада...

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

Блокировки в PostgreSQL: 1. Блокировки отношений Два предыдущих цикла статей были посвящены изоляции и многоверсионности и журналированию. В этом цикле мы поговорим о блокировках (locks). Я буду придерживаться этого термина, но в литературе может встретиться и другой: замóк. Цикл будет состоять из четырех частей: Блоки...

Введение в ECMAScript 2017 (ES8) Оглавление Предисловие Краткий обзор ES7 1. Object.entries 2. Object.values 3. String.prototype.padEnd 4. String.prototype.padStart 5. Object.getOwnPropertyDescriptor 6. Trailing commas 7. SharedArrayBuffer 8. Atomics 9. Async functions Предисловие Здравствуйте, в прошлом я...

Наглядное пособие по разработке продуктов: дизайн Это вторая часть из цикла четырех статей о разработке физических продуктов. Если вы пропустили Часть 1: Формирование идеи, обязательно её прочтите. Вскоре вы сможете перейти к Части 3: Конструирование и Части 4: Валидация. Автор: Ben Einstein. Оригинал Перевод выполнен коман...

Резервное копирование, часть 2: Обзор и тестирование rsync-based средств резервного копирования Данной заметкой продолжается цикл о резервном копировании Резервное копирование, часть 1: Зачем нужно резервное копирование, обзор методов, технологий Резервное копирование, часть 2: Обзор и тестирование rsync-based средст резервного копирования Резервное копирование, ча...

Tic Tac Toe, часть 7: pytest и Travis CI Tic Tac Toe: содержание цикла статейВ этой статье рассмотрим Непрерывную Интеграцию/Сontinuous Integration на примере использования Travis CI. Читать дальше →

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

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

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

[Перевод] Цикл уроков по SDL 2.0: урок 4 — Обработка событий От переводчика: Это продолжение серии переводов туториалов от Twinklebear, в оригинале доступных тут. Перевод отчасти вольный и может содержать незначительные поправки или дополнения от переводчика. Перевод первых двух уроков — за авторством InvalidPointer. Читать дальше ...

[Перевод] Заложники COBOL и математика. Часть 1 Посмотрим правде в глаза: никто не любит дробные числа — даже компьютеры. Когда речь заходит о языке программирования COBOL — первый вопрос, который всплывает у всех в голове, всегда выглядит так: «Почему человечество всё ещё использует этот язык во множестве жизненно важны...

2. Типовые сценарии использования Check Point Maestro Совсем недавно компания Check Point презентовала новую масштабируемую платформу Maestro. Мы уже публиковали целую статью о том, что это такое и как оно работает. Если коротко — позволяет почти линейно увеличивать производительность шлюза безопасности путем объединения неск...

Предсказания от математиков. Разбираем основные методы обнаружения аномалий За рубежом все большую популярность набирает использование искусственного интеллекта в промышленности для предиктивного обслуживания (predictive maintenance) различных систем. Цель этой методики — определение неполадок в работе системы на этапе эксплуатации до выхода её из с...

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

[Перевод] Учебный курс по React, часть 28: современные возможности React, идеи проектов, заключение Сегодня, в заключительной части перевода курса по React, мы поговорим о современных возможностях React и обсудим идеи React-приложений, создавая которые, вы можете повторить то, чему научились, проходя этот курс, и узнать много нового. → Часть 1: обзор курса, причины попу...

[Перевод] Agile Lite: специально против выгорания Гибкая методологи разработки — отличная идея, которую слишком усложнили. Agile Lite — попытка упростить ситуацию. Вам не нужны книги или семинары, чтобы объяснить Agile Lite. Нужен только небольшой текст с несколькими пунктами. Вот этот текст. Agile Lite довольно прост. Его...

N+7 полезных книг Привет! Это очередной традиционый список книг, оказавшихся полезными за год. Сугубо субъективный, конечно. Но я серьёзно рассчитываю, что вы подскажете ещё классных штук почитать. Думай медленно, решай быстро — Даниэль Канеман Это самое волшебное, что случалось за послед...

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

Тайна прошивок Авторы: к.ф.-м.н. Чернов А.В. (monsieur_cher) и к.ф.-м.н. Трошина К.Н. Как с помощью самых общих предположений, основанных на знании современных процессорных архитектур, можно восстановить структуру программы из бинарного образа неизвестной архитектуры, и дальше восстановит...

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

Как взять сетевую инфраструктуру под свой контроль. Глава третья. Сетевая безопасность. Часть третья Эта статья является пятой в цикле статей «Как взять сетевую инфраструктуру под свой контроль». Содержание всех статей цикла и ссылки можно найти здесь. Эта часть будет посвящена Campus (Office) & Remote access VPN сегментам. Может показаться, что дизайн офисной сети...

[Перевод] API IntersectionObserver и ленивая загрузка изображений Использование ленивой загрузки изображений для улучшения производительности веб-проектов — востребованная техника оптимизации. Всё дело в том, что изображения — это «тяжёлые» ресурсы, которыми переполнены современные веб-сайты. Мы уже кое-что об этом публиковали. Здесь можно...

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

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

[Перевод] Есть ли что-то общее у разных песен-хитов? Если выполнить вход на Spotify.me, то можно получить персонализированную сводку того, как Spotify понимает вас через музыку, которую вы слушаете на этом сайте Spotify. Это круто! Я слушаю много музыки и люблю работать с данными, поэтому это вдохновило меня на попытку анали...

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

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

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

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

[Перевод] Бессерверные вычисления на основе OpenWhisk, часть 2 Эта статья продолжает цикл переводных заметок об OpenWhisk от автора Priti Desai. Сегодня будут рассмотрены примеры развертывания GitHub webhook, периодических сигналов, а также приведено простейшее приложение для отправки сообщений в Slack. Читать дальше →

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

[Перевод] Ленивая загрузка изображений средствами браузера Автор материала, перевод которого мы сегодня публикуем, Эдди Османи из Google, говорит, что уже в Chrome 75 вполне может появиться поддержка нового атрибута элементов <img> и <iframe> loading. Это означает, что данные элементы будут поддерживать стандартные возмо...

А цикл где? Многие из тех, кто знаком с ITIL® v3, воспаряя/погружаясь в дивный новый мир ITIL 4, почти сразу задают вопрос: «А где же здесь жизненный цикл услуги?» И, действительно, где? Куда дели? Коротко напомню, жизненный цикл [ЖЦ] услуги – модель, которая описывает весь путь услуги ...

Безопасность IoT. Выпуск 2. Умный дом Умный дом представлен широком набором устройством. Во второй части цикла публикаций о безопасности IoT будут рассмотрены умные ТВ приставки, умная кухня, голосовые помощники и освещение. Ссылка на 1 часть. Читать дальше →

2019 Samsung Flip: интерактивная доска для бизнеса Официально представлена интерактивная панель 2019 Samsung Flip — специальный дисплей для коллективной работы, позволяющий проводить совещания, встречи, презентации и пр. Взаимодействовать с 65-дюймовым экраном можно при помощи самых разных инструментов. Это может быть входящ...

Пиксельные отступы в текстурной развертке Представляем четвертую статью нашего цикла о работе с 3D-моделями в Unity. Предшествующие статьи: «Особенности работы с Mesh в Unity», «Unity: процедурное редактирование Mesh», «Импорт 3D-моделей в Unity и подводные камни». В предыдущей статье мы упомянули о проверке тексту...

[Перевод] Ускоряем JavaScript-код с использованием типа данных Set Автор материала, перевод которого мы сегодня публикуем, говорит, что уверен в том, что многие JavaScript-разработчики пользуются, в основном, такими типами данных, как Number, String, Object, Array и Boolean. В большинстве случаев этого вполне достаточно. Но если нужно сдела...

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

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

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

[Из песочницы] Цикл уроков по SDL 2.0: урок 3 — Библиотеки-расширения SDL От переводчика: Я продолжаю заброшенную серию переводов туториалов от Twinklebear, в оригинале доступных тут, с разрешения переводчика предыдущих уроков серии InvalidPointer. Первые два урока серии переводов в списке — за его авторством. Перевод отчасти вольный и может со...

[Перевод] Учебный курс по React, часть 12: практикум, третий этап работы над TODO-приложением В сегодняшней части перевода курса по React мы предлагаем вам выполнить практическое задание по формированию наборов компонентов средствами JavaScript и продолжить работу над TODO-приложением. → Часть 1: обзор курса, причины популярности React, ReactDOM и JSX → Часть 2: ф...

Денис Тихонов рассказал о важности экспертизы начальных цен в системе московских госзакупок В рамках своего участия в работе XV Всероссийского форума-выставки «ГОСЗАКАЗ», глава столичного ДЭПиР Денис Тихонов объяснил, почему стандартизация и экспертиза начальных цен контрактов играют важную роль в закупочном цикле мегаполиса. Это мероприятия третьего числа текущег...

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

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

[Из песочницы] Структуры данных в Java. Полезные методы вспомогательных классов Привет, habr! Я Software Engineer в EPAM. Более 8 лет я работаю с legacy-кодом, написанном на языке Java (предвосхищая комментарии, отмечу, что понимание и терпимость к legacy началась задолго до EPAM, в заключении вы найдёте ответ, почему). Часто в работе я сталкивался с ...

1. Анализ зловредов с помощью форензики Check Point. SandBlast Network Добро пожаловать на новый цикл статей, на этот раз по теме расследования инцидентов, а именно — анализу зловредов с помощью форензики Check Point. Ранее мы публиковали несколько видео уроков по работе в Smart Event, но на этот раз мы рассмотрим отчеты форензики по конкретн...

Систематический подход к ASO c CRO-циклом ASO-специалисты из Phiture предлагают свой подход к оптимизации страниц в магазинах приложений – Цикл Оптимизации Конверсии (Сonversion Rate Optimization, CRO).

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

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

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

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

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

Как искать в интернете по картинке при помощи iPhone или iPad Отличная все-таки штука этот интернет. В нем можно найти что угодно — от чит-кодов для любимой игры до товара любой степени редкости, который просто так не купить в супермаркете за углом. Но как найти то, чье название вы в сущности не знаете? К примеру, можно выстроит...

[Перевод] Бесстрашная защита. Безопасность потоков в Rust Это вторая часть цикла статей «Бесстрашная защита». В первой мы рассказывали про безопасность памяти Современные приложения многопоточны: вместо последовательного выполнения задач программа использует потоки для одновременного выполнения нескольких задач. Все мы ежедневно ...

Проверка rdesktop и xrdp с помощью анализатора PVS-Studio Это второй обзор из цикла статей о проверке открытых программ для работы с протоколом RDP. В ней мы рассмотрим клиент rdesktop и сервер xrdp. Читать дальше →

Лаборатория хакера: Ч1. LibSSH auth bypass Я начинаю цикл статей, посвященных разбору задач сервиса pentesterlab. К сожалению, у меня нет Про-версии курса, поэтому я ограничен только списком свободных задач. Каждый кейс — система, содержащая уязвимость, которой необходимо воспользоваться для достижения определенной ц...

[Из песочницы] Вещи, которых я не знаю в 2018 Привет, Хабр! Представляю вашему вниманию перевод статьи "Things I Don’t Know as of 2018" автора Дэна Абрамова. Люди обычно думают, что я знаю многое, но это не так на самом деле. Это не так плохо и я совсем не жалуюсь. (Некоторая малая часть людей часто страдает от предвзят...

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

[Перевод] Надёжность Flash–памяти: ожидаемое и неожиданное. Часть 2. XIV конференция ассоциации USENIX. Технологии хранения файлов Надёжность Flash–памяти: ожидаемое и неожиданное. Часть 1. XIV конференция ассоциации USENIX. Технологии хранения файлов 4.2.2. RBER и возраст дисков (без учета циклов PE). На Рисунке 1 показана значительная корреляция между RBER и возрастом, который равен количеству месяце...

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

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

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

Складывается и раскладывается. Samsung показала процесс тестирования сгибаемого дисплея смартфона Galaxy Fold Примерно через месяц начнутся продажи складного смартфона Galaxy Fold. Чтобы убедить потенциальных покупателей в надёжности и долговечности сгибаемого дисплея, компания Samsung показала процесс тестирования аппаратов на специальном оборудовании. На таком стенде происходит мн...

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

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

[Перевод] Назад к микросервисам вместе с Istio. Часть 1 Прим. перев.: Service mesh'и определённо стали актуальным решением в современной инфраструктуре для приложений, следующих микросервисной архитектуре. Хотя Istio может быть на слуху у многих DevOps-инженеров, это довольно новый продукт, который, будучи комплексным в смысле ...

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

[recovery mode] Опыт разработки и внедрения систем объектовой видеоаналитики на СХД СХД – это системы хранения данных, сервера или иные устройства с большим количеством установленных дисков и системами быстрого доступа к ним с гарантией сохранности информации (например, аппаратные или программные RAID-контроллеры). Если речь идёт про хранение видео с нескол...

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

Зачем писать свой React Data Grid в 2019 Привет, Хабр! Я участвую в разработке ECM системы. И в небольшом цикле статей хочу поделится нашим опытом и историей разработки своего React Data Grid (далее просто грид), а именно: почему мы отказались от готовых компонент с какими проблемами и задачами мы столкнули при ра...

RBKmoney Payments под капотом — логика работы платежной платформы Привет, Хабр! Продолжаю публикацию цикла про внутренности платежной платформы RBK.money, начатую в этом посте. Сегодня речь пойдет про логическую схему процессинга, конкретные микросервисы и их взаимосвязь друг с другом, как логически разделены сервисы, обрабатывающие кажды...

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

Список полезных книг по анализу данных, математике, data science и machine learning Хабр, привет! Написал пост, который идет строго в закладки, он со списком полезнейших книг по анализу данных, математике, data science и machine learning. Они будут полезны как новичкам, так и профессионалам. Для удобства можете читать здесь или использовать удобный google ...

Дебют новых наушников Apple AirPods: улучшенная автономность и дополнительные функции Компания Apple сегодня представила полностью беспроводные наушники AirPods нового поколения: изделие уже доступно для предварительного заказа в России. В наушниках применён чип H1, созданный Apple. Это решение, как утверждается, обеспечивает более стабильное беспроводное сое...

Полезные товары для ПК и другой электроники с AliExpress, которые Вам пригодятся Всем привет! Ну где еще искать крутые аксессуары для любимого ПК и смартфона как не на AliExpress? Здесь можно найти не только дешёвые подделки, но и реально стоящие товары высокого качества, которые очень трудно найти в обычном магазине. Сегодня мы рассмотрим несколько из н...

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

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

1. Обзор коммутаторов Extreme Enterprise-уровня Введение Добрый день, друзья! С удивлением заметил, что на Хабре не очень много статей посвящено продуктам такого вендора как [Extreme Networks](https://tssolution.ru/katalog/extreme). Чтобы это исправить и познакомить вас ближе с продуктовой линейкой Extreme, я планирую н...

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

Блог RUVDS на Хабре: год за три С самого начала года у нас была какая-то тактика и мы её придерживались. Как результат — прямо сейчас мы на первом месте в рейтинге компаний, а из не менее приятного — ТМ вручили нам награду за второе место в номинации «Лучший корпоративный блог на Хабре». Под катом расскаже...

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

Строительство отстает в области цифровизации во всем мире Одновременно, это вторая отрасль по объему генерируемых данных, и один из худших секторов по умению извлекать выгоду из этих массивов информации (95% проектных данных либо не сохраняются, либо не собираются вообще).Поэтому естественное стремление оцифровать максимальное коли...

Что такое логическое программирование и зачем оно нам нужно У того, кто в детстве не писал на Прологе — нет сердца, а у того, кто пишет на нём сегодня — нет мозгов. (оригинал) Если вас всегда терзали мучительные сомнения — что за фигня это Логическое Программирование (ЛП) и вообще зачем оно нужно? То это статья для вас. Можно по-раз...

Российские вертолёты получат созданные методом 3D-печати детали Холдинг «Вертолёты России», входящий в состав государственной корпорации «Ростех», намерен внедрить аддитивные технологии при изготовлении деталей винтокрылых машин. Фотографии холдинга «Вертолёты России» Речь идёт об использовании метода 3D-печати. Это позволит значительно ...

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

[Перевод] Картриджи консолей как модемы Многие современные игроки в видеоигры воспринимают онлайн-соединения как нечто само собой разумеющееся — и правда, онлайн-сервисы являются стандартной функцией консолей уже почти пятнадцать лет1. Однако ещё до того, когда проникновение Интернета стало повсеместным, существо...

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

Жизненный цикл статьи на Хабре: пишем хабрапарсер. Часть вторая Привет Хабр! В первой части пятничного анализа была рассмотрена методика сбора некоторой статистики этого замечательного сайта. Изначально не было плана делать продолжение, но в комментариях возникли интересные мысли, которые захотелось проверить. Например, какие статьи име...

[Перевод] KlusterKit KlusterKit: набор инструментов с открытым исходным кодом для упрощения деплоев Kubernetes и работы в физически изолированных локальных средах Сегодня мы с радостью объявляем, что Platform9 открывает исходные коды Klusterkit, набора из трех инструментов, по лицензии Apache v...

Пишем Reverse socks5 proxy на powershell.Часть 3 История об исследовании и разработке в 3-х частях. Часть 3 — практическая. Буков много — пользы еще больше Предыдущие статьи из цикла можно найти тут и здесь =) Проверка боем Давайте теперь проверим работу нашего скрипта на практике. Для этого попробуем выбросить обратный ...

Дополнительные программные средства безопасности для NAS Цикл статей назван "Построение защищённого NAS". Поэтому в данной статье будет рассматриваться повышение уровня защищённости. Также, будут описаны и те инструменты, которые я не использовал, но возможно применить. Читать дальше →

Security Week 38: слежка за мобильными устройствами через SIM-карту Когда мы говорим об уязвимостях в мобильных устройствах, речь идет обычно о проблемах в Android или iOS. Но не стоит забывать о радиомодуле и SIM-карте, которые являются по сути отдельными вычислительными устройствами со своим софтом и большими привилегиями. Последние пять л...

[Перевод] Swift: ARC и управление памятью Будучи современным языком высокого уровня, Swift в основном берёт на себя управление памятью в ваших приложениях, занимаясь выделением и освобождением памяти. Это происходит благодаря механизму, который называется Automatic Reference Counting, или сокращенно ARC. В этом руко...

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

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

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

Работа не волк, часть 1. Поиск работы: 9 кругов HR-a Поиск работы вызывает неприятные тревожно-азартные ощущения и у вчерашнего студента, и у профессионала с годами опыта за плечами. Это не признак неуверенности в себе, это проблема всей отрасли поиска персонала: мы идём на собеседование и понимаем, что не всё может зависеть о...

Робот-тележка на ROS. Часть 4. Создаем симуляцию робота в rviz и gazebo Продолжение цикла статей о создании небольшого робота. В этот раз речь пойдет о создании копии робота в симуляции, которую предлагают визуальные ROS-среды rviz и gazebo (далее «редакторы»). Работа в редакторах будет вестись на виртуальной машине, образ которой был ранее пред...

Разработка простейшей «прошивки» для ПЛИС, установленной в Redd, и отладка на примере теста памяти Как-то у меня не получается выражать свою мысль коротко. Прошлой осенью возникло желание рассказать поподробнее про освоенную мною архитектуру PSoC, что вылилось в цикл статей про неё. Сейчас я участвую в подготовке аппаратной части для нашего комплекса удалённой отладки Red...

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

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

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

[Перевод] Как Java 8 поддерживается в Android Привет, Хабр! Предлагаю вашему вниманию перевод замечательной статьи из цикла статей небезызвестного Джейка Вортона о том, как происходит поддержка Андроидом Java 8. Оригинал статьи лежит тут Читать дальше →

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

.NET: Инструменты для работы с многопоточностью и асинхронностью. Часть 2 Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Я продолжаю создавать текстовую версию своего выступления на митапе по многопоточности. С первой частью можно ознакомиться здесь или здесь, там речь больше шла о базовом наборе инструментов, что...

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

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

Как мы выбирали себе ServiceDesk. Часть 3 Наши “хождения по мукам” подходят к концу. Эта статья завершает цикл нашего выбора оптимальной системы для оцифровки бизнеса. Всем привет! Напомню, что мы — установщики кондиционеров, которые решили найти для себя оптимальный ServiceDesk. Ранее работали в совместных календа...

[Перевод] Опасности конструкторов Привет, Хабр! Представляю вашему вниманию перевод статьи "Perils of Constructors" автора Aleksey Kladov. Один из моих любимых постов из блогов о Rust — Things Rust Shipped Without авторства Graydon Hoare. Для меня отсутствие в языке любой фичи, способной выстрелить в ногу, о...

[Из песочницы] Способы сегментации точек в Point Clouds Введение Некоторое время назад мне потребовалось решить задачу сегментации точек в Point Cloud (облака точек — данные, полученные с лидаров). Пример данных и решаемой задачи: Поиски общего обзора существующих методов оказались неуспешными, поэтому пришлось собирать информац...

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

McLaren среди смартфонов. Появились изображения OnePlus 7T Pro McLaren Edition Несколько дней назад мы узнали, что компания OnePlus кроме смартфонов 7T и 7T Pro в ближайшее время может представить ещё и 7T Pro 5G McLaren Edition. И теперь мы можем говорить об этом практически уверенно, так как известный инсайдер OnLeaks опубликовал изображения обы...

WAL в PostgreSQL: 1. Буферный кеш Предыдущий цикл был посвящен изоляции и многоверсионности PostgreSQL, а сегодня мы начинаем новый — о механизме журналирования (write-ahead logging). Напомню, что материал основан на учебных курсах по администрированию, которые делаем мы с Павлом pluzanov, но не повторяет их...

[Перевод] Microsoft Edge – Универсальный XSS Перевод статьи подготовлен специально для студентов курса «Реверс-инжиниринг». Универсальный XSS (uXSS) – это баг браузера, который дает возможность выполнять код на JavaScript на любом сайте. Кажется, будто XSS есть на всех сайтах и выглядит это очень интересно. Что е...

[Из песочницы] Система Управления Тесткейсами QuAck — простые радости тестирования Привет, Хабр! Представляю вашему вниманию перевод статьи «QuAck — the joy of testing» автора Aziz Namazov. Сегодня я затрону непростую тему жизненного цикла программного обеспечения. Тема эта достаточно сложная и многогранна, включающая в себя все этапы, начиная от дизайн...

[Перевод] Среда, лексическая область видимости и замыкания в JavaScript Перевод JavaScript Environment, Lexical Scope and Closures. Поговорим о среде. Наша огромная планета одна на всех. При строительстве нового химического завода было бы неплохо его изолировать, чтобы все внутренние процессы не покидали его пределы. Можно сказать, что среда ...

Работа не волк, часть 2. Пройти босса и выжить на испытательном сроке Новая работа — маленькая (а иногда и не очень) новая жизнь. Самое главное это начать её правильно, чтобы верный старт стал началом отличного пути. После того, как вы прошли HR-а, остаётся два важных шага: пройти собеседование с руководителем и удачно завершить испытательный ...

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

Software Defined Radio — как это работает? Часть 10 Привет, Хабр. В «юбилейной» части цикла про SDR хочется рассказать об одном из протоколов, благодаря которому многие радиолюбители «невольно» приобщились к миру цифровых широкополосных сигналов. Этот стандарт также являлся первой (и насколько известно, единственной) попытко...

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

Хабрарейтинг 2018: лучшие материалы за 2018 год Привет Хабр. Данный пост является логическим завершением публикаций про жизненный цикл статьи на Хабре (первая и вторая части), в результате чего был сделан достаточно интересный инструмент для статистического анализа. Методика оказалась весьма полезной, и позволяет находит...

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

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

Как улучшить защиту периметра сети? Практические рекомендации для Check Point и не только Мы продолжаем цикл статей, посвященных оптимизации security настроек средств защиты периметра сети (NGFW). Хочу сразу заметить, что приведенные рекомендации подходят не только для владельцев Check Point. По сути, если разобраться, угрозы одинаковы для всех, просто каждый N...

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

ITIL Intermediate: Release, control, validation — много счастливых релизов Основная причина, по которой необходимо обратить внимание на модуль Intermediate — Release, Control and Validation — сводится к одному слову: DevOps. DevOps стал новейшим способом описания совместной работы Agile и бережливого производства (Lean), но по...

Как зарядить электромобиль за 10 минут Скоро на зарядку электромобилей будет уходить столько же времени, сколько на обычную заправку В то время, как Tesla экспериментирует с технологией быстрой зарядки электромобилей, другая группа ученых из США (а именно из Университета штата Пенсильвания), кажется, нашла решени...

Блокировки в PostgreSQL: 4. Блокировки в памяти Напомню, что мы уже поговорили о блокировках отношений, о блокировках на уровне строк, о блокировках других объектов (включая предикатные), и о взаимосвязи разных типов блокировок. Сегодня я заканчиваю этот цикл статьей про блокировки в оперативной памяти. Мы поговорим о сп...

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

iPhone 11 Pro заряжается в два раза быстрее прошлогодних моделей Последние несколько лет Apple была единственной компанией, которая не включала в комплект поставки своих дорогих флагманских смартфонов быстрые зарядные устройства. Несмотря на то, что ёмкость аккумуляторов iPhone постепенно росла, производитель комплектовал смартфоны 5-ватт...

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

[Из песочницы] Тестирование API с использованием Postman и Excel Всем привет, я руководитель отдела тестирования, и недавно по работе появилась задача на тестирование API. Для ее решения освоил новый для меня инструмент Postman и JavaScript. Первоначально на каждый API я писал свои коллекции и готовил тестовые данные в JSON формате. Это ...

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

[Перевод] Долгая история реакторов на быстрых нейтронах и обещания использования закрытого топливного цикла Открытие ядерного синтеза в 1930-х повлекло за собой первую угрозу ядерного уничтожения посредством ядерного оружия в 1940-х, за которой последовало обещание чистой и обильной энергии в 1950-х благодаря появлению ядерных электростанций. Они должны были заменить другие тепл...

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

Julia NLP. Обрабатываем тексты Анализ и обработка текстов на естественном языке является постоянно актуальной задачей, которая решалась, решается и будет решаться всеми доступными способами. На сегодня хотелось бы поговорить о средствах решения для решения этой задачи, именно, на языке Julia. Безусловно,...

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

Инструменты для хорошего Wi-Fi. Ekahau Pro и другие Если вы занимаетесь построением средних и крупных Wi-Fi сетей, где самое меньшее число точек доступа это несколько десятков, а на больших объектах оно может исчисляться сотнями и тысячами, вам нужны инструменты для планирования такой внушительной сети. От результатов плани...

DEV Labs 2019. Python для решения нетривиальных задач. Онлайн-митап Уважаемые коллеги! Приглашаем принять участие в онлайн-митапе серии DEV Labs, который пройдёт 20 марта и будет посвящён языку Python. Расскажем о применении Python в сфере проектирования систем «умного дома» и рассмотрим примеры решения задач по распознаванию человеческих д...

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

[Перевод] Изучаем Python: модуль argparse Если вы занимаетесь обработкой и анализом данных с использованием Python, то вам, рано или поздно, придётся выйти за пределы Jupyter Notebook, преобразовав свой код в скрипты, которые можно запускать средствами командной строки. Здесь вам и пригодится модуль argparse. Для но...

Система построения песчаных форм | Песчаная 3D-печать FHZL Производство 3D-песчаных форм (РСМ) - одна из самых передовых технологий литья, объединяющая традиционную технологию литья в песчаную форму и 3D-печать. Эта технология позволяет быстро создавать песчаные формы и стержни, подходящие для быстрого литья сложных деталей. PCM не ...

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

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

Мониторинг производительности запросов PostgreSQL. Часть 1 — репортинг Инженер — в переводе с латыни — вдохновенный. Инженер может всё. (с) Р.Дизель. Эпиграфы. Или история о том, зачем администратору баз данных вспоминать свое программистское прошлое. Предисловие Все имена изменены. Совпадения случайны. Материал представляет собой исключител...

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

Революция 2011 года: Objective-C 3.0, ссылки, сборщики мусора Иосифу Виссарионовичу, говорят, термин “гиперссылка” понравился бы. Это спорно, а кроме того, никакого отношения к тому о чем эта статья, не имеет. Речь в ней пойдет о совсем других ссылках. И о других сущностях называемых приведенными словами… В 2011 году на смену системе ...

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

Истории Геннадия Зеленко и Сергея Попова — популяризаторов технологий в СССР В восьмидесятых журнал «Радио» опубликовал цикл статей, посвящённых тому, как продвинутый радиолюбитель мог бы собрать микрокомпьютер в домашних условиях. Так в тысячах семей впервые появились компьютеры. Это стало важной вехой в истории компьютеризации СССР и в формировании...

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

[Из песочницы] Автоматизированное проектирование радиоэлектронной аппаратуры В популярной форме освещаются вопросы автоматизированного проектирования радиоэлектронной аппаратуры (РЭА) на конструкциях печатных плат, основные этапы становления и эволюции систем автоматизированного проектирования (САПР) РЭА, содержание задач автоматизации, организация ...

[Перевод] Математики обнаружили идеальный способ перемножения чисел Разбивая крупные числа на мелкие, исследователи превысили фундаментальное математическое ограничение скорости Четыре тысячи лет назад жители Вавилонии изобрели умножение. А в марте этого года математики усовершенствовали его. 18 марта 2019 два исследователя описали самый ...

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

Разрабатываем утилиту на GraalVM Постановка задачи Периодически у меня возникает задача поделиться файлами по локальной сети, например, с коллегой по проекту. Решений для этого может быть очень много — Samba / FTP / scp. Можно просто залить файл в общедоступное публичное место типа Google Drive, приложить к...

Граф Скоринг де ля Фер или исследование на тему кредитного скоринга, в рамках расширения кругозора. Ч.3 Часть третья, в которой Атос выпал в осадок, а Граф де ля Фер мудрит с алгоритмами. UPD Часть первая здесь UPD Часть вторая здесь AntipovSN and MihhaCF Вступление от авторов: Добрый день! Сегодня мы продолжаем цикл статей, посвященных скорингу и использованию в оном теории г...

Как мы делали платежную систему для криптовалюты: пять основных проблем Привет, Хабр! На связи компания B2Broker, провайдер ликвидности и технологических решений для брокерской и биржевой индустрии. Один из наших продуктов — трейдинговая платформа B2BX.exchange. Когда летом 2017 года мы запускали платформу, то задумались о том, как принимать кри...

Какие приложения установлены на моём смартфоне Данная тема довольно популярна в сети Интернет, поэтому написать материал о приложениях, которые установлены на моём смартфоне, был просто обязан. Скажу сразу, в игры не играю, поэтому из установленных только PUBG. Для многих смартфон – это просто средство для совершения зв...

Анализируем тональность текстов с помощью Fast.ai В статье пойдет речь о классификации тональности текстовых сообщений на русском языке (а по сути любой классификации текстов, используя те же технологии). За основу возьмем данную статью, в которой была рассмотрена классификация тональности на архитектуре CNN с использование...

[Перевод] MVC в Unity со Scriptable Objects. Часть 2 Продолжение цикла статей от Cem Ugur Karacam (часть 1 можно прочитать здесь). В этот раз мы начнем с того, что создадим несколько представлений для отображения объекта инвентаря и панель информации для отображения параметров объекта. Этакий примитивный инвентарь. Затем сос...

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

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

Пробуем preload (PHP 7.4) и RoadRunner Привет, Хабр!  Мы часто пишем и говорим о производительности PHP: как мы ей занимаемся в целом, как мы сэкономили 1 млн долларов при переходе на PHP 7.0, а также переводим разные материалы на эту тему. Это вызвано тем, что аудитория наших продуктов растёт, а масштабирован...

[Перевод] 63 ядра заблокированы семью инструкциями Кажется, у меня появилась привычка писать о мощных машинах, где множество ядер простаивают из-за неправильных блокировок. Так что… Да. Опять про это. Эта история особенно впечатляет. В самом деле, как часто у вас один поток несколько секунд крутится в цикле из семи команд, ...

4. Нагрузочное тестирование Check Point Maestro Продолжаем цикл статей по решению Check Point Maestro. Мы уже опубликовали три вводных статьи: Check Point Maestro Hyperscale Network Security Типовые сценарии использования Check Point Maestro Типовой сценарий внедрения Check Point Maestro Теперь самое время перейти к ...

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

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

Задачи с собеседований: найти середину связного списка Задача обычно формулируется так: имеется указатель на начало списка и необходимо найти середину связного списка (в общем случае – произвольный элемент номер n). В информатике, связный список — структура данных, состоящая из узлов, каждый из которых содержит как собстве...

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

[Перевод] Новшества JavaScript: итоги Google I/O 2019. Часть 1 Материал, первую часть перевода которого мы сегодня публикуем, посвящён новым стандартным возможностям JavaScript, о которых шла речь на конференции Google I/O 2019. В частности, здесь мы поговорим о регулярных выражениях, о полях классов, о работе со строками. Ретроспект...

10 PostCSS плагинов, которые сэкономят время вашему верстальщику У нас, у фронтендеров, есть такая категория инструментов, которые никак не решают стоящие перед нами задачи, а скорее влияют на сам процесс их решения. Изменяют его. Отношение к таким инструментам самое разное – начиная от мании в духе “давайте эту штуку пихать везде, это ж...

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

Самодельный лазер на парах хлорида меди В одной из статей, посвященных моему лазеру на парах меди, на основе активного элемента УЛ-102 в комментариях был задан вопрос – а что же будет дальше? Дальше оставалось только найти способ сделать самостоятельно активный элемент лазера. И этот способ был найден. Об этом реч...

Методика D.I.Y. проекта. Часть вторая В заключительной части статьи «Методика D.I.Y. проекта» будет рассмотрен комплекс организационных мероприятий на стадии исполнения и закрытия любительского проекта. Предыдущие части статьи опубликованы здесь и здесь. Читать дальше →

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

[Перевод] Вся правда об ОСРВ. Статья #28. Программные таймеры Идея программных таймеров была введена в одной из предыдущих статей. Они являются объектами ядра, предоставляющими задачам простой способ запуска событий по времени, или, чаще всего, способ выполнять действия на регулярной основе. Все детали функционала, связанного со времен...

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

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

"Большая четверка" улучшает сеть интернета вещей Технология передачи данных Non-IP используется при построении инфраструктуры для интернета вещей. Операторы ожидают, что IoT-устройства этого класса будут обладать высокой энергетической эффективностью. Это позволит им работать на протяжении нескольких лет без замены батареи...

AMD снизит цены на ускорители Radeon RX 590 и RX 580 Компания AMD пересмотрит цены на свои видеокарты семейства Polaris — на это указывают слухи, циркулирующие в средствах массовой информации. Как утверждают источники, Radeon RX 590 подешевеет до $229, в то время как официальная цена Radeon RX 580 c 8 Гбайт памяти опустится до...

Земля — плоская Точнее, не плоская, но и не шар. И даже не эллипсоид. А вполне себе многогранник. Точнее, 56-гранник. Ещё точнее — предлагается новый формат записи гео-координат. Сначала немного общих соображений: в базе OSM имеется три типа данных: node way и relation. Узлы содержат коорд...

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

Рецепты для ELFов На русском языке довольно мало информации про то, как работать с ELF-файлами (формат ELF (Execution & Linkable Format) — основной формат исполняемых файлов Linux и многих Unix-систем). Не претендуем на полное покрытие всех возможных сценариев работы с эльфами, но надеем...

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

Строим интерфейс по вводу документов через подбор В различных бизнес-приложениях часто возникает задача по вводу документов. Обычно документ состоит из заголовка и некоторых строк, каждая из которых ссылается на некоторый объект (например, товар). Чаще всего, для ввода записей в документ используется обычная таблица, в кот...

Наглядное пособие по разработке продуктов: формирование идеи Это перевод первой части цикла из четырех статей о разработке и производстве физических продуктов. Автор, источник: Ben Einstein. Зачастую разница между компанией, приносящей миллиарды, и компанией-банкротом – в умении создать продукт, который полюбят клиенты. Но с учётом...

[Перевод] Как работают методы persist, merge из JPA и методы save, update, saveOrUpdate из Hibernate Добрый день, друзья. Перевод статьи подготовлен специально для студентов курса "Разработчик Java". Введение В этой статье я собираюсь показать вам, как работают методы persist, merge из JPA и сравнить их с методами save, update, saveOrUpdate из Hibernate. Хотя лучше испол...

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

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

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

Улучшаем работу Wi-Fi. Часть 2. Особенности оборудования Друзья, эта статья является продолжением первой части цикла статей о том как улучшить работу WiFi в офисе или на предприятии. Читать дальше →

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

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

Видеокурс «Введение в реверсинг с нуля, с использованием IDA PRO. Глава 1» Привет, Хабравчане! Хочу сообщить Вам приятную новость. Уже доступна первая видео-глава из цикла статей — «Введение в реверсинг с нуля, с использованием IDA PRO». Сам видеоролик доступен здесь. Очень красивый PDF файл здесь. Также здесь можно увидеть какие комплектующие я...

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

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

[Перевод] Новшества JavaScript: итоги Google I/O 2019. Часть 2 Сегодня мы публикуем вторую часть перевода материала о новшествах JavaScript. Здесь мы поговорим о разделителях разрядов чисел, о BigInt-числах, о работе с массивами и объектами, о globalThis, о сортировке, об API интернационализации и о промисах. → Первая часть Читать да...

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

Видео дня: смартфон iPhone XI Весьма неожиданного сегодня в Сети появились изображения и видео с трёхмерной моделью iPhone XI (имя предположительное), созданные инсайдером OnLeaks. Мы нередко повторяем, что этот инсайдер за всё время почти не ошибался, однако в данном случае речь идёт о трёхмерной м...

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

[Перевод] Тестирование Node.js-проектов. Часть 1. Анатомия тестов и типы тестов Автор материала, первую часть перевода которого мы сегодня публикуем, говорит, что он, как независимый консультант по Node.js, каждый год анализирует более 10 проектов. Его клиенты, что вполне оправданно, просят его обратить особое внимание на тестирование. Несколько месяцев...

Подборка академических и науч-поп источников Академическое знание давно уже обитает в интернете, и как и любая информация, индексируется поисковыми машинами и базами данных. Я говорю о более широкой категории знаний, чем STEM(Science Technology Engineering and Mathematics), основным критерием академических источников я...

Секретный тариф Tele2 за 150 рублей в месяц. Что мы знаем? Оказалось, что тема тарифов сотовых операторов вызывает интерес у нагих читателей, потому мы решили продолжить цикл статей о непубличных тарифах, которые сегодня можно приобрести на рынке. Мы уже писали о таких предложениях от МТС, МГТС и «Мегафона». Сегодня расскажем об э...

[Перевод] Руководство по аутентификации в Node.js без passport.js и сторонних сервисов Автор статьи, перевод которой мы сегодня публикуем, говорит, что сейчас можно наблюдать рост популярности таких сервисов аутентификации, как Google Firebase Authentication, AWS Cognito и Auth0. Индустриальным стандартом стали универсальные решения наподобие passport.js. Но, ...

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

«Легенда» уходит: завтра Apple попрощается с iTunes Любой пользователь техники Apple знает, что такое iTunes. Приложение, дебютировавшее на компьютерах Mac в 2001 году, олицетворяет собой целую эпоху. Но в скором времени iTunes может отправиться на покой. Как пишет Bloomberg, уже завтра на конференции WWDC Apple анонсиру...

Мониторинг сообщений в RabbitMQ Рассмотрим классическую схему построения конвейера сообщений в RabbitMQ состоящую из элементов Producer, Exchange, Queue и Consumer. Задача состоит в том, что бы организовать мониторинг происходящего в очереди и не затронуть основное программное обеспечение (ПО), добавить...

Как взять сетевую инфраструктуру под свой контроль. Часть третья. Сетевая безопасность. Продолжение Это вторая часть главы «Сетевая безопасность» (которая в свою очередь является третьей частью цикла статей «Как взять сетевую инфраструктуру под свой контроль»). В первой части этой главы мы рассмотрели некоторые аспекты сетевой безопасности сегмента «Data Center». Эта глава...

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

[recovery mode] ShIoTiny: часы без пружины или реальное время и как с ним работать О чем эта статья Продолжаем цикл статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. В этот статье рассказано о часах реального времени в контроллере ShIoTiny, синхронизации времени и использовании узлов работы с часами. Сайт проекта ShIoTiny...

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

Применение R для утилитарных задач Хороший инструмент + наличие навыков работы с ним, что достигается путем практики, позволяет легко и элегантно решать множество различных «как бы» нетипичных задач. Ниже пара подобных примеров. Уверен, что многие могут этот список расширить. Является продолжением предыдущих ...

Задачи с собеседований: найти пропущенное число в массиве Один из наиболее часто задаваемых вопросов на собеседованиях – найти пропущенное число в массиве на Java, C # или любом другом языке. Такого рода вопросы задаются не только в небольших стартапах, но и в некоторых крупнейших технических компаниях, таких как Google, Amaz...

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

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

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

Российские смарт-метки расскажут о состоянии автомобильных покрышек Государственная корпорация Ростех рассказала о проекте «умных» отечественных меток, которые позволят наделить обычные автомобильные шины интеллектуальными функциями. Речь идёт о разработке особых электронных модулей, которые будут вулканизироваться в пок...

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

Прогноз CW: Пять прорывных технологий хранения 2020 года Перспективные решения, в том числе NVMe, память класса систем хранения и управление хранением на основе намерений, обещают изменить подход ИТ-служб к хранению, управлению и использованию данных. На протяжении десятилетий прогресс технологий хранения измерялся главным обра...

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

Концепции программирования в Scratch Многим знаком Scratch – детская среда программирования, обучение в которой обычно сводится к созданию творческих проектов по принципу «от простого к сложному». При этом «классический подход» к изучению программирования (переменные → ветвления → циклы → функции → структуры ...

Удобный инструмент для измеренй C# кода В стремительно развивающемся, большом и сложном продукте поиск узких мест, в плане производительности, становится не тривиальной задачей. Конечно есть инструменты для решения таких задач, например, BenchmarkDotNet. Бесспорно, это полезный и нужный инструмент, но при этом не...

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

Microsoft выпускает обновления, не связанные с безопасностью, для Office 2010, 2013 и 2016 Корпорация Microsoft выпустила новый пакет обновлений для повышения производительности Microsoft Office в рамках своего ежемесячного выпуска, полностью посвященного усовершенствованиям, не связанным с безопасностью.В этом месяце обновления поставляются для Office 2010, Offic...

Router и Data Passing архитектуры Clean Swift Привет, читатель! В предыдущей статье я рассказывал про VIP цикл архитектуры Clean Swift. Теперь мы затронем одну из самых важных тем — переход и передачу данных между сценами.  Читать дальше →

Камеры глубины — тихая революция (когда роботы будут видеть) Часть 1 Недавно я описывал, благодаря чему роботы завтра начнут НАМНОГО лучше соображать (пост про аппаратное ускорение нейросетей). Сегодня разберем, почему роботы скоро будут НАМНОГО лучше видеть. В ряде ситуаций намного лучше человека. Речь пойдет про камеры глубины, которые ...

Отслеживание жизненного цикла пользователей без плоскогубцев и изоленты Добрый день! Вас беспокоит Валентина Остроухова из бухгалтерии. Сергей Сергеевич уходит в отпуск на две недели и я буду его заменять. Вы могли бы предоставить мне доступ на это время к его папкам в директории //fs-buh/black_cashier/corruption? Заранее спасибо! Валентина О...

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

Удивлены? Galaxy Fold выходит из строя раньше, чем утверждала Samsung Galaxy Fold ещё менее надёжен, чем говорила Samsung Galaxy Fold — пожалуй, самый нежный смартфон, который только выходил на рынок. Во всяком случае, ни один другой аппарат не сопровождался таким количеством инструкций по аккуратному использованию и уходу, как обновлённ...

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

Системы мониторинга трафика в сетях VoIP. Часть вторая — принципы организации Здравствуйте, коллеги! В предыдущем материале мы познакомились с таким полезным и, как можно заметить, достаточно необходимым элементом VoIP-инфраструктуры, как система мониторинга трафика или, для краткости, СМТ. Узнали, что это такое, какие задачи решает, а также отметили...

[Из песочницы] Топ-8 полезных фильтров Google Analytics По умолчанию Google Analytics (GA) собирает всю статистику посетителей веб-сайта, но для анализа весь массив данных может не понадобиться. Очистить и переработать информацию можно с помощью фильтров на уровне представления. Самые полезные из них разберем в этой статье. Что ...

[Из песочницы] Schemathesis: property-based тестирование для API схем Фото Chris Keats на Unsplash Многие компании, и мы в том числе, перешли от монолитов к микросервисам ради лучшей масштабируемости и ускорения циклов разработки. У нас всё еще есть монолитные проекты, но они постепенно заменяются набором небольших и аккуратных микросервисов....

ASUS показала шикарный ZenBook Edition 30 Компания ASUS, в честь своего 30-летия, представила совершенно уникальный ноутбук ZenBook Edition 30, который будет выполнен в ограниченном тираже и купить такой в обычном магазине розничной продажи точно не получится. Ноутбук выполнен в корпусе с покрытием из натуральной бе...

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

[Перевод] К CI/CD и Kubernetes GitLab шел необычным путем Как наша команда Delivery, используя только собственные ресурсы, переделала нашу систему под CI/CD. Команды инженеров постоянно испытывают давление: нужно выдавать новые функции в виде достойного продукта и при этом постоянно минимизировать время цикла. Зачастую специалисты...

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

Резервное копирование, часть по просьбам читателей: Обзор UrBackup, BackupPC, AMANDA Данная обзорная заметка продолжает цикл по резервному копированию, написана по просьбе читателей, в ней речь пойдет о UrBackup, BackupPC, а также AMANDA. Читать дальше →

Структуры против Классов С самого начала, когда я начинал заниматься программированием, вставал вопрос, что использовать для улучшения быстродействия: структуру или класс; какие массивы лучше использовать и как. По поводу структур, Apple приветствует их использование, объясняя это тем, что они лучше...

[Перевод] Любопытные извращения из мира ИТ — 5 История первая. Роковые буквы [Оригинал] Когда-то давно Джордж устроился работать в офис Initech. Компания только что арендовала несколько этажей в старом офисном здании, недавно перешедшего из категории «городской упадок» в категорию «элегантные кофейни на первом этаже и ...

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

OpenCV на STM32F7-Discovery Я один из разработчиков операционной системы Embox, и в этой статье я расскажу про то, как у меня получилось запустить OpenCV на плате STM32746G. Если вбить в поисковик что-то вроде "OpenCV on STM32 board", можно найти довольно много тех, кто интересуется использованием это...

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

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

«Живое» фото Realme X: полноэкранный кандидат для народа Realme решила не зацикливаться на Индии и готовится нарабатывать опыт на внешних рынках. Похоже, что на вооружение взята та же стратегия, с которой на рынке стартовал бренд OnePlus. На первых порах цель монетизации и заработка на смартфонах не стоит. Сейчас задача сделать ма...

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

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

[Перевод] Node.js для начинающих: основы работы с файлами Сегодня мы поговорим о том, как работать с файловой системой средствами Node.js, рассмотрим базовые операции, выполняемые с файлами. К таким операциям относятся следующие: Создание файла Чтение файла Запись данных в файл Удаление файла Переименование файла Необходимость в...

Планирование проектов в организации (часть 4) Я продолжаю цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). В этой статье я расскажу о самой «вкусной» части: Планирование проектов. Планирование — это самая простая и самая сложная часть любого проекта основанного целью которого являет...

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

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

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

Анализ производительности виртуальной машины в VMware vSphere. Часть 1: CPU Если вы администрируете виртуальную инфраструктуру на базе VMware vSphere (или любого другого стека технологий), то наверняка часто слышите от пользователей жалобы: «Виртуальная машина работает медленно!». В этом цикле статей разберу метрики производительности и расскажу, ...

Простой слайдер изображений на CSS и Javascript Автор уже опубликовал скрипт карусели, который также использует только CSS и Javascript. Теперь давайте рассмотрим скрипт слайдера. Он отличается от карусели тем, что одновременно виден только один элемент, а не несколько, и элементы не прокручиваются, а медленно замещаются ...

Как решать NP-трудные задачи с помощью параметризованных алгоритмов Научно-исследовательская работа, пожалуй, самая интересная часть нашего обучения. Идея в том, чтобы ещё в университете попробовать себя в выбранном направлении. Например, студенты с направлений Software Engineering и Machine Learning часто идут делать НИРы в компании (в осно...

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

Что умеет продвинутая версия Google Assistant для Pixel 4 Google Assistant на Pixel 4 Несмотря на то что смартфоны Google Pixel работают под управлением стоковой версии Android, Google всё равно старается снабдить их рядом уникальных возможностей, которые недоступны больше ни на одном другом аппарате. Долгое время одной из них было...

[Из песочницы] Как создать простой микросервис на Golang и gRPC и выполнить его контейнеризацию с помощью Docker Привет, Хабр! представляю вашему вниманию перевод статьи «Go, gRPC and Docker» автора Mat Evans. Существует множество статей о совместном использовании Go и Docker. Создавать контейнеры, способные взаимодействовать с клиентами и между собой, очень легко. Далее следует небол...

Управление целями в организации: Цели и инженеры (часть 3) Продолжаем цикл публикаций о Pulse Management — Управление проектной организацией (Метод Пульса). Мы уже разобрались с моделью организации, с основными принципами Метода. Теперь время рассказать о Правилах. Правила программируют организацию, а значит они должны быть определ...

[Перевод] Как приоритеты pod'ов в Kubernetes стали причиной простоя в Grafana Labs Прим. перев.: Представляем вашему вниманию технические подробности о причинах недавнего простоя в работе облачного сервиса, обслуживаемого создателями Grafana. Это классический пример того, как новая и, казалось бы, исключительно полезная возможность, призванная улучшить кач...

Проблемы действующей методики определения актуальных угроз от ФСТЭК Доброго времени суток, Хабр! Сегодня мы бы хотели покритиковать документ «Методика определения актуальных угроз безопасности персональных данных при их обработке в информационных системах персональных данных», утвержденный ФСТЭК России 14 февраля 2008г. (далее – Методика)....

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

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

Microsoft выпустила платформу для создания медицинских чат-ботов Спустя три года разработок платформа была запущена на Azure Marketplace - цифровой площадке для приложений облачной инфраструктурыMicrosoft Azure. Healthcare Bot позволяет разработчикам создавать чат-боты для оценки симптомов, побочных лекарственных реакций и других интересу...

Моделирование топпера в Blender 2.79 1.     В стандартной конфигурации Blender небогат русскими шрифтами. Понравившийся шрифт копируем и помещаем в папку Program Files/Blender. Foundation/Blender/2.79/datafiles/fonts.1.     Открываем  Blender, убираем куб,  добавляем текст. 1. &nbs...

«Я — инструмент президента»: Боец ЧВК Вагнера «спалил» принадлежность к Путину Наёмники в Сирии перестали скрывать своё предназначение. Во время интервью телеканалу CNN один из наёмников ЧВК Вагнера решил быть откровенен по максимуму. Представившись журналистам «Олегом», он дал краткий, но очень информативный комментарий по поводу действий ЧВК Вагнера...

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

Intel имела возможность не допустить столь успешного реванша AMD Самое первое поколение процессоров Intel Core вышло десять лет назад. Эти CPU имели исполнение LGA 1156 и в максимальной конфигурации располагали четырьмя ядрами. Первые шестиядерные процессоры Intel в обычном настольном сегменте появились лишь с приходом поколения Coff...

Постоянное улучшение. 10 советов по организации самообслуживания Организация самообслуживания сотрудников компаний обычно рассматривается как ключевая инициатива для перегруженных ServiceDesk'ов ИТ-подразделений. Цели «классические»: снижение затрат, ускорение обработки запросов на обслуживание, обеспечение лучшего клиентс...

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

Введена в строй самая большая в России установка для 3D-печати Объединённая двигателестроительная корпорация (ОДК), входящая в госкорпорацию Ростех, ввела в эксплуатацию самую крупную в нашей стране установку прямого лазерного выращивания из порошковых металлических материалов. Речь идёт о передовой системе 3D-печати. Она будет применят...

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

LQR оптимизация систем управления Введение На Habr были опубликованы несколько статей [1,2,3], прямо или косвенно касающиеся указанной темы. В связи с этим, нельзя не отметить публикацию [1] с названием “Математика на пальцах: линейно-квадратичный регулятор”, которая популярно поясняет принцип работы оптимал...

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

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

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

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

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

[Перевод] Дизайн система Société Générale: Гармония дизайна и разработки Предлагаем вашему вниманию перевод истории о создании дизайн системы, рассказанной дизайнером из Societe Generale. Нынешний всплеск статей о дизайн системах вдохновил нас больше говорить о том, над чем мы работаем в Societe Generale. Мы давно экспериментируем с нашей дизайн...

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

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

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

[Перевод] Всё, что вам нужно знать про CSS Margin Одним из первых, что многие из нас усвоили, когда изучали CSS, были особенности разных составляющих блока в CSS, описываемые как «Блочная Модель CSS». Один из элементов в блочной модели — margin (внешний отступ), прозрачная область вокруг блока, которая отталкивает другие эл...

[Из песочницы] Импорт OpenStreetMap. От бинарного исходника к таблице в БД в несколько шагов Обычно, когда кто-то говорит про OSM, то в голове всплывает какой-нибудь из веб-сервисов, или приложение вроде Maps.me, основанные на данных OSM. На самом деле проект OSM — это в первую очередь данные, всё остальное по сути частные случаи их использования. Сервисы предоставл...

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

Почему от 3D болит голова / Часть 8 Расфокус и будущее 3D S3D: No pain IS gain Когда-то давно в далекой галактике Geektimes был опубликован цикл статей о том, почему 3D-фильмы так сложно снимать без головной боли у зрителей. Как это часто бывает, цикл безвременно оборвался из-за недостатка времени у автора. При том, что тонны мат...

[recovery mode] Аккордеон, faq, спойлер и другие раскрывающиеся виджеты Создать аккордеон, faq, спойлер и подобное, можно при помощи Div и JavaScript. Но лучше: Details и Summary Поддерживается всеми современными браузерами и это семантически правильно оформленный код, при использовании которого будут плюсы: Людям с ограниченными возможнос...

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

Что умеет самый необычный менеджер задач? Я фанат ежедневников для записи дел. Какие только я не пробовал — и компактные Moleskine, чтобы делать быстрые заметки, и большие формата A4 для планирования своего дня чуть ли не по минутам. Но раз за разом возвращался к тому, что у такого подхода нет гибкости и како...

Автоматизация ответов на часто задаваемые вопросы в навыке для «Алисы» с помощью библиотеки DeepPavlov Лаборатория нейронных систем и глубокого обучения МФТИ вот уже больше года делает DeepPavlov — открытую библиотеку для создания диалоговых систем. Она содержит набор претренированных компонент для анализа языка, с помощью которых можно эффективно решать задачи бизнеса. Напр...

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

Google выпускает криптографический ключ на USB-C. На что он способен? Обеспечение «цифровой безопасности» крайне важно в наши дни В последние годы Google является одним из ключевых игроков в разработке самых разных технологий и стандартов, связанных с двухфакторной аутентификацией (2FA). Помимо того, что вы можете использовать свои у...

Парсинг сайтов — а это вообще легально в России? По одному из определений парсинг есть синтаксический анализ информации. Человеку, не вовлечённому в конкретные задачи сбора и обработки информации для Интернет-проектов, это не говорит ни о чём. Да и само определение лишь в общих чертах обозначает огромный объём работы, кото...

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

[Из песочницы] Длинные имена слишком длинные Привет, Хабр! Представляю вашему вниманию перевод статьи "Long Names Are Long" автора Bob Nystrom. Одно из умных вещей которые делает Google это строгие code review. Каждое изменение, прежде чем вам разрешат его внести в основную ветку, рассматривается как минимум ...

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

Лучшие VR-игры для разных платформ: Gear VR, Google Daydream и Google Cardboard Виртуальная реальность и разработки, связанные с ней, становятся настоящим трендом. Эта тенденция не только сохраняется, но и получает дальнейшее развитие - VR-платформ становится всё больше. Самые известные из них - это Samsung Gear VR, Oculus, Google Cardboard и Google Day...

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

[Перевод] Дробное броуновское движение Введение fBM расшифровывается как Fractional Brownian Motion (дробное броуновское движение). Но прежде чем начать говорить о природе, фракталах и процедурных рельефах, давайте на минуту углубимся в теорию. Броуновское движение (Brownian Motion, BM), просто, без «дробности» ...

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

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

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

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

[Из песочницы] Arduino и прерывания таймера Привет, Хабр! Представляю вашему вниманию перевод статьи "Timer interrupts" автора Предисловие Плата Arduino позволяет быстро и минимальными средствами решить самые разные задачи. Но там где нужны произвольные интервалы времени (периодический опрос датчиков, высок...

Hyundai планирует расширить применение неметаллических материалов Компания Hyundai Motor объявила о подписании соглашения о сотрудничестве с нефтяной компанией Саудовской Аравии Saudi Aramco. Работы будут вестись по нескольким направлениям. В частности, договор предусматривает развитие экосистемы транспорта с водородными силовыми установка...

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

История советских кассетников: эволюция “Десны”, MK-60 made in USA и народные магнитофоны 70-х Продолжая наш цикл о советском аудио, захотелось рассказать о кассетных магнитофонах в СССР. Известно, что в Стране Советов эти устройства стали появляться несколько позже, чем на западе, а исчезли наоборот раньше (производство их было свернуто почти сразу после распада Союз...

[Перевод] Разработка динамических древовидных диаграмм с использованием SVG и Vue.js Материал, перевод которого мы сегодня публикуем, посвящён процессу разработки системы визуализации динамических древовидных диаграмм. Для рисования кубических кривых Безье здесь используется технология SVG (Scalable Vector Graphics, масштабируемая векторная графика). Реактив...

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

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

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

[Перевод] Как общаться в англоязычном офисе: 14 полезных идиом На Хабре в последние годы публикуется довольно много статей о переезде, в том числе в США и Великобританию. Обычно в таких материалах рассказывают о поиске работы и визовых вопросах, но не так много внимания уделяется дальнейшей интеграции, в том числе в рабочий коллектив....

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

В Windows 10 20H1 планируются значительные улучшения «под капотом» Впервые компания Microsoft приступила к тестированию функционального обновления для Windows 10 более чем за год до момента, когда состоится его релиз. Как правило, тестирование крупных обновлений системы длится 6-8 месяцев, однако Windows 10 20H1 инсайдеры будут тестировать...

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

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

Swift против Rust — бенчмаркинг на Linux с (не)понятным финалом Привет, Хабр! Периодически посматриваю на Swift в качестве языка прикладного программирования для Linux — простой, динамичный, компилируемый, без сборщика мусора, а значит, теоретически, пригоден и для устройств. Решил сравнить его с чем-то таким же молодым и модным — напри...

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

COMAC испытывает водородный электролет с 3D-печатными деталями В Китае завершил первый цикл летных испытаний беспилотный аппарат Lingque H (LQ-H2), разработанный компанией COMAC. В конструкции экологичного электролета на водородных топливных элементах используются 3D-печатные детали.  Подробнее...

[Из песочницы] JavaScript в 3D: введение в Three.js Привет, Хабр! Представляю Вашему вниманию перевод статьи «JavaScript in 3D: an Introduction to Three.js» автора Брета Кемерона (Bret Cameron). Введение Three.js это мощный инструмент. Он помогает использовать 3D дизайн в браузере с приемлемой производительностью. По нач...

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

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

В «темной сети» процветает тайпсквоттинг Специалисты компании Digital Shadows сообщили о необычной мошеннической операции – массовом случае тайпсквоттинга в «темной сети» dark net. Под тайпсквоттингом подразумевается прием с регистрацией доменных имен, сходных в написании с наименованиями известных брендов. Условн...

Blink: как мы сделали iOS-приложение с использованием Eye-Tracking технологии Задача первого релиза – собрать обратную связь, понять удачно ли реализован пользовательский опыт от момента попадания на страницу в App Store до полного выполнения всего цикла упражнений.

Существенно ускоряем выполнение задач на примере дополнительной настройки обновленной памяти HyperX FURY DDR4 Выбор оперативной памяти для рабочего или игрового ПК – головная боль для тех, кто хочет одновременно получить максимум производительности и не опустошить свой кошелёк. Нет, сегодня мы не будем в очередной раз говорить «такая-то память стоит столько и является оптимальным вы...

Workers архитектуры Clean Swift Привет, читатель! Ранее мы разобрали как устроен VIP цикл и как совершать переходы между с ценами с передачей данных. Теперь нужно разобраться как разгрузить наш Interactor от переизбытка логики и вынести ее часть для повторного использования другими сценами. И в этом нам ...

[Перевод] Как в Redash заметили и исправили проблему, вызвавшую деградацию производительности Python-кода Недавно в Redash приступили к смене одной системы выполнения задач на другую. А именно — они начали переход с Celery на RQ. На первом этапе на новую платформу перевели лишь те задания, которые не выполняют запросы напрямую. Среди таких заданий — отправка электронных писем, в...

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

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

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

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

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

[Перевод] Готовимся к 2020 году: 8 трендов клиентской JavaScript-разработки, о которых нужно знать Автор материала, перевод которого мы сегодня публикуем, говорит, что хочет поделиться с читателями прогнозом, который касается развития веб-технологий на ближайшие годы. В частности, здесь речь пойдёт о том, что, по мнению автора, фронтенд-разработчикам, вероятно, стоить нач...

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

[Перевод] Решение алгоритмических задач: возможность бронирования отеля Перевод статьи подготовлен специально для студентов курса «Алгоритмы для разработчиков». Эта статья является частью серии о том, как решать алгоритмические задачи. Исходя из своего личного опыта, я обнаружил, что большинство ресурсов просто подробно описывают решение. Объ...

Исследование рынка аналитиков: где учатся, какими инструментами пользуются и сколько зарабатывают Партнеры Нетологии — компания «Нормальные исследования» совместно с рекрутинговым агентством New.HR и сервисом анонимного поиска работы GeekJob.ru — провели глубокое исследование рынка аналитиков. Среди охваченных тем — можно ли быть успешным аналитиком без профильного образ...

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

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

Неблокирующая отрисовка и обновление графиков с помощью bokeh Есть у меня один Python-скрипт с расчётами. Там был цикл примерно на 2000 итераций, каждая из которых считалась несколько минут. И решил я, чтобы ловчее отлаживать тот скрипт, выводить график кой-каких метрик от номера итерации. И как посчитается очередная итерация, так о...

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

3D-сканирование комнаты Наверняка вы даже не подозревали, что 3D-сканирование комнаты — это очень полезная штука. Хотите узнать об этом подробнее? Тогда читайте наш гайд! Что это такое? 3D-сканирование выстраивает САПР-изображения объектов из точек данных. 3D-сканирование — это процесс ...

[Перевод] Как размеры массивов C стали частью двоичного интерфейса библиотеки Большинство компиляторов C позволяют получить доступ к массиву extern с неопределёнными границами, например: extern int external_array[]; int array_get (long int index) { return external_array[index]; } Определение external_array может находиться в другой единице трансля...

Software Defined Radio — как это работает? Часть 1 Привет Хабр. Продолжая цикл статей про радио, есть смысл рассказать про последние достижения в этой области — Software Defined Radio. Я не знаю адекватного перевода термина на русский, поэтому оставим так, да и термин SDR уже прижился в технических и радиолюбительских круга...

Hyundai и Kia инвестируют в компанию Aurora, разрабатывающую ПО для самоуправляемых автомобилей Молодая компания Aurora, специализирующаяся на разработке программного обеспечения для самоуправляемых автомобилей, получила новую порцию инвестиций. Она поступила от промышленной группы Hyundai Motor Group, уже являющейся партнером Aurora. Говоря точнее, от входящих в ...

Tic Tac Toe, часть 6: Flask и Celery/RabbitMQ Tic Tac Toe: содержание цикла статейПопробуем подключить Celery/RabbitMQ к нашему проекту. В качестве основы возьмем проект с Flask'ом. Celery займется вычислением случайного числа. Читать дальше →

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

[Перевод] Parcel — мой любимый сборщик проектов Сегодня мы поговорим о сборщиках проектов (о бандлерах), об инструментах, которые облегчают жизнь разработчиков. Суть работы бандлеров заключается в том, что они берут JavaScript-код, содержащийся во множестве файлов, и упаковывают его в один или несколько файлов, определённ...

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

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

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

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

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

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

Как услугу назовете... Автор Kerry Lyons рассказывает о своем опыте работы с названиями услуг в Лотерейном фонде национального наследия Великобритании. Когда ваша команда работает над чем-то, что в дальнейшем должно стать услугой, очень важно тратить время на то, чтобы разобраться, как вы называет...

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

Фотогалерея дня: смартфон Redmi K20 Pro Marvel Hero Limited Edition Как известно, у смартфона Redmi K20 Pro есть версия Marvel Hero Limited Edition для фанатов киновселенной Marvel. Это забавно, учитывая, что на коробках обычных Redmi K20 и K20 Pro можно видеть стилизованное изображение Годзиллы, а сами смартфоны. Как бы там ни было, се...

Operating Systems: Three Easy Pieces. Part 1: Intro (перевод) Введение в операционные системы Привет, Хабр! Хочу представить вашему вниманию серию статей-переводов одной интересный на мой взгляд литературы — OSTEP. В этом материале рассматривается достаточно глубоко работа unix-подобных операционных систем, а именно — работа с процесс...

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

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

Надстройка для Excel, облегчающая установку фильтров при работе с кубами (VBA) Как известно, из коробки Excel не позволяет устанавливать фильтры по списку значений для сводных таблиц, а это ведь такая нужная вещь! Как отфильтровать товары по сотне кодов, а потом по другой сотне? Есть, конечно, способы, но все это не то… Или, например, установить для к...

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

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

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

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

[Перевод] SMAA: улучшенное субпиксельное морфологическое сглаживание Данная статья основана на журнале Хорхе Хименеса, Хосе Эчеварриа, Тиаго Соуса и Диего Гутьерреса. Их демо реализации SMAA можно посмотреть здесь (файл .exe). На моём GTX 960 2GB оно работает вполне нормально. Старые способы сглаживания (антиалиасинга) Долгие годы стандарт...

#Видео: Может ли iPad заменить компьютер? Apple всеми силами пытается показать, что iPad может полноценно заменить компьютер. Мы решили проверить насколько это действительно возможно, и пришли к неоднозначным выводам. Подробности ниже. Я очень хорошо отношусь к iPad и пользуюсь им начиная с первого поколения. Несм...

Мех полярных медведей подсказал идею теплоизолятора с наилучшими свойствами На днях группа учёных из Китайского университета науки и технологии опубликовала в издании Chem статью с рассказом об одном очень перспективном исследовании. Речь идёт о создании теплоизолятора с превосходными характеристиками. Интересно то, что идею создать новый теплоизоля...

Julia: типы, мультиметоды и арифметика над полиномами В этой публикации речь пойдёт об основной, на мой взгляд, отличительной особенности языка Julia — представлении функций в виде методов с множественной диспетчеризацией. Это позволяет повысить производительность вычислений, не снижая читаемости кода и не портя абстрагируемост...

[Из песочницы] Подписываемся на Kafka по HTTP или как упростить себе Веб-хуки Существует множество способов обработки сообщений из Pub-Sub систем: использование отдельного сервиса, выделение изолированного процесса, оркестрация пулом процессов/потоков, сложные IPC, Poll-over-Http и многие другие. Сегодня я хочу рассказать о том, как использовать Pub-S...

Автоматизация Для Самых Маленьких. Часть первая (которая после нулевой). Виртуализация сети В предыдущем выпуске я описал фреймворк сетевой автоматизации. По отзывам у некоторых людей даже этот первый подход к проблеме уже разложил некоторые вопросы по полочкам. И это очень меня радует, потому что наша цель в цикле — не обмазать питоновскими скриптами анзибль, а вы...

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

Как понять, что батарею смартфона пора менять? Советы и рекомендации по проверке и диагностике АКБ телефона. Каждый аккумулятор подлежит износу. Обычно после 500-800 циклов зарядки/разрядки...

МТС интегрирует стартапы в сфере HR, Esports и FinTech в ключевые бизнес-направления Стартапы, чей пилот пройдет успешно, будут претендовать на его масштабирование в рамках долгосрочного контракта с компанией. МТС также рассмотрит возможность инвестиций в наиболее эффективные проекты.Финалисты третьего набора акселератора:HR-трекSpeakerGuru - сервис, который...

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

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

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

Раскрыты ключевые особенности камер будущих iPhone Apple действительно рассматривает возможность выпуска iPhone 11 Max с тройным модулем камеры, сообщает издание Bloomberg. По мнению журналистов, подобный объектив даст смартфону Apple неоспоримое преимущество перед конкурентами, и позволит вывести показатель мобильной съемк...

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

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

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

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

Технология eSim в России может начать работать в конце 2019 года Как сообщает «Ведомости» со ссылкой на справку, подготовленную ведомством, Минкомсвязи предлагает легализовать на территории технологию eSIM, позволяющую подключать услуги связи без SIM-карт и явки к операторам. Напомним, встроенные SIM-карты (eSIM) делают ...

Уже можно предзаказать. Электрический хэтчбек Volkswagen ID.3 с запасом хода в 330 км будет стоить менее 30 000 евро Компания Volkswagen готовится представить свой первый электромобиль новой линейки. Хэтчбек ID.3 будет первенцем не только в своей линейке — этот автомобиль будет первым, основанным на новой платформе, разработанной специально для электромобилей. Несмотря на то, чт...

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

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

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

(Без)опасный онлайн-банкинг: исследование веб-ресурсов банков России и мира Мы решили повторить масштабную исследовательскую работу 2015 года и проанализировали безопасность веб-ресурсов ведущих банков мира. Онлайн-банкинг с тех пор стал не просто более распространённым, а даже повсеместным явлением. Действительно, это быстро и удобно, но насколько ...

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

#Мнение: Я зависим от Apple Watch. И это страшно С умными часами от Apple у меня давние отношения: первое поколение появилось сразу после старта продаж в 2015 году, потом долгое время не решался на покупку обновленных Apple Watch, а когда уже почти был готов, в редакции как раз появились Series 4. И вот уже несколько меся...

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

Состоялся релиз Microsoft.UI.Xaml 2.2 Компания Microsoft объявила о выпуске новой версии Windows UI Library для разработчиков программного обеспечения, которая принесла с собой несколько весьма приятных изменений, в том числе новый элемент управления TabView, улучшение кнопки «Назад» в NavigationView, поддержку...

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

Богатый выбор антенн для приема Wi-Fi В наше время существует огромное количество людей, которые просто не мыслят своей жизни без использования интернета. Бесполезно рассуждать о том, что «раньше обходились и без него». Жизнь современного человека неразрывно связаны с использованием огромного списка сведений, ко...

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

[Перевод] Ускорение instagram.com. Часть 3 Сегодня публикуем перевод третьей части серии материалов об ускорении instagram.com. В первой части мы говорили о предварительной загрузке данных, во второй — об отправке данных клиенту по инициативе сервера. Здесь речь пойдёт о кэшировании. Читать дальше →

[Из песочницы] Изучить отзывчивый веб-дизайн за 5 минут Привет, Хабр! Представляю вашему вниманию перевод статьи «Learn responsive web design in 5 minutes» автора Per. В этой статье я научу вас многим приёмам отзывчивого дизайна за 5 минут. Этого, очевидно, недостаточно для правильного изучения, но здесь вы найдёте обзор на след...

Как разблокировать частоту обновления экрана в 90 Гц на Google Pixel 4 Google Pixel 4 имеет и некоторые скрытые особенности После нескольких месяцев постоянных утечек, спекуляций и слухов. После ожидания и прогнозов различных инсайдеров, Google, наконец, представила свои флагманы Google Pixel 4 и Google Pixel 4 XL. На нашем сайте вы найдете мас...

[Перевод] Сети Kubernetes: Ingress Сегодня мы публикуем перевод третьей части руководства по работе с сетями в Kubernetes. В первой части речь шла о подах, во второй — о сервисах, а сегодня мы поговорим о балансировке нагрузки и о ресурсах Kubernetes вида Ingress. Читать дальше →

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

«Топологическая» сортировка графа с циклами Полное название статьи должно было звучать как «Устойчивая „топологическая“ сортировка графа с циклами за O(|V| + |e| log |e|) по времени и O(|V|) по памяти без рекурсии», но мне сказали что это перебор. Читать дальше →

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

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

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

5 лучших rar- и zip-архиваторов на Android Один из наиболее распространенных типов файлов, с которыми нам приходится иметь дело — это архивные файлы. Вы наверняка видели их раньше, и они обычно встречаются в форматах zip, rar, 7z, tar и других. Смысл использования архивов состоит в том, чтобы поместить много ф...

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

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

Дополненная реальность Господина Старшего Консультанта (рассказ) 0. Предисловие Цикл рассказов «Господин Старший Консультант» я начал публиковать давно, и ранее это могли прочитать только друзья и коллеги. Это первая публикация одного из рассказов цикла на публичном ресурсе, и вообще первая моя публикация на Хабре (не судите строго). 1. ...

Портирование Qt на STM32 Добрый день! Мы в проекте Embox запустили Qt на STM32F7-Discovery и хотели бы об этом рассказать. Ранее, мы уже рассказывали как нам удалось запустить OpenCV. Qt — это кроссплатформенный фреймворк, который включает в себя не только графические компоненты, но и такие вещи ка...

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

RBKmoney Payments под капотом — микросервисы, протоколы и конфигурация платформы Привет Хабр! RBKmoney снова выходит на связь и продолжает цикл статей о том, как написать платежный процессинг своими руками. Хотелось сразу погрузиться подробности описания реализации платежного бизнес-процесса как конечного автомата, показать примеры такого автомата с наб...

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

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

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

Четыре аспекта управления услугами – целостный подход ITIL4 «Целое больше суммы его частей» Аристотель Никакая услуга, практика, процесс, отдел или поставщик не существуют в одиночку. Любая организация, будет работать интегрированным образом, управляя своей деятельностью в целом, а не отдельными ее частями. Эти идеи нах...

У какого Android-смартфона самая быстрая память? Представленный недавно смартфон Galaxy Note 10 станет первым устройством Samsung, использующим память стандарта UFS 3.0. Однако интереснее здесь то, что, согласно проведённым тестам, скорость памяти в еще не вышедшем флагмане значительно превосходит таковую у конкурентов. К...

Как я работал в Турции и познакомился с местным рынком Объект на «плавающем» фундаменте для защиты от землетрясений. Меня зовут Павел, я руковожу в КРОК сетью коммерческих дата-центров. Мы за последние лет 15 построили заказчикам точно больше сотни ЦОДов и крупных серверных, но этот объект — самый крупный из зарубежных. Он нах...

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

Набор BESTFILAMENT для новичков в 3D-печати! А есть здесь те, кто недавно купил свой первый 3D-принтер?Мы собрали специальный набор для всех, кто только начинает свой путь в 3D-печати! Mini pack от Bestfilament - прекрасный вариант для новичков, чтобы попробовать в печати самые популярные филаменты. В набор входят:✅ PL...

[Перевод] Списки захвата в Swift: в чём разница между ссылками weak, strong и unowned? Джозеф Райт, «Пленный» — иллюстрация «сильного» захвата Список «захваченных» значений находится перед списком параметров замыкания и может «захватить» значения из области видимости тремя разными способами: используя ссылки «strong», «weak» или «unowned». Мы часто его испол...

Прорабатываем навык использования группировки и визуализации данных в Python Привет, Хабр! Сегодня будем прорабатывать навык использования средств группирования и визуализации данных в Python. В предоставленном датасете на Github проанализируем несколько характеристик и построим набор визуализаций. По традиции, в начале, определим цели: Сгрупп...

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

[Перевод] Обзор Python-пакета Datatable «Пять экзабайт информации создано человечеством с момента зарождения цивилизации до 2003 года, но столько же сейчас создаётся каждые два дня». Эрик Шмидт Datatable — это Python-библиотека для выполнения эффективной многопоточной обработки данных. Datatable поддерживает наб...

Google научила Google Assistant работать без интернета. Как это? Google Assistant может работать и без интернета Если вы начали пользоваться интернетом хотя бы в начале нулевых годов, то наверняка помните, на какие жертвы приходилось идти, чтобы попасть в сеть. Тогда самым распространённым способом подключения к интернету было использован...

RTM-сборка Windows 10 20H1 будет подписана в декабре в соответствии с циклом разработки Azure Грядущий релиз Windows 10 20H1 станет первой версией операционной системы, разработка которой будет завершена в декабре, то есть на три месяца раньше обычного. Это связано с переходом Windows на «семестровый» цикл разработки, который в настоящее время используется командой ...

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

Некоторые задачи школьной математики. Часть II Часть I. Дроби Часть II. Модули В данной статье рассматривается метод оценок диапазона принимаемых значений и связь этого метода с задачами, содержащими модуль. При решении некоторых задач необходимо рассматривать диапазон, в пределах которого может находиться искомая вел...

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

Как взять сетевую инфраструктуру под свой контроль. Оглавление Оглавление для всех статей цикла «Как взять сетевую инфраструктуру под свой контроль» и ссылки. На данный момент опубликовано 5 статей: Глава 1. Удержание Глава 2. Чистка и документирование Глава 3. Сетевая безопасность. Часть первая Глава 3. Сетевая безопасность. Часть в...

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

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

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

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

WiPEY — миниатюрный электрический дворник для мотошлема На сайте KickStarer завершается сбор средств на устройство под названием WiPEY. Этот проект не может похвастать таким оглушительным успехом, какой пришелся на долю штатива Travel Tripod, но цель собрать 20 000 долларов, поставленная создателями WiPEY, достигнута. ...

[Перевод] Отлаживаем развертывание ПО со strace Моя основная работа — это, по большей части, развертывание систем ПО, то есть уйму времени я трачу, пытаясь ответить на такие вот вопросы: У разработчика это ПО работает, а у меня нет. Почему? Вчера это ПО у меня работало, а сегодня нет. Почему? Это — своего рода отладка,...

[Перевод] Как Tesla обучает автопилот Расшифровка 2-й части Tesla Autonomy Investor Day. Цикл обучения автопилота, инфраструктура сбора данных, автоматическая разметка данных, подражание водителям-людям, определение расстояния по видео, sensor-supervision и многое другое. Читать дальше →

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

[Перевод] Ускорение instagram.com. Часть 2 Сегодня мы представляем вашему вниманию перевод второго материала из серии, посвящённой оптимизации instagram.com. Здесь речь пойдёт об улучшении механизма заблаговременного выполнения GraphQL-запросов и о повышении эффективности передачи HTML-данных клиенту. → Читать, за...

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

[Перевод] Как удаленка ускоряет инновации на GitLab На GitLab удаленка — это не бизнес-риск, а конкурентное преимущество. Я менеджер продуктов на GitLab. Обычно занимаюсь стадией планирования в жизненном цикле DevOps. Я пришел в ноябре 2016 и с тех пор любуюсь, какими семимильными шагами развивается GitLab как продукт и как ...

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

В нашей галактике обнаружена самая старая звезда во Вселенной Австралийские астрономы из Национального университета сообщили об открытии самой старой звезды в известной нам Вселенной. Объект относится к классу так называемых красных гигантов и получил очень сложное и длинное название SMSS J160540.18–144323.1. Что интересно, звезда нах...

Вход в Aeronet, эпизод 2: Самонаводящийся дрон В предыдущей статье мы рассмотрели порядок действий для запуска в воздух автономного виртуального дрона. Под руководством преподавателя по этой инструкции удаётся запустить дрон даже школьникам. Возникает вопрос: а что дальше? Ну, дрон, ну взлетел. Тем более, виртуальный – ...

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

Боль, таблетки и две кареты скорой помощи, или Как мы все-таки забрались на пятое место IronStar 226 в Сочи Никогда. Слышите? Никогда не соглашайтесь участвовать в этом безумии. У нас в ИТ все совсем неплохо — теплые и уютные офисы, большие мониторы, хорошие столовые, ДМС. Хочется драйва, работы на пределе сил, переживаний? Пожалуйста. Идите работать на проекты типа ГИС ЖКХ (ранее...

Beego — это уже не Go Любой хайп весьма забавен, когда смотришь на него со стороны. Менее забавен, когда оказываешься в него вовлечен напрямую. Хайп Go пришелся где-то на 2014ый год, когда авторы приложений имевших от силы 1000RPM (requests per minute) вдруг как один решили, что им срочно нужен ...

[Из песочницы] Angular. Понимание @Input, @Output и EventEmitter Привет, Хабр! Представляю вашему вниманию перевод статьи «Understanding @Input, @Output and EventEmitter in Angular» автора foolishneo. Приветствую всех желающих накапливать информацию о тонкостях работы фреймворка Angular. Сегодня посчитал нужным лучше изучить информацию,...

Обновлённый Google Assistant сравнили с Siri. Кто оказался круче Google Assistant и раньше был самым лучшим голосовым помощником, а теперь стал ещё лучше В этом году Google представила обновлённую версию Google Assistant, которую можно назвать Google Assistant 2.0. Разработчикам компании удалось не только сделать голосового помощника умне...

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

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

Новое устройство позволяет создавать голограммы при помощи ультразвука Возможно, что фантастика — это не такая уж и фантастика… Исследователи из Университета Сассекса (Великобритания), по всей видимости, являются фанатами серии фильмов «Звездные Войны». Но даже если это и не так, то они создали устройство, которое очень по...

Свежие дорожные карты Intel: не ждите 10-нанометровых настольных процессоров ещё минимум два с половиной года Компания Intel уже не раз говорила о том, что 10-нанометровые процессоры Ice Lake точно выйдут в конце текущего года. Можно, конечно, вспомнить и другие обещания процессорного гиганта, но в этот раз, похоже, Intel уверена в своих словах. Но в данном случае речь идёт о ...

Маленький гаджет SwitchBot Curtain превратит обычные шторы в элемент умного дома «Умные» шторы с электроприводом, которые уже можно встретить в продаже, все же не лишены недостатков: их необходимо подключать к источнику питания и довольно сложно устанавливать. Новое устройство SwitchBot Curtain – автономное, и его можно присоединить к обычным шторам.

AI@MIPT: Большие данные для математических моделей человеческого генома Привет, Хабр! Физтех возобновляет цикл семинаров по искусственному интеллекту AI@MIPT. Сегодня Александр Фрей и Кевин О’Коннелл из Норвежского центра по изучению психологических расстройств (NORMENT) в городе Осло расскажут об использовании больших данных для математических ...

[Из песочницы] Трансформация кода в Android Вместо вступления Всё началось с того, что мне захотелось изучить тонкости настройки Gradle, понять его возможности в Android разработке (да и вообще). Начал с жизненного цикла и книги, постепенно писал простые таски, попробовал создать свой первый Gradle плагин (в buildSrc)...

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