Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
The Passion of Lazy - Enterprise Mobile App Des...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Patrick Seda
February 17, 2016
Technology
0
2.2k
The Passion of Lazy - Enterprise Mobile App Design Patterns
Patrick Seda
February 17, 2016
Tweet
Share
More Decks by Patrick Seda
See All by Patrick Seda
The API of Your Company Culture
pxtrick
3
980
Lightning Talk - Enhancing Vue and Vuex for Complex Application State
pxtrick
1
1.2k
Swift - Beyond Beginner
pxtrick
0
1.3k
Crossing the Chasm of Swift
pxtrick
0
1.4k
Architecting Your Project with a Finite-State Machine
pxtrick
1
2.2k
Your Code is Terrible (I Love It!)
pxtrick
0
1.2k
An Introduction to Location-Based Technologies (for Business & Marketing)
pxtrick
0
600
10 Tips for Kickass Enterprise Mobile Apps
pxtrick
0
1k
Making Mobile Games (A presentation for the Girl Scouts)
pxtrick
1
700
Other Decks in Technology
See All in Technology
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
780
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
5
560
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
340
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
210
OpenShiftでllm-dを動かそう!
jpishikawa
0
140
SREじゃなかった僕らがenablingを通じて「SRE実践者」になるまでのリアル / SRE Kaigi 2026
aeonpeople
6
2.6k
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
140
Cosmos World Foundation Model Platform for Physical AI
takmin
0
990
Agile Leadership Summit Keynote 2026
m_seki
1
680
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
370
Prox Industries株式会社 会社紹介資料
proxindustries
0
100
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
160
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.1k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
79
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
460
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
110
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
230
We Are The Robots
honzajavorek
0
170
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
440
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
430
Transcript
Enterprise Mobile App Design Patterns The Passion of Lazy DEVNEXUS
Atlanta – February 17, 2016
Patrick Seda @pxtrick • Independent Mobile App Architect • 25+
Years as a Software Professional • 6+ Years in Mobile Development • Apps: Enterprise to Children’s games
Agenda: - Discuss my “Laziness” - 8 Design Patterns -
Call to action
The longer I work on this <Project> ... The less
effort I Want to spend “Lazy”
The Passion of Lazy Quality
Additional Notes and Illustrations Design Excellence Patrick Seda Defining Moment
(number 1) January 15, 1990: Crash of the entire AT&T long-distance network
Additional Notes and Illustrations Design Excellence Patrick Seda Defining Moment
(number 2)
Additional Notes and Illustrations Design Excellence Patrick Seda Design Patterns
Additional Notes and Illustrations Design Excellence Patrick Seda Christopher Alexander
PATTERN NAME: Solution: Motivation: Lean Mobile Data Monstrous legacy data
Create new endpoints specifically targeting your EXACT mobile needs
Additional Notes and Illustrations Design Excellence Patrick Seda Lean Mobile
Data Legacy Web Service Application Context UI for data presentation Data /endpoint
Additional Notes and Illustrations Design Excellence Patrick Seda Lean Mobile
Data IMPROVED Web Service Application Context /endpoint UI for data presentation /endpoint2 Data
PATTERN NAME: Solution: Motivation: App Defines Api Impedance mismatch with
data Define the structure the app wants, then write the API to match
Additional Notes and Illustrations Design Excellence Patrick Seda App Defines
API IMPROVED Web Service Application Context /endpoint UI for data presentation /endpoint2 Data Defined by the app
PATTERN NAME: Solution: Motivation: Decoupled Navigation Complex navigation Buttons become
stupid, delegate all behavior to a mediating controller
PATTERN NAME: Solution: Motivation: Datasource Strategies Swappable data sources Hide
data sources behind proxy objects, each of which is a swappable Strategy
Additional Notes and Illustrations Design Excellence Patrick Seda Datasource Strategies
Application Context HTTP / XHR Web Service WS Proxy Mock WS Proxy Mock Data Speakers Processing & UI Render /speakers getSpeakers() getSpeakers()
PATTERN NAME: Solution: Motivation: Tap Mutex Deviations from intended UX
Prevent users from misusing the UI by disallowing asynchronous events
Additional Notes and Illustrations Design Excellence Patrick Seda Tap Mutex
Speakers Speaker Details Application Context Assemble, Create, & Render Navigation Callback
PATTERN NAME: Solution: Motivation: No Harsh Waiting Inconsistent wait times
Don’t allow activity indicators to exist for short durations, set a minimum lifetime
PATTERN NAME: Solution: Motivation: Client-side Session An app is not
a website Introduce a session timeout within the app, track UI interaction, not server hits
PATTERN NAME: Solution: Motivation: Lifecycle Gatekeeper OS doesn’t understand your
app Provide a single entry point for app state events, define dispatch behavior
Additional Notes and Illustrations Design Excellence Patrick Seda Lifecycle Gatekeeper
iOS Android
Additional Notes and Illustrations Design Excellence Patrick Seda Lifecycle Gatekeeper
PAUSE Handler RESUME Handler Application Context OS – App State Machine RESUME Handler Lifecycle Gatekeeper RESUME
The Passion of Lazy Quality
Call To Action
DEVNEXUS Atlanta – February 17, 2016 Thank You
Patrick Seda @pxtrick
[email protected]
linkedin.com/in/patrickseda speakerdeck.com/pxtrick