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
Bryan Irace
August 29, 2014
Technology
5
840
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
Tweet
Share
More Decks by Bryan Irace
See All by Bryan Irace
Practical iOS application modularity
irace
1
650
iOS at Tumblr
irace
2
1.5k
Building Tumblr for iOS
irace
0
680
Modularity in mobile applications
irace
0
140
When the iOS SDK says “Jump,” ask “How High?”
irace
7
1.4k
Tumblr iOS architecture
irace
5
580
Node.js for mobile developers
irace
1
160
Introduction to Objective-C and Cocoa Touch
irace
7
720
Building apps that play nicely with other apps
irace
1
390
Other Decks in Technology
See All in Technology
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
LLM拡張解体新書/llm-extension-deep-dive
oracle4engineer
PRO
24
6.9k
20250708オープンエンドな探索と知識発見
sakana_ai
PRO
5
1.1k
Frontier Airlines Customer®️ USA Contact Numbers: Complete 2025 Support Guide
frontierairlineswithflyagent
0
100
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
19
7.7k
ABEMAの本番環境負荷試験への挑戦
mk2taiga
5
1.3k
Microsoft Fabric ガバナンス設計の一歩目を考える
ryomaru0825
1
120
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
0
300
CDKコード品質UP!ナイスな自作コンストラクタを作るための便利インターフェース
harukasakihara
2
250
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
6.9k
全部AI、全員Cursor、ドキュメント駆動開発 〜DevinやGeminiも添えて〜
rinchsan
10
5.3k
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
1k
Featured
See All Featured
Designing for Performance
lara
610
69k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
The Cult of Friendly URLs
andyhume
79
6.5k
Embracing the Ebb and Flow
colly
86
4.8k
Agile that works and the tools we love
rasmusluckow
329
21k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Unsuck your backbone
ammeep
671
58k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Fireside Chat
paigeccino
37
3.5k
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