Difference between revisions of "User:Ershad/GSoC2013 Malayalagrandham"

From SMC Wiki
Line 70: Line 70:
=== How you intend to implement your proposal ===
=== How you intend to implement your proposal ===
Our technology stack is Ruby on Rails web framework with MySQL backend. We will be using the following Open Source gems and modules :
Technology stack is Ruby on Rails web framework with MySQL backend. We will be using the following Open Source gems and modules :
# devise - User Authorization
# devise - User Authorization

Revision as of 14:48, 24 April 2013

Google Summer of Code 2013 Proposal for Swathanthra Malalayalam Computing

Personal Information

 Email Address:                    ershad92@gmail.com
 Telephone:                        +91 8089133362
 Blog URL:                         http://ershadk.com
 Freenode IRC Nick:                ershad
 University and current education: BSc Computer Science, Bharathiyar University

Why do you want to work with the Swathanthra Malayalam Computing?

Swathanthra Malayalam Computing is contributing much to Indic languages and language computing, it's great to be a part of it.

Do you have any past involvement with the Swathanthra Malayalam Computing or another open source project as a contributor?

Yes. I've contributed to Swathanthra Malayalam Computing, MediaWiki and a couple of other open source projects.

Did you participate with the past GSoC programs, if so which years, which organizations?

No, I've not participated in GSoC programs before.

Do you have other obligations between May and August ? Please note that we expect the Summer of Code to be a full time, 40 hour a week commitment

It will be possible for me to work 35-40 hours / Week.

Will you continue contributing/ supporting the Swathanthra Malayalam Computing after the GSoC 2013 program, if yes, which area(s), you are interested in?

I've been contributing to SMC, I will definitely continue that. My interested areas include Language Computing, SILPA and translation.

Why should we choose you over other applicants?

I've been a FOSS enthusiast for years and have been continuously trying for ways to contribute to it. GSoC will be a great platform for me to contribute more.

This proposal is meant for Malayalagrandham Bibliography Data project. I'm planning to do it in Ruby on Rails in which I'm well versed and have more than 1 year of experience. I also have a track record of doing end-to-end hobby projects in Ruby on Rails.

And right the at moment, I've done its backend and wrote scripts to import data from old database. It will be easy for me to build upon that.

Proposal Description

An overview of your proposal

Malayalagrandham.com is a web application to store and process bibliography data of books. Currently it has a growing database with information of more than 50K books. The current live application was built a few years before and it lacks features such as crowd sourcing, RESTFul API, Feedback, Visualization and so on. The proposed project aims at building a more advanced and contributor/developer friendly version of Malayalagrandham Bibliography Data application with the aforementioned features. The new version of Malayalagrandham will be a crowd sourced Internet Book Database. It will have features to export data to various formats such as MARC21 and MARCXML.

The application essentially will have the following interfaces.

1. Interface for the task force

Task force is a group of people with administrative privileges. These admins should be able to select the right submission from crowd sourced data and they should be able to moderate any the contents in the web application. They should also be able to visualize existing data.

2. Interface for contributor

Any person should be able to become a contributor by signing up using his/her email ID. Contributor should be able to add new bibliography information and post comments/reviews through the feedback system. He should also be able to upload cover photos of books.

3. Interface for Publisher

Publishers should be able to add bibliography information of the books they publish. They should also be able to generate QR code that links to specific book's page.

4. Interface for Librarian

Librarians should be able to update the location of the books in Malayalagrandham.

All the data in Malayalagrandham will be open to Public. But users need special permission (admin privileges) to modify the existing approved data.

The need you believe it fulfills

Apart from the bibliographic information it provides, Malayalagrandham would help people to locate books easily. Building a new version this application has the following benefits:

  1. It will be easy for users to contribute new data
  2. REFTul API makes the application developer friendly. The API will enable developers to write client applications across platforms.
  3. We will have a centralized location of information of many books in a breadth of languages.
  4. It will be easy to perform complex searches to locate specific books.
  5. The feedback feature attracts more engagement/dicussion from users.
  6. QR code for each book would help the user to locate its Malayagrandham page

Any relevant experience you have

I've industrial experiencing in building and deploying Ruby on Rails web applications. I also have learned about MARC21/MARCXML formats and ISBN.

How you intend to implement your proposal

Technology stack is Ruby on Rails web framework with MySQL backend. We will be using the following Open Source gems and modules :

  1. devise - User Authorization
  2. ruby-marc - Read and Write in MARC Format
  3. marc21-utils - MARC Validation
  4. ferret - Text Search
  5. Jbuilder - DSL to configure JSON API
  6. rqrcode - QR code generator
  7. Twitter Bootstrap - Front end Framework

A rough timeline for your progress with phases

Jun 17 - Jun 30

Resume the development on the existing application I wrote for this project and design the remaining parts of the software.

Jul 1 - Jul 15

Implement the application logic as per the design and start focusing on API

July 16 - Jul 31

Implement the basic API and get the functionalities working in the back end Test the built features and fix bugs for mid term evaluation

Aug 1 - Aug 20

Build advanced features such as crowd sourcing support, data export and QR support

Aug 21 - Sept 5

Implement basic UI for Task force, Publisher, Contributor and Librarian. Focus more on UX, get the minute details working properly.

Sept 5 - Sept 12

Control the access to the site pragmatically and do a security auditing. Polish the interface and all features should be working by now.

Sept 13 - Sept 27

Review code, fix bugs and get ready for final evaluation.

Any other details you feel we should consider

It will be great if we can sync Malayagrandham with Wikisource. We can also link to Public Domain books in Malayagrandham pages.

Tell us about something you have created.

  1. QuizGrid.com is a social network I built using Ruby on Rails and MySQL. More details are here
  2. Myfest.in is a college fest aggregator I built using the same technology stack. It's quite popular in India and it has got thousands of hits in a short span of time.
  3. I built a chrome extension for language transliteration using Wikimedia's jQueryIME library and it won 'The most innovative project' award in Wikimedia Dev Camp held at IIM bangalore

I've also some open source contributions, please find them in my github profile

Have you communicated with a potential mentor? If so, who?

Yes, I've communicated with Anivar Aravind.

SMC Wiki link of your proposal