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
RubyMotion - How I learned to like iOS despite ...
Search
Thom Parkin
January 10, 2013
Programming
0
360
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
Tweet
Share
Other Decks in Programming
See All in Programming
レガシーシステムの機能調査・開発におけるAI利活用
takuya_ohtonari
0
610
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
140
Claude Codeの使い方
ttnyt8701
1
130
ReadMoreTextView
fornewid
1
460
A comprehensive view of refactoring
marabesi
0
970
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
280
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
170
Is Xcode slowly dying out in 2025?
uetyo
1
190
ニーリーにおけるプロダクトエンジニア
nealle
0
100
XP, Testing and ninja testing
m_seki
3
170
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
800
Gleamという選択肢
comamoca
6
760
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
5
210
Practical Orchestrator
shlominoach
188
11k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
The Invisible Side of Design
smashingmag
299
51k
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