Facebook apps: my application development history

My Facebook Application development journey began way back in 2007 when Facebook first opened up it’s API’s to application developers. It was a different landscape back then. The API was fresh and documentation spares and possibilities limitless. All my apps were “Free”. Nothing to pay. They were all solving a problem I had at the time.

All my Facebook app development was done on a LAMP stack, from scratch. No Frameworks. I created my own Framework called “Semerda” to handle common stuff like caching, logging, database access etc… Since Facebook’s API was PHP focused this made it easier to work on a LAMP stack.

This worked out well for my my 1st app called Rock Radio – a complimentary channel for music distribution from a business I was running at the time called Rockin The Shed. You can read more about the Rockin The Shed business here. Later as the landscape changes I moved across to using Patterns and MVC (model-view-controller) to achieve faster and cleaner development on a LAMP stack. My latest Facebook Application called “ReadingList” is using CodeIgniter MVC.

Below is a history (back in time) outlining my Facebook App development.

Rock Radio (aka Rockin The Shed) App

Status: Retired

The idea behind the app was that once all our radio stations finished broadcasting the weekly show of Rockin The Shed for the week, we would release it on Facebook for those that either missed the show on the radio or wanted more of the good Rock Music we broadcast.

Facebook at that time did not have as much traction as today but I saw an opportunity in what it could be one day, a place where people would always hang out. So why not feed them with some awesome music.

MoshCam App

Status: Hybernating

Then came another idea. Since we were in the rock scene and hardcore fans enjoy the mosh pit* at these rock concerts we thought what would be the best way to capture that experience and share it with friends. Naturally Facebook was the place where friends hanged out and so MoshCam was born – an application which allowed people to share videos from their mosh pit experience with their friends on Facbeook.

* Moshing is a dance in which participants push and/or slam into each other.

The app still lives on Facebook in an unsupported format here:

MosCam was a quick build using iStockphoto images to speed up design to test the waters whether we had something here. This idea didn’t get much traction so we moved on to focus on Musichouse. Musichouse was to be an extension of Rockin The Shed and provide a lot more value. Read about Musichouse here.

Friends App

Status: Hybernating

One day while noticing the volume of friends join Facebook I had another idea. An idea was to keep up with notification of friends birthdays so I can see in advance in how many days away are friend’s birthdays. While building this out I pushed the API a bit further and exposed other friend stats likes what zodiac sign they were, age and sex and visually presented it using Google’s Chart Tools.

According to a flutter developer, his app is pretty rough around the edges since it’s only been for my own peruse. Should you find value in it feel free to use it and send me feedback.

This App can be located here:

iStockphoto App

Status: Retired

Launched around 4 years ago to solve a problem I (and other stock photographers) had around exposing & sharing stock photos from istockphoto.com (world’s largest stock website) with friends and colleagues on Facebook.

iStockphoto was gaining a lot of traction and since I was playing a hobby-part-time stock photographer in my spare time & Facebook fan I wanted to share with the Facebook community all the cool photos I was taking and uploading to iStockphoto. So came the idea of tapping into my iStockphoto XML feed and exposing it as a Grid of photos on my Facebook profile. At the time Facebook profiles allowed “Boxes” in 2 Views so this provided excellent exposure for my photos. The app was built in FBML (Facebook Markup Language) and today is retired after Facebook changed their profile layout, rules & retired the FBML.

iStockphoto Facebook App – how it worked

ReadingList App

Status: Active

ReadingList was developed to solve my own problem. How to keep a single list of books I want to read, have read or are reading with ability to share that list with my friends… who are on… you guessed it, on Facebook.

After developing the application I started getting comments and feedback from friends who also read books that they wanted to use this app. So without any restrictions, I opened it up to the world so others can inspire their friends with books and keep a list of their books in the place they visit daily, Facebook.

Technical detail about this LAMP MVC CodeIgniter app are detailed in a previous post I did here: http://www.theroadtosiliconvalley.com/facebook-social/app-readinglist-share-books/

If you want to start using this free app today go here: http://apps.facebook.com/readinglist/

Facebook Readinglist – find your books!

There you have it folks…

My background with Facebook app development. Facebook app development is fun. Especially when you start seeing other people getting value out of using your application. That is both inspiring and motivational. Then listening to your users helps you improve the app and take it to the next level and you really get pumped in making a difference in other people’s lifes. To learn more about modern history, here is a great post on gen x.

If you haven’t started Facebook development then I highly recommend you do it today by going here: http://www.facebook.com/developers. The Facebook API today is light years ahead of the one that existed few years back and gives you the power to do a lot more and build awesome social products.

If you have a Facebook app you are proud of please post it in the comments below and share with the rest of the world.

Happy Facebook app development!

~ Ernest

Facebook App: ReadingList – share your books

Gain wisdom of the world. As the famous Jim Rohn stated ~ “All Leaders Are Readers”. If you are a book worm and also on Facebook then you should grab this free awesome Facebook Application I developed called ReadingList.

What is ReadingList?

ReadingList allows you to share the books you are reading or have read with your friends on Facebook. It also acts as your online library to store the list of your books. Simple, easy to use and it works! What better way to inspire your Facebook friends then by sharing the great books in your books library. Be a leader and start inspiring your friends on Facebook today and make a difference in their life.

Give ReadingList a try. Visit this URL:

ReadingList in detail

The product is simple. Both from ease of use to functionality.

Fig 1 screen shot below illustrates how your Facebook Wall will look when you add / update a book in the ReadingList application. Now your friends can see the cool book you are reading along with whether you recommend it and your personal comments about this book – cool hey!

Fig1. Your book activity gets posted to your Facebook wall to inspire your friends

Fig 2 screen shot below is of the main page where you search for a book you are reading or have read. The search mechanism automatically looks up Amazon books repository and presents the findings in a horizontally scrollable pane. When you locate the book you want to add click “Select book” button beneath the book image.

Fig2. Find a book and share it with your Facebook friends

Fig 3 screen shot below is of the community page where you can see what your friends and other users of ReadingList application are reading. This is a great page to learn about other new cool and exciting books.

Fig3. See what the ReadingList community is reading

Give ReadingList a try. Visit this URL:

Under the hood – for the tech savvy

Here’s a breakdown of the technology behind this Facebook Application ReadingList:

  • ReadingList was built on a LAMP stack – Linux (CentOS 5.5), Apache, MySQL 5 and PHP 5.2.
  • ReadingList runs through a powerful open source PHP web application Framework with a small footprint called CodeIgniter 1.7. (update: as of Feb 8, 2010 it is now upgraded to the better & faster 2.0)
  • On the front-end, latest version of jQuery is used to achieve UI behaviors.
  • The Software Architecture behind ReadingList is MVC (Model–View–Controller) with Active record pattern.
  • ReadingList also uses OAuth with Facebook Graph API and Amazon Web Services API.
  • Future performance (and fun) enhancements on the cards are Memcache, Apache Cassandra (NoSQL) and Facebook’s HipHop.

Toby Beresford did an informative presentation in London on CodeIgniter as a great framework for rapid application development. See it on Slideshare here.

If you have any ideas how I can further enhance this application especially around the product side please let me know in the “Discussions” area here: http://www.facebook.com/apps/application.php?id=102322113161984 or drop a comment below.

~ Ernest

Links mentioned in this post