I’ve been quiet lately. One of the reasons is that I’ve been working hard on a facebook application, which we “unveiled” on Wednesday. Now it’s live (although still alpha), so I have a bit of time to talk about it.
Why build a facebook app?
We’re a technology company. When someone announces a new platform for application development, we naturally poke around it and try to figure it out. In practice, we do that for every platform we can get our hands on. (Note to Apple: when iPhones work in Canada, we’ll poke around with that too!). For Facebook, it seemed clear that in addition to the groundswell of interest from all kinds of quarters, that just reading the docs wasn’t going to truly teach us what the F8 platform is like. And I’m not just saying that because the docs didn’t match the code! A social platform is different, and requires real users using a real app to teach the developer what works and what doesn’t.
So we decided that we’d build the best facebook app we could in a relatively short amount of time. Not a silly little amount of time, because it’s clear what that leads to — lots and lots of mostly trivial, ugly, and useless apps. I happened to have a great engineer, a great product designer and a super-talented graphic designer on hand, so we tried to raise the bar (and then we got a great marketer to help out as well).
What kind of app to build
Figuring out what app fits in a platform is a messy process, at least in our hands. We wanted something that leveraged the social graph which is central to the platform, but we wanted something that provided real value to users. After a fun process of ideation and triage, we zeroed in on an idea which started off as the “anti-calendar”. While online calendars focus on when you, the user, have stuff that you have to do, the anti-calendar tells your friends when you are available. That core idea evolved into what we call Up4, which aims to tell your friends that you’d be interested in (“up for”, get it?) something, sometime, somewhere. If you have a Facebook account, check out the app. If you don’t, here’s a screenshot:
There’s lots more to say about what apps work in something like Facebook, but the margins on this page are too small.
How was the app-building experience?
Building the app was a fascinating and frustrating exercise.
As an application developer, there are a lot of gaps that are both obvious and hard for anyone other than Facebook to fix. For example, testing a social application requires considering what people with different relationships interact with the app. Testing that requires multiple identities. But the terms of service say that you can’t create multiple identities. Luckily, we have a bunch of people on staff with facebook accounts! It’s also quite hard to build a test harness which lets you simulate how your app will behave in facebook without building a facebook clone (which was a bit out of scope!). The list goes on.
The most recent and spectacular challenge we had was when our marketing lead, an avid Facebook user, had built a Facebook group to communicate with a group of people who’d signed up to be our alpha testers. Due to apparent bugs in the group communication mechanisms, he tried to send them each a message to let them know that the app was live and that they should go ahead and start testing it. This promptly triggered a spam filter in facebook, and got his account banned. An appeal with customer service failed miserably (apparently they don’t seem to even review appeals), and it looked for a while like he had lost his personal Facebook account (with all its data) because he was trying to do his job as a Facebook application developer. Not good. Luckily, friendly folks on the #facebook IRC channel, including a Facebook employee, helped to get that resolved. It did drive home the point that we’ve all felt that there’s something problematic about the complete ownership of personal data by Facebook. That control, combined with a hair-trigger banning without warning and a probably overwhelmed appeals process, is scary.
What’s the feedback?
The feedback we got from our friends has been great. Even more special is the early feedback we’re getting from people we don’t know:
… By FAR the best looking application on Facebook. Awesome job!
… I love this app — it’s great b/c it actually has the potential to take facebook connections one step further from virual to real, with people being able to be connected on a whim. …
and it’s great to get this kind of feedback from other facebook developers on IRC and in private messages:
… your app is awesome
… really nicely designed
… yeah a really slick ui
… seriously, your app is the nicest looking app to date
… great to see people taking the time to put quality like that together rather than just rushing out an app
… very very pretty
… check it out, hands down the nicest looking app to market yet
… Looks nice
… such a nice looking app needs to be out there
This feedback goes straight to Luke, our designer, who, as usual, is able to impress people on a glance of his work. We’ll see how the feedback on usability comes in over the coming weeks, but it’s a good start!
That part will have to wait. Everyone else has already started on in a little friday afternoon celebration of ActiveState’s tenth anniversary, I’ve had four hours of sleep, and I’m going on vacation next week, with only occasional net access. So be kind to the app, don’t crash the server in my absence except during Norwegian working hours, but do send us feedback via the app’s discussion page.