Over the past year, we have been amazed and at times even overwhelmed by the sheer volume of development on Facebook Platform. During our f8 conference in San Francisco on Wednesday, we shared the many lessons we've learned in the past year including the need for us to do more to partner closely with developers and to make sure our ecosystem is robust and ultimately thriving. We made several announcements about our commitment to improve, and I'll highlight a few here.
First are our guiding principles for great applications. Our vision for Facebook Platform has been to give you the opportunity to create applications that are deeply social and meaningful to users. After hearing from many of you and many users, we realized we need to be clearer about what this means. We've now published our guiding principles, which fall into three dimensions of meaningful, trustworthy and well-designed.
- Meaningful applications are social, useful, expressive and engaging. They advance our shared goals to give people the power to share and make the world more open and connected.
- Trustworthy applications respect users - their identity, their relationships and their attention.
- Finally, well-designed applications strive to be clean, fast and robust so they can deliver value to users at scale.
These guiding principles are core to Platform and you'll see us refer back to them in much of what we'll be doing with Platform going forward.
Secondly, we announced our Great Apps program to reward the applications that have provided value to Facebook users by embodying all of our guiding principles. These applications will gain greater visibility and deeper integration opportunities on Facebook, have earlier access to new features and receive more feedback through Facebook's growing partner management team. iLike and Causes are our inaugural Great Apps, recognized for how they've revolutionized user experiences in music and activism, respectively.
Finally, we know the openness of Platform when it was launched in May 2007 resulted in an overemphasis on viral distribution. While applications have provided countless benefits to people on Facebook, this emphasis on distribution also impacted the user experience and led us to limit access to communication channels. Our Application Verification program is designed to offer extra assurances to help users identify trustworthy applications -- applications that are secure, respectful and transparent, and have demonstrated commitment to compliance with Platform policies. Verified applications will benefit from added visibility on Facebook.
The verification program complements our ongoing policy enforcement against those applications who do not agree with our guiding principles around being trustworthy. In the coming year, enforcement will be based on principles in addition to rules, simply since we can never articulate a rule for every way an application could deceive users. This makes consistency and transparency on our part absolutely essential so you have a good understanding of what types of behavior are and aren't allowed. Our verification program and enforcement efforts will help the Platform ecosystem be safer for users and fairer for developers.
We are really excited to announce more Great Apps and to bring out the first batch of verified applications. Both selection and review processes will be open to you starting in September. Meanwhile, keep an eye on our new developer Web site for more details. We are committed to helping you succeed; these two programs are just the start of a new era for our partnership.
f8 ‘08 is here!! It’s gonna be a jam-packed event with something for everyone, and we’re psyched to welcome folks to the Design Center in San Francisco in a couple hours.
For those of you around the world that can't be here in person, we’d love for you to join the keynotes via webcast from 1:30 – 3:00PM PST on Wednesday 7/23. Mark Zuckerberg and Ben Ling will be speaking, and there is plenty of room for everyone.
If you can’t tune in then, we’ll be uploading the video to developers.facebook.com afterwards.
Webcast Link: http://www.visualwebcaster.com/Facebook/
The business track is an opportunity for developers to converse with colleagues and experts from the venture and start-up world. The panels and talks will be an end-to-end deep dive on building successful businesses within the Facebook ecosystem. Get the tools you need as an app developer to master business conception, execution, marketing, profitability, and fund-raising in a track that promises to be faster and cheaper than getting an MBA. No calculators required.
What to expect:
3:30-4:15pm Building a Business on Facebook
Joe Greenstein (CEO, Flixter), Tim Kendall (Director of Monetization, Facebook), Jeremy Norberg (Founder, All Widgets), Shervin Pishevar (CEO and Co-Founder, Social Gaming Network), Tim O’Shaughnessy (CEO and Co-Founder, LivingSocial)
This panel will unravel the elusive intermediary step between building an application...and achieving profitability. If you’re interested in exploring solutions for profitability on the Facebook Platform, then come discuss with the CEOs and Founders of top-notch social technologies and social media companies.
4:30-5:15pm Marketing and Measuring your Application on Facebook
Dave McClure (Master of 500 Hats), Jai Shen (Co-Founder and CTO, RockYou), Kent Schoen (Product Marketing Manager for Facebook Ads, Facebook)
When it comes to marketing your app in a murky and vast sea of applications, who better to help you navigate than 3 Pirates? Dave McClure, renowned for coining the famous marketing strategy “AARRR!,” will be joining Kent Schoen and Jai Shen to share their perspectives on viral marketing, app metrics, and analytics. This session promises to be an engaging look at achieving virality from three awesome Silicon Valley personalities who put the fun in analytics (seriously).
6:00-6:45pm Entrepreneurship on Facebook Platform
Mike Cassidy (Entreprenuer, Founder of XFire), Matt Cohler (VP Product Management, Facebook and future GP, Benchmark), Bing Gordon (Partner, Kleiner Perkins), Reid Hoffman, Mark Pincus (Founder and CEO, Zynga)
The Entrepreneurship panel of veterans may only have a mean age of 35, yet they are some of the most seasoned, multi-company entrepreneurs and venture capitalists in the area. With these five superstars combined, you might think this session could be the pilot episode for Entrepreneurship Idol. Come have a meaningful dialogue about starting a company with the giants as they reveal their secrets for success.
7:00-7:45pm fbFund: A Look Inside - Seeding Opportunity on Facebook Platform
Cat Lee and fbFund Recipients
If you ever wanted a piece of the $10M fbFund – then come meet Cat Lee and engage with 10 fundees at the fbFund session. Extra grant $$ >> ramen noodles. You’ll learn about what selection criteria the fbFund is looking for and how you can apply for a grant.
This track is more like an "extended conversation" to help you make your ideas happen. Our speakers are looking forward to sharing their experiences and hearing great questions from the audience. We encourage you to react, contribute, and converse throughout this track.
Looking forward to seeing you all again this year!
f8 gives everyone a chance to come together and shop-talk about what folks have learned over the past year, what's brewing right now, and what the future of Facebook Platform can and should be. During the technical track sessions, we'll have discussions about site and application scalability, what makes a useful and capable application, and the best ways to communicate with users about your application, all focusing on new stuff we've built to make all of these challenges much easier. We also want to share some insight into how we're thinking about one of the other great spaces of application -- the mobile app. You'll hear some of our top engineers talk about the way we built the technology (and how we've tackled some of the hard problems that came along the way), and we know we can benefit big time from hearing your own thoughts on all of these subjects.
The track includes four separate sessions, so you can choose which ones sound interesting to you:
3:30-4:15pm Building to Facebook Scale
David Braginsky and Serkan Piantino
Learn how Facebook scales some of our key services to billions of requests per day. (Hint: It's our architectural toolset). Taking our beloved News Feed system as a case study, our engineers walk through building its architecture with the help of Facebook's architectural tools like Thrift and Scribe.
4:30-5:15pm Advanced App Building
Charlie Cheever and Sasha Rush
It's easy to build a simple Facebook app in a few hours, but successful developers spend a lot of time understanding the ins and out of Platform. In this talk, engineers behind Facebook Platform will reveal the inside tricks for putting together a responsive, robust application. Fast track your application's page generation *and* page rendering performance by learning tried-and-true app design patterns, including smart uses of the API, FQL improvements, advanced features of FBJS, and more.
6:00-6:45pm Feed and Social Distribution
Ari Steinberg, Jerry Cain, and Tom Whitnah
Social distribution channels like News Feed, requests, and notifications offer some of the most powerful features available to Facebook Platform applications. Three engineers behind all this show how to design even more compelling examples of these with a fierce two-pronged attack: an overview of some fresh new technical capabilities, and guidelines for using these channels effectively. Hot from the oven are the new Publisher, Feed templates with new story sizes and aggregation hooks, revised Feed forms, announcement notifications, and indispensable stats and monitoring.
7:00-7:45pm Made for Mobile
Jed Stremel and Pedram Kayani (Q&A with Joe Hewitt)
Mobile is everywhere. On Facebook Platform, too. These devices are opening up and creating new opportunities to build Facebook applications that extend beyond the Web, for ten million mobile users and growing (fast!). Jed, Pedram, and Joe give insights into mobile application development and show you how to get started using Facebook's new development framework for the Apple iPhone.
The sessions are designed to be a conversation. Our speakers will start off showing you both what we've been creating and what we've learned along the way. Then, in true social style, we invite you to share your reactions, thoughts, and ideas with our engineers and each other, the people who together make all this happen.
Can't wait to see you there.
It’s been over a year since we launched Facebook Platform at the last f8 conference, and we’re excited to see you again this year! We’re looking forward to chatting with you about what we've all learned over the past year, and how we can continue to build a better ecosystem together.
The user experience track at f8 covers how we think about designing user experiences in our own products, and we hope you’ll contribute what you’ve learned about serving your users. All of our presentations include recommendations and best practices from our own experiences building products for millions of users, and we’ll discuss how we incorporate user feedback to rapidly iterate on and improve products. We also want to hear about your own experience as you’ve tackled these problems.
This year, we’re offering four sessions in the user experience track, covering everything from how to build for new and upcoming Facebook functionality such as Facebook Connect and the new Facebook design, and a conversation with top application developers about best practices for building social applications. A few members of our design team will also join us for a session on how we approach design and user experience at Facebook.
3:30 - 4:15 pm: Introducing the New Facebook Profile & More
Ruchi Sanghvi and Josh Elman
In this session, you will learn everything you need to know about the new Facebook profile, Feeds and other changes to Facebook Platform, including new authorization and user permissions. Learn how to successfully modify your applications to take advantage of the new integration points.
4:30 - 5:15 pm: Integrating Facebook Connect into your Website
Dave Morin and Mike Vernal
Since 2006, Facebook Platform APIs have supported integration into your website to make your site social. In this session, we will walk through the new features that will be available with Facebook Connect. Learn how Facebook Connect can help you socialize and streamline your website using trusted authentication, real identity, friends access, and dynamic privacy.
6:00 - 6:45 pm: Building Great Applications on Facebook
Sandra Liu Huang (Moderator); Hadi Partovi, President & Co-Founder, iLike; Joe Green, President & Co-Founder, Causes; Sebastien de Halleux, Chief Operating Officer and Co-Founder, Playfish; and Ashley Randall, Senior Product Manager, TripAdvisor
Over 24,000 applications have been launched on Facebook Platform in the last year. In this session, we'll discuss guiding principles and best practices for designing great social applications that stand out. Hear from other developers on what they’ve learned and done to create compelling user experiences.
7:00 - 7:45 pm: Design and User Experience at Facebook
Julie Zhuo (Q&A with Aaron Sittig)
At Facebook, we are constantly working to make Facebook easier and more efficient for more than 80 million active users. Hear directly from the Facebook Design team on how we think about design and user experience at Facebook and how you can apply this to your applications for a seamless integration. The team will cover how Facebook designed its earliest applications such as Photos and Events.
Join us for the sessions that appeal to you, and check out the rest of the conference schedule. We’re looking forward to hanging out with you at f8 – see you soon!
With the launch of the new Facebook site comes all sorts of great ways for applications to deeply integrate into user profiles, and increase communication and interaction with users. Today we share a set of new policies to help developers better understand our intentions in offering these enhancements. We've tried to be as specific as possible but ask that you follow the spirit and not just the letter of these rules.
Facebook is about empowering and connecting people through the sharing of information. That's undermined if users who receive an invitation or other communication suspect it was sent for an ulterior motive, such as gaining points in a game. Similarly, because users represent themselves through their profile, they shouldn't be goaded into adding a tab or other integration point just to see content they could have seen anyway, or in trade for some unrelated benefit.
There is an implicit social contract you should respect as a facilitator of user-to-user interactions, and in the trusted relationship you have with your user. Therefore, we are introducing new policies to prevent applications from creating artificial or inappropriate incentives to use Facebook features (including, for example, sending requests and adding profile boxes). We're also extending the existing prohibition on unnecessary gating of application features or information, to including permissions and integration points.
-
Application integration points empower users to represent themselves or gain value through applications. Developers can have links to these features in their application (so navigating to the link leads to a prompt for a permission), but they should not intrude on the user's experience by prompting for a permission if doing so isn't appropriate in the natural flow of events.
As is the case today with application profile boxes, advertising cannot appear on the newly launched features that deeply integrate into profiles (tabs, Publisher, and application info sections). Developers can continue to run advertising on canvas pages and monetize their applications in other ways.
Notifications and Feed stories should be timely, accurate, informative, valuable, non-deceptive, and anticipated by the sender. They can contain calls to action, which are sometimes great ways to stimulate engagement and sharing of information. But to do that, they must be on-topic, oriented towards the user's interest, and non-spammy.
Most of the policies we're announcing today apply to features being introduced with the new profile. We ask that in your implementation on http://www.new.facebook.com you immediately abide by all previously published applicable policies. All policies published today that cover newly launched features (such as Feed forms, Publisher, application tabs, additional permissions, etc.) should be adhered to by noon Pacific time 28 July 2008 (after which you may be subject to enforcement), except the no-advertising rules, which apply immediately.
Some new policies apply to existing features as well: for example, not incentivizing requests, and using only appropriate calls to action in notifications and Feed stories. We are in the midst of a transition period, where the new site is available on an opt-in basis, but both are running concurrently. To best accommodate your transition efforts during this time, we will delay enforcement of new policies pertaining to existing features until noon Pacific time 11 August 2008. But these rules are in the best interest of users and we hope you'll comply as soon as possible; in special cases we may reach out asking for faster action, so as always please monitor the contact email address you've set for official Facebook notices.
We're looking forward to all the creative ways developers will deploy the new powers of Facebook Platform. Please read the new policies carefully and feel free to reach out with any feedback or requests for clarification. For confidential matters write us at developers-help@facebook.com. But otherwise please use the Developer Forum, where we'll be participating and the whole community can join in.
Paul leads the Platform Developer Operations & Support team.
We are thrilled with the positive response to f8 and wish all of you could attend. We know that with over 400,000 developers in 160+ countries, it’s impossible to bring everyone together for a single day in one place. To keep everyone connected, we have arranged to provide a live webcast of the main stage presentations from 1:30 – 3:00pm PST on Wednesday 7/23. You’ll be able to watch Mark and Ben in real time as they review developments over the last year and talk about the future of Facebook Platform. If you can’t tune in then, we’ll be uploading the video to developers.facebook.com soon afterwards.
We’ll send out the link Wednesday morning PST on the blog and at f8 '08. Stay tuned!
We've received a lot of feedback ever since we announced that we're changing how users authorize applications. Since we offered more details last week, we've made additional changes to make this even simpler and better for both users and developers, by allowing access to basic user information while maintaining user choice and control. These changes will be available later today (Monday) in the sandbox.
Users have always been able to interact with your application's canvas page without logging in to or adding your application. Now, when a user who has opted in to the new profile actively chooses to visit your application's canvas page from Facebook, we'll allow your application to call for information about the user and her friends that they've made available in public search listings, namely the UID, profile picture, and name of the viewing user and the UIDs of her friends. Access to this information is subject to the Facebook Platform Terms of Service, and this information is not provided for any user who decided to completely opt out of Facebook Platform or whose profiles aren't publicly searchable). When the user is on your canvas page, the user can also use Feed forms and request forms, because they require user approval. The user can interact with your application in the Publisher on a friend's profile. You can publish one line stories with the user's approval. If a user changes her privacy settings, then her information is no longer available.
On the canvas page you can prompt the user to allow your application to access more information and ask for additional permissions. This is essentially the same as what we earlier announced as authorizing an application, but now the experience is even more lightweight -- see the sample login dialog to your right. This Ajax dialog replaces the current add page and the login screen you saw in earlier posts.
Once the user allows access, you can start sending notifications; publishing short and full stories with user approval, and one line stories without approval; accessing the user's profile data and setting FBML (though the user has to approve any box). You can prompt the user for extended permissions, like granting offline access to your application, the ability to send email, or updating status (note: offline access replaces the concept of an "infinite session").
A user only has go to through this experience once to allow access for your application. The application will appear in the user’s list of all applications, where the user can remove access at any time.
When the user allows access, we'll ping your application (at what's now known as a post-authorization URL) with a callback to let you know that the user has allowed your application to access her data. You can also redirect the user (using a post-authorization redirect URL) if you need to take the user somewhere else.
We'll also grant your application a temporary session key that lasts up to one hour after the user stops interacting with your application, or until the user logs out of Facebook (in which case, the session ends immediately). When that user interacts with your application, or visits the canvas page, we'll renew the session key. We'll keep renewing the session key as long as the user keeps interacting.
Users who have previously added your application will be migrated to temporary sessions by August 15th. During the user preview period you will receive temporary sessions for all new users of your application who have opted into the new profile. After the preview period ends, all new application users will receive temporary sessions.
In addition, a user can grant a permanent session key for use in your application. You can prompt the user to grant your application offline access using the fb:prompt-permission FBML tag and the promptpermission attribute.
If the user explicitly grants your application offline access, then you can continue to use that key for this user. There are two ways a user can deny offline access after they've granted it; by revoking the extended permission from the application, or by removing the application. Removing an application also removes the application's integration points and all permissions.
Don't forget: Since we are eventually going to deprecate add.php, change those require_add calls to require_login. We're redirecting any calls to add.php to login.php. The exception is for the case of a user adding an application to a Facebook Page, in which case add.php will still function like it does today.
Contacting Us
We continue to want to hear from you about the new design and your experiences trying it out. Please report any bugs you see in the new design. Make sure you use the New Profile category. You can help us solve your issue faster by adding one of the following components to your report: Feed, Info Sections, Profile Boxes, Publisher, and Tabs.
You can send us your feedback and ask questions in the New Profile and Related Changes section of the Developer Forum.
There are so many great ideas floating around Facebook, but there is never enough time to implement them all. In order to attempt to solve this problem, we engineers throw a Hackathon at Facebook every few months. Hackathon is an all-night-long hack session that gives every Facebook engineer a chance to work on that awesome feature they've been meaning to build for so long. Many of the cool features that you see on the site today were either built during or were started during a Facebook Hackathon. Don't let the intense name fool you, though, apart from hardcore programming, there is plenty of room for fun during our Hackathons. Hackathons regularly feature music played by our DJ engineers, hanging out over late-night Chinese food, Ripstik races around the office, and Rock Band jam sessions. And there is always plenty of Red Bull!
Like last year's f8, this year's f8 will also feature an 8-hour Hackathon for all f8 attendees. During this year's Hackathon, you will have the chance focus on hacking the new platform interfaces like the Profile Publisher, App Tabs, and Feed Stories. If you have any questions or need assistance, we'll have dozens of our very own Facebook engineers at your disposal to help you. Because we want you to follow a more normal sleep schedule than we Facebook engineers swear by, the Hackathon won't last all night long, and instead will be held from 3pm till 11pm.
We're also going to be giving away some sweet prizes (including an XBox 360 and a PS3) for the best ideas, collaborations, and prototypes that emerge from this year's Hackathon. Additionally, due to overwhelming response, we’ll be holding two workshop sessions that will take place during the hackathon: “App building 101” and “Taking your application global.” Check out the f8 page for more info. If you need a break from hacking during the event, we'll have an abundance of food, music, and Guitar Hero for all of you. And of course, there will be plenty of Red Bull to go around.
The countdown to f8 has begun! The team here at Facebook is hard at work getting ready to see you to the San Francisco Design Center for f8 '08, on July 23. And, we wanted to take some time in the next 8 days leading up to the event to share more information with you about all of the awesome things we have planned for you.
Over the next 8 days we'll post a series of blog and video posts about f8. We want you to get to know some of the faces and names here on the Facebook team that will be speaking, presenting, and hanging out at the event. Sharing more information now means that you can have a better idea of what sessions you might want to attend at the event.
Also, we wanted to be sure that everyone knows that the times on the keynote have changed from what we originally published. The keynote will be from 1:30 to 3pm — it’s earlier than the original schedule, and we wouldn’t want you to miss it. Up-to-date information will always be available on the f8 Page.
We’ll be back tomorrow with more on f8, so check back in. See you soon!
With the new profile design preview launching to our users some time this week, we'd like to call your attention to some new features and enhancements we've added to Platform.
IFrame Popups. Now you can render Feed forms and prompt users to add profile boxes and application info sections in iframes with JavaScript. A JavaScript call to prompt users to approve extended permissions in an iframe is coming soon.
API Tier. The api.new.facebook.com domain points to a larger tier so you should have less trouble setting information for your apps. All new API calls should still call api.new.facebook.com during the user preview period.
New Parameters. We're now sending the following parameters to canvas pages:
- fb_sig_in_profile_tab -- This parameter indicates whether the current request is for a user's tab content. We're sending this parameter instead of is_tab now.
- fb_sig_profile_user -- This parameter specifies the ID of the user whose profile is being published to. This is in addition to fb_sig_user, which specifies the ID of a user who is interacting with the Publisher.
Accessing User Data without Sessions. You can get the following information about a user without an active session key by using the new method, users.getStandardInfo:
- uid
- first_name
- last_name
- name
- timezone
- birthday
- sex
- affiliations (regional type only)
Checking for User Authorization. We've released a new call, Users.isAppUser, so you can determine whether or not a given user has authorized your application.
Prompting Users for Extended Permissions. So you can prompt your users to grant extended permissions for your application, we've released a new FBML tag, fb:prompt-permission. The permissions users can grant to your application include:
- Allowing email to be sent to the user
- Granting an infinite session for your application
- Updating user status
- Uploading and tagging photos
- Creating and modifying Facebook Marketplace listings
You can also prompt a user for an extended permission on a form by passing the promptpermission attribute.
Prompting Users to Add Boxes to Profiles. You can provide some content to encourage your users to add application info sections and profile boxes to their profiles. Wrap this content in fb:if-section-not-added tags.
Notifications. For further clarification on notifications, you should use general notifications whenever your application is sending a notification on behalf of one user to another user. The user you are sending the notification to can be either another user of your application (including friends of the sender) or a friend of the user who is not a user of your application. We're adding support to send notifications from one user to another user even if they are not friends, as long as both are users of your application. General notifications must always be sent with an active session for the user who is sending the notification.
Announcement notifications are a new type of notification. They are sent on an application's behalf to a user of the application and do not require an active session. They should be in the voice of the application.
Contacting Us
We continue to want to hear from you about the new design and your experiences trying it out. Please report any bugs you see in the new design. Make sure you use the New Profile category. You can help us solve your issue faster by adding one of the following components to your report: Feed, Info Sections, Profile Boxes, Publisher, and Tabs.
You can send us your feedback and ask questions in the New Profile and Related Changes section of the Developer Forum.
As you may or may not know, f8 '08 has officially sold out! Due to a continued high demand for tickets we are going to release 100 additional tickets now. Please register ASAP as this will be the last ticket offering. We are incredibly excited for the conference, and we are looking forward to seeing you all there!
We hope you’ll stick around after the conference to continue the f8 celebration with all of our Facebook employees. There will be entertainment, free food, and a couple special events specifically for developers that we’ll announce next week.
Event Details:
Wednesday, July 23rd, 2008
12:00 - 8:00 pm
The Design Center at the San Francisco Concourse
635 8th Street (West Entrance)
San Francisco, CA 94103
Travel:
If you haven’t booked your hotel please call the Parc 55 and tell them you are coming to the Facebook event. You will receive a discounted room for $149 a night.
Exhibitors:
Interested in exhibiting at f8?
Email f8exhibit@facebook.com.
Press:
Qualified press can send an email to f8press@facebook.com to request a pass.
Questions:
Email f8@facebook.com.
Next week, we begin rolling out the new profile design to our users on an opt-in basis. Every user may not see it at first, but we’ll keep extending the rollout to more users.
You should continue updating your applications, and have them ready before the preview launch, because users will want to see your application within their new profile experience.
Note: We currently plan to launch the new design to all users one to two weeks after the rollout begins. We will give developers at least 24 hours notice before the final switch occurs.
We’ve been receiving some questions about migration and about session changes and we hope this addresses them.
PHP Client. Make sure you're using the correct PHP client. The one to use for the new profile is located at http://svn.facebook.com/svnroot/platform/clients/php/branches/redesign-changes/.
Old vs. New: Determining Which Site a User Is Using. We will pass in the fb_sig_in_new_facebook parameter on all pages on the site. Use this to determine whether a given user is using the new profile (true) or the old one (false).
Feed Stories. During the user preview period, Feed stories submitted through the APIs will appear on both old and new profiles. The old Feed API calls (feed.publishStoryToUser, feed.publishActionOfUser, and feed.publishTemplatizedAction) will render the appropriate Feed story on the old profile, and render one line stories on the new profile. The new Feed API call (feed.publishUserAction) will work as expected on the new profile, and will render one line Feed stories on the old profile. All Feed stories will be aggregated and shared in News Feed as they are today.
Note: When the new profile launches in full, only feed.publishUserAction will work to publish Feed stories. So we recommend you create and register your Feed story templates now and start testing and using that method.
Changing require_add to require_login: During the user preview period, require_add will continue to work on the old profile only. When calls are made to require_add on the new site, the user will get redirected to login.php instead. There will be a simplified authorization screen (a much friendlier version of login.php) that will be available on the sandbox soon.
Going forward, you should start using require_login instead. If you use this method, it will open a simple Ajax authorization window instead of requiring a redirect to another page at all. We plan to deprecate require_add entirely in the future.
User Sessions: During the user preview period, we will still grant infinite sessions to your Web applications for users on the old profile. However, we'll grant temporary sessions to your Web applications for users on the new profile. Temporary sessions last 24 hours, or until the user logs out, whichever comes first. After we launch the profile to all users, we will grant temporary sessions to all Web applications.
More clarification on changes to session keys, and about infinite and active sessions, is available on the Developers Wiki.
Accessing User Info: Once a user has authorized your application, you will be able to access a set of standard information about this user at any time without a session. This includes data such as name, time zone, birthday, gender, and more. Use of this data must still adhere to Facebook Terms of Service and Developer Terms of Service.
The method users.getInfo and certain FQL queries will now require active sessions to access information beyond the standard information for use in your application.
We will publish the final details and methods to use for this soon in our next post.
API Calls: For many calls, session keys are now optional. If you continue to pass valid session keys, we'll ignore them. We recommend you remove session keys from the appropriate calls now.
Notifications: With the new profile, there will be two types of notifications: general and announcement notifications. General notifications require active user sessions, which use the sending user's active session (with the same allocation amounts as today).
Announcement notifications are sent on an application's behalf. An application can send 7 announcement notifications per user per week when the new profile goes live. This number will fluctuate as allocations change, based on user feedback, like today.
To account for these changes, we've added a type parameter to notifications.send, which can be set to general or to announcement (the default is general).
Contacting Us
We continue to want to hear from you about the new design and your experiences trying it out. Please report any bugs you see in the new design. Make sure you use the New Profile category. You can help us solve your issue faster by adding one of the following components to your report: Feed, Info Sections, Profile Boxes, Publisher, and Tabs.
You can send us your feedback and ask questions in the New Profile and Related Changes section of the Developer Forum.
We're getting close to launching the new profile design to our users, and we wanted to give you a heads up to make sure your applications will be fully ready by the launch.
Users can start exploring the new profile during the week of July 14. They can begin to opt in and view the entire new site as a beta, similar to today's sandbox, only with all pages available, including the home page, and all the features you'd expect to see, such as News Feed, application invites, and notifications.
We encourage you to have your applications well-tested and ready for the new profile ahead of this date. You can review all the new features on the Developers Wiki, as well as the changes we're making to existing Platform components.
We'd also like to call out three changes we recommend you have ready next week, since users that choose to try out the new site will have their profiles migrated when they first visit the site:
- You should start using require_login instead of require_add.
- You should start accounting for the changes to user sessions.
- If you plan to specify new profile boxes for the main profile section (the Wall and Info tabs), start using the profile_main attribute when you call profile.setFBML.
Early next week, we'll post more answers to FAQs and share the new policies around the new profile design.
Contacting Us
We continue to want to hear from you about the new design and your experiences trying it out. Please report any bugs you see in the new design. Make sure you use the New Profile category. You can help us solve your issue faster by adding one of the following components to your report: Feed, Info Sections, Profile Boxes, Publisher, and Tabs.
You can send us your feedback and ask questions in the New Profile and Related Changes section of the Developer Forum.
Tickets are selling out quickly for f8 '08, so be sure to purchase yours before Monday, July 7th at the discounted rate of $150. On July 7th ticket prices will go up to $250. A limited amount of student tickets are still available at a rate of $50.
You can register here.Event Details:
Wednesday, July 23rd, 2008
12:00 - 8:00 PM
The Design Center at the San Francisco Concourse
635 8th Street (West Entrance)
San Francisco, CA 94103
Exhibitors:
Interested in exhibiting or sponsorship opportunities at f8? Email f8exhibit@facebook.com.
Press:
Qualified press can send an email to f8press@facebook.com to request a pass.
Questions:
Email f8@facebook.com.
f8 '08 Sessions
The f8 '08 sessions cover three different tracks with four sessions per track.
Track 1: User Experience
Introducing the New Facebook Profile & More
In this session, you will learn everything you need to know about the new Facebook profile, Feeds and other changes to Facebook Platform, including new authorization and user permissions. Learn how to successfully modify your applications to take advantage of the new integration points.
Integrating Facebook Connect into your Website
Since 2006, Facebook Platform APIs have supported integration into your website to make your site social. In this session, we will walk through the new features that will be available with Facebook Connect. Learn how Facebook Connect can help you socialize and streamline your website using trusted authentication, real identity, friends access, and dynamic privacy.
Building Great Applications on Facebook
Over 24,000 applications have been launched on Facebook Platform in the last year. In this session, we'll discuss guiding principles and best practices for designing great social applications that stand out. Hear from other developers on what they’ve learned and done to create compelling user experiences.
Design and User Experience at Facebook
At Facebook, we are constantly working to make Facebook easier and more efficient for more than 80 million active users. Hear directly from the Facebook Design team on how we think about design and user experience at Facebook and how you can apply this to your applications for a seamless integration. The team will cover how Facebook designed its earliest applications such as Photos and Events.
Track 2: Technical
Advanced App Building
It's easy to build a simple Facebook app in a couple hours, but successful developers spend a lot of time understanding the ins and out of Platform. In this talk, engineers behind Facebook Platform will reveal the inside tricks for putting together a responsive, robust application. Fast track your application by learning the caching features of FBML, advanced features of FBJS, smart uses of the API, and more.
Feed and Social Distribution
One of the most powerful features of designing for Facebook Platform are the social distribution channels. With the new Facebook profile, learn how to design great Feed stories that take advantage of Feed templates and new story sizes. We'll walk through examples of useful requests and notifications – and not-so-useful ones too.
Building to Facebook Scale
Learn how Facebook scales some of our key services to handle hundreds of millions of requests per day. We'll talk about our News Feed system and how it fits into the rest of our site's architecture through tools like Thrift and Scribe.
Made for Mobile
Mobile devices are opening up and creating new opportunities to build Facebook applications that extend beyond the Web. We’ll talk about methods for mobile development and engage in a Q&A on how to get started.
Track 3: Business
Building a Business on Facebook / Metrics & Analytics
In this session you will learn everything about how to build a business on Facebook Platform and measure your success. Hear first-hand from developers who are doing it and learn more about the vision behind creating businesses on Facebook Platform from Facebook Director of Monetization, Tim Kendall. Developers will explain the different approaches they've taken to building business models, such as advertising, e-commerce and consulting. A Facebook Platform engineer will join to provide a deeper look at the metrics available on Platform for measuring user and business growth.
Marketing your Application on Facebook
You've developed an application. Now what? This session will cover end-to-end marketing and distribution of your application on Facebook, from leveraging deep understanding of metrics and analytics to optimize your user experience to leveraging Facebook marketing tools. We'll guide you through the tools that will help you optimize your distribution and share some best practices to increase the virality of your application.
Entrepreneurship on Facebook Platform
The tools for success as an entrepreneur have never been more accessible than with Facebook Platform. Learning how to raise funding, build a team, and achieve success as an entrepreneur is an important part of building a business on Facebook Platform. In this session you'll hear from industry luminaries in venture capital and seasoned, multi-company entrepreneurs that will reveal the secrets of their success on Facebook Platform.
fbFund: A Look Inside -- Seeding Opportunity on Facebook Platform
Learn about the inner workings of fbFund and see what the grant winners are developing. FbFund representatives will share insight into the selection criteria, goals and the lessons learned in building an all-new fund for Facebook Platform. Learn more about the fbFund Developer Competition where your application can earn up to $250,000.
Recent News
Updates to the Facebook Home Page
February 4, 2010
New Terms for Advertising Providers on Facebook Platform
February 3, 2010
HipHop for PHP: Move Fast
February 2, 2010
Communicating Directly with Your Users via Email
January 20, 2010
Building on our Commitment to Open Source Software
January 12, 2010
Postcards from December Developer Events
January 6, 2010
December 2009 Platform News
December 31, 2009
A Look Back on the App Economy of Facebook in 2009
December 22, 2009








