~/talk

Mobius-Loopy UI Architecture

Talkat droidcon Berlin 2018 · 2018-06-25..06-27· [android, frontend-architecture]
speakerdeck:pettermahlen
slides:none on file

Spotify builds a lightweight unidirectional framework called Mobius that replaces ad‑hoc presenters with a strict update function that takes immutable model + event and returns a new model plus effects, handled by separate effect handlers (examples use RXJava/Kotlin in a Mobius RX module). It enforces sequential, atomic event processing, ships with a small test library for deterministic update specs, and runs in production (six months live across a repo with 100+ Android committers and 400+ modules). Teams report much better logs, debugging and a surprising moflow modeling practice.

AI-written summary · about

  1. 0:00Welcome and introduction
  2. 1:12Why Mobius at Spotify
  3. 3:42Mobius design goals
  4. 5:07Inspiration and prior art
  5. 8:36Finite state machines in UI
  6. 10:19Model and events explained
  7. 12:03Update function walkthrough
  8. 15:41Introducing effects
  9. 18:52Effect handlers
  10. 21:19Handling effects with Rx
  11. 24:06External events and full loop
  12. 25:32Testing and utilities
  13. 27:17Mobius vs MVI comparison
  14. 31:34Production experience with Mobius
  15. 34:48Moflow and modeling flow
  16. 36:22Q&A session
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.