The Dispatch just hit 500 subscribers

The very first RubyMotion Dispatch I sent out went to 86 people, that was sent out 15 weeks ago.

I want to thank Mark Rickert for writing the “Marketing Tip of the Week”, they’re super helpful.

If you missed the last issue, you can find it here: issue #14

Happy coding, Todd Werth (@twerth)

Articles, News, New Gems, and Blog Posts

Feb 17th, 2014 – “Spotlight: Service Status by Odin Dutton” by Jack Watson-Hamblin

Feb 17th, 2014 – “MotionInMotion screencast – Episode 11 – RMQ” by Jack Watson-Hamblin

Feb 16th, 2014 – “wakizashi – HTML/XML Parser for RubyMoton” by Francis Chong

Feb 15th, 2014 – “Simpler Core Data with RubyMotion and CDQ (Part 1)” by Stefan Haflidason

Feb 15th, 2014 – “Motion-Tickspot – A RubyMotion wrapper for the API that works on iOS and OS X.” by Brian Pattison

Feb 15th, 2014 – “OS X Apps with Ruby: Part 4” by Jack Watson-Hamblin

Feb 14th, 2014 – “Learn RubyMotion Episode 18 – Using lock code functionality when app comes to foreground” by Neeraj Singh

Feb 13th, 2014 – “Spotlight: Mutual by Andrew Gertig” by Jack Watson-Hamblin

Feb 13th, 2014 – “Demo to read the QR code using the camera in RubyMotion – iOS 7 Rubymotion Barcode Scanner Example” by Atsushi Nakatsugawa

Feb 11th, 2014 – “Building Podstudio in Rubymotion” by Nader Hendawi

In case you missed it

Juxtapose – Screenshot-driven assertions for testing RubyMotion applications” by Thomas Mayfield

ObjC2RubyMotion Converter for Sublime Text 2/3” by kyamaguchi

RubyMotion Tip of the Week

You can use a UIWebView to easily deal with multi-part processes that require things like sessions and 3rd party websites.

Let us imagine you want to add some sort of authentication, such as OpenID, GitHub, etc. An easy way to handle this is to create a controller with an embedded browser (UIWebView). The web view will maintain a session during the entire process, and you can monitor and change everything such as query params, cookies, headers, etc.

When you’ve got what you need (authentication token for example), you simply stop the next request, close the screen and go onto the next step.

UIWebViews are heavy objects, so you wouldn’t want to use this technique for something that would be easier with AFMotion, however it’s super useful in some situations.

iOS Marketing Tip of the Week by Mark Rickert

So you’ve got this killer idea for an app! Thats great, but don’t start building it right away. Before jumping head first into creating the app you should run through a few “validation steps”:

  1. Validate the market – Just because you think it’s a good idea doesn’t mean people will want to buy it. Use services like App Annie to look at the category of app your idea fits in and see what’s popular and doing well. Check to see if there are other apps that exist in the same space, and if they do, make sure you have clear ideas about to set yours apart.
  2. Validate the idea – Before you write a line of code, draw up some initial concepts that show the main functionality of the app. DO NOT ask your friends or family for their opinion. Despite what you may think, they’re going to tell you want you want to hear. Find a disinterested 3rd party who will give you honest feedback about the idea.
  3. Validate the user interaction – Now you can start coding. Don’t polish anything. Don’t fix bugs. Just get a working prototype of your app in the hands of a few people and see how they use it. Take notes and ask questions (but not leading ones).

Once you’ve successfully completed these steps, you can start building your production app. The app could likely to be very different from your original vision, but it’s likely to be better and a bigger success because of these few validation steps.

RMQ News

RMQ v0.5.3 released.

Added a template for a UITableViewController:

gem update ruby_motion_query

In your project:

bundle update ruby_motion_query
rmq create table_view_controller bars

Help support the Dispatch and signup over at MotionInMotion

MotionInMotion releases a new
RubyMotion screencast each week. Here are some examples:

  • Episode 11 – RMQ
  • Episode 10 – Teacup
  • Episode 9 – ProMotion + Formotion
  • Episode 7 – Working with the Camera

Sign up, it’s only $9AUD/month!

One more thing

Ashley Wagner asked her olympic teammate how to create a hash in Objective-C:

[NSDictionary dictionaryWithValuesAndKeys:
    @"Germany", [NSNu mber numberWithInt:8],
    @"Norway", [NSNumber numberWithInt:7],
    @"Netherlands", [NSNumber numberWithInt:6],

// Or the new way
NSDictionary *olympicMedalCount = @{
    @"Germany" : @8,
    @"Norway" : @7,
    @"Netherlands" : @6


If you have any tips, blog posts, or want to sponsor this newsletter, please send emails to