Facebook Needs a Developer Sandbox

October 29, 2007

While Facebook has done its best to offer third party developers a simple method for integrating applications, the social network has focused most of its effort on simplicity of use, accessibility of data, and component availability and diversity. While the efforts put forth by the Facebook team are commendable, there is an undeniable need for improvement in application testing opportunity.

Currently, the “Developer Mode” checkbox in an application’s setup prevents non-developers from accessing an application. However, this is only useful for new applications currently in development. Facebook does offer various test consoles, but these are only useful for unit testing at best. There is no means by which a developer can perform a rigorous test when changes need to be made while allowing Facebook members to continue to use the application’s current stable version.

Furthermore, while Facebook did introduce test accounts for testing applications a little over a month ago, these accounts are essentially useless due to the fact that they can only add applications that are already in production. And, considering that most serious developers never test code changes in production, having test users only available in production makes little sense.

Advertisement

The only alternative to developer accounts is to create fake user accounts and adding them to the application’s developer team. Unfortunately, because Facebook is intended to represent a real-world social graph, creating a fake member account is against Facebook’s terms of service.

Given these two major issues in the development process, Facebook needs to create a sandbox (e.g.: sandbox.facebook.com). Ideally, the sandbox will allow developers to maintain identical canvas URL’s for accessing an application (e.g.: sandbox.facebook.com/favorite-games/ would correlate to apps.facebook.com/favorite-games/). In addition, developers should be able to create multiple testing accounts that have access to these applications in order to test application changes.

By creating a developer sandbox, bug fixes and enhancements will be isolated, and the development process will be simplified tremendously. End users will have an improved experience with applications that utilize this sandbox as intended, and Facebook will receive greater positivity from news and media outlets surrounding its development platform.

Share on Facebook      Share This

Comments

12 Responses to “Facebook Needs a Developer Sandbox”

  1. Travis on November 1st, 2007 8:26 pm

    I’m with you 100%.

  2. Ludde on November 5th, 2007 6:30 am

    Amen to that!

  3. Cabbits! » Facebook needs Revsion Control Support/Solution on November 16th, 2007 12:31 pm

    […] know that Matt Huggins wrote an article addressing the same issue, his suggestion of a sandbox would be perfect for a Dev repository. I was […]

  4. kookimebux on February 1st, 2009 3:00 pm

    Hello. And Bye. :)

  5. Binit Kumar on May 2nd, 2009 8:51 am

    Its really a very helpful link with 100% accuracy.
    Thanks

  6. Daddy34 on October 22nd, 2009 7:01 pm

    She was not amused, it seems. ,

  7. John on March 20th, 2010 1:22 pm

    I develop applications for websites and use the following process:

    Development and testing on the Dev Server. When a release is ready it will be updated to the Production Server via SVN or some such method.

    This works well for me and I would assume most developers use some similar process.

    So, why don’t you just create 2 App profiles in FB?

    1. The test profile that points to your Dev server (Sandboxed)
    2. The production profile that points to your Production server

    Then you develop on the Dev server. The sandboxed application (1) which is used for testing cannot be accessed by any users other than developers so you can test it. You can even give friends or other developers access to test it by adding them as developers in the profile.

    When you are ready for a release do so as normal which will update the app code on the production server. Your users accessing the production profile (2) get the tested update.

    Seems like it will work ok for me. It’s what I’m planning to do.

    Anyway, my 2c worth.

  8. John (Telecube : 1300 Numbers | 1800 Numbers) on March 20th, 2010 1:35 pm

    Further, the problem with having to make 2 profiles could be easily fixed by FB developers.

    Simply make every App setup have 2 callback urls. One sandboxed and one live.

    I don’t think FB need to do much else, the dev and versioning is our responsibility which we handle on our networks.

    All FB has to do is merge the 2 profiles into one in the site where we set it up.

    Anyway another 2c worth…

    Someone owes me 4c! :-)

  9. Deven on September 12th, 2010 8:00 pm

    I currently use John’s method of setting up two FB apps one for testing and the other for production. However, if there are any other methods or tools I would be very interested to learn more.

  10. swapnil on January 12th, 2011 1:01 am

    wats up

  11. Velox on January 12th, 2011 11:32 pm

    I too, if there are any other methods or tools I would be very interested to learn more.

  12. apa on April 28th, 2011 1:32 am

    It’s not enough to sandbox only the application. For example, if you want to test an application that publishes stuff to a page feed, you may want a sandboxed page too.

Got something to say?





Close
E-mail It