You have chosen to sponsor your bid up to a maximum amount of .
High-level use case
* Want to take public data from social media site FACEBOOK for a given Personal Account, and retain it.
* Conceptually, if one was to look up a given Personal Account whilst logged into Facebook, then have all this data web-scraped
* Want this to only occur with the full consent of the owner of the Personal Account
Don't want to build a system based upon web-scraping. Two main approaches considered:
(A) Connect to the API of a social media data aggregator who can perform this function;
(B) Connect to Facebook (eg, via OpenGraph API) and extract this data. It is assumed this solution would involve building a Facebook App
(A) will not be pursued, because no suitable intermediary was found. For this reason, (B) is being approached.
* Build a Facebook App which gives obtains a user's consent and facilitates a login.
* Then downloads personal data from a FB user's account
* The app is essentially a "thin client" (obtain login authentication), most logic ideally handled externally (eg, server-side)
* Provide full documentation and explanation in order to be able to hand this project over to someone else
* Handover to be provided to someone familiar with many programming languages (C++, Assembler, Java, VBA, Python), but most proficient in Java/Eclipse.
* Output to be one of (whatever you find easiest):
-> XML (potentially with images/BLOBs as separate files, instead of Base64-encoded data in XML)
-> Input into a MySQL DB
-> Input into a Amazon-based data storage solution
The most important consideration is the solution of the High-level use case. All lower-level technical details are open for further consideration/discussion.
Important to understand what data will be retrieved by your solution. (eg, Personal Account user details, wall content: text, images, videos, posts by others, comments, users comments on other accounts, etc)
Additional Project Description:
04/05/2013 at 14:04 EST
I propose was setting up 3 milestones for this project:
(A) Architecture: Explanation of your proposed architectures/technologies. (Because I am flexible on what we agree here, provided the business outcome is achieved, knowing some methods may be superior to others)
(B) Implementation: Implementation and sample data retrieved (eg, if I logged into the app built, and saw the data sucked out of Facebook)
(C) Handover: Ability to be able to work with me (document, if you find easier?) to setup the DEV environment on my computer, and for me to make a minor modification and deployment to verify that I can make future changes/releases going forward.