
Introducing Janus
If you’ve used Twitter long enough, you probably understand the importance of a followers list. Somehow, the number of Twitter followers has become an indication of fame, credibility and influence. In the constant struggle for attaining more followers and a more prestigious followers:following ratio, people have gotten very creative. Blog posts all dedicated to showing you ways of growing your following. Services running (up in the ☁️) that follow people on your behalf. And of course, the endless number of “tips and tricks” from social media experts. It’s conventional wisdom, if you want to gain followers you have to follow people.
#followbacktrap
One of the more subtle tricks in the book is what I like to call the #followbacktrap. This is where a follower interprets your polite gesture of following back as an opportunity to decrease their following count by unfollowing you, hoping you never notice.
After realizing how often this happened with my account, I decided to follow back every new follower I got except for the very obvious spam accounts. As expected, I was very happy to see my followers list increase by roughly thirty percent. However, it wasn’t too late until a large number of these followers disappeared from my list leaving me with: 1) a polluted timeline 2) an obscure tff ratio.
As far as those disloyal followers were concerned, the strategy worked, and they gained one more follower. To me, however, it meant that I had lots of cleaning up to do. The rules were simple: unfollow those disloyal followers. So, I went through my list of friends manually triaging followers and trying to recollect which accounts I genuinely followed. The process was nothing but a tedious manual job that I had to go through. That’s when the engineer in me kicked in 💡 and I found myself writing the definition of what I later called “Janus”.
Janus to the Rescue
At first, Janus was nothing but a script with a few hardcoded rules that automatically unfollowed “disloyal followers”. That was fine for the first day or so but then I realized that I needed something more timely and hopefully with the least amount of work on my side. Something that, perhaps, did the work for me. That’s when I noticed that what I was creating was actually a bot 🤖.
Janus was built to serve two main responsibilities:
1. Keeping me informed on my followers list
Twitter does a good job in notifying people upon gaining a follower. Although half of the time chasing these notifications lead into a dead end with no actual notification to be notified about (a very long-living bug, I assume). An issue that’s made me feel super frustrated and never properly informed. So I wanted to fix that for myself. Moreover twitter.com and the official apps have no easy way for the user to view their lost followers. Yet another thing that so many apps have tried to fix over the years. To me, I wanted to have visibility into both incoming and lost followers. Nothing fancy. In other words, I wanted to stay informed — I didn’t want to miss notifications and I wanted to know who decided to unfollow me.
2. Taking an action on my behalf when needed
Probably the most important thing I wanted Janus to be capable of was to take actions on my behalf when needed. I wanted to offload the tedious job of cleaning my list to Janus. Since obviously I didn’t enjoy doing that.
The End-to-End Experience
With these two principles in mind, the question then became: What is the best user-experience to fulfill the purpose of Janus? Should Janus run nightly and perform some type of cleanup on my behalf? Or should I initiate that? What if I wanted to continue following @jack while he’s clearly not following me? I like to work with these kinds of questions because there are a million ways to answer them.
I spent some time trying to figure out a model that would work for Janus. I decided to exploit the “new follower” notification as follows:
Every time I get a new follower, Janus will notify me and present me with three options. These options (in my opinion) are relevant to the context. Personally, before I follow back, I want to know a little bit more than what the bio says. So View Profile is a somewhat useful option to consider before taking an action. If I like what I see, through Janus I can follow back the user without having to leave the app. And finally a third option where I can simply choose to Ignore any action towards the user.

If I choose to follow a user, I wanted to protect myself from falling into the #followbacktrap. Janus will offer me to keep an eye on this user i.e. Janus would unfollow them for me automatically if they ever decide to pull a “disloyal follower” on me. Moreover, Janus will let me know if that ever happens so that I am always aware of what’s going on.

Reflections
Janus has a very specific goal in life and thus Janus doesn’t waste so much time in trying to sound too smart. Janus will probably learn new tricks in the future, but at this point Janus has a very focused job and it’s completely experimental. Chat with Janus today and let me know what you think on Twitter.
Known Issues
- Janus currently only available for the en-US market.
- Some users reported that the “Get Started” button doesn’t work on iOS. The issue’s been reported to Facebook.
- For simplicity, Janus doesn’t support private Twitter accounts or accounts with a high volume of followers (> 70k followers).