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

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

Резервное копирование, часть 4: Обзор и тестирование zbackup, restic, borgbackup В данной статье будут рассматриваться программные средства для резервного копирования, которые путем разбиения потока данных на отдельные компоненты (chunks), формируют репозиторий. Компоненты репозитория могут дополнительно сжиматься и шифроваться, а самое главное — при по...

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

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

Будни MT_FREE: несколько историй про влияние сторонних сервисов на работу публичного Wi-Fi Интернет — большая и динамичная среда, где всё друг с другом тем или иным способом связано и может друг на друга влиять. Такая зависимость, когда небольшое изменение в одной части системы может привести к полному изменению другой, в народе называют «эффектом бабочки». Эффе...

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

[Перевод] Сила дженериков в Swift. Часть 2 Добрый день, друзья. Специально для студентов курса «iOS Разработчик. Продвинутый курс» мы подготовили перевод второй части статьи «Сила дженериков в Swift». Связанные типы, условия where, сабскрипты и прочее… В статье «Сила дженериков в Swift. Часть 1» описывались gene...

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

[Из песочницы] Создание Google пользователей из PowerShell через API Привет! В этой статье будет описана реализация взаимодействия PowerShell с Google API для проведения манипуляций с пользователями G Suite. В организации мы используем несколько внутренних и облачных сервисов. По большей части авторизация в них сводится к Google или Active ...

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

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

[Из песочницы] Система контроля библиотеки на Flask-Potion, Часть 0: готовим всё, что понадобится Введение В своей работе я уже некоторое время использую Flask-Potion — фреймворк, основными достоинствами которого являются: весьма удобная интеграция с SQLAlchemy моделями, автогенерация crud-эндпоинтов, наличие клиента potion-client (весьма удобного, если пишешь API сервис...

OS1: примитивное ядро на Rust для x86. Часть 2. VGA, GDT, IDT Первая часть Первая статья еще не успела остыть, а я решил не держать вас в интриге и написать продолжение. Итак, в предыдущей статье мы поговорили о линковке, загрузке файла ядра и первичной инициализации. Я дал несколько полезных ссылок, рассказал, как размещается загружен...

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

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

[Из песочницы] 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 ...

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

Перепрограммируем кассу и печатаем на ней Киану Ривза. Часть 2. ПО для ПК В предыдущей статье я кратко описал свою прошивку для ККТ ШТРИХ-ФР-К, которая позволяет управлять термоголовкой, движками и соответственно выводить на печать все что угодно. В этой части я покажу как написать софт, который будет общаться с кассой и форматировать картинку для...

[Перевод] Java Challengers #4: Сравнение объектов с equals() и hashCode() Java Challengers #4: Сравнение объектов с equals() и hashCode() В преддверии запуска нового потока по курсу "Разработчик Java" мы продолжаем перевод серии статей Java Challengers, предыдущие части которых можно прочитать по ссылкам ниже: Перегрузка методов в JVM Сравнение с...

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

[Из песочницы] Из чего состоит IoT Если обратиться к википедии в поисках определения для термина “интернет вещей”, можно увидеть следущее: Интернет вещей (англ. Internet of Things, IoT) — концепция вычислительной сети физических предметов («вещей»), оснащённых встроенными технологиями для взаимодействия друг...

4 смертных греха TWS наушников: почему True Wireless всё еще не труъ? Когда все вокруг заговорили о совсем беспроводных наушниках, моей радости не было предела. Больше никаких ошейников, никаких проводков! Ничего, кроме двух связанных друг с другом какой-то ментальной магией, затычек прямо в ушах? Дайте два! По одному в каждое ухо! И милый зар...

OpenSceneGraph: Интеграция с фреймворком Qt Введение С одной стороны движок OpenSceneGraph и сам по себе обладает развитой подсистемой управления окнами, обработки событий пользовательского ввода, отправки и приема пользовательских сообщений. Об этом мы довольно подробно поговорили в предыдущих статьях этого цикла. ...

Разработка команды запроса данных из базы — часть 2 В предыдущей части я остановился на том, что разрабатываемая мной команда реализует поведение, которое можно описать вот таким тестом: it('execute should return promise', () => { request.configure(options); request.execute().then((result) => { expect(result....

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

Игра в прятки с оптимизатором. Гейм овер, это CTE PostgreSQL 12 Эта статья — продолжение рассказа о новом в PostgreSQL 12. Мы уже разобрали SQL/JSON (патч JSONPath) в статье «Что заморозили на feature freeze 2019. Часть I. JSONPath», теперь очередь CTE. CTE CTE это Common Table Expression — общие табличные выражения, их еще называют к...

У вас тоже есть такой друг, а может это Вы? Моему другу почти 32 и он программист (java-разработчик, если хотите). Раньше я любил читать «мотивашки», о том как люди приходят в IT, я читал их пачками, и каждая следующую, хоть и была похожа на предыдущую — давала свежий глоток позитива и оптимизма, веры в светлое будуще...

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

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

[Перевод] Mozilla собирается использовать WASI для всех устройств, компьютеров и операционных систем Всем привет! На связи TestMace и мы продолжаем знакомить вас с самыми горячими новостями из мира JavaScript. На очереди перевод статьи о WASI — технологии, которая позволит использовать WebAssembly вне браузеров Один формат, чтоб править всеми Компания Mozilla на этой недел...

SATA SSD Enterprise в 2-контроллерных СХД Infortrend — замер производительности В прошлых статьях: СХД Infortrend — альтернатива А-брендам и СХД Infortrend EonStor DS2024G2 делался акцент на одно из преимуществ систем хранения Infortrend — поддержка Enterprise SATA SSD в 2-контроллерных системах. В комментариях читателей возник резонный вопрос: «Насколь...

[Перевод] Как написать смарт контракт на WebAssembly в сети Ontology? Часть 2: С++ В этой статье мы разберем на двух примерах, как написать смарт контракт на языке C++, используя WASM на основе блокчейн сети Ontology. Сегодня, после нескольких месяцев стабильной работы в тестовом режиме, Ontology запустила WASM в основной сети, что позволяет безболезненн...

GOSTIM: P2P F2F E2EE IM за один вечер с ГОСТ-криптографией Будучи разработчиком PyGOST библиотеки (ГОСТовые криптографические примитивы на чистом Python), я нередко получаю вопросы о том как на коленке реализовать простейший безопасный обмен сообщениями. Многие считают прикладную криптографию достаточно простой штукой, и .encrypt() ...

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

Нелегальный апгрейд: что может старый топ процессор в 2019 На случай если не хватает средств на новый комп для PUBG, APEX или Батлу, а все друзья уже там, на помощь придут китайские товарищи, бодро распродающие серверные процы поколения Sandy/Ivy bridge за вполне вменяемые деньги. Статья про апгрейд старой системы на socket 1155 (P6...

Проектирование Электро-Механической Marble Machine v2.0 Я хочу рассказать о второй версии моей электро-механической Marble Machine и о процессе ее проектирования. Про первую спиральную машину я уже писал здесь на хабре. Времени с тех пор прошло не мало, и вот, в принципе, задуманное осуществлено: два подъемника и два спуска рабо...

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

Objectives and Key Results: инструкция по применению Всем привет! Меня зовут Егор, я руковожу кластером App Platform в Авито. Мои команды в основном занимаются разработкой внутренних продуктов, инструментов и процессов — тем, что принято называть платформенной разработкой. Год назад я рассказывал в этом блоге, как мы внедрили ...

[Перевод] Как работает kubectl exec? Прим. перев.: автор статьи — Erkan Erol, инженер из SAP — делится своим изучением механизмов функционирования команды kubectl exec, столь привычной для всех, кто работает с Kubernetes. Весь алгоритм он сопровождает листингами исходного кода Kubernetes (и связанных проектов),...

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

Теперь уведомления с вашего Android-смартфона приходят и на ПК Microsoft выполнила одно из самых больших своих обещаний, связанных с программным обеспечением проекта Your Phone. Компания выпустила сборку Windows Insider Preview, в которой заработала новая функция – отображение уведомлений Android на вашем ПК. Если дадите приложениям ра...

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

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

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

Apple хочет, чтобы iOS 13 изменила наше представление об iPad В последнее время Apple все более активно пытается превратить iPad во «взрослый» рабочий инструмент. Начав с внедрения поддержки умного пера Pencil, компания постепенно дошла до оснащения фирменных планшетов разъемом USB-C с возможностью подключения внешних мониторов. Логич...

[Перевод] Как соединить GitLab и Pantheon и оптимизировать рабочие процессы Drupal и WordPress Наш гость, создатель инструментов для разработчиков из Pantheon, рассказывает, как автоматизировать деплои WordPress с помощью GitLab CI/CD. В Pantheon я занимаюсь связями с разработчиками, поэтому всегда ищу новые способы помочь разработчикам WordPress и Drupal решать проб...

[Из песочницы] Как написать легко описываемый код Привет, Хабр! Часто ли у вас было, что вы или ваши коллеги не могли описать свой собственный код парочкой фраз? Предлагаю вашему вниманию перевод статьи "How to write easily describable code" автора Cedd Burge, в которой он делится советом, как избежать таких ситуа...

Docker: не вредные советы В комментариях к моей статье Docker: вредные советы было много просьб объяснить, чем так ужасен описанный в ней Dockerfile. Краткое содержание предыдущей серии: два разработчика в жестком дедлайне составляют Dockerfile. В процессе к ним заходит Ops Игорь Иванович. Итоговый D...

Cмарт розетка REDMOND SkyPort 100S Это продолжение моей первой статьи на смарт цоколь Redmond. В этой статье речь пойдет о другом девайсе компании Redmond — Cмарт розетка REDMOND SkyPort 100S. Данное устройство тоже базируется на чипе nRF51822 и как говорится тут сам бог велел попробовать. Итак, была куплена ...

MediaTek в сотрудничестве с KaiOS, представит мобильные 4G телефоны MediaTek и KaiOS объявили о стратегическом партнерстве, которое позволит двум компаниям поддерживать друг друга в экосистеме функциональных телефонов с поддержкой Интернета. Партнерство, приведет к интеграции KaiOS в чипсеты MediaTek с поддержкой 3G и 4G. Этот шаг работае...

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

OceanLotus: обновление малвари для macOS В марте 2019 года в VirusTotal, популярный онлайн-сервис сканирования, был загружен новый образец вредоносного ПО для macOS кибергруппы OceanLotus. Исполняемый файл бэкдора обладает теми же возможностями, что и предыдущая изученная нами версия малвари для macOS, но его струк...

Новая игра со старой атмосферой на Three.js. Часть 2 В первой части я рассказал о проблемах, с которыми я столкнулся в процессе создания 3D игры под браузер c использованием Three.js. Теперь я хотел бы подробно остановиться на решении некоторых важных задач при написании игры, типа конструирования уровней, определения столкнов...

[Перевод] Вся правда об ОСРВ. Статья #27. Системное время Понятие времени в контексте ОСРВ была введена в одной из предыдущих статей, вместе с идеей о связанных со временем функциях, доступных в ОСРВ. Читать дальше →

BGP hijacking с помощью добавления AS жертвы в AS-SET атакующего Статья поделена на три части части. В первой содержится общая информация о том что такое BGP hijacking и его традиционный вариант. Для тех кто знаком с этим явлением, рекомендуется перейти сразу ко второй части. Во второй части будет описан метод анонсирования чужих префиксо...

Искусство парсинга 2 или транслитерация собственной разметки +БОНУС: как включать классы друг в друга в C++ Привет, Хабр! Эта статья — прямое продолжение статьи Искусство парсинга или DOM собственными руками, где мы разобрали HTML-документ и построили на его основе абстрактное синтаксическое дерево (AST) с доступом к любому элементу ч...

Как получить Google Developers Certification: Mobile Web Specialist Привет, Хабр! Сегодня хочу поделиться с вами историей о том, как я сдавал сертификационный экзамен Google Developers Certification: Mobile Web Specialist. Если честно, то каких-то объективных причин я назвать не могу, так как не слышал ещё ни об одном случае, когда наличие с...

Как настроить Continuous Deployment для своего проекта: личный опыт Перевели для вас статью Юлиуса Минмо о настройке непрерывной интеграции (Continuous Deployment) для своего проекта. Автоматизация позволяет сэкономить кучу времени и сил. Статья будет полезна, в первую очередь, начинающим программистам. Непрерывная интеграция — отличная ...

WG Contract API: zoo of services С ростом количества компонентов в программной системе, обычно растёт и количество людей принимающих участие в её разработке. Как следствие, для сохранения темпов разработки и простоты сопровождения, подходы к организации API должны стать предметом особого внимания. Если х...

Подключение Micrometer для веб-приложения на Java Micrometer используется для сбора метрик приложения JVM и позволяет экспортировать данные в различные системы мониторинга. В этой статье я расскажу, как подключить Micrometer для spring web приложения и экспортировать данные в Prometheus (хороший пост о нем). Так как мое при...

[Из песочницы] Интеграция ClangFormat и Notepad++ ClangFormat является одним из лучших инструментов для автоматического форматирования исходных кодов на языках C, C++, Java, JavaScript, Objective-C, C#. Существуют плагины для популярных сред разработки (IDE), но часто нужно быстро отформатировать файл или часть файла с исхо...

CES 2019: Thermaltake представила необслуживаемые СЖО Water 3.0 ARGB с яркой подсветкой Компания Thermaltake представила в рамках выставки CES 2019 новую серию необслуживаемых систем жидкостного охлаждения Water 3.0 ARGB Sync Edition. В новое семейство вошли три модели, отличающиеся друг от друга радиаторами, которые соответствуют типоразмерам 120, 240...

Как ULTI на SKR 1.3 переезжал. Первые впечатления. Всем привет, вчера мне наконец-то приехала новая 32-битная плата от BIGTREETECH-SKR-V1.3 и в данной статье хотелось бы описать свои первые впечатления и проблемы, с которыми я столкнулся.   Для начала плата приходит в такой упаковке, внутри нас будет ждать небольшой с...

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

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

3. Типовой сценарий внедрения Check Point Maestro В прошлых двух статьях (первая, вторая) мы рассмотрели принцип работы Check Point Maestro, а также технические и экономические преимущества этого решения. Теперь хотелось бы перейти к конкретному примеру и описать возможный сценарий внедрения Check Point Maestro. Я покажу ...

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

10 причин, чтобы выбрать решение для SAP HANA от НРЕ. Часть 2 В предыдущей статье мы начали говорить о 10 причинах, чтобы выбрать решение от компании Hewlett Packard Enterprise для SAP HANA и остановились на технических причинах. Предлагаю взглянуть на процесс выбора решения под SAP HANA «глазами вендора». Очень бы хотелось, чтобы эт...

Курс лекций по 3D печати. Лекция 2. Технология FDM, введение.Прошлая лекция была посвящена ознакомлению с современными возможностями аддитивных технологий и, в частности, обзору оборудования и материалов для бытовой FDM печати. В этой лекции я коротко опишу процесс печати и подробно остановлюсь на филаментах.И...

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

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

Представлен полноразмерный контроллер SteelSeries Stratus Duo SteelSeries представляет новый полноразмерный мультиплатформенный контроллер Stratus Duo. Вы сможете легко переключаться между беспроводной связью стандарта 2,4 ГГц для Windows и Bluetooth-подключением для систем Android, Oculus Go и Samsung VR. Универсальность Stratus ...

GoSh! для путешественников — история одного домашнего проекта — Скажите, вы любите путешествия? Уверен, что вы ответите "да", вряд ли в другом случае вы бы обратили внимание на эту статью :) — Интересна ли вам тема мобильной разработки? Тут я уже не так уверен, и надеюсь, этой статьей я не отобью вам интерес. В любом случае, тут буд...

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

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

[Из песочницы] Рецензия на перевод «Если софт создаётся на общественные деньги, код должен быть открыт» Прочитал статью-перевод «Если софт создаётся на общественные деньги, код должен быть открыт» которая вызвала двоякое чувство. С одной стороны идея кажется правильной, но в статье описано несколько принципиальных проблем, которые вольно или невольно оказывают читателям медвеж...

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

[recovery mode] Интеграция Опенкарт с учетными системами Опенкарт — один из самых распространенных интернет-магазинов. Во многих случаях возникает задача интеграции со складской учетной системой (чаще всего с 1С). Интеграция предполагает, как минимум, передачу заказов с ИМ в складскую систему для их обработки и отправки товаров п...

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

[Из песочницы] Consumer Driven Contracts или Gitlab CI глазами QA test automation Цели данной публикации: Краткое введение в Consumer Driven Contracts (CDC) Настройка CI pipeline на основе CDC Consumer Driven Contracts В этой части мы пройдемся по основным моментам CDC. Данная статья не является исчерпывающей на тему контрактного тестирования. Существуе...

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

[Из песочницы] Анализ эмоциональной окраски отзывов с Кинопоиска Вступление Обработка естественного языка (NLP) является популярной и важной областью машинного обучения. В данном хабре я опишу свой первый проект, связанный с анализом эмоциональной окраски кино отзывов, написанный на Python. Задача сентиментного анализа является довольно р...

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

WexLang — как я создал проект мечты для изучения английского языка Здравствуйте! В этой статье я бы хотел рассказать о проекте, над которым я работаю. Это сервис для эффективного чтения текстов на иностранных языках, а также для совместного чтения, обмена опытом и помощи друг другу в изучении языков. Читать дальше →

Применение наследования при генерации WEB-страниц на чистом JavaScript Привет, Хабр! Я не являюсь фронтенд-разработчиком, но иногда возникают задачи быстрого прототипирования WEB-интерфейса применительно к бизнес-приложениям. Специфика отрасли — множество похожих друг на друга сущностей (а значит и интерактивных форм), где применение ООП, а ко...

Помощь девопсам по внедрению PKI Ключевые интеграции Venafi У девопсов и так много работы, а от них ещё требуют экспертных знаний по криптографии и инфраструктуре открытых ключей (PKI). Это неправильно. Действительно, у каждой машины должен быть валидный TLS-сертификат. Они нужны для серверов, контейнеро...

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

Осторожный переезд в Нидерланды с женой и ипотекой. Часть 2: подготовка документов и переезд Итак, за примерно год (май 2017 — февраль 2018) я, программист C++, нашел-таки работу в Европе. Я десятки раз откликался на вакансии в Англии, Ирландии, Швеции, Нидерландах и даже в Португалии. Я раз двадцать беседовал по телефону, скайпу и прочим системам видео связи с рекр...

Часть 2: RocketChip: подключаем оперативную память В предыдущей части мы собрали микроконтроллер вообще без оперативной памяти на базе ПЛИС Altera/Intel. Однако на плате есть разъём с установленным SO-DIMM DDR2 1Gb, который, очевидно, хочется использовать. Для этого нам потребуется обернуть DDR2-контроллер с интерфейсом ALT...

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

Как работать с Postgres в Go: практики, особенности, нюансы Неожиданное поведение приложения в отношении работы с базой приводит к войне между DBA и разработчиками: DBA кричат: «Ваше приложение роняет базу», разработчики — «Но ведь до этого всё работало!». Хуже всего, что DBA и разработчики не могут помочь друг другу: одни не знают ...

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

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

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

[Из песочницы] Краткий разбор статьи «DeViSE: A Deep Visual-Semantic Embedding Model» Рассматриваемая статья. Введение Современные распознавательные системы лимитированы классифицировать на относительно не большое количество семантически не связанных между собой классов. Привлечение текстовой информации, даже несвязанной с картинками, позволяет обогатить моде...

Когда мост — это не мост? Если вы не скрывались от всех отраслевых новостей ITSM, вы наверняка уже знаете, что новая версия ITIL выходит в феврале 2019 года. В связи с этим, все чаще поднимается вопрос, связанный с сертификацией: «Будет ли организован ITIL 4 Foundation Bridge?» Многие сертифицированн...

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

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

[Из песочницы] Пентест-лаборатория «Pentestit Test lab 12» — полное прохождение Каждый год компания Pentestit запускает новую лабораторию для тестирования на проникновение «Test Lab», и данная статья будет посвящена прохождению 12-ой лаборатории, получившей название «z 9r347 39u411z3r» или если раскодировать — «The great equalizer». DisclaimerДанная ...

[Из песочницы] React. Lazy loading Доброго времени суток. Занимаюсь разработкой проекта на React и Redux. Хочу в этой статье описать архитектуру своего проекта. Итак, начнем. Файловая структура: Для подключения редьюсеров создаем класс singleton reducerRegister: ./reducerRegister.js class ReducerRegistry...

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

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

20 проектов, 20 языков, срок вчера. Часть 3 Заключительная статья об интеграции Serge+Smartcat. В этой статье я расскажу, как мы масштабируем Serge на всю компанию, рассмотрю 4 нестандартных интеграции и, в качестве бонуса, расскажу о 2 фичах которые могут упростить вам жизнь. Предыдущие статьи: 20 проектов, 20 язык...

Что делать, если протухли сертификаты и кластер превратился в тыкву? Если в ответ на команду kubectl get pod вы получаете: Unable to connect to the server: x509: certificate has expired or is not yet valid то, скорее всего, прошел год, у сертификатов вашего kubernetes закончился срок действия, компоненты кластера перестали их использовать, в...

[Перевод] Как написать смарт-контракт на Python в сети Ontology. Часть 2: Storage API Это вторая часть из серии обучающих статей о создании смарт-контрактов на Python в блокчейн сети Ontology. В предыдущей статье мы познакомились с Blockchain & Block API смарт-контракта Ontology. Сегодня мы обсудим, как использовать второй модуль— Storage API. Storage API...

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

Can I haz? Ударим программированием на типах по дженерикам Привет, Хабр. В прошлый раз мы описали Has-паттерн, обрисовали проблемы, которые он решает, и написали несколько конкретных инстансов: instance HasDbConfig AppConfig where getDbConfig = dbConfig instance HasWebServerConfig AppConfig where getWebServerConfig = webServerCo...

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

Palit оставила в своих видеокартах GeForce RTX 2060 только по три видеовыхода Компания Palit решила ограничиться лишь двумя моделями GeForce RTX 2060 в своём ассортименте. Более того, GeForce RTX 2060 GamingPro и GeForce RTX 2060 GamingPro OC отличаются друг от друга лишь частотами. GPU первой работает на частотах 1365-1680 МГц, а второй — ...

WireCRM интегрировали с Инстаграм Онлайн система по учету клиентов и сделок WireCRM интегрировала сервис подключения Instagram — I2CRM, данная интеграция позволяет получать в CRM систему комментарии, оставленные к постам, а также сообщения в Дирек, система автоматически создает карточку контакта или пр...

[recovery mode] SaaS vs on-premise, мифы и реальность. Хватит холиварить TL; DR 1: миф может быть правдив в одних условиях и ложным в других TL; DR 2: увидел холивар – присмотрись и увидишь людей, которые не хотят слышать друг друга Читать дальше →

Приложения для электронных книг на операционной системе Android (часть 3) В этой (третьей) части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены следующие две группы приложений: 1. Альтернативные словари 2. Заметки, дневники, планировщики Краткое содержание предыдущих двух частей статьи: В 1-ой част...

Адаптер Qnap QNA-UC5G1T превращает порт USB 3.0 в порт 5GbE Компания QNAP Systems, называющая себя ведущим поставщиком систем хранения, сетевых и вычислительных решений, представила адаптер QNA-UC5G1T. Этот адаптер позволяет наделить ПК или сетевое хранилище возможностью сетевого подключения со скоростью 100 Мбит/...

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

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

Кнопочный геймпад Honor GamePad подходит для большинства смартфонов с USB-C На выставке gamescom 2019, которая проходит на этой неделе в Германии, китайский производитель смартфонов Honor представил Honor GamePad. Honor GamePad — это контроллер, который подключается к вашему телефону через USB-C, но на самом деле связь осуществляется по ...

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

[Из песочницы] Свойства объектов в САПР печатных плат OrCAD и Allegro Когда я трассирую печатную плату, часто хочется выполнить такие нестандартные вещи, как, например, изменить вид подключения полигона к конкретному контакту, скрыть DRC ошибки при замыкании цепей друг на друга, добавить пользовательские комментарии к конкретному объекту топол...

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

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

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

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

[Из песочницы] Нетривиальная расстановка элементов на flexbox без media-запросов Казалось бы, какой пост может быть о CSS Flexbox в 2019 году? Верстальщики уже несколько лет активно используют данную технологию, и все тайны должны быть разгаданы. Однако, недавно у меня возникло стойкое ощущение, что нужно поделиться одним нетривиальным и, на мой взгляд,...

Эксплуатация Microsoft Edge от CVE до RCE на Windows 10 В рамках данной статьи мы достаточно подробно рассмотрим процесс написания эксплоита под уязвимость в Microsoft Edge, с последующим выходом из песочницы. Если вам интересно узнать, как выглядит этот процесс, то welcome под кат! Читать дальше →

[Из песочницы] Операционные vs аналитические базы: колоночное vs построчное хранение данных Базы данных можно реализовать с помощью Excel, GSheet или при помощи больших ORM систем. В своей практике бизнес-аналитика я сталкивался с разными решениями. А поскольку в бизнес-анализ я пришёл из финансов и аудита, то каждый раз встречая новую систему задавался вопросами —...

Firefox начал импортировать корневые сертификаты из Windows Хранилище сертификатов Firefox С выходом Mozilla Firefox 65 в феврале 2019 года при подключении к сайтам HTTPS некоторые пользователи стали замечать ошибки типа “Your Connection is not secure” or “SEC_ERROR_UNKNOWN_ISSUER”. Причина оказалась в антивирусах типа Avast, Bitd...

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

Новый этапный релиз Avanpost PKI – зрелое решение для самых крупных российских организаций Новая версия существенно расширяет возможности этой системы: обеспечивает потребности самых крупных заказчиков, в полном объеме поддерживает работу корпоративных УЦ, выводит на новый уровень работу с виртуальными (облачными) носителями, поддерживает рабочие станции на ОС Lin...

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

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

Двойной VPN в один клик. Как легко разделить IP-адрес точки входа и выхода TL;DR В статье описывается самый простой способ настроить VPN-сервер, у которого IP-адрес для подключения VPN-клиентов отличается от IP-адреса, с которого клиенты выходят в интернет. Используете VPN для защиты приватности в интернете и арендуете для этого свой личный сер...

[Перевод] Монорепозитории: пожалуйста не надо От переводчика: Привет, Хабр! Да, это очередная статья о преимуществах и недостатках монорепозиториев. Собирался написать свою статью о том, как мы используем монорепозиторий, как мы переходили с maven на bazel и что из этого получилось. Но пока собирался с мыслями, вышла от...

Sony планирует интегрировать ИИ в датчики изображения Недавно в Токио прошло мероприятие RISC-V Day Tokyo 2019. Его участники обсуждали не только вопросы, связанные с архитектурой RISC-V и ее будущим, но и более общие темы, включая снижение порога выхода на рынок полупроводниковой продукции, безопасность, системы с открыты...

Вся мощь IntelliJ IDEA на примере одного языка (в картинках) Классическая модель разработки любых приложений подразумевает наличие хорошей документации по пользовательскому интерфейсу и API, а также, при необходимости, хорошего покрытия исходного кода комментариями. В этом случае, доработка системы начинается с изучения документации, ...

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

Словарик айтишника или Что? Где? Куда? Часть 2 В первой части статьи я перечислила и объяснила слова, которые разработчики и менеджеры компании Wrike используют в своем ежедневном общении. Как в устном, так и в письменном. Но остался еще ряд слов из тех же категорий. Знание значений этих слов помогает коллегам легче пони...

Опыт использования BDD в тестировании CUBA Platform Около семи лет назад Dan North в своей статье описал практическое применение BDD подхода, который позволяет сделать процесс разработки более понятным и управляемым путем налаживания внутренних коммуникаций. Индустрия с каждым днем проявляет всё больший интерес к этой методол...

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

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

От моделирования процессов к проектированию автоматизированной системы (Часть 2) «Один день из жизни белки» или от моделирования процессов к проектированию автоматизированной системы учёта материальных ценностей «Белка-1.0» (Часть 2) Использована иллюстрация к "Сказке о царе Салтане" А.С.Пушкина, изд."Детская литература", Москва, 1949 год, Ленинград, ри...

Управление мощностями: в поисках идеального баланса Здравствуйте! Меня зовут Иван Давыдов, я занимаюсь исследованиями производительности в Яндекс.Деньгах. Представьте, что у вас есть мощные сервера, на каждом из которых размещается ряд приложений. Если последних не очень много, они не мешают друг другу работать — им комфортн...

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

Настройка IPSec Site-to-Site VPN на оборудовании Palo Alto Networks Данная статья представляет собой продолжение предыдущего материала, посвященного особенностям настройки оборудования Palo Alto Networks . Здесь мы хотим рассказать о настройке IPSec Site-to-Site VPN на оборудовании Palo Alto Networks и о возможном варианте конфигурации под...

[Перевод] GitHub Desktop 2.2: что нового Любой, кто использует Git, знает, что у него крутая линия обучения. Мы узнали от разработчиков, что большинство людей, как правило, учатся у знакомых, будь то коллега, профессор, друг или даже видео на YouTube. В GitHub Desktop 2.2 мы добавляем первую версию интерактивного...

AERODISK Engine: Катастрофоустойчивость. Часть 1 Привет, читатели хабра! Темой этой статьи будет реализация средств катастрофоустойчивости в системах хранения AERODISK Engine. Изначально мы хотели написать в одной статье про оба средства: репликацию и метрокластер, но, к сожалению, статья получилась слишком большой, поэто...

Текстурирование, или что нужно знать, чтобы стать Художником по поверхностям. Часть 5. Система материалов В предыдущих частях туторов мы рассматривали то, как создаются текстуры. Точнее, то, как всё выглядит под капотом (как выразился Yoooriii в комментариях к 4-ой части). Расставили на свои места термины — пиксели и тексели. Разобрали немного развертку и сетку моделей, PBR и ма...

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

Как запустить java-проект на shell-раннере при пуше в репозиторий GitLab’а Меня зовут Иван Сидоренко, я инженер по тестированию в компании Digital Design. Передо мной стояла задача — внедрить запуск автотестов, написанных на Java Selenium. Я новичок в CI/CD, поэтому столкнулся со множеством проблем. Подробных инструкций в интернете по этой задаче ...

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

Приложения для электронных книг на операционной системе Android. Часть 4. Игры В сегодняшней, четвёртой (предпоследней), части статьи о приложениях для электронных книг на операционной системе Android будет рассмотрена только одна, но обширная тема: игры. Краткое содержание предыдущих трёх частей статьиВ 1-ой части были подробно рассмотрены причины, п...

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

[Перевод] Вся правда об ОСРВ. Статья #25. Каналы передачи данных: введение и базовые службы После небольшого перерыва мы продолжаем публиковать переводы статей «Вся правда об ОСРВ» Колина Уоллса. В этот раз поговорим о каналах передачи данных (далее – каналы), которые были уже были упомянуты в одной из предыдущих статей, а именно в #5. Каналы, по сравнению с почт...

Делаем 3D конфигуратор для WooCommerce Этот урок является логическим продолжением двух предыдущих статей (часть 1, часть 2) про создание трёхмерных конфигураторов без использования программирования и вёрстки. В прошлой части мы рассматривали вопрос интеграции трёхмерной части с использованием штатной системы за...

Беспроводной модуль связи с объектом WISE-4000 Можно ли без навыков программирования развернуть систему сбора данных промышленного уровня? В статье мы познакомимся с устройствами, которые позволяют в несколько кликов получить готовую систему обработки цифровых сигналов, доступных через JSON API. Серия WISE-4000 — это ...

Как экономить свое и чужое время на собеседованиях, или немножко о заблуждениях HR Очередной день начинался, как и положено зимнему дню на короткой неделе. В таск менеджер сыпались классические задачи — "я вчера отправил письмо Василию Ивановичу в Спортлото, вместо Ивана Васильевича в Лото-миллион, где написал всякое непотребное про Василия Ивановича же, с...

В мае выйдет Alt-Frequencies — игра с элементами расследований от авторов A Normal Lost Phone A Normal Lost Phone и Another Lost Phone — популярные мобильные игры, в которых игровой процесс построен на взаимодействии с виртуальными смартфонами вымышленных людей, о которых вам нужно узнать больше. Французский разработчик, Accidental Queens, ответственный за эти приклю...

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

Comodo отзывает сертификаты без причины Могли ли вы представить себе, что крупная компания будет заниматься обманом своих клиентов, особенно если эта компания позиционирует себя гарантом безопасности? Вот и я не мог до недавнего времени. Эта статья — предостережение, чтобы вы сначала десять раз подумали, перед тем...

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

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

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

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

[Из песочницы] Миграция с Nagios на Icinga2 в Австралии Всем привет. Я — сисадмин linux, переехал из России в Австралию по независимой профессиональной визе в 2015 году, но статья будет не о том, как поросёнку завести трактор. Таких статей уже и так достаточно (тем не менее, если будет интерес — напишу и про это), так что я хотел...

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

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

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

Создание системы формальной верификации с нуля. Часть 1: символьная виртуальная машина на PHP и Python Формальная верификация — это проверка одной программы либо алгоритма с помощью другой. Это один из самых мощных методов, который позволяет найти в программе все уязвимости либо же доказать, что их нет. Более подробное описание формальной верификации можно увидеть на пример...

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

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

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

Mattermost. Интеграция с внешними сервисами (часть 2) Продолжим разбираться с mattermost в части интеграции с внешними сервисами. Часть вторая. Интеграция с Zabbix Во второй части повествования о интеграции mattermost, речь пойдет про отправку сообщений об авариях из zabbix в mattermost. В результате поисков в сети был взят за ...

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

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

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

Электромобили из 90ых. Часть 1. Братья Ситроен и Пежо Источник Еще в девяностых годах двадцатого века автомобильный концерн PSA разработал и выпустил несколько малосерийных элекромобилей, вполне пригодных для городских нужд, с пробегом до 100км, возможностью зарядки от простой бытовой розетки и даже от сети быстрых зарядок те...

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

Google предлагает уменьшить срок действия SSL-сертификатов, а сертификаты EV вообще похоронить Компания Google выступила с предложением уменьшить максимальный срок действия серверных сертификатов SSL/TLS с нынешних 825 дней (примерно 27 месяцев) до 397 дней (около 13 месяцев), то есть примерно вдвое. Google предлагает поставить этот вопрос на голосование в организа...

Обзор GPS Трекера SinoTrack. Лучший недорогой, крутой трекер. В данной статье описана работа GPS Трекера «SinoTrack» для вашего автомобиля или другого транспорта. Его вариации, возможности, подключение и работа.

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

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

Meeting Room L̶i̶t̶t̶l̶e̶ Helper v 2 Данная статья подробно описывает этапы разработки мобильного приложения Meeting Room Helper: от зарождения идеи до релиза. Приложение написано на Kotlin и построено по упрощённой MVVM архитектуре, без использования data binding. Обновление UI-части происходит с помощью LiveD...

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

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 8. Настройка свитча Добро пожаловать в мир свитчей! Сегодня мы поговорим о коммутаторах. Предположим, что вы – сетевой администратор и находитесь в офисе новой компании. К вам подходит менеджер со свитчем «из коробки» и просит его настроить. Возможно, вы подумали, что речь идет об обычном элект...

[Из песочницы] Программируем проходной выключатель. MicroPython на esp8266 (sonoff) с OTA. Часть 1 Всем привет. В процессе ремонта возникла задача сделать проходной выключатель. Конечно же захотелось сделать самым простым и удобным способом, добавив базовые функции управления с телефона. Я выбрал наиболее простую и удобную технологию для этого (конечно, на свой взгляд) —...

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

Автоматизация End-2-End тестирования комплексной информационной системы. Часть 2. Техническая Этой статьей мы продолжаем серию публикаций о том, как мы автоматизировали в одном из крупных проектов ЛАНИТ автопроцесс ручного тестирования (далее – автотесты) большой информационной системы (далее – Системы) и что у нас из этого вышло. Вторая часть публикации ориентирова...

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

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

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

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

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

Сайты шифруют трафик. В рунете растет популярность SSL-сертификатов В рунете резко выросло число сайтов с SSL-сертификатами шифрования, использующегося для передачи паролей и номеров кредитных карт, следует из данных Reg.ru и GlobalSign. Объем рынка таких сертификатов мог достигнуть около 1,3 млрд руб., но быстрый рост связан в первую очеред...

Новая линейка серверов для ЦОДов Мировая презентация новой линейки серверных систем DELL PowerEdge на базе процессоров AMD EPYC ROME прошла две недели назад в Риме. На этой неделе линейка, включающая пять моделей, была представлена в России. Для программно определяемых хранилищ (SDS) и гиперконвергентных си...

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

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

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

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

Фотографии в заложниках. Первый взлом цифровых камер по WiFi (протокол PTP/IP) В наше время ни одно устройство с сетевым подключением не защищено от потенциального взлома. Даже фотоаппарат. На хакерской конференции DEF CON 2019 Эяль Иткин из Check Point Software Technologies показал первый в мире действующий эксплоит для протокола PTP (Picture Trans...

Где мы взяли флакон? Flowcon, или Флакон – методика управления, в том числе – задачами. Потоком, проектом, разработкой, рутинными функциями, регуляркой и т.д. Многие, узнав о методике и решениях на ее основе, задают вопросы – что да как, в чем суть, на основе каких «мировых практик» сделано, ка...

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

Создание и обновление списков рассылки в Zimbra Collaboration OSE на основе групп и пользователей Active Directory 1. Пара слов от автора В комментариях к прошлой статье мне задали интересный вопрос об автоматическом формировании списков рассылки на основе групп безопасности AD. Есть задача – есть решение. Правда, оговорюсь сразу, решение несколько костыльное (почему – читать далее), но ...

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

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

Фотоэкскурсия по польскому кластеру ЦОД 3S Data Center S.A. Компания 3S Data Center S.A.создала в Польше уникальный для страны распределенный облачный IT-кластер, состоящий из 5 центров хранения и обработки данных. Эти серверные фермы соединены друг с другом с применением комбинированной волоконно-оптической сети. Фирма 3S Data Cente...

Модульная разработка или путь туда, а не обратно Как мы пришли к новому подходу работы с модулями в iOS приложении RaiffeisenBank. Проблема В приложениях Райффайзенбанка каждый экран состоит из нескольких, максимально независимых друг от друга модулей. «Модулем» мы называем визуальный компонент, имеющий своё представлени...

[Перевод] Amazon Prime Day 2019 – Powered by AWS Команда TestMace продолжает публикацию переводов об интересных моментах web-сферы. На очереди описание Amazon Prime Day с точки зрения разработки высоконагруженных сервисов. Приятного чтения! Уже по традиции я бы хотел рассказать вам о некоторых преимуществах AWS, которые...

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

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

All you need is URL Ежедневно пользователи ВКонтакте обмениваются 10 млрд сообщений. Они отправляют друг другу фотографии, комиксы, мемы и другие вложения. Расскажем, как в iOS-приложении мы придумали загружать картинки с помощью URLProtocol, и пошагово разберём, как реализовать свой. Читать ...

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

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

[Перевод] Из волшебной математической функции – одно решение, чтобы править ими всеми Три года назад Марина Вязовска из Швейцарского федерального технологического института в Лозанне поразила математиков, обнаружив самый плотный способ упаковки сфер одинакового размера в восьми- и 24-мерном пространствах (во втором случае – при помощи четырёх соавторов). А ...

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

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

Software Defined Radio — как это работает? Часть 6 Привет, Хабр. В предыдущей части мы рассмотрели возможность передачи простых сигналов с помощью GNU Radio. Сейчас мы пойдем дальше, и посмотрим, как передать что-нибудь посложнее. Начнем с радиолюбительских сигналов WSPR, а затем создадим работающий программный QAM-модем. ...

Аттестация информационных систем по принципу типовых сегментов. Мифы и реальность Доброго времени суток, Хабр! Сегодня мы хотели бы рассмотреть различные мифы, связанные с аттестацией объектов информатизации (ОИ) по требованиям безопасности информации по принципу типовых сегментов. А также разберемся, как все-таки правильно делать такую аттестацию. Миф...

[Перевод] Десять заповедей React компонентов Написано Kristofer Selbekk, в сотрудничестве с Caroline Odden. Основано на лекции с таким же названием и с теми же людьми, состоявшейся на встрече ReactJS в Осло в июне 2019 года.От переводчика — оригинальное название The 10 Component Commandments не упоминает React, но бол...

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

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

[Перевод] Гонки на реактивных ранцах 2019 Тесты на опасное сближение завершены, Jetpack Aviation готовится к запуску первой в мире серии гонок на Jetpack'ах. Команда Jetpack Aviation (JPA) только что завершила испытательные полеты, в которых два пилота подлетели достаточно близко друг к другу, что легко могли шутя...

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

Квалифицированная электронная подпись под macOS По данным РБК и Тензор, в 2019 году в России будет выдано 4,6 млн. сертификатов квалифицированных электронных подписей (КЭП), соответствующих требованиям 63-ФЗ. Получается, что из 8 млн. зарегистрированных ИП и ООО каждый второй предприниматель пользуется электронной подпис...

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

Акустическую систему Logitech Z606 5.1 с подключением посредством Bluetooth оценили в 130 долларов Компания Logitech пополнила свой ассортимент акустической системой Z606. Это система 5.1, особенностью которой является беспроводное подключение. В данном случае используется Bluetooth 4.2. Конечно, есть возможность подключить систему и посредством кабелей. В частности,...

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

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

GlobalFoundries и TSMC подписывают соглашение о перекрёстном лицензировании GlobalFoundries и TSMC сообщили, что заключили соглашение о перекрёстном лицензировании и отозвали все иски друг к другу. По условиям договора, обе компании будут лицензировать патенты друг друга, связанные с полупроводниками, а также любые патенты, поданные в течение следую...

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

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

WWDC 2014: Непрерывность (Continuity) Семь лет, начиная с 2007, когда вышел самый первый iPhone, Apple трогательно гордилась взаимной интеграцией её платформ. Объявляя недостатки в этой интеграции частностями, и объясняя их требованиями безопасности. В 2014, представив Continuity, компания молча признала своё о...

Пиксельное хоррор-приключение Worse Than Death теперь доступно и в России на iOS Еще летом на iOS вышел хоррор Worse Than Death, но по какой-то причине он был недоступен в некоторых странах, включая Россию. Однако сейчас его уже можно скачать, и это стоит сделать, если вы любите качественные приключения, совмещающие элементы хоррор-приключения и квеста с...

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

Мотивация. Сделай сам Есть такая полезная задача — разработка систем мотивации. Я долго наблюдал за несчастными HR, которые создавали системы KPI, материальную и нематериальную мотивацию, силились поднять корпоративный дух. Мои наблюдения всегда показывали одно и то же — HR в этой работе чего-то ...

Lenovo и Qualcomm представляют первый в мире ноутбук с поддержкой 5G Project Limitless — результат совместной многолетней работы по созданию ПК нового класса, с подключением к сетям 5G. Благодаря новой системе на чипе (SoC) Qualcomm Snapdragon 8сx 5G пользователи смогут ещё быстрее обмениваться информацией друг с другом.

Oppo представила технологию Mesh Talk: звонки и обмен сообщениями без подключения к сотовой связи В то время как весь мир работает над развитием сети 5G, Oppo решила развиваться несколько в другом направлении. В частности, компания представила технологию Mesh Talk, которая позволяет обмениваться данными между устройствами на расстоянии до 3 км без подключения к сотовой с...

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

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

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

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

NHTSA изучает аварии на стоянках с участием электромобилей Tesla, ехавших к их владельцам Американские регуляторы рассматривают аварии на стоянках с участием автомобилей Tesla, которые ехали к своим владельцам, будучи вызваны с помощью функции Smart Summon. Об том сообщил источник со ссылкой на Национальную администрацию безопасности дорожного движения (NHTS...

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

MOSDROID Meetup: подключайтесь к трансляции Уже завтра, 16 ноября, митап MOSDROID в офисе Райффайзенбанка: узнаём все тонкости кроссплатформенной разработки с использованием Flutter и GoMobile, поделимся друг с другом опытом модульной архитектуры проекта и ещё много интересных тем. Смотрите программу и подключайтесь ...

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

[Из песочницы] WiFi Enterprise. FreeRadius + FreeIPA + Ubiquiti Уже были описаны некоторые примеры организации корпоративного WiFi. Здесь я распишу как реализовал подобное решение и проблемы с которыми пришлось столкнуться при подключении на разных устройствах. Будем использовать уже имеющейся LDAP с заведенными пользователями, подниме...

Простая интеграция MS Project и Redmine Эпиграф “Если бы губы Никанора Ивановича да приставить к носу Ивана Кузьмича, да взять сколько-нибудь развязности, какая у Балтазара Балтазарыча, да, пожалуй, прибавить к этому еще дородности Ивана Павловича — я бы тогда тотчас же решилась.» Н.В. Гоголь. Женитьба. Есть два ...

[Из песочницы] Подключение сторонних аудио и видео решений к Microsoft Teams Привет, Хабр! Представляю вашему вниманию перевод-адаптацию статьи «Integrating Third-Party Voice & Video with Microsoft Teams» автора Brent Kelly, в которой он рассматривает проблему интеграции Microsoft Teams с другими продуктами. 9 июля 2018 г. Пригодится ли теперь ваша...

USB Type-C замедлил работу Windows 10 В Windows 10 (1809) нашли баг, из-за которого переход операционной системы в спящий режим стал занимать намного больше времени, чем обычно. Он связан с подключением или отключением устройств через интерфейс USB Type-C.

GitHub полностью удалил репозиторий утилиты для обхода блокировок 10 апреля 2019 года GitHub без объявления войны удалил репозиторий популярной утилиты GoodByeDPI, предназначенной для обхода государственных блокировок (цензуры) сайтов в Интернете. Что такое DPI, как связан с блокировками и зачем с ним бороться (по версии автора): Прова...

[Из песочницы] Подводные камни разработки Google Play Instant Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь Android-разработкой в PROFI.RU. Недавно я написал приложение с мгновенным запуском для наших клиентов. Если вы ещё не знакомы с технологией, приглашаю вас сначала посетить Android Developers. С презентации Instant Apps (G...

[Из песочницы] Подключаем WiFi-адаптер WN727N к Ubuntu/Mint У меня возникла проблема с подключение WiFi-адаптера wn727n к ubuntu/mint. Я долго гуглил, но решения так и не нашел. Решив проблему, решил написать его сам. Все, что написано ниже, рассчитано на новичков. Читать дальше →

Microsoft не будет говорить о Windows Lite и WCOS на Build 2019 Windows Lite – это попытка Microsoft модернизировать Windows для устройств с низким уровнем обслуживания, создав операционную систему, которую можно быстро и легко обновить, не требуя от конечного пользователя особого внимания или участия.Для Microsoft создание такой операци...

Пульт управления Хабром на базе HMI от Advantech Your browser does not support HTML5 video. Видео: админский пульт управления Хабром. Позволяет регулировать карму, рейтинг, и банить пользователей. TL;DR: в статье я попробую создать шуточный пульт управления Хабром, используя среду разработки промышленных интерфейсов Webac...

Кое-что о пространстве имён Я программирую на PHP. И немножко на JS. Когда-то я программировал на Java, ещё раньше — на LotusScript. Попробовал на вкус python и dart. Basic, Fortran, Pascal, Prolog, VisualBasic, С++/С, perl — на всём этом я тоже изображал что-то исполняемое. Языки программирования меня...

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

[Из песочницы] Три парадигмы Привет, Хабр! Предлагаю вашему вниманию перевод статьи «Three Paradigms» автора Robert C. Martin (Uncle Bob). За последние 40 лет технологии аппаратного обеспечения увеличили вычислительную мощность наших устройств более чем на двадцать порядков. Теперь мы играем в Angry ...

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

NVIDIA выпустила новую плату Jetson Xavier NX Компания NVIDIA продолжает наращивать своё присутствие на рынке мини-систем для сферы IoT и роботехники: в дополнение к анонсированной весной этого года плате Jetson Nano была представлена новейшая Jetson Xavier NX. Новинка выполнена в прежнем 260-контактном форм-факторе, в ...

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

Прощай, друг детства: Принц Гарри лишился лучшего товарища из-за Меган Маркл – СМИ Лучший друг молодого принца назвал его брак с экс-актрисой большой ошибкой. Принц Гарри продолжает прощаться не только с персоналом, но и с лучшими друзьями из-за своей скандальной супруги Меган Маркл. Британский эксперт по связям с общественностью Астрид Харборд проинформи...

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

Мечта вегана: омлет без яиц Для этого используется белковая смесь, полученная из бобов маш и практически неотличимая от настоящих яиц ни по вкусу, ни по содержанию белка. Жаль, что запатентованный стартапом JUST Inc. процесс позволяет сделать лишь болтунью, подходящую для омлетов и бутербродов: имитаци...

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

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

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

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

Управление конфликтами в команде – эквилибристика или жизненная необходимость? Эпиграф: Встретились как-то в лесу Ёжик и Медвежонок. — Здравствуй, Ёжик! — Здравствуй, Медвежонок! Так, слово за слово, шутка за шуткой, и получил Ёжик от Медвежонка по морде … Под катом рассуждения нашего тимлида, а также директора по развитию продукта RAS — Игоря Марна...

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

Dynamic в C#: рецепты использования Это заключительная часть цикла про Dynamic Language Runtime. Предыдущие статьи: Подробно о dynamic: подковерные игры компилятора, утечка памяти, нюансы производительности. В этой статье подробно рассматривается кэш DLR и важные для разработчика моменты, с ним связанные. Г...

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

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

Интеграция 18 банков и 9 торговых площадок друг с другом за месяц — особая разновидность рабочего ада 1 октября 2018 г. многие из нас ждали апокалипсиса. Но он не случился. Не знаю, как у остальных, а у меня точно была мотивация: если закупка не пройдёт, то больница не купит лекарств, детям в школах не купят творога и учебников. Я хотел сделать что-то работающее хотя бы на...

[Перевод] HTTP/3: от корней до кончиков Протокол прикладного уровня HTTP лежит в основе интернета. Он начал свою жизнь в 1991 году как HTTP/0.9, а к 1999 году превратился в HTTP/1.1, который был стандартизирован Инженерным советом Интернета (IETF). HTTP/1.1 долго всех удовлетворял, но растущие потребности Сети п...

Борьба со старением: cенолитики и заместительная терапия стволовыми клетками В данной статье мы попробуем рассмотреть два механизма старения и подходы к их терапии – сенесцентные клетки (ещё их называют дряхлыми) и их уничтожение; а также стволовые клетки и их восстановление и пополнение. Возможно борьба с дряхлыми клетками и увеличение пула стволовы...

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

Cablexpert CC-HDMI4-30M – 30-метровый кабель для подключения устройств с интерфейсами HDMI Cablexpert CC-HDMI4-30M – это готовое решение для подключения устройств, расположенных на расстоянии до 30 метров друг от друга. Мои впечатления от знакомства далее.

Проблемы пакетной обработки запросов и их решения (часть 2) Это продолжение статьи «Проблемы пакетной обработки запросов и их решения». Рекомендуется сначала ознакомиться с первой частью, так как в ней подробно описана суть задачи и некоторые подходы к ее решению. Здесь же мы рассмотрим другие методы. Читать дальше →

[Перевод] Слежка на экзаменах: программа ExamCookie Мне стало известно, что датское правительство не просто приостановило действие программы Digital Exam Monitor, которую мы проанализировали и полностью обошли в предыдущей статье, а, возможно, полностью закрыло эту систему через неделю после того, как мы сообщили им способ вз...

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

[Перевод] Starlink — дело крупное Эта статья из серии, посвященной ликбезу в области космических технологий. Starlink — план SpaceX раздавать интернет через десятки тысяч спутников — главная тема в посвященной космосу прессе. Еженедельно выходят статьи о последних достижениях. Если в общем-то схема ясная, д...

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

PyDERASN: как я написал ASN.1 библиотеку с slots and blobs ASN.1 это стандарт (ISO, ITU-T, ГОСТ) языка описывающего структурированную информацию, а также правил кодирования этой информации. Для меня как программиста это просто ещё один формат сериализации и представления данных, наравне с JSON, XML, XDR и другими. Он крайне распрост...

7 альтернатив Air Drop для Android Большинство из нас сегодня воспринимает некоторые технологии, которые еще 10-15 лет назад казались невероятными, как должное. Например, пользователи устройств от компании Apple вполне успешно передают данные при помощи Airdrop. Это быстро, удобно и безопасно. Однако же не в...

Конференция для фанатов DevOps-подхода Речь, конечно, о DevOpsConf. Если не вдаваться в детали, то 30 сентября и 1 октября мы проведем конференцию об объединении процессов разработки, тестирования и эксплуатации, а если вдаваться — прошу под кат. В рамках DevOps-подхода все части технологического развития проект...

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

[Перевод] Reflective Shadow Maps: Часть 2 ― Реализация Привет, Хабр! В данной статье представлена простая реализация Reflective Shadow Maps (алгоритм описан в предыдущей статье). Далее я объясню, как я это сделал и какие подводные камни были. Также будут рассмотрены некоторые возможные оптимизации. Рисунок 1: Слева направо: бе...

И ещё один Steam Windows Client Local Privilege Escalation 0day В предыдущей серии Не так давно я опубликовал описание уязвимости для Steam. Я получил много отзывов от читателей. Valve не проронили ни слова, а HackerOne прислал огромное слезливое письмо и, в основном, молчал. В итоге меня забанили Valve на H1 — я не могу участвовать в и...

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

Хранилище key-value, или как наши приложения стали удобнее Тот, кто разрабатывает на Voximplant, знает о концепции «приложений», которые связывают друг с другом облачные сценарии, телефонные номера, пользователей, правила и очереди звонков. Проще говоря, приложения – это краеугольный камень разработки на нашей платформе, входная т...

Asus дразнит будущим Zenfone 6 без «чёлки», прорезей и рамок Уже с начала года Asus время от времени дразнит нас какими-то материалами, касающимися выходящего устройства Zenfone 6. Ожидается, что аппараты ZenFone 6 и ZenFone 6Z будут анонсированы 16 мая в Испании. Устройства должны получить очень похожий друг на друга дизайн, если в...

[Из песочницы] Современные методы описания функциональных требований к системам. Алистер Кобёрн. Отзыв по книге и дополнения В книге описан один метод написания части постановки задачи, а именно метод use case. Что это такое? Это описание сценария взаимодействия пользователя с системой (или с бизнесом). Система при этом выступает как черный ящик (и это дает возможность разделить сложную задачу пр...

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

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

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

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

Интернет вещей по-русски. Спектральные параметры радио-сигнала Полгода назад один заказчик заинтересовал меня передачей данных по радио для интернета вещей в нашей отечественной версии — NB-FI. Очевидно, что идеологически это система низкоскоростной передачи данных (Ultra-Narrow Band, UNB) SigFox. В деталях есть отличия, которые несом...

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

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

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

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

Мониторинг срока действия сертификатов в Windows на NetXMS Недавно у нас встала задача мониторинга срока действия сертификатов на серверах с Windows. Ну как встала, после того, как сертификаты несколько раз превращались в тыкву, в то самое время, когда ответственный за их продление бородатый товарищ находился в отпуске. После этого ...

[Из песочницы] Установка OpenCV + CUDA на Windows Введение В данной статье речь пойдет о сборке и установке OpenCV 4 из исходных файлов с дополнительными модулями CUDA 10 на ОС Windows. Я постарался включить сюда все тонкости и нюансы, с которыми можно столкнуться в ходе установки, и про которые не написано в официальном м...

Шпионаж, за который не банят (история из 80-х) Американские компании, например Google, пошли на поводу у правительства США и стали разрывать отношения с Huawei из-за подозрений в шпионаже. В 80-х годах у американских производителей полупроводников также бывали проблемы с иностранными компаниями-конкурентами в связи с шп...

I’m going deeper underground, или о чем стоит знать, оптимизируя работу сетевого приложения Приветствую, друзья! В предыдущих двух статьях (раз, два) мы погружались в сложность выбора между технологиями и искали оптимальные настройки для нашего решения в Ostrovok.ru. Какую тему поднимем сегодня? Каждый сервис должен работать на каком-то сервере, общаясь с желез...

Исследование Устойчивости Национальных Сегментов Интернета за 2019 Данное исследование объясняет, каким образом отказ одной автономной системы (AS) влияет на глобальную связность отдельного региона, особенно в том случае, когда речь идет о крупнейшем провайдере интернета (ISP) данной страны. Связность интернета на сетевом уровне обусловле...

[Из песочницы] Саундтрек для игры: гуманитарии тоже плачут О себе Коротко о себе. Меня зовут Дмитрий. Я с детства окружен друзьями — программистами, сисадминами и прочими айтишниками. Сам пробовал связать жизнь с этим — одно время был веб-разработчиком говно-сайтов, учил html, php, но дальше дело не пошло. Все время тянуло в творчес...

[Перевод] Учебник по JavaFX: основные макеты Перевод статьи «JavaFX Tutorial: Basic layouts» автора Vojtech Ruzicka. Как организовать и разместить GUI компоненты в приложении JavaFX. Это четвертая статья в серии о JavaFX. В предыдущей статье я описал, как использовать FXML и SceneBuilder для создания вашего пользоват...

Приложения для электронных книг на операционной системе Android. Часть 5. Облачные хранилища и плееры В этой, последней, части статьи о приложениях для электронных книг на операционной системе Android будут рассмотрены две темы: Облачные хранилища и Аудиоплееры. Бонус: список бесплатных библиотек с каталогами OPDS. Краткое содержание предыдущих четырёх частей статьиВ 1-ой ч...

Лучшее из опыта создания чистых и быстрых Angular приложений На написание этой статьи сподвигли поиски JavaScript front-end разработчиков в свою компанию в Ставрополе. Т.к. длительное время не удавалось найти толкового программиста и тогда мы решили запустить программу стажировки с большим количеством обучающего материала по Angular &...

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

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

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

Идёт массовый отзыв TLS-сертификатов от множества УЦ, по ошибке сгенерированных на 63-битном ГСЧ вместо 64-битного Три дня назад в списке рассылки mozilla.dev.security.policy опубликовано сообщение о массовом нарушении в генерации TLS-сертификатов. Как показало расследование, пострадало несколько удостоверяющих центров, в том числе GoDaddy, Apple и Google. Общее количество неправильных с...

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

[Перевод] Рукопожатие SSH простыми словами Secure Shell (SSH) — широко используемый протокол транспортного уровня для защиты соединений между клиентами и серверами. Это базовый протокол в нашей программе Teleport для защищённого доступа к инфраструктуре. Ниже относительно краткое описание рукопожатия, которое происхо...

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

Huawei Watch GT представлены в новом стиле На текущий момент рынок умных часов очень плохо себя чувствует, ведь покупатели не спешат брать новые устройства. Это не смартфон, который через пару лет устареет, а значит покупатели берут одно устройство и не обновляют его года три-четыре. А ведь для производителя это знач...

Внедрение СЭД ТЕЗИС в ЦАЭК СЭД ТЕЗИС внедрена в АО «ЦАЭК», проект охватил 13 организаций холдинга. Автоматизированы процессы подключения к электросетям и закупа товаров, проведена интеграция с АСУПФиА Ellipse и 1С УПП КАДРЫ, а также унификация шаблонов документов.

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

Mkcert: валидные HTTPS-сертификаты для localhost В наше время использование HTTPS становится обязательным для всех сайтов и веб-приложений. Но в процессе разработки возникает проблема корректного тестирования. Естественно, Let’s Encrypt и другие CA не выдают сертификаты для localhost. Традиционно есть два решения. Читат...

[Из песочницы] Тестирование микрокомпьютеров для IoT Для начала рассмотрим термин «интернет вещей». В википедии увидим следующее определение: Интернет вещей (англ. Internet of Things, IoT) — концепция вычислительной сети физических предметов («вещей»), оснащённых встроенными технологиями для взаимодействия друг с другом или с ...

«Яндекс.Касса»: геймеры переводят друг другу 11,6 миллиардов рублей в год Пользователи переводят деньги другим людям в качестве платы за игровые объекты и в виде пожертвований за игровые трансляции. По данным &laquo;Яндекс.Кассы&raquo; и Data Insight, геймеры на платформах для игр и стриминга Steam, Battle.net, Twitch, YouTube, Donation...

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

Комбо для Drupal. Как захватить сайт с Drupal, используя новые уязвимости Для подписчиковВ этой статье я расскажу о двух уязвимостях в популярной CMS Drupal. Одна из них связана с архивами PHAR, не особенно страшна и работает только с правами админа, но если подключить другую (XSS), то такой дуэт становится уже очень опасным для любого сайта на не...

Ethernet Belkin с адаптером Lightning для проводного интернет соединения на iPhone или iPad В большинстве случаев вы подключаете свой iPhone или iPad к Интернету через Wi-Fi, но в некоторых случаях проводное подключение удобнее. Особенно это актуально для iPad, когда в он используется как стационарный ПК. Ethernet Belkin с адаптером Lightning - это идеальное решен...

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

[Из песочницы] Дальтоник — друг человека (Минздрав не Прав) Так получилось, что мне пришлось окунуться в тему нарушения цветопередачи имея уже почти 40 лет за плечами. И дело не в том, что я без проблем вожу машину более 15 лет, и не в том, что какие-то оттенки цветов не дают мне насладиться красотой мира, и точно не в том, что родны...

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

В КриптоПро CSP 5.0 включена поддержка носителей Рутокен В рамках технологического партнерства компаний «Актив» и «КриптоПро» было проведено тестирование, подтвердившее совместимость usb-токенов и смарт-карт Рутокен со средством криптографической защиты информации «КриптоПро CSP» версии 5.0.

QEMU.js: теперь по-серьёзному и с WASM Когда-то давно я смеха ради решил доказать обратимость процесса и научиться генерировать JavaScript (а точнее, Asm.js) из машинного кода. Для эксперимента был выбран QEMU, некоторое время спустя была написана статья на Хабр. В комментариях мне посоветовали переделать проект ...

Эволюция кластерного взаимодействия. Как мы внедряли ActiveMQ и Hazelcast В течение последних 7 лет я вместе с командой занимаюсь поддержкой и развитием ядра продукта RealtimeBoard: клиент-серверным и кластерным взаимодействием, работой с базой данных. У нас Java с разными библиотеками на борту. Запускается всё вне контейнера, через Maven-плагин....

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

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

Не шутите с NULL Достойная пятницы история приключилась с американским исследователем в области безопасности Джозефом Тартаро (Joseph Tartaro). Захотелось ему выделиться, заказав не просто индивидуальный номер на авто, но и связав его со своим ремеслом. Первой мыслью было поиграться с SEGFAU...

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

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

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

На пути к физическим принципам биологической эволюции. Окончание + полный текст перевода Сокращенный перевод статьи М. Кацнельсона, Ю. Вольфа и Е. Кунина Towards physical principles of biological evolution Mikhail I. Katsnelson, Yuri I. Wolf, Eugene V. Koonin Оригинал статьи (Две предыдущие части уже были опубликованы: начало и продолжение ) Возможна ли конвер...

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

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

Качество — ответственность команды. Наш QA опыт Я работаю QA-инженером в Miro. Расскажу о нашем эксперименте по передаче разработчикам части задач по тестированию и трансформации роли тестера в роль QA (Quality assurance). Сначала коротко о нашем процессе разработки. У нас ежедневные клиентские релизы и от 3 до 5 серверн...

Показатели сложности и хешрейта Litecoin упали почти на треть Вскоре после халвинга Litecoin показатели хешрейта и сложности добычи «цифрового серебра» упали почти на треть. По данным BTC.com, сложность сети с момента халвинга снизилась на 28%. Эта ситуация может быть связана с прекращением работы части майнингового оборудования, ставш...

Фото: прототип «Яндекс.Авто», которая умеет удаленно управлять машиной и следить за её состоянием 26 сентября команда «Яндекс.Авто» провела мероприятие для журналистов и блогеров, на котором показала прототипы работы функций, которые вскоре появятся в бортовом компьютере компании. Все они связаны в первую очередь с глубокой интеграцией с системами машины. ...

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

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

[Перевод] Прекратите использовать Ngrx/effects для этого Иногда простейшая реализация функциональности в конечном итоге создает больше проблем, чем пользы, только увеличивая сложность в другом месте. Конечным результатом является забагованная архитектура, которую никто не хочет трогать. Читать дальше →

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

Криптографический АРМ на базе токенов PKCS#11. Электронная подпись. Часть 2 В первой части нашего повествования мы показали как, имея на руках криптографический токен с поддержкой российской криптографии, создать запрос на получение сертификата, получить и установить сертификат на токен, проверить электронную подпись сертификата и его валидность по ...

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

Microsoft рассказала о своём видении современной операционной системы (Windows Core OS) В рамках ежегодной выставки Computex 2019, проходящей в эти дни в Тайбэе, было представлено довольно много новых устройство под управлением Windows 10. По традиции, в своём блоге Microsoft опубликовала пост с рассказом об устройствах, которые представили партнёры. Но, что б...

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

Сравним инструменты для аудита изменений в Active Directory: Quest Change Auditor и Netwrix Auditor Оба продукта предназначены для выявления несанкционированных действий пользователей, подозрительной активности и контроля конфигураций в инфраструктуре Microsoft. Quest Change Auditor и Netwrix Auditor прямые конкуренты, которые вполне себе борются друг с другом за место н...

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

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

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

Junior-разработчики — почему мы их нанимаем и как мы с ними работаем Всем привет! Меня зовут Катя Юдина, и я IT-рекрутмент менеджер в Авито. В этой статье расскажу, почему мы не боимся нанимать джуниоров, как мы к этому пришли и какую пользу мы с ними приносим друг другу. Статья будет полезна компаниям, которые хотят нанимать джуниоров, но по...

Управление SSL/TLS сертификатами в облаках и контейнерах — не человеческая работа Из презентации Venafi: как установка сертификатов вручную тормозит процесс непрерывной интеграции и развёртывания приложений Облачные сервисы и контейнеры стали стандартом де-факто для развёртывания веб-приложений. Однако интеграция сертификатов SSL/TLS в окружение DevOps ...

Блокчейн уходит от трейдинга В 2018 году рынок децентрализованных приложений (DApps) вырос почти втрое, сообщает "КоммерсантЪ" со ссылкой на данные годовой статистики портала State of the DApps. Если в конце 2017 года в реестре State of the DApps было 829 таких приложений, то к концу 2018-го -...

Корпоративный слон — Так, что у нас? – спросил Евгений Викторович. – Светлана Владимировна, какая повестка? Я за время отпуска, наверное, сильно от дел отстал? — Не сказать, что прям сильно. Основное вы знаете. Сейчас всё по протоколу, коллеги делают короткие доклады о состоянии дел, задают ...

Доверяй, но проверяй! Как проверить свою модель с помощью облака IBM (Watson OpenScale) Проблема доверия предсказаниям, сделанных моделями машинного обучения, становится все более и более актуальна. Чем существеннее решение, принимаемое на основании этого предсказания, тем меньше доверия. Вызвано это в первую очередь тем, что далеко не всегда понятно, что же ...

[Перевод] Вычисление 2D-коллизий: алгоритм Гилберта — Джонсона — Кирти Я занялся изучением процессов распознавания коллизий, и это привело меня к алгоритму Гилберта — Джонсона — Кирти (Gilbert-Johnson-Keerthi, GJK). Все примеры кода в посте написаны на TypeScript. В примерах используются созданные мной структуры, которые подробно в посте не р...

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

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

История об аркадном стике Друг затеял интересный проект и я подумал, почему бы им с вами не поделиться (с его согласия, конечно же)! Вот сама история: «Пару месяцев назад меня попросили помочь с проектом аркадного автомата для одного заведения. Идея мне показалась крайне занятной, да и по силам. ...

Mastercard и Rakuten запускают в Украине новый сервис Mastercard и Rakuten Viber запускают в Украине Moneytou – сервис мгновенных денежных переводов в мессенджере Viber. Сервис Moneytou позволяет пользователям Viber легко переводить друг другу деньги непосредственно в чате, не сообщая номер карты

[Из песочницы] Эффективное создание компонентов с помощью styled system Для стилизации react компонентов наша команда использует styled-components. О styled-components уже есть статьи на Хабре, поэтому подробно останавливаться на этом не будем. Знакомство с Styled components Лучше, быстрее, мощнее: styled-components v4 Написав много компоне...

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

[Перевод] Kafka на Kubernetes — это хорошо? Приветствуем вас, Хабр! В свое время мы первыми вывели на российский рынок тему Kafka и продолжаем следить за ее развитием. В частности, нам показалась интересной тема взаимодействия Kafka и Kubernetes. Обзорная (и довольно осторожная) статья на эту тему выходила в блоге ко...

Особенности формирования тактовых частот в PSoC 5LP При разработке аппаратной части комплекса REDD, описанного в этой статье, мы рассматривали различные варианты реализации. PSoC рассматривался, так как для него имеется готовый относительно стандартизованный, пусть и де-факто, вариант переходника USB-I2C. К сожалению, по пр...

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

ZENLIX 3.5 — спустя 2 год Начав разработку системы заявок, с 2013 года, история которой описана в предыдущих публикациях: Как мы написали helpdesk Как мы написали helpdesk (часть 2) Как мы написали helpdesk (часть 3) мы остановили выпуск новых версий в 2017 году. Это не значит, что мы переста...

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

Легкий способ заработать на Bug Bounty Наверняка вы уже не раз слышали выражение «багхантинг», и я уверен, что вы бы не отказались заработать пару-тройку сотен (а то и тысяч) долларов, найдя в чужой программе потенциальную уязвимость. В этой статье я расскажу о трюке, который поможет исследовать проекты с открыт...

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

[Из песочницы] Серверный шкаф на 14 патч-панелей или 5 дней проведенных в серверной Укладка кабеля и расключение патч-панелей в серверной В этой статье делюсь своим опытом работы по организации серверной на 14 патч-панелей. Под катом — много фотографий. Читать дальше →

[Перевод] [Иллюстрированное] Руководство по устройству сети в Kubernetes. Часть 3 Прим. перев.: Эта статья продолжает цикл материалов о базовом устройстве сетей в Kubernetes, что описывается в доступной форме и с наглядными иллюстрациями (впрочем, конкретно в этой части иллюстраций уже практически не оказалось). Переводя две предшествующие части этого цик...

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

Реализация горячей перезагрузки С++ кода в Linux и macOS: копаем глубже *Ссылка на библиотеку и демо видео в конце статьи. Для понимания того, что происходит, и кто все эти люди, рекомендую прочитать предыдущую статью. В прошлой статье мы ознакомились с подходом, позволяющим осуществлять "горячую" перезагрузку c++ кода. "Код" в данном случае — ...

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

Dream team из ничего: найм специалистов в IT Всем привет! Как и обещал, продолжаю публикации о менеджменте в IT. В предыдущей статье я рассказал, что значит быть Team Leader. Но какой же тим лид без команды? Сегодня же о том, как можно набирать классных людей, не имея больших ресурсов, и когда о вас никто не знает. ...

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

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

3 ключевых качества успешного менеджера по продукту: Юрий Голиков, VP of Engineering Wrike Привет, Хабр. Мы продолжаем нашу серию статей о ключевых качествах для успешного менеджера по продукту по версии Wrike. В предыдущей части мы общались с Антоном Даниловым, group product manager. Сегодня на вопросы отвечает Юрий Голиков. Юрий работает в Wrike 3 года на должно...

Кластер системы видеоконференцсвязи на базе Yealink Meeting Server Эта статья является продолжением цикла публикаций, посвященного комплексному решению ВКС Yealink Meeting Server (YMS). В прошлой статье Yealink Meeting Server 2.0 — новые возможности видеоконференцсвязи мы описали существенный прорыв в функционале решения: добавился собст...

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

Минкомсвязи разрешило Tele2 возобновить эксперимент с подключением абонентов по технологии eSIM Дальше министерство планирует изучить возможность подключения абонентов без посещения офиса оператора.

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

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

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

Реакция на холодные письма Меня немного расстроила статья «Оцениваем рекрутёров по холодным письмам». Как по мне, вся проблема высосана из пальца, и все очень похоже на то, что уже описал автор: Иди-ка ты на !@# со своей «токсичностью» Я напишу максимально противоположное большинству мнение, чем ско...

Универсальное DRO на базе Arduino Nano — shDRO. Часть 2 И снова здравствуйте! Продолжаю описывать свою разработку shDRO. В данной части я опишу алгоритм опроса устройств и формат команд консоли. Первая часть. Читать дальше →

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

Анонс MediaTek Helio G90 и Helio G90T: новые SoC для игровых смартфонов среднего уровня Компания MediaTek представила новые однокристальные системы Helio G90 и Helio G90T. Обе SoC ориентированы на использование в игровых смартфонах среднего уровня. Они имеют схожие конфигурации, но отличаются друг от друга по некоторым весьма значимым параметрам. Подробнее об э...

NB-IoT, Narrow Band Internet of Things. Режимы энергосбережения и команды управления Добрый день всем! В предыдущей части обсуждалась общая информация и особенности технологии NB-IoT, а здесь предлагаю подробно рассмотреть режимы энергосбережения PSM и eDRX, а также команды, с помощью которых этими режимами можно управлять. Читать дальше →

IBS интегрировала SAP ERP со складским ПО в компании EVYAP Компания IBS выполнила интеграцию систем SAP ERP со складским ПО для турецкой компании EVYAP. Интеграция позволила EVYAP значительно повысить скорость бизнес-процессов и качество взаимодействия с клиентами. Сотрудничество ...

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

Retentioneering: как мы open-source инструменты для продуктовой аналитики на Python и Pandas написали Привет, Хабр. Эта статья посвящена итогам четырехлетней разработки набора методов и инструментов обработки траекторий движения пользователей в приложении или на сайте. Автор разработки — Максим Годзи, который стоит во главе команды создателей продукта, он же — автор статьи. ...

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

[Из песочницы] JavaScript: Создание простого MEVN-приложения О чем статья Цель этой статьи — показать, как можно создать базовое MEVN-приложение. Акроним MEVN означает — MongoDB + Express.js + Vue.js + Node.js. В качестве примера будет написано одностраничное приложение, которое содержит форму, состоящую из нескольких текстовых полей....

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

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

[Перевод] Лямбды: от C++11 до C++20. Часть 1 Добрый день, друзья. Сегодня мы подготовили для вас перевод первой части статьи «Лямбды: от C++11 до C++20». Публикация данного материала приурочена к запуску курса «Разработчик C++», который стартует уже завтра. Лямбда-выражения являются одним из наиболее мощных дополнений...

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

[Перевод] UDB. Что же это такое? Часть 5. Datapath. Полезные мелочи Продолжаем рассматривать UDB на основе фирменной документации Cypress, а именно полезные мелочи, связанные с Datapath. Читать дальше →

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

[Из песочницы] Переносим проект с Swift 4.2 на Swift 5.0 Привет, Хабр! Представляю вашему вниманию перевод статьи «Swift 5.0: How to migrate your project and frameworks» автора Antoine Van Der Lee. Swift 5.0 был выпущен в марте 2019 года и является первым стабильным выпуском ABI Swift. Несмотря на то, что многие ресурсы освещают ...

Подключение к Windows по SSH как в Linux Меня всегда удручало подключение к Windows машинам. Нет, я не противник и не сторонник Microsoft и их продуктов. Каждый продукт существует для своей цели, но речь не об этом. Для меня всегда было мучительно больно подключаться к серверам с Windows, потому что эти подключения...

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

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

Все что нужно знать о грядущем обновлении Windows 10 April Update (19H1) В этой статье мы подробнее рассмотрим предстоящее крупное обновление Windows 10 версии 1903 под кодовым названием 19H1, выход которого ожидается 10-го апреля текущего года. Данное обновление принесет с собой множество новых функций, включая новую светлую тему оформления, улу...

Fiat, сменивший шильдик? Популярный миф о ВАЗ-2103 развенчали в сети Существует мнение, что «трёшка» – не более чем «Фиат» 125, который немного переработали, но это правда лишь отчасти. Также не утихают споры о том, насколько прогрессивным был ВАЗ-2103 в своё время. В 1966 году советская делегация подписала с итальянской стороной договор, со...

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

Dagaz: Эпизоды (часть 2) — Один слон, одна колесница, пятеро пехотинцев и трое всадников составляют ПАТТИ, утроенное ПАТТИ составляет СЕНАМУКХУ,… а десять АНИКИНИ составляют АКШАУХИНИ, и это есть самая крупная войсковая единица…                                            Генри Лайон Олди «Гроза в б...

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

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

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

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

Xiaomi выпустила новый большой телевизор Redmi TV за 9 000 рублей Пока все производители электроники активно конкурируют друг с другом на рынке смартфонов, китайская Xiaomi продолжает наращивать свое присутствует на рынке телевизоров, а специально для этого она сегодня, 3 ноября 2019 года, представила и выпустила на Сообщение Xiaomi выпус...

[Перевод] Пингвин в окне: о потенциале и перспективах WSL2 Привет, Хабр! Пока у нас вовсю продолжается летняя распродажа, мы хотели бы предложить вам обсудить одну из самых масштабных тем, которую прорабатываем в последнее время — взаимодействие Windows и Linux, связанное, в частности, с развитием системы WSL. WSL 2 уже на подходе,...

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

Справочная: подробно об iPhone 11, 11 Pro и новых Apple Watch после двух недель тестирования Я походил с новыми айфонами и часами две недели и все это время старался записывать вопросы, которые мне задавали друзья и коллеги. Отвечаю на них здесь и готов отвечать на дополнительные в комментариях. Читать дальше →

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

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

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

JMeter — швейцарский нож тестировщика (Часть 2) Сегодня расскажу, как мы с помощью JMeter’а наладили процесс кэширования продуктовых страниц, проверили работу мобильного приложения без самого приложения и создали 2000 юзеров в системе без доступа к базе данных. Кто не в курсе, что здесь происходит, читайте первую часть ...

Гиперконвергентное решение AERODISK vAIR. Основа — файловая система ARDFS Привет, читатели Хабра. Этой статьей мы открываем цикл, который будет рассказывать о разработанной нами гиперконвергентной системе AERODISK vAIR. Изначально мы хотели первой же статьей рассказать всё обо всём, но система довольно сложная, поэтому будем есть слона по частям....

SP701 + PCAM-5C + 15 Минут+ VITIS = Easy MIPI на FPGA Аннотация Интерфейс MIPI сегодня становится всё более популярным интерфейсом для подключения камер и дисплеев. По этой причине всё больше отладочных комплектов на основе FPGA содержат на борту соединители интерфейса MIPI – как для подключения камер(ы) и дисплея(ев). Для того...

Криптографический АРМ на базе стандартов с открытым ключом. Выпуск SSL-сертификатов. Эпилог Вот мы и добрались до создания самоподписанных сертификатов. Где применяются самоподписанные сертификаты? Конечно, с самоподписанным сертификатом вы не сможете зарегистрироваться на сайте Госуслуг или подать подписанную декларацию в ФНС. Но для внутрикорпоративного документ...

Gemalto Instant Connect упрощает подключение устройств с eSIM к сотовой сети Компания Thales объявила о запуске Gemalto Instant Connect — новаторского решения, упрощающего подключение устройств с eSIM к сотовой сети. С одной стороны, оно избавляет пользователей от неудобств, связанных с необходимостью первоначального соединения по Wi-Fi ил...

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

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

Металлообработка на станках с ЧПУ: как начать выпускать продукцию мирового уровня? Представляю вашему вниманию статью на тему цифровизации производства и выпуска продукции нового поколения. В материале пойдет речь о CAD-CAM-системе как важной составляющей конкурентоспособного производства. В качестве примера расскажу об одной из таких систем – Solid Edge+S...

ESP32-CAM Video Streaming Server Подключение I2C и SPI дисплеев ESP-32 CAM модуль с камерой от Diymore ESP32-CAM Video Streaming Server Пример использования находится тут. Предварительно надо установить библиотеки: Esp32 board in Arduino Ide Windows / Esp32 board in Arduino Ide Linux and Mac Подробные настройки есть в статье. В моем...

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

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

[Перевод] Python в Visual Studio Code — июньский релиз Мы рады сообщить, что расширение Python для Visual Studio Code от июня 2019 года уже доступно. Вы можете загрузить расширение Python из Marketplace или установить его прямо из галереи расширений в Visual Studio Code. Если у вас уже установлено расширение Python, вы также мож...

bear_hug: игры в ASCII-арте на Python3.6+ Для своих игр в ASCII-арте я написал библиотеку bear_hug с очередью событий, коллекцией виджетов, поддержкой ECS и прочими полезными мелочами. В этой статье мы посмотрим, как с её помощью сделать минимальную работающую игру. Читать дальше →

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

Терминалы EK-Scalar предназначены для охлаждения нескольких 3D-карт одной СЖО Компания EK Water Blocks представила новые терминалы линейки Quantum Line. Они называются EK-Scalar и позволяют организовать охлаждение нескольких 3D-карт одной СЖО. С помощью терминалов в контур СЖО можно включить в два, три или даже четыре водоблока. Подключение получ...

Первый блокчейн-смартфон Finney и Ethereum подружились Компания Sirin Labs объявила об интеграции популярного криптовалютного кошелька MyEtherWallet (MEW) в первый в мире блокчейн-смартфон Finney, который представили в прошлом году. Пользователи смогут получить доступ к своим средствам Ethereum через веб-интерфейс MEWconnec...

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

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

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

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

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

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

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

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

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

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

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

MIRO — открытая платформа indoor-робота. Часть 4 — Программная составляющая: ARDUINO (AVR) Продолжаем разбирать программную составляющую платформы MIRO. Хочется более подробно рассмотреть именно программное обеспечение под AVR. Поэтому вопросу посвятим две части. В первой опишем общую структуру библиотеки, а во второй — реализацию некоторых ключевых методов клас...

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

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

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

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

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

Псевдо Lens Flare Привет, Хабр! Представляю вашему вниманию перевод статьи «Pseudo Lens Flare» автора John Chapman. Lens flare (блики на линзах) ― это фотографический артефакт, возникающий при рассеивании и преломлении света в системе линз. Хотя он является артефактом, существует множество...

Патент Microsoft направлен на повышение чувствительности контроллера Xbox One В Сети появился патент Microsoft для контроллеров Xbox One и связанных с ними системами. Эта патентная заявка Microsoft предназначена для улучшения регулировки чувствительности стика на контроллере Xbox One различными способами.Впервые замечен был патент под названием «РЕГУЛ...

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

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

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

Пишем telegram-бота на python с помощью библиотеки telebot часть 2 Всем привет! Это вторая часть статьи, в которой я посвящу время запросам и серверам telegram. Если кто-то еще не видел первую часть, то рекомендую её почитать. В третьей части скорее всего будет описана работа с базами данных. Ну и если у вас опять возникли вопросы, то пишит...

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

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

Глава Apple обратился к Конгрессу США посредством статьи в журнале Time Глава Apple Тим Кук написал статью для журнала Time, темой которой стала безопасность конфиденциальных данных. В статье Кук призвал к отстаиванию права на неприкосновенность личной жизни и назвал недопустимым ситуацию, когда компании ещё один год будут безответственно ...

История о том, как мы иконку PVS-Studio меняли Релиз 7.0 ознаменовал новую веху в истории анализатора PVS-Studio – теперь доступен анализ не только кода, написанного на C, C++, C#, но также и Java. Кроме этого глобального нововведения продолжают улучшаться и дорабатываться существующие механизмы анализа, добавляются ди...

[Из песочницы] Настройка reverse proxy для Nextcloud и ONLYOFFICE Привет, Хабр! Я занимаюсь тестированием редакторов документов ONLYOFFICE, а также тестированием интеграции редакторов в сторонние сервисы. К нам часто обращаются пользователи с различными проблемами при настройке, решения которых просто так не найти. Одна из самых популярных...

Однокристальная система Dialog Semiconductor FC9000 с поддержкой Wi-Fi и сверхнизким энергопотреблением предназначена для устройств IoT Компания Dialog Semiconductor, выпускающая контроллеры питания и зарядки, преобразователи напряжения, звуковые микросхемы и контроллеры Bluetooth с пониженным энергопотреблением, недавно представила однокристальную систему FC9000. Новинка стала первым изделием Dialog Se...

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

Топ 10 Недорогих Стильных товаров для Геймера В Данной статье описан топ товаров для геймеров, которые идеально подойдут на подарок другу или самому себе. к каждому товару имеется краткое описание. а также приведены ссылки на похожие статьи.

6 приложений, которые позволят запланировать отправку SMS на Android Они пригодятся, если вы всё время забываете поздравить кого-то с праздником или ваши друзья живут в другом часовом поясе.

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

[Перевод] Тренинг Cisco 200-125 CCNA v3.0. День 12. Углубленное изучение VLAN Сегодняшний урок мы посвятим продвинутому изучению VLAN. Прежде чем начать, напомню еще раз, чтобы вы не забывали делиться этими видео с друзьями и ставить лайки на нашем канале YouTube и в группе на Facebook. Сегодня мы изучим три темы: Native VLAN, VTP (VLAN Trunk Protocol...

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

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

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

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

Мобильные источники света Godox R1 и RF1 напоминают недавно представленные новинки Profoto Компания Godox представила светодиодные источники света R1 и RF1, адресованные тем, кто использует для фото- и видеосъемки смартфоны. Внешне устройства Godox R1 и RF1 довольно сильно напоминают недавно представленные светодиодные источники света Profoto C1 и C1 Plus. П...

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

Как мы спроектировали и реализовали новую сеть на Huawei в московском офисе, часть 3: серверная фабрика В предыдущих двух частях (раз, два) мы рассмотрели принципы, на основе которых построена новая пользовательская фабрика, и рассказали про миграцию всех рабочих мест. Теперь пришла пора поговорить о серверной фабрике. Читать дальше →

Как мы закрываем уязвимости в ОС Astra Linux Special Edition Операционных систем без уязвимостей не бывает — вопрос лишь в том, как эффективно разработчики их выявляют и закрывают. Наша ОС Astra Linux Special Edition здесь не исключение: мы постоянно проверяем и тестируем код на ошибки, нарушения логики, прочие баги и оперативно их ус...

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

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

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

Подключение «Аквасторожа» к «умному дому» на Z-Wave В прошлом году купил оборудование для аварийного перекрытия кранов при обнаружении протечки от «Аквасторож». Долго не мог его поставить. Была идея интегрировать его в Z-Wave сеть и получить аналог gidrolock, но работающий на батарейках. Наконец-то руки дошли… Читать дальше ...

ЦБ определился со сроком подключения «Сбербанка» к системе быстрых переводов по номеру телефона — с 1 сентября 2019 года Для этого Госдума должна принять закон об обязательном подключении к Системе быстрых переводов.

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

Создание таблиц в дизайн системе Figma и реализация в Storybook (React) В предыдущей статье на тему дизайна таблиц в Фигме мы выяснили, что базовый элемент создания любого data grid — это компонент ячейки, внутри которого спрятано все необходимое для того, чтобы оставаться в одном экземпляре и строить таблицы ячейка-за-ячейкой. Теперь поговори...

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

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

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

Устройство компилятора Swift. Часть 4 Это последняя часть моего обзора компилятора Swift. Я покажу, как можно осуществить генерацию LLVM IR из AST и что выдаёт настоящий фронтенд. Если вы не читали предыдущие части, то переходите по ссылкам: Общий обзор компонентов Разбор исходного файла Swift intermediate lan...

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

RankRanger: доминатный URL в блоках с ответами Google показывается в 77% случаев Команда RankRanger поделилась результатами исследования, призванного выяснить, насколько конкурентным является пространство блоков с ответами в Google. Исследование показало, что если сайт попадает в такой блок, то в большинстве случаев он будет делить его только с одним кон...

Универсальная PRTG. Мониторим процессор, камеры видеонаблюдения и Active Directory Продолжаем серию материалов о простой и гибкой системе мониторинга PRTG. В прошлый раз речь шла о возможностях PRTG в целом. На этот раз остановимся на создании сенсоров. В базе PRTG — 200 готовых сенсоров и 100 шаблонов для создания новых. В этой статье расскажем, как работ...

[Перевод] Панель мониторинга Grafana для пивной системы BeerTender Пояснение. BeerTender — устройство для охлаждения и розлива пива от Krups и Heineken. По заявлению производителей, оно сохраняет качества свежего пива в течение 30 дней после открытия кега. Конечно, системным администраторам и девопсам удобно отслеживать температуру и уровен...

Как перестать делать одно и то же Вы любите из раза в раз повторять рутинные операции? Вот и я нет. Но каждый раз в SQL-клиенте при работе с хранилищем Ростелекома приходилось прописывать все джойны между таблицами ручками. И это притом, что в 90% случаев поля и условия соединения таблиц совпадали от запроса...

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

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

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

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