Социальные сети Рунета
Вторник, 26 октября 2021

Как перенести шейдер из игрового движка в Substance Painter Меня зовут Тарас Улейский, я Technical Artist в Plarium Kharkiv. Для оптимизации графики нашей Survival RPG на мобильных устройствах мы использовали свои кастомные шейдеры. Они предполагают использование уникальных текстур и карт, которые не похожи на текстуры и карты в друг...

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

Edge-ик в тумане и другие приключения периферийных вычислений Добрый день. Меня зовут Игорь Хапов. Я руководитель разработки в Научно-техническом центре IBM. И сегодня я хотел бы вам помочь окунуться в мир периферийных вычислений, или edge computing, как его ещё называют. Я расскажу о том, что же такое edge computing и как он может пов...

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

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

Сим-сим, откройся! — Как мы запустили проект «Открытые данные» Всем привет! Меня зовут Сергей Фолимонов, в ДомКлик я отвечаю за direct marketing и коммуникации с клиентами. С недавних пор я выступаю еще в роли PO проекта «Открытые данные», и хочу рассказать об истории создания этого продукта, сделав акцент на проблемах, с которыми нам ...

Переносим Angular проект на ESLint, с Prettier, Husky и lint-staged Привет, Хабр! Меня зовут Богдан, я работаю в ПИК Digital Front-End тимлидом. Большую часть проектов мы разрабатываем на Angular и недавно я решил пересмотреть наши стайл гайды, а также добавить новые инструменты для более удобной работы. В качестве линтера я решил использов...

Перезагрузка текстур OpenGLESv2 через DMABUF В этой статье я хочу рассказать, как просто можно обновлять текстуры OpenGLES через DMABUF. Поискал по Хабру и к своему удивлению не обнаружил ни одной статьи на эту тему. В Хабр Q&A тоже ничего такого не нашел. И это для меня немного странно. Технология появилась довол...

Фото дня: завораживающие космические объекты из каталога Колдуэлла Национальное управление США по воздухоплаванию и исследованию космического пространства (NASA) предлагает полюбоваться великолепными снимками космических объектов из каталога Колдуэлла, переданными с борта телескопа-ветерана «Хаббл» (Hubble). Автором названного каталога явля...

Как собрать гибридное облако с помощью Kubernetes, которое может заменить DBaaS Меня зовут Петр Зайцев, я генеральный директор, основатель Percona и хочу рассказать: как мы от open source-решений пришли к Database as a Service; какие существуют подходы к развертыванию баз данных в облаке; как Kubernetes может заменить DBaaS, устранив зависимость от ве...

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

[Из песочницы] Как я создавал очередной конструктор сайтов Всем привет, меня зовут Саша. Я создаю свой конструктор сайтов. Я получил первых платящих пользователей. Все они преимущественно из США и Европы. Я хочу поделиться историей своего пути, который включает включал кодинг, краудфандлинг и продвижение. Читать дальше →

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

Фоторамка на Flutter своими руками Привет! Меня зовут Игорь, я работаю Frontend-директором в компании Wrike. В этой статье хочу поделиться историей создания моего пет-проекта и рассказать, как я сделал электронную фоторамку и написал для нее софт на Flutter, столкнувшись по пути со всеми возможными сложностям...

[Из песочницы] Создание арт-объекта для Burning Man Здравствуйте. Меня зовут Сергей, и в этой статье я расскажу о том, как мы сделали арт-объект для мероприятия Burning Man. Я расскажу о технической стороне, не касаясь самого мероприятия. Ну, почти не касаясь. Читать дальше →

Оцениваем опционы на Clojure методом Монте-Карло Привет! Меня зовут Рома, я работаю iOS-разработчиком в Exness. А кроме того, пишу на Clojure и инвестирую. Сегодня я расскажу о том, как оценивать опционы. Это вводная статья и заработать миллион, используя предложенный способ, вряд ли получится. Тем не менее, это хорошая ос...

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

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

Armored Warfare: Проект Армата. Хроматическая аберрация Armored Warfare: Проект Армата — бесплатный танковый онлайн-экшн, разрабатываемый Allods Team, игровой студией MY.GAMES. Несмотря на то, что игра сделана на CryEngine, достаточно популярном движке с неплохим realtime render’ом, для нашей игры приходится многое дорабатывать...

Использование перехватов операций для бэкапа файлов в macOS “на лету” Привет, Хабр! Меня зовут Денис Копырин, и сегодня я хочу рассказать о том, как мы решали проблему бэкапа по требованию на macOS. На самом деле интересная задача, с которой я столкнулся в институте, выросла в итоге в большой проект по работе с файловой системой в macOS и стал...

[Из песочницы] Оптимизация нагрузки на Highload-проекте с помощью ElasticSearch Привет, Хабр! Меня зовут Максим Васильев, я работаю аналитиком и менеджером проектов в FINCH. Сегодня я хотел бы рассказать, как с помощью ElasticSearch, мы смогли обработать 15 млн запросов за 6 минут и оптимизировать ежедневные нагрузки на сайте одного из наших клиентов. К...

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

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

Кто такой СТО и каковы его задачи? Личный опыт и мнение технического директора Привет, Хабр! Меня зовут Игорь Десятников, я Chief Technical Officer в компании Neuro.net. Несколько раз встречал на Хабре статьи с попыткой рассказать о роли СТО, об эволюции этой должности при расширении компании и т.п. С некоторыми вещами согласен, с другими — нет. Се...

[Из песочницы] Делаем Android View Binding удобным c Kotlin Привет! Меня зовут Кирилл Розов. Я автор Telegram канала Android Broadcast. Очень люблю Kotlin и мне нравится с помощью его возможностей упрощать разработку. С такой задачей я недавно столкнулся, когда на новом Android проекте начали использовать View Binding. Читать дальше...

Разработка первого проекта на платформе Microsoft Dynamics 365 For Finance and Operations Всем привет! Меня зовут Таня, я тимлид группы разработки Axapta в компании Lamoda. В этой статье речь пойдет про разработку нашего первого проекта на платформе Microsoft Dynamics 365 For Finance and Operations. Я расскажу про подходы, которые мы использовали, про ошибки,...

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

Как я поверил Илону Маску. И когда мы снова будем на Луне Антон Первушин, писатель и журналист, невероятный скептик и прагматик, давний исследователь истории освоения космоса, недавно удивил меня заявлением: «А я поверил в Илона Маска». Хотя раньше соглашался с тем, что этот американский персонаж книг О.Генри исключительно генериру...

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

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

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

Как обмануть автопилот PX4: настоящая HITL-симуляция на шине UAVCAN Мы разработали и хотим представить новый вариант HITL-симуляции дронов, когда автопилот может даже не знать, работает ли он с реальными датчиками на шине или же в симулируемом окружении. Набор программных модулей, работающих в «боевом» режиме и в режиме симуляции (почти) иде...

OCR или как мы учимся читать спамеров на 5+ Всем привет, меня зовут Михаил Марюфич. Я занимаюсь машинным обучением в команде антиспама в Одноклассниках. И сегодня я расскажу про то, как и зачем мы сделали свою технологию распознавания текстовых символов с изображения OCR (Optical character recognition). Читать даль...

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

Мониторинг БД Oracle с помощью OEM Привет! Меня зовут Александра, я работаю в команде тестирования производительности. В этой статье расскажу базовые сведения об OEM от Oracle. Статья будет полезна для тех, кто только знакомится с платформой, но и не только для них. Основная цель статьи — помочь провести бы...

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

Стажировка в Parallels, когда тебе 14 лет Привет, Хабр! Меня зовут Тимофей. Мне 14 лет. Недавно я ездил в московский офис Parallels навестить своего ментора. В этой статье я хочу поделиться с вами своими впечатлениями о предшествующей этому событию стажировке и о самой поездке в офис. Читать дальше →

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

Создайте ваш первый тест на Cypress Всем привет! Меня зовут Роман Мостафин. Я тестировщик-автоматизатор в компании Clover, и обычно пишу автотесты на pytest + selenium. Недавно для написания тестов на UI на проекте «Умный Локомотив» для автоматизации регрессионного тестирования наша команда фронтенд-разработчи...

[Из песочницы] Репетитор по программированию: почему вы должны стать им и как это сделать Доброго времени суток, Хабр. Представляю Вашему вниманию перевод статьи:«Coding Mentor: Why You Should Become One and How to Do It» автора Oleg Sklyarov (Олег Скляров). Привет! Меня зовут Олег Скляров, я работаю руководителем группы разработки мобильных устройств для дете...

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

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

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

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

Стреляем себе в ногу с помощью GenServer'а, или как мы фиксили неуловимый баг в Elixir проекте Привет, Хабр! Меня зовут Иван, я являюсь техлидом в компании Karuna.И в нашей команде мы активно используем Elixir в одной из самых нагруженных частей нашего проекта.Мы уделяем особое внимание тому что за код выполняется в коллбеках GenServer'а, особенно если это код третьес...

[Из песочницы] Mikrotik и Linux. Рутина и автоматизация Представлюсь, меня зовут Андрей. Первоначальная задача стояла такая — создать сотни конфигов для Mikrotik, чтобы поднять на каждом ovpn с сертификатом, затем залить на сотни Mikrotik конфиги, а так же сертификаты и ключ. Пароль от сертификата у каждого уникален. Создават...

Dynamic Delivery в многомодульных проектах (часть 1) Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и занимаюсь внедрением Dynamic Features в наши проекты. Dynamic Delivery — технология, позволяющая устанавливать и удалять части приложения прямо во время работы для того, чтобы уменьшить место, занимаемо...

Linux Switchdev по-мелланоксовски Это транскрипция выступления прозвучавшего на Yandex NextHop 2020 — видео в конце страницы Приветствую. Меня зовут Александр Зубков, я хочу рассказать про Linux Switchdev — что это такое и как мы с ним живем в Qrator Labs. Читать дальше →

Джентльменский набор от Huawei для разработчика мобильных игр: Game Service и инструменты для быстрой интеграции HMS Привет, Хабр! Меня зовут Михаил, я занимаюсь технической поддержкой разработчиков в области интеграции Huawei Mobile Service. И сегодня я хочу рассказать про наши инструменты, которые могут быть полезны разработчикам мобильных игр. Про то, как можно быстро адаптировать игру...

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

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

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

Создаём инфраструктуру для интеграционных тестов Меня зовут Слава Черепанов, я работаю в 2ГИС в проекте Fiji. Мы делаем профессиональную ГИС-систему, с помощью которой картографы создают карту мира в 2ГИС. Расскажу, как в этом проекте за 4 года эволюционировала инфраструктура интеграционных тестов. Это будет не летопись, а...

Почему я ушёл с React Native и перешёл во Flutter: Часть 2 Всем привет. Меня зовут Дмитрий Андриянов. Два года я писал на React Native, сейчас работаю в Surf во Flutter отделе и уже более полутора лет пишу на Flutter. В первой части статьи я рассказал про основные различия между React Native и Flutter. В этой части расскажу про раз...

[Из песочницы] Виджеты на Android. Редкая фича, в которой придется разобраться Привет, Хабр! Меня зовут Александр Хакимов, я android-разработчик в компании FINCH. У вас бывало такое, что ваш дизайн был под iOS, а вам приходится адаптировать его под android? Если да, то часто ли ваши дизайнеры используют виджеты? К сожалению, виджет — редкий кейс для ...

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

Как успешно подготовиться и сдать экзамен AWS Solutions Architect Associate SAA-C02 Всем привет! Меня зовут Сергей Яворский. Я работаю в EPAM Systems около 5 лет. Я хотел бы поделиться своим опытом в получении сертификатов AWS. На данный момент у меня их три, в этом посте я хочу рассказать о своем процессе участия в программе сертификации AWS Solution ...

[Из песочницы] Быстрый деплой vm ESXi с помощью Terraform Всем привет, меня зовут Иван и я алкоголик системный администратор (OPS). Я бы хотел рассказать как разворачиваю виртуальные машины на ESXi без vCenter с помощью Terraform. Читать дальше →

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

Первые скриншоты нового порта оригинальной трилогии S.T.A.L.K.E.R. на Android В фанатской группе S.T.A.L.K.E.R. 2 ВКонтакте были опубликованы скриншоты мобильного порта оригинальной игры для Android-устройств. В записи отмечается, что они принадлежат автору порта, который сообщил, что также работает над собственными ИИ и A-Life — системой симуляции ис...

Копнём поглубже: сравниваем популярные алгоритмы оптимизации с менее известными Привет, Хабр! Меня зовут Мария Белялова, и я занимаюсь data science в мобильном фоторедакторе Prequel. Эта статья открывает наш цикл материалов со сравнением алгоритмов оптимизации для обучения нейросетей. Помимо классических методов, которые давно зарекомендовали себя, м...

Оптимизация dotMemory с использованием dotMemory (и не только...) dotMemory — это профилировщик памяти для .NET от компании JetBrains. А меня зовут Илья, и я из команды разработки этого инструмента.Хочу поделиться историей классического догфудинга: как мы оптимизировали один из алгоритмов в dotMemory с помощью своих же инструментов — dotMe...

Как мигрировать большой процесс с IBM BPM на Camunda и не останавливать разработку фич Привет, меня зовут Денис, я работаю в Тинькофф и занимаюсь BPM-системами. В этой статье я расскажу, как мигрировать с легаси систем а-ля IBM BPM на опенсорс движок процессов Camunda на примере большого процесса. А в конце приглашу вас на четвертый митап по Camunda, который...

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

Apache Kafka: основы технологии У Kafka есть множество способов применения, и у каждого способа есть свои особенности. В этой статье разберём, чем Kafka отличается от популярных систем обмена сообщениями; рассмотрим, как Kafka хранит данные и обеспечивает гарантию сохранности; поймём, как записываются и ч...

Небольшой вклад в борьбе Avalonia UI против зоопарка платформ Эта статья – результат проверки проекта Avalonia UI с помощью статического анализатора PVS-Studio. Avalonia UI – это кроссплатформенная платформа пользовательского интерфейса на основе XAML, с открытым исходным кодом. Это один из технологически значимых проектов в истории ....

Электрокружок. Строим безумный электросамокат/электробайк Привет, друзья. Меня зовут Дмитрий. И я увлекаюсь электрификацией. Хочу рассказать вам про свою идею и что я хочу построить. Есть такая самокатная рама, которая называется 20”16. Точнее, байк. Так вот речь именно о нем. Читать дальше →

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

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

Open360: как мы начали с разработки модели премирования и сделали IT-систему для внутреннего HR TL;DR: рассказываю о задаче оценки вклада сотрудника в общий результат и новой open source системе проведения круговой оценки сотрудников, разработанной в нашей компании, на базе метода оценки 360 градусов. Здравствуйте, меня зовут Иван Кудрявцев — я технический директор и ...

SPM: модуляризация проекта для увеличения скорости сборки Привет, Хабр! Меня зовут Эрик Басаргин, я iOS-разработчик в Surf. На одном большом проекте мы столкнулись с низкой скоростью сборки — от трёх минут и более. Обычно в таких случаях студии практикуют модуляризацию проектов, чтобы не работать с огромными монолитами. Мы в Surf ...

Насколько опасна радиация в космосе для человека Наука Физика 16.10.2021, 06:45 Насколько опасна радиация в космосе для человека Считается, что одним из самых главных препятствий для длительных полетов человека в космосе является космическая радиация. Насколько это соответствует дейс...

Отложенные ретраи силами RabbitMQ Меня зовут Алексей Казаков, я техлид команды Клиентских коммуникаций в ДомКлике. В этой статье я хочу поделиться с вами «рецептом», который позволил нам реализовать отложенные ретраи при использовании брокера сообщений RabbitMQ Читать дальше →

Model-Widget-WidgetModel, или какой архитектурой пользуется Flutter-команда в Surf Привет, меня зовут Артём. Я руководитель Flutter-разработки в Surf и со-ведущий FlutterDev подкаста. Flutter-отделу в Surf уже больше года. За это время мы сделали несколько проектов: от маленьких служебных, до полноценных е-коммерс и банкинга. Как минимум, многие из вас уж...

Как защитить свой публичный сайт с ESNI Привет Хабр, меня зовут Илья, я работаю в платформенной команде компании Exness. Мы разрабатываем и внедряем базовые инфраструктурные компоненты, которые используют наши продуктовые команды разработки. В этой статье я бы хотел поделиться опытом внедрения технологии encrypt...

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

Веб-компоненты в реальном проекте Всем привет! Меня зовут Артур, я работаю frontend-разработчиком в Exness. Не так давно мы перевели один из наших проектов на веб-компоненты. Расскажу, с какими проблемами пришлось столкнуться, и о том, как многие концепции, к которым мы привыкли при работе с фреймворками, л...

[Из песочницы] Анимация в KAPIA. «Лучше один день потерять, чтобы потом за пять минут долететь» Анимация в KAPIA Добрый день! Меня зовут Павел. Я являюсь программистом и аниматором маленькой семейной команды по разработке игр. Я и моя жена делаем 3Д адвенчуру в постапокалиптическом мире. За время разработки мы изобрели свои технические “велосипеды” с которыми я хотел...

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

Как мы распилили монолит. Часть 2, Frame Manager Привет, меня зовут Стас, я работаю в команде Тинькофф Бизнеса. В прошлой статье мой коллега Ваня рассказа, как у нас устроена архитектура приложений. Несколько раз Ваня упомянул некий Frame Manager, который служит оркестратором приложений, и сейчас я расскажу про него более ...

[Из песочницы] 1С-Битрикс и попытка его внедрения Привет, друзья! Меня зовут Петр, я представитель малого белорусского бизнеса со штатом чуть более 20 сотрудников. В данной статье хочу поделиться негативным опытом покупки 1С-Битрикс. Читать дальше →

simctl: управление симуляторами Apple через терминал Всем привет! Меня зовут Паша Лесюк, я работаю мобильным тестировщиком в компании Циан. В этой статье я расскажу о возможностях управления яблочными симуляторами из командной строки. Читать дальше →

Почтим память космического телескопа Spitzer - 16 лет службы и множество невероятных снимков глубин космоса в инфракрасном диапазоне 30 января этого года американское космическое агентство НАСА окончательно отправило "на пенсию" космический инфракрасный телескоп Spitzer Space Telescope, который провел в космосе 16 лет, делая снимки того, что остается невидимым для невооруженного взгляда. За все время этот...

[Перевод] Swift Property Wrappers Если вы использовали SwiftUI, то наверняка обращали внимание на такие ключевые слова, как @ObservedObject, @EnvironmentObject, @FetchRequest и так далее. Property Wrappers (далее «обёртки свойств») — новая возможность языка Swift 5.1. Эта статья поможет вам понять, откуда же...

Топ-3 HTML-элемента, которые мы забыли Привет, Хабр! Представляю вашему вниманию перевод статьи «Top 3 HTML elements that we forgot» автора Stas Melnikov. Недавно я прочитал спецификации и понял, что мы используем ограниченный набор HTML-элементов. Поэтому хотел бы рассказать о трёх элементах, которые мы забыли,...

[recovery mode] $mol_func_sandbox: взломай меня, если сможешь!. Здравствуйте, меня зовут Дмитрий Карловский и я… хочу сыграть с вами в игру. Правила её очень просты, но их нарушение… приведёт вас к победе. Почувствуйте себя в роли хакера выбирающегося из JavaScript песочницы с целью прочитать куки, намайнить биткоины, сделать дефейс или ...

Моделируем поведение Quartus-проекта на Verilog в среде ModelSim В прошлой статье мы сделали достаточно сложный модуль. Разумеется, я вставил в тело статьи уже отлаженный результат. Но мне показалось, что достаточно странно, когда автор говорит «делай, как я», но при этом не показывает очень важного процесса. Давайте я покажу, как вообще ...

Make argumentation SExI again: как аргументировать свои решения и предложения Недавно в Яндекс.Практикуме прошёл вебинар «Как аргументировать свои решения и предложения». Его провёл Виктор Горбатов, автор и наставник курса «Критическое мышление: анализ информации, аргументация и принятие решений». Виктор рассказал о том, что такое убедительная аргумен...

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

Dynamic Delivery в многомодульных проектах (часть 2) Привет! Меня зовут Юрий Влад, я Android-разработчик в компании Badoo и занимаюсь внедрением Dynamic Features в наши проекты. Я уже рассказывал, что такое Dynamic Delivery и какой у него API. В этой статье я подробнее опишу, как я использовал Dynamic Delivery в нашем прилож...

Kubernetes: мониторинг c помощью Prometheus Привет, Хабр! Меня зовут Радик, Head of DevOps of AGIMA! В этой статье я постарался показать, как можно использовать Prometheus в качестве системы мониторинга для микросервисной архитектуры. Подробно рассмотрел архитектуру Prometheus и взаимодействие его компонентов. О...

Моё знакомство с AppGallery: как я воспользовался возможностями Huawei и нашёл точку роста для своего проекта Привет, Хабр! Меня зовут Георгий, я менеджер проектов и гейм-дизайнер в компании Azur Games. Мир мобильных игр — это очень конкурентная среда: здесь важно регулярно включаться в освоение новых инструментов, чтобы продолжать наращивать свою аудиторию. Наша команда отслежива...

Как я попала в большую корпорацию: ожидания и реальность Для начала — пара слов о себе. Меня зовут Надя, в Dell Technologies я пришла в качестве QA-стажёра почти два года назад. С тех пор я успела окончить университет (СПбПУ) и вырасти до мидл-инженера. В этой статье хочу поделиться некоторыми наблюдениями о работе в большой компа...

Настройка CI/CD в Plesk+Github Actions для проекта на Flask+Angular В этой статье я поделюсь своим опытом настройки CI/CD с использованием панели управления Plesk и Github Actions. Сегодня будем учиться деплоить простенький проект с незамысловатым названием «Helloworld». Он написан на Python-фреймворке Flask, с воркерами на Celery и фронтен...

Время — деньги: анализируй А/В-тесты разумно Всем привет! Меня зовут Кирилл, я работаю в продуктовом направлении команды Data Science. Сегодня я расскажу о том, как мы в Delivery Club автоматизируем A/B-тестирование. Основная часть статьи посвящена аналитике, но мы кратко затронем и остальные аспекты. Читать дальше &...

Что нужно знать о популярных фреймворках Привет! Меня зовут Дима Чудинов, я наставник на веб-факультете Яндекс.Практикума, Head of Group, Front-end, ABBYY. Студенты недавно задали мне вопрос: «Что лучше: Angular или React?». Я начал отвечать и понял, что мне понадобится для этого статья. Позже я понял, что и одной...

[Из песочницы] Как начать писать микросервис на Spring Boot, чтобы потом не болела голова Привет! Меня зовут Женя, я Java-разработчик в Usetech, в последнее время много работаю с микросервисной архитектурой, и в этой статье хотела бы поделиться некоторыми моментами, на которые может быть полезно обратить внимание, когда вы пишете новый микросервис на Spring Boot....

[Перевод] Возвращаясь к данным «Вояджера-2» десятилетней давности, ученые обнаружили еще один секрет об Уране Привет, читатель! Меня зовут Ирина, я веду телеграм-канал об астрофизике и квантовой механике «Quant». Сегодня подготовила для вас перевод статьи о планете Уран, а точнее, об его секрете, который был обнаружен совсем недавно. Приятного чтения! «Вояджер-2» сделал этот сни...

Из 1С в Android-разработку: мой опыт перехода внутри Lamoda Меня зовут Виталий Хмелёв, с 2019 года я работаю в команде Аndroid-разработки в Lamoda, а до того почти семь лет проработал здесь же программистом 1C. В этой статье хочу поделиться своим опытом и дать некоторые советы, которые, я надеюсь, помогут, если вы тоже задумываетесь ...

Борьба с зависимостями: как мы переводили проект на SwiftPM (и сделали еще хуже, чем было) Привет, Хабр! Меня зовут Лена, я iOS-разработчик в inDriver. Расскажу о том, как мы выбирали менеджер зависимостей для проекта. Название статьи звучит пессимистично, но на самом деле, все оказалось не так плохо.Сначала поделюсь тем, как у нас обстояли дела с интеграцией стор...

Три года в Латинской Америке: как я уехал за мечтой и вернулся после тотальной «перезагрузки» Привет, Хабр, меня зовут Саша. После 10 лет работы инженером в Москве я решился круто изменить жизнь — взял билет в один конец и уехал в Латинскую Америку. Я не знал, что меня ждет, но, признаюсь, это стало одним из моих лучших решений. Сегодня я хочу рассказать, с чем я сто...

CRUD для NMAP’а: решение для мониторинга открытых портов на хостах Привет, Хабр! Меня зовут Рудаков Александр, я занимаюсь информационной безопасностью в компании "ЛАНИТ-Интеграция". Однажды, в рамках работы над проектом, мне понадобилось организовать небольшой непрерывный мониторинг (с хранением истории) открытых портов в подсети...

Автотесты на языке разметки или как мы в Lamoda тестируем микросервисы Всем привет! Меня зовут Кирилл Поляков, я QA-инженер в компании Lamoda. Мы тестируем бекэнд большой e-commerce платформы. В этой статье я расскажу, как мы пришли к автотестам на языке разметки для тестирования микросервисов и делаем это с помощью инструмента собственной разр...

Добро пожаловать на хабрадегустацию Привет, Хабр! Меня зовут Аня Плоткина, я занимаюсь Developer Relations в команде SkillFactory, развивая сообщество авторов и менторов, которые создают наш образовательный продукт. Это будет не совсем обычный пост, а скорее воззвание к хабрасообществу, так как я верю, что на ...

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

Создание дизайн-системы для игры: детальный разбор подхода Меня зовут Максим Полстяной, я UI/UX Designer в Plarium Kharkiv. В этой статье я поделюсь опытом создания дизайн-системы для нашей браузерной стратегии «Войны Престолов», расскажу с чего все начиналось и какие этапы мы проходили. Читать дальше →

SQL в SQLAlchemy Меня зовут Алексей Казаков, я техлид команды «Клиентские коммуникации» в Домклик. По моему опыту подавляющее большинство приложений, взаимодействующих с базой данных, использовали для этого Object Relational Mapper. В этой статье я продолжу знакомить вас с популярными ORM, к...

[recovery mode] Заметки лида. Часть 1. Найм Привет, Хабр! Меня зовут Владимир. Я отвечаю за мобильную разработку в Vivid Money. Vivid Money — это финтех-стартап для европейского рынка с большим набором функционала — платежи и переводы, мультивалютность, финансовая аналитика, совместное пользование счетами, инвестиц...

Сервис для Active Restore или история одного индустриального проекта в Иннополисе Привет, Хабр! Меня зовут Роман, и я хочу рассказать сегодня о том, как мы в университете Иннополис разрабатывали тестовый стенд и сервис для системы Acronis Active Restore, которая скоро должна стать частью продуктовой линейки компании. Всех, кому интересно, как строятся вза...

Опыт внедрения Shiny в качестве корпоративной отчетности Всем привет! Меня зовут Сергей, я аналитик в ГК «Везёт». Исторически так сложилось, что в нашей компании было множество систем отчетности: от платных в виде Looker и Qlick – до самописных веб-сервисов. Однажды решив, что так дальше жить нельзя, мы стали выбирать единую систе...

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

Можно ли сделать деревянный стеллаж без инструмента используя только отвертку и 3D-принтер? Легко!. Приветствую! Я хочу поделиться с вами очередной своей разработкой, которая позволяет сделать надежную, крепкую мебель и при этом без необходимости иметь инструмент, пылить в доме/квартире и собрать её буквально за один день. Эта статья для аудитории Хабра, которая любит DI...

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

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

Встраиваем геолокацию от Huawei в Android приложение В предыдущих статьях мы создавали аккаунт разработчика для использования Huawei Mobile Services и подготавливали проект к их использованию. И использовали аналитику от Huawei вместо аналога от Google. В этой статье мы будем встраивать определение геолокации от Huawei. Вот п...

Overlay и underlay сети на службе платформы виртуализации VMmanager Всем привет, меня зовут Александр Гришин, и я работаю product manager в компании ISPsystem. И сегодня хочу рассказать об интересной разработке нашей компании — схеме сети IP-Fabric на основе BGP в платформе виртуализации VMmanager. Осенью прошлого года мы добавили новую...

Большое красное пятно Юпитера возможно скоро исчезнет Французские исследователи из Университета Экс Марсель II опубликовали в журнале Nature Physics работу, в которой показали, как оценивали толщину Большого красного пятна на Юпитере, и объяснили, почему оно возможно скоро исчезнет. Непрозрачная атмосфера планеты-гиганта не поз...

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

Новые возможности для Python-разработчиков: SmartApp Framework в open source Платформа SmartMarket позволяет разработчику с любым уровнем подготовки создавать мультимодальные приложения для виртуальных ассистентов Салют, даже без программирования. Конечно, если хочется сделать что-то красивое и сложное, без кода не обойтись. Чтобы облегчить жизнь раз...

Реальная стоимость жизни в Кремниевой Долине для разработчика Зачем это читать? Всем привет! Меня зовут Винсент, и я с 2018 года живу в Кремниевой Долине со своей супругой и сыном. Своим фильмом, Дудь хотел поднять стартапный ажиотаж в России, но в итоге возбудил всех моих товарищей гораздо больше здесь, в Silicon Valley. Этот пост — р...

Минифицируем приватные поля в TypeScript. Доклад Яндекса Меня зовут Лёша Гусев, я работаю в команде разработки видеоплеера Яндекса. Если вы когда-нибудь смотрели фильмы или трансляции на сервисах Яндекса, то использовали именно наш плеер. Я сделал небольшую оптимизацию размера бандла — минификацию приватных полей. В докладе на Я....

Трудно быть Колей, или практики обмена знаниями в Latech Всем привет! Меня зовут Александр Афенов, я тимлид команды Order Processing в компании Lamoda. Сегодня я хочу вам рассказать о практиках обмена знаниями: какие проблемы эти практики решают, как мы к ним пришли, и как они влияют на жизнь разработчика. Читать дальше →

Сильные стороны функционального программирования Привет! Меня зовут Катерина, и я испытываю самые тёплые чувства к функциональному программированию, использую функциональный язык на постоянной основе и даже немного преподаю. Основной язык разработки у нас в Typeable — Haskell, и, пока все спорили о том, готов ли Haskell...

Хороший ли выбор Svelte для реализации виджета? Привет! Меня зовут Дмитрий Усов, я фронтенд-разработчик в Ситимобил. Буквально несколько месяцев назад появилась задача создать виджет для заказа такси через сайт. В этой статье я хотел бы рассказать, почему для этой задачи был выбран Svelte, поделиться своим мнением о его д...

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

Как мы отказались от использования Styled-System для создания компонентов и изобрели собственный велосипед Всем привет! Меня зовут Саша, я сооснователь и по совместительству главный разработчик в Quarkly. В этой заметке я хочу рассказать о том, как концепция атомарного CSS, которой мы придерживаемся, вкупе с недостатками функционала Styled-System (и Rebass, как частного случая ис...

Что под капотом у BI? Детальный разбор технологии In-Memory OLAP Привет, Хабр! Меня зовут Иван Вахмянин, и сегодня я хочу рассказать о том, что находится “под капотом” у современной BI-системы, от чего зависит ее производительность (и как можно её ненароком убить), и какие технические оптимизации позволяют технологии In-Memory OLAP выигры...

Numl – Альтернативный язык разметки и стилизации для веб Всем привет! Меня зовут Андрей, я профессионально разрабатываю веб-интерфейсы уже больше 11 лет и последний год развиваю проект Numl, который можно назвать языком разметки и стилизации для веб. В этой статье я расскажу, как в попытке перебороть ряд особенностей CSS и упрости...

Как работает команда DevOps в Positive Technologies Всем привет! Меня зовут Тимур Гильмуллин, я работаю в отделе технологий и процессов разработки Positive Technologies. Внутри компании нас неформально называют DevOps-отделом. Мы занимаемся автоматизацией внутренних процессов и помогаем разработчикам и тестировщикам. В прошло...

Копнем поглубже: сравниваем популярные алгоритмы оптимизации с менее известными. Часть 2 Еще раз здравствуй, Хабр! Меня зовут Мария Белялова, и я занимаюсь data science в мобильном фоторедакторе Prequel. Кстати, именно в нём и обработана фотография из шапки поста. Эта вторая статья в нашем цикле материалов про сравнение алгоритмов оптимизации для обучения ней...

Что такое Immutable Infrastructure Меня зовут Никита, я системный инженер в компании SEMrush. И в этой статье я расскажу вам, что такое Immutable Infrastructure, какие у этого подхода есть преимущества и недостатки и как мы его используем в компании. Если вы ни разу не слышали такое словосочетание, то усажив...

Архитектура и дизайн Android приложения (мой опыт) Хабр, привет! Сегодня я хочу рассказать об архитектуре, которой я следую в своих Android приложениях. За основу я беру Clean Architecture, а в качестве инструментов использую Android Architecture Components (ViewModel, LiveData, LiveEvent) + Kotlin Coroutines. К статье прил...

Nvidia RTX — технология трассировки лучей в реальном времени наконец-то появилась в SOLIDWORKS Visualize Visualize 2020 SP0 стал первой версией популярного визуализационного модуля SOLIDWORKS, в которой полноценно задействованы технологии RTX компании NVIDIA. Теперь у инженеров появилась возможность создавать из 3D-моделей изображения и анимации настоящего фотореалистичного к...

Гайд по UI анимации. Как начать анимировать интерфейсы Привет! Меня зовут Айгуль, я продуктовый дизайнер в Райффайзенбанке, а до этого работала в Mail.ru Group, OneTwoTrip и приложила руку к нескольким стартапам. Как-то я взяла на себя задачу продумать систему UI-анимаций для дизайн-системы. Но когда я начала над ней работу...

Как мы нарисовали на карте несколько тысяч интерактивных объектов без вреда для перформанса Привет, меня зовут Дарья, и я Frontend-разработчик юнита Гео в Авито. Хочу поделиться опытом того, как мы сделали на вебе новый поиск по карте, заменив кластеры более удобным решением и сняв ограничение на количество отображаемых объектов. В статье я расс...

[Перевод] Работаем с двухмерной физикой в JavaScript Доброго времени суток, друзья! Представляю Вашему вниманию перевод статьи Martin Heinz «Implementing 2D Physics in JavaScript». Давайте немного развлечемся, создавая двухмерные симуляции и визуализации в JS. Создание реалистичной анимации физических процессов может казать...

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

Открытый курс «Deep Learning in NLP» от создателей DeepPavlov на базе курса cs224n Всем привет! Вступление Меня зовут Алексей Клоков, я хочу рассказать о запуске классного курса по обработке естественного языка (Natural Language Processing), который очередной раз запускают физтехи из проекта DeepPavlov – открытой библиотеки для разговорного искусственного ...

Информационная безопасность как предмет: история преподавателя GeekBrains Привет, Хабр. Меня зовут Владимир Душкевич, я специалист по информационной безопасности, преподаватель факультета «Информационная безопасность». Несколько лет назад я присоединился к команде GeekBrains и хочу рассказать об этом. В конце статьи будет небольшой анонс для тех ...

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

[Перевод] Привлечение и удержание художников в open-source играх Автор оригинальной статьи — Jetrel. Художник, который активно участвует в проектах Open Source игр. Несколько лет назад он был «арт-директором» игры Battle for Wesnoth. Кроме того, он сделал львиную долю арта для Frogatto and friends и продолжает работать над этой игрой. По...

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

CosmicPi: обнаружение космического излучения при помощи Raspberry Pi Одноплатники можно использовать для любых проектов — от самых простых до самых сложных. Они уже работают на благо многих отраслей науки, промышленности, EdTech и т.п. Новый проект показывает, что одноплатники, включая Raspberry Pi, могут использоваться и в астрономии. На д...

[Перевод] DRY CSS: Как использовать каждое объявление только один раз Использование DRY в CSS — это способ максимально избегать повторения в таблицах стилей. Этот подход не панацея, но он достаточно эффективен и является одним из основных методов оптимизации. Поскольку я использовал и изучал его почти 10 лет, в этой статье хочу поделиться сво...

[Перевод] Симуляция 4,5 миллиардов лет эволюции планеты на GPU Введение В этом посте я расскажу о реализации моей процедурной симуляции Земли, написанной целиком на фрагментных шейдерах GLSL. Она за несколько минут симулирует полную историю землеподобной планеты с частотой 60 кадров в секунду. Читать дальше →

Топ-10 экспонатов «Музея советских калькуляторов». Вольный рассказ по случаю переезда в музей Яндекса «Музей советских калькуляторов», который я открыл в 2015 году в московской школе № 1368, переехал в музей Яндекса. Мы постарались сделать часть устройств доступными для полноценного изучения: можно брать их в руки, считать и программировать на них. Меня зовут Константин ...

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

Интервью из мира хостинга: Boodet.online Меня зовут Леонид, я — разработчик сайта Поиск VPS, поэтому в силу своей деятельности интересуюсь историями становления и развития различных компаний из сферы хостинговых услуг. Сегодня хочу представить интервью с Данилом и Дмитрием — создателями хостинга Boodet.online. Они ...

Ещё одна статья «Как я сдавал PMP». Online. Лайфхаки Привет! Меня зовут, Дмитрий, и я сдал экзамен PMP в 2020 г., онлайн. В своей статье я хочу поделиться субъективным мнением про методику подготовки к экзамену и тех мелочах, которые я хотел бы знать до начала подготовки. Без воды. Статья не содержит неэтичных способов подго...

Гибкие процессы в IT команде Всем привет, меня зовут Алексей Федоров, я тимлид команды финансов в Ситимобил. В этой статье я хочу поделиться тем, как устроен процесс гибкой разработки в нашей команде. Читать дальше →

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

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

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

Reuse, reduce, Starlink: первая ступень Falcon вернулась на Землю после вывода 60 спутников на орбиту Успешно завершился запуск 14-ой партии спутников Starlink — проекта по обеспечении высокоскоростным широкополосным доступом в интернет всей планеты. К 773 спутникам, уже выведенным на орбиту (в их числе тестовые), присоединилась новая партия из 60 космических аппаратов. Са...

Создание Dashboard в Kibana для мониторинга логов Привет, меня зовут Евгений, я тимлид B2B-направления в Ситимобил. Одной из задач нашей команды является поддержка интеграций по заказу такси от партнеров, и для обеспечения стабильного сервиса мы всегда должны понимать, что происходит в наших микросервисах. И для этого над...

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

Клиентоориентированный Data Lake в игровой компании Источник Привет, Хабр! Меня зовут Максим Пчелин, и я руковожу разработкой BI-DWH в MyGames (игровое подразделение Mail.ru Group). В этой статье я расскажу о том, как и зачем мы строили клиентоориентированное DataLake-хранилище. Статья состоит из трех частей. Сперва я расс...

[Перевод] MotionLayout + RecyclerView = красивые анимированные списки В этой статье я расскажу и покажу, как создавать красивые анимированные списки на основе RecyclerView и MotionLayout. Аналогичный метод я использовал в одном из своих проектов. Поехали!

Автоботы, трансформируемся: как быстро и недорого победить 400 систем-десептиконов Привет, Хабр!Меня зовут Иван Маслов, я работаю в Страховом Доме ВСК на должности руководителя направления RPA. Расскажу Вам об опыте использования роботов, и о том как упростить работу с legacy системами. Уверен, будет интересно всем: и тем, кто скептически относится к робот...

Самодельный стратостат Допустим, вы интересуетесь космосом, но космос для вас недоступен. Выше 10км не подняться, а посмотреть "что там?" очень хочется. По классификации NASA — нижняя граница космоса начинается на 100км от поверхности Земли. Эта статья будет не совсем про космос, но про...

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

Доступность — это просто, Или 5 смертных грехов доступности Привет, Хабр! Меня зовут Алексей Устинов, я Frontend-разработчик в Delivery Club. В свободное время я интересуюсь вопросами доступности интерфейсов. Это первая из двух статей, в которых я хочу рассказать о проблемах с доступностью в вебе. Я расскажу про 5 простых правил, соб...

Разработка системы аутентификации на Java+Tarantool Системы аутентификации есть везде. Пока вы скучаете в лифте по пути с седьмого этажа на первый, можно успеть проверить баланс в приложении банка, поставить пару лайков в Instagram, а потом проверить почту. Это минимум три системы аутентификации. Меня зовут Александр, я прог...

[Перевод] Чем меня разочаровал Typescript и стоит ли он того? Прежде чем начать, хочу упомянуть, что я фанат TypeScript. Это мой основной язык программирования для фронтенд проектов на React и для любой бекенд работы, которую я выполняю в Node. Я полностью за Typescript, но есть моменты, которые меня беспокоят и про которые я и хотел...

Топ-7 хард скиллз дизайнера Привет, Хабр! Меня зовут Костя, я отвечаю за дизайн в AGIMA. В предыдущей статье я рассказывал про свой опыт развития софт скиллов. В этой я хочу затронуть хард скиллы, потому что без них не стать мощным дизайнером. Напомню, откуда ноги растут: мы с «Нетологией» провели...

[Перевод] Взгляд на технологии последнего десятилетия Прим. перев.: Эта статья, ставшая хитом на Medium, — обзор ключевых (за 2010-2019 годы) изменений в мире языков программирования и связанной с ними экосистемы технологий (особое внимание уделяется Docker и Kubernetes). Её оригинальным автором является Cindy Sridharan, котора...

[recovery mode] Картины маслом космос киберпанк фантастика и как их превратить в NFT Недавно я размещал свой арт, обычные картины маслом на космическую и киберпанк тематику в соцсети Reddit, и ко мне обратился человек, представившийся соучредителем bitnifty. Он сказал, что это организация (скорее всего только начинающая), которая позволяет художникам по все...

Как в Яндекс.Облаке устроено Virtual Private Cloud и как наши пользователи помогают нам внедрять полезные функции Привет, меня зовут Костя Крамлих, я ведущий разработчик подразделения Virtual Private Cloud в Яндекс.Облаке. Я занимаюсь виртуальной сетью, и, как можно догадаться, в этой статье расскажу об устройстве Virtual Private Cloud (VPC) в целом и виртуальной сети в частности. А ещё...

Война с тормозами. Оптимизация количества рендеров компонентов в React Native Привет, Хабр! Меня зовут Камо Сперцян, я занимаюсь React Native разработкой в Profi.ru. Если вы решили воспользоваться технологией React Native для быстрой доставки продуктовых фич и сосредоточились на скорости разработки, то, скорее всего, столкнётесь с проблемами производи...

ВКонтакте снова выкладывает KPHP Привет! Сейчас будет дежавю. Мы снова выложили на GitHub наш PHP-компилятор — KPHP. Он проделал большой путь, и чтобы рассказать о нём, сначала телепортируемся на шесть лет назад. Поясню для тех, кто не в теме: платформа ВКонтакте изначально была написана на PHP. Со времене...

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

Apache Pulsar как основа для системы очередей Меня зовут Агалецкий Павел, я старший инженер в команде Архитектуры. Эта статья про новую для нас в Авито технологию — Apache Pulsar и построение системы очередей, Queues as a Service, на её основе. Читать далее

Устройство Helm и его подводные камни Typhon freight hauler concept, Anton Swanepoel Меня зовут Дмитрий Сугробов, я разработчик в «Леруа Мерлен». В статье расскажу, зачем нужен Helm, как он упрощает работу с Kubernetes, что поменялось в третьей версии и как с его помощью обновлять приложения в продакшене без п...

Как настроить real-time data processing на летящем корабле Привет! Меня зовут Алексей Скоробогатый, я системный архитектор в Lamoda. Недавно мы внесли большие изменения в нашу e-commerce платформу: перешли к событийной (events driven) архитектуре и добавили обработку данных в реальном времени. На этом примере я хочу поделиться опыто...

[Из песочницы] О работе ПК на примере Windows 10 и клавиатуры ч. 1 Меня зовут Андрей Артемьев, я работаю в Microsoft над ядром ОС Windows 10, ранее я работал над Windows 10x (WCOS), XBox, Windows Phone и Microsoft Edge. Я хочу популярно в образовательных целях рассказать о том как работает компьютер на примере клавиатурного ввода и Window...

Рекомендательные системы, основанные на графах Всем привет! Меня зовут Александра Зенченко, я Lead Software Engineer в ЕРАМ. Занимаюсь разработкой решений, которые помогают нашим клиентам повышать эффективность работы и, в основном, включают в себя часть машинного обучения. В последнем проекте я работала над построением ...

Compositional Layout: стоит ли игра свеч? Всем привет! Меня зовут Алексей Скоробогатов, я ведущий iOS-разработчик в Delivery Club. Сегодня я хотел бы рассказать про вёрстку в нашем приложении на примере использования Compositional Layout. В конце прошлого года волевым решением iOS-команды и апрувом руководства мы ...

[Перевод] Почему астрономы сомневаются, что в Солнечной системе есть неоткрытая Девятая планета Привет, читатель! Меня зовут Ирина, я веду телеграм-канал об астрофизике и квантовой механике «Quant». Наверняка, многие слышали о Девятой планете, которая пока не обнаружена, но имеет большое влияние на поведение объектов Солнечной системы. Некоторые астрономы согласны с ...

Учёные выяснили, можно ли осваивать космос без вреда окружающей среде Самый опасный с точки зрения загрязнения Земли этап, по словам журналиста Science Focus, - это взлёт космического корабля. О том, что можно с этим сделать уже сейчас, рассказала автор материала Александра Франклин-Чунг.

Управление зависимостями JavaScript Всем привет! Меня зовут Слава Фомин, я ведущий разработчик в компании DomClick. За свою 16-ти летнюю практику я в первых рядах наблюдал за становлением и развитием JavaScript как стандарта и экосистемы. В нашей компании мы используем JavaScript, в первую очередь, для продви...

Что Data Scientist может подсмотреть у разработчика Всем привет, меня зовут Дарья Пронина, я специалист по анализу данных и машинному обучению в отделе R&D в Lamoda. Я расскажу о том, что специалист по Data Science может подсмотреть у разработчиков, чтобы сделать свою работу эффективнее, production-процессы — устойчивее, ...

Нагрузочное тестирование игровых серверов Меня зовут Дмитрий, я специалист по тестированию в студии IT Territory. За 17 лет мы выпустили более 15 успешных игровых проектов с общей аудиторией около 100 млн игроков по всему миру. Вы можете быть знакомы с нами по таким проектам, как Аллоды Онлайн, Hawk, Space Justice,...

Путь разработчика Привет! Меня зовут Алексей Скоробогатый. В 2015 году я пришел в Lamoda на позицию разработчика. Сейчас я системный архитектор e-commerce платформы и по совместительству Technical Lead команды CORE. В этой статье хочу поделиться инсайтами, которые получил за эти 5 лет — в фор...

[Из песочницы] Что нового ждать от AMD? Всем привет, меня зовут Илья и я интересуюсь компьютерным железом. И мне очень стало интересно, а что же выйдет в 2020-ом году. Я очень долго ползал по интернету и наткнулся на данную таблицу с сайта http://www.3dcenter.org/. Скажу сразу, что я отношусь ко всем компаниям, вы...

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

Использование Azure DevOps от разработки до сборки релиза в Dynamics AX 2012 Использование контроля версий для разработки в ERP-системе MS Dynamics AX — штука довольно неоднозначная. Кто-то не использует совсем, кто-то использует встроенную систему контроля версий MorphX. Меня зовут Игорь Глухов, я разработчик MS Dynamics AX в компании Lamoda. В эт...

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

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

[Из песочницы] Как мы сделали VR-игру о космической катастрофе Этапы, ошибки, выводы Я пришёл в BeaversBrothers год назад. Меня позвали, когда компания запускала новую услугу — разработку VR/AR-решений для бизнеса. Чтобы отработать технологии и понять наши возможности, мы решили сделать виртуальную игру. Ведь в игре есть всё: заворажива...

Хакатоны. Как выжать максимум и выжить Доброго всем времени суток! Меня зовут Александр Михалин — я .NET разработчик в компании “Рексофт”. За моей спиной 7 хакатонов, причем один в качестве члена жюри. Я не спал 8 ночей, выпил 52 чашки кофе, 15 банок редбулла, со мной в команде побывали 24 человека. Сегодня я х...

[Из песочницы] Кастомные SwiftLint Rules Привет, Habr! Меня зовут Алексей, я iOS Developer в компании FINCH. Скоро Новый год — самое время чтобы начать жить по-другому, а поможет в этом такая классная штука как SwiftLint. В статье я расскажу, почему ее обязательно нужно внедрять во все проекты, включая legacy и pet...

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

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

Погружение в автотестирование на iOS. Часть 1. Как работать с accessibilityidentifier объектов Всем привет!Меня зовут Борис. Я AQA iOS-engineer в Vivid Money.Это вступительная статья, в цикле статей по iOS-автоматизации, в которых хочется рассказать о пользе ui-тестов на проекте, их эффективном использовании и написании.Данная статья будет полезна начинающим iOS-автом...

Spiral: высокопроизводительный PHP/Go фреймворк Привет, Хабр. Меня зовут Антон Титов, CTO компании Spiral Scout. Сегодня я хотел бы рассказать вам про нашего PHP-слона. А точнее про вторую версию опен-сорсного full-stack PHP/Go фреймворка — Spiral. Spiral — это компонентный full-stack фреймворк, разрабатываемый нашей к...

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

[Перевод] Какую кибердеку я бы хотел сделать для себя Перевод статьи из блога AbcLinuxu В 2016 году я создал сабреддит /r/cyberDeck. Отчасти потому, что меня вдохновила статья о создании кибердеки, а отчасти из-за нескольких обсуждений в IRC, в которых я принимал участие, и поскольку мне кажется, что эта идея – нечто большее, ...

Как мы автоматизировали весь жизненный цикл серверов Привет, Хабр! Меня зовут Алексей Назаров. Я занимаюсь автоматизацией в отделе администрирования инфраструктурных систем в Национальной системе платежных карт (АО НСПК) и хотел рассказать немного о наших внутренних продуктах, которые помогают нам развиваться. Если вы еще не ...

Поиск работы в Сингапуре: галеры, карьерные агентства и много собеседований Меня зовут Андрей Вогулкин, я — fullstack developer. Работал 3 года фронтенд-разработчиком в стартапе, 4 — Oracle-разработчиком в телекоме, сменил 4 страны. В этой статье на примере нескольких кейсов расскажу о том, как я искал работу в одной из 4 стран — в Сингапуре: где ис...

Как Magento 2 взаимодействует с Vue Storefront Привет! Меня зовут Павел и я занимаюсь бэкенд разработкой. Как уже писал AndreyHabr, многие из наших проектов основаны на стеке Adobe Magento 2 (для краткости далее я буду называть ее M2) в качестве бэкенда и Vue Storefront (VS) в качестве фронтенда. Я не буду подробно оста...

[Из песочницы] Как собирать проекты в Jenkins, если нужно много разных окружений На Хабре много статей о Jenkins, но мало где описывается пример работы Jenkins и докер агентов. Все популярные инструменты сборки проектов типа Drone.io, Bitbucket Pipeline, GitLab, GitHub actions и другие, могут собирать все в контейнерах. Но как же Jenkins? На сегодняшний...

Выращивание Nested sets в условиях .Net Привет, меня зовут Антон, и я разработчик. Сына я родил, дом построил купил, осталось вырастить дерево. Так как агроном из меня не очень, пришлось дерево кодить. Наш проект состоит из нескольких микросервисов на .Net Core, в PostgreSQL базе хранятся сущности, которые образ...

Добавляем modbus в Embox RTOS и используем на STM32 и не только Нас часто спрашивают, чем Embox отличается от других ОС для микроконтроллеров, например, FreeRTOS? Сравнивать проекты между собой, конечно, правильно. Но параметры, по которым порой предлагают сравнение, лично меня повергают в легкое недоумение. Например, сколько нужно памя...

Компьютерное зрение. Свой алгоритм или решение из «коробки»? Меня зовут Александра Царева. Я и мои коллеги работаем над проектами в сфере компьютерного зрения в Центре машинного обучения компании «Инфосистемы Джет». Мне хочется поделиться нашим опытом разработки и внедрения проектов в сфере компьютерного зрения. Сегодня речь пойдет ...

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

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

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

Зоны в Dart: большой брат следит за тобой Привет! Меня зовут Дима, я frontend-разработчик в компании Wrike. Клиентскую часть проекта мы пишем на Dart, однако работать с асинхронными операциями нам приходится не меньше, чем на других технологиях. Зоны — один из удобных инструментов, который Dart для этого предоставля...

[Перевод] Малоизвестные, но популярные JS-фреймворки для фронтенда Не так давно мы, создавая динамические веб-приложения, использовали для работы с DOM чистый JavaScript или jQuery. С тех пор появилось много замечательных JavaScript-фреймворков и библиотек. Они помогают разрабатывать проекты, которые, по привлекательности и удобству, превос...

Самодельный лидар: OpenTOFLidar В этой статье я хочу рассказать про свой проект импульсного (TOF) Open Source лидара — о том как я его делал, и каких результатов удалось добиться. Читать дальше →

[recovery mode] Якаем, тыкаем, пишем плохие статьи Как с большой долей вероятности узнать, что статья, которую вы видите на Хабре — плоха, не читая ее всю? Предлагаю вам эвристику. Если в начале статьи автор представляется или представляет свою компанию, то скорее всего статья плохая. К эпопее с флиппером это не относится, в...

Я/МЫ не Айхор-хостинг. Или как плюнуть в лицо отрасли Здравствуйте, я не сплю уже вторые сутки. Я — айтишный маркетолог, во всех смыслах: айтишник, который ушёл в маркетинг. То есть у меня есть несколько проектов, которым я помогаю делать продвижение, включая интернет-рекламу, SEO, контент и т.д. И вот несколько моих сайд-проек...

[Перевод] Взлом Wi-Fi-сетей, защищённых WPA и WPA2 Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать о том, как взломать Wi-Fi-сеть, для защиты которой используются протоколы WPA и WPA2. Статья написана исключительно в ознакомительных целях Читать дальше →

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

Почему я ушел с React Native и перешёл во Flutter: Часть 1 Всем привет. Меня зовут Дмитрий Андриянов. Два года писал на React Native, сейчас я разработчик в Surf и уже полтора года пишу на Flutter. Когда я только решил серьёзно взяться за Flutter, я бы очень хотел найти статью от разработчика, который перешёл с React Native на Flutt...

Метод быстрого прохода в управлении проектами. Редкий успешный кейс Привет, Хабр! Меня зовут Андрей, руковожу проектами в РСХБ-Интех. В бэкграунде 6 лет управления проектами, портфелями проектов в интехе, ритейле, сертификация PME, PRIME. Сегодня я хочу рассказать о редком успешном кейсе использования метода быстрого прохода, и что это дало...

Рогозин пригласил Илона Маска, Ричарда Бренсона и Джеффа Бэзоса на запуск корабля «Союз МС-19» со съёмочной группой фильма «Вызов» Роскосмос официально пригласил Илона Маска (Elon Musk), Ричарда Бренсона (Richard Branson) и Джеффа Бэзоса (Jeff Bezos) на Байконур, чтобы наблюдать запуск космического корабля «Союз МС-19».  Запуск нам...

Почему VR разработка вам не подходит Всем привет! Меня зовут Григорий Дядиченко, и я занимаюсь AR/VR. (Слышны хлопки по залу). В AR/VR я уже больше 4 лёт, хотя занимаюсь всё это не только исключительно ими, а самыми различными проектами под заказ всё это время. Я работал в студиях, я долгое время был фрилансеро...

Безопасность и СУБД: о чём надо помнить, подбирая средства защиты Меня зовут Денис Рожков, я руководитель разработки ПО в компании «Газинформсервис», в команде продукта Jatoba. Законодательство и корпоративные нормы накладывают определенные требования к безопасности хранения данных. Никто не хочет, чтобы третьи лица получили доступ к конф...

React 18: что нужно знать о новой версии В начале лета в официальном блоге React вышла новость о планах на 18 версию библиотеки. Команда разработчиков рассказала о новых фичах и API, которые планируется зарелизить в обновлении. Меня зовут Ильмир Шайхутдинов, я frontend разработчик Технократии, и в этой статье я хоч...

Наблюдательный пост пессимиста: технические и концептуальные решения в системе мониторинга Lamoda Всем привет! Меня зовут Александр Афенов, я работаю в Lamoda. Эта статья по мотивам моего доклада с HighLoad 2019, запись которого лежит тут. Раньше я был тимлидом, и в моем ведении была пара критикал-сервисов. И если в них что-то шло не так, это останавливало реальные бизн...

STM32 Часть 3: Первый Проект Мы наблюдаем общество, которое все больше зависит от машин, но при этом использует их все неэффективнее. — Douglas Rushkoff Эта фраза должна служить мотивацией для каждого программиста. Ведь именно вы решаете как машина использует свои ресурсы. Но как и с начала времен, чел...

[Перевод] Flutter. Весеннее обновление 2020 Привет! Меня зовут Евгений Сатуров, я Flutter-разработчик Surf и основатель Flutter Dev Podcast. Ниже перевод статьи Tim Sneath и Patrick Sosinski с моими комментариями. Полмиллиона разработчиков, 50 тысяч приложений, взрывной рост и обновлённый релизный цикл. Последние м...

Переезд из Java в Kotlin: как забрать коллекции с собой Меня зовут Борис Николаев, и в первой статье на Хабре хочу сравнить Java и Kotlin при работе с коллекциями. Она будет полезна всем, кто планирует перебираться в Kotlin и не хочет долго осваиваться. В течение последних лет Kotlin становится всё более и более популярным. Мног...

CameraX+ML Kit для распознавания номера карты в действии Привет, меня зовут Виталий Беляев, я Android-разработчик в red_mad_robot. В этой статье я расскажу про опыт интеграции CameraX с ML Kit на замену библиотеки card.io, и что в итоге из этого получилось. Читать далее

Встраиваем аналитику от Huawei в Android приложение В прошлой статье мы создавали аккаунт разработчика для использования Huawei Mobile Services и подготавливали проект к их использованию. Теперь пора приступить к встраиванию конкретных сервисов. Вот полный список статей из цикла: Создаём аккаунт разработчика, подключаем зав...

Android-разработчикам: как сократить время реализации тёмной темы с пары месяцев до недели Привет, меня зовут Влад Шипугин, я Android-разработчик в Redmadrobot. В этой статье я хочу поделится опытом реализации темной темы, создания удобного UI Kit, как для разработки, так и для дизайнеров. Я расскажу про использование Material Components и работу с Vector Drawable...

[Перевод] Создаём одинаковое приложение 5 раз На написание этой статьи меня вдохновил YouTube-канал Fireship, записывающий отличные видео о веб-разработке, крайне рекомендую их посмотреть, если вам интересна эта тема. Вот видео с канала, в котором в 10 фреймворках создают todo-приложение: Я решил, что не хочу тратит...

Hello, Word! Разрабатываем браузерное расширение в 2021-м Привет! Меня зовут Саша Коновалов, я разработчик в компании Oxonit и наставник на программе «Мидл фронтенд-разработчик» в Яндекс.Практикуме. На примере разработки расширения «Hello, Word» я расскажу, как разрабатывать кроссбраузерное расширение со знаниями современного фро...

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

Как вирус Эболы научил нас работать с данными про заражения, а мы забыли все его уроки Меня зовут Роман Нестер, я профессор НИУ ВШЭ. Я занимаюсь данными последние 10 лет. Например, мы с партнёрами сделали стартап Segmento, который использует большие данные в рекламе и его купил у нас «Сбербанк». Сегодня я развиваю магистратуру по управлению продуктом и маркети...

[Из песочницы] Raspberry Pi и модем SIM7600E 4G HAT Добрый день всем. В этой статье я хотел бы рассказать о своем опыте использования 3G-модема SIM7600X, который можно подключать к Raspberry Pi. Статья может оказаться полезной тем из вас, кому необходимо использовать Raspberry автономно, в условиях отсутствия WIFI-сети. Пара...

Чем биоинформатика отличается от вычислительной биологии — краткое введение Пару дней назад на нашем ютубе выступала Алсу Миссарова, выпускница мехмата МГУ, PhD по системной биологии (functional genomics in yeast) в Universitat Ponepu Fabra в Барселоне. Сейчас Алсу постдок в лабе JOhn Marioni (EBI, Cambridge, UK), занимается single cell RNA-seq and...

Вернувшись из космоса, миллиардер Ричард Брэнсон хочет построить отель на Луне Как сообщает Dailymail, миллиардер и основатель компании Virgin Galactic Ричард Брэнсон (Richard Branson) объявил, что он хочет построить отель на Луне. Пионер космического туризма заявил, что строительство отеля на Луне — это то, о чем он «всегда мечтал&raq...

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

Логи в Kubernetes (и не только) сегодня: ожидания и реальность Шёл 2019 год, а у нас всё ещё нет стандартного решения для агрегации логов в Kubernetes. В этой статье мы хотели бы, используя примеры из реальной практики, поделиться своими поисками, встречаемыми проблемами и их решениями. Однако для начала оговорюсь, что разные заказчи...

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

Архитектура S3: 3 года эволюции Mail.ru Cloud Storage Storage Corridor by St-Pete Всем привет! Я Mons Anderson, архитектор платформы Mail.ru Cloud Solutions, расскажу, как мы построили наше S3-хранилище, как оно работает, какие решения оказались удачными, а какие стоило изменить, если бы мы начали такой же проект с нуля сейчас...

[Перевод] С чего начать изучение Flutter в 2021 году Как и многие мобильные разработчики, мы с нетерпением ждали презентации Flutter и теперь хотим поделиться с читателями Хабра переводом статьи Tadas Petra о том, как можно выстроить свое обучение, если вы хотите познакомиться с Flutter и кроссплатформенными приложениями в 202...

Bare-Metal Provisioning инфраструктура с нуля Приветствую, Хабр. Меня зовут Роман, я разработчик встраиваемых систем в Getmobit. Хочу поделиться кейсом по развёртыванию программного обеспечения на большом количестве устройств на производственной линии с нуля. Заставлять людей на производстве бегать вдоль конвейера с фл...

Написали 100 микросервисов и не сошли с ума: как мы в Lamoda шарим знания и технологии Привет, Хабр! Меня зовут Даниил Зиненко, руководитель направления разработки Online Shop в Lamoda. Online Shop – это одно из IT-подразделений в Lamoda, которое отвечает за сайт и за мобильное приложение. Всего у нас 121 сервис, 67 из которых мы написали на Go за последние 4...

Business Intelligence на очень больших данных: опыт Yota Всем привет! Меня зовут Михаил Волошин, и я, как руководитель отдела инструментов бизнес-анализа, хочу верхнеуровнево рассказать о плюсах и особенностях BI-решения Yota. 200 Tb Vertica, 400 Tb Hadoop, кластер Tableau, специфичная организация процесса разработки и многое ...

Курс “Введение в информационный поиск” и немного истории Меня зовут Павел Браславский, я научный сотрудник JetBrains Research и доцент Питерской Вышки. Осенью прошлого года я после большого перерыва прочитал курс “Введение в информационный поиск”, на этот раз — для студентов академических программ JetBrains в Питерской Вышке и ИТ...

Как подготовиться, чтобы защитить свое цифровое наследие после смерти Меня зовут Владислав Чернов, я основатель Creative Motion Development. В этой статье я решил затронуть то, что многим покажется деликатной темой, но в то время как многие страны продолжают бороться с пандемией COVID-19, эта информация наиболее актуальна. Читать дальше &rarr...

Как мы разрабатывали поле ввода новых сообщений в нашем мессенджере (Gem4me) Всем привет!
 Меня зовут Александр Бальцевич, я работаю на лидерской позиции Web-команды проекта Gem4me. Проект представляет из себя инновационный месенджер для всех и каждого (пока в моих фантазиях, но мы стремимся к этому ;-) ) Коротко о стэке веб-версии: ReactJS (кто бы с...

Проекты в Gradle 7: как не зависеть от зависимостей Привет! Меня зовут Ксения Кайшева, я пишу приложения под Android в компании 65apps. Сегодня расскажу о новой возможности, которая позволяет централизованно описывать зависимости на проектах с системой сборки Gradle. Читать далее

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

[Перевод] Разбираем фотоумножитель Fujifilm PMT12A В статье рассматривается реверс-инжиниринг ФЭУ Fujifilm PMT12A, состоящего из самого фотоумножителя, высоковольтного источника питания и аналогового усилителя. В основу проекта легла разборка сканера рентгеновских изображений Fujifilm FCR XG-1, используемого для компьютерн...

Платформа как сервис в Авито: как это устроено Привет, Хабр! Меня зовут Александр Лукьянченко, я тимлид команды, которая занимается платформой в Авито. В этой статье я расскажу о проблемах, которые возникали у нас при построении платформы для инженеров и том, какие технические решения мы использо...

Как мы позволяем разработчикам разрабатывать, а не перерабатывать Привет! Меня зовут Костя Карусев, я тимлид в одной из команд направления WMS (Warehouse Management System). В статье я расскажу, как выглядит наш процесс разработки, и как он помогает разработчикам заниматься своим делом и с чистой совестью отдыхать на выходных. Отвечу на т...

1000 и 1 пост: с Днём рождения, Хабр ❤ 26 мая — День рождения Хабра. А ещё вышла наша 1000-ая публикация, которой могло бы не быть, если бы Хабр не был тем, который он есть. В этой статье мы расскажем о нашем пути и о наших выводах, которые удалось сделать за 4 года ведения блога. Но это ниже, под катом. А здесь ...

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

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

[Перевод] Распознавание мелодии путем изучения языка тела музыканта Перевод статьи подготовлен в преддверии старта нового набора на курс «Computer vision». Инструмент распознавания музыкальных жестов на основе искусственного интеллекта, разработанный в MIT-IBM Watson AI Lab, использует движения тела, чтобы различать звуки отдельных музык...

Ростов-на-Дону: IT-компании, сообщества и мероприятия в 2019 году Привет. Меня зовут Вадим и я занимаюсь развитием IT-тусовок в Ростове. В 2016 году spasibo_kep написал статью "Едем в город южный: как живут разработчики в Ростове-на-Дoну" о Ростовском IT. Пришло время её обновить, тем более, что Ростов в 2019 году стал 4ым в Рос...

Ретроспектива граблей. Как самописное решение оказалось круче платного Привет! Меня зовут Алексей Пьянков, я главный программист в компании Спортмастер. Скажу сразу, что «главный» не значит «самый главный из всех программистов», нет, это только название, такой очаровательный перевод для «Senior+"». В компании Спортмастер я работаю с 2012 г...

ERP для собственников. Философское. Часть 1 Привет. Меня зовут Олег и я занимаюсь внедрениями систем управления предприятиями более четверти века.Я решил написать цикл статей на основе материалов моей книжки “ERP для собственников”, которая скоро появится в книжных магазинах.В первой статье я хочу поговорить о главной...

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

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

На портале «ПроБолезни» специалисты рассказали о 500 известных болезнях О 500 известных болезнях рассказали специалисты портала «ПроБолезни». Ресурс продолжит размещать научно-популярные статьи о заболеваниях, не останавливаясь на достигнутом и рассчитывая представить полную информацию обо всех болезнях человечества. Например, в свете ситуации с...

Индустрия 4.0: Big Data, цифровизация и рост экономики Всем привет! Меня зовут Дмитрий Соколов, я — руководитель отдела консалтинга и интеграции Orange Business Services в России и странах СНГ. В этой статье я хотел бы обсудить Индустрию 4.0 — это синоним четвертой промышленной революции. Ее важнейшие элементы — киберфизически...

[Перевод] Мой второй год в качестве независимого разработчика Иллюстрация Лорейн Йоу. Суслик-талисман языка Go адаптирован из работ Рене Френч Два года назад автор этой статьи Майкл Линч (Michael Lynch) уволился с должности инженера-программиста в Google, чтобы начать собственный бизнес (см. статью «Почему я ушёл из Google и начал ра...

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

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

Пишем переиспользуемые компоненты, соблюдая SOLID Всем привет! Меня зовут Рома, я — фронтендер в Я.Учебнике. Сегодня расскажу, как избежать дублирования кода и писать качественные переиспользуемые компоненты. Статья написана по мотивам (но только по мотивам!) доклада с Я.Субботника — видео есть в конце поста. Если вам интер...

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

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

Российские космонавты займутся выращиванием салата в космосе Руководитель медицинского отдела научно-исследовательского института космического приборостроения Антон Бычков рассказал о том, что опытный образец российской космической оранжереи "Витацикл-Т", основным предназначением которой является выращивание салат на Международной кос...

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

[Из песочницы] Некоторые тонкости injection'а коллекций в Spring'е Всем привет! Меня зовут Владислав Родин. В настоящее время я преподаю на портале OTUS курсы, посвященные архитектуре ПО и архитектуре ПО, подверженного высокой нагрузке. Сейчас в OTUS'е открыт набор на новый поток курса Разработчик на Spring Framework. В преддверии старта к...

Путь самурая: от Servlet к Reactive Programming Примерно 1-1,5 года назад Spring Webflux был на хайпе. Практически на любой Java-конференции можно было встретить доклады по Webflux, реактивному программированию, где-то даже проскакивали доклады про RSocket. Выступлений было много, сообщество маленькое, работающих проект...

Android окукливается (ver 2) и сообществу плевать на это Всем доброго времени суток! Меня зовут Роман и я понятия не имею, почему я выбрал “ответ” на статью для своего первого поста на Хабр. Возможно эту статью так никто и не увидит, но попытаться стоит. Оригинальная статья. Рекомендую к прочтению. Я хотел оставлять комментарии та...

[Перевод] Электронный нос своими руками Работая в рамках предыдущих проектов с частицами класса PM2,5 [мелкие, потенциально опасные для вдыхания частицы, размером порядка 2,5 мкм / прим. перев.] я заметил одно неудобство – я не мог распознать источники загрязнения, испускающие мелкие частицы. Большинство данных,...

[Из песочницы] Симуляция подъёмной силы Ньютона методом частиц на CUDA https://www.youtube.com/playlist?list=PLwr8DnSlIMg0KABru36pg4CvbfkhBofAi Как-то на Хабре мне попалась довольно любопытная статья “Научно-технические мифы, часть 1. Почему летают самолёты?”. Статья довольно подробно описывает, какие проблемы возникают при попытке объяснить п...

Мониторинг 95+ метрик PostgreSQL с помощью плагина Zabbix Agent 2 В прошлом году популярный сервис мониторинга Zabbix представил Agent 2, призванный сократить число TCP-подключений и обеспечить удобную расширяемость за счёт плагинов на Golang. Меня зовут Даша и я один из разработчиков плагина мониторинга PostgreSQL для Zabbix Agent 2. В эт...

Reverseveryday.com — бесплатный ресурс с задачами на реверс Всем привет! Меня зовут Дмитрий Скляров, я руковожу отделом анализа приложений в Positive Technologies. Сегодня я хочу рассказать вам о нашем новом проекте — ресурсе для любителей обратной разработки reverseveryday.com.

[Перевод] Чему меня, как разработчика, научили аварии в космосе Исследования космоса интересовали меня, сколько я себя помню. Люди, знавшие меня лично, слышали рассказов о космосе больше, чем им хотелось бы. Я администрировал русскоязычную версию Википедии, и одним из моих любимых увлечений была редактура связанных с космосом статей. Я ...

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

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

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

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

Как проверять выражения на английском like a pro Представьте, что вы читаете текст и наткнулись на новую интересную фразу. Всегда ли вы знаете, как её правильно произнести и использовать в речи? Или, например, вы пишете письмо и не можете решить правильно ли использовали выражение. Эти ситуации типичны для и...

Что выбрать в качестве библиотеки компонентов для React-проекта Меня зовут Ксюша Луговая. В СберКорусе я занимаюсь поддержкой библиотеки React-компонентов Korus-UI. С проблемой выбора библиотеки рано или поздно сталкивается почти каждый разработчик, и порой решение может быть нетривиальным. Возникают вопросы: чем руководствоват...

Создаем текстовый редактор на React.js Привет! Меня зовут Данила, и я фронтенд-разработчик в KTS.Однажды в одном из своих проектов мне потребовалось реализовать кастомный текстовый редактор на React.js. Задача показалась мне довольно интересной, и я решил рассказать о своем опыте. В ней я поэтапно покажу, ка...

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

Как и зачем мы построили кастомную систему аналитики вместо Google Analytics Привет, Хабр! Меня зовут Иван Кизименко, я Head of Analytics в компании Outside. В этой статье мне хотелось бы рассказать о том, как и зачем мы разработали собственную кастомную систему аналитики вместо Google Analytics. Собственно, мы работали не только с аналитикой от Go...

Почему я сделал личный проект учёта трат на Git+JS Здравствуйте, господа, в этой статье я поделюсь опытом создания приложения учёта трат, в частности отвечу на следующие вопросы: Зачем мне приложение учёта трат? Почему это личный проект? Почему проект на Git+JS? 1. Зачем мне приложение учёта трат? Как и многие другие люди...

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

Знакомимся с Needle, системой внедрения зависимостей на Swift Привет! Меня зовут Антон, я iOS-разработчик в Joom. Из этой статьи вы узнаете, как мы работаем с DI-фреймворком Needle, и реально ли он чем-то выгодно отличается от аналогичных решений и готов для использования в production-коде. Это всё — с замерами производительности, есте...

На новой фотографии Юпитера найдено новое пятно. Что это такое? Новая фотография Юпитера, сделанная телескопом «Хаббл» Юпитер считается самой крупной планетой Солнечной системы. В основном он состоит из огромного количества водорода и гелия, поэтому имеет гораздо меньшую плотность, чем многие другие планеты. Больше всего Юпитер известен ...

[Из песочницы] Оптимизация SQL запросов или розыск опасных преступников Кейс компании Appbooster Полагаю, практически каждый проект, использующий Ruby on Rails и Postgres в качестве основного вооружения на бэкенде находится в перманентной борьбе между скоростью разработки, читаемостью/поддерживаемостью кода и скоростью работы проекта в продакше...

Выкладка go pet проекта на VPS Привет, Хабр! Меня зовут Артем Желтак, я teamlead, а также преподаватель курса “Разработчик Golang” в OTUS. В преддверии старта нового потока курса, хочу поделиться с вами своей авторской статьей. Я верю, что Golang прекрасен, но в мире еще много php и других проектов рабо...

Связь с космосом — Студенческий Центр управления полетами В 2006 году в МГТУ им. Н.Э. Баумана был создан Центр управления полетами малых космических аппаратов и Центр приема данных дистанционного зондирования Земли (ДЗЗ). Это уникальный студенческий ЦУП, который открыт для бауманцев с любых факультетов и кафедр. Именно отсюда ведет...

Людей с инвалидностью начнут отправлять в космос Стало известно, что Европейское космическое агентство запустило проект “Парастронавт”, в рамках которого людей с инвалидностью начнут отправлять в космос. Предполагается, что таким образом можно будем сделать космические миссии более разнообразными.

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

[Из песочницы] 6 Современных шаблонов проектирования архитектуры в области ПО Привет, Хабр! Представляю вашему вниманию перевод статьи "Modern-Day Architecture Design Patterns for Software Professionals" автора Tanmay Deshpande. Многие современные приложения необходимо создавать в масштабах предприятия, иногда даже в масштабах Интернета. К...

[Перевод] Автоматический дымоуловитель для пайки, основанный на Arduino Автор статьи, перевод которой мы представляем вашему вниманию, хочет рассказать о том, как сделать датчик, основанный на Arduino, который автоматически включает дымоуловитель при извлечении паяльника из держателя. Для этого проекта вам понадобится Arduino UNO Wifi Rev.2, ...

Приоритизация в Scrum по ICE. Опыт Авито Привет! Меня зовут Илья, я разработчик и по совместительству скрам-мастер в B2B-команде Авито Автотека. Сегодня хотел бы рассказать о том, как мы с командой запускали процесс приоритезации задач, формировали процессы их оценки и переоценки. С какими трудностями нам приш...

Будни аналитиков в «М.Видео—Эльдорадо» Профессию аналитика многие связывают с анализом данных ради поиска неочевидных закономерностей и тенденций. Однако это лишь одно из направлений деятельности, которое в русском языке называется «обработка и анализ данных», а в английском — data science, наука о данных. Друг...

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

Продвинутый CSS-in-TS Здравствуйте, меня зовут Дмитрий Карловский и я… автор одного из первых фреймворков целиком и полностью написанных на тайпскрипте — $mol. Он по максимуму использует возможности статической типизации. И сегодня речь пойдёт о максимально жёсткой статической фиксации стилей. Э...

Как мы побеждаем неопределенность в Delivery Club Друзья, всем привет! Меня зовут Коля Архипов, я отвечаю за Research & Development в Delivery Club. Наша команда решает наукоёмкие задачи внутри FoodTech-платформы: мы разрабатываем компоненты, основанные на алгоритмах и данных, которых в платформе DС много. В процессе...

История разработки The Light Remake. Часть 1 Приветствую, читатель! Меня зовут Сергей, я являюсь инди-разработчиком компьютерных игр. В моем портфолио имеется уже несколько инди-проектов, часть из которых была самостоятельно выпущена в Steam. Игра «Свет» или «The Light», вышедшая в 2012 году, была моей первой пробой ...

История про то, как из студенческого геймдев-клуба выросла компания по разработке игр Привет, меня зовут Антон Скударнов, мне 23 года. В этом году закончил Университет Иннополис, параллельно с учёбой руководил студенческим геймдев-клубом и разрабатывал игры. В статье хочу рассказать, как студенческое увлечение играми переросло в свою компанию. Читать дальше ...

[Перевод] Учебный проект на Python: интерфейс в 40 строк кода (часть 2) Демонстрация проекта Python с пользовательским интерфейсом никогда не была такой простой. С помощью Streamlit Framework вы можете создавать браузерный пользовательский интерфейс, используя только код Python. В этой статье мы будем создавать пользовательский интерфейс для п...

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

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

Как пройти финальный уровень JS QA Game от SEMrush Привет, меня зовут Тимур, и я написал QA Game от SEMrush. Вы могли слышать об этой игре, если участвовали в Heisenbug online или видели анонсы игры в Telegram-чатах для тестировщиков. Если коротко, то в QA Game нужно проходить уровни с нарастающей сложностью и отлавливать ба...

Как DevOps-инженер переехал с Кипра в Испанию. Где лучше: в Лимассоле или в Барселоне? Всем привет! Меня зовут Илья, и я девопс. В 2020-м году я с женой и котом, после трех лет жизни на Кипре, решил перебраться в Испанию, а именно в Барселону. В этой статье я расскажу о своих впечатлениях от релокации, пока они свежи в памяти. В Барселоне мы уже почти год ...

[Перевод] Как создаётся изображение формата RAW? Рис. 1: фото на Nikon D610 с объективом AF-S 24-120mm f/4 и параметрами 24mm f/8 ISO100 Каковы базовые шаги создания изображения формата RAW на низком уровне? В данной статье я опишу, что происходит «под капотом» цифровой камеры, где необработанные данные превращаются в пр...

Jenkins Pipeline: заметки об оптимизации. Часть 1 Меня зовут Илья Гуляев, я занимаюсь автоматизацией тестирования в команде Post Deployment Verification в компании DINS. В DINS мы используем Jenkins во многих процессах: от сборки билдов до запуска деплоев и автотестов. В моей команде мы используем Jenkins в качестве плат...

[Из песочницы] Цифровое представление аналогового аудиосигнала. Краткий ликбез Дорогие читатели, меня зовут Феликс Арутюнян. Я студент, профессиональный скрипач. В этой статье хочу поделиться с Вами отрывком из моей презентации, которую я представил в университете музыки и театра Граца по предмету прикладная акустика. Рассмотрим теоретические аспект...

Хроники SSO: банк, токены и немного магии Привет! Меня зовут Артем Ивлев, и я занимаюсь архитектурой идентификации клиентов банка ВТБ. Наша задача — ответить на вопрос, кто использует наш банковский сервис: мобильный или интернет-банк, голосового помощника или просто один из многочисленных офисов. Для этого есть мно...

Pattern matching. Теперь и в Python Привет! В юбилейный минор третьего питона наконец-то завезли pattern matching. Саму концепцию сложно назвать новой, она уже реализована во многих языках, причём как нового поколения (Rust, Golang), так и у тех, кому уже за 0x18 (Java). Анонсировал pattern matching Гвидо в...

Исследуем баг iOS с помощью Hopper Привет! Меня зовут Александр Никишин, я занимаюсь разработкой iOS-приложений в компании Badoo. В статье я расскажу о том, как мы исследовали баг в UIKit, который Apple не хотела исправлять на протяжении полугода. Всё началось в августе 2019 года с первых бета-версий iOS 1...

Имитируем сетевые проблемы в Linux Всем привет, меня зовут Саша, я руковожу тестированием бэкенда в FunCorp. У нас, как и у многих, реализована сервис-ориентированная архитектура. С одной стороны, это упрощает работу, т.к. каждый сервис проще тестировать по отдельности, но с другой — появляется необходимость ...

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

«Мне страшно». Что делать? Всем привет! Меня зовут Анастасия, я практикующий психолог. И это будет мой первый пост на Хабр. Честно говоря, я к нему шла больше двух лет: боялась, что слог не получится сделать красивым и правильным. Что будет неинтересно. Ну и что скрывать, я волновалась, какая будет ре...

Дискретная математика на экзамене в ШАД Привет! Меня зовут Азат, я создаю курсы по подготовке к экзамену в ШАД. Недавно мы запустили курс по дискретной математике, поэтому наша команда активно прорешивает задачки по соответствующей теме. После разбора экзамена в ШАД 2019 года мы увидели большой интерес пользовател...

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

Разработка сложных компонентов: деливерим быстро, поддерживаем легко Всем привет, меня зовут Роман Пятаков! Я техлид во фронтенд-команде Lamoda. И сегодня хочу поговорить с вами о разработке сложных компонентов. Lamoda — это технически сложный продукт, которым пользуются 10 миллионов пользователей ежемесячно, насчитывающий более 100 внутрен...

[Перевод] 5 расширений и тем для VS Code, которые способны изменить жизнь разработчика Автор статьи, перевод которой мы публикуем сегодня, хочет рассказать о нескольких расширениях и темах для популярного редактора VS Code, которые способны улучшить жизнь разработчика. Читать дальше →

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

Системный подход к переменным в Ansible ansible devops codestyle Hey! Меня зовут Денис Калюжный я работаю инженером в отделе автоматизации процессов разработки. Каждый день новые сборки приложений раскатываются на сотнях серверов кампании. И в этой статье я делюсь опытом использования Ansible для этих целей. Этот ...

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

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

Выступает DMN, дирижирует ZeeBe: как использовать бизнес-правила в микросервисах Меня зовут Николай Первухин, я Senior Java Developer в Райффайзенбанке. Так сложилось, что единожды попробовав бизнес-процессы на Camunda, я стал адептом этой технологии и стараюсь ее применять в проектах со сложной логикой. Действительно сама идея подкупает: рисуешь процесс...

Организуем платформу обработки потоковых данных из Kafka, Spark и Greenplum Привет, Хабр! Меня зовут Иван Хозяинов, а работаю в ITSumma, где изучаю и применяю технологии, связанные с большими данными, машинным обучением и аналитикой. В этой статье хочу рассказать о системе хранения и обработки данных и инструментах, которые встречаются на пути ...

Исследование возможных заимствований и нарушений условий лицензирования в Java-коде на GitHub Меня зовут Ярослав Голубев, я работаю в JetBrains Research, в лаборатории методов машинного обучения в программной инженерии. Некоторые мои коллеги уже писали здесь о своих проектах (например, о подсказках для онлайн-курсов). Общая цель нашей группы — сделать работу программ...

От монолита к модулям: как отстроены бизнес-процессы склада Lamoda Привет! Меня зовут Евгений Рябышев, я разработчик в одной из команд направления Warehouse Management System (WMS) компании Lamoda. Я занимаюсь тем, что автоматизирую склад. В этой статье расскажу, как мы строим нашу модульную архитектуру. Наши основные бизнес-процессы для у...

Институт космических исследований РАН разработает приборы для китайской межпланетной станции JPL-Caltech / NASA 2021 год в сфере освоения космоса полон сюрпризов. И речь не только о покорении новых горизонтов и пересечении невиданных астрономических единиц. Так, Россия присоединится к китайской миссии по исследованию астероида и кометы. И станет не просто формальн...

[Перевод] Seccomp в Kubernetes: 7 вещей, о которых надо знать с самого начала Прим. перев.: Представляем вниманию перевод статьи старшего инженера по безопасности приложений британской компании ASOS.com. С ней он начинает цикл публикаций, посвящённых повышению безопасности в Kubernetes благодаря использованию seccomp. Если введение понравится читателя...

Что под капотом у R-Vision Threat Intelligence Platform? Привет, Хабр! Меня зовут Александр Зинин, я разработчик платформы управления данными киберразведки R-Vision Threat Intelligence Platform (TIP).В проекте TIP мы используем актуальный стек технологий: React для фронта, Node.js и TypeScript для не особо нагруженного бэкенда, Ru...

Do IT like a Russian: чем крупный ритейл может удивить технического директора Привет! Меня зовут Валентин Щитов, я CIO компании «‎Магнит». До момента прихода в «Магнит» весной 2020 года я руководил IT-департаментом большого e-commerce проекта и за 10 лет сформировал полное представление, как работает онлайн-ритейлер. Однако и офлайн-ритейлер...

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

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

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

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

Архитектурный паттерн Dependency Injection в React-приложении Расшифровка доклада Сергея Нестерова с конференции FrontendLive 2020.Привет! Меня зовут Сергей, уже больше двух лет я работаю в группе компаний Тинькофф. Моя команда занимается разработкой системы для анализа качества обслуживания клиентов в Тинькофф, и, как вы, наверное, до...

[Из песочницы] Наука vs IT. Как я бросил исследования ради разработки Привет, Хабр. Меня зовут Михеев Илья, я back-end разработчик в компании FINCH. Сегодня я расскажу о том, как простые люди попадают в IT, почему в «Сбере» на «Каширке» все плохо, а заодно расскажу почему молодые ученые уходят в IT. Думаю, что последняя тема больная для мног...

Xудшие практики для Ansible. Георгий Шуклин Приветствую всех! Меня зовут Георгий. Я работаю в компании servers.com. Я пришел рассказать про Ansible: про хороший Ansible и про плохой Ansible в основном, т. е. про то, как люди могут плохо делать на Ansible. Читать дальше →

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

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

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

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

[Перевод] Применение интерфейса Collector для работы с потоками в реальных Java-проектах Автор статьи, перевод которой мы публикуем сегодня, хочет рассказать о том, как интерфейс Collector и сопутствующие механизмы используются в реальных проектах. В Java-программировании при работе с потоками широкое применение находят методы класса Collectors. Эти методы позв...

Методы без аргументов — зло для неизменяемых объектов, и вот как его полечить Привет! Идея в том, что бы использовать ленивые кешируемые свойства везде, где в обычном случае мы бы использовали процессорно тяжелые методы без аргументов. А статья — как это задизайнить и и зачем. Несмотря на то, что я должен сделать оговорку, Дис...

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

Как мы автоматизировали портирование продуктов с C# на C++ Привет, Хабр. В этом посте я расскажу о том, как нам удалось организовать ежемесячный выпуск библиотек для языка C++, исходный код которых разрабатывается на C#. Речь идёт не об управляемом C++ и даже не о создании моста между неуправляемым C++ и средой CLR — речь об автомат...

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

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

Сделаны самые детальные снимки глубокого космоса Исследователи получили самые подробные изображения глубокого космоса с помощью радиоантенн.

В Китае начал работать самый большой планетарий в мире Новый планетарий в Шанхае — самый большой в мире Любителям космоса, которым когда-нибудь доведется побывать в Китае, определенно стоит посетить Шанхай. Дело в том, что в июле 2021 года именно там открылся самый большой планетарий в мире. Он состоит из нескольких зданий...

Мини Термометр & гигрометр с E-PAPER на nRF52 — или о том, что пока не выпустили производители Приветствую всех читателей Habr! Хочу поделится с вами своим новым опенсорс проектом. Из названия статьи понятно что речь пойдет о датчике температуры и влажности с дисплеем на электронных чернилах. Уже достаточно давно я попробовал сделать проект датчика температуры с таким...

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

Зоны в Dart: операция на открытом сердце для окружения Привет! Меня зовут Дима, я frontend-разработчик в компании Wrike. Клиентскую часть проекта мы пишем на Dart, однако работать с асинхронными операциями нам приходится не меньше, чем на других технологиях. Зоны — один из удобных инструментов, который Dart для этого предоставля...

Разработка приложения для обработки видео: на что обратить внимание и при чем тут зумеры Привет, Хабр!Меня зовут Алексей Жуков. Более 10 лет вместе с командой разработчиков я занимаюсь созданием и дизайном приложений и интернет-платформ. В статье хочу поделиться своим видением трендов на рынке видеоконтента. Разберемся в том, что будет после пандемии и что учест...

Как устроиться в IT-компанию Привет! Меня зовут Тим Чаптыков, я работаю в VK — руковожу командой разработки раздела сообщений на вебе. Мы отвечаем за мессенджер на vk.com, в мобильной версии сайта и в VK Messenger (приложение для компьютера). Последние&n...

Профилирование Node.js. Доклад Яндекса Полтора года назад я выступил на FrontendConf и посвятил 40 минут профилированию. Перечисленные приемы и инструменты по-прежнему актуальны — сегодня публикую видео с подробным конспектом. Доклад расскажет, что такое профилирование, научит локализовывать потенциальные утечки ...

Как стать фронтендером? Пошаговый гид в мир фронтенда Приветствую всех! Меня зовут Пучнина Анастасия, я ведущий разработчик в компании ДомКлик, занимаюсь фронтендом Витрины объявлений. Сегодня я хотела бы поделиться с вами своим мнением на тему того, что важно знать фронтенд-разработчику. Эта статья будет полезна тем, кто тол...

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

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

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

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

Книга «Глубокое обучение: легкая разработка проектов на Python» Привет, Хаброжители! Взрывной интерес к нейронным сетям и искусственному интеллекту затронул уже все области жизни, и понимание принципов глубокого обучения необходимо каждому разработчику ПО для решения прикладных задач. Эта практическая книга представляет собой вводный к...

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

Проект arataga: реальный пример использования SObjectizer и RESTinio для работы с большим количеством HTTP-соединений В последние 4.5 года я много рассказывал на Хабре про такие OpenSource проекты, как SObjectizer и RESTinio. Но вот об использовании SObjectizer и/или RESTinio в реальных проектах пока еще ни разу не удавалось поговорить (была лишь одна статья от стороннего автора).Причина пр...

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

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

Загрузка и обработка изображений в .NET Core В этой статье я хочу рассказать о своём опыте реализации механизма загрузки изображений в .NET Core приложении с последующим их ресайзом и сохранением в файловой системе. Для обработки изображений я использовал кроссплатформенную библиотеку ImageSharp от Six Labors. Существу...

Пилим веб-опросник как у Meduza: пошаговый гайд для начинающих Меня зовут Егор, я Full-stack разработчик в Leader-ID. В этой статье я хочу поделиться простым рецептом по созданию красивого и удобного веб-опросника наподобие тех, что делает Meduza. Он умеет показывать статистику после ответа на отдельные вопросы, подсчитывать общий балл,...

Укрощение feature-флагов Всем привет! Меня зовут Паша Стрельченко, и я — Android-разработчик в hh.ru. В этой статье расскажу об укрощении feature-флагов. Если больше нравится аудиовизуальный формат, его можно найти на нашем youtube-канале. В статье я расскажу чуть больше технических подробностей, че...

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

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

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

Tech Talks Delivery Club на РИТ++ Привет, Хабр! Hello, World! Меня зовут Андрей Евсюков, я заместитель технического директора в Delivery Club. А это первый пост в нашем блоге на Хабре. Сегодня расскажу о том, как и где можно узнать про разработку, процессы и команду Delivery Club. Спойлер: до сих пор никт...

Jenkins Pipeline. Что это и как использовать в тестировании Меня зовут Александр Михайлов, я работаю в команде интеграционного тестирования компании ЮMoney.Наша команда занимается приемочным тестированием. Оно включает в себя прогон и разбор автотестов на критичные бизнес-процессы в тестовой среде, приближенной по конфигурации к прод...

Волейбол глазами компьютера В прошлой статье я рассказал о своих подходах по распознаванию волейбольного мяча в игре. Задача сама по себе интересная и развивать ее можно в нескольких направлениях. Вариант 1 — продолжать исследования (в комментах к прошлой статье мелькали страшные слова SORT, YOLO итд...

Музей космонавтики опубликовал программу открытых лекций в рамках конференции «Медиакосм-2021» Редакция Новости партнёров 21.09.2021, 18:37 Музей космонавтики опубликовал программу открытых лекций в рамках конференции «Медиакосм-2021» Участники открытых лекций «Медиакосм-2021» узнают, чем отличаются полёты Джеффа Безоса и Ричард...

Как мы строили параллельные вселенные для нашего (и вашего) CI/CD пайплайна в Octopod Как мы строили параллельные вселенные для нашего (и вашего) CI/CD пайплайна в Octopod Привет, Хабр! Меня зовут Денис и я вам расскажу как нас надоумило сделать техническое решение для оптимизации процесса разработки и QA у себя в Typeable. Началось с общего ощущения, что вр...

Две красные кнопки, паяльник и React: как мы делали движуху для IT-конференции Badoo регулярно участвует со стендом в выставках IT-конференций. Поэтому каждый год мы с коллегами — инженерами и деврелами — придумываем, что бы такого айтишного сделать, чтобы не скучать в перерывах между докладами. Меня зовут Иван, я frontend-разработчик. В этой статье вм...

Влияние data-классов на вес приложения Kotlin имеет много классных особенностей: null safety, smart casts, интерполяция строк и другие. Но одной из самых любимых разработчиками, по моим наблюдениям, являются data-классы. Настолько любимой, что их часто используют даже там, где никакой функциональности data-класс...

Flutter + arduino nano 33 BLE sense = очень простой BLE sensor В этой статье я хочу рассказать как сделать очень простую bluetooth метеостанцию (куда уж без нее :) ) и написать мобильное приложение на Flutter для нее. Читать дальше →

SpaceX использует вернувшийся на Землю корабль Crew Dragon для отправки на орбиту первых космических туристов Недавно на Хабре публиковалась короткая новость о том, что SpaceX удалось без проблем вернуть команду астронавтов с МКС на Землю. Это во многом примечательный рейс, поскольку он, во-первых, доказывает надежность техники компании, во-вторых, показывает, что космические аппар...

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

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

Вкусовщина и AI: как мы в Prisma Labs делали объективно субъективный автоматический улучшатель фотографий Привет, Хабр! Меня зовут Андрей, я занимаюсь R&D в Prisma Labs. В своё время наша команда провела весьма интересное исследование на тему автоматического улучшения фотографии, результатом которого стала фича “AutoAdjustment” в приложении Lensa, позволяющая в один клик сде...

Почему стриминг на KSQL и Kafka Streams — это непросто Привет, Хабр! Меня зовут Саша, я лид-разработчик в GlowByte Consulting. Мы с командой сделали неплохой стриминговый движок для одного крупного банка. Сейчас в продакшене крутится онлайн обработка банковских авторизаций, визитов клиентов в офис и еще ряд более мелких процесс...

Как сделать статический сайт на Cloudflare Workers Sites Привет! Меня зовут Дима, я техлид SysOps-команды в Wrike. В этой статье я расскажу, как за 10 минут и 5 долларов в месяц сделать максимально близкий к пользователю сайт и автоматизировать его деплой. Статья почти не имеет отношения к тем проблемам, которые мы решаем внутри н...

Интеграция .pre-commit hook в Django проект Доброго дня! Меня зовут Соболев Андрей и сегодня я вам расскажу как мы приготовили .pre-commit hook на нашем проекте. Вступление Для начала пару слов, о том что такое в целом хуки (hooks) и для чего они могут быть нужны. Git «из коробки» предоставляет инструмент, который у...

[Из песочницы] Уникальные тропы Death Stranding или гениальный левел-дизайн Привет, Хабр! Представляю вашему вниманию перевод статьи «Death Stranding — Level Design Tropes» автора Iuliu-Cosmin Oniscu. Играл в Death Stranding и пытался сформулировать, чем она отличается от других игр с открытым миром по «классической» формуле. И пришел к выводу, ч...

Науч-поп: как это делали в Античности В прошлый раз я писал о новинках научно-популярной литературы. Теперь же наоборот, предлагаю обратиться к истокам. Если вы думаете, что научно-популярная литература – изобретение ХХ или XIX веков, то ошибаетесь. Все началось гораздо раньше. Еще в Древнем Риме (может, и раньш...

Поддерживаем разработку нескольких версий продукта в Git. Станислав Лукьянов (GridGain) Всем привет! Меня зовут Станислав Лукьянов. Я работаю в компании GridGain. Сегодня я хотел поговорить о том, как мы поддерживаем старые версии в Git. Читать дальше →

Специфицируй это. Доклад Яндекса Хорошая спецификация к API помогает клиентам его использовать. Несколько месяцев назад на большом Pytup разработчик Яндекса Александр Брязгин bryazginnn выступил с докладом о том, что собой представляет спецификация REST API на примере OpenAPI + Swagger и зачем нужна такая с...

Американские физики: внутри звезд может существовать неизвестная нам форма жизни Дуэт физиков в лице Луиса Анчордоки и Юджина Чудновского из Городского университета Нью-Йорка (США) описал гипотетическую форму жизни, средой обитания для которой является раскаленное тело звезды. В основе этой жизни лежат космические струны (одномерные линейные объекты) и м...

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

У Вас проблемы с legacy — значит, Вам повезло! Распил монолита на PHP Меня часто просят рассказать о работе с legacy-монолитами. Про микросервисную архитектуру и переход на нее говорят много, но редко упоминают о том, что проекты приходят ней после многих лет роста с монолитным приложением. Учебники по решению проблем не пишут. Чтобы поменять ...

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

[Из песочницы] Основы измерения повышенной температуры человека с помощью тепловизионной технологии Привет, Хабр! Представляю вашему вниманию перевод и адаптацию оригинальных технических статей по тематике применение телевизоров для температурного скрининга человека: «ELEVATED BODY TEMPERATURE (EBT) FUNDAMENTALS» и «BEST PRACTICES FOR EBT». Цель этой статьи — помочь читат...

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

Анонс нового проекта от Bethesda — Starfield. Бескрайний космос только на PC и Xbox Одним из важных анонсов минувшей E3 2021 стала новая игра от студии Bethesda — Starfield. Авторы Fallout, Doom и новой Wolfenstein решили окунуться в космический сеттинг. Читать полную статью

В честь 30-летия фотографии нашей планеты, NASA обновили “бледно-голубую точку” 1 февраля 1990 года космический аппарат Вояджер-1 получил команду развернуться, чтобы сделать легендарную фотографию нашей планеты. Ровно 30 лет назад, 14 февраля 1990 года, мир увидел бледно-голубую точку, подвешенную в лучах Солнца. Камера зонда Вояджер-1 сделала серию из...

Решение нескольких задач от Amazon на примере JavaScript Доброго времени суток. Представляю вашему вниманию перевод статьи «Amazon Coding Interview Questions» автора Trung Anh Dang. В этой статье автор приводит несколько (три, если быть точнее) задач от Amazon (как он утверждает) и свои варианты решений. После ознакомления с ...

[Из песочницы] Создание системы антифрода в такси с нуля Добрый день. Меня зовут Никита Башун, работаю дата-аналитиком в группе компаний «Везёт». Мой рассказ будет о том, как мы командой из трёх человек с нуля создавали систему антифрода для сервиса заказа поездок. Читать дальше →

Banana Pi R64 Лучший роутер для OpenWrt, или нет? Здравствуйте меня зовут Дмитрий и сегодня я сделаю обзор на одноплатный компьютер Banana Pi R64. Мы узнаем как установить на него OpenWrt а также как собрать самому прошивку под этот компьютер. Читать дальше →

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

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

32 января Часть 1 Праздничное настроение отгудело. Астрономы занялись обычной работой. 13 января 2020 года мимо Земли пролетает огромное космическое тело размером с Нептун. Что это было так никто и не понял, потому что появилось и исчезло космическое тело ровно из ниоткуда. Уфологи, ...

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

Артемий Рябинков (Avito): Graceful Shutdown в Go-сервисах и как подружить его с Kubernetes Выступление на Go 1.10 Release Party @ Badoo Артемий рассказал про подходы к безопасному завершению работы многопоточных программ на Go, в частности о том, как контролировать горутины и управлять ими. Объяснил, почему во время выкатки сервисов в Kubernetes пользователям м...

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

Стандарт C++20: обзор новых возможностей C++. Часть 2 «Операция ''Космический Корабль''» 25 февраля автор курса «Разработчик C++» в Яндекс.Практикуме Георгий Осипов рассказал о новом этапе языка C++ — Стандарте C++20. В лекции сделан обзор всех основных нововведений Стандарта, рассказывается, как их применять уже сейчас и чем они могут быть полезны. При подго...

[Перевод] Проектирование заголовочных частей сайтов с использованием CSS Flexbox Когда я, изучив основы HTML и CSS в 2014 году, занялся разработкой сайтов, сложнее и страшнее всего для меня было создание их заголовочных частей. Тогда технология Flexbox была ещё достаточно новой, поэтому мы вынуждены были использовать старые методы — вроде float-позициони...

Создаем веб-приложение на Haskell с использованием Reflex. Часть 1 Введение Всем привет! Меня зовут Никита, и мы в Typeable для разработки фронтенда для части проектов используем FRP-подход, а конкретно его реализацию на Haskell – веб-фреймоворк reflex. На русскоязычных ресурсах отсутствуют какие-либо руководства по данному фреймворку (да и...

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

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

Конечные автоматы в реальной жизни: где мы их используем и почему Привет, меня зовут Антон Субботин, я выпускник курса «Мидл фронтенд-разработчик» в Яндекс.Практикуме. Не так давно мы с наставником курса Захаром Овчаровым провели вебинар, посвящённый конечным автоматам и их практическому применению. Вебинар получился интересным, а потому п...

Сертификации в Agile. Пара слов для HR и для коллег-разработчиков Я хочу сразу оговориться что не преследую цели ни пропагандировать сертификации для IT, ни предавать их анафеме. Этот выбор каждый должен сделать для себя. Но как бы то оно ни было — сертификации существуют, сертификации придается значение «за рубежом», и в резюме сотруднико...

[recovery mode] ФИАС с человеческим лицом Всем привет. Некоторое время назад пришлось разбираться в ФИАСе, хочу поделиться своими наработками. Эта статья расскажет о том как базу развернуть, как её обновлять и как ей пользоваться.К счастью мне не пришлось во всём разбираться самому, потому что на Хабре есть хорошая ...

«Docker уже умер» или все, что вы хотели узнать про Devops, но боялись спросить Недавно в наших соцсетях выступал Александр Чистяков, DevOps с 7-летним опытом и сооснователь Санкт-Петербургского сообщества DevOps-инженеров. Саша один из топовых докладчиков в этой сфере, он выступал на главных сценах на Highload++, РИТ++, PiterPy, Стачка, всего сделав ...

Уходим с Mercurial на Git Кадр из фильма «Красный шар». Режиссер Альбер Ламорис. 1956 год Так уж случилось, что у меня остался ряд репозиториев на Mercurial, которые захостил на Bitbucket много лет назад. Проекты перешли в полуархивное состояние, поэтому заглядывал в них не так уж и часто. И тут я р...

[Из песочницы] С++, метапрограммирование и регистры микроконтроллера Привет, Хабр! Вот уже несколько лет все свои проекты для линейки микроконтроллеров stm32 я делаю на C++. За это время у меня накопилось некоторое количество материала, который может быть интересен другим разработчикам. Во избежание лишних вопросов: я использую связку QtCre...

Gotta go fast. Оптимизация запросов содержимого письма по IMAP Всем привет! В прошлой статье я рассказал как можно быстро синхронизировать содержимое ящика в локальном кеше. Здесь же я хочу рассказать об особенностях запроса содержимого писем и как лучше запрашивать контент, не боясь за большой расход трафика. Читать дальше →

Автоматическое обучение моделей с помощью Vowpal Wabbit Всем привет, меня зовут Артем Жаринов, я специалист по анализу данных и машинному обучению команды RnD в Lamoda. Блуждая по нашему сайту вы, возможно, заметили такие полки рекомендаций «С этим товаром покупают» или «Популярные товары». Для персонализированного ранжирования ...

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

План начинающего тестера: от “Войти в IT” до “Я — Инженер!” Всем привет! Меня зовут Валентин и я работаю инженером по тестированию в компании Exness. Очень часто слышу вопрос о том, насколько сейчас возможно стать тестировщиком программного обеспечения. В этой статье я постараюсь ответить на данный вопрос. Читать дальше →

Автоматизация тестирования в микросервисной архитектуре Привет, Хабр. Меня зовут Сергей Вертепов, я senior backend инженер. Это небольшая обзорная статья о том, как мы тестировали монолитное приложение Авито, и что изменилось с переходом на микросервисную архитектуру. Читать дальше →

Vue.js для проекта на Bitrix Привет, Хабр!Меня зовут Дмитрий Матлах. Я тимлид в AGIMA. Мы с коллегами обратили внимание, что в сообществе часто возникает вопрос о том, как совместить на одном проекте Bitrix-компоненты и реактивные фронтовые движки. Мы неоднократно сталкивались с подобными задачами, и по...

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

[Перевод] Как НЕ сделать многопользовательскую игру в реальном времени за 30 дней Или как добиться большего на следующем вашем хакатоне Некоторое время назад я принимал участие в ежегодном игровом мероприятии Itch.io Game Off 2020, участники которого за ноябрь делали игру на определённую тему. Тема этого года, Moonshot, привела к созданию более 500 амбици...

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

Принцип подстановки Лисков Всем привет, меня зовут Константин. Я занимаюсь разработкой на Java в Tinkoff.ru и люблю SOLID. В этой статье мы сформулируем принцип подстановки Лисков, покажем его связь с принципом Открытости-Закрытости, узнаем, как правильно формировать иерархию наследования и ответим на...

Как найти иллюстратора, если вы ничего не понимаете в иллюстрации Меня зовут Полина, я работаю веб-дизайнером и иллюстратором. Работы много, поэтому со временем возник вопрос о поиске «запасного игрока», который в случае моего большого загруза мог бы подхватить задачу по созданию иллюстраций для статей на Хабр и Яндекс Дзен. До этого мом...

[Перевод] Ещё 6 вещей, которые я узнал, доведя Snowpack до 20000 GitHub-звёзд Это — второй материал из серии статей, состоящей из двух частей. В первом материале я прошёлся по ранней истории Snowpack, рассказал о том, как мы довели этот опенсорсный проект до состояния, когда у него появились первые пользователи. Здесь же я хочу уделить основное вниман...

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

Обзор на статью Visual Transformers — новый подход к тренировке моделей компьютерного зрения на основе visual tokens Эта работа интересна тем, что авторы в ней предлагают новый подход к тренировке моделей на изображениях — использовать не только пиксели и конволюции, но ещё и представлять изображения в виде визуальных токенов и тренировать на них трансформеры. По сравнению с использованием...

Большая подборка материалов для изучения Google Tag Manager Привет, Хабр! Меня зовут Артём Сайгин, я веду проект «Я Маркетолог», в котором рассказываю о digital-маркетинге и веб-аналитике и делаю так, чтобы всё это стало понятным. Cделал для вас большую подборку материалов для самостоятельного изучения Google Tag Manager. В статье...

Обучение, удалённая экспертиза и другие сферы применения AR/VR в металлургической промышленности Привет, меня зовут Денис Колупаев, я возглавляю команду AR/VR-разработчиков в компании «Северсталь». В нашей компании технологии виртуальной и дополненной реальности начали внедрять по инициативе экспертов управления по развитию новых технологий нашего центра R&D в IT. Б...

Скорость сборки в iOS Всем привет! Меня зовут Юра, я – iOS-разработчик в hh.ru. В этой статье мы рассмотрим с одну из важнейших метрик для IOS-разработчика – скорость сборки. Я расскажу о том, как мы собираем эти метрики и что потом с ними делаем, и почему мы вообще решили всё это измерять. Видео...

Как мы весь интернет сканировали Всем привет! Меня зовут Александр и я пишу код для 2ip.ru. За добрую половину сервисов можно пинать меня, готов отбиваться. Cегодня я хочу немного рассказать про переделку одного нашего старого сервиса. Это конечно не "big data", но всё равно довольно большие обьемы информац...

Автор атаки KRACK раскрыл подробности о 12 критических уязвимостях популярных беспроводных устройств Об атаке, вернее, атаках KRACK (Key Reinstallation Attacks) на Хабре писали несколько лет назад. Так называли инструменты, которые позволяют эксплуатировать критичные уязвимости в протоколе WPA2, который считается достаточно надежным. KRACK дает возможность обойти защиту и ...

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

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

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

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

Как обрабатывать спутниковые снимки с помощью Sen2Cor Sen2Cor — программа для обработки снимков, сделанных со спутника Sentinel-2. В статье рассказывается, как установить, запустить и настроить её. Читать дальше →

[Перевод] Реализация эффектов при помощи рисования вершин Какое-то время назад я наткнулся на интересный пост X: Rebirth – Geometric Lensflares на сайте simonschreibt.de В этом посте автор рассказал о том, как игра X: Rebirth использует техники рисования вершин для создания эффектов lens flare. Почему это интересно? Потому что сов...

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

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

В Китае построили самый большой планетарий в мире Строительство планетария в Линганге началось в ноябре 2016 года. Теперь, когда металлоконструкции полностью установлены и проведены все механические работы, наступает следующий этап, который будет включать в себя работу по внутренней отделке и выставочным площадям. Шанхайски...

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

[Перевод] Детальное сравнение WordPress и October CMS Меня зовут Павел Ловцевич, я сооснователь и CTO веб-студии LOVATA. Одной из основных платформ, на которой мы разрабатываем проекты для наших заказчиков, является October CMS, с которой мы работаем уже почти 6 лет. Эта CMS несколько опередила свое время и не сразу снискала з...

3.Elastic stack: анализ security логов. Дашборды В прошлых статьях мы немного ознакомились со стеком elk и настройкой конфигурационного файла Logstash для парсера логов, в данной статье перейдем к самому важному с точки зрения аналитики, то что вы хотите увидеть от системы и ради чего все создавалось — это графики и табл...

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

Сила процессов в проектном менеджменте Всем привет. Меня зовут Даша Викторова, я Project Lead направления Outbound, которое отвечает за автоматизацию доставки в Lamoda. Сегодня поговорим про проектный менеджмент… Но не совсем :) Как правило, проект-менеджер (или просто PM) отвечает за реализацию проектов — к...

Swift и CoreData. Или как построить Swift ORM на основе Objective-C ORM Хабр, здравствуй! Меня зовут Геор, и я развиваю iOS проекты в компании Prisma Labs. Как вы наверняка поняли, речь сегодня пойдет про кордату и многим из вас стало скучно уже на этом моменте. Но не спешите отчаиваться, так как говорить мы будет по большей части о магии свифта...

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

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

Property-based тестирование для JavaScript и UI: необычный подход к автоматизированным тестам Falcon Heavy Demo Mission Писать тесты скучно. А то, что скучно делать, постоянно откладывается. Меня зовут Назим Гафаров, я разработчик интерфейсов в Mail.ru Cloud Solutions, и в этой статье покажу вам другой, немного странный подход к автоматизированному тестированию. Чи...

Удаленка Challenge Друзья, привет! Меня зовут Станислав Саввин, и сегодня я хотел бы рассказать, как инфраструктурной команде Росбанка удалось за 10 дней в 7 раз нарастить количество удаленных подключений и перевести более 85% сотрудников на удаленку, не уронив при этом эффективности работы ...

[Из песочницы] Ваш C# уже «функциональный», просто позвольте ему это Привет, Хабр! Представляю вашему вниманию перевод оригинальной статьи «Your C# is already functional, but only if you let it» автора Igal Tabachnik. Несколько дней назад я написал в Твиттере фрагмент кода C#, реализующий FizzBuzz, используя некоторые из новых «фичи» в C# 8....

Почему мы выбрали MobX, а не Redux, и как его использовать эффективнее Меня зовут Назим Гафаров, я разработчик интерфейсов в Mail.ru Cloud Solutions. На дворе 2020 год, а мы продолжаем обсуждать «нововведения» ES6-синтаксиса и преимущества MobX над Redux. Существует много причин использовать Redux в своем проекте, но так как я не знаю ни одной,...

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

[Перевод] Тестирование: назад к основам + [Puppeteer][Mocha] Совершенствуйте код с помощью тестового покрытия Перевод статьи подготовлен в преддверии старта курса «Автоматизация тестирования на JavaScript». Меня несколько раз спрашивали о разнице между инженером по обеспечению качества (QA — Quality Assurance) и тестером (QC — Quality Control), и я понял, что даже если люди, разра...

Как мы автоматизировали процесс генерации Release Notes Всем привет! Меня зовут Семен. Я Java-разработчик и руководитель группы Java-разработки в Центре Big Data компании MTS Digital. В этом посте я хочу поговорить о Release Notes. Что это такое, почему не стоит писать их вручную и какие есть способы автоматизации. Покажу и реаль...

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

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

[Перевод] Кори Доктроу: Метод Memex Когда ваша тетрадь с заметками — общедоступная база данных Прим. пер.: Я делаю проект Ontol (Github для знаний/мудрости), на который меня вдохновили, в том числе и, мысли Ванневара Буша про Memex. Memex ускоряет в десятки и сотни раз работу ученых, сокращая трение и врем...

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

Исландию удалось заснять без облаков «Европейское космическое агентство» (ESA) представило уникальный снимок Исландии, сделанный с космической орбиты. На фотографии островное государство, расположенное на западе Северной Европы в северной части Атлантического океана, запечатлено без облаков над ним. Снимок, сде...

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

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

[Перевод] Антипаттерн “Репозиторий” в Android Перевод статьи подготовлен в преддверии старта курса «Android Developer. Professional». Официальное руководство по архитектуре приложений Android рекомендует использовать классы репозитории (Repository) для «предоставления чистого API, чтобы остальная часть приложения мог...

[Перевод] Мягкие частицы в WebGL и OpenGL ES Системы частиц это одни из самых простых способов сделать 3D сцену визуально богаче. В одном из наших Android приложений 3D Buddha Live Wallpaper достаточно простая сцена, которой было бы неплохо добавить чуть больше деталей. И когда мы думали как добавить разнообразия изобр...

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

[Перевод] Как решить проблему космического мусора? Стратегия открытого океана На нашей орбите сегодня еще хуже, это проекция 2011 года Американское астрономическое общество предполагает, что благодаря развитию спутниковых мегасозвездий, таких как OneWeb и Starlink от SpaceX, к 2030 году мы увидим более 100 000 спутников на орбите Земли. Но эксперты ...

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

Заметки о разработке МРРТ контроллера Приветствую! Ранее я уже рассказывал в статье о своем проекте контроллера заряда для небольшой СЭС с алгоритмом поиска ТММ. Сей проект вялотекущий из-за нехватки времени и порой отcутствия настроения, но все же он развивается. С момент последней статьи я сделал еще 2 ревизии...

[Из песочницы] Получение котировок акций при помощи Python Привет, Хабр! Представляю вашему вниманию перевод статьи «Historical Stock Price Data in Python» автора Ishan Shah. Статья о том, как получить ежедневные исторические данные по акциям, используя yfinance, и минутные данные, используя alpha vantage. Читать дальше →

[Из песочницы] Разрабатываем игры на LibGDX с помощью шаблона Entity Component System Привет Хабр! Меня зовут Андрей Шило, я android-разработчик в компании FINCH. Сегодня я расскажу вам о том какие ошибки не стоит допускать при написании даже самой простой игры и чем крут архитектурный подход Entity Component System(ECS). Читать дальше →

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

GameDev: Империя Соблазна – Часть 1 Приветствую! Хочу поделиться историей о том, как меня, обычного «офисного клерка», затянуло в GameDev, постепенно превратив в инди разработчика. Возможно, кто-нибудь сочтет это интересным и даже возьмет на заметку, прежде чем утонуть во всей этой теме игровой индустрии. Это...

Как отправить сотрудников на удаленку и не забыть вернуть их назад. Руководство Exness Всех приветствую! Меня зовут Лена, руковожу работой с персоналом в Exness.  Я хочу поделиться нашим опытом перевода сотрудников на удаленную работу в период карантина. Мне кажется, что мы подошли максимально системно к этой задаче, и самое главное — не забыли организовать «...

Российская «Сфера» объединит более 500 спутников до 2030 года Государственная корпорация Роскосмос в ходе Международного военно-технического форума «Армия-2020» рассказала о проекте многоцелевой системы связи «Сфера» на базе сотен космических аппаратов. После развёртывания «Сфера», как ожидается, позволит решать различные задачи. Это, ...

Way to Geneve Хабр, привет. Меня зовут Аркадий и я сетевой инженер в одном из сервис провайдеров.  Кому интересны основные отличия VXLAN от Geneve и Overlay протоколы добро пожаловать под кат. Избегая выстрела в ногу, хочу отметить, что основа статьи – это выжимки из RFC и открытой и...

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

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

Нейрозапятые, или как мы оставили своих редакторов без работы (ну почти) Всем привет, меня зовут Владислав Соболев – ML-инженер в компании “БАРС Груп”. Сегодня я хотел бы рассказать о том, зачем и как мы расставляем знаки препинания в текстах, сравним аналоги, и посмотрим на то, как устроена работа инструмента, который мы написали, чтобы обучать ...

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

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

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

API Style Guide, или не заставляйте пользователей думать Привет! Меня зовут Лёша Руцкой, и я — продуктовый менеджер в компании Wrike. До этого работал в Adform и PandaDoc. Последние пять лет я занимаюсь всем, что связано с интеграциями и API. Wrike — это SaaS продукт для совместной работы и управления проектами. Мы хотим, чтоб...

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

Чистая архитектура с Go Меня зовут Эдгар (ZergsLaw), я работаю в компании, которая занимается  финтех-разработкой для b2b и b2c. Когда только устроился в компанию, то попал в команду большого финтех-проекта и получил «в нагрузку» небольшой микросервис. Мне поручили его изучить и подготовить план ре...

Про поиск перспективных джунов и «удалёнку». Опыт руководителя техподдержки Redmadrobot Привет, меня зовут Аня Горбунова, в работе я часто сталкиваюсь с наймом младших специалистов. Поделюсь опытом, как не потерять хорошего кандидата среди большого количества резюме. Плюс немного поговорим про удалённую работу. Читать дальше →

В 26 лет Яна Харлан руководит разработкой космического двигателя. В следующем году его планируют запустить Яна Харлан с макетом двигателя (1:1) В 2017 году российские ученые из команды Avant Space занялись разработкой уникального геликонного сеточного двигателя для космических спутников. С ним бы они могли поддерживать орбиту и выполнять межорбитальные переходы. «Это простое н...

[Из песочницы] Scorched Earth — мама всех игр. Интервью с создателем Привет, Хабр! Представляю вашему вниманию перевод статьи "An interview with the creator of Scorched Earth" автора Wendell T. Hicken. Начальный экран «мамы всех игр». Пустынный пейзаж наводит на мысли о будущих войнах в Заполярье. Привет, читатели Хабра! Меня зовут...

Самоподписные сертификаты кровавого энтерпрайза против вашего лампового CI/CD Многие компании используют сертификаты, подписанные внутренними удостоверяющими центрами (Certificate Authority) для ресурсов в приватных сетях. Поскольку такие сертификаты по умолчанию не могут быть доверенными, почти на каждом этапе вокруг пайплайна могут возникать ошибки...

Что почитать менеджеру продукта или проекта: от исследований Канемана до мотивации Брэдбери Всем привет! В нашем совместном с МФТИ учебном проекте Технотрек есть семестровый курс по Product Management. Меня зовут Станислав, и я ведущий преподаватель этого курса, а также менеджер продукта в проекте DonationAlerts. Готовясь к курсу, я собрал внушительный список пол...

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