Oct 28, 2011

Social Software - part II

A few days ago, I spent some time abstracting out social software design. Since then, I've spent time trying to build a reference application on facebook. This has lead to further insights, which I relate in this blog as posts.

Reference Application
First a little about the reference app. My approach to gather insights is to come up with a compelling application (whether new or existing), and then trying to prototype it (the application). In this case, the application is targeted towards users who love sharing high resolution pictures with their friends on facebook. The whole process is hard to do today. From uploading the picture (cumbersome & long), to sharing (email attachments get rejected). So we couple the power of easy uploading of pictures using YouSendIt Folder API and the ease of sharing folders using Facebook API.


Lets dive a little further: suppose after every event, people upload their pictures to facebook. Now their friends do the same - soon we have a bunch of similar pictures all scattered in different facebook accounts (and converted to low rez to boot!). How do we get out of this mess? Can we get a person share an 'event' folder, and then everyone of their other friends upload to that event folder? What if our 'event' folder was just a search query on every friend's account? Now, we can pull up event pictures by doing a metadata query 

YouSendIt: the folder API allows us to upload pictures right from our desktop (just drag files or save files directly to a YouSendIt designated folder in your MAC/ WINDOWS). The folders have sharing permissions of read or read/ write. YouSendIt has generous storage available for free account: 2 GB.

Facebook: the 3rd party application API allows us to add a new application accessible on the website. In our case, YouSendIt shared or owned folders with appropriate permissions will be viewable on facebook application portal. 

Users will be able to click and download/ view pictures straight away from this application portal. In addition, any facebook friends can download YouSendIt desktop folder app (its free) to get all shared pictures automatically synchronized to their own desktop.

Technologies
For the application, we will be using node.js as our application server. Any new objects not covered by Facebook or YouSendIt API will be stored in a mongo DB instance. 

The code is getting written on github, and the application will be hosted on heroku.

Objects
The new objects that we will design will be the testing bed of learning of our Social Software design. In the process, we may extend facebook and or YouSendIt built in API objects.



No comments: