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
iOS at Artsy
Search
Orta
August 21, 2014
Programming
0
1k
iOS at Artsy
an expansion from On Getting Eigen out. Performed at iOS Brooklyn
Orta
August 21, 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
150
TypeScript: From the Outside In
orta
0
210
React Native, 2 years later
orta
4
2.3k
[WIP] React Native 2 years on
orta
0
220
TSConfig - the keys you need to know
orta
1
160
We try!'d Swift
orta
0
160
Building Outside of the Sandbox
orta
0
170
Danger in 15m
orta
1
550
Injection, or Controlling your Tools
orta
0
160
Other Decks in Programming
See All in Programming
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
140
GitHub Copilotを使いこなせ!/mastering_github_copilot!
kotakageyama
2
760
AkarengaLT vol.38
hashimoto_kei
1
130
PyCon mini 東海 2025「個人ではじめるマルチAIエージェント入門 〜LangChain × LangGraphでアイデアを形にするステップ〜」
komofr
3
470
外接に惑わされない自システムの処理時間SLIをOpenTelemetryで実現した話
kotaro7750
0
180
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
250
ボトムアップの生成AI活用を推進する社内AIエージェント開発
aku11i
0
1.5k
Blazing Fast UI Development with Compose Hot Reload (Bangladesh KUG, October 2025)
zsmb
2
460
TransformerからMCPまで(現代AIを理解するための羅針盤)
mickey_kubo
7
6k
フロントエンド開発のためのブラウザ組み込みAI入門
masashi
7
3.7k
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
330
Making Angular Apps Smarter with Generative AI: Local and Offline-capable
christianliebel
PRO
0
110
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
8k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
4 Signs Your Business is Dying
shpigford
186
22k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
Transcript
iOS at Artsy August 21, 2014 | Orta Therox @orta
The Objective-C Dependency Manager
None
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.” “
What is Artsy? • Seed: 1.25MM$ November 2010 • Series
A: 6MM$ November 2011 • Series B: 18MM$ April 2014 • 65 Team Members • 15 Developers
What is Artsy? • 250,000+ registered users • 150,000+ artworks
• 32,000+ artists • 2,500+ partners
What is Artsy for most Users?
What is Artsy for galleries?
What is Artsy for Fairs?
What is Artsy for Institutions?
What is Artsy for Collectors?
Bright/Vivid Human figure Black & White Patterns Highly Detailed Monochromatic
Flatness Landscape
None
None
Thinking time
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 want to get
alerts about things happening
Process
Release Process Team of 2 Regular Daily Betas External QA
Team Manual Testing
Things we learned
Hybrid Application • Don’t try to be everything
View Controllers One controller to show artwork collections Different Layouts
Different Cells
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
Automated Testing
Books
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
Continuous Integration
Continuous Integration Caching
View Controller Tests for Non-Trivial Interactions
View Controller Tests
View Controller Tests
View Controller Tests
View Controller Tests
Future
Eidolon
Eidolon
A Swift Start
A Swift Start
Thanks @orta