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
830
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
640
iOS at Tumblr
irace
2
1.5k
Building Tumblr for iOS
irace
0
670
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
150
Introduction to Objective-C and Cocoa Touch
irace
7
700
Building apps that play nicely with other apps
irace
1
380
Other Decks in Technology
See All in Technology
kintone開発組織のDevOpsへの移り変わりと実践
ueokande
1
130
MCP で繋ぐ Figma とデザインシステム〜LLM を使った UI 実装のリアル〜
kimuson
2
1.3k
Houtou.pm #1
papix
0
670
Javaアプリケーションの配布とパッケージング / Distribution and packaging of Java applications
hogelog
1
270
CloudBruteによる外部からのS3バケットの探索・公開の発見について / 20250605 Kumiko Hennmi
shift_evolve
3
200
Scale Security Programs with Scorecarding
ramimac
0
440
大事なのは、AIの精度だけじゃない!〜1円のズレも許されない経理領域とAI〜
jun_nemoto
11
5.2k
What's Next in OpenShift Q2 CY2025
redhatlivestreaming
1
830
Java 30周年記念! Javaの30年をふりかえる
skrb
2
1.3k
libsyncrpcってなに?
uhyo
0
160
TypeScript と歩む OpenAPI の discriminator / OpenAPI discriminator with TypeScript
kaminashi
1
150
ITエンジニアを取り巻く環境とキャリアパス / A career path for Japanese IT engineers
takatama
4
1.5k
Featured
See All Featured
Navigating Team Friction
lara
186
15k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Building Applications with DynamoDB
mza
95
6.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
What's in a price? How to price your products and services
michaelherold
245
12k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.3k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The World Runs on Bad Software
bkeepers
PRO
68
11k
YesSQL, Process and Tooling at Scale
rocio
172
14k
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