Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Going Pro: From Prototype to Production with Pr...

Going Pro: From Prototype to Production with ProMotion

Slides from Jamon Holmgren's talk from RubyMotion #inspect2014 in San Francisco.

An explanation of how ProMotion makes your RubyMotion iOS prototyping faster, your production apps more maintainable, and looking forward to the future of ProMotion.

A video of the talk will be posted when available.

Jamon Holmgren

May 28, 2014
Tweet

Other Decks in Technology

Transcript

  1. zzzzzzzzzzzzzzzzzzzzzzzz 6 g M A Y ! ! ! 2

    0 1 4 #INSPECT Going Pro BY JAMON HOLMGREN ! @jamonholmgren ! jamonholmgren.com ! clearsightstudio.com Owner at ClearSight Studio Vancouver, Washington (Near Portland, Oregon)
  2. APRIL 8, 2014 @jamonholmgren Boilerplate hides Bugs “If debugging is

    the process of removing software bugs, then programming must be the process of putting them in.” - Edsger Dijkstra 7
  3. APRIL 8, 2014 @jamonholmgren UIKit Tables 1. UITableViewDataSource
 tableView:cellForRowAtIndexPath: 


    numberOfSectionsInTableView:
 tableView:numberOfRowsInSection:
 sectionIndexTitlesForTableView:
 tableView:sectionForSectionIndexTitle:atIndex:
 tableView:titleForHeaderInSection:
 tableView:titleForFooterInSection: 2. UITableViewDelegate
 NOOOO!! 8
  4. APRIL 8, 2014 @jamonholmgren Recap 1 1. Cocoa Touch is

    verbose 2. Hard to remember 3. Hides bugs 4. Looks hideous 1 3
  5. APRIL 8, 2014 @jamonholmgren Recap 2 1. ProMotion is easy

    2. Memorable API 3. PM::Delegate 4. PM::Screen 5. PM::TableScreen 6. PM::WebScreen, PM::MapScreen 2 2
  6. APRIL 8, 2014 @jamonholmgren Production-ready 1. Lighter than BubbleWrap, Teacup,

    Formotion 2. Less invasive than Sugarcube, motion-support 3. Cooler name than RMQ (just kidding, Todd) 4. 36 files, 2,073 lines of code 5. 521 tests 6. 37 contributors (thanks!) 2 4
  7. APRIL 8, 2014 @jamonholmgren OPEN SCREENS/VCs LIKE NORMAL OR WITH

    PM MIX IN OTHER GEMS AS NEEDED MIX AND MATCH VCs AND PM::SCREENS Inspect App 2 6
  8. APRIL 8, 2014 @jamonholmgren Scaling PM ★ Use styling gems,

    like MotionKit, rmq ★ Get those styles out of your Screens! ★ Subclass UIViews ★ Make your own Screen subclasses 2 7
  9. APRIL 8, 2014 @jamonholmgren You too can make hundreds 2

    8 “PM::TableScreen was stupid simple. thanks for the framework the name makes it difficult to google though” - Amir
  10. APRIL 8, 2014 @jamonholmgren Recap 3 1. They're just UIViewControllers

    2. Used in production apps already 3. Works well with layout/styling gems, 
 almost everything 2 9
  11. APRIL 8, 2014 @jamonholmgren ProMotion 2.0 ★ 20% less code

    ★ Builds 55% faster ★ CodeClimate from 2.65 to 3.5+ ★ Extracted non-core parts
 - ProMotion-map
 - ProMotion-push
 - ProMotion-formotion ★ ProMotion 3.0 - Android support? 3 0
  12. APRIL 8, 2014 @jamonholmgren Conclusion 1. Start with ProMotion
 promotion

    new my_new_app 2. Get a prototype up fast 3. Add other gems 4. ?? 5. Profit! 3 1
  13. APRIL 8, 2014 @jamonholmgren Me again Jamon Holmgren Owner at

    ClearSight Studio Vancouver, Washington [email protected] @jamonholmgren 3 3