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

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

[recovery mode] Flutter: Настройка тем приложения Всем привет, читатели Habr! В начале я хочу сделать акцент на том, что статья ориентирована для новичков, однако может быть полезной для более опытных коллег. В этой статье я расскажу про то, что такое тема приложения, какие ошибки обычно делают новички и рассмотрю, как по м...

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

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

C++. Унарный минус и беззнаковый тип Привет, Хабр! Меня зовут Владимир, я работаю в VK Карты. Хочу рассказать про случай, который недавно произошёл у нас в подразделении. Он кажется достаточно типичным и может быть интересен другим программистам.Нам, программистам на C++, не привыкать, что даже самый безобидный...

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

Asterisk. Доставка SIP Message после возврата абонента из off-line'а В предыдущих статьях я описал как настроил и собрал GSM <> SIP систему на базе Asterisk. В этой статье расскажу как быть с входящими SMS, если получатель не в сети. Читать далее

О способах отслеживания данных — простыми словами. Server-side vs client-side tracking: преимущества и недостатки Отслеживание и сбор данных является одной из ключевых составляющих успеха бизнеса в интернете. В этой статье я расскажу о том, как происходит отслеживание, какие методы бывают, их преимущества и недостатки, а также поделюсь своим опытом использования нового способа отслежива...

Как связать админку продукта и его базу знаний (и обойтись без доработок продукта) Всем привет! Сталкивались ли вы с ситуацией, когда в вашей админке пользователям трудно интуитивно разобраться, возможности быстро исправить это нет, а существующую документацию по ней никто не читает? Знакомы ли вам частые вопросы вида "А как это настроить?" или "А можно ли...

Web3.0 на Python, часть 1: основы Привет, Хабр! Во время знакомства с Web3 было сложно найти понятные примеры базовых операций с блокчейном с использованием Web3Py в одном месте. Например: просмотр баланса, отправка ETH и ERC20 токенов, минтинг NFT, взаимодействие с контрактами и тд. Эта статья как раз и пос...

Доктор Майкл Бьюрри — человек предсказавший финансовый крах 2008 года. Как он это сделал и где он сейчас? На тему финансового кризиса 2008-го года снят не один фильм и написана ни одна книга, не говоря уже о всевозможных эссе. Я не буду разбирать, что произошло с технической точки зрения (только, если чуть-чуть), а расскажу о человеке, благодаря которому мы имеем красивую истори...

[Перевод] Распространенные ошибки при написании плагинов Joomla 4 Перевод недавней статьи профессионального PHP-разработчика, руководителя Akeeba Ltd и ведущего разработчика Akeeba Backup для WordPress, Joomla! и standalone Николаса Дионисопулоса.В статье он делится своим опытом отладки плагинов Joomla 4, написанных разными разработчиками...

Разбираемся с EXCEPTION_CONTINUE_EXECUTION Механизм структурированной обработки исключений (Structured Exception Handling, SEH) позволяет не только "отловить" сгенерированное исключение, но и вернуться к инструкции, вызвавшей сбой и попробовать выполнить ее заново. В данной статье разбирается использование механизма ...

Технологии NiFi & Kafka: применение (часть 1) Добрый день, меня зовут Рустам Ахметов, я архитектор ГК Юзтех и интеграционной шины данных UseBus. В этой статье я расскажу о нашем опыте разработки продукта и выборе технического стэка. Хочу добавить, что я буду давать лишь поверхностный Helicopter view на продукты и их ана...

Параметры в Jenkins Jenkins — один из наиболее популярных инструментов CI/CD. Он позволяет автоматизировать каждый этап жизненного цикла программного обеспечения: от создания до развертывания. В этой статье Кирилл Борисов, Infrastructure Engineer технологического центра Deutsche Bank, расскажет...

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

[Перевод] JDBC vs JPA В мире разработки программного обеспечения очень любят аббревиатуры. И работа с базами данных в Java — не исключение.Наличие множества вариантов работы с БД может запутать: что же я использую на самом деле? Все используют JPA? Мне тоже стоит его использовать? Но я еще слышал...

Без одной faangи или как я проходил собеседования Привет, Хабр! Меня зовут Рустам, работаю программистом 9 лет. 7 лет работал в Контуре и около 2 лет в Яндексе. В этой статье расскажу про свой опыт подготовки и прохождения собеседований в большие технологические компании, поделюсь рекомендациями.Пробовался в Facebook, Apple...

Используем R lang в SQL Server В продолжение предыдущей статьи поговорим о том, как использовать SQL Server Machine Learning Services. В этой статье приведены варианты использования на языке R. Для чего должна быть установлена R 4.2.1(https://cran.r-project.org/src/base/R-4/) Также нам потребует...

Как стать Flutter-разработчиком, или Почему кроссплатформа сейчас — это лучший выбор Hola, Amigos!На связи Александр Чаплыгин, Flutter Dev. В разработке я 3 года, сейчас работаю в компании по заказной мобильной разработке, за последний год делал проекты для частного медицинского центра, системы маркировок и нескольких стартапов. По свежим следам хочу рассказ...

8 сервисов для зарубежных покупок в 2022 году Эта статья стала итогом моих экспериментов в 2022-ом. С начала года я искала сервисы, которые помогают выкупать товары в интернет-магазинах за рубежом и доставляют их в РФ. Прочитав кучу отзывов (спойлер: в основном плохих), я попробовала заказать товары через так назыв...

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

Опыт перехода на MVI в Android на базе собственного решения В команде Android мы активно применяем MVI для проектирования взаимодействия состояния экрана и бизнес-логики. В этой статье мы хотим рассказать о собственной MVI-библиотеке – Reduktor и об опыте внедрения и использования. Статья будет полезна всем, кто хочет познакомиться с...

Как мы переходили с pip на Poetry Всем привет! Я Станислав Бушуев, Software Engineer в Semrush. В этой статье я расскажу о том, как мы столкнулись с проблемой периодического обновления Python-зависимостей, тестировали решение с полной их фиксацией, ошибались, и в итоге перешли на Poetry. Читать далее

Пишем тесты производительности под Webflux Добрый день! Меня зовут Александр Леонов, я руководитель группы разработки одной из распределённых команд Usetech. Сегодня я хочу рассказать вам о том, как написать карманный тест производительности на неблокирующий код Webflux. Статья рассчитана на разработчиков, которые ра...

Как мы внедряли tracing Представьте: у вас пара сотен микросервисов, и вдруг всё ломается. А может даже не всё, а, скажем, только одна страница. Если вы хорошо знакомы с системой, то по мониторингам и логам быстро обнаружите проблему и пойдете её решать. Но иногда систему вы видите впервые, и на...

Fast-dreambooth. Имба для тонкой настройки StableDiffusion DreamBooth очень просто способ дообучить StableDiffusion на вашем наборе изображений. В этой статье я расскажу как за 3 часа добавить в нейроную сеть ваши объекты стили или персонажей Читать далее

Как побороть Stale Element Reference Exception при E2E тестировании современных SPA-приложений Всем привет, меня зовут Денис, я Software Developer Engineer in Test (SDET) в компании Bimeister. Я занимаюсь разработкой софта для тестирования — это фреймворки, автоматизированные тесты, настройка CI Pipeline’ов и многое другое.В статье расскажу, как мы...

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

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

[Перевод] CVE 2022-0847: Исследование уязвимости Dirty Pipe ПредисловиеДанная статья является переводом англоязычного исследования, посвященногоразбору уязвимости Dirty Pipe и непосредственно эксплоита, позволяющего еювоспользоваться для локального повышения привилегий.ОригиналВведениеУязвимость Dirty Pipe была обнаружена в ядре Linu...

[recovery mode] Изучаем инструменты для работы с ARP протоколом Статья расскажет об очень простом протоколе, который может быть использован для атак на сети. Рассмотрим из чего состоит протокол и какие инструменты есть для работы с ним. Читать далее

Итоги недели мобилизации. Уклониться нельзя судить. Указа не будет. Приглашаем редактировать наше письмо Мишустину Ещё одна неделя мобилизации принесла нам неоднозначные новости. С одной стороны, отменено постановление о возбуждении первого уголовного дела об уклонении от явки по повестке о мобилизации (статья 328 УК РФ). С другой — Шадаев Максут Игоревич на вебинаре Минцифры заявил, что...

Как джуну найти работу: лайфхаки от HR Привет, Хабр! Меня зовут Анна Галимова, я HR бизнес-партнер в МТС Digital. В этой статье я расскажу о том, что делать, если вы специалист уровня junior и хотите найти хорошую работу в IT. Я дам советы: расскажу, на что смотреть при выборе работодателя, как подготовиться к со...

Как мы уменьшили время проверки релизной сборки с 4 дней до 4 часов Всем привет! Меня зовут Иван, я QA-инженер релизной команды в inDriver. В этой статье расскажу о том, как мы сократили время регрессионного тестирования релизной сборки мобильного приложения и релизный цикл до одной недели, с какими проблемами столкнулись и как их решали.Ран...

Документальное роуд-муви о Линукс в России Мы пытаемся сделать уникальный проект и рассказать историю развития Линукса в России. С начала 90ых создавался целый культурный пласт, на котором выросли и ещё будут расти новые поколения айтишников. Это первая попытка красиво и интересно рассказать о всех событиях, произош...

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

#1 Нейронные сети для начинающих. Решение задачи классификации Ирисов Фишера На хабре было множество публикаций по данной теме, но все они говорят о разных вещах. Решил собрать всё в одну кучку и рассказать людям. Это первая статья серии введения в нейронные сети, «Нейронные сети для начинающих». Здесь и далее мы постараемся разобраться с таким пон...

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

В 2011 году Google удивил всех, выставив заявку в $1 902 160 540 за патенты. Что бы это значило? Приветствую Вас, уважаемые Читатели! Сегодня я хочу рассказать историю ,которая произошла в 2011 году во время торгов на аукционе по продаже 6000 патентов и патентных заявок Nortel - канадского производителя телекоммуникационного оборудования. Победителем аукциона оказа...

Онлайн-сервер для NFS Underground 2 своими руками. Часть 1 Привет, Хабр! Спустя 13 лет я решил рассказать как однажды начал писать dedicated-сервер для игры NFS Underground 2, как решил возродить функционал оригинального онлайн-сервера, закрытого ещё в 2007 году, и как получилось, что это всё ещё WIP, несмотря на килотонны написанно...

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

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

Распознавание лиц с InsightFace или как CatBoost имена угадывал Цель статьи - рассказать про простой и в тоже время рабочий вариант создания системы распознавания лиц, используя только модели из коробки, а именно ,библиотеку InsightFace для обнаружения и предобработки лиц и Catboost для их классификации. Читать далее

⭐ Единые Рейтинги 2022: лучшие агентства и продакшены России

Использование цвета в терминале Я пишу небольшие скрипты для работы в программах-оболочках «Windows PowerShell» версии 5.1 и «PowerShell» версии 7 в операционной системе «Windows 10». Иногда тянет подсветить текстовый вывод в консоль разными цветами. В этой статье я хочу рассказать о паре грабель, на котор...

Drag-and-Drop на Python+OpenCV В данной статье расскажу про простой Drag-and-Drop на Python+OpenCV.Идея заключается в перемещении созданных квадратов на экране жестами руки. Так как нам потребуется как-то воспроизводить клик, то представим, что кликом будет служить соединение указательного и среднего паль...

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

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

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

Обработка исключений в Java в функциональном стиле. Часть 2 Обработка исключений в Java в функциональном стиле. Часть 2. В предыдущей статье была рассмотрена функциональная обработка исключений с помощью интерфейса Try<T>. Статья вызвала определенный интерес читателей и была отмечена в "Сезоне Java". В данной статье а...

Экспорт метрик в Prometheus из логов PostgreSQL с помощью Vector В этой статье я хочу рассказать о не совсем обычном использовании логов — о получении из лог-файлов метрик для Prometheus. Это может быть полезно, когда существующие экспортеры не предоставляют нужные метрики, а писать свой экспортер не хочется или очень затратно. Читать дал...

Анализ потока данных PVS-Studio распутывает всё больше связанных переменных Это вторая статья про связанные переменные и их поддержку в PVS-Studio. В этот раз мы расскажем об улучшении созданного механизма, разберём примеры из реальных проектов и увидим, какие проблемы пользователей анализатора это решает. Читать далее

Голос в мобильных сетях. От чего зависит качество? Привет, Habr! На связи МегаФон и в данной статье мы подробно расскажем всё про передачу голоса в мобильных сетях. Что определяет качество речи? Какие речевые кодеки используются в мобильных сетях и их отличия? Как оператор измеряет и контролирует качество реч...

GraphQL: доступ запрещен Жил-был один маленький разработчик, работал себе над REST API и горя не знал. Но вот приходит к нему тимлид и предлагает затащить GraphQL. Казалось бы: классный и мощный GraphQL — это запросто! Но в процессе проектирования API разработчик столкнулся с неожиданными проблемам...

React hooks, как не выстрелить себе в ноги. Часть 3.2: useMemo, useCallback Данная статья продолжение статьи про мемоизацию, в которой мы разбирали зачем нужно использовать memo и как правильно с ним работать. В этой статье разберем, как правильно использовать useMemo и useCallback, какое у них api и разберем пару трюков. В прошлой статье я писал, ч...

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

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

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

Что такое осень? Это Школа Всем привет! Меня зовут Анастасия Артамонова, я - руководитель направления IT-обучения и развития Мир Plat.Form, и вы уже могли читать мою статью в этом блоге. С чего хотелось бы начать в этот раз: мир меняется, меняются обстоятельства и времена года. Развивается Мир Plat.Fo...

Typescript в hh.ru Привет! Меня зовут Владислав Коротун, я — ведущий фронтенд-разработчик в одной из продуктовых команд hh.ru. Сегодня я расскажу о том, как мы затащили TypeScript в наши проекты.  Читать далее

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

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

Консольный UI и отказ от асинхронного кода в idewave-cli С выходом версии 1.0.1 я решил осветить некоторые аспекты технической стороны моего проекта. В этой статье я расскажу про использование библиотеки tui-rs и про нюансы использования библиотеки tokio-rs, а так же постараюсь рассказать, что же было исправлено и почему так, как ...

Средние highload паттерны на Go Привет, Хабр! Меня зовут Агаджанян Давид и ранее я опубликовал статью «простые highload паттерны на Go», в которой были рассмотрены простые подходы увеличения пропускной способности отдельно взятого экземпляра приложения без хардкора. Мне импонируют простые подходы, так...

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

Шаблон диплома в LaTex / практика написания диплома и составления презентации Изначально я хотел рассказать в данной статье про свой шаблон дипломной работы, но таких статей полно, зачем мне делать еще одну? За 6 лет работы научным сотрудником в лаборатории МГТУ им. Баумана я много чему научился, в том числе и оформлению своих результатов, как графиче...

Как мы избавились от пинг-понга задачами между разработкой и QA Я в IT больше девяти лет и успел поработать в ряде интересных проектов, но самым большим своим достижением на данный момент считаю налаживание процессов в команде Billing API. Статья — именно об этом. Расскажу о наших проблемах во взаимодействии между разработчиками и QA-инж...

10 типичных «софтовых» ошибок на собеседовании Собеседование — одно из наиболее стрессовых событий в жизни. По статистике, IT-специалисты меняют работу раз в 2–3 года. И каждый раз приходится заново проходить интервью с HR, tech lead и будущими руководителями. Директор по ИТ-архитектуре Группы «Иннотех» Артём Головачев п...

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

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

Сравнение Quartz, kagkarlsson и кастомной реализации для запланированного задания в реактивном Spring Boot приложении Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям, которые были опред...

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

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

Как школьники МЭШ взломали История о том, как школьники нашли глупейшую ошибку в production версии электронного журнала г. Москвы и построили на этом бизнес. Читать далее

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

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

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

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

5 лучших ноутбуков для работы лета 2022 года: от ультрабуков до игровых ПК Сегодня поговорим о технике, а именно — о рабочих инструментах для многих представителей IT-индустрии: от дизайнеров до разработчиков. Конечно, потребности у всех разные: кому-то нужен сверхмощный ПК, а для кого-то и хромбука 2018 года достаточно. В этой статье расскажем лиш...

Мониторинг дисков и программных RAID-массивов с помощью Zabbix Ранее в статьях, посвященных Zabbix, мы рассказали про особенности мониторинга SAAS-сервиса интернет-магазинов, а также про установку сервера и агента Zabbix.Новая статья поможет вам настроить мониторинг дисков и программных RAID-массивов, созданных с помощью mdadm. Без преу...

Postgres Pro Enterprise 14.4.1: что нового — статистика, безопасность, анализ работы VACUUM В дни майского HighLoad++ Foundation 2022 наша компания объявила о выпуске Postgres Pro Enterprise 14.2.1. С тех пор вышло несколько обновлений, мы расскажем о наиболее свежем из них - Postgres Pro Enterprise 14.4.1, основанном на PostgreSQL 14.4. Этот выпуск включает все но...

Похищаем сохраненный в Chrome пароль с помощью XSS Меня зовут Артем Мышенков, я ведущий инженер по технической защите информации в команде безопасности REG.RU. Наша команда занимается тестированием систем компании на безопасность и поиском уязвимостей.В этой статье я расскажу о том, как с помощью XSS-атаки в сочетании с Clic...

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

Materialized Path – создаём своё первое дерево Всем привет! Меня зовут Хусрав, я бэкенд разработчик в компании Bimeister.В этой статье я бы хотел бы поговорить о способе поиска родительских и дочерних элементов структуры посредством PostgreSQL Materialized Path.Статья является вводной и рассчитана на людей, незнакомых с ...

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

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

Управление учетными записями в Linux. Часть 1. Хранение учетных данных С момента своего создания ОС семейства Linux являются многопользовательскими, и для идентификации пользователей в них используются учетные записи и определенные модели доступа.Неверная настройка прав доступа может привести к серьезным уязвимостям в безопасности операционной ...

Старый код в новой обёртке — как наша команда избавлялась от legacy В этой статье я — Станислав Решетнев, Teamlead команды разработки Link Building в компании Sape — хочу рассказать об опыте нашей компании по избавлению от legacy. Многие компании сталкиваются с проблемой legacy-монолита, когда технический долг накапливается на протяжении дол...

От Soda Luv до BTS: как ВКонтакте рекомендует музыку миллионам пользователей Всем привет! Это Даня Самойлов и Женя Замятин, мы из команды Core ML, занимаемся рекомендациями VK Музыки. В этой статье мы хотим поделиться с вами, как устроена наша система музыкальных рекомендаций (на примере алгоритмическ...

Управление учетными записями в Linux. Часть 3. Различные способы поднятия привилегий В двух предыдущих статьях мы рассмотрели различные аспекты правления учетными записями и настройки доступа к файлам. Однако, при настройке доступа всегда можно ошибиться, задав неверные значения. Если администратор выдал недостаточные права, то такая ошибка будет найдена дов...

Allure TestOps: «Нестандартный» сценарий использования Привет. Меня зовут Николай, я QA Automation Engineer в мобильной платформенной команде Delivery Club. Эта статья будет о том, как мы интегрировали Allure TestOps (далее Allure TO) в регрессионное тестирование нескольких мобильных приложений и ушли от TestRail. Альтернативу T...

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

Meta* Quest 2 как фитнес-девайс. Мой опыт Судя по статьям на тему физо и обсуждениям под ними, далеко не все хабровчане любят упражняться (а кто-то вообще с детства ненавидит любые околоспортивные активности). А они нужны.Не буду писать почему, ибо тут достаточно статей на эту тему. Про влияние физнагрузок на когнит...

Нет пустым полкам: система логистики Fix Price изнутри Приветствую, друзья! Продолжаем серию публикаций «Fix Price изнутри». Меня зовут Анна Васильева, я являюсь руководителем проектов в отделе департамента категорийного менеджмента Fix Price. В этой статье поделюсь с вами тем, как у нас выстроена система обеспечения магазинов т...

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

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

Обзор GraphQL-фреймворков на Java В предыдущей статье мы поговорили о том, что такое graphQL, почему решили на него переходить, какие у него есть достоинства и недостатки. Но что делать дальше, если вы всё-таки решились внедрить graphQL в java-проект? Какие на данный момент есть фреймворки, чем они отличаютс...

В поисках потерянного битрейта Привет, Хабр! Мы – техническая команда «МТС веб-сервисы», работаем с направлением ТВ-решений для онлайн-кинотеатра KION: Андрей Агарков – эксперт в области видеокодирования и CDN, Дмитрий Пискунов – team lead группы технического сопровождения и Александр Шаталов – главный эк...

Lavritech V7.1 Lite: программируем ESP32 и Wirenboard модули В двух предыдущих статьях я дал общее описание контроллера Lavritech V7.1 Lite и рассказал о его схемотехнике, сегодня я попытаюсь осветить ещё один важный аспект — программирование этого контроллера. Всё содержимое Lavritech V7.1 Lite можно условно разделить на три части...

Kubernetes CronJob не запустился? Тогда мы с shared informer идём к вам Всем привет! Меня зовут Аня, я строю и развиваю инфраструктуру мониторинга в платформе телеметрии Ozon. Моя команда не только помогает настроить мониторинг, но и разрабатывает различные сервисы и инструменты, чтобы упростить жизнь разработчикам компании.В прошлом году я расс...

Есть ли жизнь на Go после C#? Всем привет! На связи Пётр, Go-разработчик в команде Ozon, которая занимается управлением товарами торговой площадки. Всё, что загружают продавцы, обрабатывается нашими сервисами. Девять месяцев назад я сменил основной язык программирования с C# на новый для меня Go. В стать...

Микроконтроллеры по 5 рублей. Программируем микросхемы PADAUK Впервые известие о том, что фирма PADAUK Tech продаёт микроконтроллеры по три цента появилось в 2018 году. Эта новость вызвала интерес и обсуждение на форумах, а затем благополучно была забыта (по крайней мере в русскоязычном комьюнити).В статье расскажу о своём опыте освоен...

ONNX Runtime, OpenVINO и TVM: обзор инструментов для ускорения ML-моделей Большинство вычислений при работе ML-моделей — матричные. Для работы с ними подходят Tensor и CUDA — специальные графические ядра, интегрированные в GPU. Это дает видеокартам преимущества перед CPU в машинном обучении. Однако они стоят дороже. Если нужно развернуть инференс...

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

WireMock – швейцарский нож в арсенале тестировщика. Часть 1 Всем привет! Меня зовут Анатолий Калмыков, и я отвечаю за качество создаваемых решений в «Ростелеком ИТ». Сегодня я расскажу вам про WireMock – это одновременно и утилита, и библиотека на Java для создания HTTP заглушек над веб-сервисами. Он создает HTTP-сервер, к которому м...

Как выбрать шлагбаум? Если посмотреть на ассортимент шлагбаумов у нас на сайте, то одна из первых вещей, которая бросается в глаза, это разлет стоимости шлагбаумов от 49 650 рублей до 1 793 567 рублей. А один из часто возникающих вопросов это, а в чем собственно разница между шлагбаумом за условн...

Сам себе data scientist или зачем нужен анализ данных менеджеру по продажам Всем привет! Меня зовут Михаил Тимофеев, я работаю специалистом в отделе телемаркетинга в Ростелекоме. Когда начинал работать менеджером по продажам, меня постоянно мучали вопросы: почему клиент отказался, где моя зона роста, что делать, чтобы продавать больше? И т...

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

Архитектура универсального проекта Django В ходе последних лет моей разработки проектов Django я понял, что почти все они имеют одно строение:API, Apps, Config, Library, Utils, Workers...В статье, помимо схемы архитектуры проекта Django, которую я использую в реальных промышленных проектах, подробно расскажу как это...

Заблуждения программистов об адресах У всех легковых автомобилей четыре колеса. Исключение из этого правила: Reliant Robin. Если у автомобиля больше четырёх колёс, то это грузовик, автобус или вообще автопоезд. Исключение найдётся и здесь: Mercedes-AMG G 63 6x6. Попытка описать окружающий мир легко обнаружива...

Большая Архитектура, изгнание талантов и парочка «велосипедов»: недооценённое из потока Менеджмент Привет, с вами Markaty, куратор потоков Менеджмент и Маркетинг. Мы в Хабре убеждены, что «должны расцветать все цветы», и все лучшие истории и опыт IT и около-IT надо собирать под крышей одного НЛО. Менеджмент и маркетинг — не исключение.Лучшие тексты автоматически выносит в...

Варианты использования Java ML библиотек совместно с Spring, Docker, Spark, Rapids, CUDA В данной статье рассматривается способ использования GPU nVidia с технологией CUDA в Docker-контейнерах для распределенной тренировки моделей машинного обучения на нескольких машинах. Цель статьи - показать вариант использования Big Data Tool Apache Spark в Docker-контейнера...

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

5 DIY-проектов на базе Raspberry Pi осени 2022 года: клавиатуры, контроллеры и звонок для котиков Привет, Хабр! «Малинки» не теряют свой популярности, проектов на их основе становится все больше. А значит, самое время рассказать об интересных и (правда, не всегда) практичных проектах. Возможно, кто-то из вас захочет повторить или доработать один из них — в этом случае б...

[Перевод] Как настроить зависимые выпадающие списки в MS Excel, используя СМЕЩ и СУММПРОИЗВ Привет, Хабр!В этой статье мы демонстрируем простой способ по настройке зависимых выпадающих списков в MS Excel.Статья будет особенно полезна тем, кто еще не пользуется ни формулами массива, ни клавишей F9 при их написании.С уважением,Владимир Читать далее

Илон Маск хочет запустить спутниковый интернет Starlink в Иране. Он попросит власти США выдать соответствующее разрешение Американский предприниматель Илон Маск заявил, что намерен просить власти США сделать исключение из санкций для обеспечения работы спутникового интернета Starlink в Иране. Сеть Starlink создана и принадлежит компании Маска SpaceX. Starlink will ask for an exemptio...

Цифровой баланс: часть 1 – Браузер и расширения Начинаю серию статей про то, как жить осознанно в нашем цифровом мире с потоками информации, бесконечным количеством экранов и уловками сервисов, которые хотят ваше привлечь к себе все ваше внимание. В этих статьях я сделаю обзор инструментария и техник, которые нашел и испо...

Технологии UNIGINE 2: визуальный редактор материалов Если во времена Half-Life 2 в моде были фототекстуры, то сегодня материалы поверхностей в 3D-графике реального времени воссоздаются с нуля. Для этого используются шейдеры, написанные программным кодом. Но не все художники владеют программированием! Специально для них в UNIGI...

Cемь фильмов о цифровом мире на фестивале Doker С 15 по 24 августа в Москве в восьмой раз пройдет международный фестиваль документального кино «Докер». С 2016 года ЛАНИТ поддерживает «Докер» и вместе с оргкомитетом проводит единственный в мире конкурс фильмов об информационных технологиях – «Let IT dok!».В этом году докум...

Как и почему мы переехали из SAP в 1C c интеграцией в Directum RX Сегодня многие компании вынуждены мигрировать на российский софт, в связи с санкционными ограничениями или требованиями регуляторов. У нас есть похожий опыт, хотя сам процесс миграции произошёл до введения санкций, а обязательств по импортозамещению у нашей компании нет. Мы ...

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

Публикация пакета Wolfram Language Несколько месяцев назад компания Wolfram Research открыла общий доступ к Wolfram Language Paclet Repository. Это централизованное хранилище пользовательских пакетов, написанных на языке Wolfram. Данное хранилище не является чем-то новым само по себе. Для языка Wolfram уже ес...

Яндекс делится почкованием, стартапы с российскими фаундерами отменяют, а Илон Маск проникся идеалами Кин-дза-дзы Почти что всё самое важное, что произошло за неделю в мире финансов. Также в выпуске: Pump-and-Dump схемы в Телеграм-каналах, чудеса занимательной Эрдоганомики, и официальное обвинение нидерландского прокурора в адрес open-source разработчика Tornado Cash. Читать далее

Система техподдержки, которая понравится руководству В статье перечислю некоторые кейсы работы системы техподдержки портала https://www.gosuslugi.ru/. Я столкнулся с ним как обычный пользователь. Заранее извиняюсь перед всеми причастными к работе ГосУслуг. Я с глубоким уважением отношусь к создателям этого портала. Надеюсь, чт...

[Перевод] Правило 3-х часов: Сколько нужно работать в день Размытое зрение, стук по клавиатуре и одно глобальное правило продуктивности.Я был там. Слишком долго работаю над проектом. Я начинаю ошибаться. Я теряю детали. Ошибки продолжают появляться, а качество падает.Делаю что-нибудь творческое в течение нескольких часов, и это утом...

[Перевод] Продвинутые хуки в React: всё о UseEffect В этой статье рассмотрим советы и приёмы, которые помогут более профессионально написать код на React. Читать далее

Разбор ошибок в игровом движке Stride Stride – это мощный, бесплатный и активно развивающийся игровой движок, реализованный на C#. Он вполне может стать альтернативой Unity, но насколько качественный исходный код Stride? Узнаем это с помощью статического анализатора PVS-Studio. Читать далее

[Перевод] Как создать Star Rating виджет на React.js и оптимизировать его В этой статье я хочу затронуть еще одну задачу, с которой вы можете столкнуться на собеседовании на позицию Front-End — создание Star Rating виджета.За последние пять месяцев у меня было 15 онсайт собеседований, а также офферы от Google, Roku, Microsoft и других компаний.Вы ...

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

Ресерч свежего Excel документа с Loki malware внутри Вечер добрый, Хабр! Решил немного изучить свежий сэмпл малваря LokiBot (31.08), который содержится в Excel документе и используется для фишинговой рассылки. В этой небольшой статье основное внимание уделено практической части поиска, извлечения и небольшого разбора поведения...

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

Центрируй, властвуй, располагай Всем привет, с вами Кирилл Мыльников, frontend разработчик компании Usetech.Сегодня я хочу рассказать о вертикальном и горизонтальном центрировании CSS (Cascading Style Sheets). В сети есть много статей на эту тему, но я хочу выделить все виды горизонтального и вертикального...

Зачем мы сделали собственный контроллер для копирования секретов в Kubernetes Делимся нашей внутренней разработкой — Kubernetes-контроллером mirrors. Мы создали его внутри нашего DevOps-отдела для копирования Kubernetes-секретов между неймспейсами кластера. В итоге mirrors превратился в универсальный инструмент синхронизации данных из разных исто...

Как я участвовал в конкурсе Telegram на создание медиаредактора и занял никакое место (но получил бесценный опыт?) Задача состояла в создании автономного приложения для редактирования медиафайлов на Swift без использования сторонних UI-фреймворков. Конкурсные функции и интерфейсы должны быть созданы с нуля. Использование сторонних реализаций медиаредакторов с похожими функциями строго за...

CDC и логическая репликация для баз данных, реализованных на стеке open source-решений Привет, Хабр! На связи СберТех — мы создаём Platform V, цифровую платформу Сбера для разработки бизнес-приложений.В платформу входит более 60 продуктов на базе собственных сборок open source, доработанных до уровня enterprise по функциональности, безопасности, производительн...

[Перевод] Как использовать Docker в приложениях Node.js и React В этой статье поговорим о том, как разработать и запустить бэкэнд на Node.js-Express и фронтенд на React в контейнере Docker. Читать далее

Невыжившие в IT Этот текст я пишу из лучших побуждений, безо всякой иронии, снобизма и насмешки. Хочу сберечь время и нервы тем, кто поддался на «войти в айти» и прямо сейчас учится сортировать массивы, парсить строки и верит в «да-да, этим ты и будешь заниматься на работе».Есть такое понят...

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

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

#2 Нейронные сети для начинающих. NumPy. MatplotLib. Операции с изображениями в OpenCV Это вторая статья из серии введения в «Нейронные сети для начинающих». Здесь и далее мы постараемся разобраться с таким понятием — как обработка графических данных, визуализация данных, а также на практике решим пару простых задач. Предыдущая статья — #1 Нейронные сети для ...

Разработка на Angular под SmartTV: история одной фичи Всем привет. Меня зовут Ярослав Карманников, я разработчик команды SmartTV/Web в онлайн-кинотеатре KION МТС Digital. Это четвертая часть сериала, посвященного фиче Autoplay в нашем кинотеатре. Сегодня обсудим нюансы реализации фичи на платф...

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

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

[recovery mode] Современные тренды и управление репутацией Мы с вами живем в довольно интересное время, когда даже тот бизнес, который главным образом зависит от своей репутации, совершает очевидные ошибки и наступает на одни и те же грабли по несколько раз подряд, вызывая недовольство своей аудитории. Особенно это видно по современ...

Kafka как интеграционная платформа: от источников данных к потребителям и в хранилище (часть 1) НЛМК- большая компания, производственные активы которой располагаются в разных регионах России и за рубежом. Перед нами стояла задача спроектировать и внедрить новую интеграционную платформу, которая могла бы быть использована для организации информационного обмена, учитывал...

Бутстреп и А/Б тестирование Привет, Хабр! В этой статье разберёмся, как с помощью бутстрепа оценивать стандартное отклонение, строить доверительные интервалы и проверять гипотезы. Узнаем, когда бутстреп незаменим, и в чём его недостатки.  Читать далее

Парень хотел проституток, а в итоге взял кредит на чай с барабульками для зэков Baza рассказала о случае, произошедшим с 23-летним москвичом Артёмом

PHPCleanArchitecture — Что нового? Этот пост является дополнением предыдущего. В нём расскажу о новых возможностях инструмента (с блэкджеком и шлюпками с примерами и картинками). Читать далее

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

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

Работа с хранимым кодом приложения при миграции с Oracle на PostgreSQL: особенности, сложности и способы их преодоления В предыдущих статьях о миграции с Oracle на Postgres мы рассматривали перенос данных из одной системы управления базами данных в другую (часть 1, часть 2). Сегодня разговор пойдёт об особенностях работы с кодом приложения при необходимости смены СУБД. В частности, буду...

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

Oauth 2.1 spring authorization server + SPA Доброго всем дня уважаемые хабровчане!До сего момента я являлся лишь читателем этого замечательного ресурса, но вот кажется и пришло время написать мою первую статью.Oauth 2.1 - дальнейшее развитие популярного фреймворка авторизации Oauth 2.0, который на момент написания ста...

Кризис 2022 продолжается: опрос digital-агентств и продакшенов о ситуации в digital-отрасли Какие сотрудники сейчас наиболее востребованы? Какие услуги наиболее перспективны, а на какие упал спрос? Об этом и не только в опросе RUWARD.

Одна панель, чтобы объединить все визуализации. Panel for Python Качественная визуализация данных не менее важна для анализа данных, чем методы математической обработки. На сегодняшний день существуют десятки (если не сотни) библиотек для визуализации наборов данных на Python, но иногда в них встречаются уникальные возможности и хотелось ...

IT-рекрутер: тренды развития в профессии  В этой статье Карамышева Людмила, HR-консультант и преподаватель курсов OTUS, рассказывает о том, кто такой IT-рекрутер, чем он занимается и куда может развиваться. Читать далее

Как заменить Qlik и PowerBI с минимальными потерями: Visiology+Loginom+PostgreSQL "Что делать, когда ТОПовые BI-системы стали недоступны и перспективы работы с ними оказались сильно ограничены?". Эта дилемма встает сегодня перед многими компаниями. Меня часто спрашивают, можем ли мы взять и перенести уже наработанные практики на другие платформы, доступны...

«Как не надо проектировать ракеты» или путь разработки ракеты на ЖРД. Часть 1 — как не надо начинать Да здравствуй, великий и могучий Хабр! Надеюсь это будет не лонгрид, но даже если так, то думаю читателю, который набрел на эту статью, будет интересно что да как.Итак, о чем цикл этих статей? Цикл будет повествовать о проблемах проектирования, реализации, расчетов, ракеты-н...

Чиним баг в iOS Firebase RemoteConfig Здравствуйте, меня зовут Артем Волков. Я iOS разработчик в компании "AliExpress Россия".В этой статье расскажу историю одного бага, который мы встретили, работая c подом Remote Config из SDK Google Firebase для iOS, а также о том, как мы внесли свой небольшой вклад в его исп...

Пять инструментов Site Reliability Engineering Надежность (reliability) программного продукта всегда является одним из приоритетов компании. Особенно это актуально для ПО, превратившегося в ежедневный инструмент для своих пользователей. Они рассчитывают на заявленный функционал, поэтому любая невозможность его использова...

Сохраняем состояние страницы после авторизации VK с помощью Broadcast Channel API Недавно в работе с одним из наших клиентов мы столкнулись с проблемой в пользовательском сценарии: VK API требует конкретный, железный URL для редиректа после авторизации. А у нас были сотни ссылок с динамическими параметрами, с которым могла начаться авторизация. Меня ...

Шахматы на C++ Не так давно я захотел написать свой шахматный движок. На удивление в Интернете нашлось не так много хороших статей на эту тему. Были статьи с довольно слабыми программами, многие из которых даже умудрялись пропускать некоторые важные правила. А были статьи с хорошими програ...

Почему все говорят про ДАО. В чем суть, и как они делаются Будем откровенны – про ДАО говорят далеко не все. К относительно широкой аудитории это слово только начало прокладывать путь. Американский Forbes выпустил колонку на тему «Что такое ДАО» в прошлом году, NY Times и The Economist написали свои объяснения уже в 2022-м. Издания ...

Ошибка.log(): как логируются ошибки в мобильном приложении Авито Вы настроили в приложении краш-репортинг, всё протестировали и выложили в магазин. Постоянно мониторите crash rate, в котором всегда четыре девятки, — приложение работает отлично и все довольны. Но всё-таки вы смотрите на него как будто сквозь замочную скважину и не видите п...

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

Топ вещей из Java, которых мне не хватает в C# Спор "Java vs. C#" существует чуть меньше, чем вечность. Есть много статей, затрагивающих разные участки его спектра: Что есть в C# чего нет в Java, что языки друг у друга позаимствовали, у одних LINQ, у других обратная совместимость, в общем, тысячи их.Однако, я никогда не ...

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

[Перевод] Джанет Джексон, разрушительница ноутбуков Как-то раз коллега поделился с автором этой статьи одной байкой со времен поддержки Windows XP. Крупный производитель компьютеров обнаружил, что, если включить композицию “Rhythm Nation” Джанет Джексон, то некоторые модели ноутбуков выходят из строя. Не хотелось бы оказаться...

SophiApp, или Как мы делали опенсорс программу для настройки Windows 10 & 11 Я от лица команды хочу показать вам SophiApp — графический наследник Sophia Script for Windows: бесплатная, портативная и полностью опенсорная программа для тонкой настройки Windows 10 и Windows 11.В этой статье я расскажу, как оброненная мной фраза в комментарии 3 года наза...

Задача о 8-ми ферзях. Свежий взгляд. Шаг 1 + 1/2. Сокращаем количество шагов перебора в три с половиной раза Данная статья в большей мере является уточнением моей предыдущей статьи по оптимизации перебора на шахматной доске с ферзями.https://habr.com/ru/post/679200/Оптимизация перебора в данной задаче, это не только лишь хардкорное скоростное решение на базе 64-битной арифметики и ...

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

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

[Перевод] SQL и NoSQL. Правда ли одно лучше другого? Базы данных (БД) существуют с первых дней программирования, а появились они ещё раньше. Это — неотъемлемые части любых приложений. Хорошо спроектированная БД — это один из важнейших компонентов, влияющих на производительность программных проектов. Из-за этого множество архит...

75 рублей. Wildberries сделал отказ от товара и возврат платным для всех покупателей без исключения Торговая площадка Wildberries представляет из себя один из крупнейших онлайн-магазинов, у которого есть несколько десятков тысяч пунктов выдачи заказов по всей России, а еще компания обеспечивает курьерскую доставку домой или на работу. При этом сервис, Читать полную версию...

Дегустация Argo Rollouts: обзор решения, часть 1 Всем привет! Меня зовут Евгений Симигин, я занимаюсь внедрением DevOps-практик в Центре компетенций по разработке облачных и интернет-решений МТС Digital. В этой статье – обзор Argo Rollouts, я покажу несколько примеров применения и отмечу интересные места в документации. Х...

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

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

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

Неочевидное про Fragment API. Часть 3. Навигация Всем привет! На связи Максим Бредихин, Android-разработчик в Тинькофф. А это — третья статья об интересных моментах из Fragment API, о которых вы, возможно, не знали.Наливайте чай, садитесь поудобнее и приятного чтения! Читать далее

Ещё раз о гидропонике Статья об успешном опыте выращивания шести кустов помидоров на гидропонике - дома, на балконе, без регистрации и СМС без ардуино и автоматизации, а только с помощью разума и сил природы. Написана чайником для чайников. Читать далее

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

Mikrotik, Telegram и не только… Здравствуйте, друзья!Сегодня я хочу рассказать вам, как открыл для себя новый язык программирования, среду исполнения, а ещё готовый фронт-энд. И всё это без кучи фреймворков и тысяч библиотек, чистое, непаханое поле…Однако, давайте по порядку. Читать далее

Машинное обучение с Apache Cassandra и Apache Spark В первой статье из серии об использовании Apache Cassandra в машинном обучении мы обсудили цели и задачи машинного обучения, и поговорили почему Cassandra — превосходный инструмент для обработки больших наборов данных. Также рассмотрели технологический стек, используемый Ube...

Развертывание Spring Boot приложения с помощью Nginx, Let's Encrypt и Docker Compose Привет, Хабр! В своей первой статье я бы хотел поделиться опытом в развертывании Spring Boot приложения. Но для начала небольшое отступление, которое должно ответить на вопросы зачем и почему.Недавно я столкнулся с задачей разработать Telegram бота. Казалось бы, что тут слож...

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

Spring Test Containers как бины TestContainers это отличный инструмент, позволяющий тестировать свой код в prod-like окружении.Однако трудности возникают когда появляется потребность провести сложное интеграционное тестирование используя несколько таких контейнеров, например, базы + очереди, нескольких оче...

Восстановление повреждённых файлов на основе CRC32 Нашел я недавно в закромах старый оптический диск (CD). Открыл его в проводнике и не могу зайти ни в одну папку. Протёр диск. Попробовал снова - та же оказия. Царапины на диске конечно есть, но не много и не сильные. Решил воспользоваться специальным софтом BadCopy. Половина...

Каким людям не стоит быть продактом или какие ошибки в найме продактов делают организации Каким людям не стоит быть продактом или какие ошибки в найме продактов делают организации?Гость Алексей Рытов CPO at Yard Hub. Канал «Притчи продуктолога» @product_proverbs сайт: http://ritov.ruПо темам: • Люди которые не контроллируют Жопа-часы - это про бирюзу• В этом...

Выбор основных проектных параметров ракеты. Или как самостоятельно спроектировать Falcon 1e (часть 1) В одной из статей я писал с чего начать создание своей ракеты. Среди основных технических задач первого этапа самой главной является задача проектно-баллистического анализа и выбора основных проектных параметров. В данной статье я постараюсь на примере показать что это такое...

Physically-based rendering. Ray marching (часть 2) Привет, Хабр!Перед вами продолжение статьи про рендеринг. В первой части, которую вы, кстати, можете найти по ссылке (link), мы поговорили о трассировке лучей и маршевом методе, а в этой части мы с вами получим фотографию мыльного пузыря. Будет интересно :) Читать далее

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

Как один парень программистов учиться приучил Помните одного парня? Нарисовался тут опять. Выглядел усталым и довольным. Сказал, что сделал реальное добро реальным людям. Причём, всем сразу, не исключая и себя любимого.Если помните (или по диагонали перечитаете приведённую выше ссылку), парень этот был программистом на ...

Vue, React или Angular: какой стек используют в России. Проанализировал 180 сайтов Благодаря лени узнал, какие фреймворки используют компании на российском рынке. Проанализировал e-comm, банки, интернет-магазины, сайты застройщиков, стриминговые сервисы, телекоммуникации и другие сферы. В конце статьи ссылка на таблицу. Читать далее

Building generator in Unity Генератор зданий в ЮнитиВ данной статье описан процесс создания генератора зданий внутри Юнити с объяснением логики и примером подходящих моделей. Читать далее

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

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

Роль UX писателя и копирайтера в мультивселенной безумия UX писатель (UXW) и копирайтер (CW) — две разные профессии. Их путают по одной причине: у них один и тот же основной рабочий инструмент — текст. С помощью текста копирайтер создает красивую, завораживающую вселенную, а UX писатель наводит там порядок — в этой вселенной ...

Компилирование и исполнение Java-кода в Runtime Привет Хабр! Сегодня я хотел бы поговорить про динамическое компилирование и исполнение Java-кода, подобно скриптовым языкам программирования. В этой статье вы найдете пошаговое руководство как скомпилировать Java в Bytecode и загрузить новые классы в ClassLoader на лету. Чи...

Текстовое кунг-фу: советы от мастера UX-дизайна Привет, меня зовут Булат Давлетов, я продуктовый дизайнер в «БАРС Груп». Эта статья будет не про копирайтинг или дизайн, а про удобство работы с текстом за компьютером каждый день. Читать далее

Physically-based rendering. Ray marching (часть 1) В этой статье ты, мой читатель, познакомишься с основными понятиями в трассировке лучей и сможешь попробовать написать свой первый рендер, а во второй части я расскажу, как получить реалистичный рендер мыльного пузыря. Читать далее

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

Отмена релокейта в Болгарию, плесень и ремонт, или как я переехал в деревню Всем привет. Меня зовут Павел Кишеня, я работаю в REG.RU системным администратором. Два года назад я переехал из Минска в область, деревню Лещёвцы. В этой статье я расскажу, как и почему я переехал, какие здесь условия для работы и жизни и причем здесь плесень. Читать далее

Продолжаем разгонять FizzBuzz После написания первой статьи про FizzBuzz (которая неожиданно для меня стала выбором редакции на Технотексте 2021) у меня появлялись мысли о том, как еще можно ускорить, но все время было не до того. И тут мне прилетает перчатка. Читать далее

Kubernetes + Jenkins: как использовать вместе Из-за роста инстансов Jenkins команда может страдать от избыточного потребления ресурсов и медлительности конвейера доставки. Выход из этой ситуации — масштабирование. В статье пошагово разбираем, как масштабировать Jenkins с помощью Kubernetes. Читать далее

Как мы сделали матчер: тайтлы, БЕРТы и две сестры Всем привет! Меня зовут Андрей Русланцев, я — Senior Machine Learning Engineer в команде матчера в AliExpress Россия. Я расскажу о том, как мы сделали матчер: какие проблемы нам пришлось решить, какие модели мы использовали, как выглядит наш текущий пайплайн, и почему наш ма...

Прагматичная разработка-3: телеграм-бот Финальная часть разработки простого проекта про specialty-кофейни на Кипре. В первой части я рассказал про API микросервис, во второй - про фронтэнд-сайт и теперь - про телеграм-бота. Читать далее

Реализация кэш-компрессии по алгоритму base+delta Существенную часть кристалла современных ЦП занимает кэш-память. Дальнейшее увеличение кэш-памяти без изменения технологических норм приведет к соответствующему увеличению кристалла. Одним из способов увеличения объема хранимой информации в кэше без увеличения самого кэша яв...

Обновление Windows 11 принесло неизвестную ошибку без описания Последнее обновление безопасности Windows 11 под номером KB5016629 принесло новые ошибки в систему.

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

Микроконтроллеры Megawin серии MG32F02: таймеры общего назначения Продолжая цикл публикаций по микроконтроллерам на ядре Cortex-M0 компании Megawin (см. предыдущие статьи 1, 2, 3, 4 и 5), сегодня рассмотрим таймеры общего назначения. Читать далее

Нейросети, датасеты, VQА: разбираем результаты соревнования Fusion Brain Challenge с конференции AIJ 2021 Привет, Хабр! Сегодня мы расскажем об интересных задачах соревнования Fusion Brain Challenge с международной конференции AIJ 2021 по искусственному интеллекту, нейросетям и смежным темам. Цель проведения ― собрать на одной площадке представителей международных организаций, б...

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

Видеокарты NVIDIA RTX 40-й серии плавятся под нагрузкой Обсуждение одного из таких случаев произошло на Reddit. Недавний счастливый покупатель RTX 4090 выложил несколько фото, на которых видно, что коннектор питания и переходник, подключённый к нему, расплавились в процессе эксплуатации видеокарты. Читать полную статью

Представлен защищённый планшет Samsung Galaxy Tab Active 4 Pro Samsung анонсировала свой новый планшет из защищённой линейки – Galaxy Tab Active 4 Pro. Как утверждает производитель, устройство сочетает в себе прочность военного уровня, лёгкую портативность и исключительную производительность. ОсобенностиGalaxy Tab Active 4 Pro…

Telegramm-habr-бот. Долгий путь к совершенству Каждый день мы просматриваем habr. Каждый день заходим на главную ленту и просматриваем её. Что, если автоматизировать этот просмотр?В статье я расскажу, как я писал telegram-бота на python3, который вытаскивает заголовки статей с habr и пишет их в telegr...

И нафиг ты это пишешь Статья будет краткой. Даже не очень статья, а так - вопрос для раздумий.Сколько раз я на Хабре видела авторов интересных (мне), но замолкавших (навек!! ааа) от комментариев вроде "зачем вы тащите это старьё", "лучше бы написали о..." и т.д. Читать далее

Как мы писали курс для Python-разработчиков с опытом и зачем сделали упор на асинхронное программирование Два года назад Практикум запустил первые курсы для разработчиков с опытом. Один из этих курсов — «Мидл Python-разработчик». За это время его успешно закончили 140 студентов. Но мир разработки не стоит на месте, и это повод постоянно добавлять что-то новое в учебную программу...

[recovery mode] Пайплайн gitlab для Spring REST приложения. Часть 3 В статье описан мой первый опыт подготовки нетривиального пайплайна gitlab ci/cd при разработке микросервиса.Предыдущие части:Первая частьВторая часть Читать далее

Триквел по Orchard Core. Повторная проверка при помощи PVS-Studio В этой статье мы исследуем проект Orchard Core c помощью статического анализатора PVS-Studio и узнаём, так ли привлекателен код платформы, как сайты, созданные на её основе. Итак, пусть поток статического анализа несёт нас вперёд! Читать далее

Легкая автоматизация кроссплатформенных тестов с Kotlin DSL Привет! Я - Урманчеев Станислав, QA Automation Engineer на проекте «Лояльность» в Mир Plat.Form (НСПК). Хочу поделиться с читателями Хабра нашим опытом в создании и развитии фреймворка для автоматизации тестов на Appium.Какие проблемы мы собрали по пути, к чему пришли в итог...

Все, что известно о предстоящей игре God of War Ragnarok До выхода God of War Ragnarok осталось всего несколько недель. Продолжение «Игры года» от Polygon 2018 года обещает стать одной из крупнейших игр 2022 года, однако многое о игре до сих пор окутано тайной. В этой статье я расскажу все, что известно на данный момент о игре.

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

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

Что произойдёт с вашим здоровьем, если вы будете постоянно работать сверх нормы Генеральный директор Медицинского центра иммунокоррекции им. Р.Н. Ходановой, врач-терапевт высшей квалификации Людмила Лапа рассказала о вреде для здоровья постоянных переработок.

Что под капотом «СберАвто» — ИТ-инфраструктура и стек онлайн-сервиса для покупки автомобилей Сегодня мы кратко расскажем о подходах, стеке, фреймворках и облачных решениях, на которых построена наша технологическая платформа. Передаем слово Юрию Буйлову, техническому директору «СберАвто». Читать далее

Долги, рекомендации и социальные сети: как нас проверяют при приёме на работу С проверками службы безопасности при трудоустройстве сталкивались 72% жителей России, а в ИТ-сфере — 74% кандидатов на вакансии. Это распространённая практика, но не все соискатели понимают, что конкретно ищут работодатели и зачем. Об этом мы расскажем в нашей статье. Читать...

Как мы ведём документацию рядом с кодом В Альфа-Банке мы уже больше 5 лет ведём документацию рядом с кодом. Но она используется не для всех проектных документов. Дело в том, что документация у нас делится по слоям: фронт, миддл и бэкенд. Если с миддлом — слоем микросервисов — всё хорошо, то вот с переводом фр...

Хранение и управление доступом на данные в хранилище S3 Привет! Сегодня хотим рассказать о, как использовать бакеты, хранить данные, настраивать политики и управлять доступом на данные при работе c объектным хранилищем S3. Читать далее

Наша новая удачная попытка бесшовной замены Redis на KeyDB Мы уже как-то рассказывали о базе данных KeyDB — форке Redis, разработка которого началась в 2019 году. Проект распространяется под свободной лицензией BSD, и у него уже почти 6k звезд на GitHub. Авторы в свое время столкнулись с проблемами производи...

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

Как организовать потоковую обработку данных. Часть 2 Привет, Хабр! Я – Евгений Ненахов из центра Big Data МТС Digital. Это вторая часть  статьи о том, как мы создали универсальный инструмент потоковой обработки данных и построили с его помощью мощную систему стриминга. В первой половине статьи мы обсудили основные компоне...

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

[Перевод] Почему KRaft заменил ZooKeeper Зачем менять ZooKeeper на встроенный лог Apache Kafka® для управления метаданными? В этой статье вы узнаете, зачем нужна была эта замена, какие преимущества даёт протокол консенсуса на основе кворума, вроде Raft, и как работает контроллер кворума поверх протоколов KRaft. Чит...

Микроконтроллеры Megawin серии MG32F02: АЦП и компаратор Продолжая цикл публикаций по микроконтроллерам на ядре Cortex-M0 компании Megawin (см. предыдущие статьи 1, 2 и 3), сегодня рассмотрим АЦП и аналоговый компаратор, а также проведем эксперименты с более "продвинутым" МК MG32F02A064. Читать далее

[Перевод] Использование шаблонов проектирования группы GoF в React В этой статье поговорим о том, как написать в React многократно используемый код, используя три шаблона проектирования группы Gang-of-Four. Читать далее

[Перевод] OWASP Web Security Testing Guide: как улучшить защищённость web-приложений Open Web Application Security Project (OWASP) — одна из самых известных организаций, целью которой является улучшение защищённости приложений. Большинство специалистов в области информационной безопасности знакомы с OWASP Top Ten. У OWASP есть множество других проектов для р...

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

User Story Mapping как подход к проектированию Меня зовут Наталья Кобякова, я ведущий аналитик в Ak Bars Digital. В этой статье я расскажу, почему для проектирования функциональности наших продуктов вместо стандартных ТЗ мы используем методологию User Story Mapping и как это помогает нам вести разработку быстро и качеств...

[Перевод] Почему ваш веб-сайт должен быть меньше 14 КБ Чем меньше веб-сайт, тем быстрее он грузится, и это неудивительно. Удивительно то, что страница на 14 КБ может грузиться гораздо быстрее, чем страница на 15 КБ, даже на 612 мс быстрее, хотя разница между страницами на 15 КБ и 16 КБ минимально. Так происходит из-за алгорит...

Как концептуально работает Tornado Cash, который «забанили» власти США 8 августа 2022 года Управление по контролю за иностранными активами Министерства финансов США (OFAC) наложило санкции на Tornado Cash, миксер криптовалюты, что вызвало шквал обсуждений в криптосреде. В этой статье разберем как концептуально работает криптомиксер Tornado Cash...

Где работать в ИТ в 2022: QIWI Наша рубрика «Где работать в ИТ» — это интервью с интересными айти-компаниями, в которых они делятся подробностями о процессах своей работы. Представители индустрии отвечают на вопросы о найме, условиях, командах и технологиях. В этом выпуске мы расскажем вам о QIWI — к...

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

[Перевод] Экзибит, прокачай мой трансформер или Основные идеи по улучшению модели трансформера с 2018 по 2020 год (часть 1) В июне 2021 года вышла статья “A Survey of Transformers” - обзор различных нововведений, сделанных с применением архитектуры “трансформер” после ее появления в материале “Attention is all you need”.Этот материал особенно актуален сейчас. Приведенные подходы и архитектуры нач...

Unity: Небольшой скрипт = все ориентации экрана Хватит блокировать вертикальную или горизонтальную ориентацию экрана в своих проектах на Unity! В этой статье мы рассмотрим небольшой скрипт, который я использовал в своем проекте. Читать далее

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

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

Master Browser на Windows 10 или снова о пресловутом NetBIOS Хотя технология NetBIOS устаревшая, глючная и подвержена атакам хакеров, Microsoft все равно продолжает ее поддерживать несмотря на то, что много раз заявляла об окончании поддержки.Хочу рассказать свою историю о том, как Microsoft в очередной раз подкинула проблем на ровном...

Как мы делали суперприложение на основе Почты Совсем скоро, 3 и 4 сентября в VK пройдёт новый Weekend Offer. В нём будет участвовать и наша команда — мы создаём суперприложение на основе почтового клиента Mail.ru. Хотим подробнее рассказать об этом проекте и о задачах, которые нужно будет решать нашим будущим коллегам :...

Обновление системы грейдов: с чего мы начинали, какие проблемы нашли и что нам дал новый подход Всем привет!Меня зовут Константин Щеглов, я – CIO SuperJob. Сегодня я расскажу о нашей системе грейдов, которую мы применяем для ежеквартальной оценки наших разработчиков. Мы поговорим о старой системе и проблемах, с ней связанных, а после этого я расскажу об изменениях, кот...

Блокировка неизбежна. Компьютеры на Windows 10 и Windows 11 перестанут работать в России Более чем одна тысяча разного рода иностранных компаний ушла с российского рынка или полностью приостановила свою деятельность на территории России на неопределенный срок. Все это произошло с конца февраля 2022 года. Кто-то из компаний решил Читать полную версию публикации ...

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

[Перевод] Сложности переноса Papers, Please на мобильные Я разработал Papers, Please в 2013 году специально с расчётом на десктопные компьютеры и управление мышью. В 2022 году десктопных компьютеров уже не существует и все компьютеры — это мобильные телефоны. Настало время обновить этого динозавра. Эта статья из тысяч слов и мег...

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

Все люди — НПС в компьютерной игре? Упомянув, несколько лет назад, в опубликованной на Хабре юмористической статье «12 способов» о том, что значительная часть населения Земли является НПС (от англ. Non-Player Character) я не собирался возвращаться к этой теме. Но идея оказалась прилипчивой — раз возникнув, она...

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

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

Игрок задонатил в Diablo Immortal 100 тыс. долларов и теперь не может нормально играть Довольно необычная ситуация произошла с одним из игроков в Diablo Immortal. Игрок с ником jtisallbusiness рассказал, как из-за слишком высокого уровня он не может найти соперника и вынужден играть один. Читать полную статью

Как создать игру в 2022. Моя история создания игр Привет. Меня зовут Саня и мне 14 лет, я учусь в 9 классе в Москве. В этой статье я расскажу, как создал свою игру и поделюсь своим опытом в разработке. А также расскажу, как создать игру новичку в 2022 году. Читать далее

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

Нагрузочное тестирование: что? где? когда? После весны 2020 года слово “тестирование” приобрело некоторые неожиданные значения и неоднозначные коннотации — пожалуй, везде, кроме IT. В нашей сфере без него никуда — и так было всегда. Видов тестирования ПО — множество: модульное, функциональное, А/В-тестирование, инте...

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

Программирование для админа: какой язык выбрать? Эксперты Слёрма — Антон Черноусов, Павел Селиванов, Денис Наумов и Владислав Килин — собрались, чтобы обсудить, какой язык больше подходит для админов, инженеров и devops.Дисклеймер. Этот материал не претендует на звание истины в последней инстанции. Статья создана на основе...

Вот как мы поняли, что нам нужно больше стажеров Всем привет! Меня зовут Алексей Половинкин, я руковожу отделом Python в AGIMA. Последние пару лет мы набираем в команду больше стажеров. Это был наш эксперимент — хотели посмотреть, что из этого выйдет. Результат впечатлил: мы поняли, что нам нравится с ними работать. В...

Swarm + Nginx + Gitea + Drone + Portainer. Пошаговое руководство по деплою аналога github на своём железе В данном туториале я расскажу вам как можно задеплоить gitea на своём железе с использованием docker-compose подключить drone, для возможности автоматизации тестирования и доставки собственных приложений, настроить reverse-proxy через nginx для доступа через сеть и включить...

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

HTML, CSS: какие символы можно использовать в названиях классов CSS При разборе кода HTML-страницы возникает вопрос: какие символы можно использовать в названиях классов CSS? Например, можно ли названия классов писать по-русски? Или китайскими иероглифами? Или с помощью эмодзи? В этой статье я разбираю этот вопрос со ссылками на действующие ...

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

Миграция кода с Oracle на PostgreSQL: особенности и пути обхода, средства конвертации, вспомогательные модули Эта статья завершает цикл о миграции с СУБД Oracle на СУБД PostgreSQL. В первых двух статьях рассматривались проблемы и устоявшиеся способы переноса данных из одной СУБД в другую (часть 1, часть 2). В третьей статье была представлена часть особенностей, которые нужно учесть ...

Обзор 3D принтера FlyingBear Reborn 2 В этом материале расскажем об очередном устройстве от компании FlyingBear - FlyingBear Reborn 2. Произошло ли перерождение не плохого 3D принтера? Узнаете в нашем обзоре!У компании FlyingBear никак не закончатся новинки, поэтому мы продолжаем серию обзоров на 3D принтеры от ...

Интерактивное ТВ: как всё работает и что оно умеет (часть 1) Привет! Меня зовут Евгений Гудкин, я руководитель группы спецпроектов в сейлс-хауcе ЭВЕРЕСТ, я хочу рассказать вам про интерактивное ТВ и изменения, которые мы вносили в ряд механик в этом году. Поговорим про специфику интерактивного ТВ, обсудим его элементы и метрики, а так...

Trunk Based Flow — кто такой и зачем нужен Привет! Меня зовут Павел Лакосников, я Team Lead Backend Engineer в Авито. Сегодня расскажу про свой любимый подход к разработке Trunk Base Development, сравню его с другими моделями ветвления и подсвечу его достоинства и нюансы.Краткий обзор трёх моделей ветвления: Central ...

12 популярных ошибок настройки Google Analytics и способы их исправить Типичные ошибки при настройке Google Analytics: как настроить отслеживание, чтобы получать верные данные.

Как техдолг может утопить команду, и что делать, чтобы этого не допустить Существует миф, что один сильный программист может быть в 10 раз продуктивнее другого — ten-X developer. Я считаю, что таких программистов не бывает, но есть ten-X команды, которые перформят в 10 раз лучше самой слабой команды. Чтобы стать ten-X team, нужно поменять отношени...

Биткойн обрушился почти до 19 тыс., эфир — до 1,4 тыс. долларов Значительные потери на рынках произошли после заявления председателя Федеральной резервной системы США Джерома Пауэлла в пятницу. Волатильность рынка криптовалют и негативный экономический прогноз Федеральной резервной системы США подрывают доверие инвесторов. На момент...

Linkkraft: offline-first браузер, который организует открытые вкладки и персональные заметки Расскажу про браузер/персональная базу знаний, который делаю. А также про источники вдохновления (например, хабр в 2009) и альтернативные решения проблем. Помимо этого предлагаю обсудить то как вы сейчас организуете открытые вкладки, закладки, заметки. Читать далее

Готовим Window Inset под соусом Jetpack Compose и щепоткой View Обожаю запах свежей мобильной разработки по утрам, дням и вечерам

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

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

Программирование под SIBO (EPOC16) в наши дни Так уж получилось, что я (как и многие из присутствующих здесь) увлекаюсь различным древним железом, в том числе, конечно, и КПК. И сегодня речь пойдёт об одной навсегда ушедшей в историю линейке КПК от компании Psion.Далее инструкция о том, где найти нужный софт, как его ус...

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

Туториал по настройке почты exim4 в облаке Yandex Эта статья представляет собой материал, который предназначен для экономии времени системных администраторов, столкнувшихся с проблемой работы почты в облаке yandex. В этом материале мы рассмотрим настройку почты с использованием exim4 и 360.yandex. Читать далее

Приключения при настройке сервисов машинного обучения в MS SQL Server 2019 В статье описано, как настроить сервисы машинного обучения для R и Python. Несмотря на большой опыт в IT, сразу у меня не работает примерно ничего. Поэтому будут ссылки на то, что делать, если сразу не завелось. В итоге я поставила новый экземпляр с сервисами машинного обуче...

Обзор операторов PostgreSQL для Kubernetes. Часть 3: CloudNativePG Статья продолжает наш обзорный цикл о PostgreSQL-операторах для Kubernetes. В первой части мы рассматривали операторы Stolon, Crunchy Data и Zalando. Во второй — KubeDB и StackGres, а также объединили все пять операторов в сравнительную таблицу. В этот раз разбираем решение ...

Microsoft предупреждает о сбоях обновления Windows При попытке установки обновления KB5012170 может произойти сбой установки, и вы можете получить ошибку 0x800f0922. Примечание: Эта проблема затрагивает только обновление безопасности для Secure Boot DBX (KB5012170) и не затрагивает последние накопительные обновления безопасн...

[Перевод] Как мониторить золотые сигналы SRE Принципы Site Reliability Engineering (SRE) в последнее время очень популярны, отчасти благодаря знаменитой книге о SRE в Google, где говорится о золотых сигналах, за которыми нужно следить, чтобы наши системы работали быстро и безотказно в любых масштабах.Все понимают, что ...

Торопиться не надо… (Про спинлоки) После небольшой статьи про особенности при работе с кэшем (https://habr.com/ru/post/687146/) мне в личку прилетело несколько замечаний про работу спинлоков и приглашение на собес от пчелайнов, приятно, что технические статьи читают не только технари... лирика. Возвращаясь к ...

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

Топ докладов с TeamLead Conf по версии команды Тинькофф Привет! Меня зовут Владимир Коноплев, я руковожу разработкой финансовых продуктов в Тинькофф Бизнесе. В мае я посетил TeamLead Conf — конференцию для тимлидов. Расскажу о лучших докладах по версии команды Тинькофф и поделюсь видео с докладом нашей коллегии Юли о тонкостях оц...

Как мы контролируем работу облаков с тысячами виртуальных машин и сотнями тысяч приложений Как и многие другие вендоры ПО, 1С давно предлагает свои продукты в облачном варианте. Это, в первую очередь, наши облачные сервисы 1С:ГРМ (Готовое Рабочее Место) и 1cFresh. Предоставление облачных сервисов требует наличия соответствующей инфраструктуры – прежде всего сервер...

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

Обход средств защиты в iOS-приложениях В прошлой статье мы рассмотрели базовые уязвимости и способы их обнаружения. Но что делать, если в приложении используются дополнительные средства защиты (например, Jailbreak Detection или SSL-pinning), которые не позволяют нам изучить его? В этой статье расскажем, как и с п...

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

Связь GreenPlum и PostgreSQL GreenPlum — популярное решение для масштабных аналитических систем и в небольших стартапах, и в крупных корпорациях. Оно предлагает понятный пользователям синтаксис ANSI SQL, хорошо ложится на облачный ландшафт, позволяет обучать и применять модели машинного обучения, а ещё ...

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

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

АЭС Франции отключают из-за жары. Но так ли все серьёзно, как описывают СМИ? В последние недели много говорилось об остановке французских АЭС из-за жары. Европу действительно накрыла чуть ли не самая мощная волна жары за последние десятилетия, местами температура держится за +40С. В этой статье я расскажу о том, насколько серьезно и масштабно это к...

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

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

Прошивка 3DS Сразу отмечу, что автор статьи не несет ответственности за работоспособность Ваших девайсов! Помните: все, что Вы делаете - Вы делаете на свой страх и риск!Мне удалось заполучить 3DS в 2022 году, ко мне в руки она попала уже взломанная, но мне было интересно как же можно обн...

Microsoft выпустила Windows 10 Build 19045.2301 для инсайдеров в Release Preview Channel Компания Microsoft выпустила Windows 10 Build 19045.2301 (KB5020030) для Release Preview Channel для инсайдеров, которые работают на Windows 10 версии 22H2. Это обновление включает следующие улучшения: • Новое! Microsoft предоставила приложение Quick Assist для вашего клиент...

Как мы строили реактивный игровой сервер на Vert.x Всем привет, меня зовут Алексей Жуков, я старший программист в студии IT Territory. В этой статье я расскажу, как мы строили игровой сервер для Rush Royale. Объясню, почему создание сервера в геймдеве — это не так просто, как кажется на первый взгляд, а также опишу плюсы и м...

[Перевод] Атака на Intel TXT через перехват выполнения кода SINIT Атака, представленная в этой статье, как обычно, предполагает, что злоумышленник может выполнить код до запуска TXT, т.е. до инструкции SENTER. Цель злоумышленника состоит в том, чтобы либо 1) иметь возможность скомпрометировать только что загруженный гипервизор, даже если о...

Домашний Linux-сервер или как самому развернуть систему визуализации на MQTT+Telegraf+InfluxDB+Grafana В данной статье приведен скоуп информации о том, что взять за основу, чтобы развернуть свой домашний Linux-сервер и систему визуализации на нем, используя MQTT в качестве транспорта с оконечного оборудования. Многие статьи или инструкции, которые есть в и...

[Перевод] Работа с графикой на языке Rust Всем привет! Меня зовут Саша и я backend разработчик. Нет, не на rust. Но раст мой любимый язык и недавно я задался целью портировать движок онлайн игры, написанный на C++. Первый месяц ушел на то, чтобы разобраться с бинарными ассетами, их чтением и управлением. Но статья б...

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

Автоматизация на Wiren Board и Node-RED: четыре полезных сценария без программирования Меня зовут Дмитрий, и я готов признаться: я не программист. Я знаю, что многие электрики и технари тоже не пишут код, и эта статья для вас! Ниже я покажу, как с помощью Wiren Board 7 и Node-RED настроить самые полезные сценарии умного дома. И ни строчки кода писать не придет...

Микроконтроллеры Megawin серии MG32F02: модули UART и отладка кода в ОЗУ Мы продолжаем цикл статей по микроконтроллерам компании Megawin на ядре Cortex-M0. В этой статье будут рассмотрены: периферийные модули UART, обработчики прерываний UART, метод отладки кода в ОЗУ МК с базовой частью инициализации во flash-памяти, механизм системных вызовов, ...

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

Сравнение стандарта PEP8 и «Чистого кода» Роберта Мартина ПРЕДИСЛОВИЕПривет Хабр! Признаюсь, честно, за время моего отсутствия я успел по вам соскучиться.Прежде чем начинать изложение материала, позвольте рассказать небольшую историю, вдохновившую написать эту статью.Был совершенно обычный день, когда мне в обеденное время написал ...

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

PostgreSQL Antipatterns: где скаляру в GiST место? В PostgreSQL есть "волшебный" тип индекса GiST, который позволяет быстро искать разные сложные вещи - от интервалов до массивов и даже реализовывать полнотекстовый поиск.Про его внутреннее устройство и возможности подробно рассказывал Егор Рогов, а я в статье "PostgreSQL Ant...

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

Ускоряем разработку: автоматический перевод C++ в Swift. Часть II В первой статье рассказали, почему нам потребовалась автоматическая кодогенерация свифтового интерфейса для C++ в Mobile SDK. Описали инструменты, которые есть в нашем распоряжении, и сделали вывод: лучший промежуточный слой для преобразования на сегодняшний день — это C.&nb...

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

Фото на странице товара в интернет-магазине: 136 гайдлайнов Привет, меня зовут Станислав Хрусталёв, я автор блога hardclient.com. Работаю в управлении клиентским опытом с 2009 года. Пишу на эту тему, собираю лучшие практики из мира Customer Experience, оцениваю сервисные модели компаний.В этой статье мы разберем UX/UI фотог...

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

Год на Airtable: как настроить процессы в компании с помощью low-code решения и стоит ли? Привет, Хабр! Я — Антон Иванов, работаю продакт-менеджером в двусторонних платформах. Как правило отвечаю за опыт поставщиков, вместе с командой успел помочь разработать с нуля и удвоить выручку на второй год после запуска у трех мобильных  приложений и у двух веб-верси...

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

Как мы за 1 день перешли на православный NGFW: инструкция по настройке Всем привет! Я работаю в ИБ-интеграторе и занимаюсь сетевой безопасностью. Сегодня я хочу рассказать про наш собственный кейс, связанный с экстренной заменой иностранного межсетевого экрана (что сейчас достаточно актуально), который «неожиданно» перестал обновляться. Речь ид...

Клиенты головного мозга Этого поста не должно было быть. Изначально это планировалось как холиварная тема для выступления на форуме, но в итоге всё переигралось. Я хотел рассказать про заказчиков: как они выглядят глазами представителя подрядчика, а точнее – поделиться тем, что обычно не выносят на...

Хорошо запоминаете лица? Ученые выяснили, как работает ваш мозг в этот момент Психологи из UNSW Sydney и Университета Вуллонгонга опровергли бытующее мнение о том, что люди с исключительными способностями к распознаванию лиц обрабатывают их целиком. Вместо этого они утверждают, что так называемые “супер-распознаватели” могут разделять новые лица на ча...

[Перевод] Node.js: работа с файловой системой Привет, друзья! Представляю вашему вниманию перевод этой замечательной статьи. Данная статья включает в себя: обзор основных частей интерфейса Node.js для работы с файловой системой (далее — ФС); рецепты (сниппеты кода) для выполнения задач с помощью названного интерфейса...

Microsoft выпустила Windows 10 Build 19042.2311, 19043.2311, 19044.2311 и 19045.2311 Компания Microsoft выпустила Windows 10 Build 19042.2311, 19043.2311, 19044.2311 и 19045.2311. Это обновление, не связанное с безопасностью, включает улучшения качества. При установке этого KB: • Новое! Microsoft предоставила приложение Quick Assist для вашего клиентского ус...

Бэкап CommuniGate Pro: как мы сделали резервную копию коммуникационной платформы надежной Привет, Хабр! Сегодня я хочу рассказать о том, как работает резервное копирование сервера CommuniGate Pro, если делать его с помощью Кибер Бэкап 15. Под катом — схема взаимодействия наших решений, а также подробности о том, как работает бэкап-агент в наиболее сложных дл...

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

Многопоточный бекап и рестор в СУБД Ред База Данных Добрый день. Меня зовут Сергей, я работаю системным архитектором в компании "РЕД СОФТ". При эксплуатации СУБД Ред База Данных или Firebird возникает необходимость выполнить операцию резервного копирования и восстановления. На БД размером сотни гигабайт бекап и рестор занимае...

Паттерны взаимодействия с ботами в Telegram: неочевидные практики на Python и баг в мессенджере Я часто взаимодействую с ботами в Telegram. Чаще как пользователь, но создать собственного бота или потрогать чужого я не боюсь. При разработке собственного решения чувствуется, что бот не похож на GUI- или веб-приложение, но программисты тщательно превозмогают это чувство ...

[Перевод] Создаем классный UI: iOS Shape Morphing Серия, посвященная воссозданию классных демок пользовательского интерфейса, на которые я наткнулся на просторах интернета. Сегодня мы реализуем морфинг между разными формами иконок и разберемся, что такое Metaballs.На днях в Твиттере я наткнулся на твит, демонстрирующий одну...

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

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

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

[Перевод] Что нового в Swift 5.7 Swift 5.7 привносит в язык очередную гигантскую коллекцию изменений и улучшений, включая такие мощные фичи, как регулярные выражения; практические усовершенствования, как сокращенный синтаксис if let; а также множество доработок по приведению в порядок согласованности вокруг...

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

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

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

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

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

Intel выпустила драйвер 30.0.101.3616 Beta Intel обновила драйвер встроенной графики (GPU) до версии 30.0.101.3616 Beta. Список исправлений: • Stray* (DX12) могла вызвать сбой приложения или сообщение об ошибке во игрового процесса; • Vampire The Masquerade Blood Hunt* (DX12) могла привести к сбою приложения во время...

В Microsoft рассказали о песне, которая «убивала» ноутбуки — ещё во времена Windows XP Представитель Microsoft рассказал в блоге компании историю, которая произошла ещё во времена операционной системы Windows XP. Неназванный крупный производитель обнаружил, что при воспроизведении видеоклипа Джанет Джексон «Rhythm Nation» некоторые модели...

Сложно, но можно — стажировка в Яндекс Go Впереди новый сезон стажировок, и статья будет актуальна для тех, кто планирует начать карьеру в Яндексе. Я Максим, iOS-разработчик в службе технического развития Яндекс Go. В декабре 2021 года завершил стажировку в команде и хочу поделиться опытом, полезными ссылками и выво...

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

Суффиксное дерево на python Суффиксное дерево (Suffix Tree, ST) – это структура данных, которая позволяет "проиндексировать" строку за линейное время от её длины, чтобы потом быстро находить подстроки (за время О(длина искомой подстроки)).Тема построения Suffix Tree и его применения хорошо раскрыта...

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

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

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

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

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

О доверии-2 или Почему надо вести себя хорошо Статья двухлетней давности вызвала кое-какой резонанс, а последние месяцы максимально жёстко уткнули нас в то, как много (да всё, фактически!) зависит от того, кому и чему мы верим. Ну вот.1. Как-то в середине 80-х сестра моя пришла из детского сада и, с благоговением в голо...

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

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

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

RabbitMQ и Apache Kafka: что выбрать и можно ли интегрировать RabbitMQ часто сравнивают с другим популярным брокером сообщений — Apache Kafka. Оба инструмента используются для обмена данными между приложениями, но реализуют принципиально разные модели доставки. RabbitMQ — push, когда сообщения отправляются получателям, а Kafka — pull, ...

UAC Bypass и вариации на тему детектирования. Часть 1 Привет, Хабр!Сегодня мы хотим рассказать о возможных вариантах обхода контроля учётных записей пользователей (UAC) и способах их детектирования. Если коротко, UAC (User Account Control) – механизм, поддерживаемый всеми последними версиями Windows, который призван предотврати...

StbSharp: история ненужного проекта В этой статье я бы хотел рассказать о своем хобби проекте под названием StbSharp.Итак, в 2016 году мне пришла в голову весьма банальная идея - сделать собственный игровой кросс-платформенный движок на C#. И я озаботился поиском кросс-платформенной же библиотеки для загрузки ...

Деньги, знания, самооценка: зачем айтишнику становиться ментором Недавнее исследование MentorcliQ показало, что все компании США из списка топ-50 по версии Fortune используют программы менторства. Также наставничество практикуют 84% компаний, входящих в топ-500. Во время экономического спада из-за Covid-19 у компаний с программами об...

Что такое слои блокчейна L0, L1, L2 и L3 и зачем они нужны В последнее время в новостях все чаще и чаще упоминаются L-слои блокчейна (например, инвестиционный фонд A16z вкладывается в L2 решение на Ethereum Optimism или L3 компания Orbs расширяет свое решение на блокчейн TON).Концепция слоев — это категоризация блокчейнов, необходим...

Проблема с использованием тега img и picture в Safari Данная статья описывает баг и его решения в контексте ReactJS + Server-Side Rendering, но это также актуально для всех фреймворков большой тройки так и для чистого JS.При разработке сайта мы столкнулись с проблемой, что при использовании тега <img> на некоторых страниц...

Впечатления от Weekend Offer для бэкенд-разработчиков В прошлой статье я рассказывал про One Day Offer Fronted, сегодня поделюсь впечатлениями об аналогичном мероприятии для бэкенд разработчиков.В комментариях к прошлой статье было высказано предположение, что мне просто не повезло. А рекрутер из яндекса заметила что участников...

Преподавание иностранных языков. Системные ошибки Каждый раз говорят, что надо рассказывать в начале статьи кто я такой. Написал в профиль) Методист я, в общем.Цель статьи – обозначить проблему и перечислить причины её существования. Так вышло, что много лет работаю со студентами ведущих вузов Москвы и неплохо знаю ситуацию...

О чём расскажут на PiterPy 2022 Тем, кто использует в работе Python, может быть уже знакомо название конференции PiterPy. А мы в JUG Ru Group ранее проводили другие конференции вроде Joker. Но теперь эти два мира встретились, и организацией PiterPy занимаемся тоже мы.Сама конференция уже на следующей недел...

Thunderobot 911 Air D: игровой ноутбук «для начинающих» Привет, Хабр!Я Сергей, отвечаю за связи с игровым сообществом в М.Видео-Эльдорадо. Сегодня хочу поделиться личным мнением на новый в России бренд игровой техники и рассказать о нем на примере одного ноутбука. Если что-то забуду, приходите в комменты с вопросами.Итак, за посл...

Разработка, основанная на приемочных тестах (ATDD) Работая с продуктовыми командами разработки, я чаcто наблюдал два сценария написания требований к разрабатываемому продукту, и у обоих сценариев есть перекос в одну или в другую сторону:1. Большой фокус в требованиях уделяется функциональной и технической части, то есть тому...

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

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

DALL-E 2 vs MidJourney: наш опыт практического применения нейросети для оформления сайта…и не только Привет, Хабр! В этом посте я расскажу том, как мы на практике применили результат работы нейросети, почему решили использовать ИИ для отрисовки графики на сайте и предлагаю обсудить, какие вообще существуют перспективы в этой сфере для российского бизнеса. Под катом — наша и...

Адаптация Jetpack Compose в hh.ru Представьте: теплый осенний вечер, на столе перед вами чашечка чего-нибудь вкусного, за окном порхают пожелтевшие листья, тонко насвистывает ветер, но на душе скребутся коварные мыши. И вам точно известно, откуда эти мыши растут: еще летом вышел стабильный Jetpack Compose, а...

Как работает Autoplay в онлайн-кинотеатре Привет! Меня зовут Алексей Мельников, я продакт в KION (онлайн-кинотеатр от МТС Digital), занимаюсь фичами, связанными с искусственным интеллектом. Весной мы писали о фиче пропуска титров. Судя по карме, статья хабровчанам понравилась и это мотивировало нас на написание...

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

[recovery mode] FizzBuzz по-пенсионерски Статья коллеги @qrdl про собеседование с написанием вариантов FizzBuzz очень понравилась.Но очень не понравился код, совсем не понравился. (Так бывает, статья задорная, веселая, с понтами, а код не хороший) И после публикации технотекстов пришлось внимательно изучить https:/...

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

Сезон Java всё: итоги и самые полезные статьи С 1 июля по 15 августа наш любимый ресурс временно захватили джависты. Развлекались они, а разгребать 46 хардкорных технических текстов нам, читателям Хабра.Или нет: я (@apoltavcev) попросил участников сезона Java выбрать лучшие статьи. Под катом вас ждут краткие итоги конку...

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

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

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

SVTR — state-of-the-art нейросеть для задачи OCR SVTR - state-of-the-art модель-трансформер для решения задачи OCR. Авторами статьи была предложена архитектура с одним "зрительным" модулем для эффективного распознавания текста. Основная идея работы заключается в обработке признаков разного уровня, то есть локальных, которы...

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

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

Динамический импорт модулей в Python Давайте представим ситуацию, когда вам нужно установить на все виртуальные машины (агенты сервера сборки) определенный пакет Python. Но вы не можете изменить образ агента, а загрузка, к примеру из pypi.org или github.com непроверенных пакетов, ограничена. Как тут не вспомнит...

Danger. Автоматизируем ревью на CI и пишем свой плагин Привет, я Татьяна Родионова, Android-разработчица в Lamoda. Как-то раз передо мной появилась задача упростить ревью пул-реквестов с помощью Danger. Я решила добавить автоматическую проверку код стайла, используя ktlint. Но оказалось, что Danger не поддерживает такое решение,...

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

PostgreSQL 15: Часть 5 или Коммитфест 2022-03 Эта статья о мартовском коммитфесте завершает серию о принятых изменениях в PostgreSQL 15. Предыдущие статьи посвящены первым четырем коммитфестам: 2021-07, 2021-09, 2021-11, 2022-01. На момент публикации уже доступна вторая бета-версия PostgreSQL 15. Все приведенные ниже...

В отпуск за ПМЖ в сердце Латинской Америки. Почему Парагвай и как нас чуть не депортировали из Бразилии из за covid 19 А еще история про потерянный багаж.Друзья привет, история из личной жизни. Произошла она совсем недавно, главные участники я - Миша, моя жена Инна и мой двухлетний сын Константин.Решили мы с женой получить возможность легально жить в другой стране( получить ПМЖ зна...

Использовать ли Reusable Workflows в GitHub Actions? CI система GitHub Actions достаточно свежа по сравнению со своими конкурентами, но продолжает радовать сочетанием легкости использования и постепенным расширением функционала. На мой взгляд, шаблонизация используемых пайплайнов это безумно важная составляющая, и в конце 2021...

Работа с микросхемой АЦП MCP3301 Микросхема MCP3301 представляет собой 13-битный низкопотребляющий (до 450 мкА в активном режиме при питании  от источника 5 В) аналого-цифровой преобразователь (АЦП) последовательного приближения с дифференциальным входом и возможностью передачи данных по SPI-интерфейсу...

Паттерн Outbox: как не растерять сообщения в микросервисной архитектуре Привет! Меня зовут Михаил Боровиков, я тимлид команды, которая отвечает за систему процессинга заказов Lamoda — Orders Management. Эта система, словно «сердце» Lamoda, через которое проходит самый важный для бизнеса шаг — оформление заказа.Раньше система представляла из себя...

Пресс-релиз сборки Windows 11 Insider Preview Build 22621.317 Компания Microsoft выпустила Windows 11 Insider Preview Build 22621.317 (KB5015885) для инсайдеров в Release Preview Channel, которые работают на Windows 11 версии 22H2. Это обновление включает следующие улучшения: • Исправлена проблема, из-за которой средства устранения неп...

Мощнейшая вспышка на Солнце достигнет Земли уже сегодня, 29 августа Эксперты, которые следят за космической погодой уже предупреждали о том, что на этой неделе должно произойти на Солнце очередное сильное извержение. Вспышка на Солнце класса М произошла в пятницу, 26 августа. Из солнечного пятна под названием AR3089, которое было направ...

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

3D-печать. Чем мы дышим? Здравствуйте, уважаемые. В этой статье я постараюсь рассказать вам о том, что и в каких количествах может выделяться из пластиков в процессе FDM 3D-печати. Вопрос будет рассматриваться не со стороны глобального загрязнения окружающей среды, а со стороны возможного загрязнени...

Что такое Carrier в iPhone и как проверить его на блокировку оператора В 2022 году многие стали интересоваться серыми смартфонами, привезенными из других стран. На рынок попадают самые разные смартфоны: из США, Тайланда, Китая и многих других стран. На первый взгляд, кажется, что iPhone, предназначенный для другой страны — точно такой же...

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

Создание .NET библиотеки от А до Я Думаете о создании .NET библиотеки, но не знаете, в какую сторону двигаться? Уже разрабатываете нечто подобное, но хочется открыть для себя что-то новое? Ищете варианты расширить автоматизацию? Не знаете, что делать с пользователями?Надеюсь, данная статья поможет ответить на...

Философия борьбы с NAT Приветствую всех.В этом посте я расскажу о назначении и устройстве небольшой, но полезной утилиты plexus, работа над исходной версией которой недавно завершилась. Утилита написана на C++, но этот материал будет интересен не только и не столько пишущим на плюсах, но и тем кто...

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

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

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

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

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

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

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

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

Использование Python в SQL Server Machine Learning Services В продолжение статей Приключения при настройке сервисов машинного обучения в MS SQL Server 2019 и Используем R lang в SQL Server разбираемся как работать с Python в сервисам машинного обучения. С Python ситуация несколько лучше, чем с R, так как достаточно много предустанов...

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

[recovery mode] RE Crypto Part#2 Наверное самое популярное действие, которое приходится выполнять для исследования криптографии сегодня это процедура анализа зловредного кода, который блокирует чьи-то данные с использованием кастомного или общепринятого алгоритма. Попробуем в этой статье рассмотреть зловред...

Сказ про то, как мы метрики качества внедряли Всем привет! Я Ирина, руководитель по обеспечению качества в Тинькофф Страховании. Тинькофф давно не просто банк, а экосистема со множеством направлений, такими как Инвестиции, Мобайл, Страхование, Бизнес и прочие. В каждом направлении есть ИТ-команды, которые постоянно что-...

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

Выходим за пределы JVM. Объясняем на крестиках-ноликах чем хорош Kotlin Multiplatform Какой есть общий недостаток у мобильной, front-end и back-end разработки и иногда распила микросервисов? Дублирование логики. Очень часто я видел статьи или новости, где одна команда мобильных разработчиков ждет другую, чтобы выкатить релиз. И если с мобильными версиями боле...

[Перевод] Четыре важных теста для Apache Kafka CI/CD с GitHub Actions Если вы используете GitHub для создания приложений Apache Kafka®, наверняка вы захотите интегрировать Kafka в свою среду разработки и эксплуатации GitOps. Эта статья для тех, кто понимает принципы GitOps, ценность непрерывной интеграции и поставки (CI/CD) и важность промежут...

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

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

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

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

Знакомство с Apache Airflow: установка и запуск первого DAGа Привет! Меня зовут Алексей Карпов, я прикладной администратор (MLOps) отдела сопровождения моделей машинного обучения в Альфа-Банке. Хочу поделиться опытом в работе с Apache Airflow. Расскажу, как установить интерпретатор Python и сам Airflow, а также как отладить его работу...

[recovery mode] Готовим нагруженный Postgres в Yandex.Cloud Перед тем как приступать к основной части статьи, наверное стоит начать с вопросов «зачем». В контексте данной статьи их три: 1)      Почему Postgres2)      Зачем Public Cloud3)      Почему Yande...

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

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

Как выбрать плату для Computer Vision в 2022 Выбор платформы для работы с Computer Vision on the Edge  - непростая задача. На рынке десятки плат. И одна другой краше. Но на практике все оказывается не так хорошо.Я попробовал сравнить дешевые платы которые есть на рынке. И сделал это не только в по скорости. Я попр...

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

Как расти менеджерам: подробная инструкция на примере менеджерской линейки Авито Как расти техническому менеджеру?Этот вопрос может возникать по разным причинам, например:- Настоящий ли я Team Lead или Engineering Manager?- Готов ли я к переходу на следующий уровень?- Будут ли мои навыки ценны в другой компании? Смогу ли я оказаться на такой же роли?В ст...

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

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

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

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

Поиск открытого API сайта или Ускоряем парсинг в 10 раз Поиск открытого API сайта или Ускоряем парсинг в 10 раз Цель статьи — описать алгоритм действий поиска открытого API сайта. Целевая аудитория статьи — программисты, которым интересен парсинг и анализ уязвимостей сайтов. В статье рассмотрим пример поиска API сайта edadeal.ru...

Проектирование Data Pipelines в Apache Airflow Сегодня я хотел бы познакомить вас с важным инструментом в методологии DataOps, а именно Apache Airflow и проектирование Data Pipelines (Конвейеры данных).Эта статья будет посвящена краткому введению в Airflow и шагов по созданию и настройке конвейеров данных (Data Pipelines...

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

Дизайн-система в inDriver: не пытайтесь покинуть Oymyakon Всем привет, я Алексей, iOS-разработчик в inDriver. Наше приложение представляет собой суперапп с множеством сервисов и услуг: городские, межгородские и грузовые поездки, курьерская доставка, услуги мастеров и так далее. Над каждым сервисом работают отдельные команды, которы...

Лучшие моды на Майнкрафт: топ-10 дополнений на любой вкус Minecraft очень богатая в геймплейной составляющей игра, однако, проведя в ней десятки часов, становится скучно. На помощь придут моды — в этой статье мы расскажем вам о 10 лучших дополнений для Майнкрафта.

Не работай «в стол»: руководство для эффективного аналитика Привет, Хабр! Меня зовут Денис, я работаю продуктовым аналитиком в Delivery Club. Наша команда за последние полгода провела около сотни продуктовых исследований данных, которые способствовали появлению нескольких десятков продуктовых гипотез по улучшению нашего продукта. За ...

Собираем кластер PostgreSQL для разработки и тестирования Сегодня СУБД PostgreSQL является одной из самых известных и популярных систем управления баз данными в мире. Открытый исходный код, отсутствие платы за использование, контроль целостности, репликация – это далеко не все преимущества данной СУБД. В современных реалиях, когда ...

Как мы платежный шлюз тестируем Всем привет! Сегодня мы поговорим об интеграционном тестировании платежного шлюза, но перед этим расскажу немного про нашу команду и наш проект. Мы (ContactPay) — самостоятельный финтех-стартап внутри QIWI, строим высокопроизводительный отказоустойчивый платежный шлюз и соот...

Write Once Run Anywhere Вспоминается мем, где человек говорит: «JavaScript — это круто, на нем можно делать роботов и мобильные приложения», а потом его душит собака. Я себя представляю таким человеком, но надеюсь, меня никто не задушит, потому что я делаю на JavaScript вещи, которые в принципе не ...

Что, если… забыть про безопасность кластера k8s? Я думаю, многие слышали про громкий инцидент произошедший с Tesla в 2018 году, когда группа хакеров через консоль Kubernetes смогли получить доступ к аккаунту. После чего изрядно повеселились и настроили майнер в облачном сервисе Amazon Web Services. У многих людей сразу же ...

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

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

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

Типы таблиц в PostgreSQL: logged, unlogged и temporary tables В PostgreSQL существует большое количество разных типов таблиц. Каждая из них предназначена для решения конкретных задач. Самая распространённая и известная — heap table или стандартная таблица. Про её структуру я рассказывал в прошлой статье. Стандартная таблица позволяет х...

IT для неайтишников: Инженеры в заложниках у бизнеса Мы недавно рассмотрели интересную тему про «бизнес в заложниках у IT». Теперь для симметрии нужно рассмотреть обратную сторону: «IT в заложниках у бизнеса». Честно говоря, в эту игру всегда играют двое, а бизнес далеко не такой беззащитный, как это кому-то может показаться. ...

Кем работать в IT в 2022: Python-разработчик Рубрика «Кем работать в IT» — интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажерам она поможет больше узнать о том, что их ожидает на кар...

Рубим под корень: расследование атаки на хост с закреплением и запуском rootkit Привет, Хабр!  В предыдущей статье мы разобрали пример фишинга с использованием зловредного PDF вложения на примере задания GetPDF от CyberDefenders. Сегодня мы поговорим о руткитах (от англ. root – корневой, kit –набор, в данном контексте означает получение неограничен...

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

[recovery mode] Как универсально организовать импорты в проекте, независимо от того, где находятся модули? Начнем с того, что это статья посягается на святой устой комьюнити Python разработчиков, устой звучит так "синтаксис python - идеален, стандартные библиотеки - идеальны, и полноценны, GIL - это неизбежная жертва для такого прекрасного языка как Python ... может быть в конце ...

Курс начинающего бэкендера в Metaclass: интервью со студентом 7-го потока 8 августа начинается новый, девятый поток нашей школы Metaclass по курсам frontend и backend для начинающих.После учебы мы расспрашиваем наших студентов о том, что было легко, сложно, полезно или просто приятно. Сегодня о своем опыте расскажет недавний выпускник ку...

Хакеры выставили на продажу данные пользователей сервиса аренды электросамокатов Whoosh В компании заявили, что утечка произошла по вине одного из сотрудников и не затронула «наиболее чувствительные» данные.

Разбираемся с концепцией аутентификации в HTTP Я часто путаю понятия авторизации и аутентификации между собой, поэтому решил создать материал, который закрепил бы эти понятия через какой-то практический опыт.Хотелось создать статью, которая поэтапно раскроет базовые концепции аутентификации и авторизации на практике, пос...

Как снимать логи с устройств на Android и iOS: разбираемся с инструментами Краткая инструкция по чтению и разбору логов мобильных устройств на Android и iOS, а также необходимые инструменты для Windows и MacOS.Статья подготовлена red_mad_robot и «Альфа-Банком» на основе доклада Senior QA red_mad_robot Ол...

Выпустили пар: мошенники используют метод Browser-in-the-Browser для кражи аккаунтов у игроков на Steam "Хочу рассказать историю, как я недавно лоханулся и потерял свой аккаунт Steam со 100+ играми и донатом на общую сумму больше 15 тыщ рублей". Или вот: "Несколько косарей в Стим вложено, и штук 20 игр, некоторые с дополнениями, на нем висит". Таких историй десятки, если не с...

Как хранить Config в Excel Я часто пользуюсь конфигурацией при написании VBA макросов в Excel. Иногда она нужна в формах для сохранения настроек, иногда для сохранения каких-то получаемых в процессе выполнения макроса данных.Долгое время я искал информацию о том как работать с конфигом в VBA.Есть множ...

Tabletop Simulator — редактор колод Я занимался созданием стола для карточной игры в Tabletop Simulator (TTS) и ощутил нехватку удобного инструмента для управления колодами. Из того что можно найти на youtube есть два способа: первый - это вручную в любом графическом редакторе сеткой расставлять карточки; втор...

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

Go, я создал: пишем тесты на Allure-Go Привет, Хабр!Вы можете помнить меня по предыдущей статье про Allure-Go, в которой мы коснулись самой макушечки нашей скромной наработки. Сегодня же мы накидаем пару тестов с нуля, разберём подробно примеры и посмотрим, чего же нам удалось в итоге добиться.Много коммитов утек...

Что финансы говорят о кибербезопасности: смотрим, какие решения привлекают наибольшие инвестиции Привет, Хабр! Мы в GenerationS объединяем стартапы и корпорации, и IT-решения ожидаемо в топе инноваций от наших выпускников.Возможно, вы слышали про  про некоторые из них: VisionLabs, Scanderm, Elementaree — the list goes on and on. Особое место в списке занимают ИБ-пр...

Kafka как интеграционная платформа: от источников данных к потребителям и в хранилище (часть 2) Привет! Продолжаю рассказ про интеграционную платформу на базе Apache Kafka и про то, как мы постарались гармонично вписать ее в непростую ИТ инфраструктуру группы НЛМК.Напомню, что в первой части статьи были описаны соглашения об именовании топиков, подход к реализации роле...

Huawei способствует облачной трансформации операторов для раскрытия ценности сетевого взаимодействия Г-н Пэн Сон (Peng Song), президент отдела маркетинга и продаж комплексных решений Huawei Carrier BG, рассказал о новейших планах компании по трансформации облачных сервисов на саммите по трансформации облачных сервисов в рамках недели инноваций Win-Win·Huawei Innovation Week...

Учимся настраивать свою почту, не наступая на чужие грабли: Postfix + msmtp + сайт Привет, меня зовут Никита, я backend-разработчик в компании ИНТЕРВОЛГА. Работаю в компании уже 3 года, и за этот срок достаточно часто мне приходилось возиться с установкой и конфигурированием собственного почтового сервера для разных задач (см. далее) клиентов. Сначала...

Одна из причин потерь на сети 802.11 Недавно обратился заказчик, у которого в корпоративной сети несколько сотрудников регулярно жаловались на обрывы и низкую скорость беспроводного соединения. Все эти сотрудники подключались с аналогичных рабочих станций к одной и той же точке доступа Huawei AP7060DN. Других т...

Вышла iOS 16 beta 6. Что нового и как обновиться прямо сейчас Начала осени явно ждет далеко не каждый. Исключения — владельцы iPhone, которые поскорее хотят обновиться до iOS 16. Пока что новая операционка находится в стадии бета-тестирования и, признаемся, там полный порядок. Так, в понедельник, 15 августа Apple выпустила iOS 1...

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

[Перевод] Выбираемся из лабиринта при помощи алгоритма «поиск в ширину» (BFS) на Python Учимся использовать и реализовывать на Python алгоритм поиска в ширину (BFS) для решения реальных задач.Давайте поговорим о популярном алгоритме, который называется «Поиск в ширину» (BFS). Затем реализуем этот алгоритм, чтобы найти решение для реальной задачи: как выбраться ...

Недельный геймдев: #80 — 31 июля, 2022 Из новостей: создатель отменённой Limit Theory поделился исходниками, AMD релизнула Raytracing Analyzer 1.0, Godot начали готовить к 4.0 и с 3 августа заморозят новые фичи и родмеп, исследователи из Disney предложили решение проблемы бороды при захвате движений лица, в St...

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

Разработка драйвера сетевого адаптера для Linux. Часть 1 В этой статье мы рассмотрим как устроен драйвер сетевого адаптера для Linux.Cтатью разделим на две части.В первой части рассмотрим общую структуру сетевого адаптера, узнаем какие компоненты входят в его состав, что такое MAC и PHY, разберемся как подготовить адаптер к работе...

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

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

ERNIE-ViLG — бесплатная китайская нейросеть Нейросети, генерирующие изображения, сейчас на пике популярности. В то время как все балуются Dall-E2 , MidJourney и Stable Diffusion, есть ещё одна модель, которая не так хорошо известна в интернете. Имя ей: ERNIE-ViLG.  Мы познакомились ...

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

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

О чём вы? Конечно, езжайте в Бакулевку Рассказать свою историю меня подвигла статья, которую написал skaynet4788. Всё то, о чём пойдет речь ниже, случилось со мной 5 лет назад и началось всё 6 декабря 2016 года. В этот день я как обычно сидел в своём кабинете и программировал, а также периодически смотрел коммент...

React hooks, как не выстрелить себе в ноги. Часть 4 Использование ref в функциональных компонентах играет две роли:1. С помощью них можно получить ссылку на dom элементы и react компоненты2. ref можно использовать как стабильные переменные. В этой статье сосредоточимся на первой роли, разберем, как с помощью ref получить дост...

ИИ проектирует GUI: первые шаги В последний год в моей ленте ВК и в большом Интернете множатся новости о том, что искусственный интеллект научился рисовать картинки по текстовому описанию. Широко известна нейронная сеть DALL-E от Microsoft, предназначенная для этой цели; она вышла в мае 2021 года. Слегка ш...

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

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

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

Чат-бот для банка ДОМ.РФ: как автоматически обрабатывать 40% обращений Привет! Меня зовут Максим, я управляющий партнёр в KTS. Недавно мы автоматизировали общение пользователей с поддержкой в банке ДОМ.РФ. Мы внедрили чат-бота на основе своего конструктора Smartbot Pro, и за время работы вместе с командой банка выстроили логику по обработк...

[Перевод] Бенчмаркинг service mesh — Istio, Linkerd, Kuma и Consul Многие современные приложения состоят из множества микросервисов, которые выполняются в контейнерах в распределённой системе, локально и в облаке. В этом контексте service mesh — инфраструктурный уровень, который отвечает за безопасность, взаимодействие и мониторинг мик...

Что будет, если кислород на всей Земле исчезнет на 60 секунд Давайте представим, что вы спокойно шли по улице и внезапно почувствовали, что вам не хватает воздуха. Что произошло бы дальше, если бы весь кислород на планете исчез на одну минуту?

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

Как я остался работать в «Сириусе» Привет, друзья!В первой своей статье на Хабре я описал, как преподавал в ИТ-колледже "Сириус" ИТ-архитектуру детям. Рассказал как устроен учебный процесс, поделился своими эмоциями от общения со студентами и преподавателями. В этой статье я хочу рассказать продолжение истори...

__proto__ и prototype Часто на собеседовании опытный разработчик может спросить у начинающего: «Что такое __proto__ и prototype, и чем они отличаются?». Обычно этот вопрос либо ставит в тупик, либо на него отвечают заученной мантрой из видео «50 вопросов на собеседовании»: « __proto__ — это ссылк...

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

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

Взять и извлечь данные из изолированной от сети и периферии вычислительной системы Группа инженеров из израильского Университета имени Бен-Гуриона специализируется на изучении хакерских атак, позволяющих преодолевать так называемый «воздушный зазор» (air gap). Их проекты стали достопримечательностью на Hacker News. Во многом благодаря названиям, которые он...

Accessibility в Android для чайников: адаптируем приложение для незрячих людей В один из зимних вечеров я сидел дома, читал замечательную книжку «Android-программирование для профессионалов» и наткнулся на главу про Accessibility. Раньше я об этой теме не задумывался: клал null в поле contentDescription и жил себе спокойно. Но когда узнал, как слабовид...

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

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

Canary-релизы в Kubernetes на базе Ingress-NGINX Controller Canary-развертывание используется, чтобы протестировать новую функциональность на отдельной группе пользователей. Группа выделяется по определенному признаку. Тест при этом не должен затрагивать работу основной версии приложения и его пользователей. Нагрузка между двумя верс...

Разбор задачи «Распознавание дорожных знаков на кадрах с автомобильного видеорегистратора», Цифровой Прорыв Привет, Хабр!Этой статьей я открываю цикл материалов по разбору задач Всероссийского чемпионата "Цифровой Прорыв", связанных с Computer Vision. Решение, предлагаемое в статье, позволяет получить место в топ-5 лидерборда. Особенность данного подхода в том, что мы не будем исп...

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

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

История одного перехода с gcc на clang На прошлой неделе, после нескольких месяцев разработки, вышла очередная версия языка программирования NewLang. Одной из технических особенностей данного релиза является переход на использования компилятора clang вместо gcc. Данная статья описывает причины смены компилятор...

[Перевод] FAQ по var в Java Локальные переменные — это "рабочие лошадки" Java. Они используются для хранения промежуточных результатов вычислений. И, в отличие от полей, объявляются, инициализируются и используются в одном блоке. Для понимания кода часто более важны имя и инициализатор, чем тип локальн...

Документация в Kotlin-коде и CI/CD Всем, кто создавал библиотеки или сервисы с публичным API хорошо знакома боль, когда документация отстает от изменений в коде и рутинный процесс обновления документации на сайте становится настолько неинтересным, что про него просто забывают. Можно ли как-то автоматизировать...

Разработчики MMORPG Naica Reborn сделали работу над ошибками Naica Reborn — мобильная MMORPG, которую запустили на Андроид. Пока что доступна лишь одна версию, об этом передаёт новостной сайт ATG, ссылаясь на разработчиков и официальный сайт. Это новая версия обычной Naica, у которой было много ошибок, одна из них — её создатели хотел...

Откуда взялся системный интегратор X-Com? Сегодня мы расскажем немного о нашей компании, а точнее о том, как в Группе компаний X-Com появился системный интегратор и чем он отличается от других, имена которых у всех на слуху. Это будет пост про становление нашей компании, которым мы ответим на вопрос, почему уделяем ...

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

Ты вовсе не мерило всех вещей Вы слышали о «Золотом Правиле»? Нет, не о том, которое можно свести к формуле «У кого золото, тот и правит», а о настоящем «Золотом правиле нравственности» — которое гласит: «Не делайте другим то, что вы не желаете для себя, и поступайте с другими так, как хотели бы, чтобы с...

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

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

“Один дашборд, чтобы править ими всеми” Привет! Как мы писали в предыдущих постах, наша команда создает удобные дашборды для разных департаментов СИБУРа, от хозяйственной деятельности до продаж. Но всегда есть кто-то уровнем повыше, которому нужно как-то централизованно и быстро получать самую верхнеуровневую...

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