Page 1
Can’t Handle My Scale@MicheleTitolo
Page 6
Dozens of sub projects?
Page 7
You have a dependency problem
Page 8
this doesn’t mean everything has to be shared
Page 9
Create internal libraries with care
Page 10
version, version, version
Page 16
Any code you add, you will need to maintain
Page 19
Establish your conventions
Page 20
Enforce your conventions
Page 23
Users expect apps from the same companies to be similar
Page 35
Our tools aren’t the best
Page 36
Falling back to patching base and 3-way merge... Auto-merging MyApp.xcodeproj/project.pbxproj CONFLICT (content): Merge conflict in MyApp.xcodeproj/project.pbxproj Failed to merge in the changes. Patch failed at 0037 Launch screen images update The copy of the patch that failed is found in: /tmp/git/.git/rebase-apply/patch
Page 38
via textfromxcode.com
Page 41
Identify collision points
Page 42
Architecture discussions
Page 44
via twitter
What we say What we meanObscure Someone else’s code doesn’t have commentsSelf-Documenting My code doesn’t have comments
Page 45
Be aware of (unknown) dependencies
Page 48
Help or hinderance?
Page 49
Our work needs to be structured
Page 50
Managers should help
Page 52
If they won’t help, they will hinder
Page 54
Going viral is great
Page 55
…but can you handle it?
Page 56
0
125
250
375
500
April May June July Untitled 1 Untitled 2 Untitled 3
Time
Page 57
0
100
200
300
400
April May June July Untitled 1 Untitled 2 Untitled 3
Time
Page 59
The larger your userbase, the more crashes will happen
Page 60
Software isn’t perfect
Page 61
Goal: limit crashes
Page 62
Goal: recover from non-fatal errors
Page 68
If your servers crash…
Page 69
…how is that different than offline mode?
Page 70
If possible, be ready for heavy traffic
Page 71
Be ready for traffic at different times
Page 75
Many services charge per user
Page 77
Make sure you can afford a service
Page 78
Services also tend to have caps
Page 79
0
100
200
300
400
April May June July Untitled 1 Untitled 2 Untitled 3
Time
Page 80
Make sure they won’t disappear (or start lying)
Page 82
Expect ~10% of your users to contact you
Page 88
Users like knowing they are heard
Page 89
Someone needs to verify their reported bugs
Page 91
The more obvious the bug, the more you will hear about it
Page 94
Scale isn’t all bad
Page 95
Scale means you’re succeeding
Page 96
Scale means you’re having an impact
Page 97
These are ultimately good problems to have
Page 98
Thanks@MicheleTitolo
[email protected] • reddit.com/jobs