Mining your Facebook social network

imageMany months ago, well before the latest Facebook redesign, I wrote an application to explore my Facebook social network in what I think is a fun and interesting way. Leveraging MIT’s Simile Exhibit project I developed SocialMine, an application that surfaces many attributes of your network’s profile information allowing you to filter and otherwise “mine” the data. As this is the hallmark of any Exhibit application, within the genre, I’d consider it to be quite plain were it not for the personal relevance of the data. Still, you can extensively filter the information in a live view including a Google Map.

Since the application relies on user provided profile data there may be cases where it simply doesn’t/won’t “work”. For example, I discovered a little over half of my friends haven’t specified a current location so they don’t appear on the map. On the other hand, I now know who those people are and can bug them to update their profile. 🙂 At any rate, I’ve had fun “mining” my network and thought you might too.

Lastly, having been developed for fun in my extremely limited free time largely after 12AM, SocialMine is by no means complete nor thoroughly tested. There I said it and should it fail utterly under load wouldn’t come as a huge surprise. FYI, if you have a lot of friends rendering the page could take significant time so consider yourself warned. For those interested, it’s written in C# using ASP.NET and based on my FDT Starter Kit. And now for those who find this a necessity a disclaimer…

Disclaimer: I make no warrantees expressed or implied, your mileage may vary, use at your own risk. For entertainment purposes only, accuracy of the rendered data is entirely control by your friends so consult them! Insert here any other relevant disclaimer related verbiage encompassing whatever problem(s) or situation(s) you may encounter while using SocialMine. Should you dislike SocialMine kindly remove it and simply move along. Consider yourself warned!

Now that that’s over, enjoy!

7 thoughts on “Mining your Facebook social network

  1. Found this via the simile-widget mailing list, pretty cool! Shame 87 of my 106 contacts could not be plotted. Its also a shame the map centres on the US (im in the UK :-). Still its a nice exercise!

  2. Awesome!
    I’ve still got to get more involved in facebook apps, but your’s is a really good start to learn some data-mining capabilities through their APIs 😀
    Nice one!

  3. I´ve got this error after the facebook login page:
    Server Error in ‘/SocialMine’ Application.
    Value was either too large or too small for an Int32.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
    Exception Details: System.OverflowException: Value was either too large or too small for an Int32.
    Source Error:
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    Stack Trace:
    [OverflowException: Value was either too large or too small for an Int32.]
    System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +7469443
    System.Convert.ToInt32(String value) +63
    facebook.web.BasePageHelper.EstablishSession(String sessionKey, String userId, String authToken, Boolean retry) in C:\Sandbox\fbdevtoolkit\Source\Facebook.web\BasePageHelper.cs:178
    facebook.web.BasePageHelper.LoadIFramePage() in C:\Sandbox\fbdevtoolkit\Source\Facebook.web\BasePageHelper.cs:157
    facebook.web.BasePageHelper.LoadIFramePage(API FaceBookAPI, Boolean useSession, Boolean autoAdd, HttpRequest request, HttpResponse response, HttpSessionState session) in C:\Sandbox\fbdevtoolkit\Source\Facebook.web\BasePageHelper.cs:128
    facebook.web.CanvasIFrameMasterPage.Page_Init(Object sender, EventArgs e) in C:\Sandbox\fbdevtoolkit\Source\Facebook.web\CanvasIFrameMasterPage.cs:41
    System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
    System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
    System.Web.UI.Control.OnInit(EventArgs e) +99
    System.Web.UI.UserControl.OnInit(EventArgs e) +77
    System.Web.UI.Control.InitRecursive(Control namingContainer) +333
    System.Web.UI.Control.InitRecursive(Control namingContainer) +210
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +378

  4. Hi Steve,
    I am very interested in the application that you created. and it was great!
    Now I get the assignment from my teacher to make the application of data mining on facebook too, and now I am confused where to start. 😀
    Steve, could you give me tutorials or Guiding to create data mining applications that will be made on the php platform?
    So I expect your help!
    Thq.
    Irfan

  5. I am also getting the error:
    Server Error in ‘/SocialMine’ Application.
    Value was either too large or too small for an Int32.
    ….
    OverflowException: Value was either too large or too small for an Int32.]
    System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +7469443
    System.Convert.ToInt32(String value) +63
    …..
    I think that this could be a culture-problem.
    In Germany is the Date dd-mm-yyyy and the seperators of numbers are semicolon instead of a point.

Comments are closed.