I only list new gems here in the Dispatch. The problem is that existing gems never get mentioned (unless someone writes a blog post about them). What do you think of listing new versions of RubyMotion gems? That may be a lot of information, perhaps too much. Your thoughts please: @twerth
If you missed the last issue, you can find it here: issue #31.
Happy coding, Todd Werth (@twerth)
Articles, News, New Gems, and Blog Posts
June 17th, 2014 | meetup
“Quarterly Show & tell / lightning-talk meeting”
June 17th, 2014 | blog post | by Jack Watson-Hamblin
“Grand Central Dispatch Isn’t Just For Background Queues”
June 11th, 2014 | blog post | by Gavin Morrice
“Simple, Clean Persistence in Rubymotion with motion-persistable”
RubyMotion App of the Week
June 15th, 2014 – QuickLens
“As a UI Designer/Developer, you are always trying to create the best possible interfaces.
With QuickLens, you can ensure that your implementation matches the design.”
Most of the app is built on plain AppKit with a sprinkling of Carbon. It also uses the following CocoaPods:
Hidden Gem by Gant Laborde of Iconoclast Labs
I know you’re still foaming at the mouth to see Android Dev for RubyMotion. What will it look like? It’s been announced for a while now, but no one but HipByte has the beta, and you don’t get to see what that lovely RM code looks like… or do you?
Today’s treat, if you must browse and speculate the cutting edge, feast your eyes on some unannounced but lovely RM 3.0 and Android code here
A quick update: version 0.6.0 is still in beta, but I’m personally using it in one real project. I’ve fixed a bunch of bugs, I’ve added padding (I haven’t documented this yet). There are still a few bugs I know of, I think once those are fixed it will be time to rollout the 0.6.0 gem; probably this week.
From the Archives
Because it’s easier to copy and paste than to write
by Ken Miller (@seriousken)
If you’re overriding a built-in initializer method like initWithFrame, you should always call super or another built-in initializer first, check its value, and then do your setup. If you don’t, there’s no guarantee your storage has been set up. It might work fine in the simulator, or even your device, but can cause random crashes in production:
def initWithFrame(frame) if super @my_var = stuff() end self end
One more thing
If you have any tips, blog posts, or want to sponsor this newsletter, please send emails to firstname.lastname@example.org