Understanding Facebook’s Opportunities

Overview 

By now, you are probably familiar with Facebook and what it is; in fact, chances are that you are already addicted to it. In their own words, Facebook is a social utility that connects you with people around you.

The success of this site is a great example of Web 2.0: we have passed from being strictly consumers, to become great contributors of the Internet content. On Facebook, users can publish almost everything: posts (editorials), photos, videos, create groups and even create classified ads.

Facebook started as a school-only site; but since opening the site to everyone, they have experienced and continue to experience very impressive growth, with an even more impressive user engagement. Let’s look at the numbers: 

  • Has 43 million active users, with the number doubling every 6 months!
  • 50% of users return to the site at least once a day.
  • A typical Facebook user is 25 years or older.
  • 5th site in number of Page views
  • 1st photo site

Impressed yet? Well, lets see the numbers for in Canada in, one of the countries with greatest reception of Facebook:

  • 6 million active users (1 in ever 5 Canadians!)
  • 9 out of the top 30 cities (in terms of memberships) are Canadian including
    • #2 for Toronto (with 800.000) users
    • #3 Vancouver

 In fact, a Development Camp series (2 conferences) hold in Toronto in August and October respectively, drew crowd of 1000 people in total.

New, Exciting Opportunities

Continue reading “Understanding Facebook’s Opportunities”

C#: Asynchronical Function Calls

As a Web Developer, I’ve frequently have had the need to make asynchronical function calls.

Usually, you need to do async calls when:

  • Function takes a long time to process
  • There is no need to present a response to the user

In this example, I will be showing some code I use on my Facebook Application (Network Trotters) to update the users profiles.

As a quick contextual background, user profiles are cached on Facebook’s side, and periodically I need to clear the cache so it is updated. This action can take a bit of time when you have a high number of users, but it doesn’t really require any response to the user.

There are 3 main things you need to do to create an async call:

  1. Create a delegate with the signature you would like
  2. Implement a Function with the same function as the delegate
  3. Call the delegate

Continue reading “C#: Asynchronical Function Calls”

Facebook Profile Management

In this post I will discuss how I implemented the Profile Management for Network Trotters .

Profile Management Generals

As an application developer, you get the opportunity to place some information in the user profile page. Specifically you can set a Profile Action (link below the Profile Pic) and a Profile Box.

In your application you basically tell the Facebook platform where it should get the FBML/HTML that defines both the Profile Action and Profile Box. It is important to notice, that Facebook will Cache this FBML/HTML, until you specifically tell them to refresh it.

So in summary, you set the user Profile from your application, but you have to build a mechanism to refresh the users profile periodically.

Context

I am using the Facebook Development Toolkit as the Facebook Platform API wrapper; and the profiles are set by using Urls.

.Net Implementation (one of many)

In my implementation, the profile management contains 3 main components:

  • Profile Content Page
  • Setting a user profile
  • Refresh the profile

Continue reading “Facebook Profile Management”