Mobius 2024 Autumn
2024-10-11..2024-10-20
-- online --
Mobius ·
[Mobius 2017 Piter, Mobius 2017 Moscow, Mobius 2018 Piter, Mobius 2018 Moscow, Mobius 2020 Piter, Mobius 2020 Moscow, Mobius 2021 Moscow, Mobius 2022 Autumn, Mobius 2023 Autumn, Mobius 2024 Spring, Mobius 2024 Autumn, Mobius 2025 Spring]
as the organisers put it
Mobius 2024 Autumn. Russia’s only profile IT conference for mobile application developers. Android, iOS, Flutter, Kotlin Multiplatform, cross-platform development — in dozens of talks, workshops and discussions.
| title | author | length |
|---|---|---|
| Opening | Kirill Popov, Timur Gasymov | 14m |
Hosts Kirill Popov and Timur Gasymov introduce the Mobius 2024 Autumn conference, outline the schedule and sessions, and share practical information for… | ||
| Building a Superapp from Scratch | Sergey Balalaev | 46m |
A small team built a simple mobile app from scratch and integrated it into an existing superapp quickly; the talk covers architecture choices focused on… | ||
| Not Just Two Bytes: Emulating Contactless Cards on Mobile Devices | Pavel Vasilev | 45m |
Explains using a phone's NFC interface to emulate contactless cards, demonstrating the byte-level transmission of a real payload between two smartphones… | ||
| Kotlin in GitHub Actions: Broadening KMP Horizons | Maksim Kachinkin | 44m |
Shows how to write GitHub Actions using Kotlin/JS by targeting Kotlin Multiplatform’s JavaScript output so Actions can be authored in Kotlin instead of… | ||
| Entrepreneurship for Engineers: How to Launch Your Own Company | Evgeniy Matsyuk | 38m |
Practical guidance for engineers who want to start their own company: how to choose a business idea (finding a “blue ocean”), the first concrete steps to take… | ||
| From Modularization to Clang and Back | Roman Gorbenko | 43m |
A Yandex Travel team’s method for modularizing large Swift projects: they visualize and analyze project structure to split code into modules with minimal… | ||
| How Kotlin Multiplatform Changed Our Processes | Danil Perevalov | 45m |
Kotlin Multiplatform (KMP) integration forced changes to mobile teams’ workflows and their collaboration patterns; the talk focuses on process changes rather… | ||
| Modo in Action: Fast and Flexible Navigation for Jetpack Compose | Yhor Karenkov | 46m |
Introduces Modo, a minimalist navigation library for Jetpack Compose, and shows how to integrate it into a project, set up screens, and use its APIs and core… | ||
| How to Swap Call Engine in Legacy Code and Not Burn Out | Vladislav Kozhushko | 33m |
Describes migrating legacy code to a new call engine used across multiple company products, including integration challenges of that engine. Outlines the… | ||
| One Build System to Rule Them All | Aleksandr Evtukhov, Maksim Vakula | 39m |
Describes how to stop hardcoding an iOS project's build description and instead implement an abstract build system with caching. The proposed system provides a… | ||
| Android Backup, or How to Save the Business Millions | Artur Ylkaev | 45m |
The talk explains using Android's little-known backup feature to store certain authorization data, as implemented by VK ID to reduce SMS costs. It covers how… | ||
| How I Stopped Being Afraid and Learned to Love the Dart Compiler | Bogdan Lukin | 46m |
A Flutter/Dart developer describes the end-to-end process from a compiler breakage to shipping fixes in a stable release, including forking Flutter, Flutter… | ||
| Wrapping Up the Online Segment | Kirill Popov, Timur Gasymov | 10m |
Hosts Kirill Popov and Timur Gasymov recap the online portion of the Mobius 2024 Autumn conference, highlighting memorable moments from the virtual program and… | ||
| Opening the Offline Program | Yuriy Dubovoy, Timur Gasymov | 16m |
An introduction to the in-person portion of the Mobius 2024 Autumn conference that outlines the schedule, session structure, and practical information for… | ||
| Mind the Memory When Using Value Types | Aleksey Taran | 44m |
The talk explains Swift’s noncopyable value types introduced in Swift 5.9 and completed with protocol and generic support in Swift 6.0, and shows how to use… | ||
| Pkl — Apple's Configuration Programming Language | Andrey Zonov | 47m |
Pkl is a configuration language developed at Apple to address limitations of JSON for static configuration. The talk explains Pkl’s features for static config… | ||
| Integrating GeckoView into a Dynamic Feature | Evgeniy Ternovoy | 32m |
A mobile developer describes integrating Mozilla’s GeckoView into an Android Dynamic Feature module, explaining why the team replaced WebView, how they… | ||
| Beware Combine! | Nikita Konashenko | 43m |
A Yandex Disk team report examines using Apple’s Combine framework as an alternative to RxSwift and for SwiftUI integration. It analyzes how Combine’s core… | ||
| Compose vs SwiftUI: Spot 10 Differences | Aleksey Panov | 45m |
Comparison of Android Jetpack Compose and Apple SwiftUI focusing on practical differences developers should know. Covers how each declarative UI framework… | ||
| Dangers on Android: Vulnerabilities and Defenses | Yuliya Stekacheva | 42m |
Overview of common Android vulnerabilities including path traversal, SQL injection, and tapjacking, with a focus on WebView issues such as incorrect input… | ||
| Jumping into KMP — But at What Cost? | Denis Aleksandrov | 45m |
The talk examines using Kotlin Multiplatform (KMP) and Compose Multiplatform in a real project: what was required to bring a multiplatform codebase up on… | ||
| How to Build a Library People Will Use | Igor Rybakov, Evgeniy Koveshnikov | 42m |
How to design a reusable library: the talk explains that when you publish a library every dependency becomes part of users’ projects, so authors must manage… | ||
| Alternatives to XCUITest, or Why and How Developers Should Write Automated Tests | Kirill Volodin | 46m |
Talk covers writing automated tests for iOS beyond XCUITest, arguing developers (not just QA) should write tests. It compares approaches including enhanced… | ||
| What's Wrong with Mobile Services on Android and iOS | Kirill Rozov | 47m |
Discusses mobile services on Android and iOS, focusing on Google Play Services and Apple’s platform services as mechanisms of control. Examines how these… | ||
| Why You Should Enable Gradle Configuration Cache | Sergey Opivalov | 46m |
Gradle configuration cache (introduced as stable in Gradle 8.1) is explained: what made it hard to implement, how it works, and the surprising build-time… | ||
| Running Apps on Your Own iOS Simulator | Denis Kudinov | 44m |
Shows how to design and implement an iOS simulator that runs iOS apps on macOS. Covers iOS app internals and the Mach-O binary format, dynamic runtime library… | ||
| Cooperation of Kotlin/Native GC and ARC on iOS | Dmitriy Kuznetsov | 45m |
Kotlin Multiplatform use on iOS mixes Swift’s ARC with Kotlin/Native’s garbage collector, so objects can move between ARC-managed and K/N GC–managed memory… | ||
| Custom Layouts in Jetpack Compose | Aleksandr Vlasyuk | 42m |
An overview of customizing layouts in Jetpack Compose: why standard documentation is sparse, how the Compose layout phase works and its limitations, and which… | ||
| Building CLI Tools in Swift | Igor Shamrin | 38m |
The talk explains building development and CI command-line tools using Swift instead of scripting languages. It describes problems with script-based tools… | ||
| Android + AI: Solving Problems Smartly | Anna Zharkova | 48m |
Practical exploration of integrating AI into Android apps using models and APIs like Google Gemini, Sber’s GigaCode, and ChatGPT. Covers concrete use cases of… | ||
| How to Write an MVP for Android If You're an iOS Developer | Ekaterina Bateeva | 35m |
An iOS developer attempts to build a minimal viable Android app to see how feasible it is without Android expertise. The talk examines using AI tools and code… | ||
| How We Built the Superapp "Dealer Online" and What Came of It | Oleg Skiryuk | 44m |
A Flutter-based case study of building a multi-module superapp called “Dealer Online,” focusing on repository structure, monorepo organization, and navigation… | ||
| Kotlin Not for Android | Aleksey Gladkov | 41m |
The talk examines using Kotlin beyond Android via Kotlin Multiplatform, focusing on building Desktop and iOS apps. It names concrete release-time problems… | ||
| The Impact of the Swift Runtime on App Performance | Kristian Benua | 40m |
Explains the Swift Runtime function swift_conformsToProtocol: what it does, why it can be slow, and how to minimize its calls. Covers concrete slow cases… | ||
| The Final Word in Android Navigation | Danil Kolesnikov | 45m |
An Android navigation talk that diagnoses why navigation remains a hard problem and presents a new, minimal command model with only two actions — open and… | ||
| Aurora OS 5 Through a Mobile Developer's Eyes: Development and Features | Denis Glazkov | 42m |
Overview of Aurora OS 5 from a mobile developer perspective: how the application lifecycle is managed by the OS and by app code, which OS-level features are… | ||
| Dancing Around the Semantics Tree: UI Testing Compose Screens | Pavel Strelchenko | 47m |
Explains how to use Google’s core UI-testing tools for Jetpack Compose, how to build a convenient testing API and organize the test codebase, and describes… | ||
| This Is Not a Game: Porting a Cross-Platform C++ Game to iOS | Andrey Filipenkov | 40m |
Porting a cross-platform C++ game to iOS: steps for getting started, issues encountered when building dependencies by hand, and moving to an almost-painless… | ||
| Tough Questions About Kotlin Coroutines | Aleksandr Girev | 43m |
Explains how Kotlin Coroutines are implemented and behave at runtime, focusing on questions like what happens to coroutines when the coroutineScope that… | ||
| How We Adapted the Project to Strict Concurrency Checking — Swift 6 | Nikita Zemlin | 45m |
Yandex.Travel's engineering team explains how they incrementally enabled Swift 6’s Strict Concurrency Checking across a large codebase, resolving warnings and… | ||
| How We Built Our SingleState Navigation Framework on Android | Oleg Dvolyatik | 42m |
An Android team replaced legacy navigation when migrating to Jetpack Compose by building a custom SingleState navigation framework. The talk explains the… | ||
| A Nervous Smoothie from the Swift Package Registry | Evgeniy Ryzhov | 45m |
Explains how a team used Swift Package Registry to package only the needed artifacts from Swift Package Manager repositories, avoiding unnecessary files and… | ||
| A Reactive Bicycle for the SDK | Aleksandr Yudin | 46m |
The talk discusses challenges of developing an Android SDK and argues that common technologies can’t be applied blindly because every design choice affects SDK… | ||
| Accessibility of Flutter Apps, or How to Increase Traffic by 20% | Samir Akhmedov | 49m |
Practical guidance on making Flutter apps accessible to users with vision, hearing and motor impairments, using Flutter accessibility tools and techniques. The… | ||
| How to Run Interviews in an Engaging and Productive Way | Maksim Sidorov | 47m |
Shows how to run technical job interviews that are both engaging and productive by transforming standard, repetitive interview questions into deeper, memorable… | ||
| A Universal Demo App | Danil Perevalov | 44m |
A team built a universal demo app that dynamically constructs its screen list from developer-selected modules, letting developers build and run the app with… | ||
| Fusion, or How We Implemented Our Version of BDUI | Aleksey Telyshev | 48m |
Presentation describes Fusion, the team's implementation of Backend-Driven UI (BDUI/SDUI). It covers practical usage, scaling Fusion within a real project, the… | ||
| Radio for Aliens | Vladimir Surdin | 49m |
Overview of current and near-future methods for contacting extraterrestrial intelligence, focusing on radio as the most promising channel: what radio… | ||
| Closing | Yuriy Dubovoy, Timur Gasymov | 10m |
A closing session that recaps the conference, highlights notable moments, and outlines future plans. Hosts Yuri Dubovoy and Timur Gasymov lead the wrap-up and… | ||
| nothing matches | ||