It’s an iPhone/iPad app that uses Bluetooth LE (Low Energy) to notify you when friends and people with common interests are nearby.
Technically, Bluetooth LE has two significant advantages:
It’s one way to make presence work as it should: efficiently, reliably, and invisibly, in the background.
It depends on the environment, but you can imagine a seventy foot radius around you; big enough to poke into doorways as you walk down the street, cover a restaurant or a gallery as you walk through it, overlay an airplane or an office.
You're flying to a conference in another country.
In the departure lounge, Approximal discovers someone else going to the same conference.
During the flight, you discover a few more people (even though the plane has no wifi) and chat with them.
On the first day of the conference, Approximal remembers other attendees you were near, and back at the hotel, you browse their profiles. You mark some of them as favorites so that you'll be notified when they're nearby again.
Eating lunch at a local restaurant the next day, you're alerted to another attendee (even though you have cellular data turned off to avoid outrageous roaming fees).
On your way home, you add contacts to your address book for people you want to remember.
You can decide how little or how much you want to share. There are four profile settings, where only the first one is required:
You can change these at any time. Other people will see the changes immediately.
If you are visible to another person, they are visible to you and vice versa.
To be visible to one other in Approximal, you and another person must be considered friends in at least one social network or group.
It’s Facebook, Twitter, Pinterest, GitHub, and more than a dozen others.1 If you give Approximal permission to access your list of friends using the social network’s secure API, it will periodically fetch the list so it knows who to look out for.
Note that to be considered friends, you and the other person must follow one another in the social network. Approximal ignores one-way relationships.
It’s in the list between Dribbble and Facebook. Approximal will first confirm your email address, and then the use the other email addresses in your device Contacts as your list of email friends.
Note that to be considered friends, you and the other person must have one another's email addresses in your Contacts lists. Approximal ignores one-way relationships.
Only current email friends can see your email address, not friends in other social networks.
While a social network is a well-known public space, a group is an ad hoc network you can create for any purpose.
To be considered friends, you and another person must belong to a group with the same name and optional password.
There are two main uses: private and public.
You can create a private group with a password and share it with a specific set of people so you’ll always be notified when any of you are near one another.
Two groups with the same name but different passwords are considered unrelated, so your I LOVE BUNNIES group won’t overlap with anyone else’s I LOVE BUNNIES group. (Well, unless you also all choose the same password, but in that unlikely case, you’d notice strangers appearing, and you can decide to change your group password, or make new friends based on your mutual interest in bunnies.)
The primary use for a group is to make it easy for people with common interests to discover one another.
Imagine you’re going to WizzoCon 2019, and you want to see and share information about yourself and other people attending. In that case, if you each add a group called WizzoCon 2019, you’ll be notified about one other any time you’re in proximity; at the conference, as you travel around the area, and in the future.
Here’s an easy way. Just fill in the form below, and it will generate an HTML link. Put the link on a web page, and when someone taps on it from their phone with Approximal installed, it’ll launch Approximal and add the group for them. Alternatively, just send the bolded URL from the generated link in an email or text message.
Now Approximal is quietly waiting in the background for notification that another Approximal-enabled device is nearby.
When it gets a notification, it exchanges a minimal amount of information with the other device to decide if you and the other person are friends. If not, the two devices disconnect like ships that pass in the night. But if you are friends, you’ll show up in one another’s Nearby list.
It’s more complicated to explain than it is to use.
Nearby is a continually-updated list of people around you, showing their profile details (name, picture, status, URL). You can choose to view people in a list, or just a grid of faces, sorted in name or time order. You can also choose to see only people who are nearby right at the moment, or also people who’ve been nearby within the last 24 hours.
Tap on their picture for detailed information, including social networks and groups.
For social networks, you’ll see the network name and the other person’s username for any social networks you both belong to. If the other person is already your friend in that network, the network name is displayed in black, if not it’s displayed in gray. The username is a link; tap on it to open that person’s profile in the network.
For groups, you’ll see the group names for ones you both belong to. If the group has an associated URL, the group name is a link; tap on it to open the URL in your browser.
Sure, just type in the chat window. Any URLs and phone numbers received are tappable.
Chat message history is kept for 30 days.
Sure, tap on their picture and choose Add to Favorites. Favorites are indicated by a red star on their picture. When a favorite is discovered nearby, the notification sound🔊 is distinct from the sound🔊 for other people.
Information about favorites, including their profile, social networks, and groups, is kept until you remove the favorite.
Sure, tap on their picture and choose Add to Contacts.
If you don’t want to be contacted by or visible to someone, tap on their picture and choose Block.
The person will immediately disappear from your Nearby list, and any chat messages they try to send you will be returned undeliverable. You will disappear from their Nearby list as soon as you are out of immediate range, and from then on you’ll be invisible to one other.
This will continue until you manually unblock the person using the Privacy item on the Settings menu. In use, there is no indication that either person is blocking the other.
All communication takes place directly between devices using Bluetooth LE. It is encrypted, but you should consider it “good enough to discourage random eavesdroppers”, not “good enough to dissuade the NSA”.
Want all the details? Here's how Approximal uses your information.
When you set your picture, the image file is uploaded to Amazon S3 and stored using your randomly generated ID. Friends fetch it from there rather than over the low-bandwidth Bluetooth connection. If you remove your picture from the app, it’s removed from S3.
When you enable a social network, the network's login page is displayed in an embedded browser view. Note that Approximal never stores (or even sees) your account password for the network. After you authorize access, a unique token supplied by the network is stored in the secure iOS Keychain.
Once you’ve enabled a social network, Approximal periodically fetches and updates your list of friends in that network. It requests the most restrictive permissions needed to do that and only that. Approximal will never post anything to the network or contact other users through the network.
If you enable the Email social network, a confirmation code is sent to your email address from the Approximal website.
If you add a group with an associated URL, Approximal fetches the URL’s favicon2 to use as the group logo.
Approximal uses Crashlytics for crash reporting. If the app falls over, information about the offending location in the software and generic device demographics (model, memory, etc.) is reported to Approximal’s Crashlytics account for post-mortem.
If you’re having problems and choose the Help option to send data files, Approximal will create an email message containing a zip file of logging and usage data. You can edit the email before sending it.
Approximal sends no other data over the Internet. It does not track your usage, your location, your conversations, or your friends. Approximal will happily function in an underground bunker or at the bottom of a well (if that’s a useful scenario for you).
More social networks, APIs permitting.
The Approximal of Things.