This version of Vestibule is read only. It represents an archive of the community effort to produce content for Ruby Manor 4.

Rubymotion: Writing iOS apps with Ruby

updated over 7 years ago; latest suggestion over 7 years ago

Rubymotion lets you write native iOS apps in Ruby, this talk explores the toolkit and the community that has sprung up around it.

The following topics will be covered:

  • Introduction to Rubymotion
  • A little history behind it
  • Comparison with Objective C and Cocoa
  • Things you can't do Ruymotion
  • Building and Debugging
  • Demo
  • Testing
  • 3rd Party libraries
  • Rubymotion apps in the App store
  • Pros and Cons

It's based on a previous talk done at LRUG (, but more rounded, polished and up to date, including more indepth sections on:

  • Testing
  • Interface builder
  • Storyboarding
  • Cocoapods
  • More advanced examples
  • Interesting abstractions like BubbleWrap, FormMotion and Teacup


  • 2940bc7d4506f3e099e3dcc32a412b98 Jon Leighton suggests over 7 years ago

    I have to admit that this doesn't interest me much. But then I am a Linux user who is frequently frustrated by the Apple monoculture that exists in the Ruby community, so not really in your target audience.

    Maybe it would interest me more if it was less "how to build an iOS app" (which I am unlikely to ever do) and more "what general things can be learned from Rubymotion".

  • The proposal author responds over 7 years ago

    I've updated the proposal to cover some of these suggestions.

  • Acd62030df551952268e84c8fff26a5b James Adam suggests over 7 years ago

    For those of us that weren't at the relevant LRUG meeting, do you think you could summarise what it covered?

  • A6748d9bae5729f00802fd85fc01fd44 Stuart Eccles suggests over 7 years ago

    Rubymotion would be a great topic. I would love to see more real world examples of codebases used in production apps.

    How readable is it when you have a decent sized application?

    some stuff about BubbleWrap would also be great. I feel the greatest advantage of Rubymotion could end up being the open-source wrapping that is created around typical functions, possibly even a Rails type simplicity to creating functioning iOS apps

  • 0 Stevie Graham suggests over 7 years ago

    • Some stuff about Core Foundation types, i.e.
    • How are the plain C Apple libraries represented.
    • Memory management with CF types, i.e. ARC toll-free bridging and CFRetain, CFRelease. How does that work with RubyMotion.

    • OpenGL how is it used with RM?

  • The proposal author responds over 7 years ago

    It is pretty weird, but I've not found a good way around it yet without wrapping lots of the Cocoa frameworks in some kind of higher level module, ala Bubblewrap.

    Interestingly the named arguments syntax is coming in ruby 2.0, although not to quite the same result with regards to method signatures I believe.

  • C1f7bc8064161e7408ef62d97bb636ac Tom Stuart suggests over 7 years ago

    One of the things that puts me off RubyMotion is the hybrid syntax for defining methods with named arguments, e.g.:

    def application(application, didFinishLaunchingWithOptions:launchOptions)

    I'm wondering if I'm alone in finding this awkward to read and deal with, and how much it presents difficulty in day-to-day work. Is this something you plan to cover?