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
Working With Other People's Code
Search
Samuel E. Giddins
August 29, 2014
Programming
4
120
Working With Other People's Code
Samuel E. Giddins
August 29, 2014
Tweet
Share
More Decks by Samuel E. Giddins
See All by Samuel E. Giddins
The Challenges of Building a Sigstore Client from Scratch
segiddins
0
50
Keeping the Gems Sparkling
segiddins
0
37
A Survey of RubyGems CVEs
segiddins
0
40
Handling 225k requests per second to RubyGems.org
segiddins
0
68
State of the RubyGems 2023
segiddins
0
99
Building Broken Gems
segiddins
0
71
Switching Disciplines as a Tech Lead
segiddins
0
39
Source Code to Executable
segiddins
0
77
Empowering iOS Developers
segiddins
1
81
Other Decks in Programming
See All in Programming
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
820
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
760
A2A プロトコルを試してみる
azukiazusa1
2
730
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
170
セキュリティマネジャー廃止とクラウドネイティブ型サンドボックス活用
kazumura
1
190
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
380
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
從零到一:搭建你的第一個 Observability 平台
blueswen
1
960
エンジニア向け採用ピッチ資料
inusan
0
140
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
360
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
220
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
1.9k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
159
23k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Bash Introduction
62gerente
614
210k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.6k
Speed Design
sergeychernyshev
31
1k
Music & Morning Musume
bryan
46
6.6k
The Language of Interfaces
destraynor
158
25k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
700
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Transcript
Make It Yours Working With Other People's Code For The
First Time Samuel E. Giddins
My Story • First app: November 2012 — Clickr •
First job: March 2013 — Slader • First OSS contribution: May 2013 — RestKit • Now: Tumblr + CocoaPods
Day One • Ask questions • Technical • Business •
Explore • Fix something
It's not about the orientation or onboarding
The First Bugfix This will be the smallest and most
insignificant commit you will ever make to the project.
It will also lead the way to all the other
commits. Don't be scared. Don't be reverant. Show 'em who's boss.
The First Bugfix • Defined problem • Easily evaluated goal
• User-facing
Geometry Book Always goes to same page Pages with letters
can't be searched for
Made search case-insensitive if ([aPage.name isEqualToString:aPageNumber]) { if ([[aPage.name lowercaseString]
isEqualToString:[aPageNumber lowercaseString]]) {
Stopped assuming that the last page had the highest intVal
NSInteger maxIndex = [[pages[pages.count -1] name] intValue]; NSInteger maxIndex = NSIntegerMax;
The First Feature
• Easy to see • Little code • Big impact
To Refactor or Not To Refactor That is the wrong
question
• Project organization • Coding style • Pods
Make it perfect Make it work, then make it pretty
Be modular It's always good Lets you be you
Don't assume There's always a story
Be compassionate
Learn from the code (Especially if you think it's bad)
• Bugs • Improvements • Code niceties • Features
Figure out what's in your way
Get it out of your way* *Only if it's worth
it
The most important single aspect of software development is to
be clear about what you are trying to build. — Bjarne Stroustrup
We have to stop optimizing for programmers and start optimizing
for users. — Jeff Atwood
There are tools to help • AppCode • ClangFormat •
CocoaPods • lldb • Reveal • XCTest (seriously) • The Internet
Take ownership
By shipping, it becomes yours
Own Your App
Go Get 'Em
Samuel E. Giddins @segiddins segiddins.me github.com/segiddins