Issue 127

Lori M Olson Lori M Olson Follow Mar 08, 2023 · 6 mins read
Share this
DRD127: We're driving you to abstraction this issue.
![](https://dragonrubydispatch.com/assets/images/the-hour-before-one-night-800x584.png)
The Hour Before One Night by Paul Klee. Image via Wikimedia under CC0 1.0 Universal Public Domain Dedication.

OPED — Lori’s Unvarnished Opinion

Dig under the Covers of the Abstraction

When this toot by Dave Copeland popped up a couple of weeks ago, it really rang true for me and, in fact, is a battle that I have fought over and over while mentoring/teaching.

When I was a Java developer, in its very early days, the advent of the IDE (integrated development environment) started to hide some of the nitty-gritty details of how your code should be named and arranged (that is, in packages and mirrored by directory structures). So many junior developers using the IDEs would get all tangled up in their code, because they didn’t understand how things actually worked under the covers.

This continues today. It’s fine to use gems and libraries for your mobile development. I really love Red Potion for RubyMotion work, for example. But, I also understand how the iOS SDK (UINavigationControllers, CoreData and the like) works under the covers. Because if I didn’t, I wouldn’t be able to dig into odd behaviours and bugs half as well.

So if you find yourself struggling when using one of these handy abstractions, don’t be afraid of digging in and peaking under the covers to really learn the layer below. It will be enlightening. And will help you be a better developer.

Mastadon’s equivalent of a tweet, in case you were wondering.

Core Data in Motion

Speaking of which…while I have yet to finish my Core Data course for the WNDX School, you can still sign up for it—with full access when it is ready—at the fire sale price of $30 and receive immediate access to my book Core Data in Motion. So when you use the truly useful gem cdq, you will actually understand what it’s doing under the covers and be able to understand the sometimes opaque error messages over which you tend to stumble.

Tech newsletter 🗞️ content crunch? Intellog can help. And they have a special offer for DRD subscribers: they will curate and write the first issue of your newsletter for free. Find out more.  Sponsored

TALK — Talk of the Tech

Here are our selections from a couple of the busier RubyMotion/DRGTK chat spaces:

  • Discord — We have covered Ollie Mills’ (AKA The Dark Magi) projects previously, so it’s with pleasure that we let you know that his latest—Bomberman—is “kinda finished” as he says. He goes on to say that it is “built with the help of [his] framework magIDE XD” which sounds ‘kinda intriguing’.

  • Slack — In a recent post Petrik de Heus was having trouble releasing to the app store given that it now requires a minimum of version 31. It produced an error when the api_version was set to that value. Fortunately Amir (as usual!) has a fix for that.

APP — All Things App

If you want to get started with a really lightweight back-end for your app, take a look at litestack. It “provides an all-in-one solution for web application development. It exploits the power and ‘embeddedness’ of SQLite to include a full-fledged SQL database, a fast cache and a robust job queue all in a single package.”

GAME — All Things Gaming

As we have said what seems like a million times “if we had known that [insert cool subject here] was an option, we would have stayed in school!” Well, here’s yet another opportunity to use that pithy template: Mike McCready is in the final stages of completing his masters’ thesis which is entitled Enhancing Player Experience in Asymmetric Gameplay. Sounds like there’s also an opportunity to provide input on the subject or at least follow his progress if you’re interested.

SPOT — Spotlight On…

For the vast majority who were not able to attend the recent RubyConf 2022, there are undoubtedly many great talks which if given the opportunity you would have attended. Never fear, though, the two best talks (and a lot of the other talks, of course) were captured and can be enjoyed on your own schedule. Here are the two aforementioned best talks, both of which are well worth your time and attention:

  • This Old App by our fearless leader, Lori Olson. Lori draws some fascinating parallels between renovating her house and renovating an app. From how it sounded, we’ll take renovating the crappiest app in the world over what Lori went through. 🐝

  • Building a Commercial Game Engine using mRuby and SDL by none other than Amir Rajan. The title more-or-less speaks for the content which is delivered in Amir’s inimitable low-key style.

Do you have a DragonRuby-related product or service you would like to get in front of well over 1,200 raving DragonRuby-istas? 🐉 If so, please get in touch...we would love to help you get the word out in a sponsored spot like this!  Sponsored

TWIL — This Week I Learned…

If you’re amongst those who identify as an RSpec Skeptic maybe this will tip you over into being an RSpec Believer. Well if not quite that, maybe if it can also be used to generate ambient music then maybe it can be made at least tolerable? If so, here’s how to do that.

HAHA — And They All Laughed

Yep. We’ve made both arguments at one time or another. Neither of them panned out.

![](https://dragonrubydispatch.com/assets/images/code-lifespan-800x668.png)
credit: xkcd

The World’s Best DragonRuby Newsletter can be delivered to you—at least it will be if you subscribe! Follow the WNDX School on Facebook, and don’t forget to follow WNDXLori on Twitter and Instagram.

If you enjoyed this issue of the DragonRuby Dispatch, please forward to a friend and ask them to subscribe, too…we really appreciate it!

* * *

“A line is a dot that went for a walk.” — Paul Klee