News

Wednesday, June 24, 2009 at 12:32pm

Published by Tom Whitnah

During the 2009 US Presidential Inauguration, we tested a new feature that let people share Facebook status updates and comments side by side with real-time streaming video on CNN's website. It was a significant moment for Facebook Platform. We realized how powerful it was to see what your friends were saying, not just on Facebook, but right in context on CNN.com. Users posted over a million status updates during that two hour event. Since then, we have worked with several established websites and entrepreneurs to show real-time updates next to live broadcasts, including the NBA® All-Star Game and many of the sites covering the Oscars®, and we've seen many other sites integrate similar features themselves such as Nana10 in Israel which hosted live broadcasts and their own live conversations using Facebook Connect during the Israeli elections earlier this year.

Today, we're excited to launch the Facebook Live Stream Box as a feature that any website owner or developer can use to enable Facebook users to connect, share, and post updates in real-time as they witness an event online. You can run the Live Stream Box next to live streaming videos of concerts, speeches, sporting events, webcasts, TV shows, presentations, or webinars. Or run the Live Stream Box in multi-player games, or with any other experience where many people are visiting a website at the same time. The Live Stream Box is built for scale and can handle millions of simultaneous viewers updating in real-time.

With the Live Stream Box on your website, users log in using Facebook Connect and share updates that appear both within the Live Stream Box and on their Facebook profiles and in their friends' home page Streams. Each post includes a link back to the Live Stream Box on your site so users can discover the live event and immediately join based on their friends' recommendations. The Live Stream Box includes a tab to see updates from everyone who is posting on the event from across the Web as well as a filter for a user to view just their friends' updates. Please note that the information may move fast, so users will not necessarily see everything that comes through and cannot page through all the history.

The Live Stream Box is easy to install and takes just a minute to set up. You can include a Live Stream Box anywhere on the Web, or within your Facebook Page, or a Facebook application. To get the Live Stream Box on your website, get a Facebook API key, upload a small file to your website, and then embed a few lines of code into your Web page. Please see the full instructions here.

If you are interested in incorporating the Live Stream Box within your Facebook Page, you may be interested in an offering from UStream. They have supported numerous live streaming presentations, including a series of recent Jonas Brothers webcasts from their Facebook Page. During the second in a series of webcasts, fans posted over 1.5 million updates, averaging 23,000 posts per minute. You can read more details about UStream on Facebook Pages.

We're excited to see the various ways you'll incorporate the Live Stream Box in your websites and Pages, and hope to be there with you real time. Please send us any feedback on the Developer Forum.

Tuesday, June 16, 2009 at 3:21pm

Published by Julie Tung

Many of you already use Facebook's query language, FQL, to quickly retrieve Facebook data and integrate it into your application experience. For the uninitiated, FQL uses a familiar, SQL-style interface that gives you a powerful way to express exactly what data you want to fetch. For example, you can fetch specific fields from a given data table, or only rows that match specific constraints, reducing the amount of data that needs to be returned and parsed. You can also perform complex queries, like returning data for all of a user's friends.

Now we're taking steps to make FQL even more powerful.

We've just released a new Platform API method, fql.multiquery, which lets you send a batch of queries that Facebook processes all at once. What's more, you can use the results from query A, for example, in query B, even when both queries are included within the same fql.multiquery call. Simply specify the name of query A as if it were a virtual table when you formulate query B. You can format these queries as you normally would, so you can filter by a WHERE clause, and use ORDER BY and LIMIT, for example.

Say you want to display some profile information of friends who've posted on a user's Wall. Previously, you'd have to run two separate queries. First, you'd have to get all the posts from the user's stream from that user's friends. Then you'd have to extract the actor IDs from the results of the first query before you could make a second query to get the user data about the people who posted to the Wall. Now, with fql.multiquery, you can get all this information with one call. Here's the exact syntax of what you'd pass as the queries parameter in fql.multiquery:

$queries = {
  "user_stream":"SELECT post_id, actor_id, message FROM stream
    WHERE source_id=UID",
  "actor_info":"SELECT uid, name, pic_square FROM user 
    WHERE uid IN (SELECT actor_id FROM #user_stream)"
}

$facebook->api_client->fql_multiquery($queries);

Thus, fql.multiquery reduces the number of API calls you need to make to Facebook. Even if you use the existing batch.run method to perform multiple simultaneous queries, you'd still have to wait for the results of a given query before you could use those results in another query. Also, fql.multiquery can perform better than batch.run as it batches more intelligently.

You can order the queries in the call as you see fit; Facebook processes the queries in parallel as much as possible.

Finally, we're continuing to improve FQL performance on our back end, so your queries should complete even faster than before.

You can read more about fql.multiquery on the Developer Wiki. The method will appear in the PHP client library and in the API test console after tonight's push. And, as always, we welcome your comments and feedback in our Developer Forum.

Friday, June 12, 2009 at 10:18am

Published by Kelly Hansen

With over 950,000 developers using Facebook Platform to build applications that engage millions of users every day, we are focused on making the developer experience as positive as possible. To this end, we continually welcome your feedback and have heard that clarification on our developer support resources would be helpful.

When you need support with Facebook Platform, here are some great places to start:

Platform Events and Announcements
We want to keep you up-to-date with the enhancements we make to Platform. Announcements large and small are made on this Developer Blog. We invite you to subscribe to the RSS feed to make it easier to follow. Brief announcements and bulletins about Platform issues appear on the Platform Status Feed, which also has an RSS feed you can subscribe to. The weekly Push Changes article describes what the Platform engineering team has added or fixed in the week's code push (typically occurring Tuesday night).

Commonly Asked Questions
This week, we launched a Platform and Developer Support section in the Facebook Help Center. Here, you can find answers to commonly asked questions ranging from "What is Facebook Platform?" to "How do I get my apps back if I've been disabled?". We will actively add to and modify the content here to ensure the information stays relevant.

Developer Wiki
If you are looking for general information such as sample code, client libraries, and other technical reference material, you can find this on the Developer Wiki. If you ever find areas that could use further explanation, code samples, or correction, we encourage you to edit the page yourself or leave a suggestion on the Talk page.

Developer Forum
The Forum is a place to discuss or inquire about technical issues, policy matters or documentation. This is a great resource to get input and ideas from other developers in the Facebook community; we have dedicated team members reading and responding every day, to help you get answers quickly and easily.

IRC Channel
The Facebook Platform IRC channel is a good place to chat with other developers and Facebook team members in real time. You can connect using your favorite IRC client or Freenode's Java chat applet to chat in your browser.

Bug Tracker
If you need to report a bug or would like to make a Platform feature request, please use Bugzilla; we triage it several times every day in order to assign appropriate engineering resources.

Developer Help Contact Form
If you have any questions that can't be posted for public view, or would like your application reviewed for certain privileges such as embedding Flash content or access to special permissions, please use the Developer Help Contact Form. To have one unified and efficient channel, we have discontinued the direct support email addresses and Platform contact pages we used in the past.

Our goal is to provide the best possible resources to developers in order to make it easier and more rewarding to use Facebook Platform to create valuable and engaging applications.

We love to hear what you think, so please use the Forum to share your thoughts on these resources.

In less than six months, over 10,000 websites, applications and devices like the Xbox and Nintendo DSi have implemented Facebook Connect to provide new social experiences. We’re excited to share today that YouTube is the latest site to integrate with Facebook Connect. When logged into Facebook and YouTube, users can now automatically publish and share the videos they upload to YouTube directly to Facebook.

As more sites and applications implement Facebook Connect, the power of the social graph is extending across the Web, to the iPhone, gaming consoles, and TV, changing the way we view gaming, videos, concerts, and even church. Many of these sites are benefiting from increased distribution and engagement, as they enhance the user experience by making it easy to share and connect with real world friends.

Here are some examples of Facebook Connect implementations that are making everyday experiences more social:

On Your TV

  • Last week at E3, Microsoft announced Facebook Connect for Xbox, which will allow users to play games with their friends and share actions, screenshots, and replays back to Facebook via actions published to their Facebook stream. Also, be sure to check out this sneak peek at Facebook Connect technology with an Xbox game trailer, the Prototype Experience, and see how you and your friends are immersed right into the promotion for this game. Watch closely...
  • Facebook Connect will continue to extend to your TV next month, when Warner Brothers releases "Watchmen" with Facebook Connect on the Blu-ray BD-Live version. The integration will allow users to access their Facebook friend list and watch the movie with friends, wherever they are.

On the Web

  • Event producer C3 Presents recently integrated Facebook Connect with their Lollapalooza and Austin City Limits Music Festival websites to enable visitors to plan their festival experience and view which bands their friends will be seeing. Since integrating with Facebook Connect, page views for the sites are up 99%, pages per visit are up 34%, and average time spent on the sites is up 20%.
  • For the season finale of "The Real Housewives of New York City", Bravo integrated Facebook Connect with BravoTV.com to allow fans to connect with friends and comment on the show. After the live viewing party, traffic on the site increased 34% in unique visitors and 78% in page views, versus the prior four-week time frame.
  • Online church hub LifeChurch.tv implemented Facebook Connect last March just in time for Easter, allowing visitors to view a live feed of services and comment with friends and fellow worshipers. Over 23,000 unique visitors from 168 countries participate in the live feed each week.

On the iPhone

  • Top gaming app developer Playfish continued their success from Facebook Platform to the iPhone, with the launch of Who Has the Biggest Brain? on the iPhone with Facebook Connect. Since integrating with Facebook Connect, 90% of all players sign into the app with Facebook. The game also rose to #2 in the UK app store and was in the top 30 in the US.
  • iPhone users can read restaurant reviews and recommendations on the go with the Urbanspoon app, and when they sign in with Facebook Connect, can find trusted referrals from friends on local favorites. Since Urbanspoon launched with Facebook Connect in March 2009, 43,000 new users have connected to the app using Facebook. Those users have voted 150,000 times on restaurants, left 22,000 reviews, and uploaded 13,000 photos.
  • Location-based app Whrrl integrated with Facebook Connect to allow users to instantly connect with Facebook friends. Over 40% of users sign in with Facebook to easily add location-aware photos and posts and share them on Facebook.

We can't wait to see where the next innovative and interactive Facebook implementations take us! Get started here: developers.facebook.com/connect.php.

Tuesday, June 9, 2009 at 1:17pm

Published by Blaise DiPersia

Earlier today, we announced that we're planning to offer Facebook usernames to make it easier for people to find and connect with users and Facebook Pages. From its beginning, Facebook has been a place where people use their real names to share and connect with the people they know. By selecting a username, people now will be able to reflect their identity in the Web address for their user profile or for Facebook Pages by having a memorable URL rather than one with randomly assigned numbers.

We expect to offer even more ways to use Facebook usernames in the future. We are excited about this upcoming change, and we wanted to provide answers to some key questions that you may have as a developer.

How does this affect my canvas page URL, which is of the form http://apps.facebook.com/?

The changes announced today do not affect any canvas page or canvas page URLs. Canvas page URLs will continue to live on the domain http://apps.facebook.com at their current URLs. At the present time, the new username-specific URLs cannot point to canvas pages.

How do I sign up for a username for my Facebook Page or application profile? How many can I get?

Every Facebook Page or application profile that has more than 1,000 fans as of May 31, 2009, can get one username-specific URL associated with the page. If there are multiple administrators of a Page, the first username selected by any one of the administrators will be associated with the page. If you're an administrator, you can get more details here.

For your application profile, we recommend you choose a username that closely matches the name of your application. For a Facebook Page you maintain to promote your development company, you might choose your company name as your username.

How do I know if a username is available for my application profile or company Page? If it's not available, does this mean someone else took it? What can I do to get it?

You can sign up for a username starting at 12:01 a.m. EDT on Saturday, June 13, 2009, by visiting www.facebook.com/username. After selecting one for your application or company name, you will see a green check mark indicating that the name is available before you actually claim it. In some cases, your desired username may not be available because someone has already selected it or because we've reserved certain names that have been brought to our attention in an effort to help third parties protect their intellectual property and other rights. If your username is unavailable or you wish to report that another username infringes your intellectual property rights, please fill out our automated IP infringement form.

Be sure to check out this FAQ for answers to other common questions. As always, we appreciate your continued feedback in our Developer Forum.

Wednesday, June 3, 2009 at 10:29pm

Published by Ethan Beard

Last week was the two-year anniversary of our f8 conference, where Facebook Platform was first launched. I wanted to take this opportunity to provide an update on how far we’ve come and where Platform is heading.

Facebook allows users to easily share and connect with the people, organizations, and products they care about. Facebook Platform extended this by giving developers an easy way to build exciting new experiences directly into the core site. The result was the development of new classes of applications that transformed the social graph from being an abstract concept into a tool that enables a new level of sharing all across the world.

The growth we have seen on Platform has been tremendous. Today there are over 350,000 active applications on Platform from over 950,000 developers living in more than 180 countries. These range from simple applications created by single users to share with their friends to impressive businesses employing hundreds of people and reaching tens of millions of users every month and generating tens of millions of dollars of revenue. For example, close to 10,000 applications have 10,000 or more monthly active users, and more than 100 applications have more than 1 million monthly active users. Further extending the reach of Facebook Platform, we launched Facebook Connect less than six months ago, and today there are over 10,000 websites and applications using it to empower their users to connect and share with their friends across the Web, and on devices and consoles including the iPhone, Xbox Live, and Nintendo DSi.

Throughout the past two years, you’ve seen Facebook open more and more of the social graph through Platform. We joined OpenID and implemented it into Facebook. We launched the Open Stream API providing access to the News Feed on any site. In the future, you can expect us to continue to open the site and provide access to the underlying social graph and functionality of Facebook. We’ll also continue to help users discover the best applications on Platform through programs like Application Verification, and develop the Platform technology infrastructure so that it is as stable and robust as Facebook itself. Our goal is to ensure that Facebook Platform is the best place to build your business.

I joined Facebook because I believe it has the power to change the world in profound ways. I was inspired to join the Platform team because Platform is the tool that will amplify this effect into lives and a world far beyond that created by Facebook. Platform unites a tremendous community of entrepreneurs, technologists, businesses, non-profits, students, and others, who are all looking to change the world. If Facebook is to truly achieve its mission of making the world more open and connected, it will be Facebook Platform that extends this to the world.

On this second anniversary of our Platform launch, we'd like to hear about the impact Facebook Platform has had on you. Please sign the Memory Book, created by GroupCard.

Our plan is to print and hang your thoughts up for display in our new office.

Thank you for helping us grow our community around Facebook Platform, and for your active participation on our Developer site (posting to the forum, updating the wiki, and helping us find and fix bugs). Most of all, thank you for creating amazing experiences for our users.

We're committed to continuing to make innovating on and off Facebook easier, and we look forward to many more years with all of you!

Tuesday, June 2, 2009 at 12:23pm

Published by Julia Lam

The Facebook Platform team focused much of our attention in Colorado this month, starting off with the Platform team's Josh Elman speaking to over 250 technology professionals at the Glue Conference in Denver. He outlined our vision for how Facebook Platform can become a core part of the new social stack developing across the Web, and discussed new ideas about how social Web services form strong connections between people, like glue.

Facebook Platform's Dave Morin followed up in Colorado by journeying to Boulder to become a TechStars mentor and share how to leverage Facebook technologies with promising startups.

Meanwhile, the Facebook Developer Garage program was in full swing this month with five Developer Garages worldwide bringing their developer communities together to collaborate. The Facebook Developer Garage program serves as a forum to share information and ideas among developers and build together using Facebook Platform.

At the Facebook Developer Garage Cyberjaya, in Malaysia, a tight-knit group of over 70 developers gathered to learn more about Facebook Platform and how to build a basic Facebook application.

Over in London, developers focused on creating branded Facebook apps, emphasizing how they can enhance marketing campaigns. Top developers and online agencies discussed how marketing on Facebook has become an important tool in creating successful online campaigns. They also delved into the details of one of our newest products, the Open Stream API.

We next traveled to the Middle East, where the Facebook Developer Garage Dubai served as the first Developer Garage in the region. Local developers learned how to design a successful application and grow it through distribution channels and virtual currency.

At the Facebook Developer Garage Boulder, developers demonstrated innovation in their technology space by building unique social features into their websites through Facebook Connect. Dave Morin inspired developers to make the Web more social through Facebook Connect, the Open Stream API, and Facebook Connect for the iPhone. They also discussed Facebook becoming the largest Open ID relying party so far, and what that means for developers. Watch video of the event.

The month ended on the beaches of Miami where over 300 developers, marketers, and technology enthusiasts converged to discuss implementing Facebook Connect in under 15 minutes, Facebook Connect for the iPhone, and the Open Stream API. Facebook Platform's Yariv Sadan joined the community to share engineering insights on how best to implement our newest features.

If you'd like to host a Developer Garage in your region, please see our Developer Wiki to learn more about the program or check out the Platform Page to find more Garages near you. We look forward to seeing you at a Facebook event soon!

*Special thanks to Facebook Developer Garage Cyberjaya, Facebook Developer Garage London, IQPC, Facebook Developers Boulder, RefreshMiami and our sponsor Intel.

Monday, June 1, 2009 at 7:12pm

Published by Pete Bratach

As part of our ongoing effort to improve our communication with our developer community, we offer you our latest monthly roundup of the announcements, new features, and updates to Facebook Platform that occurred during May, 2009.

New Features

Updates

  • We simplified Platform Policy (including the Developer Terms of Service, Platform Guidelines, and Platform Policy), by reorganizing the documents into the Platform Guidelines and the Statement of Rights and Responsibilities.
  • We changed the name of the posts field — which is part of the comments array returned by stream.get and the stream FQL table — to comment_list for proper XML serialization. We'll return a list of comments in both posts and comment_list for the next two months, before deprecating the posts field entirely July 19, 2009.
  • We added more methods that you can control through the Permissions API.
  • photos.getAlbums now includes an extra field called modified_major in the results. This field indicates the time a major update (like addition of photos) was last made to the album.
  • We added a metadata field to the stream.get API call. This lets you specify albums, profiles, and photo_tags, so you can request this data concurrently with a single call to stream.get. These parameters strictly optional, but albums and profiles default to true (until we deprecate them June 9, 2009) to keep existing functionality from breaking.
  • Comments Boxes on Facebook Connect sites now open links to profiles in a new window rather than overwriting/navigating away from the Connect site.

Announcements

  • We kicked off fbFund REV 2009, our new startup incubator program for social websites, applications, and platforms.

Articles/Videos

  • Watch the Verified Apps video, which discusses why applications are better when they're social.

Keep an eye on this blog (or subscribe to the RSS feed), the Platform Status Feed (or subscribe to its RSS feed), and the weekly Push Changes articles for announcements, changes, and other important bulletins.

As always, we appreciate your continued feedback in our Developer Forum -- let us know how we can reach and communicate with you even better.