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
Don't be "an Objective-C" or "a Swift Developer"
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Bryan Irace
August 29, 2014
Technology
880
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Don't be "an Objective-C" or "a Swift Developer"
Slides from A Swift Start (
http://aswiftstart.com
), given at The Flatiron School on 8/29/2014
Bryan Irace
August 29, 2014
More Decks by Bryan Irace
See All by Bryan Irace
Practical iOS application modularity
irace
1
720
iOS at Tumblr
irace
2
1.6k
Building Tumblr for iOS
irace
0
750
Modularity in mobile applications
irace
0
160
When the iOS SDK says “Jump,” ask “How High?”
irace
7
1.5k
Tumblr iOS architecture
irace
5
670
Node.js for mobile developers
irace
1
190
Introduction to Objective-C and Cocoa Touch
irace
7
820
Building apps that play nicely with other apps
irace
1
460
Other Decks in Technology
See All in Technology
AI驚き屋発見器
yama3133
1
390
「休む」重要さ
smt7174
7
1.8k
Claude Mythos、Fable...フロンティアAIの最新動向と企業のセキュリティ対策
flatt_security
0
170
人手不足への挑戦:車両保全を支えるIoTとクラウド内製化の道【SORACOM Discovery 2026】
soracom
PRO
0
170
実践が先生だった— 新卒サーバーエンジニア1年目のリアル
mixi_engineers
PRO
0
210
LLMリーダーボードアップデートに向けたAgentic Math_SWEのトレースについて
nejumi
0
160
AIエージェントの知識表現と推論に なぜグラフが使われるのか - 記号的AIの復権とニューラルAIとの統合
yohei1126
1
230
新しい SLO が良い感じにハマっている話
z63d
1
1k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
53k
PLaMo 3.0 Primeの事後学習
pfn
PRO
0
200
Claude Code並行開発環境の ムダ‧ムラ‧ムリを見直した話
muranakaaa
0
350
システム監視入門
grimoh
5
770
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
560
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
400
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
230
Unsuck your backbone
ammeep
672
58k
A designer walks into a library…
pauljervisheath
211
24k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.5k
Automating Front-end Workflow
addyosmani
1370
210k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
620
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
640
Transcript
DON'T BE "AN OBJECTIVE-C" or "A SWIFT DEVELOPER" BRYAN IRACE
AUGUST 29, 2014
BE A SOFTWARE DEVELOPER
BEING A GREAT DEVELOPER MEANS BEING A GREAT PROBLEM SOLVER
BEING A GREAT PROBLEM SOLVER MEANS DRAWING FROM VARIED EXPERIENCE
"We need to reach that happy stage of our development
when differences and diversity are not seen as sources of division and distrust, but of strength and inspiration." ▸ Josefa Iloilo
var stooges = [{ name: 'curly', age: 25 }, {
name: 'moe', age: 21 }, { name: 'larry', age: 23 }]; var youngest = _.chain(stooges) .sortBy(function (stooge) { return stooge.age; }) .map(function (stooge) { return stooge.name + ' is ' + stooge.age; }) .first() .value();
[[[stooges sortedArrayUsingDescriptors: @[[NSSortDescriptor sortDescriptorWithKey:@"age" ascending:YES]]] transformedArrayUsingBlock:^NSString *(NSDictionary *stooge) { return
[NSString stringWithFormat:@"%@ is %@", stooge[@"name"], stooge[@"age"]]; }] firstObject];
YES, IT'S UGLY BUT THE BENEFITS ARE ALL STILL THERE
"Header files are the only good way to manage code
visibility"
"Of course you should always use methods instead of functions"
"Generics? Don't need 'em"
YOUR FAVORITE PROGRAMMING LANGUAGE IS AN IMPLEMENTATION DETAIL
None
WHAT I'M NOT SAYING: YOU'RE SCREWED IF YOU ONLY KNOW
OBJECTIVE-C
STRONG OPINIONS WEAKLY HELD
"What would you change about Objective-C?"
"One of the biggest constants in software development: the unerring
sense among developers that the level of abstraction they're currently working at is exactly the right one for the task at hand." ▸ John Siracusa, Copland 2010 revisited
None
"If I start using it now, I can provide feedback,
and that feedback will help shape the programming language that I’m likely to use for the rest of my career. ▸ Brent Simmons
"Maybe I’ll have a ton of feedback, and maybe I’ll
have none — but I’d sure hate to have missed my chance to help."
YOU CAN'T ASK FOR WHAT YOU DON'T KNOW THAT YOU'RE
MISSING
THANK YOU @IRACE