All streams
Search
Write a publication
Pull to refresh
137
10.8

Редактор

Send message

Ликбез по UseCase’ам Android: от базовых реализаций до мультипровайдерных и многомодульных систем — Часть 2

Level of difficultyEasy
Reading time15 min
Views1.7K

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

Читать далее

Как перестать бояться кодировок в Java — лайфхак для новичков

Reading time5 min
Views4.4K

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

Читать далее

Ликбез по UseCase’ам Android: от базовых реализаций до мультипровайдерных и многомодульных систем — Часть 1

Level of difficultyEasy
Reading time19 min
Views3.2K

Чистая архитектура — не просто модный термин, а способ держать код в узде по мере роста Android-приложения. В этой статье — подробный разбор того, как выстроить работу с UseCase’ами: от базовой интеграции в ViewModel до сложных кейсов с несколькими провайдерами и платежными системами. Разберёмся, как применять принципы SOLID на практике, не скатываясь в оверинжиниринг — и при этом не жертвовать гибкостью архитектуры.

Читать далее

Задержки и системная архитектура

Level of difficultyEasy
Reading time17 min
Views2.8K

Много JavaScript‑фреймворков назад, в 2009 году, Джеффри Дин, будучи инженером в Google, представил знаменитые «числа, которые должен знать каждый программист».

Читать далее

45 открытых уроков июля: возможности роста для каждого

Reading time3 min
Views3.3K

Привет, хабровчане. В этом дайджесте делимся подборкой открытых уроков, которые проведут преподаватели OTUS в рамках набора на онлайн-курсы в июле. В программе — от глубоких погружений в архитектуру DWH и сетевые протоколы до навыков работы с ML-моделями и DevOps. Каждый урок — возможность разобраться в ключевых аспектах IT-сферы, задать вопросы экспертам и закрыть пробелы в знаниях.

Все уроки бесплатны и проводятся онлайн — участие доступно каждому. Выбирайте интересную вам тему и записывайтесь по ссылкам ниже.

Читать далее

Создаем плагин с генеративным ИИ для Unreal Engine на C++ (офлайн и онлайн версии)

Level of difficultyEasy
Reading time19 min
Views2.8K

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

Читать далее

Как строить ИТ-инфраструктуру: лучшие практики и обучающие ресурсы

Reading time4 min
Views5K

Привет, Хабр. В этом дайджесте мы собрали обучающие материалы по ИТ‑инфраструктуре — чтобы вы могли получить нужные знания точечно или системно и перенять лучшие практики от экспертов индустрии, так сказать, не отходя от станка. Без долгих предисловий, перейдём к делу.

Читать далее

Последовательность Фибоначчи в составах команд главных героев

Level of difficultyEasy
Reading time15 min
Views1.5K

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

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

Читать далее

WaveManager: Реализуем систему управления волнами врагов в Unity

Level of difficultyEasy
Reading time13 min
Views1.3K

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

Читать далее

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

Level of difficultyEasy
Reading time20 min
Views6.4K

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

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

Читать далее

5 техник, применяемых в анализе временных рядов, которые должен знать каждый. Часть 1

Level of difficultyEasy
Reading time9 min
Views7.2K

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

Читать далее

FHRP: Надежный шлюз в мире нестабильных сетей

Reading time10 min
Views2K

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

Читать далее

5 техник, применяемых в анализе временных рядов, которые должен знать каждый. Часть 2

Level of difficultyEasy
Reading time15 min
Views7K

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

В этом разделе мы рассмотрим некоторые из наиболее эффективных методов.

Читать далее

Model Serving в 9 раз быстрее! И никакой замены оборудования

Level of difficultyMedium
Reading time14 min
Views910

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

В этой статье мы рассмотрим различные model serving стратегии и узнаем о технологиях, способных значительно повысить их эффективность. Мы рассмотрим три варианта организации model serving системы и сравним их производительность. Наша реализация будет ориентирована на инференс с помощью ЦП, но те же самые концепции могут быть применены и к ГП, поскольку предлагаемые здесь технологии (ONNX Runtime) поддерживают различные аппаратные платформы, включая графические и нейропроцессоры.

Читать далее

Хорошая девушка LoRA! А чем же она хороша?

Reading time10 min
Views1.8K

Поговорим об методике дообучения LLM… спортсменке, комсомолке и просто красавице — LoRA, которая если и не снимается в кино, то может сделать фильмы качественней и интереснее для зрителя. Исторические данные проката и состава творческих групп в перспективе позволяют работать с ансамблевыми моделями машинного обучения для прогнозирования сборов и просмотров в кино, и улучшать данные и путем их подбора «гиперпараметров» фильма. Но для работы со смыслами, идеями и описаниями кинопроектов нужна более эффективная методика, позволяющая оценивать творческий замысел и основные идеи хотя бы на уровне аннотации — краткого синопсиса. И здесь уже не обойтись без больших языковых моделей.

Читать далее

Создаём свой Telegram-клон с помощью Next.js и TailwindCSS — Часть 1

Level of difficultyEasy
Reading time51 min
Views5.7K

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

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

Читать далее

ZLinq — Zero-Allocation LINQ-библиотека для.NET

Level of difficultyHard
Reading time20 min
Views6.6K

В прошлом месяце я зарелизил ZLinq v1 — революционную LINQ-библиотеку, которая достигает zero allocation на структурах и дженериках. Она может похвастаться такими расширениями, как LINQ to Span, LINQ to SIMD, LINQ to Tree (FileSystem, JSON, GameObject и т.д.), drop-in replacement Source Generator для произвольных типов, поддержкой нескольких платформ, включая .NET Standard 2.0, Unity и Godot и на данный момент ZLinq имеет более 2000 звезд на GitHub.

Читать далее

Оценка ценовой эластичности спроса продуктов с помощью байесовского иерархического моделирования

Level of difficultyHard
Reading time33 min
Views1.3K

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

Читать далее

Какую архитектуру данных мне выбрать? — Подход Data-инженера. Часть 2

Level of difficultyEasy
Reading time10 min
Views3K

Какую архитектуру данных выбрать, когда на горизонте — Data Warehouse, Data Lake, Lakehouse и Mesh, а проект требует гибкости, отчетности и масштабируемости? В этой статье — практический разбор подходов с позиций data-инженера. Рассматриваем плюсы и ограничения каждого варианта, углубляемся в архитектуры Инмона, Кимбалла, Data Vault и медальонную модель, а также разбираемся, где граница между аналитическими целями и технической реализацией.

Читать далее

54 открытых урока июня: от ML до микросервисов

Reading time3 min
Views3.3K

Собрали для вас подборку открытых уроков, которые пройдут в рамках онлайн-курсов OTUS в июне. В программе — всё: от кластеризации и CI/CD до системного анализа и тимлидства. Каждое мероприятие — это возможность разобраться в новой теме, задать вопросы экспертам и понять, подходит ли вам выбранное направление.

Все уроки бесплатны и проводятся онлайн — участие доступно каждому. Выбирайте интересную вам тему и записывайтесь по ссылкам ниже.

Читать далее

Information

Rating
627-th
Location
Россия
Works in
Registered
Activity