В этом посте мы поговорим о задаче metric learning, подходах к её решению, и разберём их на практике, используя open-source проект OpenMetricLearning. В качестве бонуса покажем, как с помощью простых эвристик можно догнать текущие SotA модели.
Новости
Введение в блокчейн-игры
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/8ea/c4b/bf9/8eac4bbf9594bd4d6805a800ed395839.png)
Прежде чем начать рассказывать о блокчейн-играх, я расскажу, для кого эта статья. Если вы опытный геймдевелопер и сами работаете с внедрением блокчейн-элементов в игры, то эта статья вряд ли будет для вас информативной. Статья написана для тех, кто только погружается в эту сферу, кто часто слышал выражения “блокчейн-игры” и “NFT в играх”, но не вполне понимал принципы их работы, и кому интересно понять основы этого широко обсуждаемого направления. Несмотря на обилие новостей по этой теме, материалов, посвященных введению в блокчейн-игры, не так много, поэтому людям зачастую непросто разобраться в основах. Я решила написать эту статью как раз для таких случаев; именно такого разбора мне самой не хватало некоторое время назад, когда я начинала свое погружение в блокчейн-игры.
Блокчейн - что это такое, основные характеристики
Для начала, давайте поговорим о том, что такое блокчейн и какие его основные характеристики. Очень часто блокчейн употребляется в финансовом контексте как нечто, неразрывно связанное с криптовалютами. Однако блокчейн не является исключительно финансовым инструментарием, а его применение может выходить далеко за рамки поддержки криптовалют.
В общем и целом, блокчейн - это большой цифровой реестр данных, который хранит информацию об определенных активах. А вот сами эти активы могут быть, как и в реальном мире, разными - могут быть криптовалютами (которые будут цифровым аналогом денег), а могут быть цифровыми объектами (упрощенно говоря, цифровой аналог предметов). Валюты будут иметь исключительно экономическую ценность и будут полностью взаимозаменяемыми (вы можете поменять один биткоин на другой, и ничего не изменится), а вот объекты будут ценны не только в экономическом плане, и просто заменить один на другой не получится (например, две разные цифровые картины не будут взаимозаменяемыми). Такие уникальные цифровые объекты, записанные в блокчейне, называются NFT (non-fungible tokens, или невзаимозаменяемые токены). К ним относятся и цифровые игровые активы (например, мечи, щиты, карточки). Строго говоря, в теории существуют разные мнения насчет того, следует ли относить к NFT полностью взаимозаменяемые игровые активы (например мечи, которые существуют в объеме 100 штук и не обладают уникальными характеристиками), но на практике их называют именно так.
История о том, как мы монолит с .NET Framework на .NET 6 и Kubernetes переводили
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/6a8/707/dfa/6a8707dfa3dad2b6c7d149477d73b8f3.png)
Это статья об особенностях монолита Dodo IS и о том, почему он превратился в архитектурную проблему. Рассказываем, с какими сложностями столкнулись при его распиле, как переводили с .NET Framework на .NET 6 и Kubernetes, как выглядел процесс, какие преимущества получили от перехода.
Инструмент разработчика Ruby on Rails на базе NeoVim (nvim)
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/570/b66/b5e/570b66b5e6b134f554b23678fb4c4b80.png)
Вашему вниманию конфигурационный файл с плагинами для комфортной разработки под Ruby on Rails и не только.
Более года собирался данный конфигурационный файл, удалялись или устанавливались разные плагины и проходили обкатку. в результате теперь комфортно работать в "самом" быстром редакторе.
Мастер-класс по организации освещения в игре на Unreal Engine: Часть 1
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/4fd/e7e/29f/4fde7e29f07a9cef9960122629609639.png)
Обширное руководство из двух частей о создании привлекательного освещения в играх на Unreal Engine, представленное старшим художником по освещению Юрием Воробьевым.
Новые возможности Angular 14 изменят ваш код
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/a94/18c/358/a9418c35804a32765ddb90b1a1ba2db2.png)
Да, Angular запускает 14-ю версию, что уже является традицией в его экосистеме, поскольку каждые шесть месяцев выпускается новая версия с усовершенствованиями, обновлениями и новыми возможностями для разработки более мощных приложений.
Это не должно повлиять на другие проекты Angular. Запомните — "Angular". Неважно, какую версию вы используете, главное, что вы применяете Angular. Каждый год вы получаете новую версию Ubuntu, обновляете свой мобильный телефон, или каждые восемь месяцев NodeJS публикует новую версию.
Аналитики Axenix (ex-Accenture) сопоставили возможности российских и зарубежных BI-платформ
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/df1/7d8/596/df17d859684bdccd3527fc5087d39e3a.jpeg)
Могут ли российские BI-платформы все-таки заменить зарубежные системы? Мы много раз возвращались к этому вопросу, потому что сегодня именно он интересует и даже беспокоит многих руководителей. И, наверное, все уже знают, что могут, но не во всем. Но чего именно не хватает российским BI-системам, и кто смог создать наиболее функциональное решение на сегодняшний день? Подробности под катом.
Бэкап CommuniGate Pro: как мы сделали резервную копию коммуникационной платформы надежной
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/576/6df/458/5766df4584858267091e0ff87097961b.jpeg)
Привет, Хабр!
Сегодня я хочу рассказать о том, как работает резервное копирование сервера CommuniGate Pro, если делать его с помощью Кибер Бэкап 15. Под катом — схема взаимодействия наших решений, а также подробности о том, как работает бэкап-агент в наиболее сложных для него ситуациях.
Не трогай это
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/579/96f/7e4/57996f7e4504f0ebb200d27c71c0abba.png)
Несколько не вычитанный текст, потом вычитаю и на Habr помещу.
Вчера увидел вот этот пост в LinkedIn с фразой «First rule of programming, If it works, don't touch it» и как-то вскипело. Поясню почему.
Как определять пользовательские намерения, о которых мы узнали 5 минут назад
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/db9/775/a1c/db9775a1c3b287a9a8b0e460f20cb8a9.png)
Привет! Меня зовут Даниил Цимерман, я R&D-инженер в NLP-отделе Тинькофф. Недавно я выступил на конференции DUMP и рассказал, как мы решали задачу определения интентов пользователей в чате в условиях быстро меняющихся запросов. Доклад можно посмотреть на Ютубе, а эта статья — его текстовая версия для читателей Хабра. Разберем, какие способы решения задачи существуют и что делать с постоянно возникающими новыми интентами.
Компетенции ИБ-специалиста
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/ee6/5ad/ab9/ee65adab910c666aaa65ab46d3d5b130.jpg)
Рост количества кибератак и ежедневные сообщения об утечках персональных данных пользователей – это новые реалии информационного мира. Уберечь компании от этих проблем помогают эксперты по информационной безопасности (ИБ). Круг обязанностей коллег по устранению киберугроз широк, однако есть определенные компетенции, которые ценятся в этой сфере. В нашей статье подробно расскажем о навыках, которые пригодятся, если вы хотите начать карьеру или уже работает в сфере ИБ.
Bottom Sheet API в SwiftUI
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/52f/986/5c4/52f9865c43c16361af5a9a5bc02e0d6c.png)
Два года назад я написал пост, посвященный созданию кастомного bottom sheet в SwiftUI. Сегодня же необходимости писать его вручную с нуля больше нет, по крайней мере, если вам не нужно какое-нибудь супер-уникальное поведение. SwiftUI теперь предоставляет новый API для отображения bottom sheet всего в несколько строк кода. В этом посте мы рассмотрим новый API, позволяющий нам отображать различные вариации bottom sheet.
Новый API SwiftUI для отображения bottom sheet достаточно прост в использовании. Все, что нам нужно сделать, это прикрепить модификатор представления presentationDetents
к содержимому модификатора представления sheet.
Почему звук в воде затухает?
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/c27/fd3/d12/c27fd3d12c92596ed6e5f975b8d2adf1.png)
Вспомнил я тут о сокровенном, и даже сакральном эмпирическом знании. Не считая себя вправе скрывать его от широкой общественности, излагаю.
Большое обновление Censor Tracker
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/e2a/4c8/b37/e2a4c8b37d6ccfd243c8a8f6fa640346.jpg)
Всем привет!
На связи команда «Роскомсвободы». Сегодня у нас юбилей (10 лет!), и в честь такого события мы весь день рассказываем о том, что наша организация сделала за это время, как боролась с цензурой и блокировкам в Рунете.
Много лет мы не только отслеживаем блокировки и пишем о них, но и сами проектируем инструменты обхода. Хотим напомнить вам о нашем расширении Censor Tracker: это и приятно по такому поводу, и всегда полезно!
Что же нового приготовил Censor Tracker?
Дизайн
Мы существенно переработали дизайн раздела настроек расширения.
Учимся настраивать свою почту, не наступая на чужие грабли: Postfix + msmtp + сайт
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/3f5/ff2/e4c/3f5ff2e4ce6e34f0bb278b70a34d8ba1.jpeg)
Привет, меня зовут Никита, я backend-разработчик в компании ИНТЕРВОЛГА. Работаю в компании уже 3 года, и за этот срок достаточно часто мне приходилось возиться с установкой и конфигурированием собственного почтового сервера для разных задач (см. далее) клиентов.
Сначала это было болью, каждая такая задача требовала понимания проблем каждого клиента, путей их решения, принципов работы почтового сервера и способов его тестирования, чего в начале карьеры у меня не было. В итоге приходилось по крупицам собирать информацию о составных частях поставленной задачи из различных источников.
В этой статье хотелось бы поделиться накопленным опытом, описать возможные трудности и подводные камни, с которыми можно столкнуться в похожих кейсах, и показать некую roadmap решения.
Путь начинается с того, как с нуля, по вводным условиям определить объем работ, и заканчивается финальной реализацией почтового сервера и его тестированием.
Я не видел в Сети и на Хабре цельной инструкции такого рода — и решил написать свою.
Статья не претендует на то, чтобы рассказать про всё сразу и максимально подробно (сомневаюсь, что это реализуемо). Наоборот, я стремился описать сложные и комплексные вещи простым языком. Слишком обширные темы, уже давно разобранные сообществом, я опускал. Главной целью было дать новичку, который закопается в дебрях “почтовых интриг”, указатель, в какую сторону копать при возникновении типовых вопросов и проблем. Надеюсь, что эта статья окажется полезной и найдет своего читателя. Приступим!
Доступ к VM в разных облаках по RDP и SSH (Windows и Linux)
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/webt/ob/39/g_/ob39g_yuajyrgbsrkmmjhfh_lzi.png)
IAP Desktop — полезная программа под Windows, которая управляет несколькими удалёнными десктопами и устанавливает туннели SSH/RDP к разным виртуальным машинам под Linux и Windows. Она сочетает преимущества стандартного менеджера RDP-соединений с безопасностью и гибкостью Identity-Aware Proxy (IAP-прокси).
В 2022 году такой инструмент очень актуален, с распространением облачных сервисов и хостингов, где могут крутиться наши виртуальные машины и контейнеры. А также в связи с необходимостью удалённого доступа по RDP и SSH к разным корпоративным виртуалкам.
Как и чем отвечать на атаки: мнение лида группы реагирования
«Если не можете расшифровать наши данные, то зачем вы здесь?», — примерно так порой реагируют на приезд нашей команды. Сейчас все объясню, а заодно:
- распишу, на какие стадии делится реагирование на инциденты, и как они выглядят на практике;
- перечислю основные ошибки, которые играют на руку хакерам;
- дам базовые советы по реагированию, которые сберегут ваши и наши нервы;
- расскажу, как сыграть в русскую рулетку с шифровальщиком;
- и приду к спорным выводам.
Elm – забава или серьёзный инструмент?
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/8bc/1ad/b48/8bc1adb48fcaeee42e159bb3b07a4d99.png)
Привет, Хабр!
Данный обзор познакомит вас с частичкой мира функциональных языков программирования, а именно с Elm, кто-то узнает про этот инструмент, кто-то про то, что фронтенд – это не только HTML, CSS и JS.
Как мы наш большой проект на KPHP мигрировали
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/606/43b/9b7/60643b9b7749c47d71adb6b518e96673.png)
История о том, как мы мигрировали нашу систему управления проектами на KPHP. Если у вас есть PHP-проект с длинной историей и вы хотите запуститься на KPHP для получения выгод, то приготовьтесь! Будет сложно, больно, сборка будет падать много раз. И если у вас останутся силы подняться вместе со сборкой, вы победите.
Что такое клиринг, как он работает и реализован на примере платёжной системы «Мир»
![](https://webcf.waybackmachine.org/web/20221101123521im_/https://habrastorage.org/getpro/habr/upload_files/579/94e/d9c/57994ed9cb83a4415573ae372f3caa24.jpg)
Покупки с помощью карты стали неотъемлемым атрибутом современной жизни. В прошлом году жители нашей страны совершили более 21 миллиарда операций банковскими картами. На примере работы клиринговой системы ПС «Мир» рассмотрим, что делается, чтобы справляться с регулярно возрастающей нагрузкой. В частности, разберём, какие используются технологии и архитектурные решения.
Меня зовут Наталья Азисова, я product owner клиринговой системы в ПС «Мир». Каждое утро вторника я думаю о том, какой суперсрочной задачей нагрузить разработку, а к вечеру — как отложить её на пару месяцев. Спасает меня от праведного гнева разработки только то, что делаю я это со стилем.
Итак, что такое клиринг, как он работает и реализован на примере платежной системы «Мир» - читайте под катом.