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

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

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

«Секретики» DPAPI или DPAPI для пентестеров Вторая статья по итогам выступления нашей команды на OFFZONE-2018. На этот раз рассмотрим доклад с MainTrack “Windows DPAPI “Sekretiki” or DPAPI for pentesters”. Внимание! Очень много буков! При проведении RedTeam кампаний хочется давать меньше поводов для реакции BlueTeam...

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

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

[Из песочницы] Termux шаг за шагом (Часть 1) Termux шаг за шагом При первом знакомстве Termux, а я далеко не линуксоид, вызвал в моей голове две мысли: «Круть несусветная!» и «Как им пользоваться?». Порывшись в инетах, я не нашел ни одной статьи в полной мере позволяющей начать пользоваться Termux`ом так чтобы это прин...

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

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

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

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

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

Архитектура Digital Workspace на платформе Citrix Cloud Введение Статья описывает возможности и архитектурные особенности облачной платформы Citrix Cloud и набора сервисов Citrix Workspace. Данные решения являются центральным элементом и основой для реализации концепции цифровых рабочих мест (digital workspaсe) от компании Citr...

[Из песочницы] Full-stack TypeScript Apps Привет, Хабр! Представляю вашему вниманию перевод статьи "Full-Stack TypeScript Apps — Part 1: Developing Backend APIs with Nest.js" автора Ana Ribeiro. Часть 1: Разработка серверного API с помощью Nest.JS TL;DR: это серия статей о том, как создать веб-приложение TypeScript ...

«Современные» обедающие философы на C++ посредством акторов и CSP Некоторое время назад ссылка на статью "Modern dining philosophers" распространилась по ресурсам вроде Reddit и HackerNews. Статья интересная, она показывает несколько решений этой известной задачи, реализованных на современном C++ с использованием task-based подхода. Если к...

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

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

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

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

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

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

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

Еще один способ оптимизации docker-образов для Java приложений История по оптимизации образов для java приложений началась с выхода статьи в блоге спринга — Spring Boot in a Container. В ней обсуждались различные аспекты по созданию docker образов для spring boot приложений, в том числе и такой интересный вопрос, как уменьшение размеров...

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

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

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

Структура DNS пакета Предисловие Решил как то написать снифер DNS, так сказать just for fun. Просто посмотреть какие адреса в моей системе резолвятся. Протокол старый, документации должно быть много. Много. Но все статьи очень не полные и заканчиваются, на самом интересном моменте. Да, есть rf...

[Перевод] Как начать использовать User Mode в Linux Вступление от переводчика: На фоне массового входа в нашу жизнь различного рода контейнеров может быть довольно интересно и полезно узнать, с каких технологий это всё начиналось когда-то. Некоторые из них можно с пользой применять и по сей день, но не все о таких способах по...

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

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

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

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

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

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

[recovery mode] Простота и cложность примитивов или как определить ненужный препроцессинг для нейронной сети Это третья статья по анализу и изучению эллипсов, треугольников и других геометрических фигур. Предыдущие статьи вызвали у читателей несколько очень интересных вопросов, в частности о сложности или простоте тех или иных обучающих последовательностей. Вопросы на самом деле оч...

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

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

3D-печать и airsoft: как я печатал «привод» Всем привет! Я попробую немного рассказать о том, как я пытался сделать страйкбольный привод при помощи 3D-принтера, что из этого получилось и с какими сложностями пришлось столкнуться. Статья может оказаться интересной для тех, кто любит airsoft, DIY или 3D-печать. Для те...

VXinspect: контроль качества детали за 10 минут Сегодня мы разберем возможности VXinspect – программного продукта, предназначенного для контроля геометрии на основе 3D-сканирования. Он является дополнительным платным модулем, встроенным в ПО VXelements и обеспечивает полное взаимодействие со всеми технологиями компании ...

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

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

[Перевод] XXE: XML external entity В этой статье мы объясним, что такое инъекция внешних сущностей XML, опишем некоторые общие примеры, поясним, как найти и использовать различные виды XXE-инъекций, а также обобщим, как предотвратить атаки с их помощью. Читать дальше →

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

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

Рекомендации по настройке AFA AccelStor при работе с VMware vSphere В рамках данной статьи хотелось бы рассказать об особенностях работы All Flash массивов AccelStor с одной из популярнейших платформ виртуализации – VMware vSphere. В частности, акцентировать внимание на тех параметрах, которые помогут получить максимальный эффект от использо...

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

[Из песочницы] SpaceVIL — кроссплатфоремнный GUI фреймворк для разработки на .Net Core, .Net Standard и JVM В данной статье я постараюсь рассказать о фреймворке SpaceVIL (Space of Visual Items Layout), который служит для построения пользовательских графических интерфейсов на платформах .Net / .Net Core и JVM. SpaceVIL является кроссплатформенным и мультиязычным фреймворком, в его ...

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

PHP-библиотеки для e-commerce: работа с АТОЛ и Payture, парсинг кодов GS1 и другие задачи Привет, меня зовут Павел Савельев, я руководитель отдела автоматизации бизнес-процессов в Lamoda. Мы работаем с очень разными задачами, и стараемся подобрать для каждой наиболее удобный инструментарий. Соответственно, мы используем разные языки — в наших системах можно встре...

[Перевод] Конференция DEFCON 20. Захват за 60 секунд: от гостевой учётной записи до администратора домена Windows. Часть 2 Конференция DEFCON 20. Захват за 60 секунд: от гостевой учётной записи до администратора домена Windows. Часть 1 Хорошо то, что мы можем войти в локальную сеть, подделав DNS. А как насчёт социальной инженерии, учитывающей предпочтения и склонности пользователей? Пентестеры ...

Осторожно — ГАЗ! или Как мы делали негазированные смарт-контракты Блокчейн и смарт-контракты все еще остаются горячей темой среди разработчиков и технических специалистов, много исследований и рассуждений об их будущем и о том, куда это все движется и приведет нас. У нас в Waves Platform свой взгляд на то, какими должны быть смарт-контрак...

Знакомство с чипсетом Apple A13 Bionic: прирост производительности и увеличение времени автономной работы Буквально вчера Apple представила свои самые ожидаемые новинки - смартфоны серии iPhone 11, которые получили много новых функций, но, пожалуй, самым интересным нововведением является новый чипсет A13 Bionic. Подробнее об этом читайте на THG.ru.

Они просканировали GitHub Группа исследователей из Университета Северной Каролины (North Carolina State University, NCSU) провели исследование сервиса для хостинга IT-проектов и их совместной разработки GitHub. Специалисты установили, что свыше 100 тыс. GitHub-репозиториев содержат API-ключи, токены ...

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

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

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

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

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

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

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

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

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

Делаем крутой sticky-эффект для слайдера на React Есть много разных библиотек для реализации слайдера со всеми возможными эффектами. Для React одни из лучших это: ReactSlick и Swiper. Но когда для моего проекта потребовался горизонтальный sticky-эффект, то ничего подходящего не нашлось. В этой статье мы попробуем поэтапно...

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

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

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

9 типовых проблем в сети, которые можно обнаружить с помощью анализа NetFlow (на примере Flowmon) Относительно недавно мы публиковали статью “Сетевой мониторинг и выявления аномальной сетевой активности с помощью решений Flowmon Networks”. Там мы кратко рассмотрели возможности этого продукта и процесс установки. Неожиданно для нас, после статьи и вебинара, поступило бо...

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

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

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

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

6 занимательных системных багов при эксплуатации Kubernetes [и их решение] За годы эксплуатации Kubernetes в production у нас накопилось немало занимательных историй, как баги в различных системных компонентах приводили к неприятным и/или непонятным последствиям, влияющим на работу контейнеров и pod'ов. В этой статье мы сделали подборку некоторых...

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

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

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

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

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

Бобро поржаловать, или Что нужно знать о бизнесе в Италии Наша компания «ЛАНИТ-ТЕРКОМ» занимается разработкой наукоемкого программного обеспечения — с далекого 1991 года мы активно работаем на иностранных рынках:  в странах Европы и США. В 2015 году мы решили, что логичным шагом вперед для развития бизнеса будет открытие офиса где-...

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

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

[Перевод] Как генерируются подземелья в Enter The Gungeon В последнее время я много играл в Enter The Gungeon. Это потрясающая, ужасно сложная игра в жанре bullet hell, сильно напомнившая мне Binding of Isaac. Но чем больше я играл в неё, тем больше осознавал малозаметную гениальность дизайна подземелий. Существует много процедур...

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

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

Ускорение запуска Julia при помощи PackageCompiler.jl Зайдя на официальный сайт языка программирования Julia, можно увидеть утверждение: "Julia is fast!". Однако, новые пользователи на практике сталкиваются с проблемой медленной загрузки модулей, в особенности графических [1,2]. Диалектически, причиной медленного запуска являет...

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

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

Blitz Engine & Battle Prime: ECS и сетевой код Вступление Battle Prime — первый проект нашей студии. Несмотря на то, что многие члены команды имеют приличный опыт в разработке игр, мы, естественно, сталкивались с разными сложностями во время работы над ним. Они возникали как в процессе работы над движком, так и в процес...

[Перевод] Добавление Quartz в Spring Boot И снова здравствуйте. Специально для студентов курса «Разработчик на Spring Framework» подготовили перевод интересной статьи. В моей статье «Specifications to the Rescue» я показал как можно использовать JPA Specification в Spring Boot для реализации фильтрации в RESTful ...

Новый загрузчик Buhtrap Сегодня мы расскажем вам о новом подходе к рассылке ВПО группировкой Buhtrap. Модуль загрузчика 19 декабря нам стало известно о вредоносной рассылке, содержащей исполняемый файл (md5: faf833a1456e1bb85117d95c23892368). Файл принимал различные названия: «Сверка за декабрь....

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

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

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

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

Разработка чат-бота (laravel+botman) Welcome! Я, как junior full stack разработчик, при попытке написать бота с использованием laravel и botman’а столкнулся с многими проблемами. Во-первых, я плохо знаю английский, а на русском статей очень мало на эту тему, а те, что есть не помогли мне решить мои проблемы. В ...

1000 прототипов Samsung Galaxy Fold, преемник выйдет уже в феврале Samsung опубликовала подробности о процессе разработки своего первого смартфона со сгибающимся экраном. В статье «От концепции до создания: проектирование Galaxy Fold» опубликованы интересные детали. На создание складного Samsung Galaxy Fold потребовались го...

ThingJS v1.0-alpha Последние два года я разрабатывал собственную IoT платформу и сегодня готов показать ее альфа версию. Вместе с партнером мы создаем и поддерживаем IoT устройства. Мы разобрали не один сарай с граблями в процессе этой деятельности. ThingJS родилась не столько из желания, ско...

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

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

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

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

Особенности тестирования веб-приложения для видеосервиса Услуги потокового вещания по запросу (VOD) стали неотъемлемой частью нашей повседневной жизни. Video on Demand — это система доставки видеоконтента, которая позволяет зрителям выбирать контент (видео) и просматривать его в удобное время (по запросу) на любом устройстве, пр...

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

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

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

PVS-Studio в гостях у Apache Hive Последние десять лет движение open source является одним из ключевых факторов развития IT-отрасли и важной ее составной частью. Роль и место open source не только усиливается в виде роста количественных показателей, но происходит и изменение его качественного позиционирован...

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

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

Автоматизация замены дисков с помощью Ansible Всем привет. Я работаю ведущим системным администратором в ОК и отвечаю за стабильную работу портала. Хочу рассказать о том, как мы выстроили процесс автоматической замены дисков, а затем, как исключили из этого процесса администратора и заменили его ботом. Эта статья явл...

[Из песочницы] CQRS: принцип «разделяй и властвуй» на службе у программиста Слоеная архитектура – это спасение в мире корпоративной разработки. С ее помощью можно разгрузить железо, распараллелить процессы и навести порядок в коде. Мы попробовали использовать паттерн CQRS при разработке корпоративного проекта. Всё стало логичнее и … сложнее. Недавно...

[Перевод] Идеальный баг: Использование Путаницы Типов в Flash. Часть 1 И снова здравствуйте! Уже завтра у нас стартуют занятия в новой группе по курсу «Реверс-инжиниринг». Традиционно делимся с вами переводом полезного материала по теме. Поехали! Некоторым злоумышленникам важно, чтобы эксплойт был чрезвычайно надежным. Он всегда должен приводи...

Apple все же готовит к выпуску плеер iPod touch седьмого поколения, он может получить порт USB-C Слухи о том, что компания Apple наконец-то предложит совершенно новый iPod touch, ходят давно. И вот сейчас они в очередной раз подтвердились. Как пишет японский источник, со ссылкой на инсайдеров в цепи поставок комплектующих, Apple работает на iPod touch седьмого поко...

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

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

[Перевод] Типизируйте уже наконец свой код Привет хабр! На днях мне в очередной раз на глаза попал код вида if(someParameter.Volatilities.IsEmpty()) { // We have to report about the broken channels, however we could not differ it from just not started cold system. // Therefore write this case into the logs a...

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

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

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

Обеспечение надежной работы Zextras Team в сложных корпоративных сетях В прошлой статье мы рассказали вам о Zextras Team — решении, которое позволяет добавить в Zimbra Collaboration Suite Open-Source Edition функциональность корпоративных текстовых и видео-чатов, а также возможность проводить видеоконференции с большим числом участников, без не...

Применение машинного обучения для анализа большого количества отзывов респондентов Любая современная компания заботится о своей репутации. Фразы: «Ваше мнение очень важно для нас» или «Оцените вашу покупку», «С какой долей вероятности вы бы порекомендовали нашу компанию?» буквально преследуют нас на каждом шагу на сайтах магазинов, поликлиник и даже Госусл...

[Из песочницы] KVM (недо)VDI с одноразовыми виртуальными машинами с помощью bash Кому предназначена данная статья Данная статья может быть интересна системным администраторам, перед которыми вставала задача создать сервис «одноразовых» рабочих мест. Пролог В отдел ИТ сопровождения молодой динамично развивающейся компании с небольшой региональной сетью,...

Офисные страсти Люди с опечаленными, серыми лицами заполонили ваш офис? Постоянные склоки в коллективе, регулярные выяснения отношений кто кому и чего должен? Проваленный дедлайн как норма? Сисадмин с отрешенной физиономией бродящий по конторе, словно привидение, в поисках «четырех палок» W...

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

Работа с датами на языке R (базовые возможности, а также пакеты lubridate и timeperiodsR) Получить текущую дату в любом языке программирования, операция эквивалентная "Hello world!". Язык R не является исключением. В этой статье мы разберёмся с тем, как устроена работа с датами в базовом синтаксисе языка R, а также рассмотрим несколько полезных пакетов, расширяющ...

Flipper Zero — пацанский мультитул-тамагочи для пентестера Flipper Zero — проект карманного мультитула на основе Raspberry Pi Zero для пентеста IoT и беспроводных систем контроля доступа. А еще это тамагочи, в котором живет кибер-дельфин. Он будет уметь: Работать в диапазоне 433 MHz — для исследования радиопультов, датчиков, эл...

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

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

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

Ученые напечатали на 3D-принтере пуленепробиваемый материал 3D-принтеры позволяют создавать уникальные материалы В научном мире существуют, так называемые, «теоретически возможные материалы». Это вещества, которые в теории создать можно и они не противоречат никаким законам. При этом по тем или иным причинам создать их на д...

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

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

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

[Из песочницы] Создание Android приложения с использованием Anko Layouts и Anko Coroutines Примерно год назад я начал использовать Kotlin в своих Android проектах. Мне хотелось попробовать что-то новое, что было бы интересно изучать. Тогда я и наткнулся на Anko. К тому времени писать UI на xml порядком осточертело. Мне всегда нравилось писать интерфейс руками, не...

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

Собираем окружение для современного TDD на JavaScript + VS code TDD уже давно не является чем-то диковинным: на хабре можно найти об этом подходе сотни статей, а каждый новичок знает, какую книгу об экстремальном программировании ему нужно прочитать. Многие мои коллеги тоже используют TDD. Они добавляют тест, пишут код, рефакторят, по...

[Перевод] Метаморфическое тестирование: почему об этой перспективной методике почти никто не знает Должен признаться: я читаю ACM Magazine. Это делает меня «ботаником» даже по меркам программистов. Среди прочего, я узнал из этого журнала о «метаморфическом тестировании». Раньше я никогда о нём не слышал, как и все люди, которых я спрашивал. Но научная литература по этой ...

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

[Перевод] Организовываем эффективный рабочий процесс веб-разработчиков: Confluence, Airtable и другие инструменты Я работаю фронтенд-разработчиком около двух лет, участвовал в создании самых разных проектов. Один из выученных мной уроков: взаимодействие между разными группами разработчиков, объединенных одной целью, но имеющих различные задачи и степень ответственности, — дело непрос...

3/32 ГБ памяти, две операционные системы, защита IP67 и камера на 8 Мп. Умные часы Kospet Optimus Pro доступны за 150 долларов Компания Kospet выпустила умные часы Kospet Optimus Pro, которые отличаются от своих коллег по цеху рядом параметров. Во-первых, они получили 3 ГБ оперативной и 32 ГБ флэш-памяти, что является очень большим объемом для данной категории устройств. Во-вторых, часы оснащен...

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

Ticket to Ride.Европа — арифметика, часть вторая Всё ещё продолжаю изучать основы математики и механики в игре. Данная статья является второй в серии (Ссылка на первую часть), в ней продолжается анализ перегонов, попытка их сортировки по потребности, изучение различных способов строительства маршрутов. Если проводить анало...

[Из песочницы] postgres_exporter и мониторинг экземпляров PostgreSQL с несколькими БД Добрый день, читатели habr! Prometheus и его экосистема экспортеров (агентов), является хорошим инструментом для любого администратора и разработчика. Простота доставки, простота (относительная) настройки, возможность использования сервиса автоматического обноружения. Но реч...

Универсальный перехват. Как обойти SSLPinning раз и навсегда и читать трафик любого приложения Для подписчиковОчень часто исследование внутренней работы прикладных программ можно свести к исследованию их трафика, и чаще всего передается он по протоколам семейства HTTP. Но каждое приложение может по-своему защищаться от «прослушки». Сегодня мы постараемся выяснить, что...

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

Telegram бот для персонализированной подборки статей с хабра Для вопросов в стиле "зачем?" есть более старая статья — Натуральный Geektimes — делаем пространство чище. Статей много, по субъективным причинам некоторые не нравятся, а некоторые, наоборот, жалко пропускать. Хочется оптимизировать этот процесс и экономить время. В вышеупом...

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

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

Нужно сказать спасибо AMD. Новые CPU Intel Core i5 получат поддержку Hyper-Threading Недавно мы узнали, что процессор Core i3-10100 получит четыре ядра и будет поддерживать Hyper-Threading, что сделает его существенно интереснее предшественников. Судя по новым данным, подобное преображение ожидает и новые настольные CPU Core i5. В базу SiSoft Sandra по...

Web scraping с помощью R. Сравнение оценок фильмов на сайтах Кинопоиск и IMDB Всемирная паутина — это океан данных. Здесь можно посмотреть практически любую интересующую Вас информацию. Однако, "вытащить" эту информацию из интернета уже сложнее. Есть несколько способов получить данные и web-scraping один из них. Читать дальше →

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

[Перевод] Ещё 9 проектов для оттачивания Front-End мастерства Введение Независимо от того, являетесь ли вы новичком в программировании или уже опытным разработчиком, в этой отрасли изучение новых концепций и языков/фреймворков является обязательно чтобы успевать за трендами. Возьмем, к примеру, React — код которого, Facebook открыл ...

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

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

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

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

WhatsApp на ладони: где и как можно обнаружить криминалистические артефакты? Хотите узнать, какие типы криминалистических артефактов WhatsApp существуют в различных операционных системах и где именно они могут быть обнаружены — тогда вам сюда. Этой статьей специалист Лаборатории компьютерной криминалистики Group-IB Игорь Михайлов открывает серию пу...

Xiaomi выпустила улучшенную версию одного из своих самых популярных продуктов Умные роботы-пылесосы Xiaomi Mijia являются одними из самых успешных продуктов в каталоге китайской компании. В связи с этим анонс улучшенной версии кажется вполне логичным шагом. Обновленный пылесос Xiaomi MIJIA Smart Robot Vacuum Сleaner оснащен, среди всего прочего,...

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

Почему большинство людей правши? Правшей на планете всегда было больше, чем левшей Знаете ли вы, что примерно 85% населения планеты являются правшами и лишь остальные 15% левшами? Предпочтение использовать ту или иную руку при выполнении повседневных задач чаще всего объясняется некоторыми особенностями в р...

[Перевод] Модели дженериков и метапрограммирования: Go, Rust, Swift, D и другие В некоторых сферах программирования нормально хотеть написать такую структуру данных или алгоритм, которые могут работать с элементами разных типов. Например, список дженериков или алгоритм сортировки, которому нужна только функция сравнения. В разных языках предложены всев...

[Из песочницы] Когда компания умирает: как пережить банкротство В последнее время на профильных ресурсах все чаще появляется информация о банкротстве IT-компаний с увольнением 100% персонала. Возможно, мой личный опыт будет интересен для людей, находящимся в этой зоне. Статья описывает процессы скорее с точки зрения собственника и топ-ме...

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

[Перевод] Исследование глубин аннотаций типов в Python. Часть 1 C 2014 года, когда в Python появилась поддержка аннотаций типов, программисты работают над их внедрением в свой код. Автор материала, первую часть перевода которого мы публикуем сегодня, говорит, что по её оценке, довольно смелой, сейчас аннотации типов (иногда их называют «...

Тестирование на iOS 9 и выше: не баги приложений, а фичи платформы Оксана Фадеева, инженер по обеспечению качества Redmadrobot У платформы iOS 9 и выше есть особенности, которые нужно учитывать при тестировании мобильных приложений. Некоторые из них могут ввести в заблуждение и восприниматься как дефект приложения, хотя на самом деле это ...

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

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

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

CleanShot — приложение, которое улучшит процесс снятия скриншотов на Mac Одной из особенностей яблочной настольной платформы являются встроенные инструменты для создания и работы со скриншотами. Однако они все же уступают сторонним решениям, например, таким как CleanShot.Читать дальше... ProstoMAC.com.| Постоянная ссылка | No comment Вы также м...

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

Финансовая ловушка в Яндекс.Деньги Привет, Хабр! Хотел бы поделиться с вами одной особенностью Яндекс.Денег, которая выглядит, как ловушка для ваших денег и, на мой взгляд, является хорошим примером непродуманного UX. Хочется верить, что это было сделано не нарочно, а эта небольшая статья или как-то оградит ч...

Применение MATLAB/Simulink с аппаратурой производства АО «ИнСис» Важной практической задачей является использование Matlab/Simulink с реальной аппаратурой которая позволит принять сигнал из реального мира. Это очень полезно для отладки алгоритмов. В данной работе представлена технология подключения к Simulink устройств АЦП производства АО...

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

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

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

Долгий путь от RFC 4357 к RFC 8645 или как управлять ключами шифрования Как известно, управление ключами является одной из самых сложных задач в криптографии. Буквально на днях в качестве RFC 8645 опубликован документ “Re-keying Mechanisms for Symmetric Keys” («Механизмы смены симметричных ключей»). Он является результатом двух с половиной лет ...

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

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

Kubernetes Operator на Python без фреймворков и SDK Go на данный момент является монополистом среди языков программирования, которые люди выбирают для написания операторов для Kubernetes. Тому есть такие объективные причины, как: Существует мощнейший фреймворк для разработки операторов на Go — Operator SDK. На Go написа...

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

Nomad: проблемы и решения Первый сервис в Nomad я запустил в сентябре 2016 года. На данный момент пользуюсь как программист и занимаюсь поддержкой как администратор двух Nomad кластеров — один "домашний" для своих личных проектов (6 микро-виртуалок в Hetzner Cloud и ArubaCloud в 5 разных датацентрах ...

ShIoTiny и окружающий мир: аналоговые датчики или АЦП для самых маленьких Основные тезисы или о чем эта статья Продолжение серии статей о ShIoTiny — визуально программируемом контроллере на базе чипа ESP8266. Ключевой особенностью данного контроллера является возможность его программирования путем рисования программы в браузере. В данной статье о...

[Перевод] Алан Кей: Что можно назвать самым удивительным, что компьютеры сделали возможным Quora: Что можно назвать самым удивительным, что компьютеры сделали возможным? Алан Кей: Все еще пытаюсь научиться мыслить лучше. Я думаю, что ответ будет очень похож на ответ на вопрос «что является самым удивительным, что письменность (а затем и печатный станок) сделал...

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

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

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

Книга «Совершенный алгоритм. Графовые алгоритмы и структуры данных» Привет, Хаброжители! Алгоритмы — это сердце и душа computer science. Без них не обойтись, они есть везде — от сетевой маршрутизации и расчетов по геномике до криптографии и машинного обучения. «Совершенный алгоритм» превратит вас в настоящего профи, который будет ставить за...

[Из песочницы] 10 самых распространенных ошибок Spring Framework Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 10 Most Common Spring Framework Mistakes» автора Toni Kukurin. Spring, вероятно, один из самых популярных Java-фреймворков, а также могучий зверь для укрощения. Хотя его базовые концепции довольно легко понять, д...

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

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

Автоматизируем переход на React Hooks React 16.18 — первый стабильный релиз с поддержкой react hooks. Теперь хуки можно использовать не опасаясь, что API изменится кардинальным образом. И хотя команда разработчиков react советует использовать новую технологию лишь для новых компонентов, многим, в том числе и мне...

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

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

«Мамкины хакеры» на официальной работе: чем занимаются пентестеры «Пентестер» — слово вообще-то не русское, заимствованное. Что приходит на ум людям не из ИТ, боюсь представить. Поэтому мы себя «на Руси» гордо зовём «специалисты по тестированию на проникновение». Что ещё за «проникновение» и зачем его нужно тестировать? В этой статье я п...

[Перевод] Хранилища в Kubernetes: OpenEBS vs Rook (Ceph) vs Rancher Longhorn vs StorageOS vs Robin vs Portworx vs Linstor Обновление!. В комментах один из читателей предложил попробовать Linstor (возможно, он сам над ним работает), так что я добавил раздел об этом решении. Еще я написал пост о том, как его установить, потому что процесс сильно отличается от остальных. Если честно, я сдался и о...

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

Xiaomi Mi Band 3 сокрушительно сильно рухнул в цене до рекордного минимума Сейчас на рынке можно встретить огромное множество различных моделей спортивных браслетов, но одной из лучших является Xiaomi Mi Band 3. Этот наручный гаджет поступил в продажу по всему миру летом 2018 года, то есть примерно Сообщение Xiaomi Mi Band 3 сокрушительно сильно р...

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

6 самых свежих курсов по Azure Привет, Хабр! Ранее мы опубликовали уже 3 статьи из 5 в нашей серии подборок интересных учебных курсов от Microsoft. Сегодня – уже четвертая часть, и в ней мы расскажем про самые свежие курсы по облаку Azure. Кстати! Все курсы бесплатные (вы даже сможете попробовать плат...

Самые редкие и самые дорогие языки программирования Принято считать, что языки программирования, такие как Rust, Erlang, Dart, а также некоторые другие являются самыми редкими в мире IT. Поскольку я подбираю IT специалистов для компаний, постоянно контактируя с айтишниками и работодателями, я решила провести личное исследован...

Что и как украинцы чаще всего заказывали в Glovo в первый год работы сервиса [инфографика] Вчера сервис Glovo отпраздновал первую годовщину работы в Украине, открыв новый спейс для подключенных к платформе курьеров и огласив интересные детали работы на украинском рынке. В частности, генеральный менеджер компании Glovo в Украине Дмитрий Расновский рассказал, что да...

[Из песочницы] Жизнь и успех Ларри Эллисона, основателя Oracle Привет, Хабр! Предлагаю перевод статьи «The life and rise of billionaire Oracle founder and international playboy Larry Ellison, who dropped out of college twice and has a $68 billion fortune». Ларри Эллисон, 74-летний соучредитель Oracle, является одним из самых интересн...

Samsung Galaxy Note10 получил первое обновление Сегодня пользователи смартфона Samsung Galaxy Note10 обнаружили небольшое обновление программного обеспечения под номером версии 2.1.30.12. Размер обновления составляет всего 33,16 МБ, главным его назначение является улучшение качества и скорости работы персонального по...

DeepPavlov для разработчиков: #2 настройка и деплоймент Всем привет! В первой статье из нашего цикла мы узнали, что такое DeepPavlov, какие модели библиотеки готовы к использованию без предварительного обучения и как запустить REST серверы с ними. Перед тем, как приступить к обучению моделей, мы расскажем о различных возможностях...

Станет ли Apple TV+ серьезным конкурентом существующим сервисам? Станет ли Apple TV+ нашим будущим или будет обычным проходным сервисом? Весной этого года Apple рассказала о новом сервисе, который получил название Apple TV+. На прошедшей десятого сентября презентации, нам назвали конкретную дату появления этого сервиса в наших домах ̵...

Работаем с USB Custom HID на Android В современных Android — приложениях для взаимодействия с другими устройствами чаще всего используются беспроводные протоколы передачи данных, как например Bluetooth. В годы, когда часть устройств имеют беспроводную зарядку, сложно представить себе связку Android устройства ...

Raspberry Pi + CentOS = Wi-Fi Hotspot (или малиновый роутер в красной шляпе) В Интернете огромное количество информации по созданию Wi-Fi точек доступа на базе одноплатного ПК Raspberry. Как правило, подразумевается использование родной для «малинки» операционной системы — Raspbian. Являясь адептом RPM-based систем, я не мог пройти мимо этого малень...

Как стать оператором децентрализованного интернет-провайдера «Medium» и не сойти с ума. Часть 1 Добрый день, Сообщество! Меня зовут Михаил Подивилов. Я являюсь основателем общественной организации «Medium». Этой публикацией я начинаю серию статей, посвящённых настройке сетевого оборудования для соблюдения аутентичности при становлении оператором децентрализованного и...

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

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

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

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

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

[Перевод] Основы движков JavaScript: оптимизация прототипов. Часть 2 Добрый день, друзья! Курс «Безопасность информационных систем» запущен, в связи с этим делимся с вами завершающей частью статьи «Основы движков JavaScript: оптимизация прототипов», первую часть которой можно прочитать тут. Также напоминаем о том, что нынешняя публикация явл...

[Перевод] Продвинутые структуры данных. Часть первая: Направленный ациклический граф Всем привет! Уже на следующей неделе стартуют занятия в новой группе курса «Алгоритмы для разработчиков». В связи с этим, делимся с вами переводом совсем небольшого, но довольно интересного материала. Я хотел начать эту серию статей со структуры данных, с которой все мы к...

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

[Перевод] 10 Git-команд, которые стоит знать разработчику В этой статье мы обсудим разные Git-команды, которые могут оказаться полезными для разработчика или специалиста по Big Data. Вы узнаете, как проверять, удалять и приводить код в порядок. А еще рассмотрим способы выхода из Vim и экономию времени с помощью псевдонимов Bash ...

А вы уже знаете, где можно скачать Counter Strike 1.6 совершенно бесплатно и без регистрации Как вы отдыхаете и расслабляетесь? Кто-то ходит в кино, кто-то является частым посетителем местных баров и пабов, кто-то любит ночные клубы. А как насчет компьютерных игр? Компьютерные игры – это один из способов отдыха и времяпрепровождения. Они помогают расслабиться и отдо...

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

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

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

Как могли бы выглядеть регистры в 1С при наличии ООП В 1С одним из ключевых элементов системы являются регистры. Этот термин имеет свой аналог в английском языке — ledger. Он первоначально появился в бухгалтерской практике, но со временем его логика начала использоваться и в других сферах. В отличие от 1С, где регистры явля...

Большинство российских компаний готовы к миграции в облако Такие данные содержатся в комплексном исследовании "Востребованность облачных технологий в российском бизнесе", впервые проведенном на российском рынке компанией SberCloud и Аналитическим центром НАФИ. Среди компаний малого и среднего бизнеса о своей готовности соо...

[Из песочницы] 6 способов угодить в ад готовых решений и спустить миллион-другой Привет, сейчас я расскажу тебе, что будет с перспективным проектом, если с самого начала обратиться к готовым решениям а-ля Wordpress, Open Cart и любым CMS, думая, что это и есть MVP. Основываться буду на трёх-месячном опыте работы на одном из проектов, в GitHub которого ...

Что такое арбитраж трафика В современном мире очень много доступных способов заработка, которые не требуют особых затрат и для их реализации даже не обязательно выходить из дома. Главное условие – наличие компьютера и доступа к сети Интернет. Одним из таких способов является арбитраж трафика. Это инте...

SNA Hackathon 2019: усложняем архитектуру — упрощаем признаки В этой статье я расскажу про свое решение текстовой части задачи SNA Hackathon 2019. Какие-то из предложенных идей будут полезны участникам очной части хакатона, которая пройдет в московском офисе Mail.ru Group с 30 марта по 1 апреля. Кроме того, этот рассказ может быть ин...

8 приемов работы с CSS: параллакс, «липкий» футер и другие Эта статья о приемах работы в CSS, узнав о которых, я восклицал: «Агаааа!». Надеюсь, вы тоже сделаете пару открытий. CSS — специфическая технология. На первый взгляд она кажется очень простой. Но некоторые эффекты, которые в теории кажутся простыми, не являются таковыми...

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

Слух: Xbox Scarlett может получить веб-камеру для стримеров По информации портала Gizmodo, будущая игровая консоль Microsoft, разрабатывающаяся под кодовым названием Project Scarlett, может получить веб-камеру «на стероидах». Это будет не новый Kinect, хотя, вероятно, некоторые технологии от него будут использоваться и в новом устро...

[Из песочницы] Знакомство с Microsoft Azure DevTest Labs Всем привет! В статье пойдет речь об облачном сервисе Microsoft Azure DevTest Labs. Данный сервис позволяет решить вопрос настройки среды для разработки, тестирования и лабораторных занятий. Тема лабораторных от меня далека, поэтому я расскажу про настройку сред для разра...

Аудит безопасности облачной платформы MCS SkyShip Dusk by SeerLight Построение любого сервиса обязательно включает в себя постоянную работу над безопасностью. Безопасность — это непрерывный процесс, который включает в себя постоянный анализ и улучшение защищенности продукта, мониторинг новостей про уязвимости и мн...

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

Еще один вариант среды для разработки WordPress (docker, wp-cli) Есть официальные образы для развертывания WordPress и использования wp-cli. Но при их совместном использовании мне приходилось расшаривать всю папку WordPress и хотелось, чтобы было больше возможностей для кастомизации установки. Очень хотелось после запуска контейнера видет...

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

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

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

Компас команды Привет! Меня зовут Маша, я Scrum Master в ivi. Работаю с командами биллинга и веб-разработки и помогаю ребятам организовывать рабочие процессы так, чтобы не только эффективно достигать целей, которые ставит бизнес, но и получать удовольствие от того, что ты делаешь. В своих ...

[Перевод] Моки, стабы и шпионы в Spock Framework Spock предоставляет 3 мощных (но разных по сути) инструмента, упрощающих написание тестов: Mock, Stub и Spy. Довольно часто коду, который нужно протестировать, требуется взаимодействовать с внешними модулями, называющимися зависимостями (в оригинальной статье используется т...

[Перевод] Что я узнал про оптимизацию в Python Всем привет. Сегодня хотим поделиться еще одним переводом подготовленным в преддверии запуска курса «Разработчик Python». Поехали! Я использовал Python чаще, чем любой другой язык программирования в последние 4-5 лет. Python – преобладающий язык для билдов под Firefox, те...

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

Атаки и безопасность современных Windows систем В данной статье будут представлены видеозаписи методов атак и защиты современных Windows систем: различные вектора и способы перехвата учетных записей, атаки контроллера домена, использование IPv6 и многое другое. Читать дальше →

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

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

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

Garbage Collector. Полный курс + перевод из BOTR В данной статье вы встретите сразу два источника информации: Полный курс по работе Garbage Collector на русском языке: CLRium #6 (текущий семинар здесь) Перевод статьи из BOTR "Устройство сборщика мусора" от Маони Стевенс. Читать дальше →

«Почта России» в шоке от безумного поступка онлайн-магазина AliExpress На российской территории можно встретить несколько тысяч различных интернет-магазинов, в которых продают самые разные товары. Тем не менее, как показывает практика, самым популярным и известным в стране онлайн-магазином является AliExpres, где за один только 2018 Сообщение ...

WIBAttack. Так ли страшна новая уязвимость SIM-карт [По публичной информации], 21 сентября Ginno Security Lab опубликовала информацию об уязвимости, схожей с Simjacker, которая позволяет с помощью одной вредоносной SMS захватить контроль над мобильными функциями атакованного устройства и тем самым получить возможность отправ...

[Перевод] Приёмы в проектировании пользовательского интерфейса, которые сэкономят время В переводе этой статьи автор приводят ряд советов и приёмов, которые упростят жизнь при проектировании дизайна пользовательского интерфейса. В статье даны сведения о полезных и экономящих время возможностях работы таких программ как Sketch, Adobe Illustrator, Figma, Adobe XD...

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

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

[Из песочницы] Три Больших Лжи о JavaScript Привет, Хабр! Представляю вашему вниманию мой перевод статьи "The Three Big Lies About JavaScript" автора Richard Kenneth. Данная статья была написана в мае 2016 года, однако ее актуальность, на мой взгляд, не исчезла. Я начинающий программист, поэтому возможны оши...

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

9 из 10 утечек данных из облаков происходят из-за человеческого фактора Таковы данные исследования "Лаборатории Касперского".Использование облачной IT-инфраструктуры позволяет компаниям сделать бизнес-процессы более гибкими, сократить капитальные затраты и повысить скорость предоставления IT-услуг, но у организаций возникают опасения н...

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

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

Шифр ускорением: изучаем акселерометр Android-устройства на примере задания NeoQUEST-2019 Акселерометр — он же G-сенсор — является одним из самых распространенных датчиков на сегодня. Встретить его можно практически в каждом современном гаджете. Акселерометр выполняет довольно простую задачу — измеряет ускорение устройства. Давайте посмотрим, как он это делает ...

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

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

[Перевод] Конференция DEFCON 19. Anonymous и мы. Часть 2 Конференция DEFCON 19. Anonymous и мы. Часть 1 Джошуа Корман: вы знаете, я не сторонник самосуда, но я не думаю, что подобный подход должен исчезнуть. Это важный вопрос. Если мы думаем, что наша отрасль дисфункциональна и не уверены, что будем услышаны, тогда давайте примен...

[Перевод] Знакомство с Тестированием в Python. Ч. 3 Друзья, у нас для вас отличные новости. Во-первых на улице наконец-то светит солнышко, а это значит, что весна начинает полноправно вступать в свои права. Вторая новость более профильная — уже 20 марта стартует первое занятие в новом потоке по курсу «Разработчик Python», в с...

Архитектура компьютера. Цифровой логический уровень Компьютер — это машина, которая может выполнять вычисления через исполнение примитивных операций. Она может понимать только два сигнала, которые принимаются за 0 и 1. Организация архитектур машин представляется как ряд уровней, каждый из которых надстраивается над нижележа...

20 продакт-менеджеров и самая многомерно-матричная структура из всех. Разговор со Skyeng Последнее время продуктовая команда «Хабра» стала активно посещать конференции. И мы заметили одну интересную вещь — почти на каждой конференции есть спикеры от Skyeng, и почти всегда их доклады оказываются самыми интересными. Оказалось, у этого две причины. Первая — внут...

Как реализовать контекстные меню (Context Menu) в iOS 13 Всем привет, меня зовут Денис, мы разрабатываем сервис по аналитике подписок iOS-приложений – Apphud. На WWDC 2019 Apple представила новый способ взаимодействия с интерфейсом вашего приложения: контекстные меню. Они выглядят так: В этой статье мы рассмотрим некоторые тонкос...

Медовая арифметика: сложение и вычитание в исполнении пчел Больше не всегда значит лучше. Этой фразой можно четко описать соотношение умственных способностей существа с размером его мозга. Рекордсменом в мире животных является кашалот, чей мозг весит порядка 9 кг. Среди сухопутных существ этот титул заслужил индийский слон с 5 кг ...

[Перевод] Перестаньте использовать DateTime Специально для студентов курса «Backend разработчик на PHP» подготовили перевод интересной статьи о сайд-эффекте популярного инструмента. Работа с датами и временем в PHP порой раздражает, поскольку приводит к неожиданным багам в коде: $startedAt = new DateTime('2019...

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

Julia и метод покоординатного спуска Метод покоординатного спуска является одним из простейших методов многомерной оптимизации и неплохо справляется с поиском локального минимума функций с относительно гладким рельефом, поэтому знакомство с методами оптимизации лучше начинать именно с него. Поиск экстремума ве...

Мониторинг окружающей среды в серверном помещении (Bolid + Zabbix) Наверное самым простым способом для ИТ-специалиста при решении задачи мониторинга окружающей среды в серверном помещении будет использование специализированных контроллеров с выдачей данных по SNMP (например, NetBotz или NetPing). Но для тех кто не боится трудностей и хочет ...

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

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

[Перевод] Преимущества и недостатки HugePages Перевод статьи подготовлен для студентов курса «Администратор Linux». Ранее я рассказал о том, как проверить и включить использование Hugepages в Linux. Эта статья будет полезна, только если у вас действительно есть, где использовать Hugepages. Я встречал множество людей, ...

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

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

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

Несколько штрихов о работе с идентификаторами bigint в R Каждый раз, когда начинается разговор об использовании различных БД в качестве источника данных, появляется тема идентификаторов записей, объектов или чего-либо иного. Иногда согласование протокола обмена может рассматриваться участниками несколько месяцев. int-bigint-guid, ...

Tic Tac Toe, часть 1 В статье "Сравнение: Svelte и React" я попробовал повторить разработку игры Tic Tac Toe. Там я выполнил только первую часть исходного туториала для React'а без поддержки истории ходов. В этой статье мы начнем разработку этой игры с применением фреймворка Svelte с поддержкой ...

Как мы нашли критичную уязвимость AspNetCore.Mvc и перешли на собственную сериализацию Привет, Хабр! В этой статье мы хотим поделиться нашим опытом в оптимизации производительности и исследовании особенностей AspNetCore.Mvc. Предыстория Несколько лет назад на одном из наших нагруженных сервисов мы заметили существенное потребление ресурсов CPU. Это выгляде...

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

5 вещей, которые чаще всего не понимают новички в JavaScript Всем привет! В конце сентября в OTUS стартует новый поток курса «Fullstack разработчик JavaScript». В преддверии начала занятий хотим поделиться с вами авторской статьей, подготовленной специально для студентов курса. Автор статьи: Павел Якупов Превью. Хочу сразу отмети...

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

[Из песочницы] Как я не стал программистом в 35 лет С самого начала сентября широким потоком хлынули на Хабр публикации об успешном успехе на тему «Детство программиста», «Как стать программистом после N лет», «Как я ушёл в IT из другой профессии», «Путь в программирование» и так далее. Подобные статьи пишут постоянно, но во...

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

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

Как загрузить музыку и видео с YouTube бесплатно, без СМС и регистрации Популярный видеохостинг YouTube уже давно предоставляет не только услуги по просмотру видеороликов, но и позволяет слушать музыкальные композиции. Благодаря функции YouTube Music Premium вы можете загружать и слушать музыку без рекламы в фоновом режиме. Это, конечно, замеча...

[Из песочницы] PHP парсинг от А до Я. Грабли и возможные решения Поскольку на Хабре после лавины публикаций «N в 30 строк» в 2013-м г. почти не публикуются материалы по программированию, то скажу, что этот материал для домохозяек, желающих научиться программированию, тестировщиков и просто неравнодушных людей. В современном мире микросе...

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

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

[Из песочницы] Топ 20 ошибок при работе с многопоточностью на С++ и способы избежать их Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Top 20 C++ multithreading mistakes and how to avoid them» автора Deb Haldar. Сцена из фильма «Петля времени (2012) Многопоточность— одна из наиболее сложных областей в программировании, особенно в C++. За годы разраб...

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

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

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

Nomad создал беспроводную зарядку очень похожую на AirPower Компания Nomad, занимающаяся производством различных аксессуаров, на днях выпустила новую беспроводную зарядную станцию под названием Base Station Pro. Главной особенностью новинки является то, что она позволяет заряжать три гаджета одновременно. Причем их можно располагать ...

Влияние Transparent Huge Pages на производительность системы Статья публикуется от имени Ахальцева Иоанна, Jiga Tinkoff.ru сегодня — это не просто банк, это IT-компания. Она предоставляет не только банковские услуги, но ещё выстраивает экосистему вокруг них. Мы в Tinkoff.ru заключаем партнерство с различными сервисами для повышения к...

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

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

Боль и слёзы в Svelte 3 Вместо предисловия Статья будет полезна тем, кто так-же как и Мы решил попробовать Svelte в живом проекте. В нашу небольшую компанию пришёл заказ на разработку веб-админки для сервиса с бекэндом на Mongodb Stitch. В последние пару лет frontend Мы пишем на React или Vue (в за...

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

[Из песочницы] Stadia — революция в игровой индустрии? Для тех, кто в танке: 19-го марта 2019 года, Google анонсировала стриминговый сервис Stadia. Сервис, который позволит играть во все игры, по сути, прямо в браузере. С любого устройства, будь то планшет, смартфон, TV-приставка, ПК, тостер, калькулятор, холодильник. В этой ...

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

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

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

[Из песочницы] Как я переписывал поисковик авиабилетов с PHP на NodeJS Привет. Меня зовут Андрей, я студент-магистрант в одном из технических ВУЗов Москвы и по совместительству очень скромный начинающий предприниматель и разработчик. В этой статье я решил поделиться своим опытом перехода от PHP (который когда-то мне нравился из-за своей простот...

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

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

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

Data Version Control (DVC): версионирование данных и воспроизводимость экспериментов Эта статья — своеобразный мастер-класс «DVC для автоматизации ML экспериментов и версионирования данных», который прошел 18 июня на митапе ML REPA (Machine Learning REPA: Reproducibility, Experiments and Pipelines Automation) на площадке нашего банка. Тут я расскажу об осо...

Криптография простым языком: разбираем симметричное и асимметричное шифрование на примере сюжета Звездных войн Привет всем читателям Хабра! Не так давно решил разобраться с алгоритмами шифрования и принципами работы электронной подписи. Тема, я считаю, интересная и актуальная. В процессе изучения попробовал несколько библиотек, однако самой удобной с моей точки зрения является библио...

Help Desk за 3 часа. Автоматизация несложных бизнес-процессов в PowerApps, Flow и Teams Всем привет! Мой коллега написал статью по опыту использования различных инструментов О365 для автоматизации небольших бизнес-процессов. Мы взяли за основу кейс по автоматизации HelpDesk на технологиях PowerApps, MS Flow и MS Teams. Подробности под катом. Надеюсь, статья бу...

Magic: The Gathering официально признали самой сложной игрой в мире Magic: The Gathering — это карточная игра, в которой волшебники кастуют заклинания, призывают существ и используют магические объекты, чтобы победить своих противников. В процессе игры два или более игроков собирают по колоде из 60 карт с различными силами. Колоды собираютс...

Основоположники теории распределенных систем в объятьях гидры Это Лесли Лэмпорт — автор основополагающих работ в распределённых вычислениях, а ещё вы его можете знать по буквам La в слове LaTeX — «Lamport TeX». Это он впервые, ещё в 1979 году, ввёл понятие последовательной согласованности, а его статья «How to Make a Multiprocessor Com...

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

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

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

Flutter: локализация приложений средствами Android Studio Про локализацию (интернационализацию) приложений Flutter написано уже достаточно много. Официальная документация довольно подробно останавливается на этом вопросе, кроме этого ряд энтузиастов описывает самые различные подходы. Эта статья не претендует на полноту охвата вопр...

[Перевод] Восемь золотых правил Шнейдермана помогут вам создать лучший интерфейс Восемь золотых правил Шнейдермана помогут вам создать лучший интерфейс Следуйте «Восьми золотым правилам дизайна интерфейса» Бена Шнейдермана, если вы хотите создавать великолепные, производительные и не вызывающие разочарований пользовательские интерфейсы. Apple, Google и...

Добавляем ZigBee устройства в Homebridge используя CC2531 На Хабре уже встречались статьи о том, как подружить ZigBee устройства различных производителей с системами управления умным домом, без использования фирменных хабов, вроде Xiaomi Gateway. Однако, инструкции для homebridge, я не нашел не только на Хабре, но и на других прост...

[Из песочницы] Использование C++ и шаблонов с переменным количеством аргументов при программировании микроконтроллеров ARM с ядром Cortex Mx (на примере STM32F10x) Микроконтроллер ARM Cortex M3 STM32F103c8t6 широко распространен как 32-х битный микроконтроллер для любительских проектов. Как для практически любого микроконтроллера, для него существует SDK, включающая, в том числе и заголовоч...

[Перевод] Smem – Отчеты о распределении памяти между процессами и пользователями в Linux И снова здравствуйте. Друзья, хотим поделиться с вами переводом полезного материала о мониторинге использования памяти в Linux. Данный материал подготовлен специально для студентов курса «Администратор Linux». Управление памятью в вопросах мониторинга ее использования – о...

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

Металлопоиск и… нейросеть Принцип работы импульсного металлодетектора Одним из популярных вариантов конструктивного исполнения устройств для металлопоиска является импульсный (pulse induction (PI)) металлодетектор- неприхотливый и надежный аппарат (хорошая глубина обнаружения, устойчивость к повышенн...

Можно ли спать с включенным телевизором? Всем известно, что есть много вещей, влияющих на вес. Поглощать кучу обработанных высококалорийных продуктов вряд ли поможет вам похудеть к лету, а занятия спортом — вполне. Однако, это еще не все. Новое исследование, опубликованное в JAMA Internal Medicine, показывает очен...

Sony PlayStation 4 сокрушительно в два раза рухнула в цене по всему миру Сейчас на полках магазинов можно встретить сразу несколько различных игровых приставок, выпускаемых самыми разными компаниями, однако самой популярной среди таковых является Sony PlayStation 4, представлена и выпущена которая была еще в 2013 году. С тех Сообщение Sony PlayS...

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

Хакеры могут получить доступ к контактам iPhone SQLite - самые распространенные в мире базы данных. Они доступны в любой операционной системе, персональном компьютере и на мобильном телефоне. Пользователи SQLite - Windows 10, MacOS, iOS, Chrome, Safari, Firefox и Android. Контакты на вашем iPhone, некоторые из сохраненных...

В будущее с интеграцией сервисов Jenkins & Oracle APEX В процессе управления большими объемами данных и их визуализацией мы все чаще сталкиваемся с необходимостью внедрения единого инструмента доступа к управлению функционалом в хранилище. Причем этот инструмент должен быть одинаково удобен и понятен всем сотрудникам подразделен...

ShIoTiny: узлы, связи и события или особенности рисования программ Основные тезисы или о чем эта статья Тема статьи — визуальное программирование ПЛК ShIoTiny для умного дома, описанного тут: ShIoTiny: малая автоматизация, интернет вещей или «за полгода до отпуска». Очень кратко рассмотрены такие понятия, как узлы, связи, события, а такж...

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

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

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

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

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

Что в черном ящике. Обзор методов тестирования биллинга Проверка платных сервисов — один из ключевых инженерных вопросов в тестировании Badoo. Наше приложение интегрировано с 70 платёжными провайдерами в 250 странах мира, и баг хотя бы в одном из них может привести к непредсказуемым последствиям.  В этой статье я расскажу о мето...

Reactor, WebFlux, Kotlin Coroutines, или Асинхронность на простом примере Многие сервисы в современном мире, по большей части, «ничего не делают». Их задачи сводятся к запросам к другим базам/сервисам/кешам и агрегации всех этих данных по различным правилам и разнообразной бизнес-логике. Поэтому неудивительно, что появляются такие языки, как Go...

[Перевод] 6 интересных идей применения дополненной реальности (AR) Прим. пер.: в своей статье, оригинальное название которой: «6 Interesting Augmented Reality Concepts», Ник Бабич собрал ценную подборку идей применения AR, которая будет интересна даже тем, кто никак не связан с разработкой. Среди концепций есть реально работающие продукты,...

[Перевод] C# является языком низкого уровня? Я большой поклонник всего, что делает Фабьен Санглард, мне нравится его блог, и я прочитал обе его книги от корки до корки (о них рассказывали в недавнем подкасте Hansleminutes). Недавно Фабьен написал отличный пост, где расшифровал крошечный рейтрейсер, деобфусцировав код ...

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

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

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

pg_stat_statements + pg_stat_activity + loq_query = pg_ash? В качестве короткого дополнения к статье Попытка создать аналог ASH для PostgreSQL. Задача Необходимо связать историю представлений pg_stat_statemenets, pg_stat_activity. В результате, используя историю планов выполнения из сервисной таблицы log_query, можно получить очень ...

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

Концепция очков дополненной реальности. Моя идеальная AR гарнитура, которая возможна Всем привет! Меня зовут Дядиченко Григорий, и я основатель и CTO студии Foxsys. Недавно мне пришла в голову идея интересная концепция AR очков, которые могут быть нужны пользователю. Многие недооценивают некоторые аспекты с точки зрения удобства использования и пользовательс...

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

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

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

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

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

Две стороны WebView: о быстром запуске проектов и краже персональных данных Привет, Хабр! Меня зовут Евгений, я Full Stack JS разработчик, текущий стек Node.js + React + React Native. В разработке я более 10 лет. В мобильной разработке пробовал разные инструменты от Cordova до React Native. Получив опыт работы с Cardova, я понял, что мне хотелось ...

Как ускорить работу с API на языке R с помощью параллельных вычислений, на примере API Яндекс.Директ (Часть 2) В прошлой статье я рассказал о том, что такое многопоточность, и привёл примеры её реализации на языке R при работе с API Яндекс.Директ с помощью пакетов doSNOW, doParallel и конструкции foreach. Данная статья является продолжением, но может быть рассмотрена как автономное р...

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

Создание моментальных игр на Unity в Google Play Instant Привет! Перевели статью от Google с пошаговой инструкцией создания Instant Game в Google Play для игр на Unity. Google анонсировал сервис Google Play Instant в марте 2018-го; с тех пор гейм-девелоперы могут создавать игры с мгновенным погружением. Существует несколько спо...

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

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

LG запатентовала умные часы с камерой на ремешке Всемирное ведомство интеллектуальной собственности и USPTO (Ведомство США по патентам и товарным знакам), опубликовали патент на новые умные часы с камерой на ремешке от компании LG Electronics. На слитом в сеть патенте, можно также увидеть и варианты использования данной те...

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

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

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

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

О чём говорили на Google I/O 2019: Android 10, AR-приложения и многое другое В этой статье я расскажу о своих впечатлениях от конференции Google I/O 2019, на которой мы с коллегами побывали на днях (и даже “засветились” с нашим приложением в одной из презентаций). Она поможет вам проникнуться атмосферой и, возможно, побудит посмотреть несколько докла...

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

Архитектура Рунета Как знают наши читатели, Qrator.Radar неустанно исследует глобальную связность протокола BGP, равно как и региональную. Так как «Интернет» является сокращением от «interconnected networks» — «взаимосвязанных сетей», наилучшим способом обеспечения высоких качества и скорости ...

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

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

[Перевод] Самые быстрые Python веб-фреймворки в 2019 В 2018 году Python укрепил свои позиции популярности среди программистов и вошел в Top 3 самых популярных языков на github. Все больше и больше людей переходит на светлую сторону…то есть Python. Появилось еще большее количество разработчиков, которые интересуются данным яз...

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

EFORTH для МК-161: Структуры данных Эта статья — окончание цикла статей про eForth на программируемом калькуляторе. Начало здесь: habr.com/ru/post/452398 Команды входного языка «Электроники МК-161» занимают только половину файла eForth0.mkl. Вторую половину занимают таблицы, разработать которые был не меньший...

[Из песочницы] Как я боролся с Shared Element Transition и написал свою первую opensource библиотeку Нет повести печальнее на свете, чем повесть о ViewPager’e и SET’e Хочется предупредить, что автор ‒ новичок андроид, поэтому статья содержит столько технических неточностей, что вас, скорее, нужно предупредить о том, что в статье могут встретиться технически достоверные...

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

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

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

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

Max Patrol 8. Обзор инструмента для управления уязвимостями Рано или поздно, в любой компании, которая задумывается об информационной безопасности, возникает вопрос: «Как своевременно обнаружить уязвимость в защищаемой системе, тем самым предотвратив возможные атаки с её использованием?» Согласитесь, отслеживать в ручном режиме, ка...

[Из песочницы] Знакомство с Sass модулями Привет, Хабр! Представляю вашему вниманию перевод статьи «Introducing Sass Modules» автора Miriam Suzanne. Недавно в Sass появилась функциональность, которая вам знакома по другим языкам: модульная система. Это большой шаг вперед для @import, одной из наиболее часто использ...

Buildbot в примерах Потребовалось мне настроить процесс сборки и доставки на сайт пакетов программ из Git-репозитария. И увидев, ни так давно, тут на Хабре статью по buildbot (ссылка в конце) решил для этого попробовать его и применить. Так как buildbot — это распределённая система, то будет ло...

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

[Из песочницы] Автоматическая авторизация на карте Strava Heatmap Данный пост является ответом на недавнюю аналогичную статью. Попробую рассказать, как можно автоматизировать описанные в ней действия. Читать дальше →

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

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

[Перевод] Фаззинг в стиле 1989 года С наступлением 2019 года хорошо вспомнить прошлое и подумать о будущем. Оглянемся на 30 лет назад и поразмышляем над первыми научными статьями по фаззингу: «Эмпирическое исследование надёжности утилит UNIX» и последующей работой 1995 года «Пересмотр фаззинга» того же автора ...

[Перевод] Новый курс по Python от Microsoft [на английском] Вероятно, самое большое препятствие при изучении любого нового языка программирования — просто знать, с чего начать. Что важно? Что нужно знать, чтобы стать профи? Трудно исследовать документы, когда даже нет уверенности, что читаешь то, что нужно. Возможно, вы присматривае...

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

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

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

Каждому яду — свой антидот. Как спастись или хотя бы попытаться… Всем бойцам РХБЗ (радиохимической и биологической защиты) не посрамившим честь своего ОЗК посвящается... С интересом читая статьи коллеги gjf про самые интересные, самые страшные и самые нестрашные яды испытываю ностальгию :). Потому что любой правильный химик, начиная свой...

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

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

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

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

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

Mattermost. Интеграция с внешними сервисами Выбирая замену, используемой у нас системы обмена сообщениями, наткнулся на описание Mattermost, и решил попробовать. Одним из плюсов, описываемой системы, является простая интеграция со сторонними сервисами, так называемые "хуки" (outgoing и incoming hooks). Вот про настрой...

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

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

Метаматериалы. Ауксетики. Перспективной сферой для применения 3D-принтеров является создание метаматериалов. Метаматериалы – это материалы, свойства которых в большей степени определяются искусственно созданной структурой и в меньшей степени химическим составом или структурой молекул. До появления ад...

Google в будущем сможет обновлять любые Android-смартфоны? Фрагментация является одной из главных проблем Android, однако всё не так плохо. Согласно статистике, благодаря Project Treble производителям удалось серьёзно ускорить процесс обновления смартфонов, но этого недостаточно. Например, владельцы смартфонов Samsung ожидают по 6-...

СОРМ расшифровывает HTTPS трафик к Mail.ru и ICQ На конференции Chaos Constructions 2019 Леонид darkk Евдокимов показал любопытный доклад про случайно обнаруженные в открытом доступе панели управления СОРМ. Доклад можно посмотреть здесь: darkk.net.ru/2019/cc В двух словах: панели со статистикой работы программно-аппаратн...

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

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

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

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

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

Перенос веб-сервиса на Яндекс.Облако с AWS Всем привет! Меня зовут Виталий Давыдов, я основатель компании Poteha Labs. В конце прошлого года Яндекс запустил новый продукт для разработчиков — Яндекс.Облако, который предоставляет вычислительные мощности и сопутствующие сервисы для обработки и хранения данных. В этой с...

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

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

[Из песочницы] Make it True — Разработка логической игры на Unity Хочу поделиться процессом разработки простой мобильной игры силами двух разработчиков и художника. Данная статья в большей мере состоит описания технической реализации. Осторожно, много текста! Статья не являются руководством или уроком, хотя надеюсь что читатели смогут в...

Terms of service: 99% пользователей их просто не понимают Источник: Shutterstock Наверное, среди читателей Хабра есть те, кто детально знакомится с условиями предоставления услуг различных сервисов и приложений. Большинство просто ставит галочку там, где это требуется, и начинает работу. Кто-то может назвать это неправильным, но,...

Планировщик ресурсов в HPE InfoSight HPE InfoSight – облачный сервис НРЕ, позволяющий проактивно выявлять возможные проблемы с надёжностью и с производительностью массивов HPE Nimble и HPE 3PAR. При этом сервис может также сразу рекомендовать и способы устранения возможных проблем, причём в ряде случаев устра...

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

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

[Перевод] Thinking with Portals: создаём порталы в Unreal Engine 4 В этой статье я расскажу, как создавать порталы в Unreal Engine 4. Я не нашёл никаких источников, подробно описывающих такую систему (наблюдение сквозь порталы и проход через них), поэтому решил написать собственную. Что такое портал? Давайте начнём с примеров и объяснения...

[recovery mode] 10 способов защиты интеллектуальной собственности IT-стартапа Проблема защиты интеллектуальной собственности (далее — ИС) часто является одной из наиболее важных, с которой сталкивается любой технологический стартап. Это тесно связано с процессом разработки продукта, наймом квалифицированных сотрудников, привлечением капитала и многи...

Понимание Q-learning, проблема «Прогулка по скале» Это перевод статьи Understanding Q-Learning, the Cliff Walking problem Lucas Vazquez В последнем посте мы представили проблему «Прогулка по скале» и остановились на страшном алгоритме, который не имел смысла. На этот раз мы раскроем секреты этого серого ящика и увидим, чт...

В очередной раз о НОД, алгоритме Евклида и немного об истории алгоритмов вообще. Конечно, с примерами на Swift Алгоритмы – одна из центральных тем в программировании, они повсюду (особенно на собеседованиях, ха-ха). (Разве можно обойтись в таком посте без «баяна»?) Одним из самых известных является так называемый алгоритм Евклида – пожалуй, самый распространенный способ нахождения...

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

Приложение для знакомств RusDate: только проверенные люди Каждый мечтает встретить свою половинку, с которой проживет долгую и счастливую жизнь. Если же в окружении нет достойного кандидата, воспользуйтесь возможностями инновационных технологий. Такой является приложение знакомств RusDate.

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

7 бесплатных курсов для разработчиков от Microsoft Привет, Хабр! Сегодня мы начинаем серию статей, в которую войдет 5 подборок бесплатных обучающих курсов от компании Microsoft. В этой статье у нас самые крутые курсы для разработчиков, которые сильнее всего нравятся программистам. Кстати! Все курсы бесплатные (вы даже смо...

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

Как быстро посмотреть интересные предупреждения, которые выдает анализатор PVS-Studio для C и C++ кода? Время от времени программисты, которые начинают знакомиться с анализатором кода PVS-Studio, спрашивают: «Есть ли список предупреждений, которые точно указывают на ошибки?» Такого списка нет по той причине, что неинтересные (ложные) предупреждения в одном проекте, в другом о...

Нюансы работы инструментов Target Length и Tuning Meter в PADS Professional/Xpedition При трассировке сложных печатных плат, с использованием высокоскоростных интерфейсов, инженерам необходимо четко контролировать длину критических сигналов, ведь на высоких частотах каждый неучтенный миллиметр проводника будет сильно влиять на целостность сигнала, а значит ...

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

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

Kubespray-as-a-Service — добавляем Kubernetes к любому облаку Вам нужен Kubernetes, а у вашего облачного провайдера такой услуги нет? Мы используем несколько провайдеров и ни у одного из них нет Kubernetes-as-a-Service. Wigin это очень простой в использовании веб-сервис с UI, который может быстро и просто развернуть кластер Kubernete...

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

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

[Перевод] 7 шагов к использованию Room. Пошаговое руководство по миграции приложения на Room Room — это библиотека, которая является частью архитектурных компонентов Android. Она облегчает работу с объектами SQLiteDatabase в приложении, уменьшая объём стандартного кода и проверяя SQL-запросы во время компиляции. У вас уже есть Android-проект, который использует SQL...

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

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

[Перевод] Ищем утечки памяти в приложениях на Python Ola! мы продолжаем серию публикаций приуроченных к запуску курса «Web-разработчик на Python» и прямо сейчас делимся с вами переводом еще одной интересной статьи. В Zendesk мы используем Python для создания продуктов с машинным обучением. В приложениях с использованием машин...

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

NURBS моделирование в Rhino 3D и T-Spline Существует, как минимум, два подхода к созданию 3D моделей. В одном из них, наиболее популярном, объекты состоят из множества полигонов. В другом (freeform surface modelling) — из NURBS поверхностей, которые задаются кривыми (сплайнами). Каждый из подходов имеет свои преиму...

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

Дети, математика и R Нынешнее образование в школе все более и более редуцируется. А в оставшейся части акцент все более и более ставится на внешний эффект. «Проектная работа», презентации, вау-эффекты и пр. мишура. Причем зачастую непонятно, кому раздают все эти упражнения — ребенку или родителя...

[Перевод] Если вы не пишете программу, не используйте язык программирования Лесли Лэмпорт — автор основополагающих работ в распределённых вычислениях, а ещё вы его можете знать по буквам La в слове LaTeX — «Lamport TeX». Это он впервые, ещё в 1979 году, ввёл понятие последовательной согласованности, а его статья «How to Make a Multiprocessor Comput...

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

ScrumBut в команде аналитиков: перед взлётом Привет, Хабр! Меня зовут Женя. Я системный аналитик компании «НОРБИТ» и начинающий Scrum-мастер. Я давно присматривалась к Scrum с целью изучить, попробовать и оценить его возможности в нашей команде аналитиков. И вот, после легкого пинка воодушевляющего разговора с РП я пон...

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

Пятерка новых Android-приложений и игр, которые вам стоит попробовать На просторах Google Play Store имеется несколько десятков тысяч приложений и игр для самых разных категорий пользователей. И ежедневно выходят новые программы. Среди них встречаются как весьма интересные приложения, так и всякий «мусор», не достойный вашего вниман...

[Перевод] Процедурные паттерны, которые можно использовать с тайловыми картами Процедурная генерация используется для повышения вариабельности игр. Среди известных проектов можно упомянуть Minecraft, Enter the Gungeon и Descenders. В этом посте я объясню некоторые из алгоритмов, которые можно применять при работе с системой Tilemap, появившейся как 2D-...

[Из песочницы] Драйвер шагового двигателя. Тестируем микросхему L9110 Откуда «ножки» растут В настоящее время стали доступны и приобрели популярность различные станки с программным управлением. Это лазерные и фрезерные резчики и гравёры. А так же 3D принтеры. Все эти станки имеют один общий узел — шаговый двигатель. И этому двигателю нужен др...

Разработан препарат для «очистки» нейронов головного мозга от токсинов Накопление белка в головном мозге — одна из основных причин развития болезни Альцгеймера Как сообщает редакция издания Sciencedaily, группа нейробиологов из Медицинского центра Джорджтаунского университета разработала и даже уже успешно протестировала лекарственное сре...

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

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

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

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

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

Как написать вредное API Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. Всем привет! Я работаю тимлидом команды Integration Development в сервисе онлайн-бронирования отелей Ostrovok.ru и сегодня хотел бы поделиться своим опытом работы с ра...

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

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

[Перевод] Сравнение потребления памяти различных GUI тулкитов Всем привет! Наша команда разрабатывает IDE для работы с API TestMace. В одной из наших предыдущих статей читатели указывали на непомерно большое потребление памяти electron-приложений. Что ж, настало время цифр :) В данной статье автор оценивает потребление памяти одноокон...

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

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

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

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

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

Техподдержка 3CX отвечает — 5 правил безопасности IP-АТС Взломы АТС 3CX, которые приводят к серьезным последствиям, случаются достаточно редко. Тем не менее, наши клиенты иногда становятся жертвами мошенников. Как показала практика, в основном это связано или с неверными настройками системы, или с использованием устаревшей версии ...

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

Представлен интересный концепт iMac с Face ID и мощной аудиосистемой На днях промышленный дизайнер Филипп Гулкасиян поделился весьма любопытным концептом нового яблочного моноблока. Отличительной особенностью этой работы является большое количество изменений, произошедших с iMac. Но при этом концепт не выглядит слишком фантастично. Есть шансы...

Xiaomi Redmi 8 и Redmi Note 8 повергли в шок всех покупателей в мире Чем дальше в будущее, тем чаще и активнее люди по всему миру используют различные смартфоны, находя такие электронные устройства максимально удобными для решения самых разных повседневных задач. Подавляющее большинство покупателей выбирает недорогие модели телефонов, как Со...

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

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

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

Робо-футболист от начинающих. Соревнования в МФТИ. Android & Arduino & Bluetooth Данная статья является полу-сиквелом к работе Love, Death and Robots «Машинка на Arduino, управляемая Android-устройством по Bluetooth, — полный цикл», состоящей из двух частей (раз, два). Вещи, описанные там, были немного доработаны-переделаны, а сам робот из ездящей машинк...

[Из песочницы] Обзор сервисов SMS-рассылок: популярные сервисы Онлайн-сервисы по отправке sms-рассылок, e-mail-рассылок, а также рассылок по популярным мессенджерам заметно упрощают работу по информированию клиентов и заказчиков о важных событиях компании. Интернет-платформы по отправке смс-рассылок стали незаменимым инструментом рабо...

Новый смартфон от Asus "украл" главную фишку iPad Pro Дата следующего анонса Asus давно не является секретом — компания давно объявила, что 23 июля она покажет свой новый игровой смартфон. Asus ROG Phone 2 успел засветиться во всех возможных бенчмарках, тестах и рендерах. Но сегодня стало известно о еще одной интересной особенн...

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

Сколько раз встретит Новый Год экипаж МКС? Работа на Международной Космической Станции — это не только напряженные дежурства, эксперименты и полные опасностей выходы в открытый космос. Экипажу станции разрешается отмечать и различные праздники в соответствии с культурой и предпочтениями. При этом одним из самы...

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

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

[Из песочницы] Как в новом году забыть про бумажные визитки Аннотация: в статье сделан обзор современных технологий и мобильных приложений под android для обмена контактами. В поездках, на конференциях и других мероприятиях мы часто встречаем новых людей. Обычно при обмене контактами мы называем свое имя, диктуем номер телефона, em...

Системная плата Asus ROG Rampage VI Extreme Encore типоразмера EATX рассчитана на процессоры в исполнении LGA 2066 Ассортимент Asus пополнила системная плата ROG Rampage VI Extreme Encore на чипсете Intel X299, рассчитанная на процессоры в исполнении LGA 2066. Она сменяет модель ROG Rampage VI Extreme, оставаясь на  одну ступеньку ниже модели Extreme Omega. Сохранив типоразмер ...

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

Только 50% потребителей доверяют информации о компаниях в поисковых системах Совместное исследование Forbes Insights и Yext выяснило, как потребители относятся к информации о компаниях в различных каналах. Согласно полученным результатам, только 50% пользователей доверяют тем сведениям, которые они находят в результатах поиска. Между тем поисковые си...

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

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

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

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

MU-MIMO: один из алгоритмов реализации Предисловие В качестве дополнения к моей недавней статье хотелось бы также поговорить о теме MU (Multi User) MIMO. Есть у мною уже упомянутого профессора Хаардта одна очень известная статья, где он вместе со своими коллегами предлагает алгоритм разделения пользователей по ни...

Универсальный пул У нас есть ArrayPool для переиспользования массивов. Работает это так: взяли массив определенной длинны что то с ним поделали и положили обратно. Нужно это для больших объектов которые по логике программы долго не должны храниться. В предыдущей статье описана эта проблема. ...

Google Maps не работают с ключевой функцией Google Pixel 4 Google Pixel 4 — смартфон, состоящий целиком из ограничений Проблемы совместимости на Android – дело настолько обычное и тривиальное, что этому могут удивляться только люди со стороны. Поэтому, когда выяснилось, что с новой системой распознавания лиц в Pixel 4 работает...

Дата презентации Sony PlayStation 5 повергла всех в шок В настоящее время на рынке можно встретить несколько моделей игровых приставок, но все они являются уже устаревшими. Одной из таких является PS4, для которой за более чем пять лет ее существования было выпущено более тысячи Сообщение Дата презентации Sony PlayStation 5 пове...

[Из песочницы] IT рекрутинг. В поисках баланса процесс/результат 1. Стратегическое виденье Особенностью и ценностью продуктовой компании, основной ее миссией и задачей, является удовлетворенность клиентов, их вовлеченность, и лояльность к бренду. Естественно, через производимый компанией продукт. Таким образом, глобальную цель компании мо...

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

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

За всё ответишь! Consumer Driven Contracts глазами разработчика В этой статье мы расскажем про проблемы, которые решает Consumer Driven Contracts, покажем как это применять на примере Pact с Node.js и Spring Boot. И расскажем про ограничения этого подхода. Проблематика При тестировании продуктов часто используют сценарные тесты, в кот...

[Перевод] MotionLayout: анимации лучше, кода — меньше Google продолжает улучшать нашу жизнь, выпуская новые удобные библиотеки и API. Среди которых оказался и новый MotionLayout. Учитывая обилие анимаций в наших приложениях, мой коллега Cedric Holtz сразу же реализовал важнейшую анимацию нашего приложения — голосование в знако...

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

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

[Из песочницы] Особенности уплаты налогов самозанятыми IT-фрилансерами Решил попробовать новый налоговый режим и озадачился порядком расчета и уплаты налогов при работе через фриланс биржу: Кто будет являться моим контрагентом — биржа или заказчик (4% или 6% налог соответственно)? Налоговой базой является сумма полученная биржей от заказчика ...

Краткий путеводитель по математике для иностранцев О чем это А как можно на четвёртом десятке и с аверсией к алгебре наверстать требуемый материал первых курсов университета? Безумству храбрых поем мы песню!Целевой аудиторией Путеводителя являются те, кто внезапно заинтересовался математикой или чувствует потребность повыс...

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

[Перевод] Знакомство с HealthKit В этой статье про HealthKit вы узнаете, как запрашивать разрешение на доступ к данным HealthKit, а также считывать и записывать данные в центральный репозиторий HealthKit. В статье используется Swift 4, iOS 11, Xcode 9 версии. HealthKit — это API, которое было представлено...

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

Интервью с Артуром Хачуяном: как вычислить миллиардера в социальных сетях? Основатель Tazeros Global Systems Артур Хачуян рассказал о сборе данных в социальных сетях и как правильно составлять анкету в профиле, чтобы познакомиться в них с миллиардерами? Студия, где записывалось интервью, находится на высоте 332 метра. Вообще, в «Башне Федерация» на...

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

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

2. Check Point Getting Started R80.20. Архитектура решения Добро пожаловать на второй урок! На этот раз мы поговорим об архитектурных особенностях решений Check Point. Это очень важный урок, особенно для тех, кто впервые знакомится с «чекпоинтом». В целом, данный урок будет очень похож на одну из наших предыдущих статей "Check Poi...

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

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

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

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

PVS-Studio и Bug Bounties on Free and Open Source Software Европейский союз стартовал в январе очередную большую охоту за ошибками в открытых программных проектах. Суммарный призовой фонд составляет около 850 тысяч евро. А теперь даём подсказу. Одним из способов поиска ошибок в исходном коде программ является использование статическ...

[Перевод] Как CSS Grid меняет представление о структурировании контента Каждый, кто хотя бы немного занимался созданием веб-сайтов, знает, что теги <div> — являются важным строительным блоком для контроля над макетом. HTML5 представил новые семантические элементы, чтобы помочь в этом. И хотя они являются фантастическим дополнением к языку...

3D-напечатанная бионическая поджелудочная железа Исследователи из Фонда развития науки в Польше впервые 3D-напечатали бионическую поджелудочную железу с кровеносными сосудами. Однажды она может быть использована для лечения диабета. Уникальные методы лечения диабета 415 миллионов человек в мире страдают диабетом. Это знач...

Quester — Платформа для создания и прохождения квестов (Beta) Доброго времени суток! Цель статьи — открыть публике платформу, которая разрабатывается в свободное от работы время и одновременно проверить, как данная платформа выдержит хабраэффект. Содержание Описание платформы Что доступно на сегодняшний день Технические детали (мы вс...

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