Shortly after graduating college I began working on a mobile app to help get friends together offline. Over the next several years I learned more than I could imagine about building apps, working on side projects, and trying to solve the problem of easily coordinating plans with friends. I'm not the only one who has tried to build such an app. A couple of the most recent attempts to solve this problem include Danny Trinh's Free, Max Stoller's Tuesday, and Google's Who's Down. These types of apps are so common that it's practically the "Stairway to Heaven" for mobile apps. Given how many people are trying to solve this problem I figured it'd be helpful to share some lessons I learned along the way.
When building an app, your solution must be 10x better than the current one. Being slightly better isn't enough to sway people away from what they're currently using.
With Flock, the existing solution was text messaging. There were numerous ways that we thought Flock was better than text messaging: 1) you could leave and join the conversations whenever you wanted (this was pre iOS 8...) 2) the focal point of the conversation was always stuck to the top of the screen 3) You could create plans with an activity, time, and location in just 3 taps and 4) it created an easy way to passively see if anyone in your network was in the area and interested in hanging out (as opposed to creating a massive group text with everyone in your network).
In our mind these were real improvements over text messaging. However, was it 10x better than the alternative of creating group messages with your friends? Probably not. Additionally, there are plenty of ways why text messaging is better than Flock. Text messaging is faster. It is also universal. 100% of your friends can be reached via SMS, however to invite a friend to hangout on Flock they need to be on the app. Most people that join Flock have very few friends already on the app.
Single Player vs Multiplayer Mode
Flock, and apps like it, are example of "network effect" apps. I like to describe these types of apps as "Multiplayer" games. The more people that are on it, the better the experience is going to be. In Flock's case, it can't just be anyone, but specifically your friends.
The vast majority of people that download Flock do not have enough friends to make it useful. Asking people to share the app with their friends was much more challenging than we expected. People care about convenience. Downloading an app, inviting all your friends, and then friending all of them...is not convenient. At all.
If I were doing it all over again I would attack this problem two-fold. For one, I would eliminate the need to individually friend people within Flock. Instead, I would ask people to connect their phone contacts (and possibly FB/Twitter) and assume that anyone who you are connected with of those networks should be considered your friend.
Additionally, I'd try to make Flock more useful even if you didn't have a bunch of friends on the app. If you want to create something useful in this space for people outside of the very small tech community, you have to assume that most people are going to be playing on "single player" mode at first. For apps like Flock, this could mean blending the discovery functionality of apps like Sosh and YPlan with the coordination piece of getting friends together.
Don't discriminate the green bubbles
I mentioned it a bit in the 10x section, but it's important enough to re-iterate: don't discriminate against non-iPhone users. In the U.S., especially the tech community, iPhones are fairly popular. However, when creating an app to make plans with friends, "popular" is not enough. You don't need to create apps with full functionality on every platform, but it's necessary to at least allow people to join events on non-iOS platforms. This could be done through a lightweight website or a smart SMS/Twilio integration. One challenge with this is that it makes it much harder to prototype quickly. However, given the polished nature of the competition (SMS and messaging apps), it seems like it's the nature of the beast.
When you work on a new project, you're constantly giving people the elevator pitch on what exactly you're doing and why it's such a good idea. For Flock, this consisted of me describing how I missed the incredible social environment of college, where you could just stick your head out your dorm room and rally a group of friends to grab dinner, go to the gym, or grab drinks at a bar. After a minute of two of me blabbering most people vaguely understood what we were trying to do. However, there was no good way for me to explain the idea in a sentence or two.
At first, it's not a huge deal if it takes a minute or two to explain. You're going to be the one explaining the idea, and the receiver is going to be family or good friends, so they'll listen to you even if they get bored after the first 10 seconds.
However, if you want a social app to expand, you can't expect that you're going to be the one explaining it to every single person that downloads the app. If it's successful, it's almost certainly going to be from word of mouth sharing. In order for this to happen, the explanation and value proposition needs to be short and sweet.
Not being able to explain Flock concisely was a symptom of our app trying to do too many things. We wanted to cover every social activity that you may do with your friends. Lunch? Check. Working out? Check. Going to see the movies? Check.
The more you try and do, the worst job you're going to do at each of those items. For new apps that need to be 10x better than the competition, this leads to problems. In retrospect, I'd focus on one main use case like grabbing food:
"'I'm Hungry' is an app to make sure you never eat alone. When you're hungry you tap the big green button in the middle of the screen and it sends a notification to all your friends in the area to see if they're also hungry."
Great Experience, Very Fun Space
There is no question that trying to make an app to get friends together is challenging. The competition is strong, and there are a lot of dynamics that make it hard create a good experience for early users (network effect, cross platform support, etc.). However, not only do I not regret trying to tackle this problem, but I highly recommend others to try and tackle it.
Do I think you have a good chance of succeeding? Nope. Will there ever be an app that succeeds in this space? Maybe not. However, there are two aspects of solving this problem that I really love.
First, it's a space that is extremely easy to relate to. A problem that you're trying to solve first and foremost for yourself. This will make it both extremely fun and also help you empathize with your users.
Secondly, by working on a consumer facing app in a space with very well done alternatives (SMS, messaging apps, etc.), coming up with a polished and elegant solution is extremely important. Even if your idea doesn't end up working out, you'll gain a ton of valuable experience related to creating intuitive and user friendly interfaces. With the consumerization of enterprise and the heavy focus on simple and convenient interfaces, this will certainly help you with whatever you decide to work on next if your app doesn't work out.