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
Getting Eigen Out
Search
Orta
April 28, 2014
Programming
3
1.2k
Getting Eigen Out
A post-mortem of the Artsy iOS app release. Presented at the Istanbul Tech Talks 2014.
Orta
April 28, 2014
Tweet
Share
More Decks by Orta
See All by Orta
How Does the TypeScript Team Try to Avoid Negative Effects on the JS Ecosystem
orta
0
130
TypeScript: From the Outside In
orta
0
200
React Native, 2 years later
orta
4
2.3k
[WIP] React Native 2 years on
orta
0
210
TSConfig - the keys you need to know
orta
1
160
We try!'d Swift
orta
0
150
Building Outside of the Sandbox
orta
0
160
Danger in 15m
orta
1
520
Injection, or Controlling your Tools
orta
0
150
Other Decks in Programming
See All in Programming
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
140
Quand Symfony, ApiPlatform, OpenAI et LangChain s'allient pour exploiter vos PDF : de la théorie à la production…
ahmedbhs123
0
130
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
530
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
490
Flutterで備える!Accessibility Nutrition Labels完全ガイド
yuukiw00w
0
140
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
140
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
220
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
5つのアンチパターンから学ぶLT設計
narihara
1
150
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
21
3.9k
XP, Testing and ninja testing
m_seki
3
220
Featured
See All Featured
Practical Orchestrator
shlominoach
188
11k
Speed Design
sergeychernyshev
32
1k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
KATA
mclloyd
30
14k
4 Signs Your Business is Dying
shpigford
184
22k
It's Worth the Effort
3n
185
28k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Gamification - CAS2011
davidbonilla
81
5.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Transcript
Getting Eigen Out April 28, 2014 | Orta Therox @orta
The Objective-C Dependency Manager
WWDC iOS7
What is Artsy? The start-up Art.sy aims to do for
visual art what Pandora did for music: become a source of discovery, pleasure and education.” “
Bright/Vivid Human figure Black & White Patterns Highly Detailed Monochromatic
Flatness Landscape
None
None
None
None
4 types of mobile experience • I know what I'm
looking for
4 types of mobile experience • I've got free time,
entertain me
4 types of mobile experience • I've got a rough
idea what I'm looking for
4 types of mobile experience • I want to get
alerts about things happening
Hybrid Application • Don’t try to be everything
Process
Release Process Regular Daily Betas External QA Team
None
None
Things we learned
View Controllers One controller to show artworks Many layouts
Reveal
Social Media Login First
CocoaPods
In App Routing
None
Dev Mode View Controllers Caption Text
Dev Mode View Controllers
Debug Menu Easy access to build settings Lab settings for
development tests Offline mode
Debug Menu Easy access to build settings Lab settings for
development tests Offline mode
Post Release
ASCII
ORStackView
ORStackView
Caption Text LOTS OF STACKVIEWS
Testing
Books
Continuous Integration
Tests target 'Artsy Tests', :exclusive => true do pod 'Specta',
'~> 0.2.1' pod 'Expecta', '~> 0.2.3' pod 'OCMock', '~> 2.2.2' pod 'OHHTTPStubs', '~> 3.0.4’ ! pod 'FBSnapshotTestCase', '1.1' pod 'EXPMatchers+FBSnapshotTest', :head pod 'XCTest+OHHTTPStubSuiteCleanUp' end
View Controller Tests
View Controller Tests
View Controller Tests for Non-Trivial Interactions
THANKS @orta
Q&A Design / Release / Lessons / Post Release /
Testing / Sneaky CocoaPods Questions @orta