Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Don't be "an Objective-C" or "a Swift Developer"
Search
Bryan Irace
August 29, 2014
Technology
900
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
740
iOS at Tumblr
irace
2
1.6k
Building Tumblr for iOS
irace
0
760
Modularity in mobile applications
irace
0
170
When the iOS SDK says “Jump,” ask “How High?”
irace
7
1.5k
Tumblr iOS architecture
irace
5
690
Node.js for mobile developers
irace
1
200
Introduction to Objective-C and Cocoa Touch
irace
7
840
Building apps that play nicely with other apps
irace
1
470
Other Decks in Technology
See All in Technology
Browser Spec: Testing Hotwire with Ruby
takahashim
1
130
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
4
630
二歩目のフロントエンド・ウェブアクセシビリティ
camiha
2
690
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
350
CloudWatch Logsのコスト最適化:どこまでAIに任せてどこから人間が承認すべきか
yama3133
0
120
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
200
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
360
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
230
僕のハーネスを紹介します
watany
3
770
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.4k
React改造してみた
tsukina_7mochi
0
140
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
210
Featured
See All Featured
First, design no harm
axbom
PRO
2
1.3k
Are puppies a ranking factor?
jonoalderson
2
4.1k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Product Roadmaps are Hard
iamctodd
55
13k
Accessibility Awareness
sabderemane
1
250
Embracing the Ebb and Flow
colly
88
5.2k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
We Have a Design System, Now What?
morganepeng
55
8.4k
A Tale of Four Properties
chriscoyier
163
24k
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