Issue 67

19 August 2020

by Lori M Olson

DRD067: Canada's approach to app-based COVID alerts. Also, what Grady Booch finds fascinating. And all the other mobile app development news that's not quite fit to print.

OPED ― Our Unvarnished Opinion

Today I’m going to talk about a new COVID tracing app that we have in Canada called COVID Alert. I did a whole talk on how our local government app ABTraceTogether wasn’t going to work for many, many reasons. So let’s talk about why I think this new app is better and how it overcomes some of the challenges ABTraceTogether had.

First of all COVID Alert is completely focused on privacy. It does everything using Bluetooth and exchanges randomly generated codes with other instances of the app if you are in close proximity to other people who also have the app. There is no location information stored. There is no personal information stored. You don’t have to enter your phone number or create an account or anything else.

There are still some problems: I previously talked about how there were two areas of focus for ABTraceTogether: first, the user experience (that is, how am I going to use this app every day) and secondarily but actually more important, was I exposed to someone with COVID-19? The first aspect―how am I going to use this every day―is solved because it uses the new API that Apple and Google introduced for COVID tracing. The second aspect will also work but not yet all across Canada―it only works in the province of Ontario. Meanwhile those of us in other provinces are left still not knowing if we were exposed to COVID because there’s no way for us to find out. Not all provincial governments, including Alberta, are using this new federal app―at least not yet.

The other aspect of the app is for the government: how can we trace contacts for COVID-19 positive cases? COVID Alert takes care of this wherein the health care system provides a unique code to the person with a positive COVID-19 test. That code is then entered into the app. Then all these random codes (but only then the last two weeks’ worth) that were exchanged with other people will be uploaded to the COVID Alert server. The people matching those codes will get push notifications on their phone to say that they came into contact with someone with a positive test. So this solves the second problem quite handily and without giving up anyone’s privacy.

This is a better solution all around and I couldn’t be happier. Well I could be happier…when Alberta gets it I’ll be MUCH happier! Meanwhile, I downloaded the app and got it working, so if and when Alberta gets it, I’ll already have a history of with whom I’ve been in contact. Stay safe out there! ― WNDXLori

We know we have been talking about this for a while but this time, for sure, we mean it: the DragonRuby Game Toolkit Tutorial is just about done and ready for release. It’s all ‘in the can’ and now in post-production. We’ve seen the rough cut and it looks great. By the way, we really do have a pretty good excuse this time: our fearless captain WNDXLori took a tumble recently and tore the retina in one of her eyes. So she is―literally―having trouble seeing straight. Of course, our fingers our crossed for her speedy and complete recovery.

DRGTK ― DragonRuby Game Toolkit

Although we put this in the same category as vinyl records sounding better than digital recordings (as some claim), there are those who feel that video gaming reached its apex in the low res 2D era. We get that. Sort of. But if you’re in that quirky cohort you’ll be pleased to know the LOWREZJAM version of DragonRuby is still available! Also, if you’re looking for inspiration for your own efforts check out the games tagged as lowrez on OK, we’ll admit it: even our curiosity is piqued a little.

DRSH ― Dragon Riders Slack Highlights

There was an interesting (if not brief) thread on the Dragon Riders Slack on exception (ie. crash) tracking. While mention is made of the ubiquitous Crashlytics as the ‘go to’ for most, we were intrigued to learn of a newer entrant into the space: Bugsee. Dragon Rider ‘Georges’ mentions the “video playback of user interactions” as one area where the newcomer is particularly capable. Have something to add to this discussion? By all means, join the Dragon Riders Slack and chime in.

ANDROID ― Nothin’ but…

Speaking of location (actually, we weren’t) we sometimes long for the days when the only option for gathering location information was the olde worlde, basketball court-sized precision provided by GPS. We would have thought that would have been enough. But no, there is an ever-increasing desire for more precise location information. Setting aside the massive privacy issues for a moment, Mark Allison of Styling Android provides a pretty good run down on the various ways location can be determined. He even speculates on the role the mobile device’s camera and microphone might have in that. That’s either terrifying or brilliant, we’re not quite sure, but take a moment to read Mark’s article simply entitled Location. It’s well worth your time. (photo by Henry Perks on Unsplash)

GOTW ― Gem of the Week

It’s high time something like this came along. Actually, linkify-it has been around for a while but was only relatively recently made available as a Ruby gem. For those not familiar, this is a more modern version of link recognition: it goes through a chunk of text and finds everything that should theoretically be clickable and makes it so, as illustrated in the demo. What distinguishes it from earlier cracks at the problem is full support for unicode (including astral characters), international domains and it even provides for extensions and customizations.

COMM ― Community

As is quite often the case, we have a couple of items from our amazing community this issue. The first is a tweet from Jamon Holmgren which in turn has a link to his very first tech talk which, surprisingly, he claims is the best he has ever given. We’re not sure we agree, but take a look and judge for yourself.

Also, we are reminded of a conversation a while back with somebody who happily proclaimed bitcoin ‘hack proof’. A short while later Mt. Gox was (hacked, that is) and $340 million vanished into thin air. So much for our trusted advisor’s opinion. That’s a very weird way of introducing the second item from the community which is Apple actively encouraging the use of the new App Attest API to “protect against security threats”. It’s either The Big A benevolently helping “reduce fraudulent use of [our] services” or (as one commenter on the MacRumors’ article said) “another example of overreaching walled garden”. Yep, it’s definitely one of those two things. Or somewhere in between.

AHTW ― App Highlight This Week

OK, it’s not a mobile app but when it’s mentioned by no less a software legend than Grady Booch we are inclined to pay attention. He describes the Glamourous Toolkit simply as a “most fascinating environment”. Self-described as a “moldable development environment” the Glamorous Toolkit is intended to aid primarily in reading code as opposed to writing it. They claim developers spend 50%―maybe more?―of their time doing just that so it’s definitely worth a look. We found it quite fascinating, too.

TWIL ― This Week I Learned

We never get very far in app development before starting to think about data stores. If your experience is like ours we over-extrapolate the future of our world beater and before good sense can prevail, we have a full relational database chewing up our backend. Let’s face it, on the scale most of us work, we quite often don’t need anything more than a very simple NoSQL data store. This little ebook―How To Manage a Redis Database―from Mark Drake explains how to use Redis for just that.

HAHA ― And They All Laughed

Although it’s quite possible it is way too soon for COVID-19 humour, this tickled us. Funny but also true in more ways than one. (img: Devhumor)

That’s a Wrap!

The world’s best DragonRuby newsletter can be delivered to you—at least it will be if you subscribe! We’re also on Twitter and Instagram and we really hope you’ll follow us there for content you can’t get anywhere else.

“A fool with a tool is still a fool.” – Grady Booch

RubyMotion Weekly brought to you by