Augmented Reality Ducks

Favorites Sep 30, 2021

It’s an open secret that Apple is working on an augmented reality headset (or something). All the recent advances in ARKit and adding LiDAR to the pro iPhones and iPads are certainly leading up to a larger goal.

I have no idea what that next leap is.

But, I do know that fourteen years into iOS, people still ducking hate autocorrect. Especially when you find your ducking text messages littered with ducks. There’s just no ducking way around it. Short of adding a fake contact to your address book named Dr. Duck Ducking McDucker, autocorrect seems ducking incapable of learning everyone’s favorite bit of profanity.

That got me thinking earlier today. What’s going to happen when Apple finally leads us into that next frontier of human / computer interaction? What happens when our day-to-day reality becomes augmented with live information and our physical and digital worlds merge even closer together?

What happens if Apple takes autocorrect’s prudish vocabulary into AR? If they dared to try and censor the real world, how would that look?

I decided to try and find out. And I have the Xcode project to prove it.


So what did you just see in that video?

It’s an iOS app that analyzes video streaming from the camera and attempts to detect human hands. If it finds any, it then tries to distinguish the digits of each finger and, specifically, if the middle finger is raised. If it detects that, it takes the location of the offending finger and censors it with a 🦆.

This whole post, of course, really is a joke. But the silly idea originated from an actual conversation with my wife and then a friend egging me on to build it.

But, more importantly, it shows just how fantastic software is these days. How spoiled we are to carry supercomputers in our pockets. In less than 200 lines of code, I used these incredible frameworks developed by Apple to get this idiotic idea working in an evening.

I know I complain a lot, but I also want to credit the many talented people working hard to put software like this out into the world for other developers to build upon.

As usual, the sample code for this project is on GitHub.