User:Drecodeam/GSoC 2012 Application

Identity
Name: Ankur Anand Email:drecodeam@gmail.com Project title: Integration of Flickr and Geolocation in UploadWizard

Contact/working info
Timezone: UTC+5.5(IST - India) Typical working hours:10 am to 3 am until July, 6pm to 3 am after July IRC or IM networks/handle(s): Drecodeam

Project summary
My project aims at implementing the following 2 parts:
 * Flickr Integration :
 * Providing an interface to allow user's to transfer images from Flickr where the Upload Wizard would extract the license and metadata from the photos, converting the license into a Commons License Template and passing on the metadata to the next step to generate the corresponding Wikitext.


 * Improving the Geolocation support
 * Implementing a JavaScript jQuery plugin which presents a map interface, which can be manipulated to select a particular location, and which can then report that location in code, preferably as wikiText containing a Location template. The plugin would take the use EXIF data contained in the media file to suggest an appropriate location and also can be manipulated to mark a new location for the media. I would further integrate it with the Flickr part to get the location information if provided.

The project would further improve the user experience of this extension, and hence the upload process on Wikimedia Commons as it is being used there. Also, i have already started working on implementing HTML Drag and Drop functionality, and would also tackle certain issues with the current code along the way. I believe that these changes would improve the upload process significantly and hence encourage more contributions to Wikimedia Commons.

Required deliverables

 * Integration with Flickr
 * Implementing an interface for the user to select images from a Flickr account or Photostream.
 * Extracting the license and metadata information from the selected photos. The license would then be converted into an appropriate Commons License Template and extracted metadata would be passed onto the "Details" step of the Wizard.
 * Transferring the images once done through the above steps


 * Jquery Plugin to provide an interface for the location of the uploaded media
 * Implementing the map interface according to the Geolocation specs given [1]
 * The map interface would take any existing information on location through the extracted metadata from media and also allow user to mark a new location through the interface.
 * It would then convert the co-ordinated into appropriate Location Template.
 * Would reuse the existing work done on this in the [|MediaWiki Maps extension.]

If time permits

 * Would work on integrating other services for automatic transfer of licensed media.

Project schedule
Try to break your deliverables into "milestones" which can be reached in sequence. Show us your estimated schedule of when you'll reach each functional milestone. Don't forget that real time may change -- leave enough buffer for your required features to be completed!

We suggest that you budget one-half to one-third of your time for merging with trunk, pre-deploy review, testing, bugfixing, documentation of course, and other integration work.

About you
We don't just care about your project -- you are a person, and that matters to us! What drives you? What makes you want to make this the most awesomest wiki enhancement ever?

You don't need to write out your life story (we can read your blog if we want that), but we want to know a little about what makes you tick. Are you a Wikipedia addict wanting to make your own experience better? Did a wiki with usability problems run over your dog, and you're seeking revenge? :-) What does making this project happen mean to you?

Participation
We don't just want to know what you plan to accomplish; we want to know how. Briefly describe your work style: how you plan to communicate progress, where you plan to publish your source code while you're working, how and where you plan to ask for help. (We will tend to favor applicants that demonstrate a clear vision for what it means to be an active participant in our development community.)

Past open source experience
Do you have any past experience working in open source projects (MediaWiki or otherwise)? If so, tell us about it! If you have already written a feature or bugfix in a Wikimedia technology such as MediaWiki, link to it here; we will give strong preference to candidates who have done so.

Any other info
Please add any other relevant information -- UI mockups, references to related projects, a link to your proof of concept code, whatever. There are no specific requirements, but we love to see people who love what they're doing. Show us you're excited about this project and have an interest in the background and are considering how best to make your idea work.