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
RubyMotion - How I learned to like iOS despite ...
Search
Thom Parkin
January 10, 2013
Programming
380
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RubyMotion - How I learned to like iOS despite Objective-C
First talk of the year for Orlando Ruby User Group (ORUG)
Thom Parkin
January 10, 2013
Other Decks in Programming
See All in Programming
AI × TiDD / 2026.09.05 Redmine 大阪
tokudiro
1
180
海上で動くGoサーバー: goroutineとchannelでさばく航行データストリーム
atsuki_seo
0
730
JRuby: Past, Present, and Future
headius
0
110
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
7.4k
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
1
340
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
420
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
250
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
700
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
460
新卒PdEのリアル
ryu1013
1
500
XP祭りでしか伝わらないフリップネタ #xpjug
murabayashi
0
150
Vue Fes Japan 2026 タイムテーブル徹底解説
448jp
1
250
Featured
See All Featured
Test your architecture with Archunit
thirion
2
2.4k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
A better future with KSS
kneath
240
18k
Building Adaptive Systems
keathley
44
3.2k
So, you think you're a good person
axbom
PRO
2
2.2k
Deep Space Network (abreviated)
tonyrice
0
310
My Coaching Mixtape
mlcsv
0
320
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
260
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
540
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
570
Balancing Empowerment & Direction
lara
6
1.3k
Transcript
RubyMotion How I learned to like iOS despite Objective-C
iOS Mobile Development
iOS Mobile Development Objective-C ME
Objective-C syntax is bizarre & strange Struggle with nuances of
XCode Interface Builder is very “GUI” iOS follows MVC [generally] iOS Mobile Development
iOS Mobile Development Objective - C
iOS Mobile Development Objectionable-C
Obtuse iOS Mobile Development Objectionable-C
RubyMotion ‘Toolchain for iOS’ (iPhone/iPad/iPod) NOT PhoneGap or Rhomobile Creates
statically compiled, native code Fully compliant with App Store guidelines
RubyMotion Familiar environment Ruby*, MVC Tests (MacBacon) Memory Management Ruby
Gems Rake CLI (Terminal based workflow) *still required to understand structure and syntax of Obj-C
RubyMotion Debugger (introduced in 1.24) Read-Eval-Print-Loop (REPL) Huge community Libraries
and DSLs Mix Objective-C and Ruby
RubyMotion Laurent Sansonetti Creator and lead developer of MacRuby left
Apple late 2011 HipByte (small team) Made by Rubyists for Rubyists
RubyMotion Match Made in Heaven?
RubyMotion Match Made in Heaven? Marriage between MacRuby and iOS
iOS Mobile Development RubyMotion Only ONE file (.rb)
iOS Mobile Development RubyMotion NSObject is root class Only ONE
file (.rb)
iOS Mobile Development RubyMotion NSObject is root class implicit return
Only ONE file (.rb)
iOS Mobile Development RubyMotion NSObject is root class Duck typing
implicit return Only ONE file (.rb)
iOS Mobile Development RubyMotion NSObject is root class Duck typing
“sensible” dot notation implicit return Only ONE file (.rb)
RubyMotion
RubyMotion ENOUGH TALK LET’S CODE iOS in RUBY!!
RubyMotion No `eval` (statically compiled) No proc#binding No define_method Named
Parameters RVM / Bundler / Gems is NOT pure Ruby
RubyMotion Learning Objective-C slow painful Ruby familiar fun Conclusion
RubyMotion Purchase RubyMotion (~$200)* license key 1 year software updates
1 year private ticket system “How Do I Get Started?!” * 10% discount code
RubyMotion Google Group GitHub HipByte/RubyMotion ParkinT/RubyMotion_Life/wiki ParkinT/RubyMotionSamples ParkinT/F1rstUse Resources
RubyMotion Book Clay Allsopp Wiki Tutorials Official Samples repo MotionCasts
Conference #inspect Resources