Issue 51

8 January 2020

by Lori M Olson

So, look at us with all our new branding and sh_t….Ok, we have a couple of reasons for our (slightly) new look and name.

First, RubyMotion is now actually one product under the umbrella of the DragonRuby organization. As the newsletter covers multiple products (RubyMotion, DragonRuby Game Toolkit and more to come), we really need to be more inclusive in our messaging. After my unsubtle prompting, even rubymotion.com has the cool new DragonRuby logo up front!

Second, as I am certain you noticed, we’re now “Dispatch” instead of “Weekly”. We’ll be coming at you BI-weekly (every other week) from now on instead of every week. And we might skip a few now and then for vacations and such. I’m hoping you all will be as happy about this as we are. It was a challenge to publish a newsletter every week, and I was proud that we were able to keep it up. But I’m not sure that all of YOU really want another weekly email piling up in your inboxes. So, biweekly it is. Which will, incidentally, give me some more time to get back to my blog, too!

#OPED ‐ Our Unvarnished Opinion

One of the items we are highlighting today is the EOL of UIWebView. This deprecation has been coming at us for quite some time, and I really think this should be a non-issue. I mean, I had my co-op student go and fix all the occurrences of UIWebView in the Motion-In-Motion sample code back in the summer of 2018 (that was a LOT of PR’s). And the deprecation had been around for a while then.

Let’s review for a moment WHY we shouldn’t ignore warning messages in our code. Think of these warning messages like broken windows (from broken window theory). This comparison has been, in my experience, deadly accurate. The more we ignore warning messages, the more it encourages us to ignore more warning messages, which eventually leads to a code base that we will hate working on. A code base that is nearly impossible to upgrade. A code base where we can’t find the REAL problems, because they are hiding down in the weeds of the problems we’ve been ignoring.

So let’s get out there and clean up some of those warning messages. Because some day, they ARE going to come and bite us when it’s going to really hurt. I’m looking at YOU, Evernote.

#ANDROID ‐ Nothin’ but…

To kick off 2020 with a bang we have a twofer for Android devotees, our underserved audience from 2019:

The first is from the folks at Quickbird Studios in Munich, Germany. They have a dandy library for quickly putting together really comprehensive surveys. You can find their excellent SurveyKit on GitHub. The only thing we’ll add is, puh-leez, don’t be one of those companies that sends out surveys that are so long you never seem to get to the end of them.

The second item comes from Bob Dahlberg who has posted an excellent two part article on the very trendy Implementing Dark Mode on Android.

Check out one and/or both, they are well worth your time.

#GOTW ‐ Gem of the Week

Although this easily could have appeared in #DRSH, we chose to put it here because Brett Walker has an updated version of his fsevents-tester and we thought it really deserved #GOTW honours. It will help you troubleshoot FSEvents. The thread on the Dragon Riders Slack will provide all the context you could possibly want or need.

#COMM ‐ Community

Subjectively, we have been thinking Apple developer documentation really seems to suck these days. But there is nothing like a little hard data to back up a hastily jumped to conclusion, and No Overview Available provides a “survey of Apple developer documentation”. Both brilliant and persuasive. Apple developer documentation now provably sucks.

Completely unrelated to the above, it seems like there’s a lot more in simctl than we could have possibly known. Keith Smiley (yes, that Keith Smiley AKA Smiley Keith who works at Lyft Engineering) provides a compendium of all of the subcommands of xrun simctl.

Very handy, Keith, thanks.

#AHTW ‐ App Highlight This Week

We’re kicking off #AHTW in 2020 with a great little game from Twig Software. Most importantly, though, we’re delighted to report Rainbow Rise is really written in RubyMotion. Rah rah. It provides an excellent showcase for what’s possible.

We also love it every time we see yet another RubyMotion app in the App Store.

#DRGTK ‐ DragonRuby Game Toolkit

We’re intrigued to see the growing list of games on itch.io which are tagged dragonruby. 13 and counting as of this writing. Amir Rajan tweeted about it recently. As he said “mostly silly, but it’s a start”…

#DRSH ‐ Dragon Riders’ Slack Highlights

It’s always kinda scary when Apple issues the ominous EOL warning. Rhymes with SOL. But in any event, forewarned is forearmed and be on notice that UIWebView is officially now on death row: “no longer accept[ing] new apps using UIWebView as of April 2020.” Fear not, however, all you have to do is update to WKWebView.

This actually is a huge problem, because a lot of integrations (like Evernote’s public SDK) still use it. So, with all due respect to DHH and his recent tweet storm on toxic work weeks, those hours from midnight to 8 am are still open, right?

One more round of thanks to Amir for the heads up.

#TWIL ‐ This Week I Learned

If your New Year’s resolution to have more handsome source code to share out there in public, you officially have that one in the bag and can take the rest of the year off. The good folks over at carbon have the equivalent of Botox and facial peel for your code. And unlike those things, it won’t hurt a bit.

We’d say “try and hide your surprise” but with Botox, that’s pretty much what you’re going to do anyway.

#HAHA ‐ And They All Laughed…

If you’re a regular reader of WNDXLori’s Blog, you should know how she feels about Javascript. As she says “weird-wtf-are-you-doing-now kind of way”. So you might know why we find this one from Thomas Fuchs so funny…

That’s a Wrap!

Like what you’ve seen so far in 2020? And it’s only the 8th. You had better subscribe–every other week #DRD will come to you absolutely free! We’re also on Twitter and we really hope you’ll follow us there for content you can’t get anywhere else.

All kidding aside, we really do hope that 2020 is a year filled with healthy, happiness and prosperity for us all.

That said, it already has all the essential ingredients to be a real doozy.

RubyMotion Weekly brought to you by