Monday, July 30, 2007

Totally tired with this app

I'm exhausted! I've been working on this melody Facebook app for around a week now. At first it was very exciting. I had big dreams of making a hugely popular app, but now that the app is becoming more concrete it is starting to become obvious that this will be marginally popular at best. Why? Well, turns out it's a lot more difficult to express yourself with music than by drawing!

Currently in the app you can selected between a piano, a cat's meow, a dog's bark, human voices or drums. The app allows you to make a very short composition, around 30 seconds at the longest perhaps. There is a staff on which you can place notes to make your tune. I haven't done the sending part completely yet, but the idea is that you could send these tunes to your friends.

The path from an idea to reality is always less smooth than one would hope. An idea is very vague. Even if you try to work out an UI on paper, it's still vague, even if you don't know it. There are just so many little details that you will never be able to think about until you make the app. And that's fine, because making the app is all about describing those little details to the computer anyways. I'm struggling to provide a concrete example here, but for example in this case the idea was "a graffiti-like app for sending melodies". Then in the paper UI mockup I realize that there has to be some way to put different instruments on a staff. Then when really trying to make it, I realize that when you are placing those instruments, there has to be some kind of indicator of what you are selecting. But that indicator shouldn't be shown if you are outside the area ... and if you select drop-down menus they should appear ABOVE all the notes, not below. And a million details like that.

After you spend days just basically tangled with these small details, you become very exhausted even though from previous experience you knew that it would be like this, while of course secretly hoping that this time would somehow be different. There is some satisfaction in seeing your idea become a reality, to interact with what you have created, but at the same time you have to face the depressing reality that perhaps your idea wasn't as great as you had hoped. What seems like a fun idea often isn't as much fun in reality.

A tale of two Graffiti

If you use Facebook, you have probably used or at least seen the Graffiti app, which makes it possible to send doodles to your friends. But did you know that there are actually two different Graffiti apps? One wildly popular (5,713,050 users and counting) and another more obscure one (mere 11,367 users). Surely the one with less users is just a clone? No, according to the creators, the more obscure one came first.

I remember installing the more popular one and instantly writing graffiti to my friends, which was kind of fun for a while. Out of curiosity I installed the more obscure one as well, but the thing is that I can't figure out how to use it. It keeps showing error messages. The lesson here of course is that it doesn't matter how cool your idea is -- if it doesn't work or the users can't figure it out (which amounts to the same thing) then it will never be popular.

The creators of the original graffiti must be kicking themselves now...

Saturday, July 28, 2007

Melody app progress

I have been actively working on the melody app lately. Learned basic Facebook API usage and started making the UI part in Flash. Progress is nice, I can already arrange piano and drums on the tracks. A surprisingly difficult thing has been trying to find the different sound samples to use.

I need at least a basic piano sound, a guitar sound, drums and some funny sounds. The temptation is great to go to one of those "free samples" sites to grab something, but I want to be sure that any sounds I use are properly licensed. So instead I have been trying out sites where you can download sample packs. I am really surprised at the poor quality of the sites and the sounds they provide. For example some drum hits might have an audible hiss in the background, in some cases almost to the point of being static. Finding drum loops is easier, but I want single hits, not loops.

Come on, I just need around 28 different sounds, hopefully for under $100 total. How hard can this be?

Wednesday, July 25, 2007

Decided which Facebook app to make

The idea that found its way to the top of my ideas list (it's a long list!) is a music composing app. Basically like Graffiti, except that instead of drawing stuff, you can compose little musical pieces and send them to your friends. You would do this by arranging notes on a small staff (the classic "like X except Y" pitch). Taking Graffiti as the inspiration, everyone would have a wall of composed musical pieces.

What I am concerned about a bit is the bandwidth. I wouldn't even be doing this if I didn't intend it to be popular. So assuming it is popular, perhaps people would be loading the composing/playback Flash application about 100k times per day. I did some calculations in my notebook (in a section titled "slimy biz talk corner") and this could mean a bandwidth cost of about $600/month. From my prior experience 100k page views per day for random people isn't necessarily greater than $600/month, so it might be that initially this makes no sense. However bandwidth is getting cheaper, and with Flash 9 there are things that would let me cut the size of the player/composer down A LOT so perhaps it would make sense in the future if not right away.

Oh yeah before settling (at least for now) on this idea, I spent two days basically pondering nonstop about which Facebook application to make. I wrote a long list of ideas that occurred to me, then ranked them based on how promising they seem. It's funny how many ideas for social apps you can find by reading a book containing playground games for children. For example there was a game where you must come up with something that you have done, but none of your friends have done. That would make a nice app as well. Anyway the point is that playground games books are a great resource =)

Sunday, July 22, 2007

But what to develop?

I have been trying to come up with something to create for Facebook, but how to know what is worth spending a week of development time on? Some criteria I have come up with:

  • Coolness - If a potential user encountered this app all alone, with just a few sentences to describe it, would they likely be excited about it?

  • Virality - How likely would they tell their friends about it?

  • Monetization - How much money does each user translate to? Sometimes the right crowd (people wanting to install awnings in their home) is better than a big crowd (people looking for free software).

  • Stickiness - How likely would they use the app for long periods of time?

It's interesting to think about the top Facebook apps in these terms.

Top Friends - Slightly cool, very viral, not very monetizable, not very sticky.
Graffiti - Very cool, not so viral, not very monetizable, pretty sticky.
iLike - Cool, viral, monetizable, sticky.
... and so on

Developing for Facebook

Easiest hello world I've ever made was in Commodore 64 basic. The most difficult one was with Symbian -- I never had the patience to finish it! Facebook seems to fall much nearer to the C64 experience. Starting to develop a Facebook app feels really sweet. Seeing what you create instantly embedded on a major site is a strange feeling, because it's something that's completely new.

The thing I was most confused about at first was how the content you create would find its way to appear on a Facebook page. At first I figured that code must somehow be running on Facebook's servers, like in a sandbox. But it doesn't work like that, rather Facebook calls your server and displays the response it gets as part of the page it renders.

One surprise was that things are a lot simpler than you would expect. The PHP API include file is just around a thousand lines of code! I feel that now is the time to get in the game of building Facebook apps, because certainly after a while they will add a zillion new things you can do with the platform, which will make it even better, but also that much more confusing for those just starting out.

In my mind Facebook has won. With all the apps that have been created and are being created, Facebook will have thousands of times the functionality that MySpace is offering. The change in Facebook has been so sudden that people have not yet realized what happened, it will take a while before people understand that there are now these things called "apps" and that you can add them to your profile. People will gradually learn, and a few of those apps will be such gems that people will wonder how a social network could ever be considered complete without them.

Monday, July 09, 2007

Would you pay $10 per gallon?

Sweden is considering meeting its goal of reducing emissions by doubling the price of gasoline by the year 2020. This may raise the price of gas in Sweden to over USD $10 per gallon (2 euro per litre). Sweden has promised to lower their carbon dioxide emissions by 20 percent by the year 2020 and according to calculations the price hike would cause this goal to be met.

This news seems to have been ignored by the English media, so this was a quick translation of the source articles.