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
14
Keeping the Gems Sparkling
segiddins
0
12
A Survey of RubyGems CVEs
segiddins
0
30
Handling 225k requests per second to RubyGems.org
segiddins
0
58
State of the RubyGems 2023
segiddins
0
91
Building Broken Gems
segiddins
0
60
Switching Disciplines as a Tech Lead
segiddins
0
37
Source Code to Executable
segiddins
0
73
Empowering iOS Developers
segiddins
1
71
Other Decks in Programming
See All in Programming
Grafana Cloudとソラカメ
devoc
0
140
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
120
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
4
1.3k
SpringBoot3.4の構造化ログ #kanjava
irof
2
980
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
240
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
5
3.9k
2024年のWebフロントエンドのふりかえりと2025年
sakito
1
240
Open source software: how to live long and go far
gaelvaroquaux
0
630
技術を根付かせる / How to make technology take root
kubode
1
240
Amazon Bedrock Multi Agentsを試してきた
tm2
1
280
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
The Invisible Side of Design
smashingmag
299
50k
How to Ace a Technical Interview
jacobian
276
23k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
A Philosophy of Restraint
colly
203
16k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Why Our Code Smells
bkeepers
PRO
336
57k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
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