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

Рассказываем про библиотеку для Process Mining: теперь SberPM в открытом доступе Process Mining – это подход к извлечению, анализу и оптимизации процессов на основе данных из так называемых журналов событий (event logs), доступных в корпоративных ИТ-системах. Являясь своеобразным мостиком между Data Mining и Process Management, он выводит исследование би...

[Перевод] Продвинутый уровень визуализации данных для Data Science на Python Как сделать крутые, полностью интерактивные графики с помощью одной строки Python Когнитивное искажение о невозвратных затратах (sunk cost fallacy) является одним из многих вредных когнитивных предубеждений, жертвой которых становятся люди. Это относится к нашей тенденции...

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

[Перевод] Напишем и поймем Decision Tree на Python с нуля! Часть 3. Библиотека для анализа данных Pandas Привет, Хабр! Представляю вашему вниманию перевод статьи "Pythonで0からディシジョンツリーを作って理解する (3. データ分析ライブラリPandas編)". Это третья статья из серии. Ссылки на предыдущие статьи: первая, вторая В данной статье я объясню, как работать с библиотекой Pandas, чтобы создавать De...

Google Dorking или используем Гугл на максимум Вступление Google Dorks или Google Hacking — техника, используемая СМИ, следственными органами, инженерами по безопасности и любыми пользователями для создания запросов в различных поисковых системах для обнаружения скрытой информации и уязвимостях, которые можно обнаружить...

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

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

[Перевод] Разворачиваем вложенные столбцы — списки с помощью языка R (пакет tidyr) В большинстве случаев при работе с ответом полученным от API, или с любыми другими данными которые имеют сложную древовидную структуру, вы сталкиваетесь с форматами JSON и XML. Эти форматы имеют множество преимуществ: они достаточно компактно хранят данные и позволяют избежа...

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

Публикуем дизайн-библиотеки компонентов VKUI в Figma Библиотеки в дизайн-инструментах — это важная часть дизайн-системы. Мы считаем, что дизайнеры должны работать с элементами, которые максимально приближены к реализации в коде. Поэтому в библиотеках мы собрали для них самые актуальные компоненты, которые отражают все те же со...

Redux Toolkit как средство эффективной Redux-разработки В настоящее время разработка львиной доли веб-приложений, основанных на фреймворке React, ведется с использованием библиотеки Redux. Данная библиотека является самой популярной реализацией FLUX-архитектуры и, несмотря на ряд очевидных преимуществ, имеет весьма существенные ...

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

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

[Перевод] Тактика Red Team: продвинутые методы мониторинга процессов в наступательных операциях И снова здравствуйте. В преддверии старта курса «Пентест. Практика тестирования на проникновение» перевели для вас еще один интересный материал. В этой статье мы собираемся разобраться в возможностях широко известных утилит мониторинга процессов и продемонстрировать, как ...

[Из песочницы] Частотный анализ русского текста и облако слов на Python Частотный анализ является одним из сравнительно простых методов обработки текста на естественном языке (NLP). Его результатом является список слов, наиболее часто встречающихся в тексте. Частотный анализ также позволяет получить представление о тематике и основных понятиях т...

Эффект реалистичного перелистывания страниц на JS Представляю вашему вниманию — один из возможных вариантов реализации довольно забавного приема, для создания эффекта реалистичного перелистывания страниц. Демо и документация: nodlik.github.io/StPageFlip Github: github.com/Nodlik/StPageFlip Подобный эффект я реализовывал...

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

[Перевод] Как выучиться на Data Scientist: наиболее востребованные технические навыки Какие технические знания становятся наиболее популярными у работодателей, а какие теряют свою популярность. В своей первоначальной статье 2018-го года я рассматривал спрос на общие навыки – статистику и коммуникацию. Также я рассматривал спрос на Python и язык программиро...

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

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

Разработка на удаленке: инсайты первого спринта За последние пару недель разве что ленивый не посоветовал окружающим, как правильно и без потерь перейти на удалёнку. Мы не будем вам ничего советовать. А просто расскажем, как мы наладили удаленную разработку нашего ключевого продукта и к 3-му апреля уже завершили первый, п...

Унифицируем арсенал Gatling Тестирование производительности — это непрерывный процесс оптимизации, контроля быстродействия систем и подтверждения их отказоустойчивости как на стадии моделирования и проектирования, так и на каждой итерации внесения изменений. Сейчас в Тинькофф мы активно занимаемся разв...

[Перевод] Как создать свой первый open source проект на Python (17 шагов) Каждый разработчик ПО должен знать как создать библиотеку с нуля. В процессе работы Вы можете многому научиться. Только не забудьте запастись временем и терпением. Может показаться, что создать библиотеку с открытым исходным кодом сложно, но Вам не нужно быть потрепанным ж...

The state of soft skills Так сложилось, что софт-скиллы довольно сильно помогли мне в карьере. Например, спустя всего 9 месяцев работы в Rambler, куда я приходил простым frontend-разработчиком, мне предложили стать руководителем группы, потому что мой руководитель увидел во мне потенциал и достаточн...

[Перевод] Используем Ansible вместе с Terraform Недавно я начал применять Terraform для создания облачной лабы для тестов, и это довольно круто. Буквально за несколько дней я поднялся с «никогда не использовал AWS» до «я умею декларативно создавать изолированную инфраструктуру в облаке». Я поставил парочку серверов в выд...

[Перевод] Минимизируем наложение лейблов в интерактивных визуализациях Перевод статьи подготовлен в преддверии старта курса «Промышленный ML на больших данных». Интересно развиваться в данном направлении? Смотрите записи трансляций бесплатных онлайн-мероприятий: «День Открытых Дверей», «Вывод ML моделей в промышленную среду на примере онлайн-ре...

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

[Из песочницы] Актуальные библиотеки визуализации данных для react-разработчиков Привет, Хабр! Представляю вашему вниманию перевод статьи «Data Visualization Libraries for React Developers in 2019» автора Veronika Rovnik. Вот уже несколько лет подряд React не сдаёт позиции и входит в тройку самых любимых библиотек профессиональных разработчиков по всему...

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

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

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

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

[Из песочницы] Повысьте производительность SPA, разбив ваши библиотеки Angular на несколько частей Привет, Хабр! Представляю Вашему вниманию перевод статьи «Improve SPA performance by splitting your Angular libraries in multiple chunks» автора Kevin Kreuzer. Angular — отличный фреймворк. Мы все его любим <3. Одна из вещей, которая делает Angular успешным и прекрасным в...

[Перевод] Мониторинг вашей инфраструктуры с помощью Grafana, InfluxDB и CollectD У компаний, которым необходимо управлять данными и приложениями на более чем одном сервере, во главу угла поставлена инфраструктура. Для каждой компании значимой частью рабочего процесса является мониторинг инфраструктурных узлов, особенно при отсутствии прямого доступа д...

Сверточная нейронная сеть и ее интеграция в iOS (часть 1) Средства реализации. Различные алгоритмы машинного обучения интегрированы в множество высокоуровневых языков программирования. Наиболее популярным и быстро развивающимся из них является Python. TensorFlow — открытая программная библиотека для машинного обучения, разработа...

[Перевод] Стилизация старого доброго элемента button Кнопка — это один из тех элементов, которые чаще всего используются на веб-страницах. Тег <button></button> может быть применён для запуска некоего процесса вроде вывода данных, открытия модального окна, отправки формы и так далее. В материале, перевод которого м...

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

[Перевод] Протокольно-ориентированное программирование в Swift 5.1 Протоколы — фундаментальное свойство Swift. Они играют важную роль в стандартных библиотеках Swift и являются обычным способом абстракции кода. Во многом они похожи на интерфейсы в других языках программирования. В этом руководстве мы представим вам подход к разработке прил...

Дополняя SQL. Часть 2. Оптимизация работы со строками и открытия файлов Публикую на Хабр оригинал статьи, перевод которой размещен в блоге Codingsight. Что будет в этой статье? Это вторая статья в цикле о жизни разработчиков IDE для баз данных. Ее структура будет похожа на первую. Как и в первой я расскажу о проблемах с которыми мы сталкивались...

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

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

Интеграция в проект LVGL графической библиотеки для микроконтроллеров LVGL — Light and Versatile Graphics Library также известная как LittleVGL. Библиотека поддерживает большое количество микроконтроллеров, таких как STM32, ESP32 и другие. Мне пока удалось запустить полноценную демо программу на ESP32 и STM32f429 Discovery. Библиотека открыт...

Когда видеокарты нет, но майнить очень хочется. Опубликованы требования к компьютеру для добычи криптовалюты ChiaCoin, которая опирается на SSD и HDD, а не на GPU На прошлой неделе мы писали о новой криптовалюте ChiaCoin, для добычи которой не требуется видеокарта, а сейчас стали известны требования к компьютеру, который будет использоваться для фарминга. Как оказалось, совсем уж простеньким ПК тут не обойтись. От скорости и объ...

Книга “Разработка мобильных приложений на C# для iOS и Android” Уважаемые читатели, рады представить вам книгу “Разработка мобильных приложений на C# для iOS и Android” от уже хорошо известного вам автора и эксперта в Xamarin, Вячеслава Черникова из компании Binwell. Без долгих прелюдий передаю слово автору. Добрый день, уважаемый хабр...

[Перевод] Python Gateway в InterSystems IRIS Эта статья посвящена Python Gateway — комьюнити-проекту с открытым исходным кодом для платформы данных InterSystems IRIS. Этот проект позволяет оркестрировать любые алгоритмы машинного обучения, созданные на языке Python (основная среда для многих Data Scientists), использов...

[Из песочницы] Формат таблиц в pandas Если вы пока ещё не знаете как транслировать данные напрямую заказчику в подсознание или, на худой конец, текст сообщения в slack, вам пригодится информация о том, как сделать процесс интерпретации таблиц более быстрым и комфортным. Например, в excel для этого используется у...

[Из песочницы] Ранжирование округов Москвы по стоимости аренды с Python Сейчас программирование все глубже и глубже проникает во все сферы жизни. А возможно это стало благодаря очень популярному сейчас python’у. Если еще лет 5 назад для анализа данных приходилось использовать целый пакет различных инструментов: C# для выгрузки (или ручки), Excel...

Повторяем когортный анализ, выполненный в Power BI, силами Python Добрый день уважаемые читатели! Поводом для написания данной публикации послужил вебинар, который я посмотрел на Youtube. Он был посвящен когортному анализу продаж. Автор использовал для работы с данными платформу Power BI Desktop. Ссылку на указанное видео приводить не буду...

ruleguard: динамические проверки для Go В этой статье я расскажу о новой библиотеке (и утилите) статического анализа go-ruleguard, которая адаптирует gogrep для использования внутри линтеров. Отличительная особенность: правила статического анализа вы описываете на особом Go-подобном DSL, который на старте rulegua...

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

[Перевод] Как обойти капчу-слайдер с помощью JS и Puppeteer Друзья, предлагаю вашему вниманию перевод статьи "How to bypass “slider CAPTCHA” with JS and Puppeteer" автора Filip Vitas. Спам для владельца сайта – огромная проблема. С другой стороны, капчи сводят меня с ума и ухудшают пользовательский опыт. Капчи отстой. Скаж...

Лучший чехол для Samsung Galaxy A31 На современном рынке аксессуаров можно найти абсолютно любые варианты, которые только придут вам в голову — производители по всему миру выпускают столько продукции, что даже представить страшно. Например, чехол для Samsung Galaxy A31 SM-A315 (2020) можно найти в абсолютно лю...

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

[Из песочницы] Знакомство с effector-dom на примере списка задач Многим уже известен стейт-менеджер effector, кто-то его уже не только смотрел, но и использует в проде. С конца осени его автор активно разрабатывает девтулзы для эффектора, и в процессе этой работы у него получилось написать очень интересную библиотеку для рендера приложени...

[Из песочницы] 10 строк кода, которые уменьшат боль от вашего проекта на Vue … или знакомство с плагинами Vue JS на примере интегрированной шины событий Пара слов о… Всем привет! Сразу оговорюсь. Я очень люблю VueJS, активно пишу на нем уже больше 2-х лет и не считаю, что разработка на нем может причинить боль хоть в какой-то значимой степени :) С д...

[Из песочницы] Typescript Compiler API: возьми управление компилятором в свои руки В разработке приложений на Typescript всегда есть этап сборки проекта. Обычно для этого используются системы сборки и автоматизации workflow, такие как webpack или gulp, обвешанные достаточным количеством плагинов, либо процесс сборки размазывается в командах package.json ...

[Из песочницы] Подключение OLED дисплея ssd1306 к STM32 (SPI+DMA) В данной статье будет описан процесс подключение oled дисплея с контроллером ssd1306 разрешением 128x64 к микроконтроллеру stm32f103C8T6 по интерфейсу SPI. Также мне хотелось добиться максимальной скорости обновления дисплея, поэтому целесообразно использовать DMA, а програм...

Kubernetes 1.17 — как обновиться и не потратить весь error budget 9 декабря вышла очередная версия Kubernetes — 1.17. Ее девиз — «Стабильность», множество фич получили статус GA, некоторое количество устаревших фич было удалено… И, как всегда, наш любимый раздел Action Required файла CHANGELOG-1.17.md требует к себе внимания. Поработае...

Предварительный обзор XFX Radeon RX 5500 XT THICC II Pro. Очень стильно В последнее время видеокарты компании AMD пользуются какой-то нереальной производительностью на рынке, так как пользователи поняли, что можно покупать данные модели с хорошей производительностью дешевле, чем у конкурента. Сегодня мы поговорим о довольно интересном продукте, ...

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

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

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

Функциональное программирование на TypeScript: задачи (tasks) как альтернатива промисам Предыдущие статьи цикла: Полиморфизм родов высших порядков Паттерн «класс типов» Option и Either как замены nullable-типам и исключениям В предыдущей статье мы рассмотрели типы Option и Either, которые предоставляют функциональную замену nullable-типам и выбрасыванию искл...

Citrus: Набор стилей для AvaloniaUI В комментариях к новостям об изменениях и улучшениях в новых версиях кроссплатформенного GUI-фреймворка AvaloniaUI довольно часто можно увидеть критику тем оформления, используемых по умолчанию. Дело в том, что данные темы были созданы на основе Metro — художественного стил...

Aсинхронный PHP Десять лет назад у нас был классический LAMP-стек: Linux, Apache, MySQL, и PHP, который работал в медленном режиме mod_php. Мир менялся, а с ним и важность скорости. Появился PHP-FPM, который позволил значительно увеличить производительность решений на PHP, а не срочно переп...

Собираем логи с Loki Мы в Badoo постоянно мониторим свежие технологии и оцениваем, стоит ли использовать их в нашей системе. Одним из таких исследований и хотим поделиться с сообществом. Оно посвящено Loki — системе агрегирования логов. Loki — это решение для хранения и просмотра логов, также э...

Разрабатываем чат на React с использованием Socket.IO Доброго времени суток, друзья! Хочу поделиться с вами опытом разработки простого чата на React с помощью библиотеки «Socket.IO». Предполагается, что вы знакомы с названной библиотекой. Если не знакомы, то вот соответствующее руководство с примерами создания «тудушки» и ч...

[Перевод] Node.js, Tor, Puppeteer и Cheerio: анонимный веб-скрапинг Веб-скрапинг — это метод сбора данных с веб-сайтов. Этот термин обычно используется в применении к автоматизированному сбору данных. Сегодня мы поговорим о том, как собирать данные с сайтов анонимно. Причина, по которой некто может захотеть анонимности в деле веб-скрапинга, ...

[Перевод] 14 open-source проектов для прокачки Data Science мастерства (easy, normal, hard) Data Science для начинающих 1. Sentiment Analysis (Анализ настроений через текст) Посмотрите полную реализацию проекта Data Science с использованием исходного кода — Sentiment Analysis Project в R. Sentiment Analysis — это анализ слов для определения настроений и мнений...

Импорт ЕГРЮЛ ФНС средствами Apache NiFi. Шаг 2 — преобразование XML в JSON В одном из проектов возникла необходимость перевести процессы импорта данных сторонних систем на микросервисную архитектуру. В качестве инструмента выбран Apache NiFi. В качестве первого подопытного выбран импорт ЕГРЮЛ ФНС. В предыдущей статье было описано, как получить файл...

Говорите о своей зарплате Давайте поговорим откровенно, товарищи айтишники. На фоне кучно опубликованных экономических и политических статей на Хабре, связанными с Nginx и Айхор, призывами объединяться в профсоюзы, самое время напомнить о наших классовых интересах. Будучи наёмным работником, у айтишн...

[Из песочницы] Реактивная разработка Telegram бота Доброго времени суток, Habr'овчане. В поисках различной информации по разработке бота для чата Telegram в сети Интернет обнаружил, что все tutorial'ы хоть и достаточно полны различными механиками взаимодействия с библиотекой «telegram-bot-api», никто не пришёл к умозаключен...

Hack The Box — прохождение Smasher2. Flask, WAF и LPE через pwn драйвера Данной статьей я начну публикацию решений отправленных на дорешивание машин с площадки HackTheBox. Надеюсь, что это поможет хоть кому-то развиваться в области ИБ. В данной статье мы пореверсим библиотеку для python, обойдем WAF и проэксплуатируем уязвимость mmap. Подключе...

[Перевод] Исчерпывающий путеводитель по тегу iframe Элемент iframe (сокращение от встроенного фрейма), вероятно, является одним из старейших тегов HTML и был представлен ещё в далеком 1997 году в HTML 4.01 Microsoft Internet Explorer. Хотя все современные браузеры поддерживают данный тег, многие разработчики пишут бесконечны...

Django Rest Framework для начинающих: создаём API для чтения данных (часть 1) Меня зовут Стас Гаранжа, я выпускник курса «Python-разработчик» в Яндекс.Практикуме. Я хочу помочь начинающим разработчикам, которые приступили к изучению Django Rest Framework (DRF) и хотят разобраться, как устроен этот фреймворк. Я готовлю цикл статей, в которых расскажу о...

Web Cryptography API: пример использования Доброго времени суток, друзья! В этом туториале мы рассмотрим Web Cryptography API: интерфейс шифрования данных на стороне клиента. Данный туториал основан на этой статье. Предполагается, что вы немного знакомы с шифрованием. Что конкретно мы будем делать? Мы напишем прос...

Бинарная совместимость Reaktive: как мы её обеспечиваем Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и принимаю участие в создании библиотеки Reaktive — Reactive Extensions на чистом Kotlin. Любая библиотека должна по возможности соблюдать бинарную совместимость. Если разные версии библиотеки в зависимостя...

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

[Перевод] Не начинайте учиться кодингу с Python, начните с языка C Python удивителен своей способностью продвигать программирование. Он как будто является подтверждением популярной идеи «если вы знаете английский, то должны знать, как писать код». Благодаря синтаксису, напоминающему английский язык, парадигме отступов и огромному количест...

Визуализация промисов и Async/Await Доброго времени суток, друзья! Представляю вашему вниманию перевод статьи «JavaScript Visualized: Promises & Async/Await» автора Lydia Hallie. Приходилось ли вам сталкиваться с JavaScript кодом, который… работает не так, как ожидается? Когда функции выполняются в про...

[Из песочницы] Code review — улучшаем процесс Представим команду, где не проводится Code review. Разработчики пишут код и без проверок вносят все изменения в основную ветку. Спустя время расширяется функционал или находятся баги, они возвращаются к исходному коду, а там все переменные названы одной буквой, нет следова...

[Перевод] Что JavaScript-разработчику следует знать о Curl Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «What JavaScript Developers Should Know About Curl» автора Valery Karpov. Curl — это популярный инструмент командной строки, часто используемый для отправки HTTP-запросов. Curl поддерживает большое...

[Перевод] Вражеский ИИ: преследование игрока без Navigation2D и поиска пути A* Создаёте игру, в которой враги должны преследовать игрока? Всё начинается с простого — заставим врага бежать к игроку. Но что произойдёт, если он находится за деревом, или за углом стены? Ну, теперь враг будет выглядеть довольно глупо — упрётся в объект, перебирая ногами на ...

Telegram Open Network: теория и практика от валидатора сети В последние несколько месяцев всё внимание мирового блокчейн-сообщества было приковано к запуску одного из самых масштабных криптовалютных проектов — Telegram Open Network (TON). Что на самом деле представляет из себя блокчейн TON? Является ли сеть TON действительно децен...

Рэнд Фишкин выступил в защиту Jumpshot Глава SparkToro Рэнд Фишкин (Rand Fishkin), который регулярно использовал данные Jumpshot в анализе поисковых запросов Google и постах на тему zero-click тренда, выступил в защиту компании, которая в скором времени будет закрыта. По его мнению, у Jumpshot отличная методологи...

Обзор Kaggle ML & DS Survey 2019. Или сколько зарабатывают ML специалисты Ежегодно Kaggle проводит опрос среди специалистов по анализу данных, и объявляет конкурс на поиск инсайтов из полученных данных. В этом году в опросе участвовало 19717 человек со всего мира. В статье рассматриваются лучшие обзоры и решения Kaggle ML & DS Survey 2019. Ч...

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

14 самых популярных Node.js-библиотек в 2020 году Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи «14 Most Useful NodeJS Libraries in 2020». В данной статье автор делится своими находками среди многочисленных пакетов Nodejs. Express Быстрый, гибкий, минималистичный, легкий в изучении фреймворк...

Кастомизация компонентов Ant Design и оптимизация бандла The Archivist by juliedillon Я Иван Копенков, ведущий фронтенд-разработчик в Mail.ru Cloud Solutions, в статье расскажу, какие есть подходы к кастомизации компонентов UI-библиотеки Ant Design, как это сделали мы, а так же покажу, как удалось полностью избавиться от неисполь...

Предварительный обзор Philips 276C8. Очень стильный монитор Сегодня мы поговорим о достаточно интересном мониторе, который за свои деньги предлагает и высокое качество изображения, и довольно привлекательный уровень дизайна, и массу дополнительных приятных бонусов. Даже цена для России уже известна, а значит самое время брать и изуча...

SSO на микросервисной архитектуре. Используем Keycloak. Часть №1 В любой крупной компании, и X5 Retail Group не исключение, по мере развития возрастает количество проектов, где требуется авторизация пользователей. С течением времени требуется бесшовный переход пользователей из одного приложения в другой и тогда возникает необходимость исп...

Введение в архитектурный фреймворк для анализа данных Lena Привет, Хабр! Я расскажу об архитектурном фреймворке, который я разрабатываю. Архитектура определяет наиболее общее устройство программы и взаимодействие её компонентов. Lena как фреймворк реализует конкретную архитектуру для анализа данных (подробнее о ней ниже) и предостав...

[Из песочницы] 5 фич JavaScript, без которых я не мог бы писать код (перевод) Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Kent Dodds «5 JavaScript Features I Couldn't Code Without». Это мой первый перевод, так что буду рад любым замечаниям. 5 фич JavaScript, без которых я не мог бы писать код Прежде чем мы начнем, по...

Машинное обучение. Нейронные сети (часть 2): Моделирование OR; XOR с помощью TensorFlow.js Статья является продолжением цикла статей, посвященных машинному обучению с использованием библиотеки TensorFlow.JS, в предыдущей статье приведены общая теоретическая часть обучения простейшей нейронной сети, состоящей из одного нейрона: Машинное обучение. Нейронные сети (ча...

Three.js и геометрия При использовании для отображения в браузере библиотеки ThreeJS в качестве первого примера обычно выступает куб или какой-либо другой простейший объект, и он создается при помощи предустановленных специальных классов BoxGeometry или SphereGeometry. Затем обычно рассматривает...

Open source: CI/CD и тестовая инфраструктура Авито для Android Мы вынесли в open source инфраструктуру Авито для Android: Gradle плагины, эмуляторы и библиотеки для тестов. Наш код будет полезен при автоматизации CI/CD, а также облегчит написание и поддержку автотестов. В этой обзорной статье мы расскажем, по...

Мое увлечение и непосредственное применение 3D принтера         Здравствуйте друзья. Хочу поделится историей моего увлечения и непосредственного участия 3D принтера в этом увлечении.         В детстве, в далеких 80-ых годах прошлого столетия, моей одной из любимых игрушек был знаменитый Кубик Рубика. Встав уже взрослым на одном и...

App Annie: Color Bump 3D — самая популярная игра в России в 2019 году Компания App Annie рассказала о текущем состоянии мобильного рынка, затронув в том числе данные о России. Если Sensor Tower утверждает, что всего пользователи потратили на мобильные приложения $83,5 млрд, то по данным App Annie только $86 млрд — это мобильные игры. А уже в ...

[Перевод] Java: свертывание многострочных логов в однострочный лог с помощью Spirng и логгера Logback или Log4j2 Logback и Log4j2 – одни из самых известных фреймворков логирования в JAVA. Фреймворк Logback используется только совместно с библиотекой SLF4J, которая представляет собой интерфейс для систем протоколирования событий. Log4j2 представляет собой вторую, улучшенную версию логге...

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

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

[Перевод] «Ленивая» загрузка с помощью Intersection Observer API Доброго времени суток, друзья! В данной статье мы познакомимся с Intersection Observer API, новым мощным инструментом для «ленивой» загрузки изображений и других элементов на странице, поддерживаемым всеми современными браузерами. Мы можем использовать этот инструмент для...

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

Что такое Deno и заменит ли он Node.js? Доброго времени суток. Представляю вашему вниманию перевод статьи «Deno vs. Node.js — Here are the most Important Differences» автора Louis Petrik. Является ли Deno новым Node.js? Или всего лишь хорошей альтернативой? В этой статье я постараюсь ответить на данные вопросы...

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

[Из песочницы] Android Remote Debugger — удаленная отладка Android приложений Отладка является важным этапом разработки программного обеспечения. Поиск и исправление ошибок позволяет разрабатывать качественные продукты. В данной статье я хочу поговорить об отладке только Android приложений. Android Studio предоставляет нам различные инструменты профил...

[Из песочницы] Как организована работа в Amazon Как и во многих других американских компаниях, организация рабочих процессов в Amazon построена на базовых принципах, основная цель которых – помочь сотрудникам принять правильное решение, основываясь на ценностях компании. Мы поговорили с продукт-менеджером в Amazon, которы...

Ленивая инициализация в C# Отложенная инициализация или «ленивая» инициализация — это способ доступа к объекту, скрывающий за собой механизм, позволяющий отложить создание этого объекта до момента первого обращения. Необходимость ленивой инициализации может возникнуть по разным причинам: начиная от же...

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

Ищем цепочку событий в потоке данных с помощью FlinkCEP В данной статье речь пойдет об использовании открытой платформы Apache Flink для обнаружения цепочки последовательности событий. Статья подойдет как для начинающих разработчиков в области обработки потоковых данных, так и для тех, кто желает познакомиться с Apache Flink. Н...

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

[Из песочницы] STM32CubeMonitor стоит попробовать Введение STM32CubeMonitor — утилита для удобного отображения данных с контроллеров семейства STM32. Причем не требуется никакого дополнительного оборудования, только плата с контроллером и программатор (я пробовал и китайский свисток и оригинальный st-link\v2). Слово «Cube» ...

Одна история с оператором Redis в K8s и мини-обзор утилит для анализа данных этой БД Что будет, если использовать всем известное in-memory-хранилище ключей и значений в качестве персистентной базы данных, не используя TTL? А если оно запущено с помощью надёжного, казалось бы, оператора в Kubernetes? А если в процессе увеличения реплик Redis мы внесём ещё о...

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

[Перевод] Product Discovery 101 для Product-менеджера Перевод статьи подготовлен в преддверии старта новой группы по курсу "Product Manager IT-проектов". Так что же такое Product Discovery? Product Discovery – это процесс выяснения того, что же в конечном итоге предстоит создать. Он отражает ваше видение, дает бол...

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

Начало конца: пора переносить музыку с Google Play Music Закрытие музыкального сервиса Google Play Music становится неотвратимым. Начинается процесс переноса любимого контента в YouTube Music. С 12 мая пользователи Play Music начали получать сообщения о том, что они могут перенести все свои плейлисты и любимые библиотеки на новую ...

Обзор The Walking Zombie 2. Почти ААА-шутер Мы привыкли к тому, что современные мобильные проекты заточены под казуальных геймеров, которые хотят давить шарики на дисплее или бездумно кликать по нему. Однако сегодня мы с вами поговорим о более интересном продукте, который явно стоит потраченного времени и внимания. Иг...

Интеграция проекта VueJS+TS с SonarQube В своей работе мы активно используем платформу SonarQube для поддержания качества кода на высоком уровне. При интеграции одного из проектов, написанном на VueJs+Typescript, возникли проблемы. Поэтому хотел бы рассказать подробней о том, как удалось их решить. В данной стать...

[Перевод] Мои любимые трюки в JavaScript Приветствую. Представляю вашему вниманию перевод статьи «My Favorite JavaScript Tips and Tricks», опубликованной 28 июля 2020 года автором Tapas Adhikary Большинство языков программирования являются достаточно открытыми, чтобы предоставить разработчикам возможность делать о...

[Из песочницы] Интеграция Gitlab, Jira и Confluence на Python для автоматизации сборки релизов Недавно на стендапе коллега внес рацпредложение: автоматизировать сборку релизов, взяв за основу готовые уже наработки по взаимодействию с Jira, написанные на Python. Процесс деплоя у нас следующий: когда накапливается достаточное количество задач, прошедших тестирование и...

[Перевод] Смотрим на Chapel, D, Julia на задаче вычисления ядра матрицы Введение Кажется, стоит вам отвернуться, и появляется новый язык программирования, нацеленный на решение некоторого специфического набора задач. Увеличение количества языков программирования и данных глубоко взаимосвязано, и растущий спрос на вычисления в области «Data Scien...

Кто умнее чем IDEA? Два года назад я вызвался постоять на стенде нашей компании JetBrains на последней конференции JBreak в Новосибирске. Перед конференцией мне спустили сверху вот такие карточки: И сказали, мол, ну раздай каким-нибудь людям на конференции на своё усмотрение. Я запаниковал. Ка...

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

Project Loom: виртуальные потоки в Java уже близко Несколько дней назад Ron Pressler разродился статьей State of Loom, которую не полайкал только самый ленивый джавист. Статья действительно хорошая, в ней много интересных метафор, которые я собираюсь бессовестно использовать теперь без ссылки на первоисточник. Со своей сто...

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

[Перевод] Аутентификация и чтение секретов в HashiCorp's Vault через GitLab CI Доброго времени суток, читатель! 22 апреля в GitLab выпустили релиз 12.10 и сообщили о том, что теперь CI-процесс может авторизовываться в Hashicorp's Vault через JSON Web Token (JWT), и для авторизации нет необходимости хранить токен для доступа к нужным policy в переменных...

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

Stadia Pro предлагает три новые игры в апреле Новый месяц, новые бесплатные игры. Подписчики Stadia Pro на данный момент получили доступ к нескольким играм. Это Destiny 2: The Collection, GRID, GYLT, Metro Exodus, Steamworld Dig 2, Steamworld Quest и Thumper. С 31 марта Thumper и Metro Exodus, должны покинуть библиотеку...

Managed Databases в Selectel: приглашаем в бету Сегодня мы представляем открытую для тестирования бета-версию Managed Databases для PostgreSQL, использование которой будет бесплатным на период бета-тестирования. Базы данных — один из наиболее значимых и сложных компонентов любой информационной системы или приложения. Пр...

[Перевод] Как достичь Уровня 5 по модели CMM в области QA и тестирования Перевод статьи подготовлен специально для студентов курса Python QA Engineer. В этой статье мы поговорим о том, что такое уровни СММ и как их достичь в QA-процессах, а также рассмотрим доступные и понятные примеры. Для любого процесса, будь то процесс контроля качества,...

[Из песочницы] Утечка памяти в Nuxt на стороне сервера при использовании SSR (Server Side Rendering) Привет, Хабр! Данная статья обязательна к прочтению всем, кто работает с Vue SSR, в частности с Nuxt. Речь пойдет об утечки памяти при использовании axios. Предыстория Пол года назад я попал на проект со стеком VueJS + Nuxt, его особенность была в том, что в проде постоянно...

[Перевод] Как разобрать URL в JavaScript? Доброго времени суток, друзья! Представляю Вашему вниманию перевод заметки «How to Parse URL in JavaScript: hostname, pathname, query, hash» автора Dmitri Pavlutin. Унифицированный указатель ресурса или, сокращенно, URL — это ссылка на веб-ресурс (веб-страницу, изображ...

2.Elastic stack: анализ security логов. Logstash В прошлой статье мы познакомились со стеком ELK, из каких программных продуктов он состоит. И первая задача с которой сталкивается инженер при работе с ELK стеком это отправление логов для хранения в elasticsearch для последующего анализа. Однако, это просто лишь на словах...

[Перевод] Что такое SDLC? Этапы, методология и процессы жизненного цикла программного обеспечения Цитируя автора книги Managing Information Technology Projects Джеймса Тейлора, «жизненный цикл проекта охватывает всю деятельность проекта». Задачей же разработки ПО является выполнение требований продукта. Если вы хотите научиться создавать и выпускать высококачественное ПО...

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

AMD выпустила открытую библиотеку FEMFX для создания реалистичной физики Компания AMD сообщила о доступности библиотеки деформируемой физики FEMFX (Finite Element Method — метод конечных элементов), предназначенной для расчета процессов на многоядерных ЦП. Библиотека является частью инициативы GPUOpen. Разработчики могут получить доступ к.....

На сайте-музее Winamp выложили 65000 скинов плеера Разработчик из Facebook Джордан Элдридж (Jordan Eldredge) создал виртуальный музей Winamp в память о любимом плеере. На площадке можно бесконечно скроллить темы и ностальгировать по ушедшей MP3-эпохе. Мы провели здесь несколько часов, потратив это время далеко не впустую. ...

Что покажет Samsung на CES 2020 Чего ожидать от Samsung на CES 2020? С 7 по 10 января 2020 года в Лас-Вегасе пройдет потребительская выставка CES 2020, на которой компании и стартапы со всего мира будут показывать свои продукты. В очередной раз не обошла стороной выставку компания Samsung. Помимо Galaxy No...

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

Тесты в Python: все основные подходы, плюсы и минусы. Доклад Яндекса Перед вами доклад Марии Зеленовой zelma — разработчика в Едадиле. За час Маша рассказала, в чём состоит тестирование программ, какие тесты бывают, зачем их писать. На простых примерах можно узнать про библиотеки для тестирования Python-кода (unittest, pytest, mock), принципы...

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

Развёртываем Hyperledger Fabric 2.0 на AWS Hyperledger Fabric — это блокчейн-платформа с открытым исходным кодом от Linux Foundation. С её помощью можно создавать блокчейн-приложения и управлять доступом и разрешениями для данных в цепочке блоков. Hyperledger Fabric стоит использовать в том случае, если требуется соз...

Как странный код скрывает ошибки? Анализ TensorFlow.NET Статический анализ – крайне полезный инструмент для любого разработчика, так как помогает вовремя отыскать не только ошибки, но и просто подозрительные и странные фрагменты кода, которые могут вызвать недоумение у программистов, которым пришлось бы работать с ним в будущем....

Вокруг data.table Эта заметка будет интересна для тех, кто использует библиотеку обработки табличных данных для R — data.table, и, возможно, будет рад увидеть гибкость ее применения на различных примерах. Вдохновившись хорошим примером коллеги, и надеясь, что вы уже почитали его статью, пред...

Эксперименты с микроконтроллерами в Jupyter Notebook Jupyter Notebook — любимый инструмент-среда для data scientist'ов, аналитиков, инженеров, математиков, студентов и даже для нас — самых обычных ученых в экспериментальной физике. Этот инструмент предназначен для работы с интерпретируемыми языками и удобного графического пре...

[Перевод] Архитектурный шаблон MVI в Kotlin Multipaltform, часть 1 Около года назад я заинтересовался новой технологией Kotlin Multiplatform. Она позволяет писать общий код и компилировать его под разные платформы, имея при этом доступ к их API. С тех пор я активно экспериментирую в этой области и продвигаю этот инструмент в нашей компани...

Реализация автодополнения кода в Ace Editor Ace (Ajax.org Cloud9 Editor) — популярный редактор кода для веб-приложений. У него есть как плюсы, так и минусы. Одно из больших преимуществ библиотеки — возможность использования пользовательских сниппетов и подсказок. Однако, это не самая тривиальная задача, к тому же не ...

Заморозка или модернизация — чем займёмся на каникулах? Близятся новогодние каникулы и в преддверии праздников и входных самое время ответить на вопрос: а что будет с ИТ-инфраструктурой на это время? Как она проживёт без нас всё это время? А может потратить данное время на модернизацию ИТ-инфраструктуры, чтобы в течение года «он...

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

«Яндекс.Такси» и не только: что известно о возможных IPO российских компаний в 2020 году Фото: «Яндекс» IPO – популярный инструмент привлечения инвестиций для развития компаний. Его активно используют и российские компании, которые размещают свои акции как на зарубежных биржах (последний пример – IPO HeadHunter на Nasdaq), так и на Московской бирже. Поговорим...

Повышение привилегий в Windows клиенте EA Origin (CVE-2019-19247 и CVE-2019-19248) Приветствую всех, кто решил прочитать мою новую статью с разбором уязвимостей. В прошлый раз небольшим циклом из трех статей я рассказал об уязвимостях в Steam (1, 2 и 3). В данной статье я расскажу об уязвимостях похожего продукта — Origin, который тоже является лаунчером д...

Визуализация сложных данных с использованием D3 и React Существует много возможныx вариантов реализации сложных графиков в ваших проектах. Я за несколько лет попробовал все возможные варианты. Сначала это были готовые библиотеки типа AmCharts 4. AmCharts сразу же оказался большим и неповоротливым. После этого были более гибкие и ...

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

[Перевод] Блокировать трекеры рекламы на сетевом уровне сложно, но возможно Когда вы выходите в интернет или используете приложение, множество компаний спокойно отслеживают каждое ваше действие. Некоторые, такие как Newrelic, достаточно невинны, они отслеживают ошибки пользователей и чтобы быстрее на них реагировать. Но другие, такие как Facebook ...

[Перевод] Анализ скорости распространения COVID-19 и публикация результатов на dstack.ai Предисловие переводчика Всем привет, давно ничего не писал на Хабр, но тут появился повод. Я довольно много лет проработал в области анализа данных и самая важная вещь, которую я понял за это время — в анализе данных очень не хватает инструментов, самых разных инструментов...

[Перевод] Как работает panic в Rust Как работает паника в Rust Что именно происходит, когда вы вызываете panic!()? Недавно я потратил много времени на изучение частей стандартной библиотеки, связанных с этим и оказалось, что ответ довольно сложный! Мне не удалось найти документы, объясняющие общую картину пани...

[Перевод] Планирование редакции Rust 2021 Рабочая группа Rust 2021 Edition рада сообщить, что следующая редакция Rust — Rust 2021 — запланирована на этот год. Пока что формально описывающий её RFC остаётся открытым, но мы ожидаем, что в скором времени он будет принят. Планирование и подготовка уже начались, и мы идё...

3 ловушки, в которые попадают начинающие Data Scientist Вот что может случиться, если плохо знаешь математику. Привет! Это Петр Лукьянченко, автор и руководитель онлайн-курсов «Математика для Data Science» в OTUS. Мы на занятиях любим все иллюстрировать кейсами, поэтому здесь тоже каждую проблему, с которой сталкиваются нович...

Немного SQL алхимии О популярной библиотеке SQLAlchemy для работы с разными СУБД из Python было написано довольно много статей. Предлагаю вашему вниманию обзор и сравнение запросов с использованием ORM и SQL подходов. Данное руководство будет интересно прежде всего начинающим разработчикам, пос...

1.Elastic stack: анализ security логов. Введение В связи окончанием продаж в России системы логирования и аналитики Splunk, возник вопрос, чем это решение можно заменить? Потратив время на ознакомление с разными решениями, я остановился на решении для настоящего мужика — «ELK stack». Эта система требует времени на ее нас...

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

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

[Перевод] Wasm или не Wasm? Мы, в компании Linkurious, занимаемся работой над Linkurious Enterprise. Это — веб-платформа, которая, используя возможности графов и средства их визуализации, призвана помогать компаниям и органам власти, расположенным по всему миру, бороться с финансовыми преступлениями. ...

IDA Pro и техники реверс-инжиниринга 0x00 start ; {EN} entry point, do nothing, just run _main {EN} Статья для начинающих “воинов тьмы”, тех, кто хочет погрузиться в темную сторону силы: реверс-инжиниринг. На нашем “операционном столе” будет небольшой кустарный сервер, который работает по протоколу TCP/IP. Для ...

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

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

Используем Gradle и Github Actions для публикации Java проекта в Sonatype Maven Central Repository В данной статье я хочу подробно рассмотреть процесс публикации с нуля Java артефакта через Github Actions в Sonatype Maven Central Repository используя сборщик Gradle. Данную статью решил написать ввиду отсутствия нормального туториала в одном месте. Всю информацию приходил...

Работа с асинхронностью в Dart Всем привет! Меня зовут Дмитрий Репин, я Flutter-разработчик в Surf.В этой статье я расскажу о том, как работать с асинхронностью в Dart: всё о самых важных классах библиотеки dart:async с примерами под катом. Поговорим о том, как в однопоточном языке сходить в сеть или базу...

Здоровье индексов в PostgreSQL глазами Java-разработчика Привет. Меня зовут Ваня, и я Java-разработчик. Так получилось, что я много работаю с PostgreSQL – занимаюсь настройкой БД, оптимизацией структуры, производительностью и немного играю в DBA по выходным. За последнее время я привёл в порядок несколько баз данных в наших микрос...

Как начать тестировать Ansible, отрефакторить проект за год и не слететь с катушек Это расшифровка выступления на DevOps-40 2020-03-18: Начиная со второго коммита любой код становится legacy, т.к. изначальные задумки начинают расходиться с суровой реальностью. Это не хорошо и не плохо, это данность с которой сложно спорить и необходимо уживаться. Частью э...

Автотесты на Android. Картина целиком Всем привет! Автотесты под Android — это непросто. Чтобы выстроить процесс автотестирования, надо запланировать и решить множество задач. Но самая большая беда заключается в том, что нигде нет полного описания, что вообще включает в себя автотестирование под Android, каковы...

Вот почему новейшие мобильные процессоры AMD не используют многочиповую компоновку Пару дней назад мы имели возможность увидеть, как выглядит кристалл процессора Ryzen 7 4800U. Несмотря на наличие восьмиядерного CPU и достаточно производительного GPU, все представители мобильной линейки Ryzen 4000 имеют монолитный кристалл. Источник поговорил с директ...

Собираем C++ с bazel Введение и мотивация В последнее время на Хабре появляются посты про то, что cmake и c++ — друзья, приводятся примеры, как собирать header-only библиотеки и не только, но нет обзора хоть сколько-нибудь новых систем сборки — bazel, buck, gn и других. Если вы, как и я, пишете ...

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

[Из песочницы] База данных на ScriptableObject c системой сейва/загрузки Введение В каждой игре есть данные, с которыми работают гейм-дизайнеры. В рпг — это база данных айтемов, в матч-3 — стоимость в кристаллах инструментов из магазина, в экшенах — количество хп, на которое лечит аптечка. Для хранения таких данных существует много способов — кт...

Fastify.js — не только самый быстрый веб-фреймворк для node.js Последние 10 лет среди веб-фреймворков для node.js самой большой популярностью пользуется Express.js. Всем, кто с ним работал, известно, что сложные приложения на Express.js бывает сложно структурировать. Но, как говорится, привычка — вторая натура. От Express.js бывает слож...

[Перевод] Об утечках GDI и о важности удачи В мае 2019 года меня попросили взглянуть на потенциально опасный баг Chrome. Поначалу я диагностировал его как неважный, потратив таким образом впустую две недели. Позже, когда я вернулся к расследованию, он превратился в причину номер один вылетов процесса браузера в beta-...

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

[Перевод] Deep Q Trading: объектно-ориентированный код на R Привет! Это перевод еще одной моей статьи, посвященной обучению с подкреплением (reinforcement learning). Эту итерацию даже предложили запостить в блоге Веды аналитики. :) В двух прошлых статьях на эту тему: 1 и 2 я пробовал создать и запустить обучение с подкреплением д...

[Из песочницы] Web Scraping. Часть 1 Введение Всем привет. Недавно у меня возникла идея о том, чтобы поделиться с интересующимся кругом лиц о том как пишутся скраперы. Так как большинству аудитории знаком Python все дальнейшие примеры будут написаны на нём. Данная часть рассчитана для того, чтобы познакомить те...

Адаптируем существующее бизнес-решение под SwiftUI. Часть 1 Доброго всем времени суток. О технологии SwiftUI, которую Apple анонсировали в прошлом году WWDC 2019, говорили уже много. В принципе уже довольно материала про ее особенности, что у нее под капотом и как это использовать для быстрого и красивого UI. Предлагаю вам небол...

Как добавить изображение и ссылку к подписи E-mail на Mac Подпись к письму – обязательный атрибут человека, который ежедневно использует электронную почту для переписки дома и на работе. Стандартным «С уважением, … » уже никого не удивишь, а именно поэтому в данном материале мы расскажем как разнообразить свою подпись изображением ...

Как тестировать код, содержащий setTimeout/setInterval под капотом Мы, разработчики, очень любим юнит-тесты, полезность которых очевидна. И чтобы эти тесты действительно были полезными, а не приносили боль, необходимо обеспечивать их стабильность. Наша компания разрабатывает интерфейсный фреймворк "Wasaby" и продает построенные на...

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

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

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

Мой опыт разработки на языке Nim Привет, Хабр! Уже довольно давно я пишу свой игровой фреймворк — такой pet project для души. А так как для души нужно выбирать что-то, что нравится (а в данном случае — на чём нравится писать), то выбор мой пал на nim. В этой статье я хочу поговорить именно про nim, про его...

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

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

«Цифровой экономикой» будет управлять ИТ-система за 96 миллионов Это следует из сопоставления данных в тематическом гостендере, в котором упомянутая сумма выставлена в качестве начальной максимальной цены контракта, которые приводит CNews.Непосредственным заказчиком работ выступает подведомственное Минкомсвязи федеральное государственное ...

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

[Из песочницы] WAL-G: бэкапы и восстановление СУБД PostgreSQL Уже давно известно, что делать бэкапы в SQL-дампы (используя pg_dump или pg_dumpall) – не самая хорошая идея. Для резервного копирования СУБД PostgreSQL лучше использовать команду pg_basebackup, которая делает бинарную копию WAL-журналов. Но когда вы начнёте изучать весь про...

jsqry — лучше, чем jq В своей прошлой статье на Хабре я писал про библиотеку Jsqry, которая предоставляет простой и удобный язык запросов (DSL) к объектам JSON. С тех пор прошло много времени и библиотека тоже получила свое развитие. Отдельный повод для гордости — библиотека имеет 98% покрытие ко...

Книга «Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд.» Привет, Хаброжители! Мы выпустили третью версию #1 Best Seller in Python Programming Amazon — популярного в мире руководства по языку Python. Вы сможете не только максимально быстро его освоить, но и научитесь писать программы, устранять ошибки и создавать работающие прило...

[Перевод] Чем отличаются Dagger, Hilt и Koin под капотом? Dagger и Koin, без сомнения, являются двумя самыми популярными фреймворками для внедрения зависимостей на Android. Обе эти библиотеки служат одной цели и кажутся очень похожими, но работают они по-разному.А при чем здесь Hilt? Hilt — это библиотека, которая использует Dagger...

Логирование запросов к приложению Django Привет, меня зовут Дмитрий Чернышов, я ведущий разработчик компании «БАРС Груп». Последние несколько лет среди прочих задач нам в команде приходится сталкиваться с необходимостью анализа производительности приложений на Django с большим количеством пользователей и постоянн...

[Перевод] Лучшие вопросы средней сложности по SQL на собеседовании аналитика данных Первые 70% курса по SQL кажутся довольно простыми. Сложности начинаются на остальных 30%. С 2015 по 2019 годы я прошёл четыре цикла собеседований на должность аналитика данных и специалиста по анализу данных в более чем десятке компаний. После очередного неудачного интервью...

Справочная: разбираемся с принципами SOLID Расскажем, кто их придумал и в чем они заключаются. Также поговорим о критике этого подхода — о том, почему некоторые разработчики отказываются следовать SOLID-методологиям. Читать дальше →

[Перевод] Отслеживаем прогресс выполнения в Python Зачем нужны индикаторы прогресса? Индикаторы прогресса (progress bar) — визуальное отображение процесса работы. Они избавляют нас от необходимости беспокоиться о том, не завис ли скрипт, дают интуитивное представление о скорости его выполнения и подсказывают, сколько времени...

1. Fortinet Getting Started v 6.0. Введение Добро пожаловать на новый видеокурс, посвященный решениям компании Fortinet — Fortinet Getting Started. По ходу данного курса я расскажу об основных решениях компании в рамках концепции Fortinet Security Fabric, а также на практике покажу работу с двумя основными решениями...

Blue-Green Deployment на минималках В этой статье мы с помощью bash, ssh, docker и nginx организуем бесшовную выкладку веб-приложения. Blue-green deployment — это техника, позволяющая мгновенно обновлять приложение, не отклоняя ни одного запроса. Она является одной из стратегий zero downtime deployment и лучше...

[Перевод] Как Replit отжимает мой open-source проект «Я думаю, вам следует закрыть проект и прекратить работать над ним. Я привлеку наших адвокатов в понедельник, если к тому времени вы не выполнитте условия. [...] Мы были крошечной компанией, когда вы стажировались у нас [...] К счастью, сейчас мы намного больше, и, что очень...

Тренды продуктовой безопасности 2020. Бесплатный онлайн-митап 21 апреля Поговорим о новых трендах, подходах инструментах и вызовах, которые возникают перед отделами информационной безопасности сегодня. Хранение данных в облаках, работа с третьесторонними вендорами и решениями, автоматизация security review в условиях непрерывной разработки и р...

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

Моддер смог ускорить загрузку игры GTA Online на 70% с помощью одного файла для оптимизации процессов Игре GTA Online требуется много времени на процесс загрузки. Эта проблема сопровождает игру с самого момента её выхода. Но как оказалось, есть возможность существенно ускорить процесс загрузки, воспользовавшись правильными настройками. Моддер t0st тщательно изучил ситуацию с...

Анимация в Android: плавные переходы фрагментов внутри Bottom Sheet Написано огромное количество документации и статей о важной визуальной составляющей приложений — анимации. Несмотря на это мы смогли вляпаться в проблемы столкнулись с загвоздками при её реализации. Данная статья о проблеме и анализе вариантов её решения. Я не дам вам сере...

Книга «C++ для профи» Привет, Хаброжители! С++ — популярный язык для создания ПО. В руках увлеченного программиста С++ становится прекрасным инструментом для создания лаконичного, эффективного и читаемого кода, которым можно гордиться. «C++ для профи» адресован программистам среднего и продвину...

[Из песочницы] Вывод текста на OLED дисплей с контроллером SH1106 по шине SPI через библиотеку HAL Здравствуйте, уважаемые читатели. В своих разработках на микроконтроллерах STM32, для вывода осмысленной информации, я пользуюсь OLED дисплеями на чипе SSD1306. В последний раз пришел ко мне 1,3" SPI модель по демократичной цене — около 200руб. Первое, что бросилось в г...

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

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

[Перевод] Делаем машину для намотки тороидальных катушек на базе Arduino Перевод с сайта Electric DIY Lab Всем привет, представляю вам изготовленную мною машину для намотки тороидальных катушек на базе Arduino. Машина автоматически наматывает проволоку и поворачивает тороид. В качестве интерфейса я использовал энкодер и ЖК-экран 16×2. Пользова...

Как выглядит zip-архив и что мы с этим можем сделать. Часть 4 — Чтение архива Продолжение цикла о Zip-архивах и PHP. Предыдущие статьи: Часть 1, Часть 2, Часть 3 Доброго времени суток, дорогие читатели. На этот раз я хотел бы представить, наверное, заключительную часть цикла о Zip-архивах и PHP. В этой статье я покажу как прочесть уже существующий ...

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

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

Хаос зависимостей в Python Знакомы ли вы с историей Python packaging? Ориентируетесь ли в форматах пакетов? Знаете ли, что распутывать клубок зависимостей придется даже когда кажется, что вот оно чудо — zero dependency? Уверен, что знакомы со всем этим не так хорошо, как автор библиотеки DepHell. М...

Что делать, если поймал HardFault? Что делать, если поймал HardFault? Как понять, каким событием он был вызван? Как определить строчку кода, которая привела к этому? Давайте разбираться. Всем привет! Сложно найти программиста микроконтроллеров, который ни разу не сталкивался с тяжелым отказом. Очень часто он...

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

Изучаем React: 300+ вопросов для подготовки к собеседованию Доброго времени суток, друзья! Представляю вашему вниманию первую версию репозитория с большим количеством вопросов (с ответами, разумеется) по React и связанным с ним технологиям. А много — это сколько? Это 322. Почему первая версия? Потому что будет еще и вторая, прим...

Вариант работы с вебсокетами в iOS на языке Swift / Написал менеджер для работы с websocket Всем привет. 4 года назад я уже разбирался с вебсокетами в iOS, тогда я решил задачу с помощью одной из библиотек cocoapods, статья есть на Хабре. А сегодня хочу продемонстрировать еще одно решение, нативное без cocoapods. Я написал свой менеджер для работы с вебсокетами ...

Общий финансовый анализ на Python (Часть 3) После всех вычислений, приведенных в этой и этой публикациях, можно углубиться в статистический анализ и рассмотреть метод наименьших квадратов. Для этой цели используется библиотека statsmodels, которая позволяет пользователям исследовать данные, оценивать статистические мо...

[Из песочницы] Пишем простую игру на python Сегодня мы создадим всем известную игру камень, ножницы, бумага. В этом нам поможет ЯП python и библиотека tkinter, но если вы не знаете что это такое, советую почитать данную статью. Первое, что нам нужно, это начальная структура, окошко, у меня оно будет выглядеть так: f...

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

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

Проверка коллекции header-only C++ библиотек (awesome-hpp) Волею судьбы мы проверили большинство библиотек, входящих в коллекцию под названием "Awesome hpp". Это небольшие проекты на языке C++, состоящие только из заголовочных файлов. Надеемся, найденные ошибки помогут сделать эти библиотеки немного лучше. Также мы будем ...

[Из песочницы] Визуализируя нейронный машинный перевод (seq2seq модели с механизмом внимания) Привет, Хабр! Представляю вашему вниманию перевод статьи "Visualizing A Neural Machine Translation Model (Mechanics of Seq2seq Models With Attention)" автора Jay Alammar. Sequence-to-sequence модели (seq2seq) – это модели глубокого обучения, достигшие больших успех...

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

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

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

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

Теории вероятностей: готовимся к собеседованию и разрешаем «парадоксы» Каждый год я участвую примерно в сотне собеседований в образовательных проектах JetBrains: собеседую абитуриентов в Computer Science Center и корпоративную магистратуру ИТМО (кстати, набор на программу идёт прямо сейчас). Все собеседования устроены по одному шаблону: мы про...

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

«Типичная ошибка — бездумно бенчмаркать всё подряд»: интервью с Андреем Акиньшиным о бенчмаркинге В прошлом году у Андрея Акиньшина (DreamWalker) вышла книга «Pro .NET Benchmarking»: подробнейший труд о бенчмаркинге, полезный как .NET-разработчикам, так и айтишникам других направлений. Когда до её выхода оставалась пара месяцев, мы проводили конференцию DotNext 2019 ...

Технические особенности онлайн-выступления: Starter Pack Недавно руководитель Роспотребнадзора назвала ограничение, которое будет отменено последним, — это будет отмена запрета на массовые мероприятия. Онлайн с нами надолго! Значит, начнём готовиться и поговорим сегодня о техническом обеспечении онлайн-выступления. На наших конфе...

Шпаргалка по визуализации данных в Python с помощью Plotly Plotly — библиотека для визуализации данных, состоящая из нескольких частей: Front-End на JS Back-End на Python (за основу взята библиотека Seaborn) Back-End на R В этой простыне все примеры разобраны от совсем простых к более сложным, так что разработчикам с опытом будет...

Делаем маршрутизацию (роутинг) на OpenStreetMap. Добавляем поддержку односторонних дорог Продолжаем цикл статей про построение систем роутинга со сложными требованиями на основе Open Source базы данных PostgreSQL и расширения PgRouting на карте OpenStreetMap. Сегодня мы поговорим о том, как добавить поддержку односторонних дорог (направлений движения). Зачастую,...

Деревья выражений в C# на примере нахождения производной (Expression Tree Visitor vs Pattern matching) Доброго времени суток. Деревья выражений, особенно в сочетании с паттерном Visitor, всегда являлись довольно запутанной темой. Поэтому чем больше разнообразной информации по этой теме, чем больше примеров, тем легче интересующимся будет найти что-то, что им понятно и полезно...

[Перевод] Backblaze — статистика жестких дисков за 2019 На 31 декабря 2019 г. у нас 124 956 работающих жестких дисков. Из них 2 229 загрузочных и 122 658 с данными. В данном обзоре мы рассмотрим статистику по отказам среди жестких дисков с данными. Также рассмотрим 12 и 14 TB версии дисков и новые 16 TB, которые мы активно испол...

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

Как мы использовали айтрекер для количественного эксперимента Привет, Хабр. На связи UX-лаборатория Авито. Сегодня хотим рассказать об опыте использования айтрекера для проведения количественного эксперимента. Серьёзных инсайтов и уроков не обещаем, просто поделимся своими мыслями. Расскажем, что вышло из идеи эксп...

Защита почты от Check Point. MTA Click-Time URL Protection Ни для кого не секрет, что почта и почтовые вложения являются одними из главных векторов атак. Тело письма может содержать фишинговые ссылки, которые ведут на зловредные сайты, где доверчивый пользователь может оставить свои личные данные или скачать зловреда (программы-шпио...

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

Сказ о том, как сделать машину времени для базы данных и случайно написать эксплойт Доброго времени суток, Хабр. Приходилось ли вам задумываться как поменять время внутри базы данных? Легко? Ну в некоторых случаях да, несложно — linux команда date и дело в шляпе. А если нужно поменять время только внутри одного экземпляра бд если их на сервере несколько? А...

Прозрачная аутентификация в ASP.Net Core на Linux Аутентификация в ASP.Net (Core) — тема довольно избитая, казалось бы, о чем тут еще можно писать. Но по какой-то причине за бортом остается небольшой кусочек — сквозная доменная аутентификация (ntlm, kerberos). Да, когда мы свое приложение хостим на IIS, все понятно — он за...

Facebook объявил о покупке Giphy Facebook покупает один из самых популярных поисковиков по GIF в интернете – Giphy. По данным Axios, стоимость сделки составила $400 млн. Согласно официальному заявлению Facebook, сотрудники стартапа присоединятся к команде Instagram. Библиотека Giphy будет интегрирована с In...

[Из песочницы] Российский SCRUM. Бессмысленный и беспощадный Доброе время суток, уважаемый Хабр! Я программист «старой школы», с опытом работы более 20 лет. Участвовал в разработке многих проектов, большая часть из которых довольно известные и успешные. В некоторых проектах занимал руководящие должности, достиг неплохого уровня зарпл...

Таяние вечной мерзлоты и эмиссия парниковых газов Данная публикация является транскрибацией очень интересного видео руководителя Северо-Восточной научной станции РАН Сергея Зимова. Ценность его выступление заключается в том, что он является практиком, который большое количество времени провел на севере на научной станции ...

[Из песочницы] Нужно ли нам озеро данных? А что делать с хранилищем данных? Это статья перевод моей статьи на medium — Getting Started with Data Lake, которая оказалась довольно популярной, наверное из-за своей простоты. Поэтому я решил написать ее на русском языке и немного дополнить, чтобы простому человеку, который не является специалистом по раб...

Какой язык выбрать для работы с данными R или Python? Оба! Мигрируем с pandas на tidyverse и data.table и обратно По запросу R или Python в интернете вы найдёте миллионы статей и километровых обсуждений по теме какой из них лучше, быстрее и удобнее для работы с данными. Но к сожалению особой пользы все эти статьи и споры не несут. Цель этой статьи — сравнить основные приёмы обработки д...

Чему нас научило тестирование государственной информационной системы Всем привет!  Я руковожу сектором тестирования в отделе системного анализа и тестирования департамента корпоративных систем ЛАНИТ. В этой сфере я уже 14 лет. В 2009 году я впервые столкнулась с тестированием государственной информационной системы. И для ЛАНИТ, и для заказчи...

[Из песочницы] MVP для Android — преимущества использования Moxy в качестве вспомогательной библиотеки В данной статье описываются преимущества использования Moxy в качестве вспомогательной библиотеки при использовании MVP для Android-приложения. Важно: здесь не сравнивается MVP с другими архитектурными подходами типа MVVM, MVI и т.п. В статье описывается почему, если в качес...

CI/CD на AWS, Azure и Gitlab. Новый курс от OTUS Внимание! Данная статья не является инженерной и предназначается читателям, которые интересуются образованием в области CI/CD. Вероятнее всего, если Вы не заинтересованы в обучении, данный материал не будет Вам интересен. Если вы разработчик или администратор, отвечающий ...

Планы команды IntelliJ Platform на 2020 год Сегодня мы хотели бы рассказать о некоторых из текущих проектов команды IntelliJ Platform, которые затронут IntelliJ IDEA и другие IDE на базе нашей платформы. Результаты этих проектов будут выпускаться в течение следующего года; некоторые из них попадут уже в релиз 2020.1, ...

А/Б тестирование, пайплайн и ритейл: брендированная четверть по Big Data от GeekBrains и X5 Retail Group Технологии Big Data применяются сейчас повсеместно — в промышленности, медицине, бизнесе, развлечениях. Так, без анализа больших данных не смогут нормально работать крупные ритейлеры, упадут продажи в Amazon, будут не в состоянии предсказывать погоду на многие дни, недели ...

Дополнительные компоненты для кроссплатформеннной библиотеки материального дизайна KivyMD Приветствую, уважаемые любители и знатоки Python! Если вы используете в своих приложениях Python и такие кроссплатформенные инструменты как фреймворк Kivy и библиотеку материального дизайна KivyMD, тогда вам точно будет интересно эта статья, в которой я расскажу о дополнит...

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

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

[Из песочницы] pyqtdeploy, или упаковываем Python-программу в exe'шник… the hard way Наверняка, каждый, кто хоть раз писал что-то на Python, задумывался о том, как распространять свою программу (или, пусть даже, простой скрипт) без лишней головной боли: без необходимости устанавливать сам интерпретатор, различные зависимости, кроссплатформенно, чтобы одним ...

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

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

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

Исследование рынка тимлидов в России Две недели назад к нам в New.HR пришел Егор Толстой (YourDestiny) и попросил собрать данные для его доклада на TeamLeadConf. Егора интересовало: • Сколько вакансий тимлидов есть на рынке. • Какое количество вакансий закрывается внешними кандидатами, а какое – внутренними....

[Перевод] Что я узнал после более чем 1000 code review За последние 3 года я рассмотрел более 1000 pull (merge) request’ов. За это время я многому научился — в основном тому, как не проверять код, как сделать процесс менее болезненным, что делает код хорошего качества и так далее. Pull request должен делать только одну вещь Это...

Hack The Box. Прохождение Rope. PWN. Форматные строки и ROP используя pwntools Продолжаю публикацию решений отправленных на дорешивание машин с площадки HackTheBox. В данной статье собираем много много pwn, которые будем решать средствами pwntools. Думаю будет полезно читателям с любым уровнем осведомленности в данной теме. Поехали… Подключение к л...

[Перевод] Руководство по Node.js для начинающих. Часть 1 Доброго времени суток, друзья! Представляю Вашему вниманию перевод этого руководства по Node.js. Введение в Node.js Node.js — это открытая и кроссплатформенная среда выполнения JavaScript. Это отличное решение почти для любого проекта. Node.js запускает «движок» Java...

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

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

Город и данные: анализ пешеходной доступности объектов в Праге с помощью data science Несколько лет назад компания Veeam открыла R&D центр в Праге. Изначально у нас был небольшой офис примерно на 40 человек, но компания активно растет, и сейчас, в новом просторном офисе Rustonka нас уже больше двухсот. Veeam нанимает сотрудников не только из Чехии и Евро...

На MyBook теперь можно не только читать, но и слушать книги Теперь забросить чтение из-за нехватки времени будет сложнее: в электронную библиотеку MyBook добавились аудиокниги. Сейчас в каталоге их 37 тысяч, включая художественную классику, современные бестселлеры и нон-фикшен. Доступность изданий зависит от категорий подписки. Их у ...

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

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

Arc — система контроля версий для монорепозитория. Доклад Яндекса Системы контроля версий уже давно стали повседневным инструментом разработчика. В больших монорепозиториях требования к ним оказываются весьма специфическими. Из-за этого компании либо адаптируют существующие решения, как это делает Facebook с Mercurial и Microsoft с Git, ли...

Embox на процессоре Эльбрус. Или никогда не забывайте о том, что получили при разведке Данная статья является логическим завершением серии статьей “восхождение на Эльбрус” об ознакомлении Embox с процессорной архитектурой Эльбрус (E2K) . Почему логическим завершением, потому что в результате удалось через telnet запустить приложение, которое выводит на экран ...

[Из песочницы] Почему в 2020 году мы по-прежнему выбираем Ruby? Привет, Хабр! Представляю вашему вниманию перевод статьи «Why is Ruby still our choice in 2020?» автора Vira Vashkovska. Мы — опытная команда Ruby on Rails разработчиков. Некоторые из нас занимаются разработкой на Ruby уже многие годы и знают его как свои пять пальцев. Вот ...

Граф сообщества «Что? Где? Когда?» (ЧГК) или сколько рукопожатий до Друзя? Привет, Хабр! Новогодние праздники — отличное время, чтобы отдохнуть от IT использовать профессиональные навыки в любимом хобби. Ковыряясь на сайте рейтинга спортивного ЧГК, я обнаружил отличный API, позволяющий получить данные о всех играх всех турниров. Так у меня появила...

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

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

[Из песочницы] Управление портфелями опционов в R Программ для анализа и управления портфелями опционов много. Они есть в торговых терминалах, в виде отдельных коммерческих продуктов или сервисов на сайтах. У таких программ есть ряд ограничений: портфели привязаны к торговой платформе, котировки подкачиваются из определённо...

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

Python в Mobile development Ни для кого не секрет, что область применения Python довольно широка: начиная от web-технологий, игровой индустрии и заканчивая проектами NASA. Python работает практически везде: от карманных компьютеров и смартфонов до серверов сети и практически на всех известных платфор...

[Из песочницы] Конспект по методам классификации данных При изучении Data Science, я решил составить для себя конспект по основным приемам, используемым в анализе данных. В нем отражены названия методов, кратко описана суть и приведен код на Python для быстрого применения. Готовил конспект для себя, но подумал, что кому-то это та...

Собеседование php-developer в 2020 Так уж получилось, что в этом году я прошел ряд собеседований на позицию PHP разработчика, чего я не делал уже несколько лет. Будучи человеком ленивым практичным, перед собеседованием я попытался найти сборники вопросов-ответов, но все найденное было довольно старым, поэтому...

Язык R для пользователей Excel (бесплатный видео курс) В связи с карантином многие сейчас львиную долю времени проводят дома, и это время можно, и даже нужно провести с пользой. В начале карантина я решил довести до ума некоторые проекты начатые несколько месяцев назад. Одним из таких проектов был видео курс "Язык R для пол...

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

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

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

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

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

Книга «Bash и кибербезопасность: атака, защита и анализ из командной строки Linux» Привет, Хаброжители! Командная строка может стать идеальным инструментом для обеспечения кибербезопасности. Невероятная гибкость и абсолютная доступность превращают стандартный интерфейс командной строки (CLI) в фундаментальное решение, если у вас есть соответствующий опыт....

5 малоизвестных возможностей JSON.stringify() Доброго времени суток, друзья! В этой небольшой заметке я хочу рассказать вам о некоторых редко используемых возможностях JSON.stringify(). Возможно, они окажутся вам полезными. JSON.stringify() часто используется при отладке для преобразования объекта или обычной стро...

[Перевод] Аутентификация REST API с помощью Spring Security и MongoDB Всем привет! Уходя на выходные делимся с вами статьей, которая была переведена в преддверии старта курса «Разработчик на Spring Framework». В прошлых статьях мы создавали RESTful веб-сервис, теперь же мы поговорим о безопасности Вступление В предыдущем посте мы рассмотр...

Мы не рабы, рабы не мы «Мы не рабы́, рабы не мы» — это фраза из первой советской азбуки «Долой неграмотность: Букварь для взрослых» от 1919 года. Данная книга стимулировала миллионы людей в нашей стране менять свой быт, сознание и даже политический строй. Прошло сто лет. И кажется на какой-то ра...

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

[Перевод] Как ограничить частоту запросов в HAProxy: пошаговая инструкция Автор статьи объясняет, как реализовать в HAProxy ограничение скорости обработки запросов (rate limiting) с определенных IP-адресов. Команда Mail.ru Cloud Solutions перевела его статью — надеемся, что с ней вам не придется тратить на это столько времени и усилий, сколько пр...

[Перевод] Marshmallow vs. Pydantic: две лучшие библиотеки для сериализации и валидации данных на Python Сериализация и десериализация данных — это преобразование между необработанной структурой данных и экземплярами классов для их хранения и передачи. Например, преобразование объектов Python в JSON-представление. Мы рассмотрим две популярные Python-библиотеки Marshmallow и Pyd...

Ведьмаку заплатите чеканной монетой — разбираем главную песню из сериала «Ведьмак» на английском «Toss a coin to your witcher» — после выхода сериала «Ведьмак» от Netflix эта песня звучала из каждого утюга. Серьезно, только очень ленивый музыкант не попытался сделать на нее кавер. Весь YouTube просто лихорадило. Мотив песни довольно прилипчивый, но ведь и слова любоп...

[Перевод] Как устроен процесс создания docker-контейнера (от docker run до runc) Перевод статьи подготовлен в преддверии старта курса «Инфраструктурная платформа на основе Kubernetes». За последние несколько месяцев я потратил немало личного времени на изучение работы Linux-контейнеров. В частности, что конкретно делает docker run. В этой статье я соб...

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

PostgreSQL. Добавляем not null constraints в большие таблицы Проекты развиваются, клиентская база увеличивается, базы данных разрастаются, и наступает момент, когда мы начинаем замечать, что некогда простые манипуляции над базами данных требуют более сложных действий, а цена ошибки сильно повышается. Уже нельзя за раз промигрировать...

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

Миграция из Oracle в Postgres Зачем переносить данные Тема переноса (миграции) данных из Oracle в Postgres набирает обороты. В РФ количество запросов по переходу на Postgres на волне импортозамещения, сейчас больше, чем когда либо. Oracle — очень качественный, мощный и отлично документированный инструме...

Знание и состояние Сердце любого современного сайта или браузерного приложения (что SPA, что PWA, что любые другие три буквы) — это его State, или состояние. Мы можем сколько угодно спорить о том, что лучше — React, Vue, Svelte, Angular, можем продолжать пользоваться jQuery, но в действительно...

[Перевод] Жизнь байта данных Любой облачный провайдер предлагает услугу хранения данных. Это могут быть холодные и горячие хранилища, Ice-cold, и т.д. В облаке хранить информацию довольно удобно. Но как вообще хранили данные 10, 20, 50 лет назад? Cloud4Y перевёл интересную статью, рассказывающую как р...

Kotlin Multiplatform. Работаем с многопоточностью на практике. Ч.1 Доброго всем времени суток! С вами я, Анна Жаркова, ведущий мобильный разработчик компании «Usetech» Я давно занимаюсь не только нативной разработкой (как iOS, так и Android), но и кросс-платформенной. В свое время я очень плотно писала на Xamarin (iOS, Android, так и Forms...

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

Анализ тональности текста на Node.js Всем привет. Тема достаточно интересная и может показаться довольно не простой в реализации. Но я человек практический и хочу прикоснуться к прекрасному особо не напрягаясь. Сегодня мы с вами сделаем "микросервис" для анализа сентиментальности / тональности текста...

Идеальный инструмент для работы с СУБД без SQL для Node.js или Все, что вы хотели знать о Sequelize. Часть 2 Представляю вашему вниманию руководство по Sequelize. Sequelize — это ORM (Object-Relational Mapping — объектно-реляционное отображение или преобразование) для работы с такими СУБД (системами управления (реляционными) базами данных, Relational Database Management System, RD...

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

SKR v2 Уже в продаже Всем доброго времени суток.Вчера на портале был выложен пост о прекращении поставки skr 1.3, 1.4. Ссылка вот тут.Я бы хотел немного уточнить и поправить данную информацию. Платы skr v2 уже продаются в розницу на Али. Ссылка вот тут. Так же данная плата уже есть в наличии в м...

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

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

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

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

Компонент Slider из библиотеки материального дизайна Началось с небольшой детективной истории — разглядывая сайт Material Design, наткнулся на страницу Sliders. В описании говорилось, что данный компонент доступен для Android и даже дана ссылка на Гитхаб. Меня это немножко удивило, так как я ни разу о нём не слышал. Перехожу п...

[Перевод] Используем nftables в Red Hat Enterprise Linux 8 Статья подготовлена в преддверии старта курса «Администратор Linux» В Red Hat Enterprise Linux 8 приоритетным низкоуровневым решением является nftables. В этой статье мы поговорим о том, как начать использовать nftables. Наиболее актуальной она будет для системных администр...

[Из песочницы] DevOps инструменты не только для DevOps. Процесс построения инфраструктуры автоматизации тестирования с нуля Часть 1: Web / Android Примечание: данная статья является переводом на русский язык оригинальной статьи «DevOps tools are not only for DevOps. Building test automation infrastructure from scratch». Однако все иллюстрации, ссылки, цитаты и термины сохранены на языке оригинал...

[Перевод] Портируем Quake на iPod Classic Запускаем Quake на iPod Classic (видео). TL;DR: мне удалось запустить Quake на MP3-плеере. В статье описывается, как это произошло. Часть прошлого лета я потратил на пару своих любимых вещей: Rockbox и игру Quake id Software. Мне даже предоставилась возможность объединить...

Как мы считаем людей с помощью компьютерного зрения Фото из открытых источников Массовые скопления людей создают проблемы в самых разных областях (ритейл, госслужбы, банки, застройщики). Заказчикам необходимо объединять и мониторить информацию о количестве людей во множестве мест: в офисах обслуживания, административных пом...

[Из песочницы] Отладка и программирование микроконтроллеров stm32f303, atmega328 через любой интерфейс, как через jtag Данная статья посвящена моему первому open source проекту “repl”(ссылка на репозиторий внизу). Идея данного проекта заключается в том, чтоб позволить программисту микроконтроллеров отлаживать программу в микроконтроллере через любой его интерфейс, при этом чтобы отладка не с...

Беги, муравей. Беги В данной статье рассматривается процесс создания имитационной модели поведения муравьиной колонии (можно почитать в википедии ) в среде имитационного моделирования «AnyLogic». Данная статься носит практический характер. В ней будет рассмотрен вопрос применения муравьиного ал...

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

[Из песочницы] Большой туториал по обработке спортивных данных на python Последние пару лет в свободное время занимаюсь триатлоном. Этот вид спорта очень популярен во многих странах мира, в особенности в США, Австралии и Европе. В настоящее время набирает стремительную популярность в России и странах СНГ. Речь идет о вовлечении любителей, не пр...

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

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

Samsung представила свой аналог AirDrop. Что он умеет Quick Share — это аналог AirDrop от Samsung, который можно назвать даже более продвинутым, чем оригинал Несмотря на то что обычно Apple довольно нетороплива в освоении новых технологий, наиболее ценные наработки, которым предстояло изменить рынок, первой внедряла именн...

Количество загрузок приложения Google Stadia превысилj 1 миллион Google Stadia была запущена в ноябре 2019 года, с тех пор о количестве пользователей не было никакой информации. По данным аналитической компании Sensor Tower приложение Google Stadia превысило около 1 миллиона загрузок на операционных системах iOS и Android. Но приложение...

Программирование ESP32 с использованием JTAG программатора ESP-Prog и ESP-IDF ESP-Prog Всем доброго времени суток. На просторах Али можно найти такой программатор, как ESP-Prog, на чипе FTDI2232H, с виртуальным COM-портом на борту: Среда разработки Как IDE мы будем использовать Visual Studio с плагином VisualGDB. Данный плагин предназначен для раз...

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

[Из песочницы] Кажется, мой iPhone забыл пароль от корпоративной Wi-Fi сети Всем привет! Уже и не думал что вернусь к этому кейсу, но Cisco Open Air Wireless Marathon подтолкнул меня вспомнить и рассказать про личный опыт, когда чуть больше года назад мне довелось потратить довольно много времени над изучением проблемы с беспроводной сетью на базе ...

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

[Перевод] Terraform, моно-репозитории и compliance as code Всем привет. OTUS открыл набор в новую группу по курсу «Инфраструктурная платформа на основе Kubernetes», в связи с этим мы подготовили перевод интересного материала по теме. Возможно, вы один из тех, кто использует terraform для Infrastructure as a Code, и вам интересно...

Кому на бюджете жить хорошо? ВСТУПЛЕНИЕ В каком году — рассчитывай, В какой земле — угадывай, На столбовой дороженьке Сошлись семь мужиков: Семь временнообязанных, Подтянутой губернии, Уезда Терпигорева, Пустопорожней волости, Из смежных деревень: Заплатова, Дырявина, Разутова, Знобишина. Горелова, Нее...

Microsoft выпустила пакет совместимости с OpenCL и OpenGL для Windows 10 На этой неделе Microsoft выпустила «Пакет обеспечения совместимости с OpenCL и OpenGL» для Windows 10, который позволяет запускать приложения с аппаратным ускорением для повышения производительности, если на устройстве не установлены необходимые драйверы OpenCL или OpenGL, ...

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

Дерево отрезков: просто и быстро Накануне очередного запуска курса «Алгоритмы для разработчиков» мы провели открытый урок. На нём поговорили об известной идее дерева отрезков, обсудили, как его строить, обновлять и быстро O(log n) вычислять сумму чисел любого отрезка данного массива. Алгоритм очень простой ...

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

Nginx-log-collector утилита от Авито для отправки логов nginx в Clickhouse В этой статье будет рассматриваться проект nginx-log-collector, который будет читать логи nginx, отправлять их в кластер Clickhouse. Обычно для логов используют ElasticSearch. Для Clickhouse требуется меньше ресурсов (дисковое пространство, ОЗУ, ЦПУ). Clickhouse быстрее запи...

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

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

Битва снифферов: Charles vs Proxyman Привет, меня зовут Даша, я работаю тестировщицей клиентского мобильного приложения в компании Ozon.Сегодня поговорим о снифферах в тестировании мобильных приложений –– программах для перехвата, анализа и модификации трафика. Пожалуй, самый популярный сниффер из тех, о которы...

База данных на SharedPreferences — Android Kotlin Для хранения большого количества информации в Android используется DataBase (SQLite, FireBase и т. п.), а для простого хранения настроек SharedPreferences. Вопрос, можно ли использовать SharedPreferences как своего рода Базу Данных и как это сделать? Статья написана об учеб...

[Перевод] Разработка более быстрых приложений на Vue.js JavaScript — это душа современных веб-приложений. Это — главный ингредиент фронтенд-разработки. Существуют различные JavaScript-фреймворки для создания интерфейсов веб-проектов. Vue.js — это один из таких фреймворков, который можно отнести к довольно популярным решениям. Vu...

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

Проходим челлендж от Callum Macrae на 100% Предлагаю попробовать решить 10 regex тестов от Callum Macrae. В отличии от моего предыдущего разбора челленджа, здесь нет откровенно простых и даже средних задач. Как говорится — только regex, только хардкор. Так как челлендж довольно сложный, не обязательно следовать всем ...

[Из песочницы] Используй время правильно: автоматизация процессов в Tinder Думаю многие любят знакомиться в соц. сетях и пользуются приложениями (например Tinder), но часто уходит много времени на то, что бы ставить лайки и отправлять первые сообщения. Я считаю что это монотонные действия которые только отталкивают от общения и знакомства. Если ты...

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

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

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

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

[Перевод] Разворачиваем Jenkins как код Прим. перев.: это перевод статьи из инженерного блога компании Preply о том, как можно использовать конфигурацию как код для такого популярного CI/CD инструмента как Jenkins. В нашей компании, мы стараемся следовать практикам «Все как код», это касается не только инфраструк...

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

[Перевод] Как стать DevOps инженером за полгода или даже быстрее. Часть 1. Введение Целевая аудитория Вы разработчик, который хочет повернуть свою карьеру в сторону более совершенной модели DevOps? Вы являетесь классическим Ops-инженером и хотели бы получить представление о том, что означит DevOps? Или же вы не являетесь ни тем, ни другим и, потратив некото...

[Перевод] Заменяем User Story на Job Story Всем привет. Перевели еще один интересный материал для студентов курса «Product Manager IT-проектов». Приятного прочтения Раньше, я уже писал о проблемах с user story (пользовательскими историями). В те времена я считал, что лучше просто попросить команду обсудить предлаг...

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

История нашего open source: как мы сделали сервис аналитики на Go и выложили его в открытый доступ В настоящее время практически каждая компания в мире собирает статистику о действиях пользователя на web ресурсе. Мотивация понятна — компании хотят знать как используется их продукт/веб сайт и лучше понимать своих пользователей. Конечно на рынке существует большое количеств...

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

Debouncing с помощью React Hooks: хук для функций Здравствуйте! Меня зовут Игорь Шамаев, я главный инженер по разработке в команде SmartData. Занимаюсь fullstack-разработкой внутренней аналитической BI-системы. В нашей компании React принят в качестве основного стандарта для построения пользовательских интерфейсов. Как и бо...

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

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

7 апреля Яндекс подробно расскажет о создании Турбо-сайтов в Директе 7 апреля в 12:00 по московскому времени Яндекс проведет вебинар  «Турбо-сайты в Директе: с чего начать». На вебинаре специалисты Яндекса поделятся рекомендациями по созданию Турбо-сайтов и расскажут: как перенести Турбо-страницы в Турбо-сайты, какие поля обязательны при...

Что скрывается за VestaCP Вряд ли сейчас кому-то может прийти в голову мысль написать свою панель управления сервером: интернет давно прикипел к ISP, cPanel, Plesk и десятку их аналогов. Все «взрослые» панели умеют примерно одно и то же, различаясь лишь интерфейсом, уровнем поддержки и специфически...

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

[Из песочницы] Ускоряемся в Entity Framework Core Не будь жадиной! При выборке данных выбирать нужно ровно столько сколько нужно за один раз. Никогда не извлекайте все данные из таблицы! Неправильно: using var ctx = new EFCoreTestContext(optionsBuilder.Options); // Мы возвращаем колонку ID с сервера, но ни...

Windows 10 устанавливает средства обновления Microsoft Update Health Tools Средства Microsoft Update Health Tools, похоже, развертываются для пользователей как часть Windows 10 KB4023057, которая является обязательным обновлением для всех версий ОС. Microsoft регулярно перевыпускает его, особенно когда для устройства заканчивается период поддержки ...

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

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

Где взять аудио для машинного обучения: подборка открытых библиотек с лицензией Creative Commons Небольшой дайджест для тех, кто разрабатывает модели машинного обучения. Под катом — своды данных с речью, музыкой и шумом промышленных агрегатов. Читать дальше →

Quartet 9: Allegro | TypeScript Когда создавалась библиотека для валидации данных quartet были поставленны следующие цели-ориентиры: TypeScript Краткость и простота Производительность В этой статье я хотел бы рассмотреть ориентированность quartet на TypeScript. Читать дальше →

DCIRN: может ли база данных о даунтаймах ЦОД предотвращать аварии? Тем не менее, объем данных часто затрудняет выявление первопричины. С другой стороны, чем больше данных, тем выше вероятность того, что аналитическая система или даже алгоритм искусственного интеллекта (ИИ) обнаружит «виновника». Вопрос: сколько данных необходим...

Стартап за $5 млн представил худшую в мире пиццу Машину для приготовления пиццы стартап Picnic из Сиэтла предлагает использовать в ресторанах, кафетериях и, естественно, пиццериях. Из опубликованного видео становится понятно, что машина способно выпекать огромное количество пицц, но отвратительного качества и без использов...

Как смотреть YouTube в режиме «Картинка в Картинке» в iOS 14 В iOS 14 появилась поддержка режима «Картинка в Картинке» на iPhone — ранее эта функция была доступна только на планшетах Apple. Она позволяет одновременно просматривать видео в небольшом окне в углу экрана и при этом запускать какое-нибудь другое приложение. Например, можн...

ClickHouse – визуально быстрый и наглядный анализ данных в Tabix. Игорь Стрыхарь Предлагаю ознакомиться с расшифровкой доклада 2017 года Игорь Стрыхарь «ClickHouse – визуально быстрый и наглядный анализ данных в Tabix». Веб-интерфейс для ClickHouse в проекте Tabix. Основные возможности: Работает с ClickHouse напрямую из браузера, без необходимости устан...

50/200+ вопросов по JavaScript Доброго времени суток, друзья! Предлагаю Вашему вниманию небольшой интерактив — своего рода викторину по JavaScript, на данный момент состоящую из 50 вопросов. На мой взгляд, решение подобных задач — лучший способ определить свой уровень мастерства. Предисловие Данная ча...

Tencent Pocket Reader II стоит 160 долларов Китайскую компанию Tencent знают все, кто хоть как-то сопряжен с мобильными играми, но теперь крупнейшая компания в мире решила выйти на новый рынок. Сотрудники данного бренда выпустили в продажу новую электронную книгу под названием Tencent Pocket Reader II, которая выгляди...

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

Я бы в продакты пошел: четыре истории о том, как product- мышление помогает в работе Данные — новая нефть: они повсюду и, разумеется, обязывают считаться с ними в принятии решений. Продакты — профессионалы data-based менеджмента: они проверяют гипотезы, проводят качественные и количественные исследования, вводят UX-метрики и думают в сторону масштабирования....

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

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

Hack The Box — прохождение Forest. AS-REP Roasting, атаки DCSync и Pass-The-Hash Продолжаю публикацию решений отправленных на дорешивание машин с площадки HackTheBox. Надеюсь, что это поможет хоть кому-то развиваться в области ИБ. В данной статье разберемся с AS-REP Roasting в схеме аутентификации Kerberos, используем BloodHound для разведки в домене, в...

[Перевод] Flutter. Разбираемся, как рисовать различные фигуры с помощью CustomClipper Flutter предлагает различные виджеты для работы с определенным набором фигур, например, ClipRect, ClipRRect, ClipOval. Но также есть ClipPath, с помощью которого мы можем создавать любые типы фигур. В данной статье мы сосредоточимся на том, что можно сделать, используя Clip...

Справочник security-архитектора: обзор подходов к реализации аутентификации и авторизации в микросервисных системах Контейнеризация, CI/CD, оркестрация, микросервисы и agile-процессы – это облако тегов, которое теперь находится в словаре security-инженеров. Микросервисная модель и сопутствующие технологии привели к многообразию подходов в реализации архитектуры безопасности современных ре...

Make «udalenka» great again: как перевести всю компанию на удаленную работу в 4 этапа В то время как коронавирус шагает по планете, на рынке ценных бумаг лидирует туалетная и целые страны закрывают на карантин, все больше компаний вынуждены переводить сотрудников на удаленную работу. Мы в RUVDS не стали исключением и решили поделиться с Хабром своим опытом ор...

Реверс-инжиниринг протокола ngrok v2 Реверс-инжиниринг протокола Ngrok v2ngrok — это сервис, позволяющий создавать туннели на локальный компьютер пользователя. Иными словами, резервируется публичный адрес, все обращения по которому пробрасываются на локальный порт.К сожалению, с 2016 года поддержка open-s...

Ультразвуковая система определения координат 2.0 Ультразвуковая система определения координат 2.0 О чем эта статья: Эта статья описывает принципы работы моей системы определения координат, и мой опыт её изготовления. Данная статья не является инструкцией по изготовлению навигационной системы, ибо это не так просто, чтобы о...

Concurrent Mode в React: адаптируем веб-приложения под устройства и скорость интернета В этой статье я расскажу о конкурентном режиме в React. Разберёмся, что это: какие есть особенности, какие новые инструменты появились и как с их помощью оптимизировать работу веб-приложений, чтобы у пользователей всё летало. Конкурентный режим — новая фишка в React. Его зад...

Как организовать тестирование, чтобы ускорить и стабилизировать релизы продукта. Часть 1 Если командная работа не согласована, между отдельными участниками процесса и целыми командами постоянно будут происходить столкновения, а продукты компании или микросервисы внутри одного продукта будут мешать друг другу при использовании общих ресурсов и инфраструктуры. Рез...

[Из песочницы] Различные способы передачи данных в компоненты Angular Привет, Хабр! Представляю вашему вниманию перевод статьи «Different Ways to Pass Inputs to a Component in Angular» автора Netanel Basal. В этой статье, мы разберём три разных способа передачи данных в компонент. В следующем примере мы будем использовать select как главный...

Будни OEMщика (Часть 1) Понятие «OEMщик» очень широкое, оно может подразумевать любого сотрудника, работающего в одной из многих сфер производства. В данной статье под OEM подразумеваются продукты компании Microsoft, поставляемые вместе с производимым оборудованием. Т.е., под OEMщиком подразумевает...

[Перевод] Языковая механика escape analysis Прелюдия Это вторая из четырех статей в серии, которая даст представление о механике и дизайне указателей, стеков, куч, escape analysis и семантики значения/указателя в Go. Этот пост посвящен кучам и escape analysis. Оглавление цикла статей: Language Mechanics On Stacks A...

Опыт конвертирования кода C# в код Rust Постановка задачи Код на языке C# нужно перевести в код на Rust. Точнее, требуется такая процедура перевода (разработка продолжается на C#), чтобы в любой момент можно было получить работающий код на Rust. Эту задачу я решал для языков Java, Python, JavaScript и PHP, написав...

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

От библиотеки компонентов к дизайн-системе Разработка UI-компонентов — одна из самых затратных задач при разработке фронтенда. Чтобы оптимизировать процессы, некоторые компании поручают её выделенной команде. Мы же решили пойти другим путём: сделать библиотеку, чтобы компоненты туда могли добавлять разработчики из ...

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

В iOS 13.3 появились активные углы. Зачем они нужны и как включить iOS 13.3 совершенствует работу с мышью на iPad iOS 13, несмотря на множество недоработок, стала во многом знаковой версией операционной системы от Apple. Именно при её разработке компания фактически пошла против своих убеждений и добавила в iPad поддержку мыши, тем самым при...

Как защищать процессы и расширения ядра в macOS Привет, Хабр! Сегодня мне хотелось бы поговорить о том, как можно защитить процессы от посягательств злоумышленников в macOS. Например, это полезно для антивируса или системы резервного копирования, особенно в свете того что под macOS существует сразу несколько способов “уби...

[Перевод] Представляем PyCaret: открытую low-code библиотеку машинного обучения на Python Всем привет. В преддверии старта курса «Нейронные сети на Python» подготовили для вас перевод еще одного интересного материала. Рады представить вам PyCaret – библиотеку машинного обучения с открытым исходным кодом на Python для обучения и развертывания моделей с учителем...

[Из песочницы] Умирает ли RuTracker? Анализируем раздачи Любая деятельность генерирует данные. Чем бы вы ни занимались, у вас наверняка на руках кладезь необработаной полезной информации, ну или хотя бы доступ к его источнику. Сегодня побеждает тот, кто принимает решения, основываясь на объективных данных. Навыки аналитика как ни...

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

AIOps в управлении ИТ-инфраструктурой Традиционные методы ИТ-администрирования и управления ИТ-инфраструктурой активно пересматриваются и постепенно реформируются. Использование искусственного интеллекта (ИИ) в управлениии ИТ-инфраструктурой рисует интереснейшие перспективы. Термин AIOps (Artificial Intelligence...

Hack The Box — прохождение Bitlab. Слабая JS обфускация, GIT и реверс Windows приложения Данной статьей я начну публикацию решений отправленных на дорешивание машин с площадки HackTheBox. Надеюсь, что это поможет хоть кому-то развиваться в области ИБ. В данной статье разберемся с легенькой JavaScript обфускацией, загрузим бэкдор через репозиторий Git, и отладим...

«Мир движется в сторону экономики знаний» Архитектор аналитических решений Hitachi Vantara — о том, как наладить работу с данными. Роман Павлов: &laquo;Перед компаниями стоят две основные задачи: как эффективно хранить данные и как последовательно извлекать из ни...

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

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

Team Group T-Force Xtreem ARGB в уникальном дизайне В последнее время производителям компьютерного железа довольно трудно хоть как-то удивить своего потенциального покупателя, ведь практически все технологии уже использованы и проверены, буквально каждый дизайн уже мы видели. Однако есть на рынке еще те производители, которые...

Hack The Box — прохождение Zetta. FXP, IPv6, rsync, Postgres и SQLi Продолжаю публикацию решений отправленных на дорешивание машин с площадки HackTheBox. Надеюсь, что это поможет хоть кому-то развиваться в области ИБ. В данной статье узнаем IPv6 адрес сервера с помощью FXP, поработаем с rsync, а также запишем ssh-ключ используя SQL-инъекцию...

ФБР потратило 2 месяца, чтобы взломать iPhone 11 Apple некоторое время вступала в конфликт с правительством США после отказа разблокировать iPhone людей, находящихся под следствием. ФБР пришлось создать лабораторию, посвященную разблокировке iPhone и потратило почти два месяца, чтобы разблокировать iPhone 11. Компьют...

Facebook Messenger получил поддержку функции демонстрации экрана во время разговора Facebook Messenger получил поддержку функции Screen Sharing, которая позволит демонстрировать картинку со своего смартфона другим участникам беседы. Функция может использоваться при звонке одному пользователю, в групповом чате или же в процессе более масштабного совещания в ...

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

Механики для реализации платформера на Godot engine. 3 часть Здравствуйте, это уже 3-я часть сборника механик для реализации платформера. На этот раз мы поговорим о жизни, смерти и сохранении с последующей загрузкой. Это будет не совсем урок по реализации платформера, но без данной части программы мы особо и не сможем нормально играть...

Медленное движение «влево» в автоматизации тестирования Похоже, что стремление «сдвинуть» тестирование влево, к началу конвейера, в сторону разработчиков для ускорения разработки приложений и их развертывания зашло в определённый тупик. Недавний опрос, проведённый компанией Perforce (специализируется на разработке сре...

Мониторинг СХД IBM Storwize при помощи Zabbix В данной статье мы немного поговорим о мониторинге СХД IBM Storwize и других СХД, поддерживающих протоколы CIM/WBEM. Необходимость такого мониторинга оставлена за скобками, будем считать это аксиомой. В качестве системы мониторинга будем использовать Zabbix. В последних ве...

Сверхсовременные иммутабельные структуры данных Годами эксперты в С++ рассуждают о семантике значений, иммутабельности и разделении ресурсов за счет коммуникации. О новом мире без мьютексов и гонок, без паттернов Command и Observer. На деле все не так просто. Главная проблема по-прежнему в наших структурах данных. Имму...

[Из песочницы] Ввод данных в STM32F4xx с параллельного АЦП через DCMI Известно, что семейство микроконтроллеров STM32F4xx, имея на борту достаточно производительные ядра, вполне подходящие для «не мясорубочных» задач ЦОС не имеют полноценного интерфейса ввода данных с простейшей параллельной шины в режиме «pipe-line» (clk-data). «Покурив» «dm0...

[Из песочницы] Игра с открытым API: Swagger Play В данной статье я хочу рассказать, как использовать Swagger модуль для Play Framework, с примерами из реальной жизни. Я расскажу: Как прикрутить последнюю версию Swagger-Play (модуль Play, позволяющий использовать аннотации swagger-api и генерировать на их основе документ...

Хостим Bitwarden — open-source менеджер паролей Менеджеры паролей действительно полезны и важны как для отдельных пользователей, так и для организаций, и они пригодятся, когда у вас много разных учетных записей и паролей. Обычно люди не любят пользоваться сторонними менеджерами паролей с сервисной архитектурой — неизвес...

Типизированные запросы OData в TypeScript Традиционно запросы OData к данным выражаются в виде простых строк без проверки типов при компиляции или без поддержки IntelliSense, кроме того, разработчику приходится изучать синтаксис языка запросов. Данная статья описывает библиотеку TsToOdata, которая превращает запрос...

[Перевод] Сжатие ответов в GRPC для ASP.NET CORE 3.0 Перевод статьи подготовлен в преддверии старта курса «C# ASP.NET Core разработчик». В этом эпизоде моей серии статей о gRPC и ASP.NET Core мы рассмотрим подключение функции сжатия ответов (response compression) служб gRPC. ПРИМЕЧАНИЕ: В этой статье я рассказываю о некото...

Член программного комитета PyConRu 2020 отвечает на вопросы об языке Python: актуальный взгляд и немного парселтанга Антон Патрушев – очень опытный python-разработчик, постоянный член программного комитета PyCon Russia и старый друг конференции. Он работает с языком python уже много лет, начинал свое знакомство с ним в Naumen, теперь является СТО в Spherical, а еще это была именно ид...

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

[Из песочницы] Капча для codeigniter 4 Добрый день! Несмотря на заголовок статьи, в ней будут представлены общие методы и функции, которые я использовал для создания своей капчи, которые можно применить и в других фреймворках с минимальными правками. Некоторые функции и подходы основываются на материалах поста Ра...

Как обновить прошивку наушников Audio-Technica ATH-M50xBT Вот и наступила пора, когда прошивку приходится обновлять не только на смартфонах. Неплохо бы время от времени апдейтить наушники, если они у вас беспроводные. Например, недавно после подключения к смартфону любимых Audio-Technica ATH-M50xBT (тут наш обзор) и запуска фирме...

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

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

Руководство по установке модифицированного direct-экструдера VORON 2.4 на 3D принтер SAPPHIRE PRO. История первая - моделирование. Эта история будет посвящена самому любимому этапу Do It Yourself конструирования - 3D моделированию.     Всем замечателен 3D-принтер SAPPHIRE PRO, особенно простором для улучшений и модернизаций. И вот, находясь в процессе сборки 3D-принтера VORON 2.4, мне пришла в голову и...

«Запекать до готовности»: кто спасает раритетные записи на магнитной ленте таким необычным способом Сотрудники Библиотеки Конгресса США используют «запекание», чтобы приостановить деградацию пленки до момента оцифровки, а энтузиасты — так спасают не только записи, но и олдскульные игры. Читать дальше →

Автомобили в Голландии: статистика и информация за 2019 год Привет Хабр. Эта статья является продолжением цикла про Велоинфраструктуру в Голландии. В этот раз речь пойдет про автомобили. Недавно в одном из проектов довелось получить доступ к данным с камеры, распознающей автомобильные номера. Зная номер, можно получить довольно м...

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

Математика в космонавтике: ротационный детонационный двигатель Отправка кого-то или чего-то за пределы нашей планеты и по сей день является крайне сложным и дорогостоящим удовольствием. В то время как космические путешественники из различных научно-фантастических произведений массовой культуры используют ретрансляторы («Mass Effect»),...

Лучшие приключенческие игры на Android Берите в руки смартфон и вперед. Навстречу приключениям! Приключенческие игры являются одними из самых уникальных среди всех проектов. Они не вписываются ни в одну категорию, и часто они создаются на стыке нескольких игровых жанров. Единственным реальным условием для того, ч...

Мониторим базу PostgreSQL — кто виноват, и что делать Я уже рассказывал, как мы «ловим» проблемы PostgreSQL с помощью массового мониторинга логов на сотнях серверов одновременно. Но ведь кроме логов, эта СУБД предоставляет нам еще и множество инструментов для анализа ее состояния — грех ими не воспользоваться. Правда, если про...

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

Создать мощный курс Machine Learning: миссия выполнена У нас было 2 неудачных запуска, 169 студентов, 8 сердитых отзывов, 3 смены названий, слишком много теории и мало реальной практики. Не то чтобы это было полным провалом, но если начал обучать Data Science, надо сделать это идеально. Сегодня вы услышите историю о том, как м...

SIRR, не соизволите ли удалить отражение? Привет! Меня зовут Артём, я учусь на совместной кафедре анализа данных Яндекса и Физтеха. Хочу поделиться с ML-сообществом Хабра темой, тесно связанной с моей научной работой: «Удаление отражений с помощью свёрточной сети, обученной на синтетическом датасете». А чтобы вы мог...

ILUШA vs Dynamixel. Выбор сервопривода с обратной связью Сервопривод отечественного производства Илюша. Мы разрабатываем робот для сбора мячей для гольфа. Для открытия люка сброса мячей нам требуется сервопривод. Мы опробовали огромное количество и сегодня хотим рассказать Вам об очень интересном аналоге Dynamixel который более...

[Из песочницы] Переосмысление DTO в Java Привет, Хабр! Представляю вашему вниманию любительский перевод статьи “Rethinking the Java DTO” Стивена Уотермана, где автор рассматривает интересный и нестандартный подход к использованию DTO в Java. Я провел 12 недель в рамках программы подготовки выпускников Scott Logic,...

Jinja2 в мире C++, часть третья. «Теперь ты в конане» С момента публикации предыдущей части прошло больше полутора лет, была реализована большая куча фичей, сделано несколько релизов, но не об этом пойдёт речь. Пару дней назад в жизни библиотеки произошло важное событие: она была добавлена в основной репозиторий conan'а (conan...

NewNode — децентрализованная CDN от разработчика FireChat На днях я наткнулся на упоминание некоего NewNode: NewNode — SDK для мобильной разработки, который делает любое приложение неубиваемым для любой цензуры и DDoS, и драматически снижает нагрузку на сервере. P2P сеть. Может работать в теории без интернета. Выглядело довольно...

Pi Network – Как бесплатно получить новую криптовалюту В данной публикации я расскажу как можно бесплатно получить новую криптовалюту Pi Network. Для этого не требуется много времени и ненужно специальное оборудование.

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

[Перевод] Пришло время ленивой загрузки закадровых <iframe> Нативная отложенная загрузка для изображений была добавлена в Chrome 76 через атрибут loading, а затем пришла и в Firefox. Мы рады сообщить, что встроенная отложенная загрузка для iframe теперь стандартизирована и также поддерживается в браузерах на основе Chrome и Chromiu...

Почему мобильным приложениям скоро придёт конец Android-приложениям скоро придёт конец? Мобильные приложения являются неотъемлемой частью как iOS, так и Android. И с чего мы это решили, что им придёт конец? Всё дело в PWA (Progressive Web Apps). Это веб-приложения, построенные на фронтенд-технологиях (HTML, CSS, JavaScrip...

Фильм Star Wars: Rise of Skywalker преодолел отметку $1 млрд киносборов, став седьмым «миллиардным» фильмом Disney 2019 года выхода Как мы и предполагали ранее, финал трилогии «Star Wars: The Rise of Skywalker» все-таки предолел отметку в $1 млрд сборов, на что ему понадобился почти месяц. Несмотря на невыскую оценку фильма со стороны и критиков и обычных зрителей, количество последних во всем ...

Большие данные будут мгновенно анализировать медицинские изображения В Центре компетенций НТИ на базе МГУ «Технологии хранения и анализа больших данных» разработан проект ПО, которое позволяет осуществлять автоматизированный анализ данных снимков флюорографий, маммографий и кардиограммам ...

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

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

Что могут дать нам знания об онлайн-образовании и что можно с этими знаниями сделать. Исследование и инсайты от GetCourse Привет, я Сергей Михайлов, управляющий партнёр GetCourse. Мы — IT-платформа, которая помогает монетизировать авторские курсы. Фактически мы работаем с большинством авторов (на рынке B2B), поэтому если вы за последние 2–3 года проходили курсы онлайн или следите за авторами уч...

Дружим STM32 с LCD дисплеем 1604 по I2C шине (библиотека HAL) Привет, Хабр! В этой статье я хотел бы рассказать о своем опыте подключения LCD дисплеев к микроконтроллеру STM32 с использованием библиотеки HAL по I2C шине. Подключать буду дисплей 1602 и 2004. Они оба имеют припаянный I2C адаптер на основе чипа PCF8574T. Отладочной пл...

Управление Mac в мире Windows Большинство организаций используют System Center Configuration Manager для автоматизации процессов системного администрирования. Одна незадача: базовая функциональность SCCM ограничена для macOS. Поскольку с каждым годом количество «яблочной» техники в компаниях растет, пр...

[recovery mode] Как обойти «No-communication theorem»? Передача информации сквозь пространство и время No-communication theorem утверждает, что квантовое запутывание не может использоваться для передачи какой-либо информации. Теорема предполагает, что Боб никак не может отличить начальное состояние σ от состояния P(σ) после измерения Алисой. Это доказывается математически, п...

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

[Из песочницы] CIFS over SSH штатными средствами Windows 10 Я ленивый и потому люблю когда все организовано удобно, без лишних телодвижений. Иногда перебарываю лень, для того чтобы сделать удобно. Однажды в потребовалось мне организовать доступ к серверу по протоколу SMB и в поиске решения я наткнулся на следующую статью: Mounting yo...

Cтримим и кaстим youtube и не только… через raspberry pi c Gotubecast и KODI TubeCast Насколько сложно передавать youtube музыку или видео через телефон или другие портативные, мобильные устройства на вашу Raspberry pi? А если не портативные? А просто управлять медиа контентом через Windows или Linux PC? Оказывается что нет. Я хочу рассмотреть установку, и н...

[Из песочницы] Как писать хорошие комментарии к коду: «зачем», а не «как» Привет, Хабр! Представляю вашему вниманию перевод статьи «Writing good comments: the why, not the how» автора Jack Franklin. Комментирование кода в программистской среде нередко считается пустой тратой времени или неким сигналом о том, что код можно и улучшить. Вот цитата...

1080 и 1066 vs Vega 64 и RX 588 в 70 играх Quad HD и без Unreal engine Движок Unreal 4 существенно лучше оптимизирован под карты от зеленых. Уж больно много игр создано на данном движке. Представим что движка Unreal нет и какова будет расстановка в этом случае.

Postgresso 20 Жизнь продолжается. Продолжаем знакомить вас с самыми интересными новостями PostgreSQL Главная новость Feature Freeze Функциональность 13-й версии PostgreSQL заморожена. Теперь только доработки и исправления багов. Список нового, вопреки многим ожиданиям, довольно обширный...

Создаем graphql бекенд на Golang Сегодня мы будем разрабатывать приложение на Golang + GraphQL. Мы часто используем GraphQL на своих проектах и знаем о нем немало, использовали его вместе с различными языками программирования: Javascript, Ruby и теперь руки дошли и до того чтобы попробовать связку Golang G...

[Перевод] Интерактивная визуализация данных при помощи Plotly: строим красивые графики с Express и Cufflinks Если Вы все еще используете Matplotlib для создания графиков в Python, самое время взглянуть на мир с высоты альтернативной библиотеки интерактивной визуализации. Plotly позволяет создавать красивые, интерактивные, экспортируемые графики с помощью всего нескольких строк к...

Star Citizen собрала 300 млн долларов, став самой дорогой игрой в истории. И она до сих пор не вышла Star Citizen — феномен не только игрового рынка, а и рынка IT в целом. Игра, которую нам обещают каждый год на протяжении уже пяти лет, пока так и не вышла, и неясно, когда выйдет. При этом игра продолжает собирать с фанатов и просто интересующихся огромные деньги...

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

Какие iPhone и Apple Watch смогут открывать автомобиль в iOS 14 Одной из главных функций iOS 14 стала CarKey — возможность использовать iPhone вместо ключа для автомобиля. Кто-то скажет, что такие технологии до нас доедут еще не скоро, но в свое время так же говорили про CarPlay, а теперь его устанавливают даже в бюджетные автомобили. Н...

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

[Из песочницы] Быстрая разработка Web приложения на Vaadin и Spring Boot Целью данной статьи является систематизация процесса разработки веб приложения на Vaadin 14 с использованием Spring Boot. Перед прочтением данной статьи, рекомендую прочитать следующий материал: Введение в Spring Boot Spring Data JPA Lombok возвращает величие Java Vaadin F...

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

JavaScript: 250+ практических вопроса (список + викторина + бонус) Доброго времени суток, друзья! Представляю вашему вниманию список из 250+ практических вопроса по JavaScript с подробными (насколько это возможно и уместно в контексте чеклиста) ответами, возможностью проверить свои знания с помощью викторины, состоящей из 30 случайных в...

Sealed типы в Java Язык Java с недавнего времени стал активно развиваться. Шестимесячный релиз версий Java не может не радовать Java разработчика новыми фичами. Одним из приоритетных направлений развития Java является сопоставление с образцом (pattern matching). Pattern matching раскрывают п...

И снова про embedded: ищем баги в проекте Embox Embox – это кросс-платформенная мультизадачная операционная система реального времени для встраиваемых систем. Она рассчитана на работу в условиях невысоких вычислительных ресурсов и позволяет запускать Linux-приложения на микроконтроллерах без использования самого Linux. К...

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

Зеркало Вавада казино Говоря об онлайн казино Вавада или же зеркало Вавада, многие вспоминают о таких автоматах, как «однорукий бандит». Более продвинутые игроки могут сказать, что есть игры, подобные рулетке или карточным симуляторам, и будут правы. А вот стоит ли выбирать игровые автоматы, чтоб...

Как DLP-система и модуль OCR помешали сотрудникам подделывать сканы паспортов Помните историю с утечкой паспортных данных у 500 млн клиентов сети отелей Marriott? Данные могли оказаться у злоумышленников, и гостиничная группа даже обещала оплатить пострадавшим постояльцам расходы на смену паспортов. Подобных случаев происходит немало. Понятно, почему:...

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

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

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

[Перевод] Распределенные блокировки с применением Redis Привет, Хабр! Сегодня мы предлагаем вашему вниманию перевод сложной статьи о реализации распределенных блокировок средствами Redis и предлагаем поговорить о перспективности Redis как темы. Анализ рассматриваемого алгоритма Redlock от Мартина Клеппмана, автора книги "Вы...

[Перевод] Статический анализ в GCC 10 Я работаю в Red Hat над GCC, GNU Compiler Collection. Для следующего основного релиза GCC, GCC 10, я реализовывал новую опцию -fanalyzer: проход статического анализа для выявления различных проблем во время компиляции, а не во время исполнения. Я думаю, что лучше выявлять ...

Разбираем первые устройства TP-Link с Wi-Fi 6: роутер Archer AX6000 и адаптер Archer TX3000E Количество устройств и требования к скоростям передачи данных в беспроводных сетях растут с каждым днем. И чем «плотнее» сети, тем ярче видны недостатки старых спецификаций Wi-Fi: падает скорость и надежность передачи данных. Чтобы решить эту проблему, был разработан новый с...

[Из песочницы] Riak Cloud Storage. Часть 1. Настройка Riak KV Riak CS (Cloud Storage) – лёгкое в использовании программное обеспечение для организации хранилища объектов, работающее поверх Riak KV. Riak (KV) это распределённая NoSQL база данных типа «ключ-значение(key-value)». Riak CS спроектирована так, чтобы обеспечить простоту, дост...

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

Применение 3D принтера в косплее! Всем доброго времени суток, пользователи сайта 3D-Today!Этот пост будет посвящен моему знакомству с миром 3D-печати и о том, как я применяю данное устройство в своей жизни :)Коротко о моём знакомстве с 3D-печатью: в детстве я очень любил различного рода конструкторы, и мечта...

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

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

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

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

[Перевод] Резервирование констант и Git hooks на C# Позвольте мне рассказать вам историю. Жили-были два разработчика: Сэм и Боб. Они вместе работали над проектом, в котором была база данных. Когда разработчик хотел внести в неё изменения, он обязан был создать файл stepNNN.sql, где NNN — некоторое число. Чтобы избежать конфли...

Как выжить SQL-базе в 21 веке: облака, Kubernetes и PostgreSQL multimaster Привет, хабровчане. Сегодня стартуют занятия в первой группе курса «PostgreSQL». В связи с этим, хотим рассказать вам о том, как проходил открытый вебинар по данному курсу. В очередном открытом уроке поговорили о том, с какими вызовами столкнулись SQL-базы в эру облаков и...

Sennheiser HD 450BT работают 30 часов Многие пользователи боятся переходить на беспроводные наушники из-за того, что их нужно часто заряжать, а кто-то переживает, что может забыть об этом и остаться без заряда. Однако теперь в продажу поступили наушники Sennheiser HD 450BT, которые оборудованы довольно объемной ...

[Из песочницы] Создание динамических параметров в Jenkins job, или как сделать вашу задачу user-friendly Доброго времени суток, Хабр! Сегодня я хотел бы поделиться одним из способов, как с помощью Active Choices Plugin сделать задачу в Jenkins наиболее унифицированной и понятной для пользователя. Введение Такая аббревиатура как DevOps уже давно не является чем-то новым для IT с...

[Из песочницы] Создание браузерных 3d-игр с нуля на чистом html, css и js. Часть 1/2 Современная вычислительная техника позволяет создавать классные компьютерные игры! И сейчас, достаточно популярны игры с 3d-графикой, так как, играя в них, ты окунаешься в вымышленный мир и теряешь всякую связь с реальностью. Развитие интернета и браузерных технологий сделал...

Как писать музыку на Python — помогут три тематические библиотеки (для специалистов разного уровня) Продолжаем тему музыкального программирования — ранее мы говорили о языках Csound, SuperCollider и Pure Data, а сегодня рассказываем Python и библиотеках FoxDot, Pippi и Music-Code. Читать дальше →

Xiaomi запатентовала умную защитную маску с датчиками для сбора данных в реальном времени Компания Xiaomi зарегистрировала патент в Ведомстве по патентам и товарным знакам США (USPTO), в котором описывается устройство под названием «умная маска». Как следует из патента, маска оснащена вычислительным блоком, процессор которого обрабатывает все поступающие от сенсо...

Модули в JavaScript Фронтенд-разработчики каждый день используют модули. Это может быть функция из локального файла или сторонняя библиотека из node_modules. Сегодня я кратко расскажу об основных модульных системах в JavaScript и некоторых нюансах их использования. Читать дальше →

Расчет перцентилей для мониторинга высоконагруженных систем Привет, меня зовут Игорь, и я разработчик решений на Tarantool в Mail.ru Group. Я работаю над витринами маркетинга в реальном времени для Мегафона. При мониторинге часто требуется использовать перцентили. Они позволяют понять, как система работает бóльшую часть времени, в о...

[Перевод] Накопительная диаграмма потока (CFD) как индикатор здоровья вашего проекта Предисловие переводчика В русскоязычном профессиональном сообществе менеджеров процессов крайне мало литературы по Канбан методу на русском языке. Мы, сообщество Kanbanguide.ru, решили исправлять эту несправедливость и будем публиковать самые значимые с нашей точки зрения ст...

Как мы оркестрируем процессы обработки данных с помощью Apache Airflow Всем привет! Меня зовут Никита Василюк, я инженер по работе с данными в департаменте данных и аналитики компании Lamoda. В нашем департаменте Airflow играет роль оркестратора процессов обработки больших данных, с его помощью мы загружаем в Hadoop данные из внешних систем, об...

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

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

Как писать книгу в LaTeXe по физике. Cтатья 1 Это моя первая статья на Хабре. Глава 1. Введение 1.1 Позвольте представиться и почему я это пишу    Я — научный сотрудник, физик. Недавно выпустил книгу по спектроскопии объемом 880 страниц и весом 1560 грамм. Эту книгу я писал 9 лет, параллельно читая лекции по...

В Казахстане актуализировали Национальную образовательную базу данных Теперь ее использование управлениями и отделами образования носит обязательный порядок.

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

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

Обидно за мнения про статические анализаторы кода Инструменты статического анализа кода ушли далеко вперёд. Это вовсе не те "линтеры", которые активно применялись 20 лет тому назад. Однако многие по-прежнему относятся к ним, как к очень простым инструментам. Обидно. Обидно, как за методологию анализа кода в целом,...

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