Anonymous Social Networking App Development
The growth of social media networks triggered development of different genres and forms these networks could take. One of such forms is anonymous. In 2014, anonymous social media apps like Secret, Whisper, YikYak, Facebook Rooms emerged and gained popularity fairly quickly, largely because people miss their privacy.
The goal of anonymous social media is to bring authentic and safe communication to both public and more private social spheres. Such apps don’t typically require people to create user profiles, and collect very little information about their users giving people a leverage to self-express themselves freely.
Why is anonymous a trend?
According to one study, 86% of internet users have tried to be anonymous online, and taken steps to try to mask their behavior or avoid being tracked by advertisers, certain people from their past, employers, hackers, government (especially after Snowden revealed that “real-name” networks like Facebook had been tracked by government), and law enforcement.
The most common strategy to hide from observers is clearing cookies, browser history, and using fake names. Yet, quite a lot of people have taken even more sophisticated steps, such as encrypting their email, or using virtual personal network or proxy server, that does not allow firms to track their online movements.
Needless to say, people want more control over their privacy. Perhaps “anonymous social network” would encourage the same sort of human connection that Facebook offers, but without the drawback of disclosing your true identity along the way?
In my previous article, I explained how you can build a typical social networking application. This time, however, I’ll talk about anonymous social networking app development.
How do you identify users if they are anonymous?
Key pieces of personal information such as photos and videos, email addresses, birth dates, phone numbers, home addresses, workplaces, friends lists, are non existent in the profiles of anonymous social networks. Sometimes, there are no profiles at all.
In Whisper, for example, you can’t check anybody’s profile page. What you can do, though, is go to your own profile to see everything you’ve posted and liked. What’s more, you get push notifications on your device whenever somebody likes or replies to your post, which means that the app actually knows your address even though it didn’t ask you to login.
I can divide anonymous social networks into two categories — login and non-login apps.
If you remember from my previous piece, a database of a social networking app stores a user entity with the following possible attributes: user_id (email), username, first name, last name; and defines the relationship between the entities. Any interaction that happens in the app is linked to a certain user.
In some anonymous social networks, like Whisper, the user isn’t required to login, so we can’t get their names, or emails. To track anonymous users, we generate a unique user_id or a token, which can be associated solely with the user’s device. This means that if a user accesses the app from another device, the app will generate another token and create a new entity in the database. A user_id and posts that are associated with it are stored on a backend, so when somebody likes a post or replies to it, we can send a push notification to the device that is linked to that user_id. What’s more, we can access its location information for generating “nearby” feeds.
Some years ago iOS developers used a unique device identifier (UDID) as a sort of “anonymized” token. However, in 2013, Apple stopped accepting iPhone and iPad apps that collect it. The reason for that was obvious security concerns, because if UDID is put together with a database of other information it becomes the glue that holds all that information together. For example, your UDID might also be attached to a username, password, and other credentials.
There are quite a lot of anonymous social networks that actually require users to login. In the Cloaq app, users enter in a password and get assigned an @id number. The numbers will start at @alpha1 and go through @alpha999 before moving on to @beta1 and @beta9999.
Other apps may ask you to enter a random username with a password, or quite often, your phone number. Anonymous social app developers use your phone number to show you the posts created by your friends, thus making you far more willing to spend time in this app.
When the Secret app just launched, we became quite obsessed with it here at Yalantis. I remember I even asked somebody who wasn’t in my address book for their phone number, so I could see more secrets posted in the app. Although the obsession turned out to be rather short-lived, it was a lot of fun to use Secret.
How do you create both public and anonymous profiles?
Some social apps have both public and anonymous profiles. This is exactly what one of our projects, a social network for cities called Plaza, offers its users. In this app a user may switch between two absolutely different profiles from the settings without any need to logout and then login with proper credentials. There are several ways to implement this in code.
[Public and anonymous profiles in the Plaza app. Designed and developed by Yalantis. Check it out on Dribbble]
One way is to create two independent classes for every profile and throw a token of the session and other attributes to the other class when a user switches a profile. However, this implementation creates a mess in the database due to the lack of dependencies between classes.
Alternatively, we could create one super class with a set of fields for both users (e.g. name, anonymousName, avatar, anonymousAvatar). But in this case, every network request would transmit all information on user including his or her anonymous personality, which contradicts the notion of “anonymous”.
We chose the most secure implementation. In Plaza, every user account has a set of “characters” attached to it (just like in RPG games). Each character is absolutely independent and doesn’t know about the existence of others. There is no way to get the data about all the characters unless you know the username and password. This approach isn’t only secure, it’s also quite scalable, which means we can add more characters to the user account without any problem.
Most anonymous social networks give users a possibility to chat with other members privately. The messages in this case can be encrypted (not necessarily though), and they can be saved on a user’s device, or on a backend.
Encrypted messages sound cooler than unencrypted, so a lot of anonymous social apps prefer to use this feature to distinguish from others.
A third-party service for anonymous messaging Anonyfish encrypts private messages using AES and BLOWFISH ciphers and deletes them after 45 days. This service was built for the express purpose of letting the Secret app’s users chat. After a while though, Secret introduced their own private chat where the conversations were ephemeral — they deleted themselves after about a day of inactivity. And after that, the Secret app was shut down.
Another great example from the anonymous world is Minds.com, which attracted the likes of Anonymous, a network of activists and hacktivist that walk around wearing Guy Fawkes masks. Mind.com offers end-to-end encrypted private messaging, and is both a social network in its own right on web and mobile, and also a free and open-source platform for others to build their own social networks with encryped messengers.
Read also: Messaging app development
Content sharing and interactions
Since the main idea of anonymous social apps is communication, a lot confuse them with private messaging apps, like Telegram. However, there is a clear difference — content of social networks is visible to anyone who logs in, or anyone in a given geographical region. That is, they’re “one-to-many” sharing apps, not “one-to-one” mobile messengers, even though they may offer private chats among their features.
The thing with anonymous social networks is that people are more likely to get involved with them once the posts that get shared are somehow tied to their location, or community. This is the reason why the Secret app required users to login using their phone numbers. The app could then get access to the address book of the user, and filter posts into “friend” and “explore” feeds.
Speaking of feeds, I can lists the following multiple options:
– Popular/explore feed features posts that got the largest number of shares, likes, replies, or upvotes throughout the whole network.
– Nearby feed is based on user location data and displays posts shared primarily with those in proximity to the user. For example, Yik Yak is a location-based anonymous social networking app which allows users to comment and vote on other users’ posts only within their community.
– Latest feed lists posts that just got shared. Since posts in the “latest feed” get more exposure, they can potentially help you fill the popular feed much faster.
– School feed usually requires you to add search to the feed so users can choose the school among those available in your database.
– Company feed can require users to register with their company name. Memo, for example, is an anonymous app specifically geared toward professional environments. To verify if people work where they say they work, Memo checks LinkedIn profiles of its users, and then assigns a number and the company name to the user identity.
There are several ways to increase user engagement with an anonymous social network through feeds. In the defunct Secret users could participate in private chats with strangers only after they had actively participated in commenting other people’s posts.
The above-mentioned Minds.com rewards people for interacting with posts, by voting, commenting or uploading. Users are given points that can then be exchanged for views, meaning that the posts of active members will be more promoted by the network.
The main purpose of an anonymous social network is sharing content, and that’s their main problem too.
How do we reduce cyber-bullying?
Anonymous social networks are often criticized for feeding the growing problem of cyber-bullying. It’s not that social apps like Facebook don’t have anything to do with this problem, but when our identity is identified we’re less likely to be nasty to each other.
When people aren’t held accountable for their behavior, they will often behave badly. Online anonymity which conceals people’s identity makes it easier to groom, gossip, sell drugs, extort, and more.
Anonymous features in Ask.fm, for example, were referenced as being directly contributing to a good handful of teen suicides. There are a few ways we can fight with verbal abuse in the anonymous social networks:
1. Flagging posts and in-app warnings
Letting users flag posts that they consider inappropriate can reduce cyber-bullying to some extent. If a certain user has been repeatedly posting abusive posts, you can issue an in-app warning, and if this doesn’t help, block this user.
2. Removing posts
To inspect and remove any harmful or abusive posts you’d need to hire a team of individuals, and also develop an algorithm to detect and remove any abusive posts the individuals may have missed.
3. Limiting the number of users
Under this system, all contents are still available to the public, however only registered users can post. This is the method that the Cloaq app uses to reduce garbage in the app’s feeds.
By implementing geo-fencing with the help of users’ GPS coordinates you can prevent the app from working in a certain area (e.g. school). Yik Yak applied geo-fences around middle and high schools around the US after cyberbullying in the app reached its peak.
Of course, students could still use the Yik Yak app at home and elsewhere outside of school, but it puts an immediate damper on all the so-called “fun.” To implement these bans nationwide, Yik Yak approached third-party data provider Maponics in order to license GPS data.
Applying measures to stop cyber-bullying in the anonymous social apps comes without a question. But as it turns out, sanitizing the experience to protect people’s feelings leads to the app’s failure. After Ask.fm agreed to work with regulators to implement cyberbullying protections, it dramatically declined from the top of the App Store. When Secret started taking steps to prevent users from typing in people’s real names, it also began to decline.
In other words, it’s a vicious cycle — when the trash talk drops, so does the app’s popularity.
Despite the controversy surrounding anonymous social media apps, they have a great potential to become viral. To create an anonymous social media app is a challenging venture, but an exciting one, too!
Check out the related articles:
Originally published at yalantis.com.